diff options
author | Michał Górny <mgorny@gentoo.org> | 2024-03-16 17:19:14 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2024-03-16 17:25:09 +0100 |
commit | 4a491029c525314484793ff4f40626e4e1a88174 (patch) | |
tree | d749490cdab249ca9e1c48349bd4e560cf5eb228 /sys-devel | |
parent | dev-python/lit: Add 19.0.0_pre20240316 snapshot (diff) | |
download | gentoo-4a491029c525314484793ff4f40626e4e1a88174.tar.gz gentoo-4a491029c525314484793ff4f40626e4e1a88174.tar.bz2 gentoo-4a491029c525314484793ff4f40626e4e1a88174.zip |
sys-devel/lld: Add 19.0.0_pre20240316 snapshot
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/lld/Manifest | 1 | ||||
-rw-r--r-- | sys-devel/lld/lld-19.0.0_pre20240316.ebuild | 93 |
2 files changed, 94 insertions, 0 deletions
diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest index 80cf2211156c..2191e996e18d 100644 --- a/sys-devel/lld/Manifest +++ b/sys-devel/lld/Manifest @@ -9,3 +9,4 @@ DIST llvm-project-18.1.0.src.tar.xz 132034208 BLAKE2B 06ad7c65e1d10946c74027ec46 DIST llvm-project-18.1.0.src.tar.xz.sig 566 BLAKE2B 1ab731c3fb151ce777ad4e2c8c653e5e08c2e97795dae06185d9d92248d4435aae67e1cfa23efb9b0b90ee44183ca69b92c64cb2b6d2c338388bde1fea07d232 SHA512 7bda930945c4b51c33de9918941797a4336020b475f3999a81055bb0b2a080f81e823c6bde43cc445a113e78f5667939bce5da64ccd650e8e9b15646f84ae105 DIST llvm-project-1c7607e8ee6ec4ca3abce1561dd39a98d4efac96.tar.gz 207112414 BLAKE2B eb028b0b09d0f970d2861578245f4ace7ebe55ef1da33503cad6a1ed3691d29cac2556bc9360e911d64ab617df4cce0d26ea0e1ab49a68ce7e4001c52ed32a71 SHA512 687720278900dd57dae430e965902777946e93b647726410c6310bb1c2c944d7d30d1733204d3db10d527ecff9d9ad78cbcb8a97408383d9c5245a031291674a DIST llvm-project-597f9761c3a5ba278fa930d2fac13f156287d505.tar.gz 206699707 BLAKE2B 5461426f02742cefe5ae7faeb7fed15628741e3fb41ca01ffb8159805f9b55d883d318e7c677e5bf348949b7d8e16e079df09d461abe9b32d804dcb284584fc5 SHA512 b06ae070bb197d18cb8653e290b85e8526cdab4aeb5a02c94295d489d271bd7cea637960b516937e0ba1d7ada29e734c8ea1137335d46756db54632dcdba93e9 +DIST llvm-project-6d3cec01a6c29fa4e51ba129fa13dbf55d2b928e.tar.gz 207700152 BLAKE2B 855720b7a9cc7b1d8fdf398394eb5c702dd615c04e7dad51c449cb1c2f46e75f2ccf2ee10fa3a3403d6aec29f557023a11bd8cdb525bc9c3d76c79f23cd15e82 SHA512 ff6269158e165907c69bd3e4d2d6b87b4f4670546b7e290d7e6665e7097ec887d71174fa37bf5e1755524317e8ae8f0c7c7e428049e8b553faa52c614f1f4490 diff --git a/sys-devel/lld/lld-19.0.0_pre20240316.ebuild b/sys-devel/lld/lld-19.0.0_pre20240316.ebuild new file mode 100644 index 000000000000..5440a5c89919 --- /dev/null +++ b/sys-devel/lld/lld-19.0.0_pre20240316.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit cmake flag-o-matic llvm.org llvm-utils 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=" + ~sys-devel/llvm-${PV}[debug=,zstd=] + sys-libs/zlib:= + zstd? ( app-arch/zstd:= ) +" +RDEPEND=" + ${DEPEND} + !sys-devel/lld:0 +" +BDEPEND=" + sys-devel/llvm:${LLVM_MAJOR} + test? ( + $(python_gen_any_dep ">=dev-python/lit-${PV}[\${PYTHON_USEDEP}]") + ) +" +PDEPEND=" + >=sys-devel/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR} +" + +LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o ) +llvm.org_set_globals + +python_check_deps() { + python_has_version ">=dev-python/lit-${PV}[${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_prepend_path "${LLVM_MAJOR}" + + # ODR violations (https://github.com/llvm/llvm-project/issues/83529, bug #922353) + filter-lto + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/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) + ) + + 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 +} |