xtask: add llvm/compiler-rt/libcxx/libcxxabi build

This commit is contained in:
2024-11-18 20:51:16 +02:00
parent ac7727b8b1
commit bcaa09cc5d
10 changed files with 355 additions and 72 deletions
+22
View File
@@ -0,0 +1,22 @@
if (NOT DEFINED ENV{CROSS_TOOLCHAIN_PREFIX})
message(FATAL_ERROR "CROSS_TOOLCHAIN_PREFIX=... must be specified.")
endif()
set(CROSS_TOOLCHAIN_PREFIX "$ENV{CROSS_TOOLCHAIN_PREFIX}")
set(CMAKE_SYSTEM_NAME yggdrasil)
set(CMAKE_C_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang")
set(CMAKE_CXX_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang++")
# Specify the target triple for your custom OS.
set(CMAKE_C_COMPILER_TARGET "aarch64-unknown-yggdrasil")
set(CMAKE_ASM_COMPILER_TARGET "aarch64-unknown-yggdrasil")
# Disable default system libraries
# set(CMAKE_EXE_LINKER_FLAGS "-nostdlib")
# set(CMAKE_SHARED_LINKER_FLAGS "-v")
set(CMAKE_C_FLAGS "--target=aarch64-unknown-yggdrasil -fPIC")
set(CMAKE_CXX_FLAGS "--target=aarch64-unknown-yggdrasil -nostdlib++ -fPIC -D_LIBCPP_HAS_NO_MONOTONIC_CLOCK=1 -D_LIBCPP_HAS_NO_TREE_BARRIER")
# Specify any additional include paths or linker flags as needed
+22
View File
@@ -0,0 +1,22 @@
if (NOT DEFINED ENV{CROSS_TOOLCHAIN_PREFIX})
message(FATAL_ERROR "CROSS_TOOLCHAIN_PREFIX=... must be specified.")
endif()
set(CROSS_TOOLCHAIN_PREFIX "$ENV{CROSS_TOOLCHAIN_PREFIX}")
set(CMAKE_SYSTEM_NAME yggdrasil)
set(CMAKE_C_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang")
set(CMAKE_CXX_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang++")
# Specify the target triple for your custom OS.
set(CMAKE_C_COMPILER_TARGET "i686-unknown-yggdrasil")
set(CMAKE_ASM_COMPILER_TARGET "i686-unknown-yggdrasil")
# Disable default system libraries
# set(CMAKE_EXE_LINKER_FLAGS "-nostdlib")
# set(CMAKE_SHARED_LINKER_FLAGS "-v")
set(CMAKE_C_FLAGS "--target=i686-unknown-yggdrasil -fPIC -m32")
set(CMAKE_CXX_FLAGS "--target=i686-unknown-yggdrasil -m32 -nostdlib++ -fPIC -D_LIBCPP_HAS_NO_MONOTONIC_CLOCK=1 -D_LIBCPP_HAS_NO_TREE_BARRIER")
# Specify any additional include paths or linker flags as needed
+20
View File
@@ -0,0 +1,20 @@
if (NOT DEFINED ENV{CROSS_TOOLCHAIN_PREFIX})
message(FATAL_ERROR "CROSS_TOOLCHAIN_PREFIX=... must be specified.")
endif()
set(CROSS_TOOLCHAIN_PREFIX "$ENV{CROSS_TOOLCHAIN_PREFIX}")
set(CMAKE_SYSTEM_NAME yggdrasil)
set(CMAKE_C_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang")
set(CMAKE_CXX_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang++")
# Specify the target triple for your custom OS.
set(CMAKE_C_COMPILER_TARGET "x86_64-unknown-yggdrasil")
set(CMAKE_ASM_COMPILER_TARGET "x86_64-unknown-yggdrasil")
# Disable default system libraries
# set(CMAKE_EXE_LINKER_FLAGS "-nostdlib")
# set(CMAKE_SHARED_LINKER_FLAGS "-v")
set(CMAKE_C_FLAGS "--target=x86_64-unknown-yggdrasil -fPIC")
set(CMAKE_CXX_FLAGS "--target=x86_64-unknown-yggdrasil -nostdlib++ -fPIC -D_LIBCPP_HAS_NO_MONOTONIC_CLOCK=1 -D_LIBCPP_HAS_NO_TREE_BARRIER")