wamr_toolchain.cmake 1.6 KB

12345678910111213141516171819202122232425262728293031323334
  1. # Copyright (C) 2019 Intel Corporation. All rights reserved.
  2. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  3. SET (CMAKE_SYSTEM_NAME Linux)
  4. SET (CMAKE_SYSTEM_PROCESSOR wasm32)
  5. SET (CMAKE_SYSROOT ${CMAKE_CURRENT_LIST_DIR}/libc-builtin-sysroot)
  6. IF (NOT (DEFINED WASI_SDK_DIR OR DEFINED CACHE{WASI_SDK_DIR}))
  7. MESSAGE (FATAL_ERROR "WASI_SDK_DIR is not defined")
  8. ELSE ()
  9. MESSAGE (STATUS "WASI_SDK_DIR=${WASI_SDK_DIR}")
  10. LIST (APPEND CMAKE_TRY_COMPILE_PLATFORM_VARIABLES "WASI_SDK_DIR")
  11. ENDIF ()
  12. SET (CMAKE_C_FLAGS "-nostdlib -z stack-size=4096" CACHE INTERNAL "")
  13. SET (CMAKE_C_COMPILER_TARGET "wasm32")
  14. SET (CMAKE_C_COMPILER "${WASI_SDK_DIR}/bin/clang")
  15. SET (CMAKE_CXX_FLAGS "-nostdlib -z stack-size=4096" CACHE INTERNAL "")
  16. SET (CMAKE_CXX_COMPILER_TARGET "wasm32")
  17. SET (CMAKE_CXX_COMPILER "${WASI_SDK_DIR}/bin/clang++")
  18. SET (CMAKE_EXE_LINKER_FLAGS
  19. "-Wl,--initial-memory=65536,--no-entry,--strip-all" CACHE INTERNAL "")
  20. SET (CMAKE_LINKER "${WASI_SDK_DIR}/bin/wasm-ld" CACHE INTERNAL "")
  21. SET (CMAKE_AR "${WASI_SDK_DIR}/bin/llvm-ar" CACHE INTERNAL "")
  22. SET (CMAKE_NM "${WASI_SDK_DIR}/bin/llvm-nm" CACHE INTERNAL "")
  23. SET (CMAKE_OBJDUMP "${WASI_SDK_DIR}/bin/llvm-dwarfdump" CACHE INTERNAL "")
  24. SET (CMAKE_RANLIB "${WASI_SDK_DIR}/bin/llvm-ranlib" CACHE INTERNAL "")
  25. SET (CMAKE_EXE_LINKER_FLAGS
  26. "${CMAKE_EXE_LINKER_FLAGS},--allow-undefined-file=${CMAKE_SYSROOT}/share/defined-symbols.txt" CACHE INTERNAL "")