diff options
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/Manifest.gz | bin | 10486 -> 10490 bytes | |||
-rw-r--r-- | sys-devel/mold/Manifest | 7 | ||||
-rw-r--r-- | sys-devel/mold/files/mold-1.2.1-install-nopython.patch | 34 | ||||
-rw-r--r-- | sys-devel/mold/files/mold-1.3.0-openssl-pkgconfig.patch | 28 | ||||
-rw-r--r-- | sys-devel/mold/files/mold-1.3.1-fix-riscv-set32.patch | 25 | ||||
-rw-r--r-- | sys-devel/mold/mold-1.5.1.ebuild | 96 | ||||
-rw-r--r-- | sys-devel/mold/mold-9999.ebuild | 6 |
7 files changed, 104 insertions, 92 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz Binary files differindex 2a700f2f8e1a..4d58e35f1348 100644 --- a/sys-devel/Manifest.gz +++ b/sys-devel/Manifest.gz diff --git a/sys-devel/mold/Manifest b/sys-devel/mold/Manifest index 89c3aa5438ca..928e33a30178 100644 --- a/sys-devel/mold/Manifest +++ b/sys-devel/mold/Manifest @@ -1,9 +1,8 @@ -AUX mold-1.2.1-install-nopython.patch 1178 BLAKE2B 62092d363291f640567e334a7d16e90640b5e98a972729340527eb1a10f7febd77b6ae6a71e82c93c4d8c3ea04812893b1a42cd7404b3d6aba6bd35ede308567 SHA512 c22cd13018472ecf84fbd9a192c7072e4d7cd263e9bb19a94b1997014b110790266c7ae62977ce716aedb659a5d40be4bc95e8c0dbb2b8b5cf8e1d799fff4887 -AUX mold-1.3.0-openssl-pkgconfig.patch 887 BLAKE2B c014be11c2e18b8df12f156ac8a40468afdf1b0b600c9af73a7373063b1e3658dd199b5ef3bd538641720bfbe10c602d96b0066420c321affb5d2f432fbbda57 SHA512 072f311bdbde5b556bcf1916d5586124007d0d47642c3555cd76c96d19fc1b77ef2f260937bcdc9014201c2a702ce5b4d9612cfdfab1e7b5d80882db2332329a -AUX mold-1.3.1-fix-riscv-set32.patch 831 BLAKE2B 103fa9944f16993842b941b607b7e157b8fa31064fd7a115c8f1da4b617b98939b55caae98b246047e6ec0fa136d2b175001ab4dd18df5817cb282fd4e3aad9c SHA512 03b1ae4708826df19d7a879b985f7e81ad283abace64e306b982800ba633136d8f01b00221b3d9ca57fe3b21eb2796af33b0c3fbee4d94e6bb9e84043828fe01 AUX mold-1.4.1-glob-tests.patch 5512 BLAKE2B bade33580bb63e58541dc1bafe4dc0fd0592e752e6f6003e67e210899ac3f4ee31490d40ee00c8af6ffd222744c56f74c677ba9e4aec2f3c2f4a9fc117846287 SHA512 712c878a649c13808509454fd65c10810777f1ca655365aa7fd3cf25e79247b88367ab454e6508e13f3f932ccc71ae25e4459fb6d3d107efcbe30e943e2f4bfa AUX mold-1.4.1-tbb-flags-stripping.patch 1141 BLAKE2B c53b46b509ccc1adb5700ee12270bf15358eca2869f0ec90e686cf1c4218e912dbf151e449220be1cc206a4eb69032619897674a4ecace6f98fce3ea889a883d SHA512 2691bde934649178e4ae45d5bc4554d6c997d10679cf0d575e4be6ecb2fca772caf9a82cdbbf61d00e0d986b3dbfc811a61800da0def1c2aefdf3c64553107d6 DIST mold-1.4.2.tar.gz 6287845 BLAKE2B ec429f70b92c4af5be83761893028f2324fe2086fea0e9b64f1d89884c6bc8dd34e5615178ef28ff19c36d01dafc834e6f6b9a8d701d62e360ef4e0be2f065bd SHA512 17f543969e53737818b0be563aee39feac672f93e0fd712827523232b64eccb4629f3994c5a90de50b5f761886669e0946a8d463663725e774eb7d352de1ced1 +DIST mold-1.5.1.tar.gz 8254552 BLAKE2B 1a5f8099df3cf7a6008632afed2aa106a54fa0c6628302f13586884fd1a37705a2bfc9ddc395261c04d53fe9de679b5afc7e052dcfe37894444b024670f44307 SHA512 340a45c5190ce5ba87eaa05238da7c70400bf4a2788a095935b9675593078ad76bbd95e67aa36b3ec683428724a3c6bc27c7e0a69569afce461682dc4bd16b10 EBUILD mold-1.4.2.ebuild 2247 BLAKE2B 8e6a4ed72fcd26918269414cb41284b6bd2af396e2faacf4248dfccc23521aba1fc736ebf6c257800c24434b8c0dee1803855ec6e302a514371e00e0819fcadb SHA512 be169d49593c519ea048647cbda871c317f5d72f4021483c7795b70c92a0f0c845ed2d517dd69dbef90e129ecf89dd27612c65f611d736bb7be5886025f5ed17 -EBUILD mold-9999.ebuild 2247 BLAKE2B 8e6a4ed72fcd26918269414cb41284b6bd2af396e2faacf4248dfccc23521aba1fc736ebf6c257800c24434b8c0dee1803855ec6e302a514371e00e0819fcadb SHA512 be169d49593c519ea048647cbda871c317f5d72f4021483c7795b70c92a0f0c845ed2d517dd69dbef90e129ecf89dd27612c65f611d736bb7be5886025f5ed17 +EBUILD mold-1.5.1.ebuild 2329 BLAKE2B 297f6ff8b28871d7e318dfba68d325ad192b263eb68cb43f86782380a0584a387439ff8d2406e1d313e1f0ad1e9513deffed0d9ffc6f46bdcd370e10b1bcf45a SHA512 6340cdaf7b90cb5f7f3638eb41683df13c7b47cacaa453250c8c892c84aa6a75fde5036e5ab5587a6c3343332a24dd24344dd720f2cd622f9a9712fb9a1cfa08 +EBUILD mold-9999.ebuild 2329 BLAKE2B 297f6ff8b28871d7e318dfba68d325ad192b263eb68cb43f86782380a0584a387439ff8d2406e1d313e1f0ad1e9513deffed0d9ffc6f46bdcd370e10b1bcf45a SHA512 6340cdaf7b90cb5f7f3638eb41683df13c7b47cacaa453250c8c892c84aa6a75fde5036e5ab5587a6c3343332a24dd24344dd720f2cd622f9a9712fb9a1cfa08 MISC metadata.xml 532 BLAKE2B 567b47e19d44fabf45a4e1153adb53618c78e89adf580c6350f525fd7596e820608571f8f0920b844702c67192dbbb0122002a0a29125ecb31617ae975d52d09 SHA512 1893b76fc3c4ed0889915700661150bb051b92c6a3e55c606e8c4432148f52d8862e5b4968a0c0474630c0f014018a211b9588f71e68c75ad745d688c6448534 diff --git a/sys-devel/mold/files/mold-1.2.1-install-nopython.patch b/sys-devel/mold/files/mold-1.2.1-install-nopython.patch deleted file mode 100644 index 661d3dcf392f..000000000000 --- a/sys-devel/mold/files/mold-1.2.1-install-nopython.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 4fb6d4208cfb20bad4a3491a18e78409b5a8183f Mon Sep 17 00:00:00 2001 -From: Matthew Smith <matt@offtopica.uk> -Date: Sat, 30 Apr 2022 07:42:50 +0100 -Subject: [PATCH] Don't invoke Python to create libexec/mold/ld symlink - -Reverts commits 8073a92614fb59f59570031badab5dd4bc3b4f7f and -5803c3c200f301adc3abdb66df16d3d669712d70. - -Bug #841575 ---- - Makefile | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/Makefile b/Makefile -index d1abc850..10e053a9 100644 ---- a/Makefile -+++ b/Makefile -@@ -204,12 +204,7 @@ install: all - $(STRIP) $D$(LIBDIR)/mold/mold-wrapper.so - - $(INSTALL) -d $D$(LIBEXECDIR)/mold -- --# We want to make a symblink with a relative path, so that users can --# move the entire directory to other place without breaking the reference. --# GNU ln supports `--relative` to do that, but that's not supported by --# non-GNU systems. So we use Python to compute a relative path. -- ln -sf `python3 -c "import os.path; print(os.path.relpath('$(BINDIR)/mold', '$(LIBEXECDIR)/mold'))"` $D$(LIBEXECDIR)/mold/ld -+ ln -sf $(BINDIR)/mold $D$(LIBEXECDIR)/mold/ld - - $(INSTALL) -d $D$(MANDIR)/man1 - $(INSTALL_DATA) docs/mold.1 $D$(MANDIR)/man1 --- -2.35.3 - diff --git a/sys-devel/mold/files/mold-1.3.0-openssl-pkgconfig.patch b/sys-devel/mold/files/mold-1.3.0-openssl-pkgconfig.patch deleted file mode 100644 index d2ed0af47b41..000000000000 --- a/sys-devel/mold/files/mold-1.3.0-openssl-pkgconfig.patch +++ /dev/null @@ -1,28 +0,0 @@ -From a4fde946f49cddf4f7c1eceb3b86ca38375cec1d Mon Sep 17 00:00:00 2001 -From: Matthew Smith <matt@offtopica.uk> -Date: Sun, 26 Jun 2022 13:44:36 +0100 -Subject: [PATCH] Revert "Do not use pkg-config" - -This reverts commit 4ef90d4316bbba3a4b8902e38bf5f68171cc6ab7. ---- a/Makefile -+++ b/Makefile -@@ -18,6 +18,9 @@ ifeq ($(origin CXX), default) - CXX = c++ - endif - -+# Allow overriding pkg-config binary -+PKG_CONFIG = pkg-config -+ - # If you want to keep symbols in the installed binary, run make with - # `STRIP=true` to run /bin/true instead of the strip command. - STRIP = strip -@@ -100,7 +103,8 @@ ifeq ($(OS), Darwin) - endif - - ifeq ($(NEEDS_LIBCRYPTO), 1) -- MOLD_LDFLAGS += -lcrypto -+ MOLD_CXXFLAGS += $(shell $(PKG_CONFIG) --cflags-only-I openssl) -+ MOLD_LDFLAGS += $(shell $(PKG_CONFIG) --libs-only-L openssl) -lcrypto - endif - - # '-latomic' flag is needed building on riscv64 system. diff --git a/sys-devel/mold/files/mold-1.3.1-fix-riscv-set32.patch b/sys-devel/mold/files/mold-1.3.1-fix-riscv-set32.patch deleted file mode 100644 index 5613d8ddc003..000000000000 --- a/sys-devel/mold/files/mold-1.3.1-fix-riscv-set32.patch +++ /dev/null @@ -1,25 +0,0 @@ -From https://github.com/rui314/mold/pull/590 -From 68bd00caa7c7946f380f72a5dd263e7c1d436e9f Mon Sep 17 00:00:00 2001 -From: Alex Fan <alex.fan.q@gmail.com> -Date: Thu, 28 Jul 2022 14:04:21 +1000 -Subject: [PATCH] [ELF][RISCV] add missing R_RISCV_SET32 in EhFrameSection - -Signed-off-by: Alex Fan <alex.fan.q@gmail.com> ---- - elf/arch-riscv64.cc | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/elf/arch-riscv64.cc b/elf/arch-riscv64.cc -index 8761c6ac..0c589118 100644 ---- a/elf/arch-riscv64.cc -+++ b/elf/arch-riscv64.cc -@@ -183,6 +183,9 @@ void EhFrameSection<E>::apply_reloc(Context<E> &ctx, const ElfRel<E> &rel, - case R_RISCV_SET16: - *(ul16 *)loc = val; - return; -+ case R_RISCV_SET32: -+ *(ul32 *)loc = val; -+ return; - case R_RISCV_32_PCREL: - *(ul32 *)loc = val - this->shdr.sh_addr - offset; - return; diff --git a/sys-devel/mold/mold-1.5.1.ebuild b/sys-devel/mold/mold-1.5.1.ebuild new file mode 100644 index 000000000000..34d7e10e3bf1 --- /dev/null +++ b/sys-devel/mold/mold-1.5.1.ebuild @@ -0,0 +1,96 @@ +# Copyright 2021-2022 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 ~riscv" +fi + +# mold (AGPL-3) +# - xxhash (BSD-2) +# - tbb (Apache-2.0) +LICENSE="AGPL-3 Apache-2.0 BSD-2" +SLOT="0" +IUSE="system-tbb" + +RDEPEND=" + app-arch/zstd:= + sys-libs/zlib + system-tbb? ( >=dev-cpp/tbb-2021.4.0:= ) + !kernel_Darwin? ( + >=dev-libs/mimalloc-2:= + dev-libs/openssl:= + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + # https://bugs.gentoo.org/865837 + "${FILESDIR}"/mold-1.4.1-tbb-flags-stripping.patch +) + +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=( + -DMOLD_ENABLE_QEMU_TESTS=OFF + -DMOLD_LTO=OFF # Should be up to the user to decide this with CXXFLAGS. + -DMOLD_USE_SYSTEM_MIMALLOC=ON + -DMOLD_USE_SYSTEM_TBB=$(usex system-tbb) + ) + 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 ../../../usr/bin/${PN} /usr/libexec/${PN}/ld +} diff --git a/sys-devel/mold/mold-9999.ebuild b/sys-devel/mold/mold-9999.ebuild index 1a83cf4d004e..34d7e10e3bf1 100644 --- a/sys-devel/mold/mold-9999.ebuild +++ b/sys-devel/mold/mold-9999.ebuild @@ -23,6 +23,7 @@ SLOT="0" IUSE="system-tbb" RDEPEND=" + app-arch/zstd:= sys-libs/zlib system-tbb? ( >=dev-cpp/tbb-2021.4.0:= ) !kernel_Darwin? ( @@ -81,7 +82,10 @@ src_configure() { src_install() { dobin "${BUILD_DIR}"/${PN} - dolib.so "${BUILD_DIR}"/${PN}-wrapper.so + + # 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 |