diff options
Diffstat (limited to 'dev-build/b2')
-rw-r--r-- | dev-build/b2/Manifest | 11 | ||||
-rw-r--r-- | dev-build/b2/b2-4.10.1.ebuild | 70 | ||||
-rw-r--r-- | dev-build/b2/b2-5.0.0.ebuild | 72 | ||||
-rw-r--r-- | dev-build/b2/files/b2-4.9.2-add-none-feature-options.patch | 22 | ||||
-rw-r--r-- | dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch | 16 | ||||
-rw-r--r-- | dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch | 11 | ||||
-rw-r--r-- | dev-build/b2/files/b2-4.9.2-no-implicit-march-flags.patch | 148 | ||||
-rw-r--r-- | dev-build/b2/files/b2-4.9.2-odr.patch | 54 | ||||
-rw-r--r-- | dev-build/b2/files/site-config.jam | 11 | ||||
-rw-r--r-- | dev-build/b2/metadata.xml | 11 |
10 files changed, 426 insertions, 0 deletions
diff --git a/dev-build/b2/Manifest b/dev-build/b2/Manifest new file mode 100644 index 000000000000..e3349aef11e6 --- /dev/null +++ b/dev-build/b2/Manifest @@ -0,0 +1,11 @@ +AUX b2-4.9.2-add-none-feature-options.patch 588 BLAKE2B b2531258cd54eb73f9a0b9172d07d5e71856cf1112d7e39bd82e3cf14416aee92681833f73a2e0627ee787757dd12ca82d3d132a3a5b5c396cf8243ce2330767 SHA512 144a348afa5af165da3cbc922fd12a63f57d7d2c4d2300342fe08ef506eea8819dab3d8b8181179205530aca98e931b8a1062f4c3e0c7078a637c9aede2949e4 +AUX b2-4.9.2-darwin-gentoo-toolchain.patch 399 BLAKE2B 213ddbeac6be079df8383ac51c1935c21c7c4e9c2fad2dc71cc0e6317d1bcb282d7fa26997eb677408a5b5fdf2809062c54be18265dd618ec01cc771d99fdff1 SHA512 9d69ecab3cdd58915269491ed98824c554a5291820b8c3116d3aa36acee69edca4eb1528baeece513d290c20fcedabd342d426aa2c153f7ad5f08e0815357868 +AUX b2-4.9.2-disable_python_rpath.patch 343 BLAKE2B 7b8449db1054dcee76ecbe1b1c826ae3d6964acfcfc0850ff3c75d3c71b043587bccac6b96797229c6dec39beb593893d16ae93a4d7fd16b969129fe63f73d0b SHA512 99bc1260f3d36faf60ab2837039466201bddfeec5c60f65c1c5e52d6d6c1667d419376328f8202596aa2b66448308175d2504062ee6e1708ea0f44d02988ceb4 +AUX b2-4.9.2-no-implicit-march-flags.patch 8376 BLAKE2B 50e0b8effbb268467d90cc51df70dc4bd234789b352a279d9bb3e60161be80296f5f31f4a0d2a3d1ae2380f3079f7b950b24ef494574e25bbda48b516c6aacbb SHA512 0089a48cbe3e9e4f222e5cd1e9e12a5c4d16857b002a1c849f4cf6f8d7935c0a9b1e0f51ced51bf5346c2fdcbd214ce05e3c144c98fbf82a9842c45b59c19740 +AUX b2-4.9.2-odr.patch 1109 BLAKE2B 0bf70f2b2237369acd5089d1d1c6e1362f1d3528b036a7f7b9c5c4d077e60850f45c87a67c830f441297e09be2f7dd8bf41ea45a2c66b307678404c4a0db0ed5 SHA512 90ca58661322b35c4af6543558015368385a1b0e12740cd76723d893f95411645ec4a3a23694503863dd786b73a0ec9b0cb34b473e357334d8e82d973f800e4b +AUX site-config.jam 685 BLAKE2B b9f73808b6ca454c2220b9d296e7f131c01e6339f545b07160df5f81435926104b134e6baf5af12faf675af074d5de43952678904242f2d7853acd5268bafd2a SHA512 10fc14e622a38d64a9a8cfa78ec9302618de657c38578cf9a9815e88afd80ec7e550bd5a66d8c919bb9de93b77028bce6f382d7dd6bf118f9b2a3a607ced52b2 +DIST b2-4.10.1.tar.gz 982429 BLAKE2B bb1e6ef741ca10d3b0029e64d69a7ee7eb0d40d26c68d2a3932d4210e8e2a83131c9bac2d54f2885373725d58fe73dd7fa7aebfc5781059f01c3462c738d426c SHA512 0bc4897a342685190626a6593926c4b200c5ca9b498ba77287a7c49467a8e3f65cb850b9616fd05d4aea9ebfab32ec46792d7d8226bed89911a711ce14ecce30 +DIST b2-5.0.0.tar.gz 1015818 BLAKE2B 87b6f34733002479f91f658aee4f776930ae6441f33b2540b82049e18c4199280e73047afafa90dc156cc75db8b587c5bb9e2ce65d93c493775ac4107ce3201b SHA512 37403f0bd863753c5313393405dd8514a4f8d9f0839ccd397ee1856e02af6116bd238d345e5b766512441ca1c0b09883386588e270bd982eca45235eef1b01b7 +EBUILD b2-4.10.1.ebuild 1916 BLAKE2B a3a547177ff331c2e717f4594a91cb134a9d2bf17e6d3cde2c5018f44d0925544ae83ee011e720a02f100d3fa91da0214b7acdc140797e050ca680fb7876d806 SHA512 af4b96373dbf8cfc23499c2d5a09ca9e855254d516419d92ca31f7bff10636dcea3a9fbadf5c9dc6df87aa2544862467f570fb8de81a0b27c6047abeb7e37c92 +EBUILD b2-5.0.0.ebuild 1967 BLAKE2B 50870cad043adccccf37779a3503559b4a6be57a71e2e857be2ae2c9ce597471156e37989c395540cb36bff9fb19af8e1494f9be3b59e3ca9da71517734a0583 SHA512 73a50407df672b50894653bec1cc091a93e9593301ea4be19ff8cd45d95966885c6e30e9f6b0aa5554d19101fb5728b786abda6b0ba42d17586f6ea8ed6172a4 +MISC metadata.xml 320 BLAKE2B e32bcf6d7bfe5e8a0f36d34022d49ef8baf1d4c0324fa7e7b25e1fa41ac81c21e010a8e49d456b7ce6027c51af57b6b07f3bdc8b7e05daa18b288c63a58a171e SHA512 767da992cd650d91b393848e73d6f0626febcb02eba350a16d390e8416a2832c49b1ca2608be98a9f4abd9ae2078a7f1a543a387be139e5533f90d82171796bf diff --git a/dev-build/b2/b2-4.10.1.ebuild b/dev-build/b2/b2-4.10.1.ebuild new file mode 100644 index 000000000000..55ca9c3a4e4c --- /dev/null +++ b/dev-build/b2/b2-4.10.1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2024 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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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}-4.9.2-no-implicit-march-flags.patch + "${FILESDIR}"/${PN}-4.9.2-odr.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 + + # 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="${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" \ + bootstrap.jam build-system.jam ../example/user-config.jam \ + build kernel options tools util + + find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die + + dodoc ../notes/{changes,release_procedure,build_dir_option,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/b2-5.0.0.ebuild b/dev-build/b2/b2-5.0.0.ebuild new file mode 100644 index 000000000000..6cff0eca434e --- /dev/null +++ b/dev-build/b2/b2-5.0.0.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2024 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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-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}-4.9.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="${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/{changes,release_procedure,build_dir_option,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-4.9.2-add-none-feature-options.patch b/dev-build/b2/files/b2-4.9.2-add-none-feature-options.patch new file mode 100644 index 000000000000..620dea0af51b --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-add-none-feature-options.patch @@ -0,0 +1,22 @@ +--- a/tools/features/debug-feature.jam ++++ b/tools/features/debug-feature.jam +@@ -18,7 +18,7 @@ common usage is to build release variant with debugging information. + |# # end::doc[] + + feature.feature debug-symbols +- : on off ++ : on off none + : propagated ; + + #| tag::prof-doc[] +--- a/tools/features/optimization-feature.jam ++++ b/tools/features/optimization-feature.jam +@@ -16,7 +16,7 @@ smaller binary. + |# # end::doc[] + + feature.feature optimization +- : off speed space minimal debug ++ : off none speed space minimal debug + : propagated ; + + #| tag::inline-doc[] diff --git a/dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch b/dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch new file mode 100644 index 000000000000..8de98014dbdc --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch @@ -0,0 +1,16 @@ +Avoid adding all kinds of things to the toolchain's flags that within +Gentoo (Prefix) we really shouldn't, such as sysroot, deployment target, +arch, etc. + +--- a/tools/darwin.jam ++++ b/tools/darwin.jam +@@ -240,6 +240,9 @@ + } + } + ++ # leave compiler flags etc. up to the toolchain ++ return $(version-feature) ; ++ + if $(version-feature) + { + if $(.debug-configuration) diff --git a/dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch b/dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch new file mode 100644 index 000000000000..b7b47cc93a47 --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch @@ -0,0 +1,11 @@ +--- a/tools/python.jam ++++ b/tools/python.jam +@@ -1000,7 +1000,7 @@ + # linux). + : $(usage-requirements) + <testing.launcher>$(set-PYTHONPATH) +- <library-path>$(libraries) <dll-path>$(dll-path) <library>python.lib ++ <library-path>$(libraries) <library>python.lib + ; + } + diff --git a/dev-build/b2/files/b2-4.9.2-no-implicit-march-flags.patch b/dev-build/b2/files/b2-4.9.2-no-implicit-march-flags.patch new file mode 100644 index 000000000000..2845d6e52f84 --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-no-implicit-march-flags.patch @@ -0,0 +1,148 @@ +--- a/tools/gcc.jam ++++ b/tools/gcc.jam +@@ -1131,145 +1131,11 @@ local rule cpu-flags ( toolset variable : architecture : instruction-set + : + # 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 -mfloat-abi=hard ; +-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 -mfloat-abi=hard ; + # AIX variant of RS/6000 & PowerPC + toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ; + diff --git a/dev-build/b2/files/b2-4.9.2-odr.patch b/dev-build/b2/files/b2-4.9.2-odr.patch new file mode 100644 index 000000000000..62cbca189640 --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-odr.patch @@ -0,0 +1,54 @@ +Avoid ODR violations by giving "_stack" internal linkage +https://bugs.gentoo.org/858320 + +--- a/engine/function.cpp ++++ b/engine/function.cpp +@@ -213,11 +213,11 @@ + } JAM_FUNCTION; + + ++namespace ++{ + typedef struct _stack STACK; + typedef STACK* stack_ptr; + +-namespace +-{ + template <typename T> + using remove_cref_t + = typename std::remove_const< +@@ -260,7 +260,6 @@ + typename select_last_impl<(sizeof...(A) == 1), type_list<A...> > + ::template type<A...>; + #endif +-} + + struct _stack + { +@@ -439,6 +438,8 @@ + cleanups_size += n; + } + ++} ++ + static STACK * stack_global() + { + static _stack singleton; +--- a/engine/make1.cpp ++++ b/engine/make1.cpp +@@ -86,6 +86,7 @@ + #define T_STATE_MAKE1B 1 /* make1b() should be called */ + #define T_STATE_MAKE1C 2 /* make1c() should be called */ + ++namespace { + typedef struct _state state; + struct _state + { +@@ -94,6 +95,7 @@ + TARGET * parent; /* parent argument necessary for MAKE1A */ + int32_t curstate; /* current state */ + }; ++} + + static void make1a( state * const ); + static void make1b( state * const ); diff --git a/dev-build/b2/files/site-config.jam b/dev-build/b2/files/site-config.jam new file mode 100644 index 000000000000..cae7b3f98327 --- /dev/null +++ b/dev-build/b2/files/site-config.jam @@ -0,0 +1,11 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) + +# Define two new variants to be used when building boost (or separate boost-libs) +# on Gentoo. The two variants make use of Gentoo-specific optimization and debug-symbols +# values "none" which are not part of the official boost distribution. +# DO NOT RELY ON THE FOLLOWING VARIANTS TO BE PRESENT ON OTHER OS! +variant gentoorelease : release : <optimization>none <debug-symbols>none <runtime-link>shared ; +variant gentoodebug : debug : <optimization>none <debug-symbols>on <runtime-link>shared ; + diff --git a/dev-build/b2/metadata.xml b/dev-build/b2/metadata.xml new file mode 100644 index 000000000000..97a8de7cc239 --- /dev/null +++ b/dev-build/b2/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>soap@gentoo.org</email> + <name>David Seifert</name> + </maintainer> + <upstream> + <remote-id type="github">bfgroup/b2</remote-id> + </upstream> +</pkgmetadata> |