CMakeLists.txt 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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-compilation)
  5. add_definitions (-DRUN_ON_LINUX)
  6. add_definitions (-Dattr_container_malloc=malloc)
  7. add_definitions (-Dattr_container_free=free)
  8. add_definitions (-DWASM_ENABLE_WAMR_COMPILER=1)
  9. add_definitions (-DWASM_ENABLE_DUMP_CALL_STACK=1)
  10. add_definitions (-DWASM_ENABLE_AOT_STACK_FRAME=1)
  11. set (WAMR_BUILD_LIBC_WASI 0)
  12. set (WAMR_BUILD_LIBC_BUILTIN 1)
  13. set (WAMR_BUILD_MULTI_MODULE 1)
  14. set (WAMR_BUILD_APP_FRAMEWORK 0)
  15. set (WAMR_BUILD_THREAD_MGR 1)
  16. set (WAMR_BUILD_AOT 1)
  17. set (WAMR_BUILD_FAST_INTERP 0)
  18. set (WAMR_BUILD_INTERP 1)
  19. set (WAMR_BUILD_JIT 0)
  20. include (../unit_common.cmake)
  21. find_package(LLVM REQUIRED CONFIG)
  22. include_directories(${LLVM_INCLUDE_DIRS})
  23. add_definitions(${LLVM_DEFINITIONS})
  24. include (${IWASM_DIR}/compilation/iwasm_compl.cmake)
  25. include_directories (${CMAKE_CURRENT_SOURCE_DIR})
  26. file (GLOB_RECURSE source_all ${CMAKE_CURRENT_SOURCE_DIR}/*.cc)
  27. set (UNIT_SOURCE ${source_all})
  28. set (unit_test_sources
  29. ${UNIT_SOURCE}
  30. ${WAMR_RUNTIME_LIB_SOURCE}
  31. ${IWASM_COMPL_SOURCE}
  32. ${UNCOMMON_SHARED_SOURCE}
  33. )
  34. # Now simply link against gtest or gtest_main as needed. Eg
  35. add_executable (compilation_test ${unit_test_sources})
  36. target_link_libraries (compilation_test ${LLVM_AVAILABLE_LIBS} gtest_main )
  37. add_custom_command(TARGET compilation_test POST_BUILD
  38. COMMAND ${CMAKE_COMMAND} -E copy
  39. ${CMAKE_CURRENT_LIST_DIR}/wasm-apps/main.wasm
  40. ${CMAKE_CURRENT_BINARY_DIR}
  41. COMMENT "Copy main.wasm to the directory: build/compilation."
  42. )
  43. gtest_discover_tests(compilation_test)