CMakeLists.txt 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  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-runtime-common)
  5. add_definitions(-DRUN_ON_LINUX)
  6. set (WAMR_BUILD_AOT 1)
  7. set (WAMR_BUILD_FAST_INTERP 0)
  8. set (WAMR_BUILD_INTERP 1)
  9. set (WAMR_BUILD_JIT 0)
  10. set (WAMR_BUILD_LIBC_WASI 0)
  11. set (WAMR_BUILD_LIBC_BUILTIN 1)
  12. set (WAMR_BUILD_APP_FRAMEWORK 0)
  13. set (WAMR_BUILD_MULTI_MODULE 1)
  14. include(../unit_common.cmake)
  15. find_package(LLVM REQUIRED CONFIG)
  16. include_directories(${LLVM_INCLUDE_DIRS})
  17. add_definitions(${LLVM_DEFINITIONS})
  18. include_directories(${CMAKE_CURRENT_SOURCE_DIR})
  19. file(GLOB_RECURSE source_all ${CMAKE_CURRENT_SOURCE_DIR}/*.cc)
  20. set(UNIT_SOURCE ${source_all})
  21. set(unit_test_sources
  22. ${UNIT_SOURCE}
  23. ${WAMR_RUNTIME_LIB_SOURCE}
  24. ${UNCOMMON_SHARED_SOURCE}
  25. )
  26. add_executable(runtime_common_test ${unit_test_sources})
  27. target_link_libraries(runtime_common_test ${LLVM_AVAILABLE_LIBS} gtest_main)
  28. # Ensure that aot compiled is completed before linear_memory_test_aot is built
  29. add_custom_command(OUTPUT ${CMAKE_CURRENT_LIST_DIR}/wasm-apps/main.aot
  30. COMMAND ./build_aot.sh
  31. WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  32. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/build_aot.sh
  33. COMMENT "Executing script to compile aot files"
  34. VERBATIM
  35. )
  36. add_custom_target(
  37. BuildAot ALL
  38. DEPENDS ${CMAKE_CURRENT_LIST_DIR}/wasm-apps/main.aot
  39. )
  40. add_dependencies(runtime_common_test BuildAot)
  41. add_custom_command(TARGET runtime_common_test POST_BUILD
  42. COMMAND ${CMAKE_COMMAND} -E copy
  43. ${CMAKE_CURRENT_LIST_DIR}/wasm-apps/main.wasm ${CMAKE_CURRENT_LIST_DIR}/wasm-apps/main.aot
  44. ${CMAKE_CURRENT_BINARY_DIR}
  45. COMMENT "Copy main.wasm and main.aot to the directory: build/runtime-common."
  46. )
  47. gtest_discover_tests(runtime_common_test)