diff --git a/Tests/RunCMake/Emscripten/C-lib-shared.cmake b/Tests/RunCMake/Emscripten/C-lib-shared.cmake new file mode 100644 index 0000000000..2e62803a12 --- /dev/null +++ b/Tests/RunCMake/Emscripten/C-lib-shared.cmake @@ -0,0 +1,6 @@ +enable_language(C) +add_library(emscripten-test-lib SHARED libmod.c) + +add_executable(exec-lib-c module.c) +target_compile_definitions(exec-lib-c PRIVATE __USE_LIBFUN) +target_link_libraries(exec-lib-c PRIVATE emscripten-test-lib) diff --git a/Tests/RunCMake/Emscripten/RunCMakeTest.cmake b/Tests/RunCMake/Emscripten/RunCMakeTest.cmake index dd04fd7b87..4ca526487f 100644 --- a/Tests/RunCMake/Emscripten/RunCMakeTest.cmake +++ b/Tests/RunCMake/Emscripten/RunCMakeTest.cmake @@ -57,6 +57,12 @@ foreach(_emscripten_toolchain IN LISTS _emscripten_toolchains) -DCMAKE_C_COMPILER=${c_comp} ) + # Create a shared library and executable from .c sources. + run_toolchain(C-lib-shared + -DCMAKE_SYSTEM_NAME=Emscripten + -DCMAKE_C_COMPILER=${c_comp} + ) + run_cmake_with_options(C-WHOLE_ARCHIVE -DCMAKE_SYSTEM_NAME=Emscripten -DCMAKE_C_COMPILER=${c_comp}