commit: 13e76f898af7f54a65691103ff09fec342a32934 Author: David Seifert <soap <AT> gentoo <DOT> org> AuthorDate: Wed Jan 14 10:32:14 2026 +0000 Commit: David Seifert <soap <AT> gentoo <DOT> org> CommitDate: Wed Jan 14 10:32:14 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=13e76f89
dev-build/b2: add 5.4.2 Signed-off-by: David Seifert <soap <AT> gentoo.org> dev-build/b2/Manifest | 1 + dev-build/b2/b2-5.4.2.ebuild | 72 ++++++++++ .../files/b2-5.4.2-no-implicit-march-flags.patch | 148 +++++++++++++++++++++ 3 files changed, 221 insertions(+) diff --git a/dev-build/b2/Manifest b/dev-build/b2/Manifest index 44b874306167..6bbbd68e5b08 100644 --- a/dev-build/b2/Manifest +++ b/dev-build/b2/Manifest @@ -1,2 +1,3 @@ DIST b2-5.3.2.tar.gz 1195900 BLAKE2B cc64ce9f70d1afcfdd43a4c709124fff5c9fa15c79c4309b4869451cf767c2ec3bd6834219e325256f9dc7b9ffa4cb00b74a2a9359be98be86656a98ce386bde SHA512 347c73fd3156fb2a050c8c928715836717ecec41dd05ace665e27955235a6dbb6a85086a98e03e5e37ace2a35b951f2c131e02c3eeb2355cb7b9571ebd12678d DIST b2-5.3.3.tar.gz 1196146 BLAKE2B d5899fec2bcc9acf0e9785d1c81408008410df59a07e97d0ab81de0f7b50094bb38749f0b47856fc35cefd3560f6ece6fdecaa28a25784cbcafbe44e4a47b2de SHA512 9fc40f746fbc056d3bcd863a5f04028bc4b896c0c96229424833a4819666820678e7456e16374323b31716648428af4453a2235cd086234c8b16b03e07eb91f3 +DIST b2-5.4.2.tar.gz 1201271 BLAKE2B 573a94ce0300fee53a161e1ba7838890e0a8ea074b568eb2df479f70639d05e28b6d2b4a301d82dddc58f26a83f8d2c41cac41272fe689d456007acb49d1ca6f SHA512 fd68cedc9936a463525df47b87b10c8fb72d9eec8355fd1b460ddf4a9c25369beb282a6a8229d54a01d56a82fcc5224af837fc8bc58042af02e688e9c0d4f4c6 diff --git a/dev-build/b2/b2-5.4.2.ebuild b/dev-build/b2/b2-5.4.2.ebuild new file mode 100644 index 000000000000..701181916711 --- /dev/null +++ b/dev-build/b2/b2-5.4.2.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +MY_PV="$(ver_rs 1- _)" + +DESCRIPTION="A system for large project software construction, simple to use and powerful" +HOMEPAGE="https://www.bfgroup.xyz/b2/" +SRC_URI="https://github.com/bfgroup/b2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}/src" + +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="examples" +RESTRICT="test" + +RDEPEND="!dev-util/boost-build" + +PATCHES=( + "${FILESDIR}"/${PN}-4.9.2-disable_python_rpath.patch + "${FILESDIR}"/${PN}-4.9.2-darwin-gentoo-toolchain.patch + "${FILESDIR}"/${PN}-4.9.2-add-none-feature-options.patch + "${FILESDIR}"/${PN}-5.4.2-no-implicit-march-flags.patch +) + +src_configure() { + # need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100) + append-lfs-flags +} + +src_compile() { + cd engine || die + + # don't call windres since it leads to broken relocations + export B2_DONT_EMBED_MANIFEST=1 + + # upstream doesn't want separate flags for CPPFLAGS/LDFLAGS + # https://github.com/bfgroup/b2/pull/187#issuecomment-1335688424 + edo ${CONFIG_SHELL:-${BASH}} ./build.sh cxx \ + --cxx="$(tc-getCXX)" \ + --cxxflags="-pthread ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}" \ + -d+2 \ + --without-python +} + +src_test() { + # Forget tests, b2 is a lost cause + : +} + +src_install() { + dobin engine/b2 + + insinto /usr/share/b2/src + doins -r "${FILESDIR}/site-config.jam" \ + build-system.jam ../example/user-config.jam \ + build contrib options tools util + + find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die + + dodoc ../notes/relative_source_paths.txt + + if use examples; then + docinto examples + dodoc -r ../example/. + docompress -x /usr/share/doc/${PF}/examples + fi +} diff --git a/dev-build/b2/files/b2-5.4.2-no-implicit-march-flags.patch b/dev-build/b2/files/b2-5.4.2-no-implicit-march-flags.patch new file mode 100644 index 000000000000..bd8f862fd0e9 --- /dev/null +++ b/dev-build/b2/files/b2-5.4.2-no-implicit-march-flags.patch @@ -0,0 +1,148 @@ +--- a/tools/gcc.jam ++++ b/tools/gcc.jam +@@ -1157,145 +1157,6 @@ + # x86 and compatible + # The 'native' option appeared in gcc 4.2 so we cannot safely use it as default. + # Use i686 instead for 32-bit. +-toolset.flags gcc OPTIONS <architecture>x86/<address-model>32/<instruction-set> : -march=i686 ; +-cpu-flags gcc OPTIONS : x86 : native : -march=native ; +-cpu-flags gcc OPTIONS : x86 : i486 : -march=i486 ; +-cpu-flags gcc OPTIONS : x86 : i586 : -march=i586 ; +-cpu-flags gcc OPTIONS : x86 : i686 : -march=i686 ; +-cpu-flags gcc OPTIONS : x86 : pentium : -march=pentium ; +-cpu-flags gcc OPTIONS : x86 : pentium-mmx : -march=pentium-mmx ; +-cpu-flags gcc OPTIONS : x86 : pentiumpro : -march=pentiumpro ; +-cpu-flags gcc OPTIONS : x86 : pentium2 : -march=pentium2 ; +-cpu-flags gcc OPTIONS : x86 : pentium3 : -march=pentium3 ; +-cpu-flags gcc OPTIONS : x86 : pentium3m : -march=pentium3m ; +-cpu-flags gcc OPTIONS : x86 : pentium-m : -march=pentium-m ; +-cpu-flags gcc OPTIONS : x86 : pentium4 : -march=pentium4 ; +-cpu-flags gcc OPTIONS : x86 : pentium4m : -march=pentium4m ; +-cpu-flags gcc OPTIONS : x86 : prescott : -march=prescott ; +-cpu-flags gcc OPTIONS : x86 : nocona : -march=nocona ; +-cpu-flags gcc OPTIONS : x86 : core2 : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : conroe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : conroe-xe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : conroe-l : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : allendale : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : wolfdale : -march=core2 -msse4.1 ; +-cpu-flags gcc OPTIONS : x86 : merom : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : merom-xe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : kentsfield : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : kentsfield-xe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : yorksfield : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : penryn : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : corei7 : -march=corei7 ; +-cpu-flags gcc OPTIONS : x86 : nehalem : -march=corei7 ; +-cpu-flags gcc OPTIONS : x86 : corei7-avx : -march=corei7-avx ; +-cpu-flags gcc OPTIONS : x86 : sandy-bridge : -march=corei7-avx ; +-cpu-flags gcc OPTIONS : x86 : core-avx-i : -march=core-avx-i ; +-cpu-flags gcc OPTIONS : x86 : ivy-bridge : -march=core-avx-i ; +-cpu-flags gcc OPTIONS : x86 : haswell : -march=core-avx-i -mavx2 -mfma -mbmi -mbmi2 -mlzcnt ; +-cpu-flags gcc OPTIONS : x86 : broadwell : -march=broadwell ; +-cpu-flags gcc OPTIONS : x86 : skylake : -march=skylake ; +-cpu-flags gcc OPTIONS : x86 : skylake-avx512 : -march=skylake-avx512 ; +-cpu-flags gcc OPTIONS : x86 : cannonlake : -march=skylake-avx512 -mavx512vbmi -mavx512ifma -msha ; +-cpu-flags gcc OPTIONS : x86 : icelake-client : -march=icelake-client ; +-cpu-flags gcc OPTIONS : x86 : icelake-server : -march=icelake-server ; +-cpu-flags gcc OPTIONS : x86 : cascadelake : -march=skylake-avx512 -mavx512vnni ; +-cpu-flags gcc OPTIONS : x86 : cooperlake : -march=cooperlake ; +-cpu-flags gcc OPTIONS : x86 : tigerlake : -march=tigerlake ; +-cpu-flags gcc OPTIONS : x86 : rocketlake : -march=rocketlake ; +-cpu-flags gcc OPTIONS : x86 : alderlake : -march=alderlake ; +-cpu-flags gcc OPTIONS : x86 : sapphirerapids : -march=sapphirerapids ; +-cpu-flags gcc OPTIONS : x86 : k6 : -march=k6 ; +-cpu-flags gcc OPTIONS : x86 : k6-2 : -march=k6-2 ; +-cpu-flags gcc OPTIONS : x86 : k6-3 : -march=k6-3 ; +-cpu-flags gcc OPTIONS : x86 : athlon : -march=athlon ; +-cpu-flags gcc OPTIONS : x86 : athlon-tbird : -march=athlon-tbird ; +-cpu-flags gcc OPTIONS : x86 : athlon-4 : -march=athlon-4 ; +-cpu-flags gcc OPTIONS : x86 : athlon-xp : -march=athlon-xp ; +-cpu-flags gcc OPTIONS : x86 : athlon-mp : -march=athlon-mp ; +-## +-cpu-flags gcc OPTIONS : x86 : k8 : -march=k8 ; +-cpu-flags gcc OPTIONS : x86 : opteron : -march=opteron ; +-cpu-flags gcc OPTIONS : x86 : athlon64 : -march=athlon64 ; +-cpu-flags gcc OPTIONS : x86 : athlon-fx : -march=athlon-fx ; +-cpu-flags gcc OPTIONS : x86 : k8-sse3 : -march=k8-sse3 ; +-cpu-flags gcc OPTIONS : x86 : opteron-sse3 : -march=opteron-sse3 ; +-cpu-flags gcc OPTIONS : x86 : athlon64-sse3 : -march=athlon64-sse3 ; +-cpu-flags gcc OPTIONS : x86 : amdfam10 : -march=amdfam10 ; +-cpu-flags gcc OPTIONS : x86 : barcelona : -march=barcelona ; +-cpu-flags gcc OPTIONS : x86 : bdver1 : -march=bdver1 ; +-cpu-flags gcc OPTIONS : x86 : bdver2 : -march=bdver2 ; +-cpu-flags gcc OPTIONS : x86 : bdver3 : -march=bdver3 ; +-cpu-flags gcc OPTIONS : x86 : bdver4 : -march=bdver4 ; +-cpu-flags gcc OPTIONS : x86 : btver1 : -march=btver1 ; +-cpu-flags gcc OPTIONS : x86 : btver2 : -march=btver2 ; +-cpu-flags gcc OPTIONS : x86 : znver1 : -march=znver1 ; +-cpu-flags gcc OPTIONS : x86 : znver2 : -march=znver2 ; +-cpu-flags gcc OPTIONS : x86 : znver3 : -march=znver3 ; +-cpu-flags gcc OPTIONS : x86 : winchip-c6 : -march=winchip-c6 ; +-cpu-flags gcc OPTIONS : x86 : winchip2 : -march=winchip2 ; +-cpu-flags gcc OPTIONS : x86 : c3 : -march=c3 ; +-cpu-flags gcc OPTIONS : x86 : c3-2 : -march=c3-2 ; +-cpu-flags gcc OPTIONS : x86 : c7 : -march=c7 ; +-## +-cpu-flags gcc OPTIONS : x86 : atom : -march=atom ; +-# Sparc +-cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 : default ; +-cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ; +-cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ; +-cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ; +-cpu-flags gcc OPTIONS : sparc : sparclite : -mcpu=sparclite ; +-cpu-flags gcc OPTIONS : sparc : hypersparc : -mcpu=hypersparc ; +-cpu-flags gcc OPTIONS : sparc : sparclite86x : -mcpu=sparclite86x ; +-cpu-flags gcc OPTIONS : sparc : f930 : -mcpu=f930 ; +-cpu-flags gcc OPTIONS : sparc : f934 : -mcpu=f934 ; +-cpu-flags gcc OPTIONS : sparc : sparclet : -mcpu=sparclet ; +-cpu-flags gcc OPTIONS : sparc : tsc701 : -mcpu=tsc701 ; +-cpu-flags gcc OPTIONS : sparc : v9 : -mcpu=v9 ; +-cpu-flags gcc OPTIONS : sparc : ultrasparc : -mcpu=ultrasparc ; +-cpu-flags gcc OPTIONS : sparc : ultrasparc3 : -mcpu=ultrasparc3 ; +-# RS/6000 & PowerPC +-cpu-flags gcc OPTIONS : power : 403 : -mcpu=403 ; +-cpu-flags gcc OPTIONS : power : 505 : -mcpu=505 ; +-cpu-flags gcc OPTIONS : power : 601 : -mcpu=601 ; +-cpu-flags gcc OPTIONS : power : 602 : -mcpu=602 ; +-cpu-flags gcc OPTIONS : power : 603 : -mcpu=603 ; +-cpu-flags gcc OPTIONS : power : 603e : -mcpu=603e ; +-cpu-flags gcc OPTIONS : power : 604 : -mcpu=604 ; +-cpu-flags gcc OPTIONS : power : 604e : -mcpu=604e ; +-cpu-flags gcc OPTIONS : power : 620 : -mcpu=620 ; +-cpu-flags gcc OPTIONS : power : 630 : -mcpu=630 ; +-cpu-flags gcc OPTIONS : power : 740 : -mcpu=740 ; +-cpu-flags gcc OPTIONS : power : 7400 : -mcpu=7400 ; +-cpu-flags gcc OPTIONS : power : 7450 : -mcpu=7450 ; +-cpu-flags gcc OPTIONS : power : 750 : -mcpu=750 ; +-cpu-flags gcc OPTIONS : power : 801 : -mcpu=801 ; +-cpu-flags gcc OPTIONS : power : 821 : -mcpu=821 ; +-cpu-flags gcc OPTIONS : power : 823 : -mcpu=823 ; +-cpu-flags gcc OPTIONS : power : 860 : -mcpu=860 ; +-cpu-flags gcc OPTIONS : power : 970 : -mcpu=970 ; +-cpu-flags gcc OPTIONS : power : 8540 : -mcpu=8540 ; +-cpu-flags gcc OPTIONS : power : power : -mcpu=power ; +-cpu-flags gcc OPTIONS : power : power2 : -mcpu=power2 ; +-cpu-flags gcc OPTIONS : power : power3 : -mcpu=power3 ; +-cpu-flags gcc OPTIONS : power : power4 : -mcpu=power4 ; +-cpu-flags gcc OPTIONS : power : power5 : -mcpu=power5 ; +-cpu-flags gcc OPTIONS : power : powerpc : -mcpu=powerpc ; +-cpu-flags gcc OPTIONS : power : powerpc64 : -mcpu=powerpc64 ; +-cpu-flags gcc OPTIONS : power : rios : -mcpu=rios ; +-cpu-flags gcc OPTIONS : power : rios1 : -mcpu=rios1 ; +-cpu-flags gcc OPTIONS : power : rios2 : -mcpu=rios2 ; +-cpu-flags gcc OPTIONS : power : rsc : -mcpu=rsc ; +-cpu-flags gcc OPTIONS : power : rs64a : -mcpu=rs64 ; +-cpu-flags gcc OPTIONS : s390x : z196 : -march=z196 ; +-cpu-flags gcc OPTIONS : s390x : zEC12 : -march=zEC12 ; +-cpu-flags gcc OPTIONS : s390x : z13 : -march=z13 ; +-cpu-flags gcc OPTIONS : s390x : z14 : -march=z14 ; +-cpu-flags gcc OPTIONS : s390x : z15 : -march=z15 ; +-# ARM +-cpu-flags gcc OPTIONS : arm : cortex-a9+vfpv3 : -mcpu=cortex-a9 -mfpu=vfpv3 ; +-cpu-flags gcc OPTIONS : arm : cortex-a53 : -mcpu=cortex-a53 ; +-cpu-flags gcc OPTIONS : arm : cortex-r5 : -mcpu=cortex-r5 ; +-cpu-flags gcc OPTIONS : arm : cortex-r5+vfpv3-d16 : -mcpu=cortex-r5 -mfpu=vfpv3-d16 ; + # AIX variant of RS/6000 & PowerPC + toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ; +
