mirror of
https://github.com/fluencelabs/wasmer
synced 2024-12-14 06:35:40 +00:00
c8872f1a6f
This test suite compiles a module, then serializes it, deserializes it, and continues by creating an instance and calling a function on it. It allows to test the entire roundtrip.
85 lines
3.1 KiB
CMake
85 lines
3.1 KiB
CMake
cmake_minimum_required (VERSION 2.6)
|
|
project (WasmerRuntimeCApiTests)
|
|
|
|
add_executable(test-exports test-exports.c)
|
|
add_executable(test-globals test-globals.c)
|
|
add_executable(test-import-function test-import-function.c)
|
|
add_executable(test-imports test-imports.c)
|
|
add_executable(test-instantiate test-instantiate.c)
|
|
add_executable(test-memory test-memory.c)
|
|
add_executable(test-module test-module.c)
|
|
add_executable(test-module-exports test-module-exports.c)
|
|
add_executable(test-module-imports test-module-imports.c)
|
|
add_executable(test-module-serialize test-module-serialize.c)
|
|
add_executable(test-tables test-tables.c)
|
|
add_executable(test-validate test-validate.c)
|
|
|
|
find_library(
|
|
WASMER_LIB NAMES libwasmer_runtime_c_api.dylib libwasmer_runtime_c_api.so libwasmer_runtime_c_api.dll
|
|
PATHS ${CMAKE_SOURCE_DIR}/../../../target/debug/
|
|
)
|
|
|
|
if(NOT WASMER_LIB)
|
|
message(FATAL_ERROR "wasmer library not found")
|
|
endif()
|
|
|
|
enable_testing()
|
|
|
|
set(
|
|
COMPILER_OPTIONS
|
|
# Clang or gcc
|
|
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:
|
|
"-Werror" >
|
|
# MSVC
|
|
$<$<CXX_COMPILER_ID:MSVC>:
|
|
"/WX" >
|
|
)
|
|
|
|
target_link_libraries(test-exports general ${WASMER_LIB})
|
|
target_compile_options(test-exports PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-exports test-exports)
|
|
|
|
target_link_libraries(test-globals general ${WASMER_LIB})
|
|
target_compile_options(test-globals PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-globals test-globals)
|
|
|
|
target_link_libraries(test-import-function general ${WASMER_LIB})
|
|
target_compile_options(test-import-function PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-import-function test-import-function)
|
|
|
|
target_link_libraries(test-imports general ${WASMER_LIB})
|
|
target_compile_options(test-imports PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-imports test-imports)
|
|
|
|
target_link_libraries(test-instantiate general ${WASMER_LIB})
|
|
target_compile_options(test-instantiate PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-instantiate test-instantiate)
|
|
|
|
target_link_libraries(test-memory general ${WASMER_LIB})
|
|
target_compile_options(test-memory PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-memory test-memory)
|
|
|
|
target_link_libraries(test-module general ${WASMER_LIB})
|
|
target_compile_options(test-module PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-module test-module)
|
|
|
|
target_link_libraries(test-module-exports general ${WASMER_LIB})
|
|
target_compile_options(test-module-exports PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-module-exports test-module-exports)
|
|
|
|
target_link_libraries(test-module-imports general ${WASMER_LIB})
|
|
target_compile_options(test-module-imports PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-module-imports test-module-imports)
|
|
|
|
target_link_libraries(test-module-serialize general ${WASMER_LIB})
|
|
target_compile_options(test-module-serialize PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-module-serialize test-module-serialize)
|
|
|
|
target_link_libraries(test-tables general ${WASMER_LIB})
|
|
target_compile_options(test-tables PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-tables test-tables)
|
|
|
|
target_link_libraries(test-validate general ${WASMER_LIB})
|
|
target_compile_options(test-validate PRIVATE ${COMPILER_OPTIONS})
|
|
add_test(test-validate test-validate)
|