From 73847581c63516168ea09e2a1907e29069dfa877 Mon Sep 17 00:00:00 2001 From: kth5 Date: Thu, 18 Jul 2024 11:22:28 +0200 Subject: [PATCH] * update wasi-libc++ to 18.1.8-3 --- wasi-libc++/PKGBUILD | 238 ++++++++++-------- ...4E22316ABF4785A88C6E8EA2C794A986419D8A.asc | 52 ++++ ...74BD5D1D0E98895E3BF90044F2485E45D59042.asc | 41 +++ wasi-libc++/wasi-sdk.cmake | 40 +++ 4 files changed, 266 insertions(+), 105 deletions(-) create mode 100644 wasi-libc++/keys/pgp/474E22316ABF4785A88C6E8EA2C794A986419D8A.asc create mode 100644 wasi-libc++/keys/pgp/D574BD5D1D0E98895E3BF90044F2485E45D59042.asc create mode 100644 wasi-libc++/wasi-sdk.cmake diff --git a/wasi-libc++/PKGBUILD b/wasi-libc++/PKGBUILD index 54bb3b49a6..cf4e49cd74 100644 --- a/wasi-libc++/PKGBUILD +++ b/wasi-libc++/PKGBUILD @@ -3,25 +3,27 @@ pkgbase=wasi-libc++ pkgname=(wasi-libc++ wasi-libc++abi) -pkgver=17.0.6 -pkgrel=1 +pkgver=18.1.8 +pkgrel=3 arch=(any) url='https://libcxx.llvm.org/' -license=('custom:Apache 2.0 with LLVM Exception') -makedepends=('cmake' 'ninja' 'python' 'clang' 'llvm' 'wasi-libc' 'wasi-compiler-rt' 'lld') +license=('Apache-2.0 WITH LLVM-exception') +makedepends=('cmake' 'ninja' 'python' 'clang' 'llvm' 'wasi-libc' 'wasi-compiler-rt' 'lld' 'util-linux') source=(https://github.com/llvm/llvm-project/releases/download/llvmorg-${pkgver}/llvm-project-${pkgver}.src.tar.xz{,.sig} WASI.cmake - wasi-toolchain.cmake) -b2sums=('d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2' + wasi-sdk.cmake) +b2sums=('a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f' 'SKIP' 'c829d807c257921fddb8c4d3752ad2291a2beb116d414dd31e34b7f6b01599d8c4807db87ef9930456ed8c9f30e8648e77028fa0b903c3a5ea840514f6022cf4' - '74c63bb838bc2e6d7980370fb3d47f8fd2f1dd8b6dc82302c7cc0b80e0fb1e8e21c1c62d6de0b78e478fc22611a5867e52b1ef7a566796fe831fffd98b17c940') + '0da3e98a7e09eb500a593f78f92a3b23238cf969be326e2711313f95daff39f8a890a7826b2526a81d8c22a035772ed420fddc2d6182f216be9b732755b94f8e') options=('staticlibs' '!lto' '!debug') validpgpkeys=( '474E22316ABF4785A88C6E8EA2C794A986419D8A' # Tom Stellard - 'D574BD5D1D0E98895E3BF90044F2485E45D59042' # Tobias Hieta + #'D574BD5D1D0E98895E3BF90044F2485E45D59042' # Tobias Hieta ) +_targets=(wasm32-wasi wasm32-wasip1 wasm32-wasip1-threads wasm32-wasip2) + prepare() { # Platform files have been copied from here https://github.com/WebAssembly/wasi-sdk mv llvm-project-${pkgver}.src llvm @@ -33,105 +35,119 @@ build() { # Build options are derived from here https://github.com/WebAssembly/wasi-sdk/blob/main/Makefile # remove compiler options not supported by the wasm32-wasi target export CFLAGS="$(echo $CFLAGS | sed "s/-mtune=generic//; - s/-fstack-clash-protection//; s/-fcf-protection//; s/-fexceptions//")" + s/-fstack-clash-protection//; s/-fcf-protection//; s/-fexceptions//; s/-march=x86-64; s/-mcpu=[a-z0-9]+//")" export CXXFLAGS="$(echo $CXXFLAGS | sed "s/-mtune=generic//; - s/-fstack-clash-protection//; s/-fcf-protection//; s/-fexceptions//")" + s/-fstack-clash-protection//; s/-fcf-protection//; s/-fexceptions//; s/-march=x86-64/; s/-mcpu=[a-z0-9]+ //")" - export CXXFLAGS="$(echo $CXXFLAGS | sed "s/-mcpu=.* //" | sed 's/-mabi=altivec//' | sed 's/-maltivec//g')" + local target threads_flag threads_cflags + for target in "${_targets[@]}"; do + if [[ ${target} == *-threads ]]; then + threads_flag=ON + threads_cflags=-pthread + else + threads_flag=OFF + threads_cflags= + fi - cmake -B build -G Ninja \ - -DCMAKE_C_COMPILER_WORKS=ON \ - -DCMAKE_CXX_COMPILER_WORKS=ON \ - -DCMAKE_AR=/usr/bin/ar \ - -DCMAKE_MODULE_PATH="${srcdir}"/cmake \ - -DCMAKE_TOOLCHAIN_FILE="${srcdir}"/wasi-toolchain.cmake \ - -DCMAKE_STAGING_PREFIX=/usr/share/wasi-sysroot \ - -DLIBCXX_ENABLE_THREADS:BOOL=OFF \ - -DLIBCXX_HAS_PTHREAD_API:BOOL=OFF \ - -DLIBCXX_HAS_EXTERNAL_THREAD_API:BOOL=OFF \ - -DLIBCXX_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF \ - -DLIBCXX_HAS_WIN32_THREAD_API:BOOL=OFF \ - -DLLVM_COMPILER_CHECKED:BOOL=ON \ - -DLLVM_RUNTIMES_LINKING_WORKS:BOOL=ON \ - -DCMAKE_BUILD_TYPE=Release \ - -DLIBCXX_ENABLE_SHARED:BOOL=OFF \ - -DLIBCXX_ENABLE_EXCEPTIONS:BOOL=OFF \ - -DLIBCXX_ENABLE_FILESYSTEM:BOOL=OFF \ - -DLIBCXX_CXX_ABI=libcxxabi \ - -DLIBCXX_HAS_MUSL_LIBC:BOOL=ON \ - -DLIBCXX_ABI_VERSION=2 \ - -DLIBCXXABI_ENABLE_EXCEPTIONS:BOOL=OFF \ - -DLIBCXXABI_ENABLE_SHARED:BOOL=OFF \ - -DLIBCXXABI_SILENT_TERMINATE:BOOL=ON \ - -DLIBCXXABI_ENABLE_THREADS:BOOL=OFF \ - -DLIBCXXABI_HAS_PTHREAD_API:BOOL=OFF \ - -DLIBCXXABI_HAS_EXTERNAL_THREAD_API:BOOL=OFF \ - -DLIBCXXABI_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF \ - -DLIBCXXABI_HAS_WIN32_THREAD_API:BOOL=OFF \ - -DWASI_SDK_PREFIX=/usr \ - -DUNIX:BOOL=ON \ - -DCMAKE_SYSROOT=/usr/share/wasi-sysroot \ - -DLIBCXX_LIBDIR_SUFFIX=/wasm32-wasi \ - -DLIBCXXABI_LIBDIR_SUFFIX=/wasm32-wasi \ - -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi" \ - -DCXX_SUPPORTS_CLASS_MEMACCESS_FLAG:BOOL=OFF \ - -DCXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_EHA_FLAG:BOOL=OFF \ - -DCXX_SUPPORTS_EHS_FLAG:BOOL=OFF \ - -DCXX_SUPPORTS_FALIGNED_ALLOCATION_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_FDATA_SECTIONS:BOOL=ON \ - -DCXX_SUPPORTS_FNO_EXCEPTIONS_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_FSTRICT_ALIASING_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_FVISIBILITY_EQ_HIDDEN_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_MISLEADING_INDENTATION_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_NOEXCEPT_TYPE_FLAG:BOOL=OFF \ - -DCXX_SUPPORTS_NOSTDINCXX_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_NOSTDLIBXX_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_PEDANTIC_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_STRING_CONVERSION_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_UNWINDLIB_EQ_NONE_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WALL_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WCHAR_SUBSCRIPTS_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WCONVERSION_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WERROR_DATE_TIME:BOOL=ON \ - -DCXX_SUPPORTS_WERROR_EQ_RETURN_TYPE_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW:BOOL=ON \ - -DCXX_SUPPORTS_WEXTRA_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WEXTRA_SEMI_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WFORMAT_NONLITERAL_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WMISMATCHED_TAGS_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WMISSING_BRACES_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNEWLINE_EOF_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNO_COVERED_SWITCH_DEFAULT_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNO_ERROR_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNO_LONG_LONG_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNO_SUGGEST_OVERRIDE_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNO_UNUSED_PARAMETER_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WNO_USER_DEFINED_LITERALS_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WSHADOW_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WSHORTEN_64_TO_32_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WSIGN_COMPARE_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WSIGN_CONVERSION_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WSTRICT_ALIASING_EQ_2_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WSTRICT_OVERFLOW_EQ_4_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WUNDEF_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WUNUSED_FUNCTION_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WUNUSED_PARAMETER_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WUNUSED_VARIABLE_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WWRITE_STRINGS_FLAG:BOOL=ON \ - -DCXX_SUPPORTS_WX_FLAG:BOOL=OFF \ - -DCXX_SUPPORTS_W_FLAG:BOOL=ON \ - -DCXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR:BOOL=ON \ - -DCXX_WSUGGEST_OVERRIDE_ALLOWS_ONLY_FINAL:BOOL=ON \ - -DLINKER_SUPPORTS_COLOR_DIAGNOSTICS:BOOL=ON \ - -DSUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG:BOOL=ON \ - llvm/runtimes + cmake -B build-${target} -G Ninja \ + -DCMAKE_C_COMPILER_WORKS=ON \ + -DCMAKE_CXX_COMPILER_WORKS=ON \ + -DCMAKE_AR=/usr/bin/ar \ + -DCMAKE_TOOLCHAIN_FILE="${srcdir}"/wasi-sdk.cmake \ + -DCMAKE_STAGING_PREFIX=/usr/share/wasi-sysroot \ + -DLIBCXXABI_USE_LLVM_UNWINDER:BOOL=OFF \ + -DLIBCXX_ENABLE_THREADS:BOOL=${threads_flag} \ + -DLIBCXX_HAS_PTHREAD_API:BOOL=${threads_flag} \ + -DLIBCXX_HAS_EXTERNAL_THREAD_API:BOOL=OFF \ + -DLIBCXX_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF \ + -DLIBCXX_HAS_WIN32_THREAD_API:BOOL=OFF \ + -DLLVM_COMPILER_CHECKED:BOOL=ON \ + -DLLVM_RUNTIMES_LINKING_WORKS:BOOL=ON \ + -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR:BOOL=ON \ + -DLLVM_DEFAULT_TARGET_TRIPLE=${target} \ + -DCMAKE_BUILD_TYPE=Release \ + -DLIBCXX_ENABLE_SHARED:BOOL=OFF \ + -DLIBCXX_ENABLE_EXCEPTIONS:BOOL=OFF \ + -DLIBCXX_ENABLE_FILESYSTEM:BOOL=ON \ + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT:BOOL=OFF \ + -DLIBCXX_CXX_ABI=libcxxabi \ + -DLIBCXX_HAS_MUSL_LIBC:BOOL=ON \ + -DLIBCXX_ABI_VERSION=2 \ + -DLIBCXXABI_ENABLE_EXCEPTIONS:BOOL=OFF \ + -DLIBCXXABI_ENABLE_SHARED:BOOL=OFF \ + -DLIBCXXABI_SILENT_TERMINATE:BOOL=ON \ + -DLIBCXXABI_ENABLE_THREADS:BOOL=${threads_flag} \ + -DLIBCXXABI_HAS_PTHREAD_API:BOOL=${threads_flag} \ + -DLIBCXXABI_HAS_EXTERNAL_THREAD_API:BOOL=OFF \ + -DLIBCXXABI_BUILD_EXTERNAL_THREAD_LIBRARY:BOOL=OFF \ + -DLIBCXXABI_HAS_WIN32_THREAD_API:BOOL=OFF \ + -DLIBCXXABI_USE_LLVM_UNWINDER:BOOL=OFF \ + -DWASI_SDK_PREFIX=/usr \ + -DUNIX:BOOL=ON \ + -DCMAKE_SYSROOT=/usr/share/wasi-sysroot \ + -DCMAKE_C_FLAGS="${CFLAGS} ${threads_cflags} --target=${target}" \ + -DCMAKE_CXX_FLAGS="${CXXFLAGS} ${threads_cflags} --target=${target}" \ + -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi" \ + -DCXX_SUPPORTS_CLASS_MEMACCESS_FLAG:BOOL=OFF \ + -DCXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_CXX11:BOOL=ON \ + -DCXX_SUPPORTS_EHA_FLAG:BOOL=OFF \ + -DCXX_SUPPORTS_EHS_FLAG:BOOL=OFF \ + -DCXX_SUPPORTS_FALIGNED_ALLOCATION_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_FDATA_SECTIONS:BOOL=ON \ + -DCXX_SUPPORTS_FNO_EXCEPTIONS_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_FSTRICT_ALIASING_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_FVISIBILITY_EQ_HIDDEN_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_MISLEADING_INDENTATION_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_NOEXCEPT_TYPE_FLAG:BOOL=OFF \ + -DCXX_SUPPORTS_NOSTDINCXX_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_NOSTDLIBXX_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_PEDANTIC_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_STRING_CONVERSION_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_UNWINDLIB_EQ_NONE_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WALL_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WCHAR_SUBSCRIPTS_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WCONVERSION_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WERROR_DATE_TIME:BOOL=ON \ + -DCXX_SUPPORTS_WERROR_EQ_RETURN_TYPE_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW:BOOL=ON \ + -DCXX_SUPPORTS_WEXTRA_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WEXTRA_SEMI_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WFORMAT_NONLITERAL_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WMISMATCHED_TAGS_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WMISSING_BRACES_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNEWLINE_EOF_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNO_COVERED_SWITCH_DEFAULT_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNO_ERROR_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNO_LONG_LONG_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNO_SUGGEST_OVERRIDE_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNO_UNUSED_PARAMETER_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WNO_USER_DEFINED_LITERALS_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WSHADOW_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WSHORTEN_64_TO_32_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WSIGN_COMPARE_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WSIGN_CONVERSION_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WSTRICT_ALIASING_EQ_2_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WSTRICT_OVERFLOW_EQ_4_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WUNDEF_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WUNUSED_FUNCTION_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WUNUSED_PARAMETER_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WUNUSED_VARIABLE_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WWRITE_STRINGS_FLAG:BOOL=ON \ + -DCXX_SUPPORTS_WX_FLAG:BOOL=OFF \ + -DCXX_SUPPORTS_W_FLAG:BOOL=ON \ + -DCXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR:BOOL=ON \ + -DCXX_WSUGGEST_OVERRIDE_ALLOWS_ONLY_FINAL:BOOL=ON \ + -DLINKER_SUPPORTS_COLOR_DIAGNOSTICS:BOOL=ON \ + -DSUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG:BOOL=ON \ + llvm/runtimes - ninja -C build + ninja -C build-${target} cxx cxxabi + done } # Do not remove the space before the () or commitpkg will @@ -139,7 +155,13 @@ build() { package_wasi-libc++ () { pkgdesc='WASI LLVM C++ standard library' - DESTDIR="${pkgdir}" ninja -C build install-cxx + local target + for target in "${_targets[@]}"; do + DESTDIR="${pkgdir}" ninja -C build-${target} install-cxx + done + + # reduce duplication + hardlink -c "${pkgdir}"/usr/share/wasi-sysroot install -Dm0644 llvm/libcxx/CREDITS.TXT "${pkgdir}"/usr/share/licenses/${pkgname}/CREDITS install -Dm0644 llvm/libcxx/LICENSE.TXT "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE @@ -148,7 +170,13 @@ package_wasi-libc++ () { package_wasi-libc++abi() { pkgdesc='WASI Low level support for the LLVM C++ standard library.' - DESTDIR="${pkgdir}" ninja -C build install-cxxabi + local target + for target in "${_targets[@]}"; do + DESTDIR="${pkgdir}" ninja -C build-${target} install-cxxabi + done + + # reduce duplication + hardlink -c "${pkgdir}"/usr/share/wasi-sysroot install -Dm0644 llvm/libcxxabi/CREDITS.TXT "${pkgdir}"/usr/share/licenses/${pkgname}/CREDITS install -Dm0644 llvm/libcxxabi/LICENSE.TXT "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE diff --git a/wasi-libc++/keys/pgp/474E22316ABF4785A88C6E8EA2C794A986419D8A.asc b/wasi-libc++/keys/pgp/474E22316ABF4785A88C6E8EA2C794A986419D8A.asc new file mode 100644 index 0000000000..544fcdc035 --- /dev/null +++ b/wasi-libc++/keys/pgp/474E22316ABF4785A88C6E8EA2C794A986419D8A.asc @@ -0,0 +1,52 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +ALDpP6vzpYVqnK5T +=+9jG +-----END PGP PUBLIC KEY BLOCK----- diff --git a/wasi-libc++/keys/pgp/D574BD5D1D0E98895E3BF90044F2485E45D59042.asc b/wasi-libc++/keys/pgp/D574BD5D1D0E98895E3BF90044F2485E45D59042.asc new file mode 100644 index 0000000000..b7fe217281 --- /dev/null +++ b/wasi-libc++/keys/pgp/D574BD5D1D0E98895E3BF90044F2485E45D59042.asc @@ -0,0 +1,41 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +9RmlwZlOTFGcWBYl/cfRONn9qi9a6w== +=Lvw+ +-----END PGP PUBLIC KEY BLOCK----- diff --git a/wasi-libc++/wasi-sdk.cmake b/wasi-libc++/wasi-sdk.cmake new file mode 100644 index 0000000000..f6a0059c86 --- /dev/null +++ b/wasi-libc++/wasi-sdk.cmake @@ -0,0 +1,40 @@ +# Cmake toolchain description file for the Makefile + +# This is arbitrary, AFAIK, for now. +cmake_minimum_required(VERSION 3.4.0) + +# Until Platform/WASI.cmake is upstream we need to inject the path to it +# into CMAKE_MODULE_PATH. +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}") + +set(CMAKE_SYSTEM_NAME WASI) +set(CMAKE_SYSTEM_VERSION 1) +set(CMAKE_SYSTEM_PROCESSOR wasm32) +set(triple wasm32-wasi) + +if(WIN32) + set(WASI_HOST_EXE_SUFFIX ".exe") +else() + set(WASI_HOST_EXE_SUFFIX "") +endif() + +# When building from source, WASI_SDK_PREFIX represents the generated directory +if(NOT WASI_SDK_PREFIX) + set(WASI_SDK_PREFIX ${CMAKE_CURRENT_LIST_DIR}/../../) +endif() + +set(CMAKE_C_COMPILER ${WASI_SDK_PREFIX}/bin/clang${WASI_HOST_EXE_SUFFIX}) +set(CMAKE_CXX_COMPILER ${WASI_SDK_PREFIX}/bin/clang++${WASI_HOST_EXE_SUFFIX}) +set(CMAKE_ASM_COMPILER ${WASI_SDK_PREFIX}/bin/clang${WASI_HOST_EXE_SUFFIX}) +set(CMAKE_AR ${WASI_SDK_PREFIX}/bin/llvm-ar${WASI_HOST_EXE_SUFFIX}) +set(CMAKE_RANLIB ${WASI_SDK_PREFIX}/bin/llvm-ranlib${WASI_HOST_EXE_SUFFIX}) +set(CMAKE_C_COMPILER_TARGET ${triple}) +set(CMAKE_CXX_COMPILER_TARGET ${triple}) +set(CMAKE_ASM_COMPILER_TARGET ${triple}) + +# Don't look in the sysroot for executables to run during the build +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +# Only look in the sysroot (not in the host paths) for the rest +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)