mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
sys-devel/mold: add 2.4.1
Since 3867345f8c, cmake.eclass should handle
the PCH thing for us, so drop the patch (which needed rebasing anyway).
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
@@ -1,2 +1,3 @@
|
||||
DIST mold-2.1.0.tar.gz 9278811 BLAKE2B b31e13f92177553adf5069cf35c8c75c7bc28f0af4d1726cdc0c6abc1c9d3baaa5be512c3a8fb9bc3c3110096a79e1c6751c701171769595a2234fc1fa8c441a SHA512 f1c98d349b35b4042109d71f7db6eb8d7d089dc3241735bbd7b5402d513dcc85ca17904828779e5fc8234650fa9fb97f47c3a2f3e89cc2fb3cb9e9110439e5a2
|
||||
DIST mold-2.4.0.tar.gz 9974233 BLAKE2B 0710d9ce0407b64b05a23e04db142d603b38d41cd9e5e322b650680ee2bd8684f57647e9a0b5efc23b2106eb1e38e38143be7d4b357b2d32e4fe0b6a99e41cca SHA512 e332d027f783dfb0a4f48b1fb7daf98e11e830f8de82b971b58ee8a7bae59eaa30b8155e7491b6057f0ce8e0b09ddd0ab1d364f01ea15517e1d089fdb292a4e5
|
||||
DIST mold-2.4.1.tar.gz 9957259 BLAKE2B 17aab84c0793dc305d53a3c2f372ddc92395b6941ffe372af55cf94f4dd65ea8d63d4e85dcdb3e76622811e5f95577d6f10612102c373835d6f75f2a3d0bcfed SHA512 d61ee4306ecaa6ba5b4ce120636e70db081bb824a482bb3014429e13294134bc2560b1a9b477c47378f1062107f1c32dba2810e41be199cd6882cd1146971245
|
||||
|
||||
99
sys-devel/mold/mold-2.4.1.ebuild
Normal file
99
sys-devel/mold/mold-2.4.1.ebuild
Normal file
@@ -0,0 +1,99 @@
|
||||
# Copyright 2021-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake toolchain-funcs
|
||||
|
||||
DESCRIPTION="A Modern Linker"
|
||||
HOMEPAGE="https://github.com/rui314/mold"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/rui314/mold.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/rui314/mold/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86"
|
||||
fi
|
||||
|
||||
# mold (MIT)
|
||||
# - xxhash (BSD-2)
|
||||
LICENSE="MIT BSD-2"
|
||||
SLOT="0"
|
||||
|
||||
RDEPEND="
|
||||
app-arch/zstd:=
|
||||
>=dev-cpp/tbb-2021.7.0-r1:=
|
||||
dev-libs/blake3:=
|
||||
sys-libs/zlib
|
||||
!kernel_Darwin? (
|
||||
>=dev-libs/mimalloc-2:=
|
||||
)
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
pkg_pretend() {
|
||||
# Requires a c++20 compiler, see #831473
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
if tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]]; then
|
||||
die "${PN} needs at least gcc 10"
|
||||
elif tc-is-clang && [[ $(clang-major-version) -lt 12 ]]; then
|
||||
die "${PN} needs at least clang 12"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
# Needs unpackaged dwarfdump
|
||||
rm test/elf/{{dead,compress}-debug-sections,compressed-debug-info}.sh || die
|
||||
|
||||
# Heavy tests, need qemu
|
||||
rm test/elf/gdb-index-{compress-output,dwarf{2,3,4,5}}.sh || die
|
||||
rm test/elf/lto-{archive,dso,gcc,llvm,version-script}.sh || die
|
||||
|
||||
# Sandbox sadness
|
||||
rm test/elf/run.sh || die
|
||||
sed -i 's|`pwd`/mold-wrapper.so|"& ${LD_PRELOAD}"|' \
|
||||
test/elf/mold-wrapper{,2}.sh || die
|
||||
|
||||
# static-pie tests require glibc built with static-pie support
|
||||
if ! has_version -d 'sys-libs/glibc[static-pie(+)]'; then
|
||||
rm test/elf/{,ifunc-}static-pie.sh || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON
|
||||
-DMOLD_ENABLE_QEMU_TESTS=OFF
|
||||
-DMOLD_LTO=OFF # Should be up to the user to decide this with CXXFLAGS.
|
||||
-DMOLD_USE_MIMALLOC=$(usex !kernel_Darwin)
|
||||
-DMOLD_USE_SYSTEM_MIMALLOC=ON
|
||||
-DMOLD_USE_SYSTEM_TBB=ON
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin "${BUILD_DIR}"/${PN}
|
||||
|
||||
# https://bugs.gentoo.org/872773
|
||||
insinto /usr/$(get_libdir)/mold
|
||||
doins "${BUILD_DIR}"/${PN}-wrapper.so
|
||||
|
||||
dodoc docs/{design,execstack}.md
|
||||
doman docs/${PN}.1
|
||||
|
||||
dosym ${PN} /usr/bin/ld.${PN}
|
||||
dosym ${PN} /usr/bin/ld64.${PN}
|
||||
dosym -r /usr/bin/${PN} /usr/libexec/${PN}/ld
|
||||
}
|
||||
|
||||
src_test() {
|
||||
export TEST_CC="$(tc-getCC)" \
|
||||
TEST_GCC="$(tc-getCC)" \
|
||||
TEST_CXX="$(tc-getCXX)" \
|
||||
TEST_GXX="$(tc-getCXX)"
|
||||
cmake_src_test
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Copyright 2021-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
@@ -31,10 +31,6 @@ RDEPEND="
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.3.0-no-pch.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
# Requires a c++20 compiler, see #831473
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
|
||||
Reference in New Issue
Block a user