mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-11-09 18:47:16 -08:00
llvm-core/lld: Add 24.0.0_pre20260716
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
DIST llvm-project-16c6374250a465204e067b518577a2b4fd655f93.tar.gz 277748803 BLAKE2B a34e8c3b9f8a36dd32b99abfb2f027541838724e6f6046b1ba0596e763bcd23b1c1e158bd67b6db7e08af415afb32bf2609ab17f82df799fa028d41c59e70973 SHA512 5857455b00331b8ae1927cf822a203a6ff1fb69b901a30232fe3df423e14a0ec71997b99fcbc94e6cd545291dc65ae28b909792830333aaf403847d152aad71c
|
||||
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
|
||||
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
|
||||
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
|
||||
|
||||
@@ -0,0 +1,95 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11..14} )
|
||||
inherit cmake flag-o-matic llvm.org python-any-r1 toolchain-funcs
|
||||
|
||||
DESCRIPTION="The LLVM linker (link editor)"
|
||||
HOMEPAGE="https://llvm.org/"
|
||||
|
||||
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
|
||||
SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
|
||||
IUSE="+debug test zstd"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
~llvm-core/llvm-${PV}[debug=,zstd=]
|
||||
virtual/zlib:=
|
||||
zstd? ( app-arch/zstd:= )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
!llvm-core/lld:0
|
||||
"
|
||||
BDEPEND="
|
||||
llvm-core/llvm:${LLVM_MAJOR}
|
||||
test? (
|
||||
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
|
||||
)
|
||||
"
|
||||
PDEPEND="
|
||||
>=llvm-core/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR}
|
||||
"
|
||||
|
||||
LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o )
|
||||
LLVM_TEST_COMPONENTS=( llvm/utils/dtlto )
|
||||
LLVM_USE_TARGETS=llvm+eq
|
||||
llvm.org_set_globals
|
||||
|
||||
python_check_deps() {
|
||||
python_has_version "dev-python/lit[${PYTHON_USEDEP}]"
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use test && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
llvm.org_src_unpack
|
||||
|
||||
# Directory ${WORKDIR}/llvm does not exist with USE="-test",
|
||||
# but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below,
|
||||
# and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system
|
||||
# (lld/MachO/CMakeLists.txt) and is expected to be resolvable
|
||||
# to existent directory ${WORKDIR}/libunwind/include.
|
||||
mkdir -p "${WORKDIR}/llvm" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
|
||||
use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
|
||||
|
||||
# https://gcc.gnu.org/PR121495 (bug #958469)
|
||||
use arm64 && tc-is-gcc && [[ $(gcc-major-version) -ge 14 ]] && append-flags -mearly-ra=none
|
||||
|
||||
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
|
||||
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
|
||||
-DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
-DLLVM_INCLUDE_TESTS=$(usex test)
|
||||
-DLLVM_ENABLE_ZLIB=FORCE_ON
|
||||
-DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF)
|
||||
-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
|
||||
)
|
||||
|
||||
use test && mycmakeargs+=(
|
||||
-DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
|
||||
-DLLVM_LIT_ARGS="$(get_lit_flags)"
|
||||
-DPython3_EXECUTABLE="${PYTHON}"
|
||||
)
|
||||
|
||||
tc-is-cross-compiler && mycmakeargs+=(
|
||||
-DLLVM_TABLEGEN_EXE="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen"
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local -x LIT_PRESERVES_TMP=1
|
||||
cmake_build check-lld
|
||||
}
|
||||
Reference in New Issue
Block a user