CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # Copyright (C) 2019 Intel Corporation. All rights reserved.
  2. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  3. cmake_minimum_required(VERSION 3.14)
  4. project(test-running-modes)
  5. set(WASI_SDK_DIR "/opt/wasi-sdk")
  6. set(WASISDK_TOOLCHAIN "${WASI_SDK_DIR}/share/cmake/wasi-sdk.cmake")
  7. include(ExternalProject)
  8. ExternalProject_Add(
  9. test-running-modes-wasm-apps
  10. SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/wasm-apps
  11. BUILD_ALWAYS YES
  12. CONFIGURE_COMMAND ${CMAKE_COMMAND} -S ${CMAKE_CURRENT_SOURCE_DIR}/wasm-apps -B build
  13. -DWASI_SDK_PREFIX=${WASI_SDK_DIR}
  14. -DCMAKE_TOOLCHAIN_FILE=${WASISDK_TOOLCHAIN}
  15. BUILD_COMMAND ${CMAKE_COMMAND} --build build
  16. INSTALL_COMMAND ${CMAKE_COMMAND} --install build --prefix ${CMAKE_CURRENT_BINARY_DIR}
  17. )
  18. add_definitions(-DRUN_ON_LINUX)
  19. set(WAMR_BUILD_LIBC_BUILTIN 1)
  20. set(WAMR_BUILD_MULTI_MODULE 0)
  21. set(WAMR_BUILD_LIBC_WASI 1)
  22. set(WAMR_BUILD_APP_FRAMEWORK 0)
  23. set(WAMR_BUILD_JIT 1)
  24. set(WAMR_BUILD_FAST_JIT 1)
  25. set(WAMR_BUILD_REF_TYPES 1)
  26. # if only load this CMake other than load it as subdirectory
  27. include(../unit_common.cmake)
  28. find_package(LLVM REQUIRED CONFIG)
  29. include_directories(${LLVM_INCLUDE_DIRS})
  30. add_definitions(${LLVM_DEFINITIONS})
  31. include_directories(${CMAKE_CURRENT_SOURCE_DIR})
  32. aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR} SRC_LIST)
  33. set(unit_test_sources
  34. ${WAMR_RUNTIME_LIB_SOURCE}
  35. ${UNCOMMON_SHARED_SOURCE}
  36. ${SRC_LIST}
  37. )
  38. # Now simply link against gtest or gtest_main as needed. Eg
  39. add_executable(wasm_running_modes_test ${unit_test_sources})
  40. target_link_libraries(wasm_running_modes_test ${LLVM_AVAILABLE_LIBS} gtest_main)
  41. add_dependencies(wasm_running_modes_test test-running-modes-wasm-apps)
  42. gtest_discover_tests(wasm_running_modes_test)