mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-05-27 20:17:24 +00:00
55 lines
1.8 KiB
CMake
55 lines
1.8 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(linking_samples)
|
|
|
|
set(CMAKE_BUILD_TYPE Debug)
|
|
|
|
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
|
|
find_package(WASISDK REQUIRED)
|
|
|
|
################ runtime settings ################
|
|
string (TOLOWER ${CMAKE_HOST_SYSTEM_NAME} WAMR_BUILD_PLATFORM)
|
|
include(CheckPIESupported)
|
|
|
|
# AOT and JIT byd default
|
|
if(NOT WAMR_BUILD_AOT)
|
|
set(WAMR_BUILD_AOT 0)
|
|
endif()
|
|
set(WAMR_BUILD_INTERP 1)
|
|
set(WAMR_BUILD_JIT 0)
|
|
# wasm32-wasi
|
|
set(WAMR_BUILD_LIBC_BUILTIN 0)
|
|
set(WAMR_BUILD_LIBC_WASI 1)
|
|
# mvp
|
|
set(WAMR_BUILD_BULK_MEMORY 1)
|
|
set(WAMR_BUILD_REF_TYPES 1)
|
|
set(WAMR_BUILD_SIMD 1)
|
|
set(WAMR_BUILD_TAIL_CALL 1)
|
|
set(WAMR_BUILD_THREAD_MGR 0)
|
|
set(WAMR_BUILD_LIB_WASI_THREADS 0)
|
|
|
|
# vmlib
|
|
set(WAMR_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR}/../..)
|
|
include(${WAMR_ROOT_DIR}/build-scripts/runtime_lib.cmake)
|
|
add_library(vmlib SHARED ${WAMR_RUNTIME_LIB_SOURCE})
|
|
target_include_directories(vmlib INTERFACE ${WAMR_ROOT_DIR}/core/iwasm/include)
|
|
target_link_libraries(vmlib ${LLVM_AVAILABLE_LIBS} -lm -ldl)
|
|
|
|
################ samples ################
|
|
add_subdirectory(raw)
|
|
|
|
################ wasm and/or aot ################
|
|
include(ExternalProject)
|
|
ExternalProject_Add(wasm
|
|
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/wasm"
|
|
CONFIGURE_COMMAND ${CMAKE_COMMAND} -S ${CMAKE_CURRENT_SOURCE_DIR}/wasm -B build
|
|
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
|
-DCMAKE_TOOLCHAIN_FILE=${WASISDK_TOOLCHAIN}
|
|
-DWAMR_BUILD_AOT=${WAMR_BUILD_AOT}
|
|
BUILD_COMMAND ${CMAKE_COMMAND} --build build
|
|
INSTALL_COMMAND ${CMAKE_COMMAND} --install build --prefix ${CMAKE_CURRENT_BINARY_DIR}
|
|
EXCLUDE_FROM_ALL NO
|
|
)
|