diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-01-13 19:12:15 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-01-13 19:12:15 +0000 |
commit | a7ec94f7d22ee22df2e424c1d3f842510b7993aa (patch) | |
tree | f35dc4a8ebf81ae4e8802aa6d4347ce28a1e25f5 /sys-devel | |
parent | 7860ad41012a3808c645607818b64ad7dab025e9 (diff) |
gentoo auto-resync : 13:01:2024 - 19:12:15
Diffstat (limited to 'sys-devel')
44 files changed, 1534 insertions, 770 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz Binary files differindex dd91378c38cc..6f133ce8759d 100644 --- a/sys-devel/Manifest.gz +++ b/sys-devel/Manifest.gz diff --git a/sys-devel/bmake/Manifest b/sys-devel/bmake/Manifest deleted file mode 100644 index a4a8288e3935..000000000000 --- a/sys-devel/bmake/Manifest +++ /dev/null @@ -1,8 +0,0 @@ -AUX bmake-20210206-tests.patch 467 BLAKE2B 7c66cfbb610f2ea9615a737dd2d97fbea359ecb0e5b5c746447b9a0e9d2dff188f6f0d45225dd07d1226a86297f0c9ba8b8be7587039f2cc7ceaab4bde61f570 SHA512 3d855d54b64e2871ad8ccd494939c92a6bca2bec61f186e907a9b6b8b4f51b4ff63fcacbb8b6d44cef33a39c6ba2bed6c1fdd30d7ad65ad03d1d659781c420fe -AUX bmake-20210314-mk-fixes.patch 2054 BLAKE2B 404e99593f04408e3f62d8c6118fc1676ef414b4cc18f5ec8b089182fad8865ad79e40c236e58b084f3194bdcc94c92e1e10e40efbddc142b84053117065e202 SHA512 8c9e823dd158e352021f0905e2a15cb8d7da3020c49a8f824cc5dbd8f33910fc64629d5f400fd8651a16b07e0685a1247a661fd9230a62b7330bd5fc71427dd4 -DIST bmake-20230909.tar.gz 859801 BLAKE2B 02a44598edf05ebbcb31767b156563bfa10071774a3e7ae565efddc9b1ea6e684558e4ec3cfbc56d7d855cbe8663c43f43bd8d37e0a289c55ec12733e3e4916c SHA512 50622aee8024b3e0385974a8f446a4b5df0ba494b6133ab91ebbe63c408154b112f62c9df8521f4f1beaf28cdd6e7da178c3334337f6b14c8bced532029d8ba5 -DIST bmake-20231210.tar.gz 859537 BLAKE2B 554a4fab9df6c3f0ed1659c69a6294a6c3e1ebce4a8609ea1fe8bc657c11be04ea9b66ca01c50fc3bfc1ee54552a7e16584b26bea9f5461834e608ea39bbc38a SHA512 e2e35b5442f17c521ef2bf1c4cc1dbdedd0b1a335ac9a3c743add1c0bbaf4e32396ba64fd572cca75821cfa2b722d58ee71ec694d150d7e70d7a550d911a308b -DIST mk-20210330.tar.gz 107380 BLAKE2B 9ac30a117d9ba31635cf8d8d29fdba76f148611f47628403ca8f807081c32509f10498d3c30fd24985e5420af4710fe59fc6315d71f2d0c1cfed93263a06553a SHA512 6acd3ee911442934082f4f877d795b07c5e23022eaa9c0874799d97e92a2f5a663cb45f94b7f9745c49cbbce6b7e755a29e381ccfb9e68a0be1eedbd22fd5d3b -EBUILD bmake-20230909.ebuild 1331 BLAKE2B e64a8654efd87234cb5b9f7a4855bf72ccf8fa4f54dacb0e50b90fc6b82e1bc00e9daf7f165a3a96037ca36def957d05218b32f6b0adf4987c3e551fad15decd SHA512 2f8e69919dd498f9b7f9dd0a65f08be2da9cc92f908aefdcd4518e4f0506cf4a25c505cc5d1c2200a5cbd49cf4c5068d2a40fa93d323ecaa6e85edad691b00cd -EBUILD bmake-20231210.ebuild 1332 BLAKE2B 552fdf25bd9e70a4d7c36b06476d3428c0939f1c80264b8ebc5e7b12aa28d30d76fe95e74c16ed2fe2b4745f021b23251c992bd6550bf9e5e04a3b567e0f0e97 SHA512 846edfbdebe7d90eb7681dfea78605d9ff8c5e3cce2e45723386530b276f68dbb028b7ade9c01cd0c64322227d5e685a1c22ed14a9c4950e6caf5dbdf8a4d7a9 -MISC metadata.xml 353 BLAKE2B 70bd5eb274c4693a005986471e5a5c29a162bd0a080a7ba590c64171f2aa171bf9670093419f0b3e9ef304e5478f71df4899082e3dc76b4b0cedfe782a6625df SHA512 ade70c57a7ae5165c432d2024ec685609971347a94ecd69ab73142ff602f4cafb49df880d4dd1cee5695f1ea11c2c0ccc837d9a1ad38e50c61d0d27049279bc5 diff --git a/sys-devel/bmake/bmake-20230909.ebuild b/sys-devel/bmake/bmake-20230909.ebuild deleted file mode 100644 index 2d2fc27388a5..000000000000 --- a/sys-devel/bmake/bmake-20230909.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MK_VER=20210330 - -DESCRIPTION="NetBSD's portable make" -HOMEPAGE="http://www.crufty.net/help/sjg/bmake.html" -SRC_URI=" - http://void.crufty.net/ftp/pub/sjg/${P}.tar.gz - http://void.crufty.net/ftp/pub/sjg/mk-${MK_VER}.tar.gz" -S="${WORKDIR}/${PN}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" - -# Skip failing test (sandbox and csh) -PATCHES=( - "${FILESDIR}"/${PN}-20210206-tests.patch -) - -src_prepare() { - default - cd "${WORKDIR}" || die - eapply "${FILESDIR}"/${PN}-20210314-mk-fixes.patch -} - -src_configure() { - econf \ - --with-mksrc=../mk \ - --with-default-sys-path="${EPREFIX}"/usr/share/mk/${PN} \ - --with-machine_arch=${ARCH} -} - -src_compile() { - sh make-bootstrap.sh || die "bootstrap failed" -} - -src_test() { - cd unit-tests || die - - # the 'ternary' test uses ${A} internally, which - # conflicts with Gentoo's ${A}, hence unset it for - # the tests temporarily. - env -u A MAKEFLAGS= \ - "${S}"/bmake -r -m / TEST_MAKE="${S}"/bmake test || die "tests compilation failed" -} - -src_install() { - dobin ${PN} - doman ${PN}.1 - FORCE_BSD_MK=1 SYS_MK_DIR=. \ - sh ../mk/install-mk -v -m 644 "${ED}"/usr/share/mk/${PN} \ - || die "failed to install mk files" -} diff --git a/sys-devel/bmake/bmake-20231210.ebuild b/sys-devel/bmake/bmake-20231210.ebuild deleted file mode 100644 index 7331b69374fb..000000000000 --- a/sys-devel/bmake/bmake-20231210.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MK_VER=20210330 - -DESCRIPTION="NetBSD's portable make" -HOMEPAGE="http://www.crufty.net/help/sjg/bmake.html" -SRC_URI=" - http://void.crufty.net/ftp/pub/sjg/${P}.tar.gz - http://void.crufty.net/ftp/pub/sjg/mk-${MK_VER}.tar.gz" -S="${WORKDIR}/${PN}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" - -# Skip failing test (sandbox and csh) -PATCHES=( - "${FILESDIR}"/${PN}-20210206-tests.patch -) - -src_prepare() { - default - cd "${WORKDIR}" || die - eapply "${FILESDIR}"/${PN}-20210314-mk-fixes.patch -} - -src_configure() { - econf \ - --with-mksrc=../mk \ - --with-default-sys-path="${EPREFIX}"/usr/share/mk/${PN} \ - --with-machine_arch=${ARCH} -} - -src_compile() { - sh make-bootstrap.sh || die "bootstrap failed" -} - -src_test() { - cd unit-tests || die - - # the 'ternary' test uses ${A} internally, which - # conflicts with Gentoo's ${A}, hence unset it for - # the tests temporarily. - env -u A MAKEFLAGS= \ - "${S}"/bmake -r -m / TEST_MAKE="${S}"/bmake test || die "tests compilation failed" -} - -src_install() { - dobin ${PN} - doman ${PN}.1 - FORCE_BSD_MK=1 SYS_MK_DIR=. \ - sh ../mk/install-mk -v -m 644 "${ED}"/usr/share/mk/${PN} \ - || die "failed to install mk files" -} diff --git a/sys-devel/bmake/files/bmake-20210206-tests.patch b/sys-devel/bmake/files/bmake-20210206-tests.patch deleted file mode 100644 index 49e5f258e91a..000000000000 --- a/sys-devel/bmake/files/bmake-20210206-tests.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/unit-tests/Makefile -+++ b/unit-tests/Makefile -@@ -191,7 +191,6 @@ TESTS+= dotwait - TESTS+= envfirst - TESTS+= error - TESTS+= # escape # broken by reverting POSIX changes --TESTS+= export - TESTS+= export-all - TESTS+= export-env - TESTS+= export-variants -@@ -290,7 +289,6 @@ TESTS+= sh-leading-plus - TESTS+= sh-meta-chars - TESTS+= sh-multi-line - TESTS+= sh-single-line --TESTS+= shell-csh - TESTS+= shell-custom - .if exists(/bin/ksh) - TESTS+= shell-ksh diff --git a/sys-devel/bmake/files/bmake-20210314-mk-fixes.patch b/sys-devel/bmake/files/bmake-20210314-mk-fixes.patch deleted file mode 100644 index 6dd935863be1..000000000000 --- a/sys-devel/bmake/files/bmake-20210314-mk-fixes.patch +++ /dev/null @@ -1,66 +0,0 @@ -# https://bugs.gentoo.org/779340 -# https://bugs.gentoo.org/778458 -# - Fix incorrect linking of shared libraries -# - Respect LDFLAGS -# - Do not strip prog binaries ---- a/mk/lib.mk -+++ b/mk/lib.mk -@@ -170,7 +170,7 @@ LD_solib= lib${LIB}_pic.a - .elif ${TARGET_OSNAME} == "Linux" - SHLIB_LD = ${CC} - # this is ambiguous of course --LD_shared=-shared -Wl,"-soname lib${LIB}.so.${SHLIB_MAJOR}" -+LD_shared=-shared -Wl,-soname,lib${LIB}.so.${SHLIB_MAJOR} - LD_solib= -Wl,--whole-archive lib${LIB}_pic.a -Wl,--no-whole-archive - .if ${COMPILER_TYPE} == "gcc" - # Linux uses GNU ld, which is a multi-pass linker -@@ -455,11 +455,11 @@ lib${LIB}.${LD_so}: ${SOLIB} ${DPADD} - --whole-archive ${SOLIB} --no-whole-archive ${SHLIB_LDADD} \ - ${SHLIB_LDENDFILE} - .else -- ${SHLIB_LD} ${LD_x} ${LD_shared} \ -+ ${SHLIB_LD} ${LD_x} ${LD_shared} ${LDFLAGS} \ - -o ${.TARGET} ${SOLIB} ${SHLIB_LDADD} - .endif - .else -- ${SHLIB_LD} -o ${.TARGET} ${LD_shared} ${LD_solib} ${DLLIB} ${SHLIB_LDADD} -+ ${SHLIB_LD} -o ${.TARGET} ${LD_shared} ${LDFLAGS} ${LD_solib} ${DLLIB} ${SHLIB_LDADD} - .endif - .endif - .if !empty(SHLIB_LINKS) ---- a/mk/prog.mk -+++ b/mk/prog.mk -@@ -178,7 +178,7 @@ proginstall: - .if defined(PROG) - [ -d ${DESTDIR}${BINDIR} ] || \ - ${INSTALL} -d ${PROG_INSTALL_OWN} -m 775 ${DESTDIR}${BINDIR} -- ${INSTALL} ${COPY} ${STRIP_FLAG} ${PROG_INSTALL_OWN} -m ${BINMODE} \ -+ ${INSTALL} ${COPY} ${PROG_INSTALL_OWN} -m ${BINMODE} \ - ${PROG} ${DESTDIR}${BINDIR}/${PROG_NAME} - .endif - .if defined(HIDEGAME) ---- a/mk/sys/Linux.mk -+++ b/mk/sys/Linux.mk -@@ -19,12 +19,13 @@ NEED_SOLINKS ?=yes - AR ?= ar - ARFLAGS ?= rl - RANLIB ?= ranlib -+LDFLAGS ?= - - AS ?= as - AFLAGS= - COMPILE.s ?= ${AS} ${AFLAGS} - LINK.s ?= ${CC} ${AFLAGS} ${LDFLAGS} --COMPILE.S ?= ${CC} ${AFLAGS} ${CPPFLAGS} -c -+COMPILE.S ?= ${CC} ${AFLAGS} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -c - LINK.S ?= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS} - .if exists(/usr/local/bin/gcc) - CC ?= gcc -pipe -@@ -65,7 +66,6 @@ LFLAGS= - LEX.l ?= ${LEX} ${LFLAGS} - - LD ?= ld --LDFLAGS= - - LINT ?= lint - LINTFLAGS ?= -chapbx diff --git a/sys-devel/bmake/metadata.xml b/sys-devel/bmake/metadata.xml deleted file mode 100644 index fe8a3a5da516..000000000000 --- a/sys-devel/bmake/metadata.xml +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="person"> - <email>jsmolic@gentoo.org</email> - <name>Jakov Smolić</name> - </maintainer> - <maintainer type="person"> - <email>soap@gentoo.org</email> - <name>David Seifert</name> - </maintainer> -</pkgmetadata> diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index 39e6d873f184..b366253f0732 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -4,10 +4,12 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659 DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447 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-8d817f6479a5df874028a8b40fd30aecd3479005.tar.gz 204890108 BLAKE2B 8c57c556371b37d00cda753a40f1162e678d89fa40e8f2b90a38aab7e17f9debfb2ebad53a3a95aa530a9e3e2b4b735828e404e576c8f2738370ec41c28badce SHA512 a38ce082ca1b999888ee0a633b94a02258579591e6ce73ba4722eafb9f0610f9624887eca43e4a6ae567c07ffc014f4ea4137e905899407951265d7c93785f18 DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d EBUILD clang-common-15.0.7-r7.ebuild 5462 BLAKE2B 098697c65115e672a1e878167997d820c93cad6a71c5a1dc17c731a031d37f20e50ef41e2f1d3238bc91065ba23bab5db4ab48e8274be9db3cb086ec6cdf7868 SHA512 7500bf0c4fde82b90aac68d09b95a49c241fae8b0d2340f7780e9baed1c85d855e45c4296a7daaa0b831a07f442e0be4faf6510a335fa5c979b3061e28fdb99d EBUILD clang-common-16.0.6-r2.ebuild 4972 BLAKE2B 7ce71ef4c5ca19ef5847c90a23662b30e028d97fba045ec64976a3093c94e65bc8b5b04535d2ecf9ec51526fedc6b2b264135162acedcfb6df88cf426ce36357 SHA512 490b4afdc3ebbac15152d8da7cb86b3f2030e7ea1c70b09542f8bfd839d0194b97ee979fffcfb19fba8cca97ecfe565a5e77968b9afd618851772d7ccf444624 EBUILD clang-common-17.0.6-r1.ebuild 7633 BLAKE2B 5359c9e23fe8be96256560012b1e1a16f7ca7557e19246d4e5bf9b490593f9c6d34b5298ef2ff00ac28cd84e485cbf979990eddd4d4025505d54b0200951dfa4 SHA512 3e6dd86cb296c488ea919b57c29c905694bba8dfcbe4d18921a06eae26c5d19685003a550376c61e6cf1dcf7d08c643adc4b0c2c104c593d76dff32dc0afbfe3 EBUILD clang-common-18.0.0.9999.ebuild 7536 BLAKE2B c0e8010200824a7b6bd2c63682ae1a8ef3bfbc95a6188b6c585e74cdf4013c3082adb640ef2a9d6fe22caca6e685709e38ebfe7089e79a88996b123717089cee SHA512 d85cb3ef7d366b9dcc3163002fd4ccbe59dd03cdc80e2baeb5b1f13bce78204799236e9ddbde4fc0698ab016fb9d287fa174ad068c29eed09e40377eaf898646 EBUILD clang-common-18.0.0_pre20240106.ebuild 7536 BLAKE2B 6aecec997063120f88c5ebdf8c474d936a7401bf109ddb031dbbff28f723a1eb28e7d064d4842ae63df4d90ac17042c32429142ed7e8127a2a64e1eef811eefb SHA512 28c7fdefac1f8ea89e6c1720262e05b94f9abdb27fe45a814f16f25a572665cc2c2eef6af2161d710ba7c507dd345eed54f7913a33d8955850e62bc04579f3a3 +EBUILD clang-common-18.0.0_pre20240113.ebuild 7536 BLAKE2B 6aecec997063120f88c5ebdf8c474d936a7401bf109ddb031dbbff28f723a1eb28e7d064d4842ae63df4d90ac17042c32429142ed7e8127a2a64e1eef811eefb SHA512 28c7fdefac1f8ea89e6c1720262e05b94f9abdb27fe45a814f16f25a572665cc2c2eef6af2161d710ba7c507dd345eed54f7913a33d8955850e62bc04579f3a3 MISC metadata.xml 735 BLAKE2B 12ea133df3d7eb9367a65e572ef91893e654d5b77caa27c66e4b5b41ba90ebc5e619eb78dfff2a67183d2c1cbfcf35fa903b2bb75604ce153d5cedfce5346e3c SHA512 8ed6b12d4f2aa1985897a8d81ce898dbc0d14ac222f3d0f259cbe80fbb8b2349dff7677627daeaf39a422f290200da4fac6348abc81c9e35da0ca73a11cfdd83 diff --git a/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild b/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild new file mode 100644 index 000000000000..35e7e46f7c4f --- /dev/null +++ b/sys-devel/clang-common/clang-common-18.0.0_pre20240113.ebuild @@ -0,0 +1,255 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 llvm.org multilib + +DESCRIPTION="Common files shared between multiple slots of clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +IUSE=" + default-compiler-rt default-libcxx default-lld llvm-libunwind + hardened +" + +PDEPEND=" + sys-devel/clang:* + default-compiler-rt? ( + sys-devel/clang-runtime[compiler-rt] + llvm-libunwind? ( sys-libs/llvm-libunwind[static-libs] ) + !llvm-libunwind? ( sys-libs/libunwind[static-libs] ) + ) + !default-compiler-rt? ( sys-devel/gcc ) + default-libcxx? ( >=sys-libs/libcxx-${PV}[static-libs] ) + !default-libcxx? ( sys-devel/gcc ) + default-lld? ( sys-devel/lld ) + !default-lld? ( sys-devel/binutils ) +" +IDEPEND=" + !default-compiler-rt? ( sys-devel/gcc-config ) + !default-libcxx? ( sys-devel/gcc-config ) +" + +LLVM_COMPONENTS=( clang/utils ) +llvm.org_set_globals + +pkg_pretend() { + [[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return + + local flag missing_flags=() + for flag in default-{compiler-rt,libcxx,lld}; do + if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then + missing_flags+=( "${flag}" ) + fi + done + + if [[ ${missing_flags[@]} ]]; then + eerror "It seems that you have the following flags set on sys-devel/clang:" + eerror + eerror " ${missing_flags[*]}" + eerror + eerror "The default runtimes are now set via flags on sys-devel/clang-common." + eerror "The build is being aborted to prevent breakage. Please either set" + eerror "the respective flags on this ebuild, e.g.:" + eerror + eerror " sys-devel/clang-common ${missing_flags[*]}" + eerror + eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1." + die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common" + fi +} + +_doclang_cfg() { + local triple="${1}" + + local tool + for tool in ${triple}-clang{,++}; do + newins - "${tool}.cfg" <<-EOF + # This configuration file is used by ${tool} driver. + @gentoo-common.cfg + @gentoo-common-ld.cfg + EOF + done + + newins - "${triple}-clang-cpp.cfg" <<-EOF + # This configuration file is used by the ${triple}-clang-cpp driver. + @gentoo-common.cfg + EOF + + # Install symlinks for triples with other vendor strings since some + # programs insist on mangling the triple. + local vendor + for vendor in gentoo pc unknown; do + local vendor_triple="${triple%%-*}-${vendor}-${triple#*-*-}" + for tool in clang{,++,-cpp}; do + if [[ ! -f "${ED}/etc/clang/${vendor_triple}-${tool}.cfg" ]]; then + dosym "${triple}-${tool}.cfg" "/etc/clang/${vendor_triple}-${tool}.cfg" + fi + done + done +} + +doclang_cfg() { + local triple="${1}" + + _doclang_cfg ${triple} + + # LLVM may have different arch names in some cases. For example in x86 + # profiles the triple uses i686, but llvm will prefer i386 if invoked + # with "clang" on x86 or "clang -m32" on x86_64. The gentoo triple will + # be used if invoked through ${CHOST}-clang{,++,-cpp} though. + # + # To make sure the correct triples are installed, + # see Triple::getArchTypeName() in llvm/lib/TargetParser/Triple.cpp + # and compare with CHOST values in profiles. + + local abi=${triple%%-*} + case ${abi} in + armv4l|armv4t|armv5tel|armv6j|armv7a) + _doclang_cfg ${triple/${abi}/arm} + ;; + i686) + _doclang_cfg ${triple/${abi}/i386} + ;; + sparc) + _doclang_cfg ${triple/${abi}/sparcel} + ;; + sparc64) + _doclang_cfg ${triple/${abi}/sparcv9} + ;; + esac +} + +src_install() { + newbashcomp bash-autocomplete.sh clang + + insinto /etc/clang + newins - gentoo-runtimes.cfg <<-EOF + # This file is initially generated by sys-devel/clang-runtime. + # It is used to control the default runtimes using by clang. + + --rtlib=$(usex default-compiler-rt compiler-rt libgcc) + --unwindlib=$(usex default-compiler-rt libunwind libgcc) + --stdlib=$(usex default-libcxx libc++ libstdc++) + -fuse-ld=$(usex default-lld lld bfd) + EOF + + newins - gentoo-gcc-install.cfg <<-EOF + # This file is maintained by gcc-config. + # It is used to specify the selected GCC installation. + EOF + + newins - gentoo-common.cfg <<-EOF + # This file contains flags common to clang, clang++ and clang-cpp. + @gentoo-runtimes.cfg + @gentoo-gcc-install.cfg + @gentoo-hardened.cfg + # bug #870001 + -include "${EPREFIX}/usr/include/gentoo/maybe-stddefs.h" + EOF + + # clang-cpp does not like link args being passed to it when directly + # invoked, so use a separate configuration file. + newins - gentoo-common-ld.cfg <<-EOF + # This file contains flags common to clang and clang++ + @gentoo-hardened-ld.cfg + EOF + + # Baseline hardening (bug #851111) + newins - gentoo-hardened.cfg <<-EOF + # Some of these options are added unconditionally, regardless of + # USE=hardened, for parity with sys-devel/gcc. + -fstack-clash-protection + -fstack-protector-strong + -fPIE + -include "${EPREFIX}/usr/include/gentoo/fortify.h" + EOF + + newins - gentoo-hardened-ld.cfg <<-EOF + # Some of these options are added unconditionally, regardless of + # USE=hardened, for parity with sys-devel/gcc. + -Wl,-z,relro + EOF + + dodir /usr/include/gentoo + + cat >> "${ED}/usr/include/gentoo/maybe-stddefs.h" <<-EOF || die + /* __has_include is an extension, but it's fine, because this is only + for Clang anyway. */ + #if defined __has_include && __has_include (<stdc-predef.h>) && !defined(__GLIBC__) + # include <stdc-predef.h> + #endif + EOF + + local fortify_level=$(usex hardened 3 2) + # We have to do this because glibc's headers warn if F_S is set + # without optimization and that would at the very least be very noisy + # during builds and at worst trigger many -Werror builds. + cat >> "${ED}/usr/include/gentoo/fortify.h" <<- EOF || die + #ifdef __clang__ + # pragma clang system_header + #endif + #ifndef _FORTIFY_SOURCE + # if defined(__has_feature) + # define __GENTOO_HAS_FEATURE(x) __has_feature(x) + # else + # define __GENTOO_HAS_FEATURE(x) 0 + # endif + # + # if defined(__STDC_HOSTED__) && __STDC_HOSTED__ == 1 + # define __GENTOO_NOT_FREESTANDING 1 + # else + # define __GENTOO_NOT_FREESTANDING 0 + # endif + # + # if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 && __GENTOO_NOT_FREESTANDING > 0 + # if !defined(__SANITIZE_ADDRESS__) && !__GENTOO_HAS_FEATURE(address_sanitizer) && !__GENTOO_HAS_FEATURE(memory_sanitizer) + # define _FORTIFY_SOURCE ${fortify_level} + # endif + # endif + # undef __GENTOO_HAS_FEATURE + # undef __GENTOO_NOT_FREESTANDING + #endif + EOF + + if use hardened ; then + cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die + # Options below are conditional on USE=hardened. + -D_GLIBCXX_ASSERTIONS + + # Analogue to GLIBCXX_ASSERTIONS + # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode + # https://libcxx.llvm.org/Hardening.html#using-hardened-mode + -D_LIBCPP_ENABLE_HARDENED_MODE=1 + EOF + + cat >> "${ED}/etc/clang/gentoo-hardened-ld.cfg" <<-EOF || die + # Options below are conditional on USE=hardened. + -Wl,-z,now + EOF + fi + + # We only install config files for supported ABIs because unprefixed tools + # might be used for crosscompilation where e.g. PIE may not be supported. + # See bug #912237 and bug #901247. Just ${CHOST} won't do due to bug #912685. + local abi + for abi in $(get_all_abis); do + local abi_chost=$(get_abi_CHOST "${abi}") + doclang_cfg "${abi_chost}" + done +} + +pkg_preinst() { + if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc + then + local gcc_path=$(gcc-config --get-lib-path 2>/dev/null) + if [[ -n ${gcc_path} ]]; then + cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF + --gcc-install-dir="${gcc_path%%:*}" + EOF + fi + fi +} diff --git a/sys-devel/clang-runtime/Manifest b/sys-devel/clang-runtime/Manifest index 32f73d91e3c9..783fd834e1bb 100644 --- a/sys-devel/clang-runtime/Manifest +++ b/sys-devel/clang-runtime/Manifest @@ -3,4 +3,5 @@ EBUILD clang-runtime-16.0.6.ebuild 1435 BLAKE2B dfbb6047c0541de72f3447fa61f00d96 EBUILD clang-runtime-17.0.6.ebuild 1439 BLAKE2B d707c24d4583956092f7346d6631b828bcc422e375f4d2ff9b2c7aa4adcb94f0f134165a739b7ce85493d910a1a7f8de7a0ea23ff5f7466e3055fc9bfe3e6faa SHA512 5fd4c83c8f6c82178222e81ef4dccc092932086747d1fc969dcb64e18c5e770c0d81140f1edbe7af5bc31102898b15e676dea69b074a3dd9d7268af0222edafe EBUILD clang-runtime-18.0.0.9999.ebuild 1339 BLAKE2B 60f0ce6dc250d959f058872d748bbffcbf3f036b3546a8c83c8178d809c9699095f84731fd1195b690b2d9b000c0f2a06d95153d1688809c325abe2f80dad88a SHA512 22d8cdc017390809ad96b917a85639a5c0f687db6737217447f49630004b5dffa8468db92a42f5f3e84788365380dd9b707fc03dcb5b4b102ec7f13b764d5d2c EBUILD clang-runtime-18.0.0_pre20240106.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a +EBUILD clang-runtime-18.0.0_pre20240113.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a MISC metadata.xml 661 BLAKE2B 24688c511713ea102b83c71d226d519981b3aee0e05ef7a56d6a80be829efd843194e45cb4fd801f0bb976b6f1976386d6a2b05d2bc907fe2aa42b22b85b7d1f SHA512 2b5ab8783c90795f2e7d1673d876048ed9745f4911fb7a860df56deac13a6dfeba4581a84562eae54eff757c45042ca3fab75c7800313ae61df9ce69780a9294 diff --git a/sys-devel/clang-runtime/clang-runtime-18.0.0_pre20240113.ebuild b/sys-devel/clang-runtime/clang-runtime-18.0.0_pre20240113.ebuild new file mode 100644 index 000000000000..323c0b62c062 --- /dev/null +++ b/sys-devel/clang-runtime/clang-runtime-18.0.0_pre20240113.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-build toolchain-funcs + +DESCRIPTION="Meta-ebuild for clang runtime libraries" +HOMEPAGE="https://clang.llvm.org/" + +LICENSE="metapackage" +SLOT="${PV%%.*}" +IUSE="+compiler-rt libcxx openmp +sanitize" +REQUIRED_USE="sanitize? ( compiler-rt )" + +RDEPEND=" + compiler-rt? ( + ~sys-libs/compiler-rt-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] + sanitize? ( + ~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] + ) + ) + libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] ) + openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] ) +" + +pkg_pretend() { + if tc-is-clang; then + ewarn "You seem to be using clang as a system compiler. As of clang-16," + ewarn "upstream has turned a few warnings that commonly occur during" + ewarn "configure script runs into errors by default. This causes some" + ewarn "configure tests to start failing, sometimes resulting in silent" + ewarn "breakage, missing functionality or runtime misbehavior. It is" + ewarn "not yet clear whether the change will remain or be reverted." + ewarn + ewarn "For more information, please see:" + ewarn "https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213" + fi +} diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest index 59e6e559cb57..1911b5c86cad 100644 --- a/sys-devel/clang/Manifest +++ b/sys-devel/clang/Manifest @@ -9,10 +9,12 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659 DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447 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-8d817f6479a5df874028a8b40fd30aecd3479005.tar.gz 204890108 BLAKE2B 8c57c556371b37d00cda753a40f1162e678d89fa40e8f2b90a38aab7e17f9debfb2ebad53a3a95aa530a9e3e2b4b735828e404e576c8f2738370ec41c28badce SHA512 a38ce082ca1b999888ee0a633b94a02258579591e6ce73ba4722eafb9f0610f9624887eca43e4a6ae567c07ffc014f4ea4137e905899407951265d7c93785f18 DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d EBUILD clang-15.0.7-r3.ebuild 12523 BLAKE2B d2f9e112d8c8d782b9d19913332445b234870dbff770bfd520b646347d8d804258e5043a155bb5e15f40ecdb41b2c0d70ee72dbe908b5621c2349d37f181d236 SHA512 c4abe3701012b4f9da97ac182680dbaceed802e95be06ae065debea943fa4635e60f4a0f31b6f23e3f7818f2d30dfb1e2c28f1a85dc0175c158b4e5c68b5a23e EBUILD clang-16.0.6.ebuild 12439 BLAKE2B 7a3eb95a48629c18bf6685fb2d01b46359159dd446a2d174dbdcb6d40afd8b62f5fb81d5bca871ad6a896a1e8f95234cb193bd955ebcb6e5ddab4d6a3155f4e0 SHA512 fb8563db77e8e7cce856d3516216531b183e066fc99b30b6f96010891a209d0f32b70d02d3a23a13b4edca5ae00ff31a686205a8f283ff2a242012923af6c73e EBUILD clang-17.0.6.ebuild 12119 BLAKE2B f7e041b2fd6470add07173be1750e7a0b17a8e2adbf55df2f70ab6610510eafacf450ca6e3bd8f37adcc9ceed43a3d68ffc4e692b32bd019b75ec9067e5dde19 SHA512 d9d564dd931f100a659f5d01a338bc176270f315936444816dadee270bc96ee27919f02f60d7a39249fb907cd50ad8ff2c098c97a32a273ad2c0a380d38346f4 EBUILD clang-18.0.0.9999.ebuild 12030 BLAKE2B be1d7f543125a0ef72ef4b14bb5349325bb7c1d5d9ff3d07db8507e9cf4ace7843c863b192e12e868b06e5868f9f99aa2bc5c3e83554e35ea1de0c8615cbdac8 SHA512 0aa5c4b8db0335d0dfddb40efcf9b1f904c549c27716a585b2410a2f1249c879f83ccb82c20a50eb0981fbb939ff68d5ef20afa11658824b02a98eb0b8cb4fa7 EBUILD clang-18.0.0_pre20240106.ebuild 12030 BLAKE2B be1d7f543125a0ef72ef4b14bb5349325bb7c1d5d9ff3d07db8507e9cf4ace7843c863b192e12e868b06e5868f9f99aa2bc5c3e83554e35ea1de0c8615cbdac8 SHA512 0aa5c4b8db0335d0dfddb40efcf9b1f904c549c27716a585b2410a2f1249c879f83ccb82c20a50eb0981fbb939ff68d5ef20afa11658824b02a98eb0b8cb4fa7 +EBUILD clang-18.0.0_pre20240113.ebuild 12030 BLAKE2B be1d7f543125a0ef72ef4b14bb5349325bb7c1d5d9ff3d07db8507e9cf4ace7843c863b192e12e868b06e5868f9f99aa2bc5c3e83554e35ea1de0c8615cbdac8 SHA512 0aa5c4b8db0335d0dfddb40efcf9b1f904c549c27716a585b2410a2f1249c879f83ccb82c20a50eb0981fbb939ff68d5ef20afa11658824b02a98eb0b8cb4fa7 MISC metadata.xml 1318 BLAKE2B 704c1a64297b25da1b2e0eec23cbdf4791273da1babf23292160b6163d43438e62fe214df7afa09232893599951918440954c17a9bfa0c6f829a7d706f564192 SHA512 4677ad146739dd41e025a2335eec353a3d35ac8db7482948fee611566d84b41c4e6bdd75bc3d78f8933d4d9818a36bf222e1aa89e52f945501ff918479fea3b6 diff --git a/sys-devel/clang/clang-18.0.0_pre20240113.ebuild b/sys-devel/clang/clang-18.0.0_pre20240113.ebuild new file mode 100644 index 000000000000..f5f1a7728b48 --- /dev/null +++ b/sys-devel/clang/clang-18.0.0_pre20240113.ebuild @@ -0,0 +1,472 @@ +# 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 llvm llvm.org multilib multilib-minimal +inherit prefix python-single-r1 toolchain-funcs + +DESCRIPTION="C language family frontend for LLVM" +HOMEPAGE="https://llvm.org/" + +# MSVCSetupApi.h: MIT +# sorttable.js: MIT + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +IUSE="+debug doc +extra ieee-long-double +pie +static-analyzer test xml" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +DEPEND=" + ~sys-devel/llvm-${PV}:${LLVM_MAJOR}=[debug=,${MULTILIB_USEDEP}] + static-analyzer? ( dev-lang/perl:* ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) +" + +RDEPEND=" + ${PYTHON_DEPS} + ${DEPEND} + >=sys-devel/clang-common-${PV} +" +BDEPEND=" + ${PYTHON_DEPS} + doc? ( $(python_gen_cond_dep ' + dev-python/myst-parser[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + ') ) + xml? ( virtual/pkgconfig ) +" +PDEPEND=" + ~sys-devel/clang-runtime-${PV} + sys-devel/clang-toolchain-symlinks:${LLVM_MAJOR} +" + +LLVM_COMPONENTS=( + clang clang-tools-extra cmake + llvm/lib/Transforms/Hello +) +LLVM_MANPAGES=1 +LLVM_TEST_COMPONENTS=( + llvm/utils +) +LLVM_USE_TARGETS=llvm +llvm.org_set_globals + +# Multilib notes: +# 1. ABI_* flags control ABIs libclang* is built for only. +# 2. clang is always capable of compiling code for all ABIs for enabled +# target. However, you will need appropriate crt* files (installed +# e.g. by sys-devel/gcc and sys-libs/glibc). +# 3. ${CHOST}-clang wrappers are always installed for all ABIs included +# in the current profile (i.e. alike supported by sys-devel/gcc). +# +# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need +# multilib clang* libraries (not runtime, not wrappers). + +pkg_setup() { + LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + # create extra parent dir for relative CLANG_RESOURCE_DIR access + mkdir -p x/y || die + BUILD_DIR=${WORKDIR}/x/y/clang + + llvm.org_src_prepare + + # add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch) + eprefixify \ + lib/Lex/InitHeaderSearch.cpp \ + lib/Driver/ToolChains/Darwin.cpp || die + + if ! use prefix-guest && [[ -n ${EPREFIX} ]]; then + sed -i "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX}/\"@" lib/Driver/ToolChains/Linux.cpp || die + fi +} + +check_distribution_components() { + if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then + local all_targets=() my_targets=() l + cd "${BUILD_DIR}" || die + + while read -r l; do + if [[ ${l} == install-*-stripped:* ]]; then + l=${l#install-} + l=${l%%-stripped*} + + case ${l} in + # meta-targets + clang-libraries|distribution) + continue + ;; + # tools + clang|clangd|clang-*) + ;; + # static libraries + clang*|findAllSymbols) + continue + ;; + # conditional to USE=doc + docs-clang-html|docs-clang-tools-html) + use doc || continue + ;; + esac + + all_targets+=( "${l}" ) + fi + done < <(${NINJA} -t targets all) + + while read -r l; do + my_targets+=( "${l}" ) + done < <(get_distribution_components $"\n") + + local add=() remove=() + for l in "${all_targets[@]}"; do + if ! has "${l}" "${my_targets[@]}"; then + add+=( "${l}" ) + fi + done + for l in "${my_targets[@]}"; do + if ! has "${l}" "${all_targets[@]}"; then + remove+=( "${l}" ) + fi + done + + if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then + eqawarn "get_distribution_components() is outdated!" + eqawarn " Add: ${add[*]}" + eqawarn "Remove: ${remove[*]}" + fi + cd - >/dev/null || die + fi +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # common stuff + clang-cmake-exports + clang-headers + clang-resource-headers + libclang-headers + + aarch64-resource-headers + arm-common-resource-headers + arm-resource-headers + core-resource-headers + cuda-resource-headers + hexagon-resource-headers + hip-resource-headers + hlsl-resource-headers + mips-resource-headers + opencl-resource-headers + openmp-resource-headers + ppc-htm-resource-headers + ppc-resource-headers + riscv-resource-headers + systemz-resource-headers + utility-resource-headers + ve-resource-headers + webassembly-resource-headers + windows-resource-headers + x86-resource-headers + + # libs + clang-cpp + libclang + ) + + if multilib_is_native_abi; then + out+=( + # common stuff + bash-autocomplete + libclang-python-bindings + + # tools + amdgpu-arch + c-index-test + clang + clang-format + clang-linker-wrapper + clang-offload-bundler + clang-offload-packager + clang-refactor + clang-repl + clang-rename + clang-scan-deps + diagtool + hmaptool + nvptx-arch + + # needed for cross-compiling Clang + clang-tblgen + ) + + if use extra; then + out+=( + # extra tools + clang-apply-replacements + clang-change-namespace + clang-doc + clang-include-cleaner + clang-include-fixer + clang-move + clang-pseudo + clang-query + clang-reorder-fields + clang-tidy + clang-tidy-headers + clangd + find-all-symbols + modularize + pp-trace + ) + fi + + if llvm_are_manpages_built; then + out+=( docs-clang-man ) + use extra && out+=( docs-clang-tools-man ) + fi + + if use doc; then + out+=( docs-clang-html ) + use extra && out+=( docs-clang-tools-html ) + fi + + use static-analyzer && out+=( + clang-check + clang-extdef-mapping + scan-build + scan-build-py + scan-view + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +multilib_src_configure() { + local mycmakeargs=( + -DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}") + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + -DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang" + # relative to bindir + -DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}" + + -DBUILD_SHARED_LIBS=OFF + -DCLANG_LINK_CLANG_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + -DCLANG_INCLUDE_TESTS=$(usex test) + + -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + + # these are not propagated reliably, so redefine them + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + + # libgomp support fails to find headers without explicit -I + # furthermore, it provides only syntax checking + -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp + + # disable using CUDA to autodetect GPU, just build for all + -DCMAKE_DISABLE_FIND_PACKAGE_CUDAToolkit=ON + # disable linking to HSA to avoid automagic dep, + # load it dynamically instead + -DCMAKE_DISABLE_FIND_PACKAGE_hsa-runtime64=ON + + -DCLANG_DEFAULT_PIE_ON_LINUX=$(usex pie) + + -DCLANG_ENABLE_LIBXML2=$(usex xml) + -DCLANG_ENABLE_ARCMT=$(usex static-analyzer) + -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) + # TODO: CLANG_ENABLE_HLSL? + + -DPython3_EXECUTABLE="${PYTHON}" + ) + + if ! use elibc_musl; then + mycmakeargs+=( + -DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=$(usex ieee-long-double) + ) + fi + + use test && mycmakeargs+=( + -DLLVM_BUILD_TESTS=ON + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + if multilib_is_native_abi; then + local build_docs=OFF + if llvm_are_manpages_built; then + build_docs=ON + mycmakeargs+=( + -DLLVM_BUILD_DOCS=ON + -DLLVM_ENABLE_SPHINX=ON + -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" + -DSPHINX_WARNINGS_AS_ERRORS=OFF + ) + if use extra; then + mycmakeargs+=( + -DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra" + ) + fi + fi + mycmakeargs+=( + -DCLANG_INCLUDE_DOCS=${build_docs} + ) + fi + if multilib_native_use extra; then + mycmakeargs+=( + -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs} + ) + else + mycmakeargs+=( + -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF + ) + fi + + if [[ -n ${EPREFIX} ]]; then + mycmakeargs+=( + -DGCC_INSTALL_PREFIX="${EPREFIX}/usr" + ) + fi + + if tc-is-cross-compiler; then + has_version -b sys-devel/clang:${LLVM_MAJOR} || + die "sys-devel/clang:${LLVM_MAJOR} is required on the build host." + local tools_bin=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin + mycmakeargs+=( + -DLLVM_TOOLS_BINARY_DIR="${tools_bin}" + -DCLANG_TABLEGEN="${tools_bin}"/clang-tblgen + ) + fi + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + cmake_build distribution +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + local test_targets=( check-clang ) + if multilib_native_use extra; then + test_targets+=( + check-clang-tools + check-clangd + ) + fi + cmake_build "${test_targets[@]}" +} + +src_install() { + MULTILIB_WRAPPED_HEADERS=( + /usr/include/clang/Config/config.h + ) + + multilib-minimal_src_install + + # Move runtime headers to /usr/lib/clang, where they belong + mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die + # move (remaining) wrapped headers back + if use extra; then + mv "${T}"/clang-tidy "${ED}"/usr/include/ || die + fi + mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die + + # Apply CHOST and version suffix to clang tools + local clang_tools=( clang clang++ clang-cl clang-cpp ) + local abi i + + # cmake gives us: + # - clang-X + # - clang -> clang-X + # - clang++, clang-cl, clang-cpp -> clang + # we want to have: + # - clang-X + # - clang++-X, clang-cl-X, clang-cpp-X -> clang-X + # - clang, clang++, clang-cl, clang-cpp -> clang*-X + # also in CHOST variant + for i in "${clang_tools[@]:1}"; do + rm "${ED}/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" || die + dosym "clang-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}-${LLVM_MAJOR}" + dosym "${i}-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" + done + + # now create target symlinks for all supported ABIs + for abi in $(get_all_abis); do + local abi_chost=$(get_abi_CHOST "${abi}") + for i in "${clang_tools[@]}"; do + dosym "${i}-${LLVM_MAJOR}" \ + "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}-${LLVM_MAJOR}" + dosym "${abi_chost}-${i}-${LLVM_MAJOR}" \ + "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}" + done + done +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution + + # move headers to /usr/include for wrapping & ABI mismatch checks + # (also drop the version suffix from runtime headers) + rm -rf "${ED}"/usr/include || die + mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die + mv "${ED}"/usr/lib/clang "${ED}"/usr/include/clangrt || die + if multilib_native_use extra; then + # don't wrap clang-tidy headers, the list is too long + # (they're fine for non-native ABI but enabling the targets is problematic) + mv "${ED}"/usr/include/clang-tidy "${T}/" || die + fi +} + +multilib_src_install_all() { + python_fix_shebang "${ED}" + if use static-analyzer; then + python_optimize "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/share/scan-view + fi + + docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" + llvm_install_manpages + # match 'html' non-compression + use doc && docompress -x "/usr/share/doc/${PF}/tools-extra" + # +x for some reason; TODO: investigate + use static-analyzer && fperms a-x "/usr/lib/llvm/${LLVM_MAJOR}/share/man/man1/scan-build.1" +} + +pkg_postinst() { + if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then + eselect compiler-shadow update all + fi + + elog "You can find additional utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/clang" + if use extra; then + elog "Some of them are vim integration scripts (with instructions inside)." + elog "The run-clang-tidy.py script requires the following additional package:" + elog " dev-python/pyyaml" + fi +} + +pkg_postrm() { + if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then + eselect compiler-shadow clean all + fi +} diff --git a/sys-devel/elftoolchain/Manifest b/sys-devel/elftoolchain/Manifest index ceab7c8dd58e..21217907a0ca 100644 --- a/sys-devel/elftoolchain/Manifest +++ b/sys-devel/elftoolchain/Manifest @@ -1,6 +1,6 @@ AUX elftoolchain-0.7.1-fno-common.patch 631 BLAKE2B 8808d37d9a0a92f224501d2e29ac05a19c836d65d0a5628da4c63f8324db126e86ba84d916869f21a01e8997512c4fa7578b68ce8e99f4eb9f4453b8e78ddf54 SHA512 3ae70a0c117dbb4531ff1e7449216dde63d7bc35412d308b295099c85634404ed577ffbb8392f39764a5a139fbb6ca790fd5bb27368c297d5e0b04e259b0b367 DIST elftoolchain-0.7.1.tar.bz2 5361427 BLAKE2B f86204b3c89433948eaf2cd2edc57abf9b77bfab777dc2a840b7aa5fbddfd31665bd27f31d7af2dea09fab0118e201b12802b4da85f8210af29094661f6f1fe5 SHA512 8226c468b393f0d567167a9dd6b16d2a226227e4d05dab8f44550038da44dcbfb92749f8e1a4b130b893675337a6771e24a81f350f3f864b1b8b17402ed23b26 DIST elftoolchain-0.7.1_p20210319.tar.gz 6767324 BLAKE2B c7e068577744fd42a44784e6a2b03ffdaa9dd15e41f4ff2a6d5fd80df24a61a950ff11fa63ebbbaf2c90bc1b19e58f7184a2b883a6f866adcbf0940ad9fca81c SHA512 968d3247e160dd6f90a88e69bf3cb8e6bf2b8216500a0a91699bc2b8d3de22db8f013212813139701e75c3a9eb852bb4c1360e8058f85959e0973e05e4851c8c -EBUILD elftoolchain-0.7.1-r2.ebuild 1284 BLAKE2B e20fcbfd53a48d009cf3765e90bb8a3f4cdfba6b6a3b67f377100d0c3a088893b396e848ae2b2b357d979c6ea0234ec8e70a2aa9626699daf18ca22ee7484d75 SHA512 eac78dfecf0a9e62eccfb654a40d2901b981ed8469feedf32b3f9e64a272f04420d0aef78632df347eef2533f61490bc0ad1bdda4e31212afa4ca982a772bb1f -EBUILD elftoolchain-0.7.1_p20210319.ebuild 1409 BLAKE2B 6efeedadf9fc5fd5f245393d748c36f10908e4a90fe9b2d0b9277519e6fedd0021ff4b0b030a7342cc3d889e7d6728f52ee9854856309fca3f4e1307a59f672a SHA512 b7da735d9aefb64ee22a7ea32e1bd88276efab9b2085720a5deb6200cbd28c52184153fab52aab9d1b615fba5d117fe232bc4ce0d793ddc7c767f24a2ef3ce91 +EBUILD elftoolchain-0.7.1-r2.ebuild 1284 BLAKE2B 0fe3ad82a8dd0cece9fa641841102958e80ab1400a93d61581604b34f1ee808c1fe19aa46ec7771550e0905f2177072ce2d343afa712091642d8fb3f8b88e603 SHA512 cab20a79a275085f14779700d1d9cd6bf0a767ebc264bb17709ec786e25b7ba050659804983e69978d3bc86f6df49abbc1bf0e410baeb23863db28f99da8616d +EBUILD elftoolchain-0.7.1_p20210319.ebuild 1409 BLAKE2B 70538d768eb3b3b9e7c7abcabf1445df1ef8a577cd05cb2676e83bff5ed1b9614449e08010fcc7fd3a7de58a13595fdb355ac53bfa444d3f9d8a972fc9f1d1d7 SHA512 9a3509aa9dc1bc73109591455ace6d4c7bdb80d9fc5e14841227c1e3c788559e8ab280c9349f33e99df3ceb0872fc8dc225cd2ebddf664cc07ec1905f87bcb3b MISC metadata.xml 330 BLAKE2B 4c32c69cf1b4c74599f43613d498b6504acc54bb672015e663d82300652a2ecc16d0fe4f47e561d148de0f6dab1f08812c55bcb3bb3bc2945ab046dab98ba777 SHA512 209d3c4c2901a72c76a2f2f43f69ee488ffe3c99fd45fd8c9342451248405ba7e618b31e5937ac326c509dd3680519e6a4ff582213136a40bc5b8170ea7c155d diff --git a/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild b/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild index 849d80e9c0e8..a237b0a27ce2 100644 --- a/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild +++ b/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -21,7 +21,7 @@ DEPEND="${RDEPEND}" BDEPEND=" dev-vcs/subversion sys-apps/lsb-release - >=sys-devel/bmake-20210314-r1 + >=dev-build/bmake-20210314-r1 app-alternatives/yacc" PATCHES=( "${FILESDIR}"/${P}-fno-common.patch ) diff --git a/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild b/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild index 8d13d4a22fac..02c757f53f3e 100644 --- a/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild +++ b/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -25,7 +25,7 @@ DEPEND="${RDEPEND}" BDEPEND=" dev-vcs/subversion sys-apps/lsb-release - >=sys-devel/bmake-20210314-r1 + >=dev-build/bmake-20210314-r1 app-alternatives/yacc" src_prepare() { diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index a250d790b719..7eaa23527506 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -18,6 +18,7 @@ DIST gcc-12-20231215.tar.xz 79804016 BLAKE2B 547def0a166db31d8654a8b85ec1320f0df DIST gcc-12-20231222.tar.xz 79814136 BLAKE2B b50d336adb38d4c45d4097cc8772246d75646e2a3731af65c0b58eb1289508c4e08227eed15b6b1e88843b94933fd241388e5c634ecaa0cf432fc3d4fc71e618 SHA512 78886eb891ed89d9047e12222d7211e4c4e184554c8ce71274314f42afd2c573b8e4a512dab4d013aa26332e02cd1bf90b56607a0437a912d6e0bc2a096ea52f DIST gcc-12-20231229.tar.xz 79826324 BLAKE2B c55f8c8211a2ee6ce25a03348509bc32d46a33398ed8d99f0ca4d0c35e7fdf6280315ab99055dbb4f18c7d1ddf54a60692a830c7179462b143e4e1c4f40569ef SHA512 40587c4f2094d7a6e9fd39249aceada619398c67a3e4160c623b0ffcf84aed1d1d709808c63f18fb9c97a283cad30550c259f4859f6c9e6b7659236fdfb90447 DIST gcc-12-20240105.tar.xz 79823352 BLAKE2B 72d6e4938a89841866b5eac8ca308c8de3daa558cce79661368d9fb58209a414a105ed3ca3ba71fe6e6cd5eefbbed85eefe3b43fdfc5c0a8318de2507c07b5f1 SHA512 7ded739ef16163b1c504bcb63dea0673647da31518d28e5197047e3c56613089007673fd688891080b48f4e455e3cd19519573e24b5803403a4ba8a2e3c5d8ca +DIST gcc-12-20240112.tar.xz 79832228 BLAKE2B deec7123b8ffc42ddace51e1f3e8e08d5485f7000c0d4b7273b6311912ec0e7e2cb41124297af8c54456bb369a76fa2ef51aff552d8d680ec41dd2b144b08e55 SHA512 2c0a676ad35e6edee915c042a1751ac0263fae9b7af4d324deb49d6603dc73d3ec768832184879543e6ffb1595da5c56d9117288547adab7f243646dcbfc64ac DIST gcc-12.3.0-musl-patches-1.tar.xz 3572 BLAKE2B c7bf65f7c9ea8023ddaac821ee2b778622fa310ac72a72b2f7032494a8f304eac86217f9204622e6c21aaef9952bece0d09bc126facd4f42b602927909815ab5 SHA512 babc279fea2c1fd4c018815f2f5630214fd46015ce9f365c28af242681d51818eaca30ce298eddcab1eed5ac5f2759e2b47b2335afab9d722b4469a6d4fec326 DIST gcc-12.3.0-patches-2.tar.xz 14236 BLAKE2B 06c43662c9abb0fa3cf90d5e2273c69aecb9158e6cf6f23c04754ed5d686be2616e81e2502eb16f4298ddd50518ca7677e13249da9e9b091162d3931ff65e4fe SHA512 b0d4b85dbf1a54aaaa1997203b872e3106906b4ad49cde57e1428bc22b2f8e2d73b8cb10ae0d0b792aebaf664594da4d1dea04c44ddc34e59047410766db04d1 DIST gcc-13-20230826.tar.xz 84285788 BLAKE2B c25be594e322dd7145245c42ae21b98aa9e3e6ae69f1fa313830e40bf2e8fcb8435762f1c9d3f1ca1dbf31653bdc76a658bec708b7850fe40a7c55504ac30618 SHA512 3d47632e90651bd50a881c727c1ef2aa3322b4fc3e082919ae430270901abf8a05a34fe93f8b678c10dc9a0758f93dc3b33ed5947c8743dab453d2b50c063722 @@ -54,6 +55,7 @@ EBUILD gcc-12.3.1_p20231215.ebuild 1620 BLAKE2B 3866983ddc8c6811e00c12af0051e80b EBUILD gcc-12.3.1_p20231222.ebuild 1621 BLAKE2B 830b5c20e6bda5a28297bfbfd92a9cc74b5f371fe22eb06913c3dbcbe0d794b198dff9cda6f35bb7b34821ae0601afbe66a01e4c3686e9ba1a5cc049d9cf7868 SHA512 7144d0759578fb3db8ff377f2224e551e6fe5e669660baa712b5fa90e4e2875ac3e37f62ee66b0f1664b0f3d29b8d0acf144e7f52ef26bc23638d04770bd772b EBUILD gcc-12.3.1_p20231229.ebuild 1621 BLAKE2B 830b5c20e6bda5a28297bfbfd92a9cc74b5f371fe22eb06913c3dbcbe0d794b198dff9cda6f35bb7b34821ae0601afbe66a01e4c3686e9ba1a5cc049d9cf7868 SHA512 7144d0759578fb3db8ff377f2224e551e6fe5e669660baa712b5fa90e4e2875ac3e37f62ee66b0f1664b0f3d29b8d0acf144e7f52ef26bc23638d04770bd772b EBUILD gcc-12.3.1_p20240105.ebuild 1621 BLAKE2B 82b53aee125278a6d0e1d4073825d2cc148e155ff2df0048b94799d851e3bf50e0f42b53fabfc9ba3922c32e4d1cb15a097b7a9d06a06cebc41c3a3b9b6e7560 SHA512 b802a99f2e021b15aae8d59930baec00dd2262ea789dc77ec809a3fd586a96a7c5b811fed4e3d3487b70e218636f252898b8138d048eeb0be4693f39193d3fe9 +EBUILD gcc-12.3.1_p20240112.ebuild 1621 BLAKE2B 82b53aee125278a6d0e1d4073825d2cc148e155ff2df0048b94799d851e3bf50e0f42b53fabfc9ba3922c32e4d1cb15a097b7a9d06a06cebc41c3a3b9b6e7560 SHA512 b802a99f2e021b15aae8d59930baec00dd2262ea789dc77ec809a3fd586a96a7c5b811fed4e3d3487b70e218636f252898b8138d048eeb0be4693f39193d3fe9 EBUILD gcc-12.4.9999.ebuild 1589 BLAKE2B 8de913409a3303b99e08e719751855382983fc3208de45a45e9f42d334c3f5b2b387b910791af804cae0c646c139d735235802bad96b4b84fe54f3cafd46cfec SHA512 fc445103363a11b7628e3f46ad8dc4b4c8e1f942dfd25078b41638779f7e4580fb9acff78812fb1039e5410e6dbdbaeea71b99f2d52ce3c4f04ec30dbf72ef7c EBUILD gcc-13.2.1_p20230826.ebuild 1672 BLAKE2B ddcf137ec925acd9450d0fb920bee8984b62c77517a4801786205a56632dff5ec987c511208779a6578304b1dc83c11ade6bd36dde9246d897dd4e9f8be8581d SHA512 494cf07c899941c6a612eb0dbfa5e2f4d52696f6e2d644b07ac3c49df9eafb4cf03fa78808385342a0aa02aba80676b33d9d14311898eee85bfbfbd919dc37fb EBUILD gcc-13.2.1_p20231216.ebuild 1680 BLAKE2B dd776c332de13307fefdd9ce3115e30e265d424841d014bb9b1ac85cea2f4d3ed7dc91905a93a9d257114a55010e2b325b52c1b422a97c7e24b13c9e3d72805b SHA512 6c581f635e072fc097844fba70c441ab8f57d801cc0d2d70b533b014410f0f573418ad62ec2ba4c70a82b805e8a316a498e68cabe6929898351be7236f37f18c diff --git a/sys-devel/gcc/gcc-12.3.1_p20240112.ebuild b/sys-devel/gcc/gcc-12.3.1_p20240112.ebuild new file mode 100644 index 000000000000..69767162475c --- /dev/null +++ b/sys-devel/gcc/gcc-12.3.1_p20240112.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="12.3.0" +PATCH_VER="2" +MUSL_VER="1" +MUSL_GCC_VER="12.3.0" + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/libtool/Manifest b/sys-devel/libtool/Manifest index 9b3da1f47b5c..88b33e46473b 100644 --- a/sys-devel/libtool/Manifest +++ b/sys-devel/libtool/Manifest @@ -9,6 +9,6 @@ AUX libtool-2.4.7-grep-3.8.patch 1282 BLAKE2B b64b6eab6bed4b5595ef228c9d3bc65a8b AUX libtool-2.4.7-werror-lto.patch 2248 BLAKE2B 3537c599ee310fda695b1a671770e1d2c5a943e763641515738e8d13907b807b92727182a34af4c20598c3ad228a2b660f10fd582c2f65d1fdef11b92f5fc68a SHA512 b16f835fbec1ecf6c8408c0705fc94886f35443394298e9ae1d1893dbf7dbad11325b636ccc9d0ddeecc00a13a7b5ae78867dd1369b0fc2fcd9276808f326146 DIST libtool-2.4.7.tar.xz 1016040 BLAKE2B 5e022586337637dd634bd40578ad944bec6e3b8de41f95d55777b90cc88cbc4badb3d76cbf0e638166ece1ea7de828e83590e1e6bac30c1e4b1c254a11a742f2 SHA512 47f4c6de40927254ff9ba452612c0702aea6f4edc7e797f0966c8c6bf0340d533598976cdba17f0bdc64545572e71cd319bbb587aa5f47cd2e7c1d96f873a3da EBUILD libtool-2.4.7-r1.ebuild 3328 BLAKE2B 3ee8c1f44bc8d9ab04a65e7653459bfe8660013f504b01c097966e966e6274ce9fdd72664142803aee456a66e75e1eb373a17d5f0f727ccb9b522ae45f3152fc SHA512 72a6891c77b3c84173ad0dccc2a2826ae500e275c8c6fcb2eb2e8c2c553890f96cff6a69a30db1e5493a9e54d1c06c31c7873965e4eb7cab6c1e79476064b078 -EBUILD libtool-2.4.7-r2.ebuild 3310 BLAKE2B 13c66147ee4e1b88bbef84033b7650dd2da583e63db0bfd9f5bac79f43f56e6c3e17579dfc0710801be368e141f53563eadddbcebbb82c8eb04aba7fb0ec6bb3 SHA512 5eb8d74af9a0935e4b910292a6384bc5244168d35c031c7c41e6881f5743b2f73817081e95ca52310e2d6de06adcfafdb85493a89ae6d0e7dfad36c415cf2de4 -EBUILD libtool-9999.ebuild 3266 BLAKE2B d05da6e4f8ba6a6719f9db2eeb5efe24998415f778698467d1bfee46ef8c21735150e0eca8d340db6a787fa341728c7b0db456df0dfb3333f1666ebcfd012739 SHA512 469dca6ab3b94723310586e03d59556bb7838e9861afb00874d83fa40996a7541148e4f62702dd987201d23f99cd2b29a76b896898bc86241932e3af0a30aba0 +EBUILD libtool-2.4.7-r2.ebuild 3526 BLAKE2B cc30cd66a1b34676dd3216a85b0cf7abe34263e0609b8273d2df40e69643e166a3afb048fde89aeb0e9d4225044a5a425522a78bb698c7786ae5b51a17e3c283 SHA512 984d99830ec9e9cb65fd3fd7b3ebc50a4b3c526859a10db63f4bb2474cf7077c6f1519ed5fc888d7ee88c5f2dec7a7260e6c5460c894a1f0a5c0f49ea42ad707 +EBUILD libtool-9999.ebuild 3482 BLAKE2B 89e3fbe12ad32cb780dbc161e23b2338c402815a5e2dfc184d1b46b9e24f8ed1d2c59d4a08d43473242b59fb4124408093474287c5ae6ae9a2897404a0e831f6 SHA512 3069ece08bf5e1657433eb9c9375fbab8eb8fa60e5f22bc96b82559597fef052d4fd0d3e1f57caa3c8c37471224c5fafdb8bf31d8483244b2fed7e25149c3d29 MISC metadata.xml 331 BLAKE2B 4a4cfaad20b2f1c22b0b5ab23b4557e1bef50dbc49d0b7d821d4099e06bf488fdc6c7cb4a29431910d0e1b8cfb7c8b565cd3296afb30925a08389e023c777150 SHA512 9ca8e937181de31beb06558475dc8c10e61765d5280a882576a2d1e4e87fb750bc1c2e99aafdfffe343343797e0565814c0a5f8c18c7fba5b7fe9275100f2609 diff --git a/sys-devel/libtool/libtool-2.4.7-r2.ebuild b/sys-devel/libtool/libtool-2.4.7-r2.ebuild index 2bf9e471c863..a2ec01d3671b 100644 --- a/sys-devel/libtool/libtool-2.4.7-r2.ebuild +++ b/sys-devel/libtool/libtool-2.4.7-r2.ebuild @@ -34,6 +34,9 @@ RDEPEND=" DEPEND="${RDEPEND}" [[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man" +# Note that we have more patches in https://gitweb.gentoo.org/proj/elt-patches.git/ +# for package builds. The patches here are just those which are definitely fine +# for the system-wide libtool installation as well. PATCHES=( # bug #109105 "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch diff --git a/sys-devel/libtool/libtool-9999.ebuild b/sys-devel/libtool/libtool-9999.ebuild index ae63801bea83..131575326378 100644 --- a/sys-devel/libtool/libtool-9999.ebuild +++ b/sys-devel/libtool/libtool-9999.ebuild @@ -34,6 +34,9 @@ RDEPEND=" DEPEND="${RDEPEND}" [[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man" +# Note that we have more patches in https://gitweb.gentoo.org/proj/elt-patches.git/ +# for package builds. The patches here are just those which are definitely fine +# for the system-wide libtool installation as well. PATCHES=( # bug #109105 "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest index c749e1f8ac5d..f5db5d00c812 100644 --- a/sys-devel/lld/Manifest +++ b/sys-devel/lld/Manifest @@ -5,10 +5,12 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659 DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447 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-8d817f6479a5df874028a8b40fd30aecd3479005.tar.gz 204890108 BLAKE2B 8c57c556371b37d00cda753a40f1162e678d89fa40e8f2b90a38aab7e17f9debfb2ebad53a3a95aa530a9e3e2b4b735828e404e576c8f2738370ec41c28badce SHA512 a38ce082ca1b999888ee0a633b94a02258579591e6ce73ba4722eafb9f0610f9624887eca43e4a6ae567c07ffc014f4ea4137e905899407951265d7c93785f18 DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d EBUILD lld-15.0.7.ebuild 2269 BLAKE2B 322d5608e3acfb87bfb720646404ed405a3113c4faf1059428663a50d5566d7842fcff57ccf3aeb5e97b1a9acd4efd862db2368f130e088944ef4f0faf3c90f8 SHA512 e50d1d99fe18b6aba57c06eb6853f3212be1f7b7f2f3c70dcd226a69a4defc753eafcce77eb74f30eaa31b010fa094738718c1cdb23e584ef6e33eb72e536719 EBUILD lld-16.0.6.ebuild 2311 BLAKE2B 885625644518720a9a7da6e0bbc360ebc8c2ebee67fc85f68a8e4e5abcbb8d34b1d13f357f8d805a1bfe3b2cc6bb528d8bc0d9c67b5c0f6271953f95a012048d SHA512 e627839f5f5c0fbb245cecdc82c184c832a38da3897f9a8d4d218ce19a873ecb993effd7ac97554e3f3c696de0c458d571763f558d407fba40c3bf170f90b4e4 EBUILD lld-17.0.6.ebuild 2256 BLAKE2B 91f428860683ae8f4b167baa1917a02a7cf8c6995c73c1e6c805fc16da3e4476f9f36e9a44cf73bb8bd4b36b6946fbf4653eb17363536ff129496cc2d8c73200 SHA512 cf6e0433138e2a00437a739c9cbd5ac7f3c0104255538811e3cd1f87e0a2bf115f6db7f94febbd01db3d5dd0bca826e31e656755eae99d24c7332f27d472d170 EBUILD lld-18.0.0.9999.ebuild 2199 BLAKE2B ce9162e5de2ab6d0ffa94f5132f996d3b7f45d46937fe6a6d86a9b4cafc1435f27309853e7e00be2938ba8bc4e24a99eafc4a6fa11c9d2f49e6b3b2c3cbfd960 SHA512 e81ca64ee28290e35be514d4b3b1767f5efb21a26812a97291b865407fa7953c27a66145a9b0f6036b09353e6b5ee48c5a682580eaa093b36af28103749ec98c EBUILD lld-18.0.0_pre20240106.ebuild 2199 BLAKE2B ce9162e5de2ab6d0ffa94f5132f996d3b7f45d46937fe6a6d86a9b4cafc1435f27309853e7e00be2938ba8bc4e24a99eafc4a6fa11c9d2f49e6b3b2c3cbfd960 SHA512 e81ca64ee28290e35be514d4b3b1767f5efb21a26812a97291b865407fa7953c27a66145a9b0f6036b09353e6b5ee48c5a682580eaa093b36af28103749ec98c +EBUILD lld-18.0.0_pre20240113.ebuild 2199 BLAKE2B ce9162e5de2ab6d0ffa94f5132f996d3b7f45d46937fe6a6d86a9b4cafc1435f27309853e7e00be2938ba8bc4e24a99eafc4a6fa11c9d2f49e6b3b2c3cbfd960 SHA512 e81ca64ee28290e35be514d4b3b1767f5efb21a26812a97291b865407fa7953c27a66145a9b0f6036b09353e6b5ee48c5a682580eaa093b36af28103749ec98c MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685 diff --git a/sys-devel/lld/lld-18.0.0_pre20240113.ebuild b/sys-devel/lld/lld-18.0.0_pre20240113.ebuild new file mode 100644 index 000000000000..e72385c1bdb1 --- /dev/null +++ b/sys-devel/lld/lld-18.0.0_pre20240113.ebuild @@ -0,0 +1,89 @@ +# 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 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=" + ~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() { + LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_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" + + 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 +} diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest index 504b2e433259..850fb4fb67ab 100644 --- a/sys-devel/llvm-common/Manifest +++ b/sys-devel/llvm-common/Manifest @@ -4,10 +4,12 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659 DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447 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-8d817f6479a5df874028a8b40fd30aecd3479005.tar.gz 204890108 BLAKE2B 8c57c556371b37d00cda753a40f1162e678d89fa40e8f2b90a38aab7e17f9debfb2ebad53a3a95aa530a9e3e2b4b735828e404e576c8f2738370ec41c28badce SHA512 a38ce082ca1b999888ee0a633b94a02258579591e6ce73ba4722eafb9f0610f9624887eca43e4a6ae567c07ffc014f4ea4137e905899407951265d7c93785f18 DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d EBUILD llvm-common-15.0.7.ebuild 1014 BLAKE2B da3b7ec6cd3c1e57758312fb9ea25e693305e1ef72b350eea85fbde5a1e636269d84bd491b6f528aee8a9cb8229f6304b371f99e6ac416c661c6519706b83b61 SHA512 68b9d672372fe71e39f2b8f9d80eb1dcb5138b8b9b961f56a4eeb81b3fc4054448a51a46b3a62547ebb6262425512f39bc146e5f2c3703de10ab520f1594e7a4 EBUILD llvm-common-16.0.6.ebuild 1021 BLAKE2B 635a5e329ec238346e1bfe715ed088484a33f517a294dd86f822dbc7d225a296f61d72b73be28767c6629516c6237cf1b377320a38c2092796e6d292ece12977 SHA512 64df7235d2bbf73792c6169931b3f5cb90feac9012590bb391b3d2aed67fbe518d08f46fffaf706f478e528b5837178f2e440557b906d6cce832ecaea021dbba EBUILD llvm-common-17.0.6.ebuild 1025 BLAKE2B 2ece22c5c11edd0940c09813bc1b4103a3c37ed307e8a701871b895fb56475ba6467423dd24de9e199dd4ac353f16d3784f91bf7f625e1e1e73fbd61250a5b46 SHA512 e53bad74228412093f193acc5b9cabd740f77810de75d750149ac1df0aca6b6461035f52d6bb50245f7a695d33ff82ebf050fed50acf9090774e66dfcd7ce1a7 EBUILD llvm-common-18.0.0.9999.ebuild 925 BLAKE2B 6c17c6fa9b0e8713243f77a3ac6079e7bcbcd0cadef14b22a856944e0515a9722d1b843cbcb784c11dd76b4c882c30737932be700bb71389753761e455823a9f SHA512 2a476421a4c6acc172de2016fd96f3c90c0277565ccb84dad5e61f233c947ad9545acb5ac6aef7b139dce9004b70bba10a0a5eb482641a30d6a2ddc6adc74415 EBUILD llvm-common-18.0.0_pre20240106.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d +EBUILD llvm-common-18.0.0_pre20240113.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685 diff --git a/sys-devel/llvm-common/llvm-common-18.0.0_pre20240113.ebuild b/sys-devel/llvm-common/llvm-common-18.0.0_pre20240113.ebuild new file mode 100644 index 000000000000..2d8f35a84179 --- /dev/null +++ b/sys-devel/llvm-common/llvm-common-18.0.0_pre20240113.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit elisp-common llvm.org + +DESCRIPTION="Common files shared between multiple slots of LLVM" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +IUSE="emacs" + +RDEPEND=" + !sys-devel/llvm:0 +" +BDEPEND=" + emacs? ( >=app-editors/emacs-23.1:* ) +" + +LLVM_COMPONENTS=( llvm/utils ) +llvm.org_set_globals + +SITEFILE="50llvm-gentoo.el" +BYTECOMPFLAGS="-L emacs" + +src_compile() { + default + + use emacs && elisp-compile emacs/*.el +} + +src_install() { + insinto /usr/share/vim/vimfiles + doins -r vim/*/ + # some users may find it useful + newdoc vim/README README.vim + dodoc vim/vimrc + + if use emacs ; then + elisp-install llvm emacs/*.{el,elc} + elisp-make-site-file "${SITEFILE}" llvm + fi +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest index 393fbd24fbf3..280f336ac42a 100644 --- a/sys-devel/llvm/Manifest +++ b/sys-devel/llvm/Manifest @@ -10,10 +10,12 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659 DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447 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-8d817f6479a5df874028a8b40fd30aecd3479005.tar.gz 204890108 BLAKE2B 8c57c556371b37d00cda753a40f1162e678d89fa40e8f2b90a38aab7e17f9debfb2ebad53a3a95aa530a9e3e2b4b735828e404e576c8f2738370ec41c28badce SHA512 a38ce082ca1b999888ee0a633b94a02258579591e6ce73ba4722eafb9f0610f9624887eca43e4a6ae567c07ffc014f4ea4137e905899407951265d7c93785f18 DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d EBUILD llvm-15.0.7-r3.ebuild 12507 BLAKE2B 61b25e81c868610f71c7c6c90150121bf00e65132a9de5c9a135b0aac7f0946dd342b7e98cc65e1f87717560a0fdbbe402f0ca9b2923af981aab595455d52380 SHA512 f3ee878de78c4c8b850eaed51aea03436c3263f7f6321b7ed4aea1928b81978f5f8897221330582f06d3742b5e715696368793205435a893822799c614d6de2a EBUILD llvm-16.0.6.ebuild 12832 BLAKE2B c52a80dda141c3391e206e65851c8643afba59ba35b74cb4254de69330416d7366732618854fd4990ecff5ea948ba7eb4cc1368c671114ba18eb4dd32fcf881a SHA512 aeed6cb30195b435d2130322de16ce56036abc4e509f95a58637e7771a287718837862625b9849cf43adc06676c1c88d6668010f4896c4e1a760c0ac1a87f97b EBUILD llvm-17.0.6.ebuild 13117 BLAKE2B 48f5b7b80d0610110c743f8b404eaa0f9a059bde4dc542e4e66e72b61a302c8e5b775686b082742aaa8298509130828a45dc9109347c5e03cb782257b67fd8cb SHA512 0af244a8abc34ab950c5ff1dba1bc36b6f16d6fdaea4089bfac57c076d0e1e85b5621eaeca9f8226b28b39237e6c415ff610a9dc9f129f3847f1883ffefa1df8 EBUILD llvm-18.0.0.9999.ebuild 12854 BLAKE2B f41244f8df56293b629bc40ce5cd1e2a9b709c935ca14871e4e76898df8ff3d3df94199e379d98fe57e13d324086e55e95fdc1a3a663241c67f143e0a81953bf SHA512 0232eda261b4f607e59afb870b151b256b64742d369cf1b26eb641e3ce499435b3541c9eb418f8bcca847aedd03d4ecff0b58f0f6b0fcb2106f86d190a40194b EBUILD llvm-18.0.0_pre20240106.ebuild 12854 BLAKE2B f41244f8df56293b629bc40ce5cd1e2a9b709c935ca14871e4e76898df8ff3d3df94199e379d98fe57e13d324086e55e95fdc1a3a663241c67f143e0a81953bf SHA512 0232eda261b4f607e59afb870b151b256b64742d369cf1b26eb641e3ce499435b3541c9eb418f8bcca847aedd03d4ecff0b58f0f6b0fcb2106f86d190a40194b +EBUILD llvm-18.0.0_pre20240113.ebuild 12854 BLAKE2B f41244f8df56293b629bc40ce5cd1e2a9b709c935ca14871e4e76898df8ff3d3df94199e379d98fe57e13d324086e55e95fdc1a3a663241c67f143e0a81953bf SHA512 0232eda261b4f607e59afb870b151b256b64742d369cf1b26eb641e3ce499435b3541c9eb418f8bcca847aedd03d4ecff0b58f0f6b0fcb2106f86d190a40194b MISC metadata.xml 2835 BLAKE2B 07816d714509d62c0e0a443cc4af1f1f049497de75431f80a981f662b4f2281a16655be3e733a26099d0d814d5ce26d80cee13aa7a4e8d079168846a8e02670f SHA512 292ccb0a05a0239b5b00c6a84be11b4b385900d6467a6a139af03588c61aff9ac0e4bbcd23e89b2a7d7947f7d8cf8ba9323f2539a6c563a338b73f5ac6ffd00f diff --git a/sys-devel/llvm/llvm-18.0.0_pre20240113.ebuild b/sys-devel/llvm/llvm-18.0.0_pre20240113.ebuild new file mode 100644 index 000000000000..9c1e247877cc --- /dev/null +++ b/sys-devel/llvm/llvm-18.0.0_pre20240113.ebuild @@ -0,0 +1,535 @@ +# 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 llvm.org multilib-minimal pax-utils python-any-r1 +inherit toolchain-funcs + +DESCRIPTION="Low Level Virtual Machine" +HOMEPAGE="https://llvm.org/" + +# Additional licenses: +# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. +# 2. xxhash: BSD. +# 3. MD5 code: public-domain. +# 4. ConvertUTF.h: TODO. + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +IUSE=" + +binutils-plugin +debug debuginfod doc exegesis libedit +libffi + ncurses test xml z3 zstd +" +RESTRICT="!test? ( test )" + +RDEPEND=" + sys-libs/zlib:0=[${MULTILIB_USEDEP}] + debuginfod? ( + net-misc/curl:= + dev-cpp/cpp-httplib:= + ) + exegesis? ( dev-libs/libpfm:= ) + libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) + libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) + ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) + z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + binutils-plugin? ( sys-libs/binutils-libs ) +" +BDEPEND=" + ${PYTHON_DEPS} + dev-lang/perl + sys-devel/gnuconfig + kernel_Darwin? ( + <sys-libs/libcxx-${LLVM_VERSION}.9999 + >=sys-devel/binutils-apple-5.1 + ) + doc? ( $(python_gen_any_dep ' + dev-python/myst-parser[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + ') ) + libffi? ( virtual/pkgconfig ) +" +# There are no file collisions between these versions but having :0 +# installed means llvm-config there will take precedence. +RDEPEND=" + ${RDEPEND} + !sys-devel/llvm:0 +" +PDEPEND=" + sys-devel/llvm-common + sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR} + binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} ) +" + +LLVM_COMPONENTS=( llvm cmake third-party ) +LLVM_MANPAGES=1 +LLVM_USE_TARGETS=provide +llvm.org_set_globals + +python_check_deps() { + use doc || return 0 + + python_has_version -b "dev-python/myst-parser[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" +} + +check_uptodate() { + local prod_targets=( + $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \ + | tail -n +2 | head -n -1) + ) + local all_targets=( + lib/Target/*/ + ) + all_targets=( "${all_targets[@]#lib/Target/}" ) + all_targets=( "${all_targets[@]%/}" ) + + local exp_targets=() i + for i in "${all_targets[@]}"; do + has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" ) + done + + if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then + eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!" + eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}" + eqawarn "Expected: ${exp_targets[*]}" + eqawarn + fi + + if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then + eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!" + eqawarn " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}" + eqawarn "Expected: ${prod_targets[*]}" + fi +} + +check_distribution_components() { + if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then + local all_targets=() my_targets=() l + cd "${BUILD_DIR}" || die + + while read -r l; do + if [[ ${l} == install-*-stripped:* ]]; then + l=${l#install-} + l=${l%%-stripped*} + + case ${l} in + # shared libs + LLVM|LLVMgold) + ;; + # TableGen lib + deps + LLVMDemangle|LLVMSupport|LLVMTableGen) + ;; + # testing libraries + LLVMTestingAnnotations|LLVMTestingSupport) + ;; + # static libs + LLVM*) + continue + ;; + # meta-targets + distribution|llvm-libraries) + continue + ;; + # used only w/ USE=doc + docs-llvm-html) + use doc || continue + ;; + esac + + all_targets+=( "${l}" ) + fi + done < <(${NINJA} -t targets all) + + while read -r l; do + my_targets+=( "${l}" ) + done < <(get_distribution_components $"\n") + + local add=() remove=() + for l in "${all_targets[@]}"; do + if ! has "${l}" "${my_targets[@]}"; then + add+=( "${l}" ) + fi + done + for l in "${my_targets[@]}"; do + if ! has "${l}" "${all_targets[@]}"; then + remove+=( "${l}" ) + fi + done + + if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then + eqawarn "get_distribution_components() is outdated!" + eqawarn " Add: ${add[*]}" + eqawarn "Remove: ${remove[*]}" + fi + cd - >/dev/null || die + fi +} + +src_prepare() { + # disable use of SDK on OSX, bug #568758 + sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die + + # Update config.guess to support more systems + cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die + + # Verify that the ebuild is up-to-date + check_uptodate + + llvm.org_src_prepare +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # shared libs + LLVM + LTO + Remarks + + # tools + llvm-config + + # common stuff + cmake-exports + llvm-headers + + # libraries needed for clang-tblgen + LLVMDemangle + LLVMSupport + LLVMTableGen + + # testing libraries + llvm_gtest + llvm_gtest_main + LLVMTestingAnnotations + LLVMTestingSupport + ) + + if multilib_is_native_abi; then + out+=( + # utilities + llvm-tblgen + FileCheck + llvm-PerfectShuffle + count + not + yaml-bench + UnicodeNameMappingGenerator + + # tools + bugpoint + dsymutil + llc + lli + lli-child-target + llvm-addr2line + llvm-ar + llvm-as + llvm-bcanalyzer + llvm-bitcode-strip + llvm-c-test + llvm-cat + llvm-cfi-verify + llvm-config + llvm-cov + llvm-cvtres + llvm-cxxdump + llvm-cxxfilt + llvm-cxxmap + llvm-debuginfo-analyzer + llvm-debuginfod-find + llvm-diff + llvm-dis + llvm-dlltool + llvm-dwarfdump + llvm-dwarfutil + llvm-dwp + llvm-exegesis + llvm-extract + llvm-gsymutil + llvm-ifs + llvm-install-name-tool + llvm-jitlink + llvm-jitlink-executor + llvm-lib + llvm-libtool-darwin + llvm-link + llvm-lipo + llvm-lto + llvm-lto2 + llvm-mc + llvm-mca + llvm-ml + llvm-modextract + llvm-mt + llvm-nm + llvm-objcopy + llvm-objdump + llvm-opt-report + llvm-otool + llvm-pdbutil + llvm-profdata + llvm-profgen + llvm-ranlib + llvm-rc + llvm-readelf + llvm-readobj + llvm-readtapi + llvm-reduce + llvm-remarkutil + llvm-rtdyld + llvm-sim + llvm-size + llvm-split + llvm-stress + llvm-strings + llvm-strip + llvm-symbolizer + llvm-tli-checker + llvm-undname + llvm-windres + llvm-xray + obj2yaml + opt + sancov + sanstats + split-file + verify-uselistorder + yaml2obj + + # python modules + opt-viewer + ) + + if llvm_are_manpages_built; then + out+=( + # manpages + docs-dsymutil-man + docs-llvm-dwarfdump-man + docs-llvm-man + ) + fi + use doc && out+=( + docs-llvm-html + ) + + use binutils-plugin && out+=( + LLVMgold + ) + use debuginfod && out+=( + llvm-debuginfod + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +multilib_src_configure() { + local ffi_cflags ffi_ldflags + if use libffi; then + ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) + ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) + fi + + local libdir=$(get_libdir) + local mycmakeargs=( + # disable appending VCS revision to the version to improve + # direct cache hit ratio + -DLLVM_APPEND_VC_REV=OFF + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + + -DBUILD_SHARED_LIBS=OFF + -DLLVM_BUILD_LLVM_DYLIB=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + + # cheap hack: LLVM combines both anyway, and the only difference + # is that the former list is explicitly verified at cmake time + -DLLVM_TARGETS_TO_BUILD="" + -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + -DLLVM_INCLUDE_BENCHMARKS=OFF + -DLLVM_INCLUDE_TESTS=ON + -DLLVM_BUILD_TESTS=$(usex test) + -DLLVM_INSTALL_GTEST=ON + + -DLLVM_ENABLE_FFI=$(usex libffi) + -DLLVM_ENABLE_LIBEDIT=$(usex libedit) + -DLLVM_ENABLE_TERMINFO=$(usex ncurses) + -DLLVM_ENABLE_LIBXML2=$(usex xml) + -DLLVM_ENABLE_ASSERTIONS=$(usex debug) + -DLLVM_ENABLE_LIBPFM=$(usex exegesis) + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) + -DLLVM_ENABLE_ZLIB=FORCE_ON + -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) + -DLLVM_ENABLE_CURL=$(usex debuginfod) + -DLLVM_ENABLE_HTTPLIB=$(usex debuginfod) + + -DLLVM_HOST_TRIPLE="${CHOST}" + + -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" + -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" + + -DPython3_EXECUTABLE="${PYTHON}" + + # disable OCaml bindings (now in dev-ml/llvm-ocaml) + -DOCAMLFIND=NO + ) + + local suffix= + if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then + # the ABI of the main branch is not stable, so let's include + # the commit id in the SOVERSION to contain the breakage + suffix+="git${EGIT_VERSION::8}" + fi + if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then + # Smart hack: alter version suffix -> SOVERSION when linking + # against libc++. This way we won't end up mixing LLVM libc++ + # libraries with libstdc++ clang, and the other way around. + suffix+="+libcxx" + mycmakeargs+=( + -DLLVM_ENABLE_LIBCXX=ON + ) + fi + mycmakeargs+=( + -DLLVM_VERSION_SUFFIX="${suffix}" + ) + + use test && mycmakeargs+=( + -DLLVM_LIT_ARGS="$(get_lit_flags)" + ) + + if multilib_is_native_abi; then + local build_docs=OFF + if llvm_are_manpages_built; then + build_docs=ON + mycmakeargs+=( + -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" + -DSPHINX_WARNINGS_AS_ERRORS=OFF + ) + fi + + mycmakeargs+=( + -DLLVM_BUILD_DOCS=${build_docs} + -DLLVM_ENABLE_OCAMLDOC=OFF + -DLLVM_ENABLE_SPHINX=${build_docs} + -DLLVM_ENABLE_DOXYGEN=OFF + -DLLVM_INSTALL_UTILS=ON + ) + use binutils-plugin && mycmakeargs+=( + -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include + ) + fi + + # On Macos prefix, Gentoo doesn't split sys-libs/ncurses to libtinfo and + # libncurses, but llvm tries to use libtinfo before libncurses, and ends up + # using libtinfo (actually, libncurses.dylib) from system instead of prefix + use kernel_Darwin && mycmakeargs+=( + -DTerminfo_LIBRARIES=-lncurses + ) + + # workaround BMI bug in gcc-7 (fixed in 7.4) + # https://bugs.gentoo.org/649880 + # apply only to x86, https://bugs.gentoo.org/650506 + if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] && + [[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]] + then + local CFLAGS="${CFLAGS} -mno-bmi" + local CXXFLAGS="${CXXFLAGS} -mno-bmi" + fi + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \ + CMakeCache.txt || + die "Incorrect version, did you update _LLVM_MAIN_MAJOR?" + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + tc-env_build cmake_build distribution + + pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld + pax-mark m "${BUILD_DIR}"/bin/lli + pax-mark m "${BUILD_DIR}"/bin/lli-child-target + + if use test; then + pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests + pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests + pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests + fi +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + cmake_build check +} + +src_install() { + local MULTILIB_CHOST_TOOLS=( + /usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config + ) + + local MULTILIB_WRAPPED_HEADERS=( + /usr/include/llvm/Config/llvm-config.h + ) + + local LLVM_LDPATHS=() + multilib-minimal_src_install + + # move wrapped headers back + mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution + + # move headers to /usr/include for wrapping + rm -rf "${ED}"/usr/include || die + mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die + + LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" ) +} + +multilib_src_install_all() { + local revord=$(( 9999 - ${LLVM_MAJOR} )) + newenvd - "60llvm-${revord}" <<-_EOF_ + PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" + # we need to duplicate it in ROOTPATH for Portage to respect... + ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" + MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" + LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" + _EOF_ + + docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" + llvm_install_manpages +} + +pkg_postinst() { + elog "You can find additional opt-viewer utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer" + elog "To use these scripts, you will need Python along with the following" + elog "packages:" + elog " dev-python/pygments (for opt-viewer)" + elog " dev-python/pyyaml (for all of them)" +} diff --git a/sys-devel/make/Manifest b/sys-devel/make/Manifest deleted file mode 100644 index 8456f51ea398..000000000000 --- a/sys-devel/make/Manifest +++ /dev/null @@ -1,11 +0,0 @@ -AUX make-3.82-darwin-library_search-dylib.patch 394 BLAKE2B abd83733bc3036e412a57e0ced927511f45b9308f77d759ab299a5fc7fd76e81346cb4b908513ab20bc4aa931d436dbd4b3cd8cd0f5b05f94816569830589ce8 SHA512 32728cda66093f813e2731e120d71befa71e97e57a908503f60f79fd400e9fe0766f72d0c2ed065def1ea3a36a03b67d189dbff474728f41622489f1c3a515cb -AUX make-4.2-default-cxx.patch 212 BLAKE2B 16ab647e54b27b2be8fe3b8abc37940690e828a1f68a21856377dec4b282ef489246f5de7c2b364654327166fb9b3f2a0dae755dc15db786c607c6d7f1fd76d1 SHA512 9b9be230f8c74ee438851d1c10409ebd188f818d04e99b799a353fc26c2da78d2e298b907287ceece7b6e64f9ac0908ae65e33c35634b9338b246225b63cb409 -AUX make-4.4-default-cxx.patch 278 BLAKE2B 9b5a0428e37f3abcaa01567302b12e48031b755cd988054464275c5ae255a9c77a507d9772f2124614569a858c820c533a46d859e11813591a6cdea636d74f2a SHA512 f569ebd924d64c95e0d3d7c61daaedb7780cccded83bd73036d56f1ef658497056f95a65c463fe347b14b1d12205507173eaab8cb74205cbcf32bf1a25531f9d -DIST make-4.3.tar.gz 2317073 BLAKE2B 5a82ce1f30eb034366ac3b87d2ec6698aae17d7b1a611941cf42136b2453b34236ab55382eab0a593c43cee8b036ba4a054f966c41ba766fdbd2862942be5dff SHA512 9a1185cc468368f4ec06478b1cfa343bf90b5cd7c92c0536567db0315b0ee909af53ecce3d44cfd93dd137dbca1ed13af5713e8663590c4fdd21ea635d78496b -DIST make-4.3.tar.gz.sig 566 BLAKE2B 75bf71602e60f97ec8efa81676329047746d960257ef310b89a059144c00628b6a1ddf7a16a2ac2c3e935b8591475f5043a7c7546668ab39abbc4717c75a6528 SHA512 bf13e2943593b153457c8111179e8ae11cef2d9185a986106a1e70946a260bd930505a5e10002c5a60888e11affc07713c367b8680fd511ad87b2e124d303a99 -DIST make-4.4.1.tar.gz 2348200 BLAKE2B 09a4ad8060259e36854b525ab610fd317a86f4926e44e3ab8adba75dccc8d4b445df9dd25ccfb4c25a54bc0e98238a9127e36401d74cbc3503a329eadcdf4995 SHA512 145260cbd6a8226cef3dfef0c8baba31847beaebc7e6b65d39d02715fd4f4cab9b139b6c3772e550088d4f9ae80c6d3ed20b9a7664c693644dfb96b4cb60e67c -DIST make-4.4.1.tar.gz.sig 833 BLAKE2B d5f9a33b0262d4a9216f47718f6596884852662a692e708191a7007964007940da1c06549db28ae1d13683c4a949b9ee86da9dedd9a80da8f8b09e71e659e9a1 SHA512 d7a5531c10f216d690ec036f3875c7f314fa53006e138568c60132d506db48d1a59201623e168091dafa4465b005991019e42f81ff1a96a44610b6b18de08b09 -EBUILD make-4.3-r1.ebuild 1747 BLAKE2B 1cb1c4d15b41ed5460355be8c562387df38d928177dbe59e3537430b7e36799a2075b27260a5f118810ee4b8b0cb7a24ba1eeb4bf9d578c438be446042dc2389 SHA512 02cd3eebbc85d48aa9b9abe981760e322184d827abfcfb3c982c138a9d51c0f978b70a7978e2c716ff4d43174fd331ebe88fe7e2a7e0e5d756c8345e7ae04241 -EBUILD make-4.4.1-r1.ebuild 1714 BLAKE2B 4d0d14f6b0eb0347983bfce5ddaa4e91011c9c3834b4e6cfb59609ccc7e49a1ee712c36c586c6da358e3bd6c3f651fb6374c9ea1222495f4c14efbbd8f282f80 SHA512 0a9fa914aec9bc0478bfb0ec5c195ffae8a851aff60d500fc06dad49c2eb85db29ffb61aa784fbe571b32df8c420d20fb9e4aee5730c61ffc06a82e76d7fe870 -EBUILD make-9999.ebuild 1722 BLAKE2B e304cb2442da1746f230796e690f2300dc0f488fba73d43f6be28c457db1dd0c826fe2c339dc9b6d0dc16f7d21fe3d6aedb48acf1996e2cdae193c513c6e2d8b SHA512 8c52561b7d443493991c405820944017e599bfca9d7d223c8b8c4b523268b36e4eb4037e6bf93bc57c1c64106524920c8dcc17a37ea47f7e9efe5b0f030a89ae -MISC metadata.xml 381 BLAKE2B 867fd4a045ef622ccb62c72b7198e205293501d075ec0dca7daf702bacbe2df21ea23aadb4150e42fdc0914a95cab0f48d439c1f7073acf2302bdaf48fa18688 SHA512 66494f08f599035728fa7f87b3f7ca093e3c50dbb694aed8214d1dbbb3d1e03441e6e159b1453709fa8c7da8cc8d73ab2c972517a3506b1fb671533d459c4418 diff --git a/sys-devel/make/files/make-3.82-darwin-library_search-dylib.patch b/sys-devel/make/files/make-3.82-darwin-library_search-dylib.patch deleted file mode 100644 index 743583b5a0a3..000000000000 --- a/sys-devel/make/files/make-3.82-darwin-library_search-dylib.patch +++ /dev/null @@ -1,17 +0,0 @@ -Fixed default libpatttern on Darwin, imported from prefix overlay. -Got merged upstream: -https://savannah.gnu.org/bugs/?37197 ---- a/src/default.c -+++ b/src/default.c -@@ -509,7 +509,11 @@ - #ifdef __MSDOS__ - ".LIBPATTERNS", "lib%.a $(DJDIR)/lib/lib%.a", - #else -+#ifdef __APPLE__ -+ ".LIBPATTERNS", "lib%.dylib lib%.a", -+#else - ".LIBPATTERNS", "lib%.so lib%.a", -+#endif - #endif - #endif - diff --git a/sys-devel/make/files/make-4.2-default-cxx.patch b/sys-devel/make/files/make-4.2-default-cxx.patch deleted file mode 100644 index 39e3ee0dd9f9..000000000000 --- a/sys-devel/make/files/make-4.2-default-cxx.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/default.c -+++ b/src/default.c -@@ -530,7 +530,7 @@ static const char *default_variables[] = - "OBJC", "gcc", - #else - "CC", "cc", -- "CXX", "g++", -+ "CXX", "c++", - "OBJC", "cc", - #endif - diff --git a/sys-devel/make/files/make-4.4-default-cxx.patch b/sys-devel/make/files/make-4.4-default-cxx.patch deleted file mode 100644 index 4a56df5da2c8..000000000000 --- a/sys-devel/make/files/make-4.4-default-cxx.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/default.c -+++ b/src/default.c -@@ -542,7 +542,7 @@ static const char *default_variables[] = - "CXX", "gcc", - # endif /* __MSDOS__ */ - # else -- "CXX", "g++", -+ "CXX", "c++", - # endif - #endif - /* This expands to $(CO) $(COFLAGS) $< $@ if $@ does not exist, diff --git a/sys-devel/make/make-4.3-r1.ebuild b/sys-devel/make/make-4.3-r1.ebuild deleted file mode 100644 index 86232f173a21..000000000000 --- a/sys-devel/make/make-4.3-r1.ebuild +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc -inherit flag-o-matic verify-sig - -DESCRIPTION="Standard tool to compile source trees" -HOMEPAGE="https://www.gnu.org/software/make/make.html" -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" - inherit autotools git-r3 -elif [[ $(ver_cut 3) -ge 90 ]] ; then - SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.gz" - SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.gz.sig )" -else - SRC_URI="mirror://gnu//make/${P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu//make/${P}.tar.gz.sig )" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="GPL-3+" -SLOT="0" -IUSE="guile nls static" - -DEPEND="guile? ( >=dev-scheme/guile-1.8:= )" -BDEPEND="nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-make )" -RDEPEND="${DEPEND} - nls? ( virtual/libintl )" - -PATCHES=( - "${FILESDIR}"/${PN}-3.82-darwin-library_search-dylib.patch - "${FILESDIR}"/${PN}-4.2-default-cxx.patch -) - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - else - default - fi -} - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - fi -} - -src_configure() { - use static && append-ldflags -static - local myeconfargs=( - --program-prefix=g - $(use_with guile) - $(use_enable nls) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - dodoc AUTHORS NEWS README* - - dosym gmake /usr/bin/make - dosym gmake.1 /usr/share/man/man1/make.1 -} diff --git a/sys-devel/make/make-4.4.1-r1.ebuild b/sys-devel/make/make-4.4.1-r1.ebuild deleted file mode 100644 index dca1f3a7981c..000000000000 --- a/sys-devel/make/make-4.4.1-r1.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc -inherit flag-o-matic verify-sig - -DESCRIPTION="Standard tool to compile source trees" -HOMEPAGE="https://www.gnu.org/software/make/make.html" -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" - inherit autotools git-r3 -elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then - SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.gz" - SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.gz.sig )" -else - SRC_URI="mirror://gnu/make/${P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.gz.sig )" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="GPL-3+" -SLOT="0" -IUSE="guile nls static" - -DEPEND="guile? ( >=dev-scheme/guile-1.8:= )" -RDEPEND=" - ${DEPEND} - nls? ( virtual/libintl ) -" -BDEPEND=" - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-make ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.4-default-cxx.patch -) - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - else - default - fi -} - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - fi -} - -src_configure() { - use static && append-ldflags -static - local myeconfargs=( - --program-prefix=g - $(use_with guile) - $(use_enable nls) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - dodoc AUTHORS NEWS README* - - dosym gmake /usr/bin/make - dosym gmake.1 /usr/share/man/man1/make.1 -} diff --git a/sys-devel/make/make-9999.ebuild b/sys-devel/make/make-9999.ebuild deleted file mode 100644 index 9cf849936bbe..000000000000 --- a/sys-devel/make/make-9999.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc -inherit flag-o-matic verify-sig - -DESCRIPTION="Standard tool to compile source trees" -HOMEPAGE="https://www.gnu.org/software/make/make.html" -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" - inherit autotools git-r3 -elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then - SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.gz" - SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.gz.sig )" -else - SRC_URI="mirror://gnu/make/${P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.gz.sig )" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="GPL-3+" -SLOT="0" -IUSE="guile nls static" - -DEPEND="guile? ( >=dev-scheme/guile-1.8:= )" -RDEPEND=" - ${DEPEND} - nls? ( virtual/libintl ) -" -BDEPEND=" - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-make ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.4-default-cxx.patch -) - -src_unpack() { - if [[ ${PV} == 9999 ]] ; then - git-r3_src_unpack - - cd "${S}" || die - ./bootstrap || die - else - default - fi -} - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - fi -} - -src_configure() { - use static && append-ldflags -static - local myeconfargs=( - --program-prefix=g - $(use_with guile) - $(use_enable nls) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - dodoc AUTHORS NEWS README* - - dosym gmake /usr/bin/make - dosym gmake.1 /usr/share/man/man1/make.1 -} diff --git a/sys-devel/make/metadata.xml b/sys-devel/make/metadata.xml deleted file mode 100644 index 068fc3567c55..000000000000 --- a/sys-devel/make/metadata.xml +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>base-system@gentoo.org</email> - <name>Gentoo Base System</name> - </maintainer> - <upstream> - <remote-id type="cpe">cpe:/a:gnu:make</remote-id> - <remote-id type="savannah">make</remote-id> - </upstream> -</pkgmetadata> diff --git a/sys-devel/pmake/Manifest b/sys-devel/pmake/Manifest deleted file mode 100644 index d143daaeda0e..000000000000 --- a/sys-devel/pmake/Manifest +++ /dev/null @@ -1,6 +0,0 @@ -AUX pmake-1.111.1-ldflags.patch 484 BLAKE2B d94f955c6ec149b7617c26010e7364fe2ad5e88ae39251e2e751eb69a3d60e855783fe621b69c9bc418e0c09b17d95a3247517b3a477ca52b45a2068e18f339a SHA512 10276e6caa4e339a2e7c787ee04dc97187d48cf433cd6148ec5451ae055d638f79c8d8950c94fe84cdffa02b20519423272f09a6ee669ab026db861442051849 -AUX pmake-1.98-skipdots.patch 513 BLAKE2B 03f63f698b3d147dc0d1df0140f40657cecd445d7c7659f18369e5fa541b0370ced4cddafd27639149aa93053440f7d43b715baf1893cf4613ba15fe6820bdc9 SHA512 ccd751cca406abdb763f251c147f7b7efd7b001e415bc8c98a4fa8069420b64c3a5819b4abd5f174606390f903f8cba5e560e02a14519619713da26ab52c54ad -DIST pmake_1.111-3.3.debian.tar.gz 31648 BLAKE2B 31aca433bbeac4275d4c2af0cfd33ef81b0086b0dec107edfc1fba55b15480367ebf62abccd6e2e48f0c7ccc25c59f0b07eed7ac950a5037b73c267b066a9638 SHA512 b22a1d9e371712732f196d91ac3eb9239fa98ee8ee05754576e7a5878cab88976cb10bb6be90706df5ac738373f519468403c23f6a3ff3860a2968b3222a66ed -DIST pmake_1.111.orig.tar.gz 264383 BLAKE2B 54dd510251441b54c9f5d7f6061109b0222191b3acdded1394b51b72b87bbd4255edd80fab46976d92c58929693b6809a9f2c4f001cab8c9cdaabfac9f3adac9 SHA512 ad48708ea014d6a38ad36303504c52992b51a1e815564f1710849d859b1fc3cd58c4a1a71f54ec902c9b69112e9cd1e1a64282ff738439cdb209a4f75c364c22 -EBUILD pmake-1.111.3.3-r1.ebuild 1865 BLAKE2B e009b6b222e34679db650669bd987321894b3a7ae567e80b88f28abb94ca026d32190c56d53c3de8304677a6e92a0318f0f059c0ace59cc4a726a9f22dfca15c SHA512 213da2ffa18379f8a0224c8fe5d9fb46c7e4a2aad290603a52363efc3996494e0695ec317d12a45fe7744d02bbaf430ab00ac10e59569153f6a32834c2583de7 -MISC metadata.xml 167 BLAKE2B 868e3b584722eaacf68273db062bb773d8c7e5d7ab2b81ca7e8397643bf7cc106c3a1033594401c99c54f667bb45d6b73f9048fc335580bbd44b4589ad26a832 SHA512 30caadd1496c3b9969136038239a1d8e01f236726b4022c2d7e19ca7575f25f735e556835e581afbf44fbd3e4104c40f2b5ef5fa70118d75c881fdf871962d0a diff --git a/sys-devel/pmake/files/pmake-1.111.1-ldflags.patch b/sys-devel/pmake/files/pmake-1.111.1-ldflags.patch deleted file mode 100644 index d6047d48994b..000000000000 --- a/sys-devel/pmake/files/pmake-1.111.1-ldflags.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: pmake/Makefile.boot -=================================================================== ---- pmake.orig/Makefile.boot -+++ pmake/Makefile.boot -@@ -36,7 +36,7 @@ LIBOBJ= lst.lib/lstAppend.o lst.lib/lstA - - bmake: ${OBJ} ${LIBOBJ} - # @echo 'make of make and make.0 started.' -- ${CC} ${CFLAGS} ${OBJ} ${LIBOBJ} -o bmake ${LIBS} -+ ${CC} ${LDFLAGS} ${CFLAGS} ${OBJ} ${LIBOBJ} -o bmake ${LIBS} - @ls -l $@ - # nroff -h -man make.1 > make.0 - # @echo 'make of make and make.0 completed.' diff --git a/sys-devel/pmake/files/pmake-1.98-skipdots.patch b/sys-devel/pmake/files/pmake-1.98-skipdots.patch deleted file mode 100644 index 6783a9799919..000000000000 --- a/sys-devel/pmake/files/pmake-1.98-skipdots.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN pmake-2.0.orig/dir.c pmake-2.0/dir.c ---- pmake-2.0.orig/dir.c 2005-02-08 09:26:28.932978574 -0500 -+++ pmake-2.0/dir.c 2005-02-08 09:36:18.208704201 -0500 -@@ -1528,6 +1528,8 @@ - Hash_InitTable (&p->files, -1); - - while ((dp = readdir (d)) != (struct dirent *) NULL) { -+ if (!strcmp(dp->d_name, ".") || !strcmp(dp->d_name, "..")) -+ continue; - #if defined(sun) && defined(d_ino) /* d_ino is a sunos4 #define for d_fileno */ - /* - * The sun directory library doesn't check for a 0 inode diff --git a/sys-devel/pmake/metadata.xml b/sys-devel/pmake/metadata.xml deleted file mode 100644 index 85e4ed814fa2..000000000000 --- a/sys-devel/pmake/metadata.xml +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> -<!-- maintainer-needed --> -</pkgmetadata> diff --git a/sys-devel/pmake/pmake-1.111.3.3-r1.ebuild b/sys-devel/pmake/pmake-1.111.3.3-r1.ebuild deleted file mode 100644 index ff51a3b25bbc..000000000000 --- a/sys-devel/pmake/pmake-1.111.3.3-r1.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs linux-info - -MY_P="${PN}-$(ver_cut 1-2)" -DEBIAN_SOURCE="${PN}_$(ver_cut 1-2).orig.tar.gz" -DEBIAN_PATCH="${PN}_$(ver_rs 2 '-').debian.tar.gz" - -DESCRIPTION="BSD build tool to create programs in parallel. Debian's version of NetBSD's make" -HOMEPAGE="http://www.netbsd.org/" -SRC_URI=" - mirror://debian/pool/main/p/pmake/${DEBIAN_SOURCE} - mirror://debian/pool/main/p/pmake/${DEBIAN_PATCH}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux" - -S="${WORKDIR}/${PN}" - -PATCHES=( - "${WORKDIR}"/debian/patches - - # pmake makes the assumption that . and .. are the first two - # entries in a directory, which doesn't always appear to be the - # case on ext3... (05 Apr 2004 agriffis) - "${FILESDIR}"/${PN}-1.98-skipdots.patch - - # Don't ignore ldflags - "${FILESDIR}"/${PN}-1.111.1-ldflags.patch -) - -src_compile() { - # The following CFLAGS are almost directly from Red Hat 8.0 and - # debian/rules, so assume it's okay to void out the __COPYRIGHT - # and __RCSID. I've checked the source and don't see the point, - # but whatever... (07 Feb 2004 agriffis) - CFLAGS="${CFLAGS} -Wall -Wno-unused -D_GNU_SOURCE \ - -DHAVE_STRERROR -DHAVE_STRDUP -DHAVE_SETENV \ - -D__COPYRIGHT\(x\)= -D__RCSID\(x\)= -I. \ - -DMACHINE=\\\"gentoo\\\" -DMACHINE_ARCH=\\\"$(tc-arch-kernel)\\\" \ - -D_PATH_DEFSHELLDIR=\\\"${EPREFIX}/bin\\\" \ - -D_PATH_DEFSYSPATH=\\\"${EPREFIX}/usr/share/mk\\\" \ - -DHAVE_VSNPRINTF -D_PATH_DEFSYSPATH=\\\"${EPREFIX}/usr/share/mk/${PN}\\\"" - - emake -f Makefile.boot \ - CC="$(tc-getCC)" \ - CFLAGS="${CFLAGS}" -} - -src_install() { - insinto /usr/share/mk/${PN} - doins -r mk/. - - newbin bmake pmake - dobin mkdep - - doman mkdep.1 - newman make.1 pmake.1 - - dodoc PSD.doc/tutorial.ms -} diff --git a/sys-devel/remake/Manifest b/sys-devel/remake/Manifest deleted file mode 100644 index e20b995f86ae..000000000000 --- a/sys-devel/remake/Manifest +++ /dev/null @@ -1,4 +0,0 @@ -AUX remake-4.3.1.1.5-fno-common.patch 2988 BLAKE2B c9d6a4adef35cc51a82b5e625771bede0a13cbca4dfe40483497a9a2bfa6ac0f66c47023ec2d75075cd7c7abde7ccf1bb5eba315bad052ab3d7ac6c263c6ac09 SHA512 509096e2cfa1daefc1a7fd9b69355f21c6fcaf2adf4572bd6742ebb61b5d7ac65c0d8bbc0576c6bb2b3e895bac97d51f1da3008ae15b50e487aa09fe118d8b7a -DIST remake-4.3+dbg-1.5.tar.gz 2546056 BLAKE2B c5c1b254d0533e0d9787d408f79e8aba93cab5185de76519dabef7ddca5c9d2021671099f9ff80df345732552f859ce31d1131b89cd56fb185bae4cee676b412 SHA512 90aa9674ed5d88b72fda5a99a103d0b1a643d10b18c1de1186478b026f6b4da73628bff75a180df880157b5cbfff1bfd782f4ee81880e0635d79113fcc0f7497 -EBUILD remake-4.3.1.1.5.ebuild 1084 BLAKE2B 4a339f5572d924ae784b417f33941f20978865bfebd800fb68b81b3ef2147aec2cd6794a5efb976391f199998a5a3bd0cfed8c4decb05d73e498b7d5f530615f SHA512 ed342d317b84198f1dd0a38643997f4929c2d8b30411f64b26557cd8acf198a348516b57636cfa55970e8aa9993f6156aaa688a5ee037f0d41ddfdec303e9b26 -MISC metadata.xml 296 BLAKE2B e3146e98a4240740fa3d3089a7e15fa9833e60ec13e6f158b5db2d5ac6f59f98bd5d1c34554d87759eabf4d42376bc3cbfeaab9c5f6e8faed40520cb1e82804d SHA512 e5d3192b7c2ec0bd9e81b3c83449addd1e6cf240637c0ac2dbacadb0d0896d46691b55ad4337a90f35b79649366db012698932b71b0bfd2670eac50d84066d89 diff --git a/sys-devel/remake/files/remake-4.3.1.1.5-fno-common.patch b/sys-devel/remake/files/remake-4.3.1.1.5-fno-common.patch deleted file mode 100644 index 6c8650472e4e..000000000000 --- a/sys-devel/remake/files/remake-4.3.1.1.5-fno-common.patch +++ /dev/null @@ -1,103 +0,0 @@ -Adapted version of https://github.com/rocky/remake/commit/08113a28b9be25cf157ace5d63c2d36d7dbefc04 ---- a/src/debugger/file2line.c -+++ b/src/debugger/file2line.c -@@ -26,6 +26,8 @@ Boston, MA 02111-1307, USA. */ - #include "../src/rule.h" - #include "./file2line.h" - -+struct hash_table file2lines; -+ - unsigned long - file2lines_hash_1 (const void *key) - { ---- a/src/debugger/file2line.h -+++ b/src/debugger/file2line.h -@@ -19,15 +19,15 @@ the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - #ifndef REMAKE_FILE2LINE - #define REMAKE_FILE2LINE --struct hash_table file2lines; -+extern struct hash_table file2lines; - - typedef enum { - F2L_TARGET, - F2L_PATTERN - } f2l_entry_t; - -- --typedef struct lineo_array_s -+ -+typedef struct lineo_array_s - { - const char *hname; /**< Name stored in hash table */ - unsigned int size; /**< Number of entries in array */ -@@ -40,13 +40,13 @@ typedef struct lineo_array_s - only. So we do this on demand. - */ - extern bool file2lines_init(void); --extern file_t *target_for_file_and_line (const char *psz_filename, -+extern file_t *target_for_file_and_line (const char *psz_filename, - unsigned int lineno, - /*out*/ f2l_entry_t *entry_type); - extern void file2lines_dump(void); - #endif - --/* -+/* - * Local variables: - * eval: (c-set-style "gnu") - * indent-tabs-mode: nil ---- a/src/dep.h -+++ b/src/dep.h -@@ -139,7 +139,7 @@ struct dep *copy_dep_chain (const struct dep *d); - struct goaldep *read_all_makefiles (const char **makefiles); - - /*! The chain of makefiles read by read_makefile. */ --struct goaldep *read_makefiles; -+extern struct goaldep *read_makefiles; - - void eval_buffer (char *buffer, const gmk_floc *floc); - enum update_status update_goal_chain (struct goaldep *goals); ---- a/src/globals.h -+++ b/src/globals.h -@@ -89,6 +89,6 @@ extern int in_debugger; - extern bool b_debugger_preread; - - /* Remember the original value of the SHELL variable, from the environment. */ --struct variable shell_var; -+extern struct variable shell_var; - - #endif /*GLOBALS_H*/ ---- a/src/main.c -+++ b/src/main.c -@@ -45,6 +45,8 @@ this program. If not, see <http://www.gnu.org/licenses/>. */ - # include <fcntl.h> - #endif - -+struct goaldep *read_makefiles; -+ - extern void initialize_stopchar_map (); - - #if defined HAVE_WAITPID || defined HAVE_WAIT3 ---- a/src/make.h -+++ b/src/make.h -@@ -324,7 +324,7 @@ extern int unixy_shell; - #endif - #ifdef SET_STACK_SIZE - # include <sys/resource.h> --struct rlimit stack_limit; -+extern struct rlimit stack_limit; - #endif - - /* We have to have stdarg.h or varargs.h AND v*printf or doprnt to use ---- a/src/print.h -+++ b/src/print.h -@@ -39,7 +39,7 @@ void fatal_err (target_stack_node_t *p_call, const char *fmt, ...); - - /* Think of the below not as an enumeration but as #defines done in a - way that we'll be able to use the value in a gdb. */ --enum debug_print_enums_e { -+extern enum debug_print_enums_e { - MAX_STACK_SHOW = 1000, - } debug_print_enums1; - diff --git a/sys-devel/remake/metadata.xml b/sys-devel/remake/metadata.xml deleted file mode 100644 index 17bb5f7f22f9..000000000000 --- a/sys-devel/remake/metadata.xml +++ /dev/null @@ -1,9 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <!-- maintainer-needed --> - <upstream> - <remote-id type="github">rocky/remake</remote-id> - <remote-id type="sourceforge">bashdb</remote-id> - </upstream> -</pkgmetadata> diff --git a/sys-devel/remake/remake-4.3.1.1.5.ebuild b/sys-devel/remake/remake-4.3.1.1.5.ebuild deleted file mode 100644 index b4b30d8b7d04..000000000000 --- a/sys-devel/remake/remake-4.3.1.1.5.ebuild +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MY_MAKE_BASE=$(ver_cut 1-2) -MY_REMAKE_PATCH=$(ver_cut 4-) -MY_P="${PN}-${MY_MAKE_BASE}+dbg-${MY_REMAKE_PATCH}" - -DESCRIPTION="Patched version of GNU Make with improved error reporting, tracing and debugging" -HOMEPAGE="http://bashdb.sourceforge.net/remake/" -SRC_URI="https://github.com/rocky/remake/releases/download/release_${MY_P/remake-/}/${MY_P}.tar.gz" -S="${WORKDIR}"/${MY_P} - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sparc x86" -IUSE="guile readline" - -DEPEND="readline? ( sys-libs/readline:0= )" -RDEPEND="${DEPEND} - guile? ( >=dev-scheme/guile-1.8:= )" -BDEPEND="guile? ( >=dev-scheme/guile-1.8 )" - -PATCHES=( - "${FILESDIR}"/${P}-fno-common.patch -) - -src_configure() { - use readline || export vl_cv_lib_readline=no - econf $(use_with guile) -} - -src_install() { - default - - # delete files GNU make owns and remake doesn't care about. - rm -r "${ED}"/usr/include || die - rm "${ED}"/usr/share/info/make.info* || die -} |