CMakeLists.txt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. # Copyright (C) 2019 Intel Corporation. All rights reserved.
  2. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  3. cmake_minimum_required(VERSION 2.8)
  4. project(wasm-apps)
  5. set(WAMR_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..)
  6. if (APPLE)
  7. set (HAVE_FLAG_SEARCH_PATHS_FIRST 0)
  8. set (CMAKE_C_LINK_FLAGS "")
  9. set (CMAKE_CXX_LINK_FLAGS "")
  10. endif ()
  11. set(CMAKE_SYSTEM_PROCESSOR wasm32)
  12. set (CMAKE_SYSROOT ${WAMR_ROOT_DIR}/wamr-sdk/app/libc-builtin-sysroot)
  13. if (NOT DEFINED WASI_SDK_DIR)
  14. set (WASI_SDK_DIR "/opt/wasi-sdk")
  15. endif ()
  16. set (CMAKE_C_FLAGS "-nostdlib -pthread -Qunused-arguments")
  17. set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -z stack-size=32768")
  18. set (CMAKE_C_COMPILER_TARGET "wasm32")
  19. set (CMAKE_C_COMPILER "${WASI_SDK_DIR}/bin/clang")
  20. set (DEFINED_SYMBOLS
  21. "${WAMR_ROOT_DIR}/wamr-sdk/app/libc-builtin-sysroot/share/defined-symbols.txt")
  22. set (CMAKE_EXE_LINKER_FLAGS
  23. "-Wl,--shared-memory,--max-memory=131072, \
  24. -Wl,--no-entry,--strip-all, \
  25. -Wl,--export=__heap_base,--export=__data_end \
  26. -Wl,--export=__wasm_call_ctors \
  27. -Wl,--export=main -Wl,--export=__main_argc_argv \
  28. -Wl,--allow-undefined"
  29. #-Wl,--allow-undefined-file=${DEFINED_SYMBOLS}"
  30. )
  31. add_executable(test.wasm main.c)
  32. target_link_libraries(test.wasm)
  33. add_executable(main_thread_exception.wasm main_thread_exception.c)
  34. target_link_libraries(main_thread_exception.wasm)
  35. add_executable(main_global_atomic.wasm main_global_atomic.c)
  36. target_link_libraries(main_global_atomic.wasm)