diff options
author | mirror@stealer.net <mirror@stealer.net> | 2025-07-22 21:30:24 +0000 |
---|---|---|
committer | mirror@stealer.net <mirror@stealer.net> | 2025-07-22 21:30:24 +0000 |
commit | c0a4f9bd05085fb33eb0b260795f2faa8cd51e83 (patch) | |
tree | 56ec35ab1c4ca72bbb58f30bbf663b31e31baf6d /dev-libs | |
parent | 52b41dde7853ca4abfbbee9784099afa79ab9671 (diff) |
2025-07-22 21:10:39+00:00
Diffstat (limited to 'dev-libs')
20 files changed, 0 insertions, 3073 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz Binary files differindex 48e9a4b7e4ee5..c7467dfa58bf5 100644 --- a/dev-libs/Manifest.gz +++ b/dev-libs/Manifest.gz diff --git a/dev-libs/boost/Manifest b/dev-libs/boost/Manifest index bbbce8743cd77..cec170d9b55b3 100644 --- a/dev-libs/boost/Manifest +++ b/dev-libs/boost/Manifest @@ -1,19 +1,6 @@ AUX boost-1.79.0-build-auto_index-tool.patch 265 BLAKE2B 05e52ca716522db7bb11b481576a08138be826f7383a689a6c0725d491a244dc8697fc39fac1a79e4639ba51b3a3eb7ee2f2e11a20883de0ecd3dd3c2fc2c9cd SHA512 28952e7cd791678be0963beb0a29e3e40b54a8c3618c66a8b8d21ab63c414771cfa1e9961f08c0b3818bd4c311c122e777109e15002a71230b0c3c9dbc4d6075 AUX boost-1.81.0-disable_icu_rpath.patch 577 BLAKE2B 0e8634a6a4594232238d03ed329c0ca56c005ec0f3f259afd431c4b461b6c8d9a0b636b916859b5baa1152395995e5fa5b150ef0ab39480fcebaa9c6c5943b7e SHA512 7383423dd4611482bf3ff3820152152e9fc9643ca408b260e3715baba52b48b444626b14e955950b025e57f72c50158c83ffa6b55b995c2c427da90d0a0a50df -AUX boost-1.85.0-01-fix_unsupported_long_double_macros.patch 6216 BLAKE2B c989990e5b9f97f235360590b73cb83302c6da770915dd35263535d4e9f771bd5f06374494c5108d2ff81f6d8accad03170d5f8649c84f73c39c192be1d7c32f SHA512 68adae23662b696aa13e70996047c5339e4df7d7332623a93e8b6be67fc5ea50aa70068d55e4d68d32a960a07a166c0dc4dd6bd2505da5bd6c6b561c1f4a329c -AUX boost-1.85.0-02-fix_unsupported_long_double_formats.patch 1491 BLAKE2B 2cbbbed801b69da536d79c2dbdcf2731462d2d9b3fbb6bc97abe628ee62b09f0721743c897eb4f96df48f5ca2a05c3d373b13333ab8ac028043ee0d8a0b2784d SHA512 eae6e1ac9da246eef0e1762db2e4542ccaa9972c7ceb6968ae405631b231e45b3635ea17671dfc71f2e1b7134811b673c6da867bfd09bd1b7a9c4f1e672f7556 -AUX boost-1.85.0-03-disable_tests_with_unsupported_long_double_layouts.patch 13850 BLAKE2B b9ca28724959a803e201dea7192abdb35c82c542820b7af2099aa795b9b38307b84d51f1127394f8a728cc9dfd571f56420dd7f9445ad04cb8c13c11c78522ae SHA512 fe700a0953b6c0f3e8a7bd8742f90d28d340be47d7e1dda26a4d81c31bd7ebf9a1b282751687df82511ba941256e7d862bab8a784a4105a0d21d974c0cbf6ec0 -AUX boost-1.85.0-04-remove_cruft_codeblock.patch 1504 BLAKE2B 7e876d221690aa8d66ab1a5a05ab7acdc612f2cadc392da6c5ebd9130346c81d0f76568ee3492947de1698108890249144d7ef8f36850c5261bfdb373a156f8a SHA512 eaca3c1e88db7e56d46eb6a9e4abb0b6cf7671f7b0d9afac6a2440d4086f9fd1c9395bedd5dc42175ad55131b673bb587ce0334ab20448ef782574aeb31e9921 -AUX boost-1.85.0-05-fix_macro_name.patch 15312 BLAKE2B 2472e8bcbf63fdf3de1b6c26e0680f068f559f5b9ab59db5fce9505d07a8152766e7da2f2c8b5ae9671289dac8f22ca8395424a1384423ae7c4f05ec0bd1ac33 SHA512 d57e4d2f7a3f1a3fb0f0f280b980a76798ae82f0bfc5d54d9399ce1aa887a37bac945b476bb60cf3a9a3bcb85f7b1135a5a6e47f635274d06b1c971d35c72481 -AUX boost-1.85.0-bcp-filesystem.patch 7299 BLAKE2B d2792ee52008955a6f4d233c0a130fe698df7d1e060e9a25a2c058fd7a1ba4c8f6b7a92af773183fa73b0511d7f85f5473d5f9cea1cd71ec08f2db92fa7bd09d SHA512 501f71fa1451af7699689c3befc477e6612612f11a3c33d350d680ce8c511ba9e6765e05aefa9608fe98eca0413a43755cf61fea1a4cd2d03ea0962f7884b452 -AUX boost-1.85.0-container-aliasing.patch 15219 BLAKE2B 438e5cbeed4626b22172722a7173c215eb9f766e2b5c523d6a35ae6ae5f4c96ea8b8a7a346c716989d5e147f3c58a49368735c9709b2c5234815fbb036cdf7f8 SHA512 4130be6d83e9e19ddf42de2f12eaee906882f03d3487cb93c69b4ce7c4ec578d863f0900d1ad9654b30bdf99fc2e9623b4dcafc2bbaf6e52b1d9107ece201567 -AUX boost-1.85.0-python-numpy-2.patch 986 BLAKE2B 5f4cd317c75f8eb3183f720ac76afeffeb4f1e2617f32a795a94d9db56c7c27cba7a1b2591f2f851223b85ce962293bf54733e0d3f830340d2ef174a869284ed SHA512 46b3831acbd89980abc8312d8ba0a991d9c8531f0f8b63f5218ef8920fcf18b1ff207748abef2f3753baf6ea0932dc0c4ef524daec7fb265f64e35c5335f7a96 -AUX boost-1.86.0-uuid-compute-backport.patch 1118 BLAKE2B 4fe636ec17f9dce29d37d8dafcbb4e5c45cdcbf1a867d127b44ea9a2c533f7c184f738ba08d244fecdd8805d1d6a91eaa17d1a024653148d8ac512522ee27f62 SHA512 d2eac74fb297618f185bccfd2921efa767901d1b2f3516385a0f3894cee3cee49a437e456eb4b656a5fe67278b02191b2fbca02e3d32ca3e1be211144a92253e -AUX boost-1.87.0-move.patch 2611 BLAKE2B 7d184f1e2c20dfa254dec57b601422a3d2ca44766886bd51be582168729fedd2a426290e6267ddfc7685c85f4101d456999d7fb0de57740610fc84d7a112f32b SHA512 3141cea043907bb8d94c4bf0e7e46eca109841783701210a020037ffe43bbfe4102ac5cf03195dfefad80b3548abd76904784973e8d86f10f95ca9811712c7b9 AUX boost-1.87.0-process-error-alpha.patch 1035 BLAKE2B 0eaf50acc98fcb79c165ace1f49e92d29bfb8e65170b6aab44b0bc34eb5cbdf1678f8109f6d6fa1711152dcbe98a6f2021cee742ee7492b147b8c92b88faea69 SHA512 6f5e7c31a46f91b0d381d2dddb00dd0963efb4cde2c342b7c0fd4ba5512999921966eac84698a4cd42a6741b101a02457c225582aa7bad0b43fa2b9f6f01209c -AUX boost-1.87.0-smart_ptr-operator.patch 1663 BLAKE2B a66be2ab0b62623242c5185e9d53514a6132d4f7d3b9306a93baeac1ab7c8533b248b29f345690247f15ad2e17e7ebfccd47a54e021fa8fcb2db888dcc5b7688 SHA512 a72188bb0ac227a48ac65f3c570f60ee7b1d23890603fdc8db2494df7489ec3d8837501c4a41cb42ba2dc29449fae0d986bcdc7613ccbb618dd490986d1e09bc -AUX boost-1.87.0-solaris.patch 914 BLAKE2B 8de7146eb63e432105ffc7797e06371354d85476d02a0686a2bdd8b0f68ef8adab843c45b5bf5e53d9cab2027849b53aefbfabcca3d18a3434413e2512962a94 SHA512 540243bc0c6d43d04beb09a0d63768409595e6f3ba177fcedac7f9f5543aa74da047e139a9fbd0fea1f7eaaab410eb0c97491c34699ecb65175b088f1788ab18 -AUX boost-1.87.0-thread-typo.patch 889 BLAKE2B b3e1efbecb4bf809aa07c8e30977aeea747218c9881842b6a4f7d4d4f304b0094863ee1bd42ffa4cc432846d68c45ac6d025447d92f94537d8fd739c62345e6e SHA512 07e17f31604c6baac4f12ef63db3313bcc68dbfdbfaa9157314a58c03e52a13840822b494ed319dde306f8e78c99179b2faa8ea721549d0a0ed06a83e73b15d8 AUX boost-1.88.0-algorithm-reverse_copy.patch 892 BLAKE2B 93587cf4e2f14d621f0d44458fa9b9e2f408f27cd6fdf9ccd82fd69c4d5c6e6ecc676a3d04abafebf1e53c6a9f6af79d3c3c39bc569b727dec8a6ee25832a3ff SHA512 ad3eebe7955bb1bc3656cd702e50e42843cd78c9bd99095a058aa0985f7ade640317a74d7221282d996d05706f72214afc9782a7e133edb7b293939766397dce AUX boost-1.88.0-beast-network-sandbox.patch 1225 BLAKE2B d0788ffa3e0f7177362db8b0085118e6fe2cfec9eee4d817c5cf944a68773b4f9c806ee606fcc0e5911d0a77ce2966da8df9f1cfe133f869184ee596dee2ac8b SHA512 300c4be9bc83f009e27c21d819987964d77f58268077ac561603244d46da9c8505eef5e696d88f40028df2b04de94ca644ca724fd3178aaa67f58d70ed39b53c AUX boost-1.88.0-bind-no-Werror.patch 1270 BLAKE2B 9d7d7311d161ea4cff2205a5c65a136288c6c9eacad1f29717b6ce7f21fe6fa0bed7521f96d73a4b20dd956e0f30b0eed3d0bcfbd7e5086e49b6a66e3e5e856a SHA512 ffbb7cd1be86007bf558f77d28e84e185fe2db1b0750d5bec38f77a29c561d62c944b64b9b40de99d8854745ab86ad895ada4c45cacd398e63c0b5da44fc5858 @@ -22,12 +9,6 @@ AUX boost-1.88.0-range-any_iterator.patch 1115 BLAKE2B 7829c576009cc9a57ac074f78 AUX boost-1.88.0-system-crashing-test.patch 595 BLAKE2B ef6b4b3d0eba27d0008da293080ccfa33a7c79720af1d553361329be9c59d5163089b50da7bafbcdc8bb77a25d08cf53c89a395fd1b08f81234f93ebd0ab7cc1 SHA512 28121063363e743c24de67b13ee2e9c5c4f65fe58fbe9700ff0f7655d6ae8a86e1f08c183b353308dbd6647afa7b20649b5277815534b7bf90d2a00b30cae892 AUX boost-1.88.0-yap-cstdint.patch 701 BLAKE2B 609cded8490bc4eb8146a9dc37fa726ea406f24314dac03d22edadbac4ebc49aef1009652cbfdd1a7c025e4ef9a6b33fef43e5f00c16ba5e7f316143aa608a4e SHA512 bb8578299e7edbc1d886babb5567f6fbe967e280fc2516af882194afa77522eeb55b891bbfca579622242a87046b3c68f40c447a8cdfc9ceea96ddf0608abc74 AUX unit-test-main.cpp 607 BLAKE2B a42f74d80d5fb9c1b61f4b775e83cc7b1bc05958c78b32aaa35ec7d28bf85f1cd611019c59e5488ea5bf4f70a93a3fb58a99034c5a93bd0f7037b36a62e6b8c4 SHA512 e8c5a7ff3d143901549b8bc29c00add5a70e02a7369d7da3dd7e86b11c3d0b90430f64b5e084877607c6133aa3351ca21d7f23aa45f9c0c5a4018d85aebb5601 -DIST boost_1_85_0.tar.bz2 124015250 BLAKE2B dd72a9299cd78d2c260e1c94e28ba04daaa352f5bd023d99e43caa3540b1e0f8c09fc04b91f68db0ef8532e4a91fdef0b66a80bf0f9f838303bccaf0729bf581 SHA512 b4489813a4192b57626589457932338cfc47c4ec05c19b3a58b2d8df9e95f022ff2f5f452811ff82d1cec4fb0a490e991c8825bad0fb5a81318d07a8788d8ca0 -DIST boost_1_86_0.tar.bz2 126220652 BLAKE2B de3d262e3dc174813e8e9abc8fb083ae101949dbd3b818b1114457497607085dc998f6f0fdd095a87c38c90700761c825ce239b082144389507c0fec77d527dd SHA512 9f8144e07a44cc5b5be6c6da17b2e6f29f0637dda345764c89eac0bcb9ce2878469a7e6fcd2c96d25034937025768450b33fc14fb40470fa4806bfcf03330e75 -DIST boost_1_87_0.tar.bz2 131473200 BLAKE2B 8bbd163ab2fcdd29e2dbe74fdab49b2c80b4ea58df40e39148d151911f2c81188e7fe44faf61905eddfc5615b5003932e0ea85a6527844f55ee121595173adfa SHA512 a2d5007953f67b816169efe0cf11675cd63fc6bae63f87ee1372515e57913ef6cf6ae8c3f2c400fef8ce63a035a02a0cad0da5acc29e977a85d458625b2a719c DIST boost_1_88_0.tar.bz2 143894119 BLAKE2B b42daa4b3ee840715f3b2cd689e585521839345d88d3e318cf96feeb3f48cb6f6723be5fffa5440a350956aecfab9fd36cbbf0dee54318c572aa1d14eeedd158 SHA512 c3a6a70e1e7d826882745ff92ac8fe7cb2a69b5974ba2275d8e130955f91163cbc4e6ccfbae19a7a92d478a8cb9de2458f73324b183596b3a2a69b1d5a75b3e9 -EBUILD boost-1.85.0-r1.ebuild 11938 BLAKE2B a72ad6189087c1b523679d563a5e4e108c13952a9fc4558cd5335c8d0ed22c1822f94e3aae6f9dac6690d0b88e7b9d2af35dcf96c3af2252138125811e076e8e SHA512 cf201b76a33cdb4b632038ba0857ac99f116780e9400e879dbb441c79bb00a539d1e6cee649bb76b23661bb4be0ba3b3deed6971a3a3117f5a1b63e1e9fc4e12 -EBUILD boost-1.86.0-r1.ebuild 11610 BLAKE2B d05580014c0034d8612765994f6751dbfc9780e1f16a326bd93edfa2bb8df6ee7d8db208b55e2f8089ac0bd49830a8c1216afeda676a84b102083050952d762f SHA512 67ce971f6860ea61c9051e8f9bd50ad86904de20d546ff891cbc3465c5a39a2b20491f0b24967e99c20a2184629a0e6159c024aae246859f54e3ac72d625f61b -EBUILD boost-1.87.0-r3.ebuild 11626 BLAKE2B 1aac85938af56837a5b0e2368b16b9273568ade71721eeb215d99e7dd5ef7d9f6ff2599053873fe49d63cdf1a184090aa2b8d7e7ff6118fd988d1d86e4645f66 SHA512 fc4fb1724259020ab2d347cfc1c98395b607753fbaef5f0a114a88546b1411d470e324951e62f27a2124ce9a958a046e93021bf6e0aa3f839e39d9aa31284c4d EBUILD boost-1.88.0-r1.ebuild 16651 BLAKE2B 4d28bd0a8f79e3b3c2c31979745878b7a88fbee97921e67c08cb63d44793a3d30554720b6e8e8836ae00eb14a853566790797ed598a3b571ef4a53672c7a9b50 SHA512 36c06cd6a80036951fa7d4eba1ef3a3443ae79943ecf8a88a55e3b148c8108fb478f9ef29a0fe8bc9373c726ba70ecfe615bb40a84bcf95c3814c943d4b4b410 MISC metadata.xml 9508 BLAKE2B d1ff662666cc792bcacba245c71391d62b66e132903da3ab69202df9a66bb3eb0b5b047ec06c6dc42827fc666feb81812a04e7e24f13c68c0b9537427fb083c4 SHA512 2bfe9064b5b2163360c74adb1e0bd9faa1713bb709e7f1c299d37dd229030a79683d06759bbcb38c72d7e72cf22dab1e9dee638f0e62067c80715b67588e385b diff --git a/dev-libs/boost/boost-1.85.0-r1.ebuild b/dev-libs/boost/boost-1.85.0-r1.ebuild deleted file mode 100644 index 6a221999ded5b..0000000000000 --- a/dev-libs/boost/boost-1.85.0-r1.ebuild +++ /dev/null @@ -1,363 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Keep an eye on both of these after releases for patches: -# * https://www.boost.org/patches/ -# * https://www.boost.org/users/history/version_${MY_PV}.html -# (e.g. https://www.boost.org/users/history/version_1_83_0.html) -# Note that the latter may sometimes feature patches not on the former too. - -# FIXME: cleanup subslot after 1.85.0 - -PYTHON_COMPAT=( python3_{11..13} ) - -inherit dot-a flag-o-matic multiprocessing python-r1 toolchain-funcs multilib-minimal - -MY_PV="$(ver_rs 1- _)" - -DESCRIPTION="Boost Libraries for C++" -HOMEPAGE="https://www.boost.org/" -SRC_URI="https://archives.boost.io/release/${PV}/source/boost_${MY_PV}.tar.bz2" -S="${WORKDIR}/${PN}_${MY_PV}" - -LICENSE="Boost-1.0" -SLOT="0/${PV}.1" # ${PV} instead of the major version due to bug 486122 -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="bzip2 +context debug doc icu lzma +nls mpi numpy python +stacktrace tools zlib zstd" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -# the tests will never fail because these are not intended as sanity -# tests at all. They are more a way for upstream to check their own code -# on new compilers. Since they would either be completely unreliable -# (failing for no good reason) or completely useless (never failing) -# there is no point in having them in the ebuild to begin with. -RESTRICT="test" - -RDEPEND=" - bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] ) - icu? ( dev-libs/icu:=[${MULTILIB_USEDEP}] ) - !icu? ( virtual/libiconv[${MULTILIB_USEDEP}] ) - lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] ) - mpi? ( virtual/mpi[${MULTILIB_USEDEP},cxx,threads] ) - python? ( - ${PYTHON_DEPS} - numpy? ( dev-python/numpy:=[${PYTHON_USEDEP}] ) - ) - zlib? ( sys-libs/zlib:=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -BDEPEND=">=dev-build/b2-5.0.0" - -PATCHES=( - "${FILESDIR}"/${PN}-1.81.0-disable_icu_rpath.patch - "${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch - "${FILESDIR}"/${PN}-1.85.0-bcp-filesystem.patch - "${FILESDIR}"/${PN}-1.85.0-python-numpy-2.patch - "${FILESDIR}"/${PN}-1.85.0-container-aliasing.patch - "${FILESDIR}"/${PN}-1.85.0-01-fix_unsupported_long_double_macros.patch - "${FILESDIR}"/${PN}-1.85.0-02-fix_unsupported_long_double_formats.patch - "${FILESDIR}"/${PN}-1.85.0-03-disable_tests_with_unsupported_long_double_layouts.patch - "${FILESDIR}"/${PN}-1.85.0-04-remove_cruft_codeblock.patch - "${FILESDIR}"/${PN}-1.85.0-05-fix_macro_name.patch -) - -create_user-config.jam() { - local user_config_jam="${BUILD_DIR}"/user-config.jam - if [[ -s ${user_config_jam} ]]; then - einfo "${user_config_jam} already exists, skipping configuration" - return - else - einfo "Creating configuration in ${user_config_jam}" - fi - - local compiler compiler_version compiler_executable="$(tc-getCXX)" - compiler="gcc" - compiler_version="$(gcc-version)" - - if use mpi; then - local mpi_configuration="using mpi ;" - fi - - cat > "${user_config_jam}" <<- __EOF__ || die - using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CPPFLAGS} ${CFLAGS}" <cxxflags>"${CPPFLAGS} ${CXXFLAGS}" <linkflags>"${LDFLAGS}" <archiver>"$(tc-getAR)" <ranlib>"$(tc-getRANLIB)" ; - ${mpi_configuration} - __EOF__ - - if multilib_native_use python; then - append_to_user_config() { - local py_config - if tc-is-cross-compiler; then - py_config="using python : ${EPYTHON#python} : : ${ESYSROOT}/usr/include/${EPYTHON} : ${ESYSROOT}/usr/$(get_libdir) ;" - else - py_config="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) ;" - fi - echo "${py_config}" >> "${user_config_jam}" || die - } - python_foreach_impl append_to_user_config - fi - - if multilib_native_use python && use numpy; then - einfo "Enabling support for NumPy extensions in Boost.Python" - else - einfo "Disabling support for NumPy extensions in Boost.Python" - - # Boost.Build does not allow for disabling of numpy - # extensions, thereby leading to automagic numpy - # https://github.com/boostorg/python/issues/111#issuecomment-280447482 - sed \ - -e 's/\[ unless \[ python\.numpy \] : <build>no \]/<build>no/g' \ - -i "${BUILD_DIR}"/libs/python/build/Jamfile || die - fi -} - -pkg_setup() { - # Bail out on unsupported build configuration, bug #456792 - if [[ -f "${EROOT}"/etc/site-config.jam ]]; then - if ! grep -q 'gentoo\(debug\|release\)' "${EROOT}"/etc/site-config.jam; then - eerror "You are using custom ${EROOT}/etc/site-config.jam without defined gentoorelease/gentoodebug targets." - eerror "Boost can not be built in such configuration." - eerror "Please, either remove this file or add targets from ${EROOT}/usr/share/boost-build/site-config.jam to it." - die "Unsupported target in ${EROOT}/etc/site-config.jam" - fi - fi -} - -src_prepare() { - default - multilib_copy_sources -} - -ejam() { - create_user-config.jam - - local b2_opts=( "--user-config=${BUILD_DIR}/user-config.jam" ) - if multilib_native_use python; then - append_to_b2_opts() { - b2_opts+=( python="${EPYTHON#python}" ) - } - python_foreach_impl append_to_b2_opts - else - b2_opts+=( --without-python ) - fi - b2_opts+=( "$@" ) - - echo b2 "${b2_opts[@]}" >&2 - b2 "${b2_opts[@]}" -} - -src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/943975 - # https://github.com/boostorg/quickbook/issues/27 - # https://github.com/boostorg/spirit/issues/800 - use tools && filter-lto - - lto-guarantee-fat - - # Workaround for too many parallel processes requested, bug #506064 - [[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64" - - # We don't want to end up with -L/usr/lib on our linker lines - # which then gives us lots of - # skipping incompatible /usr/lib/libc.a when searching for -lc - # warnings - [[ -n ${ESYSROOT} ]] && local icuarg="-sICU_PATH=${ESYSROOT}/usr" - - OPTIONS=( - $(usex debug gentoodebug gentoorelease) - "-j$(makeopts_jobs)" - -q - -d+2 - pch=off - $(usex icu "${icuarg}" '--disable-icu boost.locale.icu=off') - $(usev !mpi --without-mpi) - $(usev !nls --without-locale) - $(usev !context '--without-context --without-coroutine --without-fiber') - $(usev !stacktrace --without-stacktrace) - --boost-build="${BROOT}"/usr/share/b2/src - --layout=system - # building with threading=single is currently not possible - # https://svn.boost.org/trac/boost/ticket/7105 - threading=multi - link=shared - # this seems to be the only way to disable compression algorithms - # https://www.boost.org/doc/libs/1_70_0/libs/iostreams/doc/installation.html#boost-build - -sNO_BZIP2=$(usex bzip2 0 1) - -sNO_LZMA=$(usex lzma 0 1) - -sNO_ZLIB=$(usex zlib 0 1) - -sNO_ZSTD=$(usex zstd 0 1) - ) - - if [[ ${CHOST} == *-darwin* ]]; then - # We need to add the prefix, and in two cases this exceeds, so prepare - # for the largest possible space allocation. - append-ldflags -Wl,-headerpad_max_install_names - fi - - # Use C++17 globally as of 1.80 - append-cxxflags -std=c++17 - - if [[ ${CHOST} != *-darwin* ]]; then - # On modern macOS, file I/O is already 64-bit by default, - # there's no support for special options like O_LARGEFILE. - # Thus, LFS must be disabled. - # - # On other systems, we need to enable LFS explicitly for 64-bit - # offsets on 32-bit hosts (#894564) - append-lfs-flags - fi -} - -multilib_src_compile() { - ejam \ - --prefix="${EPREFIX}"/usr \ - "${OPTIONS[@]}" || die - - if multilib_native_use tools; then - pushd tools >/dev/null || die - ejam \ - --prefix="${EPREFIX}"/usr \ - "${OPTIONS[@]}" \ - || die "Building of Boost tools failed" - popd >/dev/null || die - fi -} - -multilib_src_install() { - ejam \ - --prefix="${ED}"/usr \ - --includedir="${ED}"/usr/include \ - --libdir="${ED}"/usr/$(get_libdir) \ - "${OPTIONS[@]}" install || die "Installation of Boost libraries failed" - - if multilib_native_use tools; then - dobin dist/bin/* - - insinto /usr/share - doins -r dist/share/boostbook - fi - - # boost's build system truely sucks for not having a destdir. Because for - # this reason we are forced to build with a prefix that includes the - # DESTROOT, dynamic libraries on Darwin end messed up, referencing the - # DESTROOT instread of the actual EPREFIX. There is no way out of here - # but to do it the dirty way of manually setting the right install_names. - if [[ ${CHOST} == *-darwin* ]]; then - einfo "Working around completely broken build-system(tm)" - local d - for d in "${ED}"/usr/lib/*.dylib; do - if [[ -f ${d} ]]; then - # fix the "soname" - ebegin " correcting install_name of ${d#${ED}}" - install_name_tool -id "/${d#${D}}" "${d}" - eend $? - # fix references to other libs - # these paths look like this: - # bin.v2/libs/thread/build/gcc-12.1/gentoorelease/pch-off/ - # threadapi-pthread/threading-multi/visibility-hidden/ - # libboost_thread.dylib - refs=$(otool -XL "${d}" | \ - sed -e '1d' -e 's/^\t//' | \ - grep "libboost_" | \ - cut -f1 -d' ') - local r - for r in ${refs}; do - # strip path prefix from references, so we obtain - # something like libboost_thread.dylib. - local r_basename=${r##*/} - - ebegin " correcting reference to ${r_basename}" - install_name_tool -change \ - "${r}" \ - "${EPREFIX}/usr/lib/${r_basename}" \ - "${d}" - eend $? - done - fi - done - fi -} - -multilib_src_install_all() { - if ! use numpy; then - rm -r "${ED}"/usr/include/boost/python/numpy* || die - fi - - if use python; then - if use mpi; then - move_mpi_py_into_sitedir() { - python_moduleinto boost - - python_domodule "${ED}"/usr/$(get_libdir)/boost-${EPYTHON}/mpi.so - rm -r "${ED}"/usr/$(get_libdir)/boost-${EPYTHON} || die - - python_optimize - } - python_foreach_impl move_mpi_py_into_sitedir - else - rm -r "${ED}"/usr/include/boost/mpi/python* || die - fi - else - rm -r "${ED}"/usr/include/boost/{python*,mpi/python*,parameter/aux_/python,parameter/python*} || die - fi - - if ! use nls; then - rm -r "${ED}"/usr/include/boost/locale || die - fi - - if ! use context; then - rm -r "${ED}"/usr/include/boost/context || die - rm -r "${ED}"/usr/include/boost/coroutine{,2} || die - rm "${ED}"/usr/include/boost/asio/spawn.hpp || die - fi - - if use doc; then - # find extraneous files that shouldn't be installed - # as part of the documentation and remove them. - find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die - find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die - find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die - - docinto html - dodoc *.{htm,html,png,css} - dodoc -r doc libs more tools - - # To avoid broken links - dodoc LICENSE_1_0.txt - - dosym ../../../../include/boost /usr/share/doc/${PF}/html/boost - fi - - strip-lto-bytecode -} - -pkg_preinst() { - # Yay for having symlinks that are nigh-impossible to remove without - # resorting to dirty hacks like these. Removes lingering symlinks - # from the slotted versions. - local symlink - for symlink in "${EROOT}"/usr/include/boost "${EROOT}"/usr/share/boostbook; do - if [[ -L ${symlink} ]]; then - rm -f "${symlink}" || die - fi - done - - # some ancient installs still have boost cruft lying around - # for unknown reasons, causing havoc for reverse dependencies - # Bug: 607734 - rm -rf "${EROOT}"/usr/include/boost-1_[3-5]? || die -} - -pkg_postinst() { - elog "Boost.Regex is *extremely* ABI sensitive. If you get errors such as" - elog - elog " undefined reference to \`boost::re_detail_$(ver_cut 1)0$(ver_cut 2)00::cpp_regex_traits_implementation" - elog " <char>::transform_primary[abi:cxx11](char const*, char const*) const'" - elog - elog "Then you need to recompile Boost and all its reverse dependencies" - elog "using the same toolchain. In general, *every* change of the C++ toolchain" - elog "requires a complete rebuild of the Boost-dependent ecosystem." - elog - elog "See for instance https://bugs.gentoo.org/638138" -} diff --git a/dev-libs/boost/boost-1.86.0-r1.ebuild b/dev-libs/boost/boost-1.86.0-r1.ebuild deleted file mode 100644 index 9652542941e02..0000000000000 --- a/dev-libs/boost/boost-1.86.0-r1.ebuild +++ /dev/null @@ -1,360 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Keep an eye on both of these after releases for patches: -# * https://www.boost.org/patches/ -# * https://www.boost.org/users/history/version_${MY_PV}.html -# (e.g. https://www.boost.org/users/history/version_1_83_0.html) -# Note that the latter may sometimes feature patches not on the former too. - -PYTHON_COMPAT=( python3_{11..13} ) - -inherit dot-a flag-o-matic multiprocessing python-r1 toolchain-funcs multilib-minimal - -MY_PV="$(ver_rs 1- _)" - -DESCRIPTION="Boost Libraries for C++" -HOMEPAGE="https://www.boost.org/" -SRC_URI="https://archives.boost.io/release/${PV}/source/boost_${MY_PV}.tar.bz2" -S="${WORKDIR}/${PN}_${MY_PV}" - -LICENSE="Boost-1.0" -SLOT="0/${PV}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="bzip2 +context debug doc icu lzma +nls mpi numpy python +stacktrace tools zlib zstd" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -# the tests will never fail because these are not intended as sanity -# tests at all. They are more a way for upstream to check their own code -# on new compilers. Since they would either be completely unreliable -# (failing for no good reason) or completely useless (never failing) -# there is no point in having them in the ebuild to begin with. -RESTRICT="test" - -RDEPEND=" - bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] ) - icu? ( dev-libs/icu:=[${MULTILIB_USEDEP}] ) - !icu? ( virtual/libiconv[${MULTILIB_USEDEP}] ) - lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] ) - mpi? ( virtual/mpi[${MULTILIB_USEDEP},cxx,threads] ) - python? ( - ${PYTHON_DEPS} - numpy? ( dev-python/numpy:=[${PYTHON_USEDEP}] ) - ) - zlib? ( sys-libs/zlib:=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -BDEPEND=">=dev-build/b2-5.1.0" - -PATCHES=( - "${FILESDIR}"/${PN}-1.81.0-disable_icu_rpath.patch - "${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch - "${FILESDIR}"/${PN}-1.85.0-bcp-filesystem.patch - "${FILESDIR}"/${PN}-1.85.0-python-numpy-2.patch - - # backports - # https://github.com/boostorg/compute/issues/889 - "${FILESDIR}"/${PN}-1.86.0-uuid-compute-backport.patch -) - -create_user-config.jam() { - local user_config_jam="${BUILD_DIR}"/user-config.jam - if [[ -s ${user_config_jam} ]]; then - einfo "${user_config_jam} already exists, skipping configuration" - return - else - einfo "Creating configuration in ${user_config_jam}" - fi - - local compiler compiler_version compiler_executable="$(tc-getCXX)" - compiler="gcc" - compiler_version="$(gcc-version)" - - if use mpi; then - local mpi_configuration="using mpi ;" - fi - - cat > "${user_config_jam}" <<- __EOF__ || die - using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CPPFLAGS} ${CFLAGS}" <cxxflags>"${CPPFLAGS} ${CXXFLAGS}" <linkflags>"${LDFLAGS}" <archiver>"$(tc-getAR)" <ranlib>"$(tc-getRANLIB)" ; - ${mpi_configuration} - __EOF__ - - if multilib_native_use python; then - append_to_user_config() { - local py_config - if tc-is-cross-compiler; then - py_config="using python : ${EPYTHON#python} : : ${ESYSROOT}/usr/include/${EPYTHON} : ${ESYSROOT}/usr/$(get_libdir) ;" - else - py_config="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) ;" - fi - echo "${py_config}" >> "${user_config_jam}" || die - } - python_foreach_impl append_to_user_config - fi - - if multilib_native_use python && use numpy; then - einfo "Enabling support for NumPy extensions in Boost.Python" - else - einfo "Disabling support for NumPy extensions in Boost.Python" - - # Boost.Build does not allow for disabling of numpy - # extensions, thereby leading to automagic numpy - # https://github.com/boostorg/python/issues/111#issuecomment-280447482 - sed \ - -e 's/\[ unless \[ python\.numpy \] : <build>no \]/<build>no/g' \ - -i "${BUILD_DIR}"/libs/python/build/Jamfile || die - fi -} - -pkg_setup() { - # Bail out on unsupported build configuration, bug #456792 - if [[ -f "${EROOT}"/etc/site-config.jam ]]; then - if ! grep -q 'gentoo\(debug\|release\)' "${EROOT}"/etc/site-config.jam; then - eerror "You are using custom ${EROOT}/etc/site-config.jam without defined gentoorelease/gentoodebug targets." - eerror "Boost can not be built in such configuration." - eerror "Please, either remove this file or add targets from ${EROOT}/usr/share/boost-build/site-config.jam to it." - die "Unsupported target in ${EROOT}/etc/site-config.jam" - fi - fi -} - -src_prepare() { - default - multilib_copy_sources -} - -ejam() { - create_user-config.jam - - local b2_opts=( "--user-config=${BUILD_DIR}/user-config.jam" ) - if multilib_native_use python; then - append_to_b2_opts() { - b2_opts+=( python="${EPYTHON#python}" ) - } - python_foreach_impl append_to_b2_opts - else - b2_opts+=( --without-python ) - fi - b2_opts+=( "$@" ) - - echo b2 "${b2_opts[@]}" >&2 - b2 "${b2_opts[@]}" -} - -src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/943975 - # https://github.com/boostorg/quickbook/issues/27 - # https://github.com/boostorg/spirit/issues/800 - use tools && filter-lto - - lto-guarantee-fat - - # Workaround for too many parallel processes requested, bug #506064 - [[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64" - - # We don't want to end up with -L/usr/lib on our linker lines - # which then gives us lots of - # skipping incompatible /usr/lib/libc.a when searching for -lc - # warnings - [[ -n ${ESYSROOT} ]] && local icuarg="-sICU_PATH=${ESYSROOT}/usr" - - OPTIONS=( - $(usex debug gentoodebug gentoorelease) - "-j$(makeopts_jobs)" - -q - -d+2 - pch=off - $(usex icu "${icuarg}" '--disable-icu boost.locale.icu=off') - $(usev !mpi --without-mpi) - $(usev !nls --without-locale) - $(usev !context '--without-context --without-coroutine --without-fiber') - $(usev !stacktrace --without-stacktrace) - --boost-build="${BROOT}"/usr/share/b2/src - --layout=system - # building with threading=single is currently not possible - # https://svn.boost.org/trac/boost/ticket/7105 - threading=multi - link=shared - # this seems to be the only way to disable compression algorithms - # https://www.boost.org/doc/libs/1_70_0/libs/iostreams/doc/installation.html#boost-build - -sNO_BZIP2=$(usex bzip2 0 1) - -sNO_LZMA=$(usex lzma 0 1) - -sNO_ZLIB=$(usex zlib 0 1) - -sNO_ZSTD=$(usex zstd 0 1) - boost.stacktrace.from_exception=off - ) - - if [[ ${CHOST} == *-darwin* ]]; then - # We need to add the prefix, and in two cases this exceeds, so prepare - # for the largest possible space allocation. - append-ldflags -Wl,-headerpad_max_install_names - fi - - # Use C++17 globally as of 1.80 - append-cxxflags -std=c++17 - - if [[ ${CHOST} != *-darwin* ]]; then - # On modern macOS, file I/O is already 64-bit by default, - # there's no support for special options like O_LARGEFILE. - # Thus, LFS must be disabled. - # - # On other systems, we need to enable LFS explicitly for 64-bit - # offsets on 32-bit hosts (#894564) - append-lfs-flags - fi -} - -multilib_src_compile() { - ejam \ - --prefix="${EPREFIX}"/usr \ - "${OPTIONS[@]}" || die - - if multilib_native_use tools; then - pushd tools >/dev/null || die - ejam \ - --prefix="${EPREFIX}"/usr \ - "${OPTIONS[@]}" \ - || die "Building of Boost tools failed" - popd >/dev/null || die - fi -} - -multilib_src_install() { - ejam \ - --prefix="${ED}"/usr \ - --includedir="${ED}"/usr/include \ - --libdir="${ED}"/usr/$(get_libdir) \ - "${OPTIONS[@]}" install || die "Installation of Boost libraries failed" - - if multilib_native_use tools; then - dobin dist/bin/* - - insinto /usr/share - doins -r dist/share/boostbook - fi - - # boost's build system truely sucks for not having a destdir. Because for - # this reason we are forced to build with a prefix that includes the - # DESTROOT, dynamic libraries on Darwin end messed up, referencing the - # DESTROOT instread of the actual EPREFIX. There is no way out of here - # but to do it the dirty way of manually setting the right install_names. - if [[ ${CHOST} == *-darwin* ]]; then - einfo "Working around completely broken build-system(tm)" - local d - for d in "${ED}"/usr/lib/*.dylib; do - if [[ -f ${d} ]]; then - # fix the "soname" - ebegin " correcting install_name of ${d#${ED}}" - install_name_tool -id "/${d#${D}}" "${d}" - eend $? - # fix references to other libs - # these paths look like this: - # bin.v2/libs/thread/build/gcc-12.1/gentoorelease/pch-off/ - # threadapi-pthread/threading-multi/visibility-hidden/ - # libboost_thread.dylib - refs=$(otool -XL "${d}" | \ - sed -e '1d' -e 's/^\t//' | \ - grep "libboost_" | \ - cut -f1 -d' ') - local r - for r in ${refs}; do - # strip path prefix from references, so we obtain - # something like libboost_thread.dylib. - local r_basename=${r##*/} - - ebegin " correcting reference to ${r_basename}" - install_name_tool -change \ - "${r}" \ - "${EPREFIX}/usr/lib/${r_basename}" \ - "${d}" - eend $? - done - fi - done - fi -} - -multilib_src_install_all() { - if ! use numpy; then - rm -r "${ED}"/usr/include/boost/python/numpy* || die - fi - - if use python; then - if use mpi; then - move_mpi_py_into_sitedir() { - python_moduleinto boost - - python_domodule "${ED}"/usr/$(get_libdir)/boost-${EPYTHON}/mpi.so - rm -r "${ED}"/usr/$(get_libdir)/boost-${EPYTHON} || die - - python_optimize - } - python_foreach_impl move_mpi_py_into_sitedir - else - rm -r "${ED}"/usr/include/boost/mpi/python* || die - fi - else - rm -r "${ED}"/usr/include/boost/{python*,mpi/python*,parameter/aux_/python,parameter/python*} || die - fi - - if ! use nls; then - rm -r "${ED}"/usr/include/boost/locale || die - fi - - if ! use context; then - rm -r "${ED}"/usr/include/boost/context || die - rm -r "${ED}"/usr/include/boost/coroutine{,2} || die - rm "${ED}"/usr/include/boost/asio/spawn.hpp || die - fi - - if use doc; then - # find extraneous files that shouldn't be installed - # as part of the documentation and remove them. - find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die - find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die - find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die - - docinto html - dodoc *.{htm,html,png,css} - dodoc -r doc libs more tools - - # To avoid broken links - dodoc LICENSE_1_0.txt - - dosym ../../../../include/boost /usr/share/doc/${PF}/html/boost - fi - - strip-lto-bytecode -} - -pkg_preinst() { - # Yay for having symlinks that are nigh-impossible to remove without - # resorting to dirty hacks like these. Removes lingering symlinks - # from the slotted versions. - local symlink - for symlink in "${EROOT}"/usr/include/boost "${EROOT}"/usr/share/boostbook; do - if [[ -L ${symlink} ]]; then - rm -f "${symlink}" || die - fi - done - - # some ancient installs still have boost cruft lying around - # for unknown reasons, causing havoc for reverse dependencies - # Bug: 607734 - rm -rf "${EROOT}"/usr/include/boost-1_[3-5]? || die -} - -pkg_postinst() { - elog "Boost.Regex is *extremely* ABI sensitive. If you get errors such as" - elog - elog " undefined reference to \`boost::re_detail_$(ver_cut 1)0$(ver_cut 2)00::cpp_regex_traits_implementation" - elog " <char>::transform_primary[abi:cxx11](char const*, char const*) const'" - elog - elog "Then you need to recompile Boost and all its reverse dependencies" - elog "using the same toolchain. In general, *every* change of the C++ toolchain" - elog "requires a complete rebuild of the Boost-dependent ecosystem." - elog - elog "See for instance https://bugs.gentoo.org/638138" -} diff --git a/dev-libs/boost/boost-1.87.0-r3.ebuild b/dev-libs/boost/boost-1.87.0-r3.ebuild deleted file mode 100644 index e595eef73b65a..0000000000000 --- a/dev-libs/boost/boost-1.87.0-r3.ebuild +++ /dev/null @@ -1,359 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Keep an eye on both of these after releases for patches: -# * https://www.boost.org/patches/ -# * https://www.boost.org/users/history/version_${MY_PV}.html -# (e.g. https://www.boost.org/users/history/version_1_83_0.html) -# Note that the latter may sometimes feature patches not on the former too. - -PYTHON_COMPAT=( python3_{11..13} ) - -inherit dot-a flag-o-matic multiprocessing python-r1 toolchain-funcs multilib-minimal - -MY_PV="$(ver_rs 1- _)" - -DESCRIPTION="Boost Libraries for C++" -HOMEPAGE="https://www.boost.org/" -SRC_URI="https://archives.boost.io/release/${PV}/source/boost_${MY_PV}.tar.bz2" -S="${WORKDIR}/${PN}_${MY_PV}" - -LICENSE="Boost-1.0" -SLOT="0/${PV}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="bzip2 +context debug doc icu lzma +nls mpi numpy python +stacktrace tools zlib zstd" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -# the tests will never fail because these are not intended as sanity -# tests at all. They are more a way for upstream to check their own code -# on new compilers. Since they would either be completely unreliable -# (failing for no good reason) or completely useless (never failing) -# there is no point in having them in the ebuild to begin with. -RESTRICT="test" - -RDEPEND=" - bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] ) - icu? ( dev-libs/icu:=[${MULTILIB_USEDEP}] ) - !icu? ( virtual/libiconv[${MULTILIB_USEDEP}] ) - lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] ) - mpi? ( virtual/mpi[${MULTILIB_USEDEP},cxx,threads] ) - python? ( - ${PYTHON_DEPS} - numpy? ( dev-python/numpy:=[${PYTHON_USEDEP}] ) - ) - zlib? ( sys-libs/zlib:=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -BDEPEND=">=dev-build/b2-5.1.0" - -PATCHES=( - "${FILESDIR}"/${PN}-1.81.0-disable_icu_rpath.patch - "${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch - "${FILESDIR}"/${PN}-1.87.0-move.patch - "${FILESDIR}"/${PN}-1.87.0-smart_ptr-operator.patch - "${FILESDIR}"/${PN}-1.87.0-thread-typo.patch - "${FILESDIR}"/${PN}-1.87.0-solaris.patch - "${FILESDIR}"/${PN}-1.87.0-process-error-alpha.patch -) - -create_user-config.jam() { - local user_config_jam="${BUILD_DIR}"/user-config.jam - if [[ -s ${user_config_jam} ]]; then - einfo "${user_config_jam} already exists, skipping configuration" - return - else - einfo "Creating configuration in ${user_config_jam}" - fi - - local compiler compiler_version compiler_executable="$(tc-getCXX)" - compiler="gcc" - compiler_version="$(gcc-version)" - - if use mpi; then - local mpi_configuration="using mpi ;" - fi - - cat > "${user_config_jam}" <<- __EOF__ || die - using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CPPFLAGS} ${CFLAGS}" <cxxflags>"${CPPFLAGS} ${CXXFLAGS}" <linkflags>"${LDFLAGS}" <archiver>"$(tc-getAR)" <ranlib>"$(tc-getRANLIB)" ; - ${mpi_configuration} - __EOF__ - - if multilib_native_use python; then - append_to_user_config() { - local py_config - if tc-is-cross-compiler; then - py_config="using python : ${EPYTHON#python} : : ${ESYSROOT}/usr/include/${EPYTHON} : ${ESYSROOT}/usr/$(get_libdir) ;" - else - py_config="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) ;" - fi - echo "${py_config}" >> "${user_config_jam}" || die - } - python_foreach_impl append_to_user_config - fi - - if multilib_native_use python && use numpy; then - einfo "Enabling support for NumPy extensions in Boost.Python" - else - einfo "Disabling support for NumPy extensions in Boost.Python" - - # Boost.Build does not allow for disabling of numpy - # extensions, thereby leading to automagic numpy - # https://github.com/boostorg/python/issues/111#issuecomment-280447482 - sed \ - -e 's/\[ unless \[ python\.numpy \] : <build>no \]/<build>no/g' \ - -i "${BUILD_DIR}"/libs/python/build/Jamfile || die - fi -} - -pkg_setup() { - # Bail out on unsupported build configuration, bug #456792 - if [[ -f "${EROOT}"/etc/site-config.jam ]]; then - if ! grep -q 'gentoo\(debug\|release\)' "${EROOT}"/etc/site-config.jam; then - eerror "You are using custom ${EROOT}/etc/site-config.jam without defined gentoorelease/gentoodebug targets." - eerror "Boost can not be built in such configuration." - eerror "Please, either remove this file or add targets from ${EROOT}/usr/share/boost-build/site-config.jam to it." - die "Unsupported target in ${EROOT}/etc/site-config.jam" - fi - fi -} - -src_prepare() { - default - multilib_copy_sources -} - -ejam() { - create_user-config.jam - - local b2_opts=( "--user-config=${BUILD_DIR}/user-config.jam" ) - if multilib_native_use python; then - append_to_b2_opts() { - b2_opts+=( python="${EPYTHON#python}" ) - } - python_foreach_impl append_to_b2_opts - else - b2_opts+=( --without-python ) - fi - b2_opts+=( "$@" ) - - echo b2 "${b2_opts[@]}" >&2 - b2 "${b2_opts[@]}" -} - -src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/943975 - # https://github.com/boostorg/quickbook/issues/27 - # https://github.com/boostorg/spirit/issues/800 - use tools && filter-lto - - lto-guarantee-fat - - # Workaround for too many parallel processes requested, bug #506064 - [[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64" - - # We don't want to end up with -L/usr/lib on our linker lines - # which then gives us lots of - # skipping incompatible /usr/lib/libc.a when searching for -lc - # warnings - [[ -n ${ESYSROOT} ]] && local icuarg="-sICU_PATH=${ESYSROOT}/usr" - - OPTIONS=( - $(usex debug gentoodebug gentoorelease) - "-j$(makeopts_jobs)" - -q - -d+2 - pch=off - $(usex icu "${icuarg}" '--disable-icu boost.locale.icu=off') - $(usev !mpi --without-mpi) - $(usev !nls --without-locale) - $(usev !context '--without-context --without-coroutine --without-fiber') - $(usev !stacktrace --without-stacktrace) - --boost-build="${BROOT}"/usr/share/b2/src - --layout=system - # building with threading=single is currently not possible - # https://svn.boost.org/trac/boost/ticket/7105 - threading=multi - link=shared - # this seems to be the only way to disable compression algorithms - # https://www.boost.org/doc/libs/1_70_0/libs/iostreams/doc/installation.html#boost-build - -sNO_BZIP2=$(usex bzip2 0 1) - -sNO_LZMA=$(usex lzma 0 1) - -sNO_ZLIB=$(usex zlib 0 1) - -sNO_ZSTD=$(usex zstd 0 1) - boost.stacktrace.from_exception=off - ) - - if [[ ${CHOST} == *-darwin* ]]; then - # We need to add the prefix, and in two cases this exceeds, so prepare - # for the largest possible space allocation. - append-ldflags -Wl,-headerpad_max_install_names - fi - - # Use C++17 globally as of 1.80 - append-cxxflags -std=c++17 - - if [[ ${CHOST} != *-darwin* ]]; then - # On modern macOS, file I/O is already 64-bit by default, - # there's no support for special options like O_LARGEFILE. - # Thus, LFS must be disabled. - # - # On other systems, we need to enable LFS explicitly for 64-bit - # offsets on 32-bit hosts (#894564) - append-lfs-flags - fi -} - -multilib_src_compile() { - ejam \ - --prefix="${EPREFIX}"/usr \ - "${OPTIONS[@]}" || die - - if multilib_native_use tools; then - pushd tools >/dev/null || die - ejam \ - --prefix="${EPREFIX}"/usr \ - "${OPTIONS[@]}" \ - || die "Building of Boost tools failed" - popd >/dev/null || die - fi -} - -multilib_src_install() { - ejam \ - --prefix="${ED}"/usr \ - --includedir="${ED}"/usr/include \ - --libdir="${ED}"/usr/$(get_libdir) \ - "${OPTIONS[@]}" install || die "Installation of Boost libraries failed" - - if multilib_native_use tools; then - dobin dist/bin/* - - insinto /usr/share - doins -r dist/share/boostbook - fi - - # boost's build system truely sucks for not having a destdir. Because for - # this reason we are forced to build with a prefix that includes the - # DESTROOT, dynamic libraries on Darwin end messed up, referencing the - # DESTROOT instread of the actual EPREFIX. There is no way out of here - # but to do it the dirty way of manually setting the right install_names. - if [[ ${CHOST} == *-darwin* ]]; then - einfo "Working around completely broken build-system(tm)" - local d - for d in "${ED}"/usr/lib/*.dylib; do - if [[ -f ${d} ]]; then - # fix the "soname" - ebegin " correcting install_name of ${d#${ED}}" - install_name_tool -id "/${d#${D}}" "${d}" - eend $? - # fix references to other libs - # these paths look like this: - # bin.v2/libs/thread/build/gcc-12.1/gentoorelease/pch-off/ - # threadapi-pthread/threading-multi/visibility-hidden/ - # libboost_thread.dylib - refs=$(otool -XL "${d}" | \ - sed -e '1d' -e 's/^\t//' | \ - grep "libboost_" | \ - cut -f1 -d' ') - local r - for r in ${refs}; do - # strip path prefix from references, so we obtain - # something like libboost_thread.dylib. - local r_basename=${r##*/} - - ebegin " correcting reference to ${r_basename}" - install_name_tool -change \ - "${r}" \ - "${EPREFIX}/usr/lib/${r_basename}" \ - "${d}" - eend $? - done - fi - done - fi -} - -multilib_src_install_all() { - if ! use numpy; then - rm -r "${ED}"/usr/include/boost/python/numpy* || die - fi - - if use python; then - if use mpi; then - move_mpi_py_into_sitedir() { - python_moduleinto boost - - python_domodule "${ED}"/usr/$(get_libdir)/boost-${EPYTHON}/mpi.so - rm -r "${ED}"/usr/$(get_libdir)/boost-${EPYTHON} || die - - python_optimize - } - python_foreach_impl move_mpi_py_into_sitedir - else - rm -r "${ED}"/usr/include/boost/mpi/python* || die - fi - else - rm -r "${ED}"/usr/include/boost/{python*,mpi/python*,parameter/aux_/python,parameter/python*} || die - fi - - if ! use nls; then - rm -r "${ED}"/usr/include/boost/locale || die - fi - - if ! use context; then - rm -r "${ED}"/usr/include/boost/context || die - rm -r "${ED}"/usr/include/boost/coroutine{,2} || die - rm "${ED}"/usr/include/boost/asio/spawn.hpp || die - fi - - if use doc; then - # find extraneous files that shouldn't be installed - # as part of the documentation and remove them. - find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die - find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die - find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die - - docinto html - dodoc *.{htm,html,png,css} - dodoc -r doc libs more tools - - # To avoid broken links - dodoc LICENSE_1_0.txt - - dosym ../../../../include/boost /usr/share/doc/${PF}/html/boost - fi - - strip-lto-bytecode -} - -pkg_preinst() { - # Yay for having symlinks that are nigh-impossible to remove without - # resorting to dirty hacks like these. Removes lingering symlinks - # from the slotted versions. - local symlink - for symlink in "${EROOT}"/usr/include/boost "${EROOT}"/usr/share/boostbook; do - if [[ -L ${symlink} ]]; then - rm -f "${symlink}" || die - fi - done - - # some ancient installs still have boost cruft lying around - # for unknown reasons, causing havoc for reverse dependencies - # Bug: 607734 - rm -rf "${EROOT}"/usr/include/boost-1_[3-5]? || die -} - -pkg_postinst() { - elog "Boost.Regex is *extremely* ABI sensitive. If you get errors such as" - elog - elog " undefined reference to \`boost::re_detail_$(ver_cut 1)0$(ver_cut 2)00::cpp_regex_traits_implementation" - elog " <char>::transform_primary[abi:cxx11](char const*, char const*) const'" - elog - elog "Then you need to recompile Boost and all its reverse dependencies" - elog "using the same toolchain. In general, *every* change of the C++ toolchain" - elog "requires a complete rebuild of the Boost-dependent ecosystem." - elog - elog "See for instance https://bugs.gentoo.org/638138" -} diff --git a/dev-libs/boost/files/boost-1.85.0-01-fix_unsupported_long_double_macros.patch b/dev-libs/boost/files/boost-1.85.0-01-fix_unsupported_long_double_macros.patch deleted file mode 100644 index 58387c211b44f..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-01-fix_unsupported_long_double_macros.patch +++ /dev/null @@ -1,111 +0,0 @@ -https://bugs.gentoo.org/932579 -https://github.com/boostorg/charconv/pull/183 ---- a/boost/charconv/detail/bit_layouts.hpp -+++ b/boost/charconv/detail/bit_layouts.hpp -@@ -107,6 +107,7 @@ struct IEEEl2bits - - #else // Unsupported long double representation - # define BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+# define BOOST_CHARCONV_LDBL_BITS -1 - #endif - - struct IEEEbinary128 ---- a/boost/charconv/from_chars.hpp -+++ b/boost/charconv/from_chars.hpp -@@ -139,7 +139,10 @@ BOOST_CHARCONV_GCC5_CONSTEXPR from_chars_result from_chars(boost::core::string_v - - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; -+ -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, __float128& value, chars_format fmt = chars_format::general) noexcept; -@@ -164,7 +167,10 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const - - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, double& value, chars_format fmt = chars_format::general) noexcept; -+ -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, long double& value, chars_format fmt = chars_format::general) noexcept; -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, __float128& value, chars_format fmt = chars_format::general) noexcept; -@@ -193,7 +199,10 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view - - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; -+ -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, __float128& value, chars_format fmt = chars_format::general) noexcept; -@@ -216,7 +225,10 @@ BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* - - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, double& value, chars_format fmt = chars_format::general) noexcept; -+ -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, long double& value, chars_format fmt = chars_format::general) noexcept; -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, __float128& value, chars_format fmt = chars_format::general) noexcept; ---- a/libs/charconv/src/from_chars.cpp -+++ b/libs/charconv/src/from_chars.cpp -@@ -205,7 +205,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char - return r; - } - --#else -+#elif !defined(BOOST_MATH_UNSUPPORTED_LONG_DOUBLE) - - boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char* first, const char* last, long double& value, boost::charconv::chars_format fmt) noexcept - { -@@ -299,10 +299,12 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::cor - return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); - } - -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, long double& value, boost::charconv::chars_format fmt) noexcept - { - return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); - } -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, __float128& value, boost::charconv::chars_format fmt) noexcept -@@ -372,10 +374,12 @@ boost::charconv::from_chars_result boost::charconv::from_chars(const char* first - return from_chars_strict_impl(first, last, value, fmt); - } - -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, long double& value, boost::charconv::chars_format fmt) noexcept - { - return from_chars_strict_impl(first, last, value, fmt); - } -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, __float128& value, boost::charconv::chars_format fmt) noexcept -@@ -429,10 +433,12 @@ boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::stri - return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); - } - -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, long double& value, boost::charconv::chars_format fmt) noexcept - { - return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); - } -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, __float128& value, boost::charconv::chars_format fmt) noexcept --- -2.45.2 - diff --git a/dev-libs/boost/files/boost-1.85.0-02-fix_unsupported_long_double_formats.patch b/dev-libs/boost/files/boost-1.85.0-02-fix_unsupported_long_double_formats.patch deleted file mode 100644 index 59a007907be63..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-02-fix_unsupported_long_double_formats.patch +++ /dev/null @@ -1,29 +0,0 @@ -https://bugs.gentoo.org/932579 -https://github.com/boostorg/charconv/pull/183 ---- a/boost/charconv/to_chars.hpp -+++ b/boost/charconv/to_chars.hpp -@@ -81,15 +81,21 @@ BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, float valu - chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double value, - chars_format fmt = chars_format::general) noexcept; -+ -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, - chars_format fmt = chars_format::general) noexcept; -+#endif - - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, float value, - chars_format fmt, int precision) noexcept; - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double value, - chars_format fmt, int precision) noexcept; -+ -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, - chars_format fmt, int precision) noexcept; -+#endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, __float128 value, --- -2.45.2 - diff --git a/dev-libs/boost/files/boost-1.85.0-03-disable_tests_with_unsupported_long_double_layouts.patch b/dev-libs/boost/files/boost-1.85.0-03-disable_tests_with_unsupported_long_double_layouts.patch deleted file mode 100644 index fc7a3e5b6aa5f..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-03-disable_tests_with_unsupported_long_double_layouts.patch +++ /dev/null @@ -1,420 +0,0 @@ -https://bugs.gentoo.org/932579 -https://github.com/boostorg/charconv/pull/183 ---- a/libs/charconv/test/from_chars_float.cpp -+++ b/libs/charconv/test/from_chars_float.cpp -@@ -440,6 +440,7 @@ void test_issue_37() - overflow_spot_value("1.0e+9999", HUGE_VAL); - overflow_spot_value("-1.0e+9999", -HUGE_VAL); - } -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - else - { - overflow_spot_value("1e99999", HUGE_VALL); -@@ -447,6 +448,7 @@ void test_issue_37() - overflow_spot_value("1.0e+99999", HUGE_VALL); - overflow_spot_value("-1.0e+99999", -HUGE_VALL); - } -+ #endif - - overflow_spot_value("1e-99999", static_cast<T>(0.0L)); - overflow_spot_value("-1.0e-99999", static_cast<T>(-0.0L)); -@@ -530,20 +532,22 @@ int main() - odd_strings_test<float>(); - odd_strings_test<double>(); - -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - simple_integer_test<long double>(); - simple_hex_integer_test<long double>(); - simple_scientific_test<long double>(); - simple_hex_scientific_test<long double>(); -+ zero_test<long double>(); -+ test_issue_37<long double>(); -+ #endif - - zero_test<float>(); - zero_test<double>(); -- zero_test<long double>(); - - boost_json_test<double>(); - - test_issue_37<float>(); - test_issue_37<double>(); -- test_issue_37<long double>(); - - test_issue_45<double>(static_cast<double>(-4109895455460520.5), "-4109895455460520.513430", 19); - test_issue_45<double>(1.035695536657502e-308, "1.0356955366575023e-3087", 23); -@@ -1846,40 +1850,29 @@ int main() - spot_check_nan<float>("-nan", fmt); - spot_check_nan<double>("nan", fmt); - spot_check_nan<double>("-nan", fmt); -- spot_check_nan<long double>("nan", fmt); -- spot_check_nan<long double>("-nan", fmt); - - spot_check_inf<float>("inf", fmt); - spot_check_inf<float>("-inf", fmt); - spot_check_inf<double>("inf", fmt); - spot_check_inf<double>("-inf", fmt); -- spot_check_inf<long double>("inf", fmt); -- spot_check_inf<long double>("-inf", fmt); - - spot_check_nan<float>("NAN", fmt); - spot_check_nan<float>("-NAN", fmt); - spot_check_nan<double>("NAN", fmt); - spot_check_nan<double>("-NAN", fmt); -- spot_check_nan<long double>("NAN", fmt); -- spot_check_nan<long double>("-NAN", fmt); - - spot_check_inf<float>("INF", fmt); - spot_check_inf<float>("-INF", fmt); - spot_check_inf<double>("INF", fmt); - spot_check_inf<double>("-INF", fmt); -- spot_check_inf<long double>("INF", fmt); -- spot_check_inf<long double>("-INF", fmt); - - spot_check_nan<float>("nan(snan)", fmt); - spot_check_nan<float>("-nan(snan)", fmt); - spot_check_nan<double>("nan(snan)", fmt); - spot_check_nan<double>("-nan(snan)", fmt); -- spot_check_nan<long double>("nan(snan)", fmt); -- spot_check_nan<long double>("-nan(snan)", fmt); - - spot_check_nan<float>("-nan(ind)", fmt); - spot_check_nan<double>("-nan(ind)", fmt); -- spot_check_nan<long double>("-nan(ind)", fmt); - - spot_check_invalid_argument<float>("na7", fmt); - spot_check_invalid_argument<float>("na", fmt); -@@ -1889,8 +1882,22 @@ int main() - spot_check_invalid_argument<float>(" 1.23", fmt); - spot_check_invalid_argument<double>(" 1.23", fmt); - spot_check_invalid_argument<double>(" 1.23", fmt); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ spot_check_nan<long double>("nan", fmt); -+ spot_check_nan<long double>("-nan", fmt); -+ spot_check_inf<long double>("inf", fmt); -+ spot_check_inf<long double>("-inf", fmt); -+ spot_check_nan<long double>("NAN", fmt); -+ spot_check_nan<long double>("-NAN", fmt); -+ spot_check_inf<long double>("INF", fmt); -+ spot_check_inf<long double>("-INF", fmt); -+ spot_check_nan<long double>("nan(snan)", fmt); -+ spot_check_nan<long double>("-nan(snan)", fmt); -+ spot_check_nan<long double>("-nan(ind)", fmt); - spot_check_invalid_argument<long double>(" 1.23", fmt); - spot_check_invalid_argument<long double>(" 1.23", fmt); -+ #endif - } - - return boost::report_errors(); ---- a/libs/charconv/test/from_chars_string_view.cpp -+++ b/libs/charconv/test/from_chars_string_view.cpp -@@ -116,17 +116,23 @@ int main() - - test_float<float>(); - test_float<double>(); -- test_float<long double>(); - - test_float<float, std::string>(); - test_float<double, std::string>(); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ test_float<long double>(); - test_float<long double, std::string>(); -+ #endif - - #if !defined(BOOST_NO_CXX17_HDR_STRING_VIEW) - - test_float<float, std::string_view>(); - test_float<double, std::string_view>(); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test_float<long double, std::string_view>(); -+ #endif - - #endif - ---- a/libs/charconv/test/github_issue_110.cpp -+++ b/libs/charconv/test/github_issue_110.cpp -@@ -42,7 +42,10 @@ int main() - { - test<float>(); - test<double>(); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test<long double>(); -+ #endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 - test<__float128>(); ---- a/libs/charconv/test/github_issue_122.cpp -+++ b/libs/charconv/test/github_issue_122.cpp -@@ -52,7 +52,10 @@ int main() - { - test<float>(); - test<double>(); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test<long double>(); -+ #endif - - return boost::report_errors(); - } ---- a/libs/charconv/test/github_issue_152.cpp -+++ b/libs/charconv/test/github_issue_152.cpp -@@ -188,7 +188,6 @@ int main() - { - test_non_finite<float>(); - test_non_finite<double>(); -- test_non_finite<long double>(); - #ifdef BOOST_CHARCONV_HAS_FLOAT16 - test_non_finite<std::float16_t>(); - #endif -@@ -204,7 +203,6 @@ int main() - - test_non_finite_fixed_precision<float>(); - test_non_finite_fixed_precision<double>(); -- test_non_finite_fixed_precision<long double>(); - #ifdef BOOST_CHARCONV_HAS_FLOAT16 - test_non_finite_fixed_precision<std::float16_t>(); - #endif -@@ -220,7 +218,6 @@ int main() - - test_min_buffer_size<float>(); - test_min_buffer_size<double>(); -- test_min_buffer_size<long double>(); - #ifdef BOOST_CHARCONV_HAS_FLOAT32 - test_min_buffer_size<std::float32_t>(); - #endif -@@ -232,5 +229,11 @@ int main() - test_failed_values(); - #endif - -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ test_non_finite<long double>(); -+ test_non_finite_fixed_precision<long double>(); -+ test_min_buffer_size<long double>(); -+ #endif -+ - return boost::report_errors(); - } ---- a/libs/charconv/test/github_issue_158.cpp -+++ b/libs/charconv/test/github_issue_158.cpp -@@ -93,6 +93,7 @@ void test_values_with_negative_exp() - BOOST_TEST_CSTR_EQ(buffer, "0.00000000000000000000099999999999999990753745222790"); - } - -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - void test_long_double_with_negative_exp() - { - char buffer[256]; -@@ -126,6 +127,7 @@ void test_long_double_with_negative_exp() - // BOOST_TEST_CSTR_EQ(buffer, "0.00000000000000000999999999999999999997135886174218"); - BOOST_TEST_CSTR_EQ(buffer, "0.00000000000000001000000000000000000000000000000000"); - } -+#endif - - void test_values_with_positive_exp() - { -@@ -407,6 +409,7 @@ void test_zero() - BOOST_TEST_CSTR_EQ(buffer, "0"); - } - -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - void test_long_double_with_positive_exp() - { - char buffer[256]; -@@ -438,6 +441,7 @@ void test_long_double_with_positive_exp() - BOOST_TEST(res); - BOOST_TEST_CSTR_EQ(buffer, "100000000000000000.00000000000000000000000000000000000000000000000000"); - } -+#endif - - template <typename T> - void test_spot_value(T value, int precision, const char* result, boost::charconv::chars_format fmt = boost::charconv::chars_format::fixed) ---- a/libs/charconv/test/limits.cpp -+++ b/libs/charconv/test/limits.cpp -@@ -227,7 +227,10 @@ int main() - - test_floating_point<float>(); - test_floating_point<double>(); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test_floating_point<long double>(); -+ #endif - - #ifdef BOOST_CHARCONV_HAS_INT128 - ---- a/libs/charconv/test/limits_link_1.cpp -+++ b/libs/charconv/test/limits_link_1.cpp -@@ -3,6 +3,7 @@ - // https://www.boost.org/LICENSE_1_0.txt - - #include <boost/charconv/limits.hpp> -+#include <boost/charconv/detail/bit_layouts.hpp> - - void test_odr_use( int const* ); - -@@ -28,7 +29,9 @@ void f1() - - test<float>(); - test<double>(); -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test<long double>(); -+ #endif - - #ifdef BOOST_CHARCONV_HAS_INT128 - ---- a/libs/charconv/test/limits_link_2.cpp -+++ b/libs/charconv/test/limits_link_2.cpp -@@ -3,6 +3,7 @@ - // https://www.boost.org/LICENSE_1_0.txt - - #include <boost/charconv/limits.hpp> -+#include <boost/charconv/detail/bit_layouts.hpp> - - void test_odr_use( int const* ); - -@@ -28,7 +29,9 @@ void f2() - - test<float>(); - test<double>(); -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test<long double>(); -+ #endif - - #ifdef BOOST_CHARCONV_HAS_INT128 - ---- a/libs/charconv/test/roundtrip.cpp -+++ b/libs/charconv/test/roundtrip.cpp -@@ -347,6 +347,7 @@ template<typename FPType> int64_t Distance(FPType y, FPType x) - return ToOrdinal(y) - ToOrdinal(x); - } - -+#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - template <> void test_roundtrip<long double>(long double value) - { - char buffer[ 256 ]; -@@ -381,6 +382,7 @@ template <> void test_roundtrip<long double>(long double value) - // LCOV_EXCL_STOP - } - } -+#endif - - // floating point types, boundary values - -@@ -601,7 +603,7 @@ int main() - #endif - - // long double -- #if !(BOOST_CHARCONV_LDBL_BITS == 128) -+ #if !(BOOST_CHARCONV_LDBL_BITS == 128) && !defined(BOOST_MATH_UNSUPPORTED_LONG_DOUBLE) - - { - long double const ql = std::pow( 1.0L, -64 ); ---- a/libs/charconv/test/to_chars_float.cpp -+++ b/libs/charconv/test/to_chars_float.cpp -@@ -202,7 +202,7 @@ int main() - non_finite_values<double>(boost::charconv::chars_format::hex, 2); - - // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57484 -- #if !(defined(__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ < 9 && defined(__i686__)) -+ #if !(defined(__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ < 9 && defined(__i686__)) && !defined(BOOST_MATH_UNSUPPORTED_LONG_DOUBLE) - non_finite_values<long double>(); - #endif - ---- a/libs/charconv/test/to_chars_float_STL_comp.cpp -+++ b/libs/charconv/test/to_chars_float_STL_comp.cpp -@@ -212,7 +212,10 @@ int main() - // General format - random_test<float>(); - random_test<double>(); -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(); -+ #endif -+ - test_spot<double>(0.0); - test_spot<double>(-0.0); - -@@ -224,7 +227,9 @@ int main() - // Scientific - random_test<float>(boost::charconv::chars_format::scientific); - random_test<double>(boost::charconv::chars_format::scientific); -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(boost::charconv::chars_format::scientific); -+ #endif - test_spot<double>(0.0, boost::charconv::chars_format::scientific); - test_spot<double>(-0.0, boost::charconv::chars_format::scientific); - -@@ -237,14 +242,20 @@ int main() - // Hex - random_test<float>(boost::charconv::chars_format::hex); - random_test<double>(boost::charconv::chars_format::hex); -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(boost::charconv::chars_format::hex); -+ #endif - - #if !defined(_LIBCPP_VERSION) -+ - random_test<float>(boost::charconv::chars_format::hex, -1e5F, 1e5F); - random_test<double>(boost::charconv::chars_format::hex, -1e5, 1e5); -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(boost::charconv::chars_format::hex, -1e5L, 1e5L); - #endif - -+ #endif -+ - test_spot<double>(-9.52743282403084637e+306, boost::charconv::chars_format::hex); - test_spot<double>(-9.52743282403084637e-306, boost::charconv::chars_format::hex); - test_spot<double>(-9.52743282403084637e+305, boost::charconv::chars_format::hex); -@@ -261,13 +272,16 @@ int main() - // Various non-finite values - non_finite_test<float>(); - non_finite_test<double>(); -- non_finite_test<long double>(); - non_finite_test<float>(boost::charconv::chars_format::scientific); - non_finite_test<double>(boost::charconv::chars_format::scientific); -- non_finite_test<long double>(boost::charconv::chars_format::scientific); - non_finite_test<float>(boost::charconv::chars_format::hex); - non_finite_test<double>(boost::charconv::chars_format::hex); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ non_finite_test<long double>(); -+ non_finite_test<long double>(boost::charconv::chars_format::scientific); - non_finite_test<long double>(boost::charconv::chars_format::hex); -+ #endif - - #if (defined(__GNUC__) && __GNUC__ >= 11) || (defined(_MSC_VER) && _MSC_VER >= 1924) - // Selected additional values -@@ -288,7 +302,10 @@ int main() - // Reported in issue #93 - test_spot<float>(3.3F); - test_spot<double>(3.3); -+ -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - test_spot<long double>(3.3L); -+ #endif - - return boost::report_errors(); - } ---- a/libs/charconv/test/to_chars_sprintf.cpp -+++ b/libs/charconv/test/to_chars_sprintf.cpp -@@ -627,6 +627,7 @@ int main() - - // long double - -+ #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE - { - for( int i = 0; i < N; ++i ) - { -@@ -665,6 +666,7 @@ int main() - - test_sprintf_bv_fp<long double>(); - } -+ #endif - - return boost::report_errors(); - } --- -2.45.2 - diff --git a/dev-libs/boost/files/boost-1.85.0-04-remove_cruft_codeblock.patch b/dev-libs/boost/files/boost-1.85.0-04-remove_cruft_codeblock.patch deleted file mode 100644 index 8d91e5f41746f..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-04-remove_cruft_codeblock.patch +++ /dev/null @@ -1,52 +0,0 @@ -https://bugs.gentoo.org/932579 -https://github.com/boostorg/charconv/pull/183 ---- a/libs/charconv/src/to_chars.cpp -+++ b/libs/charconv/src/to_chars.cpp -@@ -620,44 +620,6 @@ boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* la - return boost::charconv::detail::to_chars_float_impl(first, last, value, fmt, precision); - } - --#else -- --boost::charconv::to_chars_result boost::charconv::to_chars( char* first, char* last, long double value, -- boost::charconv::chars_format fmt, int precision) noexcept --{ -- if (std::isnan(value)) -- { -- bool is_negative = false; -- if (std::signbit(value)) -- { -- is_negative = true; -- *first++ = '-'; -- } -- -- if (issignaling(value)) -- { -- std::memcpy(first, "nan(snan)", 9); -- return { first + 9 + static_cast<int>(is_negative), std::errc() }; -- } -- else -- { -- if (is_negative) -- { -- std::memcpy(first, "nan(ind)", 8); -- return { first + 9, std::errc() }; -- } -- else -- { -- std::memcpy(first, "nan", 3); -- return { first + 3, std::errc() }; -- } -- } -- } -- -- // Fallback to printf -- return boost::charconv::detail::to_chars_printf_impl(first, last, value, fmt, precision); --} -- - #endif - - #ifdef BOOST_CHARCONV_HAS_FLOAT128 --- -2.45.2 - diff --git a/dev-libs/boost/files/boost-1.85.0-05-fix_macro_name.patch b/dev-libs/boost/files/boost-1.85.0-05-fix_macro_name.patch deleted file mode 100644 index 69899ae3b8503..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-05-fix_macro_name.patch +++ /dev/null @@ -1,356 +0,0 @@ -https://bugs.gentoo.org/932579 -https://github.com/boostorg/charconv/pull/183 ---- a/boost/charconv/detail/bit_layouts.hpp -+++ b/boost/charconv/detail/bit_layouts.hpp -@@ -106,7 +106,7 @@ struct IEEEl2bits - #define BOOST_CHARCONV_LDBL_BITS 64 - - #else // Unsupported long double representation --# define BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+# define BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - # define BOOST_CHARCONV_LDBL_BITS -1 - #endif - ---- a/boost/charconv/from_chars.hpp -+++ b/boost/charconv/from_chars.hpp -@@ -140,7 +140,7 @@ BOOST_CHARCONV_GCC5_CONSTEXPR from_chars_result from_chars(boost::core::string_v - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; - #endif - -@@ -168,7 +168,7 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(const char* first, const - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, double& value, chars_format fmt = chars_format::general) noexcept; - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view sv, long double& value, chars_format fmt = chars_format::general) noexcept; - #endif - -@@ -200,7 +200,7 @@ BOOST_CHARCONV_DECL from_chars_result from_chars_erange(boost::core::string_view - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, double& value, chars_format fmt = chars_format::general) noexcept; - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general) noexcept; - #endif - -@@ -226,7 +226,7 @@ BOOST_CHARCONV_DECL from_chars_result from_chars(const char* first, const char* - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, float& value, chars_format fmt = chars_format::general) noexcept; - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, double& value, chars_format fmt = chars_format::general) noexcept; - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL from_chars_result from_chars(boost::core::string_view sv, long double& value, chars_format fmt = chars_format::general) noexcept; - #endif - ---- a/boost/charconv/to_chars.hpp -+++ b/boost/charconv/to_chars.hpp -@@ -82,7 +82,7 @@ BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, float valu - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double value, - chars_format fmt = chars_format::general) noexcept; - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, - chars_format fmt = chars_format::general) noexcept; - #endif -@@ -92,7 +92,7 @@ BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, float valu - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, double value, - chars_format fmt, int precision) noexcept; - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - BOOST_CHARCONV_DECL to_chars_result to_chars(char* first, char* last, long double value, - chars_format fmt, int precision) noexcept; - #endif ---- a/libs/charconv/src/from_chars.cpp -+++ b/libs/charconv/src/from_chars.cpp -@@ -205,7 +205,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char - return r; - } - --#elif !defined(BOOST_MATH_UNSUPPORTED_LONG_DOUBLE) -+#elif !defined(BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE) - - boost::charconv::from_chars_result boost::charconv::from_chars_erange(const char* first, const char* last, long double& value, boost::charconv::chars_format fmt) noexcept - { -@@ -299,7 +299,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::cor - return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); - } - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - boost::charconv::from_chars_result boost::charconv::from_chars_erange(boost::core::string_view sv, long double& value, boost::charconv::chars_format fmt) noexcept - { - return boost::charconv::from_chars_erange(sv.data(), sv.data() + sv.size(), value, fmt); -@@ -374,7 +374,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars(const char* first - return from_chars_strict_impl(first, last, value, fmt); - } - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - boost::charconv::from_chars_result boost::charconv::from_chars(const char* first, const char* last, long double& value, boost::charconv::chars_format fmt) noexcept - { - return from_chars_strict_impl(first, last, value, fmt); -@@ -433,7 +433,7 @@ boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::stri - return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); - } - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - boost::charconv::from_chars_result boost::charconv::from_chars(boost::core::string_view sv, long double& value, boost::charconv::chars_format fmt) noexcept - { - return from_chars_strict_impl(sv.data(), sv.data() + sv.size(), value, fmt); ---- a/libs/charconv/src/to_chars.cpp -+++ b/libs/charconv/src/to_chars.cpp -@@ -601,7 +601,7 @@ boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* la - return boost::charconv::detail::to_chars_float_impl(first, last, static_cast<double>(value), fmt, precision); - } - --#elif (BOOST_CHARCONV_LDBL_BITS == 80 || BOOST_CHARCONV_LDBL_BITS == 128) -+#elif !defined(BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE) - - boost::charconv::to_chars_result boost::charconv::to_chars(char* first, char* last, long double value, - boost::charconv::chars_format fmt) noexcept ---- a/libs/charconv/test/from_chars_float.cpp -+++ b/libs/charconv/test/from_chars_float.cpp -@@ -440,7 +440,7 @@ void test_issue_37() - overflow_spot_value("1.0e+9999", HUGE_VAL); - overflow_spot_value("-1.0e+9999", -HUGE_VAL); - } -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - else - { - overflow_spot_value("1e99999", HUGE_VALL); -@@ -532,7 +532,7 @@ int main() - odd_strings_test<float>(); - odd_strings_test<double>(); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - simple_integer_test<long double>(); - simple_hex_integer_test<long double>(); - simple_scientific_test<long double>(); -@@ -1883,7 +1883,7 @@ int main() - spot_check_invalid_argument<double>(" 1.23", fmt); - spot_check_invalid_argument<double>(" 1.23", fmt); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - spot_check_nan<long double>("nan", fmt); - spot_check_nan<long double>("-nan", fmt); - spot_check_inf<long double>("inf", fmt); ---- a/libs/charconv/test/from_chars_string_view.cpp -+++ b/libs/charconv/test/from_chars_string_view.cpp -@@ -120,7 +120,7 @@ int main() - test_float<float, std::string>(); - test_float<double, std::string>(); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test_float<long double>(); - test_float<long double, std::string>(); - #endif -@@ -130,7 +130,7 @@ int main() - test_float<float, std::string_view>(); - test_float<double, std::string_view>(); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test_float<long double, std::string_view>(); - #endif - ---- a/libs/charconv/test/github_issue_110.cpp -+++ b/libs/charconv/test/github_issue_110.cpp -@@ -43,7 +43,7 @@ int main() - test<float>(); - test<double>(); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test<long double>(); - #endif - ---- a/libs/charconv/test/github_issue_122.cpp -+++ b/libs/charconv/test/github_issue_122.cpp -@@ -53,7 +53,7 @@ int main() - test<float>(); - test<double>(); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test<long double>(); - #endif - ---- a/libs/charconv/test/github_issue_152.cpp -+++ b/libs/charconv/test/github_issue_152.cpp -@@ -229,7 +229,7 @@ int main() - test_failed_values(); - #endif - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test_non_finite<long double>(); - test_non_finite_fixed_precision<long double>(); - test_min_buffer_size<long double>(); ---- a/libs/charconv/test/github_issue_158.cpp -+++ b/libs/charconv/test/github_issue_158.cpp -@@ -93,7 +93,7 @@ void test_values_with_negative_exp() - BOOST_TEST_CSTR_EQ(buffer, "0.00000000000000000000099999999999999990753745222790"); - } - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - void test_long_double_with_negative_exp() - { - char buffer[256]; -@@ -409,7 +409,7 @@ void test_zero() - BOOST_TEST_CSTR_EQ(buffer, "0"); - } - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - void test_long_double_with_positive_exp() - { - char buffer[256]; ---- a/libs/charconv/test/limits.cpp -+++ b/libs/charconv/test/limits.cpp -@@ -228,7 +228,7 @@ int main() - test_floating_point<float>(); - test_floating_point<double>(); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test_floating_point<long double>(); - #endif - ---- a/libs/charconv/test/limits_link_1.cpp -+++ b/libs/charconv/test/limits_link_1.cpp -@@ -29,7 +29,7 @@ void f1() - - test<float>(); - test<double>(); -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test<long double>(); - #endif - ---- a/libs/charconv/test/limits_link_2.cpp -+++ b/libs/charconv/test/limits_link_2.cpp -@@ -29,7 +29,7 @@ void f2() - - test<float>(); - test<double>(); -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test<long double>(); - #endif - ---- a/libs/charconv/test/roundtrip.cpp -+++ b/libs/charconv/test/roundtrip.cpp -@@ -347,7 +347,7 @@ template<typename FPType> int64_t Distance(FPType y, FPType x) - return ToOrdinal(y) - ToOrdinal(x); - } - --#ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+#ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - template <> void test_roundtrip<long double>(long double value) - { - char buffer[ 256 ]; -@@ -603,7 +603,7 @@ int main() - #endif - - // long double -- #if !(BOOST_CHARCONV_LDBL_BITS == 128) && !defined(BOOST_MATH_UNSUPPORTED_LONG_DOUBLE) -+ #if !(BOOST_CHARCONV_LDBL_BITS == 128) && !defined(BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE) - - { - long double const ql = std::pow( 1.0L, -64 ); ---- a/libs/charconv/test/to_chars_float.cpp -+++ b/libs/charconv/test/to_chars_float.cpp -@@ -202,7 +202,7 @@ int main() - non_finite_values<double>(boost::charconv::chars_format::hex, 2); - - // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57484 -- #if !(defined(__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ < 9 && defined(__i686__)) && !defined(BOOST_MATH_UNSUPPORTED_LONG_DOUBLE) -+ #if !(defined(__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ < 9 && defined(__i686__)) && !defined(BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE) - non_finite_values<long double>(); - #endif - ---- a/libs/charconv/test/to_chars_float_STL_comp.cpp -+++ b/libs/charconv/test/to_chars_float_STL_comp.cpp -@@ -212,7 +212,7 @@ int main() - // General format - random_test<float>(); - random_test<double>(); -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(); - #endif - -@@ -227,7 +227,7 @@ int main() - // Scientific - random_test<float>(boost::charconv::chars_format::scientific); - random_test<double>(boost::charconv::chars_format::scientific); -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(boost::charconv::chars_format::scientific); - #endif - test_spot<double>(0.0, boost::charconv::chars_format::scientific); -@@ -242,7 +242,7 @@ int main() - // Hex - random_test<float>(boost::charconv::chars_format::hex); - random_test<double>(boost::charconv::chars_format::hex); -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(boost::charconv::chars_format::hex); - #endif - -@@ -250,7 +250,7 @@ int main() - - random_test<float>(boost::charconv::chars_format::hex, -1e5F, 1e5F); - random_test<double>(boost::charconv::chars_format::hex, -1e5, 1e5); -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - random_test<long double>(boost::charconv::chars_format::hex, -1e5L, 1e5L); - #endif - -@@ -277,7 +277,7 @@ int main() - non_finite_test<float>(boost::charconv::chars_format::hex); - non_finite_test<double>(boost::charconv::chars_format::hex); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - non_finite_test<long double>(); - non_finite_test<long double>(boost::charconv::chars_format::scientific); - non_finite_test<long double>(boost::charconv::chars_format::hex); -@@ -303,7 +303,7 @@ int main() - test_spot<float>(3.3F); - test_spot<double>(3.3); - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - test_spot<long double>(3.3L); - #endif - ---- a/libs/charconv/test/to_chars_sprintf.cpp -+++ b/libs/charconv/test/to_chars_sprintf.cpp -@@ -627,7 +627,7 @@ int main() - - // long double - -- #ifndef BOOST_MATH_UNSUPPORTED_LONG_DOUBLE -+ #ifndef BOOST_CHARCONV_UNSUPPORTED_LONG_DOUBLE - { - for( int i = 0; i < N; ++i ) - { --- -2.45.2 - diff --git a/dev-libs/boost/files/boost-1.85.0-bcp-filesystem.patch b/dev-libs/boost/files/boost-1.85.0-bcp-filesystem.patch deleted file mode 100644 index 23d94040341d1..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-bcp-filesystem.patch +++ /dev/null @@ -1,188 +0,0 @@ -https://bugs.gentoo.org/932240 -https://github.com/boostorg/bcp/commit/cd21e9b4a749a77c24facf2da44f01e032c40842 - -From cd21e9b4a749a77c24facf2da44f01e032c40842 Mon Sep 17 00:00:00 2001 -From: Andrey Semashev <andrey.semashev@gmail.com> -Date: Sun, 24 Mar 2024 14:49:18 +0300 -Subject: [PATCH] Remove usage of deprecated and removed Boost.Filesystem APIs. - ---- - add_dependent_lib.cpp | 5 +++-- - add_path.cpp | 30 +++++++++++++++--------------- - bcp_imp.hpp | 1 + - copy_path.cpp | 8 ++++---- - file_types.cpp | 2 +- - 5 files changed, 24 insertions(+), 22 deletions(-) - -diff --git a/tools/bcp/add_dependent_lib.cpp b/tools/bcp/add_dependent_lib.cpp -index 4852914..521b70d 100644 ---- a/tools/bcp/add_dependent_lib.cpp -+++ b/tools/bcp/add_dependent_lib.cpp -@@ -15,6 +15,7 @@ - #include "bcp_imp.hpp" - #include "fileview.hpp" - #include <boost/regex.hpp> -+#include <boost/filesystem/directory.hpp> - #include <boost/filesystem/operations.hpp> - #include <boost/filesystem/exception.hpp> - #include <iostream> -@@ -43,12 +44,12 @@ static void init_library_scanner(const fs::path& p, bool cvs_mode, const std::st - // - // Don't add files created by build system: - // -- if((p.leaf() == "bin") || (p.leaf() == "bin-stage")) -+ if((p.filename() == "bin") || (p.filename() == "bin-stage")) - return; - // - // Don't add version control directories: - // -- if((p.leaf() == "CVS") || (p.leaf() == ".svn")) -+ if((p.filename() == "CVS") || (p.filename() == ".svn")) - return; - // - // don't add directories not under version control: -diff --git a/tools/bcp/add_path.cpp b/tools/bcp/add_path.cpp -index 8a1fee3..747bb8c 100644 ---- a/tools/bcp/add_path.cpp -+++ b/tools/bcp/add_path.cpp -@@ -15,6 +15,7 @@ - #include "bcp_imp.hpp" - #include "fileview.hpp" - #include <boost/regex.hpp> -+#include <boost/filesystem/directory.hpp> - #include <boost/filesystem/operations.hpp> - #include <boost/filesystem/exception.hpp> - #include <iostream> -@@ -24,8 +25,7 @@ void bcp_implementation::add_path(const fs::path& p) - { - if (m_excluded.find(p) != m_excluded.end()) - return; -- fs::path normalized_path = p; -- normalized_path.normalize(); -+ fs::path normalized_path = p.lexically_normal(); - if(fs::exists(m_boost_path / normalized_path)) - { - if(fs::is_directory(m_boost_path / normalized_path)) -@@ -45,12 +45,12 @@ void bcp_implementation::add_directory(const fs::path& p) - // - // Don't add files created by build system: - // -- if((p.leaf() == "bin") || (p.leaf() == "bin-stage")) -+ if((p.filename() == "bin") || (p.filename() == "bin-stage")) - return; - // - // Don't add version control directories: - // -- if((p.leaf() == "CVS") || (p.leaf() == ".svn")) -+ if((p.filename() == "CVS") || (p.filename() == ".svn")) - return; - // - // don't add directories not under version control: -@@ -180,7 +180,7 @@ void bcp_implementation::add_file(const fs::path& p) - { - // only concatonate if it's a relative path - // rather than a URL: -- fs::path dep(p.branch_path() / s); -+ fs::path dep(p.parent_path() / s); - if(!m_dependencies.count(dep)) - { - m_dependencies[dep] = p; // set up dependency tree -@@ -355,13 +355,13 @@ void bcp_implementation::add_file_dependencies(const fs::path& p, bool scanfile) - continue; - } - include_file = i->str(); -- fs::path test_file(m_boost_path / p.branch_path() / include_file); -- if(fs::exists(test_file) && !fs::is_directory(test_file) && (p.branch_path().string() != "boost")) -+ fs::path test_file(m_boost_path / p.parent_path() / include_file); -+ if(fs::exists(test_file) && !fs::is_directory(test_file) && (p.parent_path().string() != "boost")) - { -- if(!m_dependencies.count(p.branch_path() / include_file)) -+ if(!m_dependencies.count(p.parent_path() / include_file)) - { -- m_dependencies[p.branch_path() / include_file] = p; -- add_pending_path(p.branch_path() / include_file); -+ m_dependencies[p.parent_path() / include_file] = p; -+ add_pending_path(p.parent_path() / include_file); - } - } - else if(fs::exists(m_boost_path / include_file)) -@@ -405,13 +405,13 @@ void bcp_implementation::add_file_dependencies(const fs::path& p, bool scanfile) - ++i; - continue; - } -- fs::path test_file(m_boost_path / p.branch_path() / include_file); -- if(fs::exists(test_file) && !fs::is_directory(test_file) && (p.branch_path().string() != "boost")) -+ fs::path test_file(m_boost_path / p.parent_path() / include_file); -+ if(fs::exists(test_file) && !fs::is_directory(test_file) && (p.parent_path().string() != "boost")) - { -- if(!m_dependencies.count(p.branch_path() / include_file)) -+ if(!m_dependencies.count(p.parent_path() / include_file)) - { -- m_dependencies[p.branch_path() / include_file] = p; -- add_pending_path(p.branch_path() / include_file); -+ m_dependencies[p.parent_path() / include_file] = p; -+ add_pending_path(p.parent_path() / include_file); - } - } - else if(fs::exists(m_boost_path / include_file)) -diff --git a/tools/bcp/bcp_imp.hpp b/tools/bcp/bcp_imp.hpp -index e515581..51c85ba 100644 ---- a/tools/bcp/bcp_imp.hpp -+++ b/tools/bcp/bcp_imp.hpp -@@ -14,6 +14,7 @@ - #include <set> - #include <map> - #include <queue> -+#include <string> - #include <boost/filesystem/path.hpp> - - namespace fs = boost::filesystem; -diff --git a/tools/bcp/copy_path.cpp b/tools/bcp/copy_path.cpp -index 4143c79..6b7a370 100644 ---- a/tools/bcp/copy_path.cpp -+++ b/tools/bcp/copy_path.cpp -@@ -49,18 +49,18 @@ void bcp_implementation::copy_path(const fs::path& p) - if(fs::exists(m_dest_path / p)) - { - std::cout << "Copying (and overwriting) file: " << p.string() << "\n"; -- fs::remove(m_dest_path / p); -+ fs::remove(m_dest_path / p); - } - else - std::cout << "Copying file: " << p.string() << "\n"; - // - // create the path to the new file if it doesn't already exist: - // -- create_path(p.branch_path()); -+ create_path(p.parent_path()); - // - // do text based copy if requested: - // -- if((p.leaf() == "Jamroot") && m_namespace_name.size()) -+ if((p.filename() == "Jamroot") && m_namespace_name.size()) - { - static std::vector<char> v1, v2; - v1.clear(); -@@ -240,7 +240,7 @@ void bcp_implementation::create_path(const fs::path& p) - if(!fs::exists(m_dest_path / p)) - { - // recurse then create the path: -- create_path(p.branch_path()); -+ create_path(p.parent_path()); - fs::create_directory(m_dest_path / p); - } - } -diff --git a/tools/bcp/file_types.cpp b/tools/bcp/file_types.cpp -index 297d304..69f6027 100644 ---- a/tools/bcp/file_types.cpp -+++ b/tools/bcp/file_types.cpp -@@ -52,7 +52,7 @@ bool bcp_implementation::is_binary_file(const fs::path& p) - "|" - "(Jamfile|makefile|configure)", - boost::regex::perl | boost::regex::icase); -- return !boost::regex_match(p.leaf().generic_string(), e); -+ return !boost::regex_match(p.filename().generic_string(), e); - - } - - diff --git a/dev-libs/boost/files/boost-1.85.0-container-aliasing.patch b/dev-libs/boost/files/boost-1.85.0-container-aliasing.patch deleted file mode 100644 index cfc1215e70231..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-container-aliasing.patch +++ /dev/null @@ -1,408 +0,0 @@ -https://bugs.gentoo.org/933289 (and https://bugs.gentoo.org/932780, https://bugs.gentoo.org/931587) -https://github.com/freeorion/freeorion/issues/4949 -https://github.com/boostorg/container/issues/252 -https://github.com/boostorg/container/issues/281 -https://github.com/boostorg/container/commit/20ad12f20e661978e90dc7f36d8ab8ac05e5a5a9 - -From 20ad12f20e661978e90dc7f36d8ab8ac05e5a5a9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= <igaztanaga@gmail.com> -Date: Sun, 28 Apr 2024 23:29:59 +0200 -Subject: [PATCH] Remove UB in flat_map implementation when the implementation - has a movable std::pair - ---- a/boost/container/allocator_traits.hpp -+++ b/boost/container/allocator_traits.hpp -@@ -32,6 +32,8 @@ - #include <boost/container/detail/mpl.hpp> - #include <boost/container/detail/type_traits.hpp> //is_empty - #include <boost/container/detail/placement_new.hpp> -+#include <boost/container/detail/is_pair.hpp> -+#include <boost/container/detail/addressof.hpp> - #ifndef BOOST_CONTAINER_DETAIL_STD_FWD_HPP - #include <boost/container/detail/std_fwd.hpp> - #endif -@@ -81,6 +83,144 @@ - - namespace boost { - namespace container { -+namespace dtl { -+ -+#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) -+ -+template<class T, class ...Args> -+BOOST_CONTAINER_FORCEINLINE void construct_type(T *p, BOOST_FWD_REF(Args) ...args) -+{ -+ ::new((void*)p, boost_container_new_t()) T(::boost::forward<Args>(args)...); -+} -+ -+template < class Pair, class KeyType, class ... Args> -+typename dtl::enable_if< dtl::is_pair<Pair>, void >::type -+construct_type -+ (Pair* p, try_emplace_t, BOOST_FWD_REF(KeyType) k, BOOST_FWD_REF(Args) ...args) -+{ -+ construct_type(dtl::addressof(p->first), ::boost::forward<KeyType>(k)); -+ BOOST_CONTAINER_TRY{ -+ construct_type(dtl::addressof(p->second), ::boost::forward<Args>(args)...); -+ } -+ BOOST_CONTAINER_CATCH(...) { -+ typedef typename Pair::first_type first_type; -+ dtl::addressof(p->first)->~first_type(); -+ BOOST_CONTAINER_RETHROW -+ } -+ BOOST_CONTAINER_CATCH_END -+} -+ -+#else -+ -+#define BOOST_CONTAINER_ALLOCATOR_TRAITS_CONSTRUCT_TYPEJ(N) \ -+template<class T BOOST_MOVE_I##N BOOST_MOVE_CLASS##N>\ -+BOOST_CONTAINER_FORCEINLINE \ -+ typename dtl::disable_if_c<dtl::is_pair<T>::value, void >::type \ -+construct_type(T *p BOOST_MOVE_I##N BOOST_MOVE_UREF##N)\ -+{\ -+ ::new((void*)p, boost_container_new_t()) T( BOOST_MOVE_FWD##N );\ -+}\ -+// -+BOOST_MOVE_ITERATE_0TO8(BOOST_CONTAINER_ALLOCATOR_TRAITS_CONSTRUCT_TYPEJ) -+#undef BOOST_CONTAINER_ALLOCATOR_TRAITS_CONSTRUCT_TYPEJ -+ -+#define BOOST_CONTAINER_ALLOCATOR_TRAITS_CONSTRUCT_TYPE(N) \ -+template < class Pair, class KeyType BOOST_MOVE_I##N BOOST_MOVE_CLASS##N>\ -+typename dtl::enable_if< dtl::is_pair<Pair>, void >::type construct_type\ -+ (Pair* p, try_emplace_t, BOOST_FWD_REF(KeyType) k BOOST_MOVE_I##N BOOST_MOVE_UREF##N)\ -+{\ -+ construct_type(dtl::addressof(p->first), ::boost::forward<KeyType>(k));\ -+ BOOST_CONTAINER_TRY{\ -+ construct_type(dtl::addressof(p->second) BOOST_MOVE_I##N BOOST_MOVE_FWD##N);\ -+ }\ -+ BOOST_CONTAINER_CATCH(...) {\ -+ typedef typename Pair::first_type first_type;\ -+ dtl::addressof(p->first)->~first_type();\ -+ BOOST_CONTAINER_RETHROW\ -+ }\ -+ BOOST_CONTAINER_CATCH_END\ -+}\ -+// -+BOOST_MOVE_ITERATE_0TO8(BOOST_CONTAINER_ALLOCATOR_TRAITS_CONSTRUCT_TYPE) -+#undef BOOST_CONTAINER_ALLOCATOR_TRAITS_CONSTRUCT_TYPE -+ -+#endif -+ -+template<class T> -+inline -+typename dtl::enable_if<dtl::is_pair<T>, void >::type -+construct_type(T* p) -+{ -+ dtl::construct_type(dtl::addressof(p->first)); -+ BOOST_CONTAINER_TRY{ -+ dtl::construct_type(dtl::addressof(p->second)); -+ } -+ BOOST_CONTAINER_CATCH(...) { -+ typedef typename T::first_type first_type; -+ dtl::addressof(p->first)->~first_type(); -+ BOOST_CONTAINER_RETHROW -+ } -+ BOOST_CONTAINER_CATCH_END -+} -+ -+ -+template<class T, class U> -+inline -+typename dtl::enable_if_c -+ < dtl::is_pair<T>::value -+ , void >::type -+construct_type(T* p, U &u) -+{ -+ dtl::construct_type(dtl::addressof(p->first), u.first); -+ BOOST_CONTAINER_TRY{ -+ dtl::construct_type(dtl::addressof(p->second), u.second); -+ } -+ BOOST_CONTAINER_CATCH(...) { -+ typedef typename T::first_type first_type; -+ dtl::addressof(p->first)->~first_type(); -+ BOOST_CONTAINER_RETHROW -+ } -+ BOOST_CONTAINER_CATCH_END -+} -+ -+template<class T, class U> -+inline -+typename dtl::enable_if_c -+ < dtl::is_pair<typename dtl::remove_reference<T>::type>::value && -+ !boost::move_detail::is_reference<U>::value //This is needed for MSVC10 and ambiguous overloads -+ , void >::type -+construct_type(T* p, BOOST_RV_REF(U) u) -+{ -+ dtl::construct_type(dtl::addressof(p->first), ::boost::move(u.first)); -+ BOOST_CONTAINER_TRY{ -+ dtl::construct_type(dtl::addressof(p->second), ::boost::move(u.second)); -+ } -+ BOOST_CONTAINER_CATCH(...) { -+ typedef typename T::first_type first_type; -+ dtl::addressof(p->first)->~first_type(); -+ BOOST_CONTAINER_RETHROW -+ } -+ BOOST_CONTAINER_CATCH_END -+} -+ -+template<class T, class U, class V> -+inline -+typename dtl::enable_if<dtl::is_pair<T>, void >::type -+construct_type(T* p, BOOST_FWD_REF(U) x, BOOST_FWD_REF(V) y) -+{ -+ dtl::construct_type(dtl::addressof(p->first), ::boost::forward<U>(x)); -+ BOOST_CONTAINER_TRY{ -+ dtl::construct_type(dtl::addressof(p->second), ::boost::forward<V>(y)); -+ } -+ BOOST_CONTAINER_CATCH(...) { -+ typedef typename T::first_type first_type; -+ dtl::addressof(p->first)->~first_type(); -+ BOOST_CONTAINER_RETHROW -+ } -+ BOOST_CONTAINER_CATCH_END -+} -+ -+} //namespace dtl - - #ifndef BOOST_CONTAINER_DOXYGEN_INVOKED - -@@ -419,7 +559,7 @@ struct allocator_traits - - template<class T, class ...Args> - inline static void priv_construct(dtl::false_type, Allocator &, T *p, BOOST_FWD_REF(Args) ...args) -- { ::new((void*)p, boost_container_new_t()) T(::boost::forward<Args>(args)...); } -+ { dtl::construct_type(p, ::boost::forward<Args>(args)...); } - #else // #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) - public: - -@@ -450,7 +590,7 @@ struct allocator_traits - \ - template<class T BOOST_MOVE_I##N BOOST_MOVE_CLASS##N >\ - inline static void priv_construct(dtl::false_type, Allocator &, T *p BOOST_MOVE_I##N BOOST_MOVE_UREF##N)\ -- { ::new((void*)p, boost_container_new_t()) T(BOOST_MOVE_FWD##N); }\ -+ { dtl::construct_type(p BOOST_MOVE_I##N BOOST_MOVE_FWD##N); }\ - // - BOOST_MOVE_ITERATE_0TO8(BOOST_CONTAINER_ALLOCATOR_TRAITS_PRIV_CONSTRUCT_IMPL) - #undef BOOST_CONTAINER_ALLOCATOR_TRAITS_PRIV_CONSTRUCT_IMPL ---- a/boost/container/detail/construct_in_place.hpp -+++ b/boost/container/detail/construct_in_place.hpp -@@ -24,6 +24,7 @@ - #include <boost/container/allocator_traits.hpp> - #include <boost/container/detail/iterators.hpp> - #include <boost/container/detail/value_init.hpp> -+#include <boost/container/detail/is_pair.hpp> - - namespace boost { - namespace container { -@@ -62,9 +63,42 @@ BOOST_CONTAINER_FORCEINLINE void construct_in_place(Allocator &a, T *dest, empla - - //Assignment - -+template<class T, class U> -+BOOST_CONTAINER_FORCEINLINE -+ typename dtl::disable_if_c -+ < dtl::is_pair<typename dtl::remove_reference<T>::type>::value -+ && dtl::is_pair<typename dtl::remove_reference<U>::type>::value -+ , void>::type -+assign_in_place_ref(T &t, BOOST_FWD_REF(U) u) -+{ t = ::boost::forward<U>(u); } -+ -+template<class T, class U> -+BOOST_CONTAINER_FORCEINLINE -+ typename dtl::enable_if_c -+ < dtl::is_pair<typename dtl::remove_reference<T>::type>::value -+ && dtl::is_pair<typename dtl::remove_reference<U>::type>::value -+ , void>::type -+assign_in_place_ref(T &t, const U &u) -+{ -+ assign_in_place_ref(t.first, u.first); -+ assign_in_place_ref(t.second, u.second); -+} -+ -+template<class T, class U> -+BOOST_CONTAINER_FORCEINLINE -+ typename dtl::enable_if_c -+ < dtl::is_pair<typename dtl::remove_reference<T>::type>::value -+ && dtl::is_pair<typename dtl::remove_reference<U>::type>::value -+ , void>::type -+assign_in_place_ref(T &t, BOOST_RV_REF(U) u) -+{ -+ assign_in_place_ref(t.first, ::boost::move(u.first)); -+ assign_in_place_ref(t.second, ::boost::move(u.second)); -+} -+ - template<class DstIt, class InpIt> - BOOST_CONTAINER_FORCEINLINE void assign_in_place(DstIt dest, InpIt source) --{ *dest = *source; } -+{ assign_in_place_ref(*dest, *source); } - - template<class DstIt, class U> - BOOST_CONTAINER_FORCEINLINE void assign_in_place(DstIt dest, value_init_construct_iterator<U>) ---- a/boost/container/flat_map.hpp -+++ b/boost/container/flat_map.hpp -@@ -48,6 +48,11 @@ - #include <initializer_list> - #endif - -+#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) -+#define BOOST_CONTAINER_STD_PAIR_IS_MOVABLE -+#endif -+ -+ - namespace boost { - namespace container { - -@@ -58,21 +63,37 @@ class flat_multimap; - - namespace dtl{ - -+#if defined(BOOST_CONTAINER_STD_PAIR_IS_MOVABLE) - template<class D, class S> - BOOST_CONTAINER_FORCEINLINE static D &force(S &s) --{ return *move_detail::force_ptr<D*>(&s); } -+{ return s; } - - template<class D, class S> - BOOST_CONTAINER_FORCEINLINE static const D &force(const S &s) --{ return *move_detail::force_ptr<const D*>(&s); } -+{ return s; } -+ -+template<class D> -+BOOST_CONTAINER_FORCEINLINE static D force_copy(D s) -+{ return s; } -+ -+#else //!BOOST_CONTAINER_DOXYGEN_INVOKED -+ -+template<class D, class S> -+BOOST_CONTAINER_FORCEINLINE static D &force(S &s) -+{ return *move_detail::launder_cast<D*>(&s); } -+ -+template<class D, class S> -+BOOST_CONTAINER_FORCEINLINE static const D &force(const S &s) -+{ return *move_detail::launder_cast<const D*>(&s); } - - template<class D, class S> - BOOST_CONTAINER_FORCEINLINE static D force_copy(const S &s) - { -- const D *const vp = move_detail::force_ptr<const D *>(&s); -+ const D *const vp = move_detail::launder_cast<const D *>(&s); - D ret_val(*vp); - return ret_val; - } -+#endif //BOOST_CONTAINER_DOXYGEN_INVOKED - - } //namespace dtl{ - -@@ -118,18 +139,27 @@ class flat_map - private: - BOOST_COPYABLE_AND_MOVABLE(flat_map) - //This is the tree that we should store if pair was movable -+ typedef std::pair<Key, T> std_pair_t; - typedef dtl::flat_tree< -- std::pair<Key, T>, -+ std_pair_t, - dtl::select1st<Key>, - Compare, - AllocatorOrContainer> tree_t; - - //This is the real tree stored here. It's based on a movable pair -+ typedef dtl::pair<Key, T> dtl_pair_t; -+ -+ #ifdef BOOST_CONTAINER_STD_PAIR_IS_MOVABLE -+ typedef std_pair_t impl_pair_t; -+ #else -+ typedef dtl_pair_t impl_pair_t; -+ #endif -+ - typedef dtl::flat_tree< -- dtl::pair<Key, T>, -+ impl_pair_t, - dtl::select1st<Key>, - Compare, -- typename dtl::container_or_allocator_rebind<AllocatorOrContainer, dtl::pair<Key, T> >::type -+ typename dtl::container_or_allocator_rebind<AllocatorOrContainer, impl_pair_t >::type - > impl_tree_t; - impl_tree_t m_flat_tree; // flat tree representing flat_map - -@@ -851,7 +881,7 @@ class flat_map - //! @copydoc ::boost::container::flat_set::nth(size_type) const - BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline - const_iterator nth(size_type n) const BOOST_NOEXCEPT_OR_NOTHROW -- { return dtl::force_copy<iterator>(m_flat_tree.nth(n)); } -+ { return dtl::force_copy<const_iterator>(m_flat_tree.nth(n)); } - - //! @copydoc ::boost::container::flat_set::index_of(iterator) - BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline -@@ -1099,7 +1129,7 @@ class flat_map - template <class Pair> - inline BOOST_CONTAINER_DOC1ST - ( std::pair<iterator BOOST_MOVE_I bool> -- , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I impl_value_type>::value -+ , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I dtl_pair_t>::value - BOOST_MOVE_I std::pair<iterator BOOST_MOVE_I bool> >::type) - insert(BOOST_FWD_REF(Pair) x) - { -@@ -1153,7 +1183,7 @@ class flat_map - template <class Pair> - inline BOOST_CONTAINER_DOC1ST - ( iterator -- , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I impl_value_type>::value -+ , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I dtl_pair_t>::value - BOOST_MOVE_I iterator>::type) - insert(const_iterator p, BOOST_FWD_REF(Pair) x) - { -@@ -1777,17 +1807,24 @@ class flat_multimap - #ifndef BOOST_CONTAINER_DOXYGEN_INVOKED - private: - BOOST_COPYABLE_AND_MOVABLE(flat_multimap) -+ typedef std::pair<Key, T> std_pair_t; - typedef dtl::flat_tree< -- std::pair<Key, T>, -+ std_pair_t, - dtl::select1st<Key>, - Compare, - AllocatorOrContainer> tree_t; - //This is the real tree stored here. It's based on a movable pair -+ typedef dtl::pair<Key, T> dtl_pair_t; -+ #ifdef BOOST_CONTAINER_STD_PAIR_IS_MOVABLE -+ typedef std_pair_t impl_pair_t; -+ #else -+ typedef dtl_pair_t impl_pair_t; -+ #endif - typedef dtl::flat_tree< -- dtl::pair<Key, T>, -+ impl_pair_t, - dtl::select1st<Key>, - Compare, -- typename dtl::container_or_allocator_rebind<AllocatorOrContainer, dtl::pair<Key, T> >::type -+ typename dtl::container_or_allocator_rebind<AllocatorOrContainer, impl_pair_t >::type - > impl_tree_t; - impl_tree_t m_flat_tree; // flat tree representing flat_map - -@@ -2388,7 +2425,7 @@ class flat_multimap - //! @copydoc ::boost::container::flat_set::nth(size_type) const - BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline - const_iterator nth(size_type n) const BOOST_NOEXCEPT_OR_NOTHROW -- { return dtl::force_copy<iterator>(m_flat_tree.nth(n)); } -+ { return dtl::force_copy<const_iterator>(m_flat_tree.nth(n)); } - - //! @copydoc ::boost::container::flat_set::index_of(iterator) - BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline -@@ -2477,7 +2514,7 @@ class flat_multimap - template<class Pair> - inline BOOST_CONTAINER_DOC1ST - ( iterator -- , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I impl_value_type>::value -+ , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I dtl_pair_t>::value - BOOST_MOVE_I iterator >::type) - insert(BOOST_FWD_REF(Pair) x) - { return dtl::force_copy<iterator>(m_flat_tree.emplace_equal(boost::forward<Pair>(x))); } -@@ -2514,7 +2551,7 @@ class flat_multimap - template<class Pair> - inline BOOST_CONTAINER_DOC1ST - ( iterator -- , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I impl_value_type>::value -+ , typename dtl::enable_if_c<dtl::is_convertible<Pair BOOST_MOVE_I dtl_pair_t>::value - BOOST_MOVE_I iterator>::type) - insert(const_iterator p, BOOST_FWD_REF(Pair) x) - { diff --git a/dev-libs/boost/files/boost-1.85.0-python-numpy-2.patch b/dev-libs/boost/files/boost-1.85.0-python-numpy-2.patch deleted file mode 100644 index e7a7d98b8573a..0000000000000 --- a/dev-libs/boost/files/boost-1.85.0-python-numpy-2.patch +++ /dev/null @@ -1,26 +0,0 @@ -https://bugs.gentoo.org/932459 -https://github.com/boostorg/python/issues/431 -https://github.com/boostorg/python/pull/432 - -From 33ac06ca59a68266d3d26edf08205d31ddab4a6c Mon Sep 17 00:00:00 2001 -From: Alexis DUBURCQ <alexis.duburcq@gmail.com> -Date: Fri, 15 Mar 2024 14:10:16 +0100 -Subject: [PATCH] Support numpy 2.0.0b1 - ---- a/libs/python/src/numpy/dtype.cpp -+++ b/libs/python/src/numpy/dtype.cpp -@@ -98,7 +98,13 @@ python::detail::new_reference dtype::convert(object const & arg, bool align) - return python::detail::new_reference(reinterpret_cast<PyObject*>(obj)); - } - --int dtype::get_itemsize() const { return reinterpret_cast<PyArray_Descr*>(ptr())->elsize;} -+int dtype::get_itemsize() const { -+#if NPY_ABI_VERSION < 0x02000000 -+ return reinterpret_cast<PyArray_Descr*>(ptr())->elsize; -+#else -+ return PyDataType_ELSIZE(reinterpret_cast<PyArray_Descr*>(ptr())); -+#endif -+} - - bool equivalent(dtype const & a, dtype const & b) { - // On Windows x64, the behaviour described on diff --git a/dev-libs/boost/files/boost-1.86.0-uuid-compute-backport.patch b/dev-libs/boost/files/boost-1.86.0-uuid-compute-backport.patch deleted file mode 100644 index 9fcf806809891..0000000000000 --- a/dev-libs/boost/files/boost-1.86.0-uuid-compute-backport.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 4ab28f5b879c8a2335b851f5338b9012f4466dd0 Mon Sep 17 00:00:00 2001 -From: sehe <github@sehe.nl> -Date: Mon, 19 Aug 2024 17:42:31 +0200 -Subject: [PATCH] Update sha1.hpp for breaking interface change in Boost.UUID - -see https://github.com/boostorg/uuid/commit/0f843137a1a479797004f195ec615fdc6ac1c219 ---- - boost/compute/detail/sha1.hpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/boost/compute/detail/sha1.hpp b/boost/compute/detail/sha1.hpp -index 5afe5f9c4..24fde3cd1 100644 ---- a/boost/compute/detail/sha1.hpp -+++ b/boost/compute/detail/sha1.hpp -@@ -37,12 +37,12 @@ class sha1 { - } - - operator std::string() { -- unsigned int digest[5]; -+ unsigned char digest[20]; - h.get_digest(digest); - - std::ostringstream buf; -- for(int i = 0; i < 5; ++i) -- buf << std::hex << std::setfill('0') << std::setw(8) << digest[i]; -+ for(int i = 0; i < 20; ++i) -+ buf << std::hex << std::setfill('0') << std::setw(2) << static_cast<int>(digest[i]); - - return buf.str(); - } diff --git a/dev-libs/boost/files/boost-1.87.0-move.patch b/dev-libs/boost/files/boost-1.87.0-move.patch deleted file mode 100644 index 68d2abbcb6905..0000000000000 --- a/dev-libs/boost/files/boost-1.87.0-move.patch +++ /dev/null @@ -1,74 +0,0 @@ -https://bugs.gentoo.org/948204 -https://github.com/boostorg/container/issues/292 -https://github.com/boostorg/move/issues/59 -https://github.com/boostorg/move/commit/5f073f8f00ee23b4502c0ad30a3aa2a5154cd1e8 -https://github.com/boostorg/move/commit/e9ff3ca0952e680871145f454925614d950cef4d - -From 5f073f8f00ee23b4502c0ad30a3aa2a5154cd1e8 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= <igaztanaga@gmail.com> -Date: Fri, 28 Feb 2025 17:22:47 +0100 -Subject: [PATCH] FIxes #59 ("std_ns_begin.hpp: missing definition of - BOOST_MOVE_STD_NS_BEG") - ---- - include/boost/move/detail/std_ns_begin.hpp | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/include/boost/move/detail/std_ns_begin.hpp b/include/boost/move/detail/std_ns_begin.hpp -index de13cde..90169c4 100644 ---- a/boost/move/detail/std_ns_begin.hpp -+++ b/boost/move/detail/std_ns_begin.hpp -@@ -9,6 +9,7 @@ - #// - #////////////////////////////////////////////////////////////////////////////// - # -+#include <boost/config.hpp> - #if defined(_LIBCPP_VERSION) - #if defined(__clang__) - #define BOOST_MOVE_STD_NS_GCC_DIAGNOSTIC_PUSH -@@ -26,6 +27,9 @@ - #elif defined(BOOST_DINKUMWARE_STDLIB) - #define BOOST_MOVE_STD_NS_BEG _STD_BEGIN - #define BOOST_MOVE_STD_NS_END _STD_END -+#else -+ #define BOOST_MOVE_STD_NS_BEG namespace std{ -+ #define BOOST_MOVE_STD_NS_END - #endif - - #if defined(_MSC_VER) && (_MSC_VER >= 1915) - -From e9ff3ca0952e680871145f454925614d950cef4d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= <igaztanaga@gmail.com> -Date: Fri, 28 Feb 2025 19:32:21 +0100 -Subject: [PATCH] Fix #59 again (missing BOOST_MOVE_STD_NS_END closing brace) - ---- - include/boost/move/detail/std_ns_begin.hpp | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/include/boost/move/detail/std_ns_begin.hpp b/include/boost/move/detail/std_ns_begin.hpp -index 90169c4..ef9b4b4 100644 ---- a/boost/move/detail/std_ns_begin.hpp -+++ b/boost/move/detail/std_ns_begin.hpp -@@ -9,7 +9,9 @@ - #// - #////////////////////////////////////////////////////////////////////////////// - # --#include <boost/config.hpp> -+#ifndef BOOST_CONFIG_HPP -+# include <boost/config.hpp> -+#endif - #if defined(_LIBCPP_VERSION) - #if defined(__clang__) - #define BOOST_MOVE_STD_NS_GCC_DIAGNOSTIC_PUSH -@@ -28,8 +30,8 @@ - #define BOOST_MOVE_STD_NS_BEG _STD_BEGIN - #define BOOST_MOVE_STD_NS_END _STD_END - #else -- #define BOOST_MOVE_STD_NS_BEG namespace std{ -- #define BOOST_MOVE_STD_NS_END -+ #define BOOST_MOVE_STD_NS_BEG namespace std { -+ #define BOOST_MOVE_STD_NS_END } - #endif - - #if defined(_MSC_VER) && (_MSC_VER >= 1915) diff --git a/dev-libs/boost/files/boost-1.87.0-smart_ptr-operator.patch b/dev-libs/boost/files/boost-1.87.0-smart_ptr-operator.patch deleted file mode 100644 index 6a008d528a658..0000000000000 --- a/dev-libs/boost/files/boost-1.87.0-smart_ptr-operator.patch +++ /dev/null @@ -1,40 +0,0 @@ -https://github.com/boostorg/smart_ptr/issues/115 -https://github.com/boostorg/smart_ptr/commit/e7433ba54596da97cb7859455cd37ca140305a9c - -From e7433ba54596da97cb7859455cd37ca140305a9c Mon Sep 17 00:00:00 2001 -From: Peter Dimov <pdimov@gmail.com> -Date: Mon, 13 Jan 2025 16:13:04 +0200 -Subject: [PATCH] Fix operator<< for shared_ptr and intrusive_ptr. Fixes #115. - ---- - include/boost/smart_ptr/intrusive_ptr.hpp | 2 +- - include/boost/smart_ptr/shared_ptr.hpp | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git boost/smart_ptr/intrusive_ptr.hpp boost/smart_ptr/intrusive_ptr.hpp -index ddb20c0b0e..11b476513a 100644 ---- a/boost/smart_ptr/intrusive_ptr.hpp -+++ b/boost/smart_ptr/intrusive_ptr.hpp -@@ -285,7 +285,7 @@ template<class T, class U> intrusive_ptr<T> dynamic_pointer_cast( intrusive_ptr< - - // operator<< - --template<class Y> std::ostream & operator<< (std::ostream & os, intrusive_ptr<Y> const & p) -+template<class E, class T, class Y> std::basic_ostream<E, T> & operator<< (std::basic_ostream<E, T> & os, intrusive_ptr<Y> const & p) - { - os << p.get(); - return os; -diff --git boost/smart_ptr/shared_ptr.hpp boost/smart_ptr/shared_ptr.hpp -index 2431a33590..2deed9b632 100644 ---- a/boost/smart_ptr/shared_ptr.hpp -+++ b/boost/smart_ptr/shared_ptr.hpp -@@ -775,7 +775,7 @@ template<class T> inline typename shared_ptr<T>::element_type * get_pointer(shar - - // operator<< - --template<class Y> std::ostream & operator<< (std::ostream & os, shared_ptr<Y> const & p) -+template<class E, class T, class Y> std::basic_ostream<E, T> & operator<< (std::basic_ostream<E, T> & os, shared_ptr<Y> const & p) - { - os << p.get(); - return os; - diff --git a/dev-libs/boost/files/boost-1.87.0-solaris.patch b/dev-libs/boost/files/boost-1.87.0-solaris.patch deleted file mode 100644 index f0c8f9fbfe634..0000000000000 --- a/dev-libs/boost/files/boost-1.87.0-solaris.patch +++ /dev/null @@ -1,25 +0,0 @@ -for Solaris, part from upstream commit -https://github.com/boostorg/process/commit/bb375f50bd5b362b087aab326df158a440882e29 - ---- boost_1_87_0/libs/process/src/ext/cwd.cpp -+++ boost_1_87_0/libs/process/src/ext/cwd.cpp -@@ -124,7 +124,7 @@ - filesystem::path("/proc") / std::to_string(pid) / "cwd", ec - ); - #elif defined(__sun) -- return fileystem::canonical( -+ return filesystem::canonical( - filesystem::path("/proc") / std::to_string(pid) / "path/cwd", ec - ); - #endif ---- boost_1_87_0/libs/process/src/ext/exe.cpp -+++ boost_1_87_0/libs/process/src/ext/exe.cpp -@@ -138,7 +138,7 @@ - filesystem::path("/proc") / std::to_string(pid) / "exe", ec - ); - #elif defined(__sun) -- return fileystem::canonical( -+ return filesystem::canonical( - filesystem::path("/proc") / std::to_string(pid) / "path/a.out", ec - ); - #endif diff --git a/dev-libs/boost/files/boost-1.87.0-thread-typo.patch b/dev-libs/boost/files/boost-1.87.0-thread-typo.patch deleted file mode 100644 index 2674cffe9367c..0000000000000 --- a/dev-libs/boost/files/boost-1.87.0-thread-typo.patch +++ /dev/null @@ -1,28 +0,0 @@ -https://bugs.gentoo.org/945916 -https://github.com/boostorg/thread/pull/408 - -From 49ccf9c30a0ca556873dbf64b12b0d741d1b3e66 Mon Sep 17 00:00:00 2001 -From: Arvid Norlander <arvid-norlander@users.noreply.github.com> -Date: Fri, 8 Nov 2024 16:48:43 +0100 -Subject: [PATCH] Fix build on clang-19 (which checks more things in - uninstantiated templates) - -Fixes issue #402 ---- - include/boost/thread/future.hpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/boost/thread/future.hpp b/include/boost/thread/future.hpp -index 00f504b9b..d15d7ffa5 100644 ---- a/boost/thread/future.hpp -+++ b/boost/thread/future.hpp -@@ -4668,7 +4668,7 @@ namespace detail - } - run_it& operator=(BOOST_THREAD_RV_REF(run_it) x) BOOST_NOEXCEPT { - if (this != &x) { -- that_=x.that; -+ that_=x.that_; - x.that_.reset(); - } - return *this; - diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest index c6d21389d638d..a29f87a2ceff5 100644 --- a/dev-libs/icu/Manifest +++ b/dev-libs/icu/Manifest @@ -3,10 +3,7 @@ AUX icu-68.1-nonunicode.patch 477 BLAKE2B 5e74142e5adbf8f3fffa23c8fb08657b5b75d1 AUX icu-76.1-remove-bashisms.patch 3382 BLAKE2B fda519c35f7b8d617007fcfa91dd6d36da7eae457f616b437ac32c4de1808d5e7d4b31cb6b560fbf1b2940e69b6fcb8fb51b4c9ad2671aa43aa89cf056934999 SHA512 223ab2e184945ad7039a72dafaf3478bbcab4b4577929e0aac8b508f9cac678a770ff9ce307d373e9ab1d8e42a81740251bb70e2244592cda91ad15a6af1fd2d AUX icu-76.1-undo-pkgconfig-change-for-now.patch 989 BLAKE2B 66348d618956c593b3cca1740ea6805be00c8b5ae94a040a9a37ab928c94e439233c7aa53e8074cb773da89ff42a16d15c3bb1cc597405c1929bb14ba755d61d SHA512 8c4054752e78c89e3b3731f55ba4a96a9f71800ef7734a042343b759f5051d70daec6300b64c1875abc7c012a90010b05ad94c2729cbd8e99c53c8d8b6650790 AUX icu-77.1-invalid-malloc.patch 1492 BLAKE2B 68eb521f4aad316d1a020c985e5dc55cfe328084bdc3d7fe57acb65d2fcc76a8746495720398993e4130831de494ea4fab5ab49401cbd0937aca260577fded75 SHA512 be02b7e0df87ac2110ae94116eb505cbdaa2b78fbe0be5178973970299e543ac9d7946cec2f385307d1df13b04925cda46ebc8b2164ebbdb23be1a1f826bd4d8 -DIST icu4c-76_1-src.tgz 27437767 BLAKE2B 67223391123d2d2c75107fc4b87510b1d8d520301a863032951b894366ec8b414692ee3fa2acd652289b0ae2f60946d71bf9ca21ed87de40825e2fd02634c658 SHA512 b702ab62fb37a1574d5f4a768326d0f8fa30d9db5b015605b5f8215b5d8547f83d84880c586d3dcc7b6c76f8d47ef34e04b0f51baa55908f737024dd79a42a6c -DIST icu4c-76_1-src.tgz.asc 228 BLAKE2B 37a058e22da5ad122e3df6de2cb3979fa734b32e4e81d91201d2095fbf20ef2dbcba4579efab3041193e49c388d09618c965ddf082a8362aa82b694184804fa7 SHA512 c4bd81d4e98d7e37a6ba9540748c4ce1eb740d70bd689a13e2e51da76503b6e0287afd4d1cd3af4540210f37626dec998fcbd7269976cb801f238b789e604489 DIST icu4c-77_1-src.tgz 27384265 BLAKE2B 7ee4457dbb9abfee543aa91314e052282fb1c73e5fd9d9b21777d2ea32ae29c3eb3d83a78aafc7d00530435c014aa0f6196faf82ed67593c844e28395ab4720e SHA512 a47d6d9c327d037a05ea43d1d1a06b2fd757cc02a94f7c1a238f35cfc3dfd4ab78d0612790f3a3cca0292c77412a9c2c15c8f24b718f79a857e007e66f07e7cd DIST icu4c-77_1-src.tgz.asc 228 BLAKE2B faabf00cb79427b14286e24770cbed3cd81a367bb5e9dc935c8fa5b8d67d7401fa82425b70259740a4136bd52fe9887bf0494195c6941454cadabec475d5c0e5 SHA512 7051e53f5a82a9b72a07adcc9751921c0afee56c733ccfe8ed94701606cadaf3b85135d5815dbe1acddb64ffef30d3d9fc5f37016b20dcd07685baa06d633759 -EBUILD icu-76.1-r1.ebuild 4698 BLAKE2B bf432cedef2f582ec5120dd0d77e95dbacca42afb05b21b40b30048a8a459c903668920576f32ba702556f6f638adc58b247f95117d8659c73598df505148598 SHA512 578d5491e2f14f3481ce86e592f0f028f5fe653e286120905cadbf4058d54b46b7c7032282d440546190c2f4d5f84f6f79158209b461db01682ea3f90825a626 EBUILD icu-77.1.ebuild 4668 BLAKE2B 21d74dd96c0a9754a8f16f8624de7e4cf2011b3f01279948abddb2679a73f0ce57d91b373bd2257a18262c287b2f5eaf32f3c4cef29cd6a1dd2d01317c1cf9fc SHA512 1bec9bef7ff161ea807012e27cade7512500541c5ddeb8ac81d82eb25d3b04424fcab3ac3167280b23b1d7e0ba06cc040ecc9316bb9cf256d4c4192ad5739287 MISC metadata.xml 336 BLAKE2B df52385ac9930c85fc8cb8799f5fd083e99bfe1bacd63519001f91b841cacdc50d6b7ed32f3520372cbab48d270bb05fd0896eaec55046ce1eac03af4502365e SHA512 80d8e03229a72e9acd1429f7ed697df59e98899b135bb40367e95d6eed63aa011efd2121601be68e685350b6eadd46e6f39c036f86ff18bc3c85410e88008c7e diff --git a/dev-libs/icu/icu-76.1-r1.ebuild b/dev-libs/icu/icu-76.1-r1.ebuild deleted file mode 100644 index 3dd4655773a0e..0000000000000 --- a/dev-libs/icu/icu-76.1-r1.ebuild +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-libs/icu-layoutex - -PYTHON_COMPAT=( python3_{10..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/icu.asc -inherit autotools multilib-minimal python-any-r1 toolchain-funcs verify-sig - -MY_PV=${PV/_rc/-rc} -MY_PV=${MY_PV//./_} - -DESCRIPTION="International Components for Unicode" -HOMEPAGE="https://icu.unicode.org/" -SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz" -SRC_URI+=" verify-sig? ( https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz.asc )" -S="${WORKDIR}"/${PN}/source - -if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -fi -LICENSE="BSD" -SLOT="0/${PV%.*}" -IUSE="debug doc examples static-libs test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${PYTHON_DEPS} - dev-build/autoconf-archive - virtual/pkgconfig - doc? ( app-text/doxygen[dot] ) - verify-sig? ( >=sec-keys/openpgp-keys-icu-20241110 ) -" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/icu-config -) - -PATCHES=( - "${FILESDIR}/${PN}-76.1-remove-bashisms.patch" - "${FILESDIR}/${PN}-64.2-darwin.patch" - "${FILESDIR}/${PN}-68.1-nonunicode.patch" - - # Undo change for now which exposes underlinking in consumers; - # revisit when things are a bit quieter and tinderbox its removal. - "${FILESDIR}/${PN}-76.1-undo-pkgconfig-change-for-now.patch" -) - -src_prepare() { - default - - # TODO: switch uconfig.h hacks to use uconfig_local - # - # Disable renaming as it assumes stable ABI and that consumers - # won't use unofficial APIs. We need this despite the configure argument. - sed -i \ - -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ - common/unicode/uconfig.h || die - # - # ODR violations, experimental API - sed -i \ - -e "s/# define UCONFIG_NO_MF2 0/#define UCONFIG_NO_MF2 1/" \ - common/unicode/uconfig.h || die - - # Fix linking of icudata - sed -i \ - -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ - config/mh-linux || die - - # Append doxygen configuration to configure - sed -i \ - -e 's:icudefs.mk:icudefs.mk Doxyfile:' \ - configure.ac || die - - eautoreconf -} - -src_configure() { - MAKEOPTS+=" VERBOSE=1" - - if tc-is-cross-compiler; then - mkdir "${WORKDIR}"/host || die - pushd "${WORKDIR}"/host >/dev/null || die - - CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ - CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ - RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ - "${S}"/configure --disable-renaming --disable-debug \ - --disable-samples --enable-static || die - emake - - popd >/dev/null || die - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --disable-renaming - --disable-samples - # TODO: Merge with dev-libs/icu-layoutex - # Planned to do this w/ 73.2 but seem to get test failures - # only with --enable-layoutex. - --disable-layoutex - $(use_enable debug) - $(use_enable static-libs static) - $(use_enable test tests) - $(multilib_native_use_enable examples samples) - ) - - #if use test ; then - # myeconfargs+=( - # --enable-extras - # --enable-tools - # ) - #else - # myeconfargs+=( - # $(multilib_native_enable extras) - # $(multilib_native_enable tools) - # ) - #fi - - tc-is-cross-compiler && myeconfargs+=( - --with-cross-build="${WORKDIR}"/host - ) - - # Work around cross-endian testing failures with LTO, bug #757681 - if tc-is-cross-compiler && tc-is-lto ; then - myeconfargs+=( --disable-strict ) - fi - - # ICU tries to use clang by default - tc-export CC CXX - - # Make sure we configure with the same shell as we run icu-config - # with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined - export CONFIG_SHELL="${EPREFIX}/bin/sh" - # Probably have no /bin/sh in prefix-chain - [[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL="${BASH}" - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - default - - if multilib_is_native_abi && use doc; then - doxygen -u Doxyfile || die - doxygen Doxyfile || die - fi -} - -multilib_src_test() { - # INTLTEST_OPTS: intltest options - # -e: Exhaustive testing - # -l: Reporting of memory leaks - # -v: Increased verbosity - # IOTEST_OPTS: iotest options - # -e: Exhaustive testing - # -v: Increased verbosity - # CINTLTST_OPTS: cintltst options - # -e: Exhaustive testing - # -v: Increased verbosity - emake check -} - -multilib_src_install() { - default - - if multilib_is_native_abi && use doc; then - docinto html - dodoc -r doc/html/* - fi -} - -multilib_src_install_all() { - local HTML_DOCS=( ../readme.html ) - einstalldocs -} |