* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 12:40 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-08-19 12:40 UTC (permalink / raw
To: gentoo-commits
commit: f6872803ff8fd1630afddf554ed91a8dfd11685a
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 12:40:17 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 12:40:17 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6872803
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 s390, #938169
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index 0aeeed414bb4..d35e9a0c8d23 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="~amd64 ~arm64 ~s390 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-11-02 10:00 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-11-02 10:00 UTC (permalink / raw
To: gentoo-commits
commit: ec417094fd29927c205ba6bdb87cd7bb00f5779e
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 2 10:00:02 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Nov 2 10:00:02 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec417094
sys-devel/bpf-toolchain: Stabilize 14.2.0_p1 x86, #942617
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
index 0c5d3500faa2..569fc12ca057 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86"
+KEYWORDS="amd64 ~arm arm64 ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-09-12 14:58 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-09-12 14:58 UTC (permalink / raw
To: gentoo-commits
commit: 7a62117c25647bed569272d6cde8d6f732b58195
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 12 14:57:40 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 12 14:57:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a62117c
sys-devel/bpf-toolchain: Stabilize 14.2.0_p1 ppc64, #939354
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
index 7c4d6e130838..0c5d3500faa2 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
+KEYWORDS="amd64 ~arm arm64 ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-09-09 20:44 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-09-09 20:44 UTC (permalink / raw
To: gentoo-commits
commit: b2ff025b0f23c05969ce93435464f0981db6c0e5
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 9 20:44:25 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 9 20:44:25 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2ff025b
sys-devel/bpf-toolchain: Stabilize 14.2.0_p1 arm64, #939354
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
index 845f92139760..7c4d6e130838 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
+KEYWORDS="amd64 ~arm arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-09-09 13:46 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-09-09 13:46 UTC (permalink / raw
To: gentoo-commits
commit: 2189a2b8c355536d7130904bdd30f9f888222ba8
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 9 13:45:26 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 9 13:45:26 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2189a2b8
sys-devel/bpf-toolchain: Stabilize 14.2.0_p1 sparc, #939354
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
index 60f7850b80e3..845f92139760 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-09-08 21:59 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-09-08 21:59 UTC (permalink / raw
To: gentoo-commits
commit: fdff6f2054909a5c910889332461d31eed1902ff
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 8 21:59:41 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Sep 8 21:59:41 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fdff6f20
sys-devel/bpf-toolchain: Stabilize 14.2.0_p1 amd64, #939354
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
index 00dbda329dee..60f7850b80e3 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-31 6:39 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-31 6:39 UTC (permalink / raw
To: gentoo-commits
commit: 9b398f60ea118d295261197a52249ae128ce9d1c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 31 06:19:44 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Aug 31 06:38:34 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b398f60
sys-devel/bpf-toolchain: drop 14.2.0-r2
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/Manifest | 1 -
.../bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 232 ---------------------
2 files changed, 233 deletions(-)
diff --git a/sys-devel/bpf-toolchain/Manifest b/sys-devel/bpf-toolchain/Manifest
index 34d9a7278865..1ee65c551f7c 100644
--- a/sys-devel/bpf-toolchain/Manifest
+++ b/sys-devel/bpf-toolchain/Manifest
@@ -1,3 +1,2 @@
DIST binutils-2.43.1.tar.xz 28174300 BLAKE2B c4cd765cea326cd00b5cfe306e2937d820603b42f07a714ceb1349d36ddba0d45c3e125599dadf290d97954035c381781067155600ed87066e494cb9c4b34b45 SHA512 20977ad17729141a2c26d358628f44a0944b84dcfefdec2ba029c2d02f40dfc41cc91c0631044560d2bd6f9a51e1f15846b4b311befbe14f1239f14ff7d57824
-DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
DIST gcc-14.2.0.tar.xz 92306460 BLAKE2B 87baf2a06dfa75d8fb6cd62c747ef1f57d3b9bbbe33a360d9ed3de4b4dbeaa8d920504c67e409bd9863414202c14fd854b46108e984418171205119216d03d3b SHA512 932bdef0cda94bacedf452ab17f103c0cb511ff2cec55e9112fc0328cbf1d803b42595728ea7b200e0a057c03e85626f937012e49a7515bc5dd256b2bf4bc396
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
deleted file mode 100644
index 0099d684a602..000000000000
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ /dev/null
@@ -1,232 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit edo flag-o-matic toolchain-funcs
-
-# Versioning is just the GCC version in full (so may include a snapshot
-# date). Unlike dev-util/mingw64-toolchain, which this ebuild was heavily
-# inspired by, there's no "third component" here to version on, just
-# GCC + binutils.
-#
-# Do _p1++ rather than revbump on Binutils changes
-# Not using Gentoo patchsets for simplicity, their changes are mostly unneeded here.
-GCC_PV=${PV/_p/-}
-BINUTILS_PV=2.43
-
-DESCRIPTION="All-in-one bpf toolchain for building DTrace and systemd without crossdev"
-HOMEPAGE="
- https://gcc.gnu.org/
- https://sourceware.org/binutils/
- https://gcc.gnu.org/wiki/BPFBackEnd
-"
-SRC_URI="
- mirror://gnu/binutils/binutils-${BINUTILS_PV}.tar.xz
-"
-if [[ ${GCC_PV} == *-* ]]; then
- SRC_URI+=" mirror://gcc/snapshots/${GCC_PV}/gcc-${GCC_PV}.tar.xz"
-else
- SRC_URI+="
- mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
- mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
- "
-fi
-S="${WORKDIR}"
-
-# l1:binutils+gcc, l2:gcc(libraries)
-LICENSE="
- GPL-3+
- LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
-"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+bin-symlinks custom-cflags +strip"
-
-RDEPEND="
- dev-libs/gmp:=
- dev-libs/mpc:=
- dev-libs/mpfr:=
- sys-libs/zlib:=
- virtual/libiconv
- bin-symlinks? (
- !cross-bpf-unknown-none/binutils
- !cross-bpf-unknown-none/gcc
- )
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=()
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} == binary ]] && return
-
- tc-is-cross-compiler &&
- die "cross-compilation of the toolchain itself is unsupported"
-}
-
-src_prepare() {
- # rename directories to simplify both patching and the ebuild
- mv binutils{-${BINUTILS_PV},} || die
- mv gcc{-${GCC_PV},} || die
-
- default
-}
-
-src_compile() {
- # src_compile is kept similar to dev-util/mingw64-toolchain
- # at least for now for ease of comparison etc.
- #
- # not great but do everything in src_compile given bootstrapping
- # process needs to be done in steps of configure+compile+install
- # (done modular to have most package-specific things in one place)
-
- CTARGET=bpf-unknown-none
-
- BPFT_D=${T}/root # moved to ${D} in src_install
- local bpftdir=/usr/lib/${PN}
- local prefix=${EPREFIX}${bpftdir}
- local sysroot=${BPFT_D}${prefix}
- local -x PATH=${sysroot}/bin:${PATH}
-
- use custom-cflags || strip-flags # fancy flags are not realistic here
-
- # global configure flags
- local conf=(
- --build=${CBUILD:-${CHOST}}
- --target=${CTARGET}
- --{doc,info,man}dir=/.skip # let the real binutils+gcc handle docs
- MAKEINFO=: #922230
- )
-
- # binutils
- local conf_binutils=(
- --prefix="${prefix}"
- --host=${CHOST}
- --disable-cet
- --disable-default-execstack
- --disable-nls
- --disable-shared
- --with-system-zlib
- --without-debuginfod
- --without-msgpack
- --without-zstd
- )
-
- # gcc (minimal -- if need more, disable only in stage1 / enable in stage3)
- local conf_gcc=(
- --prefix="${prefix}"
- --host=${CHOST}
- --disable-bootstrap
- --disable-cc1
- --disable-cet
- --disable-gcov #843989
- --disable-gomp
- --disable-nls # filename collisions
- --disable-libcc1
- --disable-libquadmath
- --disable-libsanitizer
- --disable-libssp
- --disable-libvtv
- --disable-shared
- --disable-werror
- --enable-languages=c
- --with-gcc-major-version-only
- --with-system-zlib
- --without-isl
- --without-zstd
- --disable-multilib
- )
-
- # libstdc++ may misdetect sys/sdt.h on systemtap-enabled system and fail
- # (not passed in conf_gcc above given it is lost in sub-configure calls)
- local -x glibcxx_cv_sys_sdt_h=no
-
- # bpft-build <path/package-name>
- # -> ./configure && make && make install && bpft-package()
- # passes conf and conf_package to configure, and users can add options
- # through environment with e.g.
- # BPFT_BINUTILS_CONF="--some-option"
- # EXTRA_ECONF="--global-option" (generic naming for if not reading this)
- bpft-build() {
- local id=${1##*/}
- local build_dir=${WORKDIR}/${1}-build
-
- # econf is not allowed in src_compile and its defaults are
- # mostly unused here, so use configure directly
- local conf=( "${WORKDIR}/${1}"/configure "${conf[@]}" )
-
- local -n conf_id=conf_${id}
- [[ ${conf_id@a} == *a* ]] && conf+=( "${conf_id[@]}" )
-
- local -n extra_id=BPFT_${id^^}_CONF
- conf+=( ${EXTRA_ECONF} ${extra_id} )
-
- einfo "Building ${id} in ${build_dir} ..."
-
- mkdir -p "${build_dir}" || die
- pushd "${build_dir}" >/dev/null || die
-
- edo "${conf[@]}"
- emake MAKEINFO=: V=1
- # -j1 to match bug #906155, other packages may be fragile too
- emake -j1 MAKEINFO=: V=1 DESTDIR="${BPFT_D}" install
-
- declare -f bpft-${id} >/dev/null && edo bpft-${id}
-
- popd >/dev/null || die
- }
-
- # build with same ordering that crossdev would do
- bpft-build binutils
- bpft-build gcc
-
- if use bin-symlinks; then
- mkdir -p -- "${BPFT_D}${EPREFIX}"/usr/bin/ || die
- local bin
- for bin in "${sysroot}"/bin/*; do
- ln -rs -- "${bin}" "${BPFT_D}${EPREFIX}"/usr/bin/ || die
- done
- fi
-
- # Delete libdep.a, which has a colliding name and is useless for bpf,
- # which does not make use of cross-library dependencies: the libdep.a
- # for the native binutils will do.
- rm -f ${sysroot}/lib/bfd-plugins/libdep.a || die
-
- # portage doesn't know the right strip executable to use for CTARGET
- # and it can lead to .a mangling, notably with 32bit (breaks toolchain)
- dostrip -x ${bpftdir}/{${CTARGET}/lib{,32},lib/gcc/${CTARGET}}
-
- # TODO: Check if this is worth doing, it may not be
- if use strip; then
- einfo "Stripping ${CTARGET} static libraries ..."
- find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
- -exec ${CTARGET}-strip --strip-unneeded {} + || die
- fi
-}
-
-src_install() {
- mv "${BPFT_D}${EPREFIX}"/* "${ED}" || die
-
- find "${ED}" -type f -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
- eselect compiler-shadow update all
-
- if [[ ! ${REPLACING_VERSIONS} ]]; then
- elog "Note that this package is primarily intended for DTrace, systemd, and related"
- elog "packages to depend on without needing a manual crossdev setup."
- elog
- elog "Settings are oriented only for what these need and simplicity."
- elog "Use sys-devel/crossdev if need full toolchain/customization:"
- elog " https://wiki.gentoo.org/wiki/Crossdev"
- fi
-}
-
-pkg_postrm() {
- use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
- eselect compiler-shadow clean all
-}
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-23 13:00 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-08-23 13:00 UTC (permalink / raw
To: gentoo-commits
commit: 2d9765464c1d47afbd6d47f0c612238d9e7fe78b
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 23 13:00:09 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 23 13:00:09 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2d976546
sys-devel/bpf-toolchain: Keyword 14.2.0_p1 arm, #938169
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
index 847ea82ad412..00dbda329dee 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-20 19:00 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-20 19:00 UTC (permalink / raw
To: gentoo-commits
commit: ac27082741247929982524c28c47ff3e4d77e0c2
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 20 18:59:02 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 20 18:59:41 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac270827
sys-devel/bpf-toolchain: add 14.2.0_p1 (binutils-2.43.1)
This only updates binutils-2.43 -> binutils-2.43.1.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/Manifest | 1 +
.../bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild | 232 +++++++++++++++++++++
2 files changed, 233 insertions(+)
diff --git a/sys-devel/bpf-toolchain/Manifest b/sys-devel/bpf-toolchain/Manifest
index e1ae3bc4043c..34d9a7278865 100644
--- a/sys-devel/bpf-toolchain/Manifest
+++ b/sys-devel/bpf-toolchain/Manifest
@@ -1,2 +1,3 @@
+DIST binutils-2.43.1.tar.xz 28174300 BLAKE2B c4cd765cea326cd00b5cfe306e2937d820603b42f07a714ceb1349d36ddba0d45c3e125599dadf290d97954035c381781067155600ed87066e494cb9c4b34b45 SHA512 20977ad17729141a2c26d358628f44a0944b84dcfefdec2ba029c2d02f40dfc41cc91c0631044560d2bd6f9a51e1f15846b4b311befbe14f1239f14ff7d57824
DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
DIST gcc-14.2.0.tar.xz 92306460 BLAKE2B 87baf2a06dfa75d8fb6cd62c747ef1f57d3b9bbbe33a360d9ed3de4b4dbeaa8d920504c67e409bd9863414202c14fd854b46108e984418171205119216d03d3b SHA512 932bdef0cda94bacedf452ab17f103c0cb511ff2cec55e9112fc0328cbf1d803b42595728ea7b200e0a057c03e85626f937012e49a7515bc5dd256b2bf4bc396
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
new file mode 100644
index 000000000000..847ea82ad412
--- /dev/null
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0_p1.ebuild
@@ -0,0 +1,232 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo flag-o-matic toolchain-funcs
+
+# Versioning is just the GCC version in full (so may include a snapshot
+# date). Unlike dev-util/mingw64-toolchain, which this ebuild was heavily
+# inspired by, there's no "third component" here to version on, just
+# GCC + binutils.
+#
+# Do _p1++ rather than revbump on Binutils changes
+# Not using Gentoo patchsets for simplicity, their changes are mostly unneeded here.
+GCC_PV=${PV%_p*}
+BINUTILS_PV=2.43.1
+
+DESCRIPTION="All-in-one bpf toolchain for building DTrace and systemd without crossdev"
+HOMEPAGE="
+ https://gcc.gnu.org/
+ https://sourceware.org/binutils/
+ https://gcc.gnu.org/wiki/BPFBackEnd
+"
+SRC_URI="
+ mirror://gnu/binutils/binutils-${BINUTILS_PV}.tar.xz
+"
+if [[ ${GCC_PV} == *-* ]]; then
+ SRC_URI+=" mirror://gcc/snapshots/${GCC_PV}/gcc-${GCC_PV}.tar.xz"
+else
+ SRC_URI+="
+ mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
+ mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
+ "
+fi
+S="${WORKDIR}"
+
+# l1:binutils+gcc, l2:gcc(libraries)
+LICENSE="
+ GPL-3+
+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+bin-symlinks custom-cflags +strip"
+
+RDEPEND="
+ dev-libs/gmp:=
+ dev-libs/mpc:=
+ dev-libs/mpfr:=
+ sys-libs/zlib:=
+ virtual/libiconv
+ bin-symlinks? (
+ !cross-bpf-unknown-none/binutils
+ !cross-bpf-unknown-none/gcc
+ )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=()
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} == binary ]] && return
+
+ tc-is-cross-compiler &&
+ die "cross-compilation of the toolchain itself is unsupported"
+}
+
+src_prepare() {
+ # rename directories to simplify both patching and the ebuild
+ mv binutils{-${BINUTILS_PV},} || die
+ mv gcc{-${GCC_PV},} || die
+
+ default
+}
+
+src_compile() {
+ # src_compile is kept similar to dev-util/mingw64-toolchain
+ # at least for now for ease of comparison etc.
+ #
+ # not great but do everything in src_compile given bootstrapping
+ # process needs to be done in steps of configure+compile+install
+ # (done modular to have most package-specific things in one place)
+
+ CTARGET=bpf-unknown-none
+
+ BPFT_D=${T}/root # moved to ${D} in src_install
+ local bpftdir=/usr/lib/${PN}
+ local prefix=${EPREFIX}${bpftdir}
+ local sysroot=${BPFT_D}${prefix}
+ local -x PATH=${sysroot}/bin:${PATH}
+
+ use custom-cflags || strip-flags # fancy flags are not realistic here
+
+ # global configure flags
+ local conf=(
+ --build=${CBUILD:-${CHOST}}
+ --target=${CTARGET}
+ --{doc,info,man}dir=/.skip # let the real binutils+gcc handle docs
+ MAKEINFO=: #922230
+ )
+
+ # binutils
+ local conf_binutils=(
+ --prefix="${prefix}"
+ --host=${CHOST}
+ --disable-cet
+ --disable-default-execstack
+ --disable-nls
+ --disable-shared
+ --with-system-zlib
+ --without-debuginfod
+ --without-msgpack
+ --without-zstd
+ )
+
+ # gcc (minimal -- if need more, disable only in stage1 / enable in stage3)
+ local conf_gcc=(
+ --prefix="${prefix}"
+ --host=${CHOST}
+ --disable-bootstrap
+ --disable-cc1
+ --disable-cet
+ --disable-gcov #843989
+ --disable-gomp
+ --disable-nls # filename collisions
+ --disable-libcc1
+ --disable-libquadmath
+ --disable-libsanitizer
+ --disable-libssp
+ --disable-libvtv
+ --disable-shared
+ --disable-werror
+ --enable-languages=c
+ --with-gcc-major-version-only
+ --with-system-zlib
+ --without-isl
+ --without-zstd
+ --disable-multilib
+ )
+
+ # libstdc++ may misdetect sys/sdt.h on systemtap-enabled system and fail
+ # (not passed in conf_gcc above given it is lost in sub-configure calls)
+ local -x glibcxx_cv_sys_sdt_h=no
+
+ # bpft-build <path/package-name>
+ # -> ./configure && make && make install && bpft-package()
+ # passes conf and conf_package to configure, and users can add options
+ # through environment with e.g.
+ # BPFT_BINUTILS_CONF="--some-option"
+ # EXTRA_ECONF="--global-option" (generic naming for if not reading this)
+ bpft-build() {
+ local id=${1##*/}
+ local build_dir=${WORKDIR}/${1}-build
+
+ # econf is not allowed in src_compile and its defaults are
+ # mostly unused here, so use configure directly
+ local conf=( "${WORKDIR}/${1}"/configure "${conf[@]}" )
+
+ local -n conf_id=conf_${id}
+ [[ ${conf_id@a} == *a* ]] && conf+=( "${conf_id[@]}" )
+
+ local -n extra_id=BPFT_${id^^}_CONF
+ conf+=( ${EXTRA_ECONF} ${extra_id} )
+
+ einfo "Building ${id} in ${build_dir} ..."
+
+ mkdir -p "${build_dir}" || die
+ pushd "${build_dir}" >/dev/null || die
+
+ edo "${conf[@]}"
+ emake MAKEINFO=: V=1
+ # -j1 to match bug #906155, other packages may be fragile too
+ emake -j1 MAKEINFO=: V=1 DESTDIR="${BPFT_D}" install
+
+ declare -f bpft-${id} >/dev/null && edo bpft-${id}
+
+ popd >/dev/null || die
+ }
+
+ # build with same ordering that crossdev would do
+ bpft-build binutils
+ bpft-build gcc
+
+ if use bin-symlinks; then
+ mkdir -p -- "${BPFT_D}${EPREFIX}"/usr/bin/ || die
+ local bin
+ for bin in "${sysroot}"/bin/*; do
+ ln -rs -- "${bin}" "${BPFT_D}${EPREFIX}"/usr/bin/ || die
+ done
+ fi
+
+ # Delete libdep.a, which has a colliding name and is useless for bpf,
+ # which does not make use of cross-library dependencies: the libdep.a
+ # for the native binutils will do.
+ rm -f ${sysroot}/lib/bfd-plugins/libdep.a || die
+
+ # portage doesn't know the right strip executable to use for CTARGET
+ # and it can lead to .a mangling, notably with 32bit (breaks toolchain)
+ dostrip -x ${bpftdir}/{${CTARGET}/lib{,32},lib/gcc/${CTARGET}}
+
+ # TODO: Check if this is worth doing, it may not be
+ if use strip; then
+ einfo "Stripping ${CTARGET} static libraries ..."
+ find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
+ -exec ${CTARGET}-strip --strip-unneeded {} + || die
+ fi
+}
+
+src_install() {
+ mv "${BPFT_D}${EPREFIX}"/* "${ED}" || die
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
+ eselect compiler-shadow update all
+
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ elog "Note that this package is primarily intended for DTrace, systemd, and related"
+ elog "packages to depend on without needing a manual crossdev setup."
+ elog
+ elog "Settings are oriented only for what these need and simplicity."
+ elog "Use sys-devel/crossdev if need full toolchain/customization:"
+ elog " https://wiki.gentoo.org/wiki/Crossdev"
+ fi
+}
+
+pkg_postrm() {
+ use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
+ eselect compiler-shadow clean all
+}
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 19:22 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-19 19:22 UTC (permalink / raw
To: gentoo-commits
commit: 795051da3d4ad654d06831d535ebb3bdcd0bb617
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 19:21:52 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 19:21:52 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=795051da
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 sparc, #938169
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index 06aaed4a69f3..0099d684a602 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86"
+KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 17:33 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-19 17:33 UTC (permalink / raw
To: gentoo-commits
commit: 3b3ffe608981c70fbf1a8e5db3dfa83c8c28422f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 17:32:43 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 17:32:43 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b3ffe60
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 ppc64, #938169
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index eb6be0a90eb0..06aaed4a69f3 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~riscv ~s390 ~x86"
+KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 17:33 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-19 17:33 UTC (permalink / raw
To: gentoo-commits
commit: aea4b22c67cf1d2294c571e1d771833d18affe72
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 17:32:42 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 17:32:42 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aea4b22c
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 ppc, #938169
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index 9d13387c3272..eb6be0a90eb0 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~mips ~riscv ~s390 ~x86"
+KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~riscv ~s390 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 13:50 Jakov Smolić
0 siblings, 0 replies; 22+ messages in thread
From: Jakov Smolić @ 2024-08-19 13:50 UTC (permalink / raw
To: gentoo-commits
commit: aea32095a29773415f5b368c8dcd6da794886a4a
Author: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 13:50:07 2024 +0000
Commit: Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 13:50:07 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aea32095
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 riscv, #938169
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index c37d730e6e4b..9d13387c3272 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~mips ~s390 ~x86"
+KEYWORDS="~amd64 ~arm64 ~mips ~riscv ~s390 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 12:40 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-08-19 12:40 UTC (permalink / raw
To: gentoo-commits
commit: 22b39a340cfca68fbdce5b709c90328a0267b172
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 12:40:18 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 12:40:18 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=22b39a34
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 mips, #938169
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index d35e9a0c8d23..c37d730e6e4b 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~s390 ~x86"
+KEYWORDS="~amd64 ~arm64 ~mips ~s390 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 10:51 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-08-19 10:51 UTC (permalink / raw
To: gentoo-commits
commit: 70b8a6b7f70bfda6cf6b477cecd1060029d0c66a
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 10:51:29 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 10:51:29 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=70b8a6b7
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 arm64, #938169
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index a70103e1d943..0aeeed414bb4 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 10:44 Arthur Zamarin
0 siblings, 0 replies; 22+ messages in thread
From: Arthur Zamarin @ 2024-08-19 10:44 UTC (permalink / raw
To: gentoo-commits
commit: b2bdeae00917f7ec5edbef5ee4add2af10192bfc
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 10:44:13 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 10:44:13 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2bdeae0
sys-devel/bpf-toolchain: Keyword 14.2.0-r2 x86, #938169
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index 798f0b4184bd..a70103e1d943 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-19 8:42 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-19 8:42 UTC (permalink / raw
To: gentoo-commits
commit: d95b4a69d28c49a1c5e793e18ed8d823b5dd15b9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 19 08:41:26 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 19 08:41:52 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d95b4a69
sys-devel/bpf-toolchain: unkeyword 14.2.0-r2 for -*
Bug: https://bugs.gentoo.org/938169
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index dfd388189afa..798f0b4184bd 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="-* ~amd64"
+KEYWORDS="~amd64"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-16 0:39 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-16 0:39 UTC (permalink / raw
To: gentoo-commits
commit: 536102c0b42ff966ac4e37e19b0f60ad6e90ddec
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 16 00:37:48 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 16 00:38:59 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=536102c0
sys-devel/bpf-toolchain: drop obsolete comment
I copied this comment from mingw64-toolchain and was waiting for
builds to finish on a few machines to see if it made any difference
before updating the number and apparently it.. barely does?
I'll come back to it another time in case I'm missing something though.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index ddd76d00070c..dfd388189afa 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -198,7 +198,7 @@ src_compile() {
# and it can lead to .a mangling, notably with 32bit (breaks toolchain)
dostrip -x ${bpftdir}/{${CTARGET}/lib{,32},lib/gcc/${CTARGET}}
- # ... and instead do it here given this saves ~60MB
+ # TODO: Check if this is worth doing, it may not be
if use strip; then
einfo "Stripping ${CTARGET} static libraries ..."
find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-15 23:47 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-15 23:47 UTC (permalink / raw
To: gentoo-commits
commit: 21f52fa7265f10d9d62df5b9d4194b772e81795b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 15 23:46:12 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 23:46:22 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21f52fa7
sys-devel/bpf-toolchain: fix stripping like dev-util/mingw64-toolchain does
(Revbumped in previous commit.)
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index 093dcc4f54dd..ddd76d00070c 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -41,8 +41,7 @@ LICENSE="
"
SLOT="0"
KEYWORDS="-* ~amd64"
-# TODO: USE=strip from dev-util/mingw64-toolchain?
-IUSE="+bin-symlinks custom-cflags"
+IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
dev-libs/gmp:=
@@ -194,6 +193,17 @@ src_compile() {
# which does not make use of cross-library dependencies: the libdep.a
# for the native binutils will do.
rm -f ${sysroot}/lib/bfd-plugins/libdep.a || die
+
+ # portage doesn't know the right strip executable to use for CTARGET
+ # and it can lead to .a mangling, notably with 32bit (breaks toolchain)
+ dostrip -x ${bpftdir}/{${CTARGET}/lib{,32},lib/gcc/${CTARGET}}
+
+ # ... and instead do it here given this saves ~60MB
+ if use strip; then
+ einfo "Stripping ${CTARGET} static libraries ..."
+ find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
+ -exec ${CTARGET}-strip --strip-unneeded {} + || die
+ fi
}
src_install() {
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-15 23:47 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-15 23:47 UTC (permalink / raw
To: gentoo-commits
commit: 9d4cd3b12cec5ef754121d7b0afa20d2845eee9b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 15 23:34:03 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 23:34:20 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d4cd3b1
sys-devel/bpf-toolchain: add shadowman calls from mingw64-toolchain
Signed-off-by: Sam James <sam <AT> gentoo.org>
...-toolchain-14.2.0-r1.ebuild => bpf-toolchain-14.2.0-r2.ebuild} | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r1.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
similarity index 95%
rename from sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r1.ebuild
rename to sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
index 0c5a58f41988..093dcc4f54dd 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r1.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r2.ebuild
@@ -203,6 +203,9 @@ src_install() {
}
pkg_postinst() {
+ use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
+ eselect compiler-shadow update all
+
if [[ ! ${REPLACING_VERSIONS} ]]; then
elog "Note that this package is primarily intended for DTrace, systemd, and related"
elog "packages to depend on without needing a manual crossdev setup."
@@ -212,3 +215,8 @@ pkg_postinst() {
elog " https://wiki.gentoo.org/wiki/Crossdev"
fi
}
+
+pkg_postrm() {
+ use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
+ eselect compiler-shadow clean all
+}
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-15 22:18 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-15 22:18 UTC (permalink / raw
To: gentoo-commits
commit: 9c908753edf4523644b47779bc3d9894d247e69c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 15 22:15:10 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 22:17:33 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c908753
sys-devel/bpf-toolchain: add USE=bin-symlinks
Note that unlike dev-util/mingw64-toolchain, we're enabling it by default
because it'll be pretty uncommon for anyone to have a crossdev-built
toolchain for it. This is needed to avoid conflicts if someone wants
to build a bpf-unknown-none toolchain via crossdev where an ebuild
depends on bpf-toolchain (wouldn't be possible before because of file
conflicts).
Also, with it off by default, we would have to add some hacks in e.g.
the systemd ebuild to make it work by mangling PATH and things get
tricky there especially given only a small part of the build would even use it.
May change mind on this later if needed though.
Signed-off-by: Sam James <sam <AT> gentoo.org>
...n-14.2.0.ebuild => bpf-toolchain-14.2.0-r1.ebuild} | 19 ++++++++++++++++---
sys-devel/bpf-toolchain/metadata.xml | 7 +++++++
2 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r1.ebuild
similarity index 92%
rename from sys-devel/bpf-toolchain/bpf-toolchain-14.2.0.ebuild
rename to sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r1.ebuild
index aba05ad111a3..0c5a58f41988 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0-r1.ebuild
@@ -41,8 +41,8 @@ LICENSE="
"
SLOT="0"
KEYWORDS="-* ~amd64"
-# TODO: USE=strip, USE=bin-symlinks from dev-util/mingw64-toolchain
-IUSE="custom-cflags"
+# TODO: USE=strip from dev-util/mingw64-toolchain?
+IUSE="+bin-symlinks custom-cflags"
RDEPEND="
dev-libs/gmp:=
@@ -50,6 +50,10 @@ RDEPEND="
dev-libs/mpfr:=
sys-libs/zlib:=
virtual/libiconv
+ bin-symlinks? (
+ !cross-bpf-unknown-none/binutils
+ !cross-bpf-unknown-none/gcc
+ )
"
DEPEND="${RDEPEND}"
@@ -81,7 +85,8 @@ src_compile() {
CTARGET=bpf-unknown-none
BPFT_D=${T}/root # moved to ${D} in src_install
- local prefix=${EPREFIX}/usr
+ local bpftdir=/usr/lib/${PN}
+ local prefix=${EPREFIX}${bpftdir}
local sysroot=${BPFT_D}${prefix}
local -x PATH=${sysroot}/bin:${PATH}
@@ -177,6 +182,14 @@ src_compile() {
bpft-build binutils
bpft-build gcc
+ if use bin-symlinks; then
+ mkdir -p -- "${BPFT_D}${EPREFIX}"/usr/bin/ || die
+ local bin
+ for bin in "${sysroot}"/bin/*; do
+ ln -rs -- "${bin}" "${BPFT_D}${EPREFIX}"/usr/bin/ || die
+ done
+ fi
+
# Delete libdep.a, which has a colliding name and is useless for bpf,
# which does not make use of cross-library dependencies: the libdep.a
# for the native binutils will do.
diff --git a/sys-devel/bpf-toolchain/metadata.xml b/sys-devel/bpf-toolchain/metadata.xml
index 12065082990f..34b44dd721cd 100644
--- a/sys-devel/bpf-toolchain/metadata.xml
+++ b/sys-devel/bpf-toolchain/metadata.xml
@@ -5,6 +5,13 @@
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
+ <use>
+ <flag name="bin-symlinks">
+ Symlink executables to usr/bin to be in default
+ PATH (conflicts with crossdev bpf, and crossdev
+ is preferable for a fully featured toolchain)
+ </flag>
+ </use>
<upstream>
<remote-id type="cpe">cpe:/a:gnu:gcc</remote-id>
<remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/
@ 2024-08-07 2:53 Sam James
0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2024-08-07 2:53 UTC (permalink / raw
To: gentoo-commits
commit: e802488062f680f9a5ffe2a2ccb3bbefc3a8adb5
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon May 6 17:30:21 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 7 02:52:39 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8024880
sys-devel/bpf-toolchain: new package, add 14.2.0
Heavily inspired by, and based on, dev-util/mingw64-toolchain. This provides
the bpf-unknown-none toolchain for use with DTrace (to be packaged) and
systemd.
Users may wish to use crossdev if they want to customise their toolchain -
this is "just" a convenience option for e.g. aforementioned ebuilds to depend
on and have things Just Work.
Bug: https://bugs.gentoo.org/917228
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/bpf-toolchain/Manifest | 2 +
.../bpf-toolchain/bpf-toolchain-14.2.0.ebuild | 201 +++++++++++++++++++++
sys-devel/bpf-toolchain/metadata.xml | 12 ++
3 files changed, 215 insertions(+)
diff --git a/sys-devel/bpf-toolchain/Manifest b/sys-devel/bpf-toolchain/Manifest
new file mode 100644
index 000000000000..e1ae3bc4043c
--- /dev/null
+++ b/sys-devel/bpf-toolchain/Manifest
@@ -0,0 +1,2 @@
+DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
+DIST gcc-14.2.0.tar.xz 92306460 BLAKE2B 87baf2a06dfa75d8fb6cd62c747ef1f57d3b9bbbe33a360d9ed3de4b4dbeaa8d920504c67e409bd9863414202c14fd854b46108e984418171205119216d03d3b SHA512 932bdef0cda94bacedf452ab17f103c0cb511ff2cec55e9112fc0328cbf1d803b42595728ea7b200e0a057c03e85626f937012e49a7515bc5dd256b2bf4bc396
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0.ebuild
new file mode 100644
index 000000000000..aba05ad111a3
--- /dev/null
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-14.2.0.ebuild
@@ -0,0 +1,201 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo flag-o-matic toolchain-funcs
+
+# Versioning is just the GCC version in full (so may include a snapshot
+# date). Unlike dev-util/mingw64-toolchain, which this ebuild was heavily
+# inspired by, there's no "third component" here to version on, just
+# GCC + binutils.
+#
+# Do _p1++ rather than revbump on Binutils changes
+# Not using Gentoo patchsets for simplicity, their changes are mostly unneeded here.
+GCC_PV=${PV/_p/-}
+BINUTILS_PV=2.43
+
+DESCRIPTION="All-in-one bpf toolchain for building DTrace and systemd without crossdev"
+HOMEPAGE="
+ https://gcc.gnu.org/
+ https://sourceware.org/binutils/
+ https://gcc.gnu.org/wiki/BPFBackEnd
+"
+SRC_URI="
+ mirror://gnu/binutils/binutils-${BINUTILS_PV}.tar.xz
+"
+if [[ ${GCC_PV} == *-* ]]; then
+ SRC_URI+=" mirror://gcc/snapshots/${GCC_PV}/gcc-${GCC_PV}.tar.xz"
+else
+ SRC_URI+="
+ mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
+ mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
+ "
+fi
+S="${WORKDIR}"
+
+# l1:binutils+gcc, l2:gcc(libraries)
+LICENSE="
+ GPL-3+
+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
+"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+# TODO: USE=strip, USE=bin-symlinks from dev-util/mingw64-toolchain
+IUSE="custom-cflags"
+
+RDEPEND="
+ dev-libs/gmp:=
+ dev-libs/mpc:=
+ dev-libs/mpfr:=
+ sys-libs/zlib:=
+ virtual/libiconv
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=()
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} == binary ]] && return
+
+ tc-is-cross-compiler &&
+ die "cross-compilation of the toolchain itself is unsupported"
+}
+
+src_prepare() {
+ # rename directories to simplify both patching and the ebuild
+ mv binutils{-${BINUTILS_PV},} || die
+ mv gcc{-${GCC_PV},} || die
+
+ default
+}
+
+src_compile() {
+ # src_compile is kept similar to dev-util/mingw64-toolchain
+ # at least for now for ease of comparison etc.
+ #
+ # not great but do everything in src_compile given bootstrapping
+ # process needs to be done in steps of configure+compile+install
+ # (done modular to have most package-specific things in one place)
+
+ CTARGET=bpf-unknown-none
+
+ BPFT_D=${T}/root # moved to ${D} in src_install
+ local prefix=${EPREFIX}/usr
+ local sysroot=${BPFT_D}${prefix}
+ local -x PATH=${sysroot}/bin:${PATH}
+
+ use custom-cflags || strip-flags # fancy flags are not realistic here
+
+ # global configure flags
+ local conf=(
+ --build=${CBUILD:-${CHOST}}
+ --target=${CTARGET}
+ --{doc,info,man}dir=/.skip # let the real binutils+gcc handle docs
+ MAKEINFO=: #922230
+ )
+
+ # binutils
+ local conf_binutils=(
+ --prefix="${prefix}"
+ --host=${CHOST}
+ --disable-cet
+ --disable-default-execstack
+ --disable-nls
+ --disable-shared
+ --with-system-zlib
+ --without-debuginfod
+ --without-msgpack
+ --without-zstd
+ )
+
+ # gcc (minimal -- if need more, disable only in stage1 / enable in stage3)
+ local conf_gcc=(
+ --prefix="${prefix}"
+ --host=${CHOST}
+ --disable-bootstrap
+ --disable-cc1
+ --disable-cet
+ --disable-gcov #843989
+ --disable-gomp
+ --disable-nls # filename collisions
+ --disable-libcc1
+ --disable-libquadmath
+ --disable-libsanitizer
+ --disable-libssp
+ --disable-libvtv
+ --disable-shared
+ --disable-werror
+ --enable-languages=c
+ --with-gcc-major-version-only
+ --with-system-zlib
+ --without-isl
+ --without-zstd
+ --disable-multilib
+ )
+
+ # libstdc++ may misdetect sys/sdt.h on systemtap-enabled system and fail
+ # (not passed in conf_gcc above given it is lost in sub-configure calls)
+ local -x glibcxx_cv_sys_sdt_h=no
+
+ # bpft-build <path/package-name>
+ # -> ./configure && make && make install && bpft-package()
+ # passes conf and conf_package to configure, and users can add options
+ # through environment with e.g.
+ # BPFT_BINUTILS_CONF="--some-option"
+ # EXTRA_ECONF="--global-option" (generic naming for if not reading this)
+ bpft-build() {
+ local id=${1##*/}
+ local build_dir=${WORKDIR}/${1}-build
+
+ # econf is not allowed in src_compile and its defaults are
+ # mostly unused here, so use configure directly
+ local conf=( "${WORKDIR}/${1}"/configure "${conf[@]}" )
+
+ local -n conf_id=conf_${id}
+ [[ ${conf_id@a} == *a* ]] && conf+=( "${conf_id[@]}" )
+
+ local -n extra_id=BPFT_${id^^}_CONF
+ conf+=( ${EXTRA_ECONF} ${extra_id} )
+
+ einfo "Building ${id} in ${build_dir} ..."
+
+ mkdir -p "${build_dir}" || die
+ pushd "${build_dir}" >/dev/null || die
+
+ edo "${conf[@]}"
+ emake MAKEINFO=: V=1
+ # -j1 to match bug #906155, other packages may be fragile too
+ emake -j1 MAKEINFO=: V=1 DESTDIR="${BPFT_D}" install
+
+ declare -f bpft-${id} >/dev/null && edo bpft-${id}
+
+ popd >/dev/null || die
+ }
+
+ # build with same ordering that crossdev would do
+ bpft-build binutils
+ bpft-build gcc
+
+ # Delete libdep.a, which has a colliding name and is useless for bpf,
+ # which does not make use of cross-library dependencies: the libdep.a
+ # for the native binutils will do.
+ rm -f ${sysroot}/lib/bfd-plugins/libdep.a || die
+}
+
+src_install() {
+ mv "${BPFT_D}${EPREFIX}"/* "${ED}" || die
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ elog "Note that this package is primarily intended for DTrace, systemd, and related"
+ elog "packages to depend on without needing a manual crossdev setup."
+ elog
+ elog "Settings are oriented only for what these need and simplicity."
+ elog "Use sys-devel/crossdev if need full toolchain/customization:"
+ elog " https://wiki.gentoo.org/wiki/Crossdev"
+ fi
+}
diff --git a/sys-devel/bpf-toolchain/metadata.xml b/sys-devel/bpf-toolchain/metadata.xml
new file mode 100644
index 000000000000..12065082990f
--- /dev/null
+++ b/sys-devel/bpf-toolchain/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>toolchain@gentoo.org</email>
+ <name>Gentoo Toolchain Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:gcc</remote-id>
+ <remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
+ </upstream>
+</pkgmetadata>
^ permalink raw reply related [flat|nested] 22+ messages in thread
end of thread, other threads:[~2024-11-02 10:00 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-19 12:40 [gentoo-commits] repo/gentoo:master commit in: sys-devel/bpf-toolchain/ Arthur Zamarin
-- strict thread matches above, loose matches on Subject: below --
2024-11-02 10:00 Arthur Zamarin
2024-09-12 14:58 Sam James
2024-09-09 20:44 Arthur Zamarin
2024-09-09 13:46 Sam James
2024-09-08 21:59 Sam James
2024-08-31 6:39 Sam James
2024-08-23 13:00 Arthur Zamarin
2024-08-20 19:00 Sam James
2024-08-19 19:22 Sam James
2024-08-19 17:33 Sam James
2024-08-19 17:33 Sam James
2024-08-19 13:50 Jakov Smolić
2024-08-19 12:40 Arthur Zamarin
2024-08-19 10:51 Arthur Zamarin
2024-08-19 10:44 Arthur Zamarin
2024-08-19 8:42 Sam James
2024-08-16 0:39 Sam James
2024-08-15 23:47 Sam James
2024-08-15 23:47 Sam James
2024-08-15 22:18 Sam James
2024-08-07 2:53 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox