|
|
|
@ -24,7 +24,6 @@ option(WASI_SDK_DEBUG_PREFIX_MAP "Pass `-fdebug-prefix-map` for built artifacts"
|
|
|
|
|
option(WASI_SDK_INCLUDE_TESTS "Whether or not to build tests by default" OFF)
|
|
|
|
|
option(WASI_SDK_INSTALL_TO_CLANG_RESOURCE_DIR "Whether or not to modify the compiler's resource directory" OFF)
|
|
|
|
|
option(WASI_SDK_LTO "Whether or not to build LTO assets" ON)
|
|
|
|
|
set(WASI_SDK_CPU_CFLAGS "-mcpu=lime1" CACHE STRING "CFLAGS to specify wasm features to enable")
|
|
|
|
|
|
|
|
|
|
set(wasi_tmp_install ${CMAKE_CURRENT_BINARY_DIR}/install)
|
|
|
|
|
set(wasi_sysroot ${wasi_tmp_install}/share/wasi-sysroot)
|
|
|
|
@ -88,7 +87,6 @@ function(define_compiler_rt target)
|
|
|
|
|
-DCOMPILER_RT_BUILD_ORC=OFF
|
|
|
|
|
-DCOMPILER_RT_BUILD_GWP_ASAN=OFF
|
|
|
|
|
-DCMAKE_C_COMPILER_TARGET=${target}
|
|
|
|
|
-DCMAKE_C_FLAGS=${WASI_SDK_CPU_CFLAGS}
|
|
|
|
|
-DCMAKE_INSTALL_PREFIX=${wasi_resource_dir}
|
|
|
|
|
EXCLUDE_FROM_ALL ON
|
|
|
|
|
USES_TERMINAL_CONFIGURE ON
|
|
|
|
@ -163,7 +161,7 @@ function(define_wasi_libc_sub target target_suffix lto)
|
|
|
|
|
get_property(directory_cflags DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY COMPILE_OPTIONS)
|
|
|
|
|
list(APPEND directory_cflags -resource-dir ${wasi_resource_dir})
|
|
|
|
|
set(extra_cflags_list
|
|
|
|
|
"${WASI_SDK_CPU_CFLAGS} ${CMAKE_C_FLAGS} ${directory_cflags} ${CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE_UPPER}}")
|
|
|
|
|
"${CMAKE_C_FLAGS} ${directory_cflags} ${CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE_UPPER}}")
|
|
|
|
|
list(JOIN extra_cflags_list " " extra_cflags)
|
|
|
|
|
|
|
|
|
|
if(${target} MATCHES threads)
|
|
|
|
@ -224,9 +222,11 @@ execute_process(
|
|
|
|
|
|
|
|
|
|
function(define_libcxx_sub target target_suffix extra_target_flags extra_libdir_suffix)
|
|
|
|
|
if(${target} MATCHES threads)
|
|
|
|
|
set(threads ON)
|
|
|
|
|
set(pic OFF)
|
|
|
|
|
set(target_flags -pthread)
|
|
|
|
|
else()
|
|
|
|
|
set(threads OFF)
|
|
|
|
|
set(pic ON)
|
|
|
|
|
set(target_flags "")
|
|
|
|
|
endif()
|
|
|
|
@ -240,7 +240,6 @@ function(define_libcxx_sub target target_suffix extra_target_flags extra_libdir_
|
|
|
|
|
get_property(dir_compile_opts DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY COMPILE_OPTIONS)
|
|
|
|
|
get_property(dir_link_opts DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY LINK_OPTIONS)
|
|
|
|
|
set(extra_flags
|
|
|
|
|
${WASI_SDK_CPU_CFLAGS}
|
|
|
|
|
${target_flags}
|
|
|
|
|
--target=${target}
|
|
|
|
|
${dir_compile_opts}
|
|
|
|
@ -263,8 +262,8 @@ function(define_libcxx_sub target target_suffix extra_target_flags extra_libdir_
|
|
|
|
|
-DCMAKE_STAGING_PREFIX=${wasi_sysroot}
|
|
|
|
|
-DCMAKE_POSITION_INDEPENDENT_CODE=${pic}
|
|
|
|
|
-DCXX_SUPPORTS_CXX11=ON
|
|
|
|
|
-DLIBCXX_ENABLE_THREADS:BOOL=ON
|
|
|
|
|
-DLIBCXX_HAS_PTHREAD_API:BOOL=ON
|
|
|
|
|
-DLIBCXX_ENABLE_THREADS:BOOL=${threads}
|
|
|
|
|
-DLIBCXX_HAS_PTHREAD_API:BOOL=${threads}
|
|
|
|
|
-DLIBCXX_HAS_EXTERNAL_THREAD_API:BOOL=OFF
|
|
|
|
|
-DLIBCXX_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF
|
|
|
|
|
-DLIBCXX_HAS_WIN32_THREAD_API:BOOL=OFF
|
|
|
|
@ -281,8 +280,8 @@ function(define_libcxx_sub target target_suffix extra_target_flags extra_libdir_
|
|
|
|
|
-DLIBCXXABI_ENABLE_EXCEPTIONS:BOOL=OFF
|
|
|
|
|
-DLIBCXXABI_ENABLE_SHARED:BOOL=${pic}
|
|
|
|
|
-DLIBCXXABI_SILENT_TERMINATE:BOOL=ON
|
|
|
|
|
-DLIBCXXABI_ENABLE_THREADS:BOOL=ON
|
|
|
|
|
-DLIBCXXABI_HAS_PTHREAD_API:BOOL=ON
|
|
|
|
|
-DLIBCXXABI_ENABLE_THREADS:BOOL=${threads}
|
|
|
|
|
-DLIBCXXABI_HAS_PTHREAD_API:BOOL=${threads}
|
|
|
|
|
-DLIBCXXABI_HAS_EXTERNAL_THREAD_API:BOOL=OFF
|
|
|
|
|
-DLIBCXXABI_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF
|
|
|
|
|
-DLIBCXXABI_HAS_WIN32_THREAD_API:BOOL=OFF
|
|
|
|
|