mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-06-27 23:34:19 +08:00
Merge branch 'split-clang-3' into 'master'
Split lld, add LLVM aarch64 target again See merge request redox-os/redox!1856
This commit is contained in:
commit
641cf334d4
@ -7,10 +7,13 @@ dependencies = [
|
||||
"llvm21",
|
||||
]
|
||||
dev-dependencies = [
|
||||
"host:clang21", # for clang-tblgen
|
||||
"libstdcxx", # no idea
|
||||
"llvm21.dev",
|
||||
"llvm21.runtime",
|
||||
"host:llvm21",
|
||||
"host:llvm21.dev",
|
||||
"host:llvm21.runtime",
|
||||
"host:clang21", # for clang-tblgen
|
||||
"host:xz",
|
||||
"host:libarchive", # workaround for cmake error
|
||||
]
|
||||
@ -40,7 +43,7 @@ COOKBOOK_CMAKE_FLAGS+=(
|
||||
-DLLVM_INCLUDE_TESTS=Off
|
||||
-DLLVM_OPTIMIZED_TABLEGEN=On
|
||||
-DLLVM_TARGET_ARCH=$ARCH
|
||||
-DLLVM_TARGETS_TO_BUILD="X86"
|
||||
-DLLVM_TARGETS_TO_BUILD="X86;AArch64"
|
||||
-DLLVM_TOOLS_INSTALL_DIR=bin
|
||||
-DLLVM_UTILS_INSTALL_DIR=bin
|
||||
-DUNIX=1
|
||||
@ -81,16 +84,6 @@ fi
|
||||
|
||||
"""
|
||||
|
||||
# lld runtime (no library)
|
||||
[[optional-packages]]
|
||||
name = "lld"
|
||||
dependencies = [ ".runtime" ]
|
||||
files = [
|
||||
"usr/bin/*.lld",
|
||||
"usr/bin/*-ld",
|
||||
"usr/bin/lld*",
|
||||
]
|
||||
|
||||
[[optional-packages]]
|
||||
name = "dev"
|
||||
files = [
|
||||
@ -98,12 +91,3 @@ files = [
|
||||
"usr/lib/libclang*.a",
|
||||
"usr/lib/cmake/clang/**",
|
||||
]
|
||||
|
||||
[[optional-packages]]
|
||||
name = "lld-dev"
|
||||
dependencies = [ ".lld" ]
|
||||
files = [
|
||||
"usr/include/lld*/**",
|
||||
"usr/lib/liblld*.a",
|
||||
"usr/lib/cmake/lld/**",
|
||||
]
|
||||
|
||||
61
recipes/dev/lld21/recipe.toml
Normal file
61
recipes/dev/lld21/recipe.toml
Normal file
@ -0,0 +1,61 @@
|
||||
[source]
|
||||
same_as = "../llvm21"
|
||||
|
||||
[build]
|
||||
template = "custom"
|
||||
dependencies = [
|
||||
"llvm21",
|
||||
"zstd",
|
||||
]
|
||||
dev-dependencies = [
|
||||
"llvm21.dev",
|
||||
"llvm21.runtime",
|
||||
"host:llvm21",
|
||||
"host:llvm21.dev",
|
||||
"host:llvm21.runtime",
|
||||
"host:xz",
|
||||
"host:libarchive", # workaround for cmake error
|
||||
]
|
||||
script = """
|
||||
DYNAMIC_INIT
|
||||
ARCH="$(echo "${TARGET}" | cut -d - -f1)"
|
||||
|
||||
generate_cookbook_cmake_file $COOKBOOK_HOST_TARGET "" "$COOKBOOK_TOOLCHAIN" native.cmake
|
||||
|
||||
COOKBOOK_CMAKE_FLAGS+=(
|
||||
-DLLVM_ROOT="${COOKBOOK_SYSROOT}"
|
||||
-DCROSS_TOOLCHAIN_FLAGS_NATIVE="-DCMAKE_TOOLCHAIN_FILE=$(realpath native.cmake)"
|
||||
-DLLVM_TABLEGEN_EXE=${COOKBOOK_TOOLCHAIN}/bin/llvm-tblgen
|
||||
|
||||
# the shared options from llvm
|
||||
-DCMAKE_CXX_FLAGS="--std=gnu++11"
|
||||
-DBUILD_SHARED_LIBS=False
|
||||
-DLLVM_BUILD_EXAMPLES=Off
|
||||
-DLLVM_BUILD_TESTS=Off
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE="${TARGET}"
|
||||
-DLLVM_ENABLE_LTO=Off
|
||||
-DLLVM_ENABLE_RTTI=On
|
||||
-DLLVM_ENABLE_THREADS=On
|
||||
-DLLVM_INCLUDE_EXAMPLES=Off
|
||||
-DLLVM_INCLUDE_TESTS=Off
|
||||
-DLLVM_OPTIMIZED_TABLEGEN=On
|
||||
-DLLVM_TARGET_ARCH=$ARCH
|
||||
-DLLVM_TARGETS_TO_BUILD="X86;AArch64"
|
||||
-DLLVM_TOOLS_INSTALL_DIR=bin
|
||||
-DLLVM_UTILS_INSTALL_DIR=bin
|
||||
-DUNIX=1
|
||||
)
|
||||
|
||||
COOKBOOK_SOURCE="$COOKBOOK_SOURCE/lld"
|
||||
|
||||
cookbook_cmake
|
||||
"""
|
||||
|
||||
[[optional-packages]]
|
||||
name = "dev"
|
||||
dependencies = []
|
||||
files = [
|
||||
"usr/include/lld*/**",
|
||||
"usr/lib/liblld*.a",
|
||||
"usr/lib/cmake/lld/**",
|
||||
]
|
||||
@ -43,7 +43,7 @@ COOKBOOK_CMAKE_FLAGS+=(
|
||||
-DLLVM_INCLUDE_TESTS=Off
|
||||
-DLLVM_OPTIMIZED_TABLEGEN=On
|
||||
-DLLVM_TARGET_ARCH=$ARCH
|
||||
-DLLVM_TARGETS_TO_BUILD="X86"
|
||||
-DLLVM_TARGETS_TO_BUILD="X86;AArch64"
|
||||
-DLLVM_TOOLS_INSTALL_DIR=bin
|
||||
-DLLVM_UTILS_INSTALL_DIR=bin
|
||||
-DUNIX=1
|
||||
|
||||
@ -45,7 +45,7 @@ sed -i "s|COOKBOOK_TOOLCHAIN|${COOKBOOK_TOOLCHAIN}|g" config.toml
|
||||
|
||||
python3 "${COOKBOOK_SOURCE}/x.py" install \
|
||||
--config config.toml \
|
||||
--jobs $(nproc)
|
||||
--jobs ${COOKBOOK_MAKE_JOBS}
|
||||
|
||||
mkdir -p "${COOKBOOK_STAGE}"/usr
|
||||
rsync -av --delete "${COOKBOOK_BUILD}"/install/* "${COOKBOOK_STAGE}"/usr/
|
||||
|
||||
@ -17,6 +17,6 @@ dependencies = [
|
||||
]
|
||||
dev-dependencies = [
|
||||
"host:clang21",
|
||||
"host:clang21.lld",
|
||||
"host:lld21",
|
||||
"host:llvm21.dev",
|
||||
]
|
||||
|
||||
@ -15,8 +15,8 @@ dev-dependencies = [
|
||||
"llvm21.runtime",
|
||||
"clang21",
|
||||
"clang21.dev",
|
||||
"clang21.lld-dev",
|
||||
"clang21.lld",
|
||||
"lld21.dev",
|
||||
"lld21",
|
||||
"host:libarchive",
|
||||
"host:zig",
|
||||
]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user