mirror of
				https://github.com/bytecodealliance/wasm-micro-runtime.git
				synced 2025-10-31 21:27:30 +00:00 
			
		
		
		
	 d085d1ccf7
			
		
	
	
		d085d1ccf7
		
			
		
	
	
	
	
		
			
			``` CMake Error at CMakeLists.txt:4 (cmake_minimum_required): Compatibility with CMake < 3.5 has been removed from CMake. Update the VERSION argument <min> value. Or, use the <min>...<max> syntax to tell CMake that the project requires at least <min> but has been updated to work with policies introduced by <max> or earlier. Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway. ```
		
			
				
	
	
		
			73 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| # Copyright (C) 2019 Intel Corporation.  All rights reserved.
 | |
| # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 | |
| 
 | |
| cmake_minimum_required(VERSION 3.14)
 | |
| 
 | |
| project (test-compilation)
 | |
| 
 | |
| add_definitions (-DRUN_ON_LINUX)
 | |
| 
 | |
| add_definitions (-Dattr_container_malloc=malloc)
 | |
| add_definitions (-Dattr_container_free=free)
 | |
| add_definitions (-DWASM_ENABLE_WAMR_COMPILER=1)
 | |
| add_definitions (-DWASM_ENABLE_DUMP_CALL_STACK=1)
 | |
| add_definitions (-DWASM_ENABLE_AOT_STACK_FRAME=1)
 | |
| 
 | |
| set (WAMR_BUILD_LIBC_WASI 0)
 | |
| set (WAMR_BUILD_APP_FRAMEWORK 0)
 | |
| set (WAMR_BUILD_THREAD_MGR 1)
 | |
| set (WAMR_BUILD_AOT 1)
 | |
| 
 | |
| include (../unit_common.cmake)
 | |
| 
 | |
| set (LLVM_SRC_ROOT "${WAMR_ROOT_DIR}/core/deps/llvm")
 | |
| if (NOT EXISTS "${LLVM_SRC_ROOT}/build")
 | |
|   message (FATAL_ERROR "Cannot find LLVM dir: ${LLVM_SRC_ROOT}/build")
 | |
| endif ()
 | |
| set (CMAKE_PREFIX_PATH "${LLVM_SRC_ROOT}/build;${CMAKE_PREFIX_PATH}")
 | |
| find_package(LLVM REQUIRED CONFIG)
 | |
| include_directories(${LLVM_INCLUDE_DIRS})
 | |
| add_definitions(${LLVM_DEFINITIONS})
 | |
| message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
 | |
| message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}")
 | |
| 
 | |
| include (${IWASM_DIR}/compilation/iwasm_compl.cmake)
 | |
| 
 | |
| include_directories (${CMAKE_CURRENT_SOURCE_DIR})
 | |
| 
 | |
| file (GLOB_RECURSE source_all ${CMAKE_CURRENT_SOURCE_DIR}/*.cc)
 | |
| 
 | |
| set (UNIT_SOURCE ${source_all})
 | |
| 
 | |
| set (unit_test_sources
 | |
|      ${UNIT_SOURCE}
 | |
|      ${WAMR_RUNTIME_LIB_SOURCE}
 | |
|      ${UNCOMMON_SHARED_SOURCE}
 | |
|      ${SRC_LIST}
 | |
|      ${PLATFORM_SHARED_SOURCE}
 | |
|      ${UTILS_SHARED_SOURCE}
 | |
|      ${MEM_ALLOC_SHARED_SOURCE}
 | |
|      ${LIB_HOST_AGENT_SOURCE}
 | |
|      ${NATIVE_INTERFACE_SOURCE}
 | |
|      ${LIBC_BUILTIN_SOURCE}
 | |
|      ${IWASM_COMMON_SOURCE}
 | |
|      ${IWASM_INTERP_SOURCE}
 | |
|      ${IWASM_AOT_SOURCE}
 | |
|      ${IWASM_COMPL_SOURCE}
 | |
|      ${WASM_APP_LIB_SOURCE_ALL}
 | |
|     )
 | |
| 
 | |
| # Now simply link against gtest or gtest_main as needed. Eg
 | |
| add_executable (compilation_test ${unit_test_sources})
 | |
| 
 | |
| target_link_libraries (compilation_test ${LLVM_AVAILABLE_LIBS} gtest_main )
 | |
| 
 | |
| add_custom_command(TARGET compilation_test POST_BUILD
 | |
|   COMMAND ${CMAKE_COMMAND} -E copy
 | |
|   ${CMAKE_CURRENT_LIST_DIR}/wasm-apps/main.wasm
 | |
|   ${CMAKE_CURRENT_BINARY_DIR}
 | |
|   COMMENT "Copy main.wasm to the directory: build/compilation."
 | |
| )
 | |
| 
 | |
| gtest_discover_tests(compilation_test)
 |