Merge pull request #1223 from flatcar/buildbot/weekly-portage-stable-package-updates-2023-10-09

Weekly portage-stable package updates 2023-10-09
This commit is contained in:
Krzesimir Nowak 2023-10-12 18:35:56 +02:00 committed by GitHub
commit e328b7e4ca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
106 changed files with 4822 additions and 214 deletions

View File

@ -0,0 +1,2 @@
- pigz ([2.8](https://zlib.net/pipermail/pigz-announce_zlib.net/2023-August/000018.html))
- whois ([5.5.18](https://github.com/rfc1036/whois/blob/v5.5.18/debian/changelog))

View File

@ -4,6 +4,9 @@
# #
# Keywords for all packages used by Flatcar. # Keywords for all packages used by Flatcar.
# Keep versions on both arches in sync.
=app-arch/pigz-2.8 ~amd64
# Seems to be the only available ebuild in portage-stable right now. # Seems to be the only available ebuild in portage-stable right now.
=app-crypt/adcli-0.9.2 ~amd64 ~arm64 =app-crypt/adcli-0.9.2 ~amd64 ~arm64
@ -43,7 +46,6 @@
=dev-libs/ding-libs-0.6.1-r1 ~arm64 =dev-libs/ding-libs-0.6.1-r1 ~arm64
=dev-libs/libdnet-1.16.2 ~arm64 =dev-libs/libdnet-1.16.2 ~arm64
=dev-libs/libgcrypt-1.10.2 ~arm64 =dev-libs/libgcrypt-1.10.2 ~arm64
=dev-python/lxml-4.9.3-r1 ~arm64
=dev-util/bpftool-6.3 ~arm64 =dev-util/bpftool-6.3 ~arm64
=net-firewall/conntrack-tools-1.4.6-r1 ~arm64 =net-firewall/conntrack-tools-1.4.6-r1 ~arm64
@ -61,6 +63,7 @@
=net-misc/openssh-9.4_p1 ~amd64 ~arm64 =net-misc/openssh-9.4_p1 ~amd64 ~arm64
# Keep versions on both arches in sync. # Keep versions on both arches in sync.
=net-misc/whois-5.5.18-r1 ~amd64
=net-nds/openldap-2.6.4-r1 ~amd64 =net-nds/openldap-2.6.4-r1 ~amd64
=sec-policy/selinux-base-2.20200818-r3 ~arm64 =sec-policy/selinux-base-2.20200818-r3 ~arm64
=sec-policy/selinux-base-policy-2.20200818-r3 ~arm64 =sec-policy/selinux-base-policy-2.20200818-r3 ~arm64
@ -76,13 +79,7 @@
# Keep versions on both arches in sync. # Keep versions on both arches in sync.
=sys-devel/automake-1.16.5-r1 ~arm64 =sys-devel/automake-1.16.5-r1 ~arm64
=sys-devel/gcc-13.2.1_p20230826 ~arm64
=sys-firmware/edk2-aarch64-18.02 ** =sys-firmware/edk2-aarch64-18.02 **
# Needed for a cross-compilation fix.
=sys-fs/fuse-3.16.1 ~amd64 ~arm64
# Keep versions on both arches in sync.
=sys-libs/libselinux-3.1-r3 ~arm64 =sys-libs/libselinux-3.1-r3 ~arm64
=sys-libs/libsemanage-3.1-r2 ~arm64 =sys-libs/libsemanage-3.1-r2 ~arm64
=sys-libs/libsepol-3.1 ~arm64 =sys-libs/libsepol-3.1 ~arm64

View File

@ -0,0 +1,44 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ALTERNATIVES=(
"reference:>=app-arch/gzip-1.12-r3"
"pigz:>=app-arch/pigz-2.8[-symlink(-)]"
)
inherit app-alternatives
DESCRIPTION="gzip symlinks"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="split-usr"
RDEPEND="
!<app-arch/gzip-1.12-r3
!app-arch/pigz[symlink(-)]
"
src_install() {
local usr_prefix=
use split-usr && usr_prefix=../usr/bin/
case $(get_alternative) in
pigz)
dosym "${usr_prefix}pigz" /bin/gzip
dosym gzip /bin/gunzip
dosym gzip /bin/zcat
newman - gzip.1 <<<".so pigz.1"
;;
reference)
dosym gzip-reference /bin/gzip
# gzip uses shell wrappers rather than argv[0]
dosym gunzip-reference /bin/gunzip
dosym zcat-reference /bin/zcat
newman - gzip.1 <<<".so gzip-reference.1"
;;
esac
newman - gunzip.1 <<<".so gzip.1"
newman - zcat.1 <<<".so gzip.1"
}

View File

@ -15,7 +15,7 @@ SRC_URI="
LICENSE="ZLIB" LICENSE="ZLIB"
SLOT="0" SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos" KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~ppc-macos"
IUSE="static test" IUSE="static test"
RESTRICT="!test? ( test )" RESTRICT="!test? ( test )"

View File

@ -1 +1,2 @@
DIST gentoolkit-0.6.1.tar.gz 3195781 BLAKE2B 27e370de77586b375dc70caa1abba4c2bc4207e8f08e0a7ea2953097135506949db71ff9102a0ead198e4dea425440c57b94ac7a811ca2d5e0016fc7e234bb0d SHA512 1ffc466b69a9c53f1bbd40f6f4d1eb33d5f0f4287bb65ba1a7b1b2675ad61ecffa55ed9fda7c1ae8148744f0a77e224315eb1903dfd61a2a3dab1600fc672d2d DIST gentoolkit-0.6.1.tar.gz 3195781 BLAKE2B 27e370de77586b375dc70caa1abba4c2bc4207e8f08e0a7ea2953097135506949db71ff9102a0ead198e4dea425440c57b94ac7a811ca2d5e0016fc7e234bb0d SHA512 1ffc466b69a9c53f1bbd40f6f4d1eb33d5f0f4287bb65ba1a7b1b2675ad61ecffa55ed9fda7c1ae8148744f0a77e224315eb1903dfd61a2a3dab1600fc672d2d
DIST gentoolkit-0.6.2.tar.bz2 3186974 BLAKE2B 48f388962e70842b7959467b7697b98121ee2a27bca6e2fc2ebb69782ece1df9b63b4451e19ebacf5a627a9c6feb17f7af395229d2eb870d8bbde1da80262593 SHA512 a1c9157758453f214e6131237df2bc91c49c28a4411ecbb0f74768ae0dd7c4fe8272cfc354a424f6acc8cc322d4eaa35ef98147fe749bc41cb680bb3acfdc2ac

View File

@ -0,0 +1,71 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} pypy3 )
PYTHON_REQ_USE="xml(+),threads(+)"
inherit distutils-r1 tmpfiles
if [[ ${PV} = 9999* ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoolkit.git"
inherit git-r3
else
SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="Collection of administration scripts for Gentoo"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools"
LICENSE="GPL-2"
SLOT="0"
# Need newer Portage for eclean-pkg API, bug #900224
DEPEND="
>=sys-apps/portage-3.0.52[${PYTHON_USEDEP}]
"
RDEPEND="
${DEPEND}
app-alternatives/awk
sys-apps/gentoo-functions
"
BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
distutils_enable_tests setup.py
python_prepare_all() {
python_setup
echo VERSION="${PVR}" "${PYTHON}" setup.py set_version
VERSION="${PVR}" "${PYTHON}" setup.py set_version
distutils-r1_python_prepare_all
if use prefix-guest ; then
# use correct repo name, bug #632223
sed -i \
-e "/load_profile_data/s/repo='gentoo'/repo='gentoo_prefix'/" \
pym/gentoolkit/profile.py || die
fi
}
pkg_postinst() {
tmpfiles_process revdep-rebuild.conf
# Only show the elog information on a new install
if [[ ! ${REPLACING_VERSIONS} ]]; then
elog
elog "For further information on gentoolkit, please read the gentoolkit"
elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit"
elog
elog "Another alternative to equery is app-portage/portage-utils"
elog
elog "Additional tools that may be of interest:"
elog
elog " app-admin/eclean-kernel"
elog " app-portage/diffmask"
elog " app-portage/flaggie"
elog " app-portage/portpeek"
elog " app-portage/smart-live-rebuild"
fi
}

View File

@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3 inherit git-r3
else else
SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.gz" SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi fi
DESCRIPTION="Collection of administration scripts for Gentoo" DESCRIPTION="Collection of administration scripts for Gentoo"

View File

@ -10,7 +10,6 @@
<flag name="qtegrity">Build qtegrity applet, this adds additional dependencies for OpenSSL</flag> <flag name="qtegrity">Build qtegrity applet, this adds additional dependencies for OpenSSL</flag>
</use> </use>
<upstream> <upstream>
<remote-id type="cpe">cpe:/a:gentoo:portage-utils</remote-id>
<remote-id type="gentoo">proj/portage-utils</remote-id> <remote-id type="gentoo">proj/portage-utils</remote-id>
<remote-id type="github">gentoo/portage-utils</remote-id> <remote-id type="github">gentoo/portage-utils</remote-id>
</upstream> </upstream>

View File

@ -4,6 +4,10 @@ DIST Python-3.10.13.tar.xz 19663088 BLAKE2B d9a8edf89d0ccd665fd5ed444a144af240e0
DIST Python-3.10.13.tar.xz.asc 833 BLAKE2B b00222b30a6701e77c11c6019e2240be7cf42f2b4e558c03f7a058664d242a00665fbc52fdf03106e84c75f49b51b705d8acd1f381d1f41ada67c4647652ef4c SHA512 3083e66f8d26128302dc77a0c6ba3bfefc4229928a1bbd06460f2fec2421188bd30d493e3bce138cde1fed1df206e1dda04912b9f43a0b81229f1e69135e3a7f DIST Python-3.10.13.tar.xz.asc 833 BLAKE2B b00222b30a6701e77c11c6019e2240be7cf42f2b4e558c03f7a058664d242a00665fbc52fdf03106e84c75f49b51b705d8acd1f381d1f41ada67c4647652ef4c SHA512 3083e66f8d26128302dc77a0c6ba3bfefc4229928a1bbd06460f2fec2421188bd30d493e3bce138cde1fed1df206e1dda04912b9f43a0b81229f1e69135e3a7f
DIST Python-3.11.5.tar.xz 20053580 BLAKE2B 3b85f2d9d32787b0500abeec4211032bb147bd991f1a865ff3d13350f6beddef8051ebdda21e130cbf094e6546b31ae43d827840735ce245f462feea6868e0b2 SHA512 93fa640bedcea449060caac8aa691aa315a19f172fd9f0422183d17749c3512d4ecac60e7599f9ef14e3cdb3c8b4b060e484c9061b1e7ee8d958200d6041e408 DIST Python-3.11.5.tar.xz 20053580 BLAKE2B 3b85f2d9d32787b0500abeec4211032bb147bd991f1a865ff3d13350f6beddef8051ebdda21e130cbf094e6546b31ae43d827840735ce245f462feea6868e0b2 SHA512 93fa640bedcea449060caac8aa691aa315a19f172fd9f0422183d17749c3512d4ecac60e7599f9ef14e3cdb3c8b4b060e484c9061b1e7ee8d958200d6041e408
DIST Python-3.11.5.tar.xz.asc 833 BLAKE2B e3c277f30203b5a0253aa1a41b8754bce7c00b54f0563e2d178c8fd264925a1b308ed84a875faeeae18405c419341ee286ea4ddaff93ce1e59b896daaf805e6e SHA512 5a8e1b1cabe89de03c050d581bbd3ec917d93ec943b2e8241db05c245809cf80294022c4cfc1bea3b90aa0570176109aac90455057256c025e2596aa136375fc DIST Python-3.11.5.tar.xz.asc 833 BLAKE2B e3c277f30203b5a0253aa1a41b8754bce7c00b54f0563e2d178c8fd264925a1b308ed84a875faeeae18405c419341ee286ea4ddaff93ce1e59b896daaf805e6e SHA512 5a8e1b1cabe89de03c050d581bbd3ec917d93ec943b2e8241db05c245809cf80294022c4cfc1bea3b90aa0570176109aac90455057256c025e2596aa136375fc
DIST Python-3.11.6.tar.xz 20067204 BLAKE2B e54dc94f913da608bffc0880512f613ba77afc99a227a102f3a01cc4ab9f0eb4744c42ace13d89fb39ebef5fdfa7857eac477e76fea4fcf27655636b5a418667 SHA512 94b1038f6f53de0c44f99f72ed0f2e0791fd9d2a325ae00ba145b2b2c332c27b300b3ea3473017518089478f15e01867b1bb203c16610039cce36f8366de341a
DIST Python-3.11.6.tar.xz.asc 833 BLAKE2B 76fc2913e6c396de8cbeab983c751a764676a3acb1b21c83880e5e3589337a67e6bf0293711550a11e50bda1f4ae92d2e27c5941e8d60c0087076b6fe8296819 SHA512 510f0b1393948c1490f81fbd90987e6f6b048b9f4d9df5814168097f5d9ac96e3682ff9bdc82d35b351eff5a4cc75015c28253b1dbbb2d94780411157c8beb25
DIST Python-3.12.0.tar.xz 20575020 BLAKE2B 047968c76adb88326295c7133b27e6849a45651fd2d9c1768d4f7c2a4c5ed4ed9de4e0e54855c66cc99e39818759404ccaf056b000a9376aa5aad7370e4f4ce6 SHA512 4d5353151fd1dad80fe96bd2a668cec27287a0dad85086239597166f8189d4edf6c4800ed14f39c8e54816076fec13ba405d6bfa1123ad2dada8cf85c60025e6
DIST Python-3.12.0.tar.xz.asc 963 BLAKE2B 2b2b119a4314d88c9ecbf881b583fa8bd7c0a67d7307cd7ea625fbaeb1e696dbcb0d13041ec807cecf1636c8b4f1ac1862d0d966fe7705f384cd414c3097af0d SHA512 2c457f51cd4269deb2c644b35da1c617d1b1d53a6093da77b967f4e5661bc3400c70808aab4f619d9035fd33e656653f992d308c683e26f1505929a3a59b4ce2
DIST Python-3.12.0b4.tar.xz 20244176 BLAKE2B 6f1d199fcce07b5ca4fbf5a24b382aac2af793c6f43346708d984b20422a2f9ac4e6bc352e3c008e7815083e06c4b69e36c1a3ea94a8e3c398a1d2188595a0f5 SHA512 942a47d12c51e13939c815de908e766b818e4862c536153ae94b8032b5263b0cc23bda9a75fe60f48ee400a4ce405e2583da684847623cf552c20efcbc663469 DIST Python-3.12.0b4.tar.xz 20244176 BLAKE2B 6f1d199fcce07b5ca4fbf5a24b382aac2af793c6f43346708d984b20422a2f9ac4e6bc352e3c008e7815083e06c4b69e36c1a3ea94a8e3c398a1d2188595a0f5 SHA512 942a47d12c51e13939c815de908e766b818e4862c536153ae94b8032b5263b0cc23bda9a75fe60f48ee400a4ce405e2583da684847623cf552c20efcbc663469
DIST Python-3.12.0b4.tar.xz.asc 963 BLAKE2B 3ed0c47bd892791325598f20578bca72d8ffce9421c80d35c12b2a0d23611dfc329a2016f332950910990fcd9bd55e90753f547ca8a54dde039618b43c71a6b4 SHA512 ab2684cc4044bf39c8064ec7d41dc2d04f01c9bccf5404ec1fffbce89a3a831b4d7dac3613ef892988a16839aeb13cbc03a085fae5c086ee19d3bfb925dff6c0 DIST Python-3.12.0b4.tar.xz.asc 963 BLAKE2B 3ed0c47bd892791325598f20578bca72d8ffce9421c80d35c12b2a0d23611dfc329a2016f332950910990fcd9bd55e90753f547ca8a54dde039618b43c71a6b4 SHA512 ab2684cc4044bf39c8064ec7d41dc2d04f01c9bccf5404ec1fffbce89a3a831b4d7dac3613ef892988a16839aeb13cbc03a085fae5c086ee19d3bfb925dff6c0
DIST Python-3.12.0rc1.tar.xz 20285264 BLAKE2B 2cbf77e9405426c58714506c14281a941b4006219215d990f79672719eaa4f26c7b6356a1096400aae84d682c5a9622dfd8ea90dc635312efba6cd8c730d3f37 SHA512 67c38317e34aa1c4ced831cf50f74de21f9e40ce708397be3682d0c1012c3e0b2617d77525dc6c3246725dfc11b5448792adc0ef2e3741e818776bc5fba0c50d DIST Python-3.12.0rc1.tar.xz 20285264 BLAKE2B 2cbf77e9405426c58714506c14281a941b4006219215d990f79672719eaa4f26c7b6356a1096400aae84d682c5a9622dfd8ea90dc635312efba6cd8c730d3f37 SHA512 67c38317e34aa1c4ced831cf50f74de21f9e40ce708397be3682d0c1012c3e0b2617d77525dc6c3246725dfc11b5448792adc0ef2e3741e818776bc5fba0c50d
@ -19,6 +23,8 @@ DIST Python-3.9.18.tar.xz.asc 833 BLAKE2B b2160eedf7a7529c379ede5cd626f2d1e36db6
DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f
DIST python-gentoo-patches-3.10.13.tar.xz 13996 BLAKE2B 0123a18c8c39397ac03b1be1d243d8ae4da9f62888f409157bc1781285c9c6cd3d9ec23f1ae7ff0e0591b3dd2934ee366b3eb235e7cc6663afc9d617c4fd42f2 SHA512 ddfc830d2ced508a64e202a6082930f53edb48411c19cc9f364b29977ecd5a4f052d0ce953bbfb7fdf26072acb2836e0b7d5ce55f941955f2039551fa1f48edd DIST python-gentoo-patches-3.10.13.tar.xz 13996 BLAKE2B 0123a18c8c39397ac03b1be1d243d8ae4da9f62888f409157bc1781285c9c6cd3d9ec23f1ae7ff0e0591b3dd2934ee366b3eb235e7cc6663afc9d617c4fd42f2 SHA512 ddfc830d2ced508a64e202a6082930f53edb48411c19cc9f364b29977ecd5a4f052d0ce953bbfb7fdf26072acb2836e0b7d5ce55f941955f2039551fa1f48edd
DIST python-gentoo-patches-3.11.5.tar.xz 7124 BLAKE2B 04e19b0cce37794622d211fb7758988e734eca7298be59169fff81f8ec98f9c2454be3bba0944e681efcdca0810b74b4a07993965d89cdc0261cbc61862cd6f1 SHA512 3e137ab2b7ff4aaa41e4c760a7340d86cc3fb226c47985bd0f0bb8a4ef4fc157e1442e69995e585db15f04f95a734a19d80534a89067981ea314ef5be042b02e DIST python-gentoo-patches-3.11.5.tar.xz 7124 BLAKE2B 04e19b0cce37794622d211fb7758988e734eca7298be59169fff81f8ec98f9c2454be3bba0944e681efcdca0810b74b4a07993965d89cdc0261cbc61862cd6f1 SHA512 3e137ab2b7ff4aaa41e4c760a7340d86cc3fb226c47985bd0f0bb8a4ef4fc157e1442e69995e585db15f04f95a734a19d80534a89067981ea314ef5be042b02e
DIST python-gentoo-patches-3.11.6.tar.xz 7568 BLAKE2B 7ff4b1f4f2549b2df46aeff875c20fb6de40778d88071c1aa054bf2e3494f718dbb39a42d9cb791c1e0db1a025ae8eb13b24f7bd712f08b3c00ca638100bb732 SHA512 57c655d9d0df4284e167f3ed9b4e0d1c4554e5fe08605c64db253c104ac2e64da2439c8500fe60460d2545683467f8689d7fee68214cfa414584d71434735473
DIST python-gentoo-patches-3.12.0.tar.xz 5156 BLAKE2B 42d23d4567b09878000a6b01425e06e377c779e8e3713af6d7522f8cdbe22d2bcb67dbfd04e8d7104ce3bd9b7e3950bbe0ac0dfa3892e1c1e5992642d6ef0ce7 SHA512 dcc6afe0c91436cdbad7bedb72557c72b0cc97c1714bbe41905e5e3fd6956e47c82226df09be2041d1935bd4031fdbc1c1b178e031d3eaaf6f587a0cf3d68f42
DIST python-gentoo-patches-3.12.0b4_p2.tar.xz 8132 BLAKE2B 4c1df7c8e1dda483724d8c3bb8ab7a7739fcdee16eaf1a2a5aeedb6011c13769ee9f2d0b1cf849df12aaf3230c0771b16533496539e1a0fab633e38699c8a75f SHA512 9051311d1e31163d13b8d2b1981d700ad2cf297b30f8d2867df8fe535fdb7da11efcb6fef8a201a76ff05aa8ae91c3679eeee72a729dc7249714796f6af2be9f DIST python-gentoo-patches-3.12.0b4_p2.tar.xz 8132 BLAKE2B 4c1df7c8e1dda483724d8c3bb8ab7a7739fcdee16eaf1a2a5aeedb6011c13769ee9f2d0b1cf849df12aaf3230c0771b16533496539e1a0fab633e38699c8a75f SHA512 9051311d1e31163d13b8d2b1981d700ad2cf297b30f8d2867df8fe535fdb7da11efcb6fef8a201a76ff05aa8ae91c3679eeee72a729dc7249714796f6af2be9f
DIST python-gentoo-patches-3.12.0rc1_p5.tar.xz 348764 BLAKE2B 8f71d6172ca4e557c195f4226d548f10b888842a110824db6c73613016d5b1c900545a2a3331519cc35cd9cc740fba3970737f40cdb64bd4d48e23a2be9e8be6 SHA512 e05f6e51a0689f0b5bdc745518742aebc3ae9fe145cb82c5e43a1a048df0ea4f11711ac4850726f807a73e232f76cfdc09c62d513ad0007acea7d5d5420c8569 DIST python-gentoo-patches-3.12.0rc1_p5.tar.xz 348764 BLAKE2B 8f71d6172ca4e557c195f4226d548f10b888842a110824db6c73613016d5b1c900545a2a3331519cc35cd9cc740fba3970737f40cdb64bd4d48e23a2be9e8be6 SHA512 e05f6e51a0689f0b5bdc745518742aebc3ae9fe145cb82c5e43a1a048df0ea4f11711ac4850726f807a73e232f76cfdc09c62d513ad0007acea7d5d5420c8569
DIST python-gentoo-patches-3.12.0rc1_p6.tar.xz 349384 BLAKE2B 975aae449a01a31c459b287a47bd4d1a2d8b0b39e594a1c976371acc4948765bcb4733dd9e10b70c87dfb9409d4db6b2492004841db61577576852634a40365c SHA512 f262d1a9291867e1bdc8f92c682338369b1b52f210d6db0c648c3bbabea68c6b596dfd8d13507f6d65de37d1b83beb336be3abff239d2a588054794b5bebeb81 DIST python-gentoo-patches-3.12.0rc1_p6.tar.xz 349384 BLAKE2B 975aae449a01a31c459b287a47bd4d1a2d8b0b39e594a1c976371acc4948765bcb4733dd9e10b70c87dfb9409d4db6b2492004841db61577576852634a40365c SHA512 f262d1a9291867e1bdc8f92c682338369b1b52f210d6db0c648c3bbabea68c6b596dfd8d13507f6d65de37d1b83beb336be3abff239d2a588054794b5bebeb81

View File

@ -0,0 +1,535 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
inherit prefix python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="
https://www.python.org/
https://github.com/python/cpython/
"
SRC_URI="
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
verify-sig? (
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
)
"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="
bluetooth build debug +ensurepip examples gdbm libedit lto
+ncurses pgo +readline +sqlite +ssl test tk valgrind
"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="
app-arch/bzip2:=
app-arch/xz-utils:=
app-crypt/libb2
>=dev-libs/expat-2.1:=
dev-libs/libffi:=
dev-python/gentoo-common
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
kernel_linux? ( sys-apps/util-linux:= )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? (
!libedit? ( >=sys-libs/readline-4.1:= )
libedit? ( dev-libs/libedit:= )
)
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? ( >=dev-libs/openssl-1.1.1:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
"
# bluetooth requires headers from bluez
DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
valgrind? ( dev-util/valgrind )
"
# autoconf-archive needed to eautoreconf
BDEPEND="
sys-devel/autoconf-archive
app-alternatives/awk
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-python )
"
RDEPEND+="
!build? ( app-misc/mime-types )
"
if [[ ${PV} != *_alpha* ]]; then
RDEPEND+="
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
"
fi
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
QA_PKGCONFIG_VERSION=${PYVER}
# false positives -- functions specific to *BSD
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_unpack() {
if use verify-sig; then
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
fi
default
}
src_prepare() {
# Ensure that internal copies of expat and libffi are not used.
rm -r Modules/expat || die
rm -r Modules/_ctypes/libffi* || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
# https://bugs.gentoo.org/850151
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
# force the correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs)
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
build_cbuild_python() {
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
#
# -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
local -x CFLAGS= LDFLAGS=
local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
# We need to build our own Python on CBUILD first, and feed it in.
# bug #847910
local myeconfargs_cbuild=(
"${myeconfargs[@]}"
--prefix="${BROOT}"/usr
--libdir="${cbuild_libdir:2}"
# Avoid needing to load the right libpython.so.
--disable-shared
# As minimal as possible for the mini CBUILD Python
# we build just for cross to satisfy --with-build-python.
--without-lto
--without-readline
--disable-optimizations
)
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
# We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die
MODULE_NIS_STATE=disabled
MODULE__DBM_STATE=disabled
MODULE__GDBM_STATE=disabled
MODULE__DBM_STATE=disabled
MODULE__SQLITE3_STATE=disabled
MODULE__HASHLIB_STATE=disabled
MODULE__SSL_STATE=disabled
MODULE__CURSES_STATE=disabled
MODULE__CURSES_PANEL_STATE=disabled
MODULE_READLINE_STATE=disabled
MODULE__TKINTER_STATE=disabled
MODULE_PYEXPAT_STATE=disabled
MODULE_ZLIB_STATE=disabled
EOF
# Unfortunately, we do have to build this immediately, and
# not in src_compile, because CHOST configure for Python
# will check the existence of the --with-build-python value
# immediately.
PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake
popd &> /dev/null || die
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
if ! use bluetooth; then
local -x ac_cv_header_bluetooth_bluetooth_h=no
fi
append-flags -fwrapv
filter-flags -malign-double
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
# PKG_CONFIG needed for cross.
tc-export CXX PKG_CONFIG
local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use pgo; then
local profile_task_flags=(
-m test
"-j$(makeopts_jobs)"
--pgo-extended
-u-network
# We use a timeout because of how often we've had hang issues
# here. It also matches the default upstream PROFILE_TASK.
--timeout 1200
-x test_gdb
-x test_dtrace
# All of these seem to occasionally hang for PGO inconsistently
# They'll even hang here but be fine in src_test sometimes.
# bug #828535 (and related: bug #788022)
-x test_asyncio
-x test_httpservers
-x test_logging
-x test_multiprocessing_fork
-x test_socket
-x test_xmlrpc
# Hangs (actually runs indefinitely executing itself w/ many cpython builds)
# bug #900429
-x test_tools
)
if has_version "app-arch/rpm" ; then
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
profile_task_flags+=(
-x test_distutils
)
fi
local -x PROFILE_TASK="${profile_task_flags[*]}"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
--without-static-libpython
--enable-ipv6
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
--with-platlibdir=lib
--with-pkg-config=yes
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
$(use_with debug assertions)
$(use_with lto)
$(use_enable pgo optimizations)
$(use_with readline readline "$(usex libedit editline readline)")
$(use_with valgrind)
)
# disable implicit optimization/debugging flags
local -x OPT=
if tc-is-cross-compiler ; then
build_cbuild_python
myeconfargs+=(
# Point the imminent CHOST build to the Python we just
# built for CBUILD.
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
)
fi
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
# Fix implicit declarations on cross and prefix builds. Bug #674070.
if use ncurses; then
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
fi
hprefixify setup.py
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
# force-disable modules we don't want built
local disable_modules=( NIS )
use gdbm || disable_modules+=( _GDBM _DBM )
use sqlite || disable_modules+=( _SQLITE3 )
use ssl || disable_modules+=( _HASHLIB _SSL )
use ncurses || disable_modules+=( _CURSES _CURSES_PANEL )
use readline || disable_modules+=( READLINE )
use tk || disable_modules+=( _TKINTER )
local mod
for mod in "${disable_modules[@]}"; do
echo "MODULE_${mod}_STATE=disabled"
done >> Makefile || die
# install epython.py as part of stdlib
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
# Prevent using distutils bundled by setuptools.
# https://bugs.gentoo.org/823728
export SETUPTOOLS_USE_DISTUTILS=stdlib
export PYTHONSTRICTEXTENSIONBUILD=1
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
# end up writing bytecode & violating sandbox.
# bug #831897
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
if use pgo ; then
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
addpredict "/usr/lib/python${PYVER}/site-packages"
fi
# also need to clear the flags explicitly here or they end up
# in _sysconfigdata*
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Restore saved value from above.
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# this just happens to skip test_support.test_freeze that is broken
# without bundled expat
# TODO: get a proper skip for it upstream
local -x LOGNAME=buildbot
local test_opts=(
-u-network
-j "$(makeopts_jobs)"
# fails
-x test_gdb
)
if use sparc ; then
# bug #788022
test_opts+=(
-x test_multiprocessing_fork
-x test_multiprocessing_forkserver
)
fi
# workaround docutils breaking tests
cat > Lib/docutils.py <<-EOF || die
raise ImportError("Thou shalt not import!")
EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
# workaround https://bugs.gentoo.org/775416
addwrite "/usr/lib/python${PYVER}/site-packages"
nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local ret=${?}
rm Lib/docutils.py || die
[[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
# -j1 hack for now for bug #843458
emake -j1 DESTDIR="${D}" altinstall
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
rm -r "${libdir}"/ensurepip/_bundled || die
if ! use ensurepip; then
rm -r "${libdir}"/ensurepip || die
fi
if ! use sqlite; then
rm -r "${libdir}/"sqlite3 || die
fi
if ! use tk; then
rm -r "${ED}/usr/bin/idle${PYVER}" || die
rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
fi
ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(
printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
emake --no-print-directory -s -f - 2>/dev/null
)
newins Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# python-exec wrapping support
local pymajor=${PYVER%.*}
local EPYTHON=python${PYVER}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
pkg_postinst() {
local v
for v in ${REPLACING_VERSIONS}; do
if ver_test "${v}" -lt 3.11.0_beta4-r2; then
ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
ewarn "installed previously are no longer valid and will be regenerated"
ewarn "(or ignored) on the next import. This may cause sandbox failures"
ewarn "when installing some packages and checksum mismatches when removing"
ewarn "old versions. To actively prevent this, rebuild all packages"
ewarn "installing Python 3.11 modules, e.g. using:"
ewarn
ewarn " emerge -1v /usr/lib/python3.11/site-packages"
fi
done
}

View File

@ -0,0 +1,532 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
inherit python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="
https://www.python.org/
https://github.com/python/cpython/
"
SRC_URI="
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
verify-sig? (
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
)
"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="
bluetooth build debug +ensurepip examples gdbm libedit lto
+ncurses pgo +readline +sqlite +ssl test tk valgrind
"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="
app-arch/bzip2:=
app-arch/xz-utils:=
app-crypt/libb2
>=dev-libs/expat-2.1:=
dev-libs/libffi:=
dev-python/gentoo-common
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
ensurepip? ( dev-python/ensurepip-pip )
gdbm? ( sys-libs/gdbm:=[berkdb] )
kernel_linux? ( sys-apps/util-linux:= )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? (
!libedit? ( >=sys-libs/readline-4.1:= )
libedit? ( dev-libs/libedit:= )
)
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? ( >=dev-libs/openssl-1.1.1:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
"
# bluetooth requires headers from bluez
DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? (
app-arch/xz-utils[extra-filters(+)]
dev-python/ensurepip-pip
dev-python/ensurepip-setuptools
dev-python/ensurepip-wheel
)
valgrind? ( dev-util/valgrind )
"
# autoconf-archive needed to eautoreconf
BDEPEND="
sys-devel/autoconf-archive
app-alternatives/awk
virtual/pkgconfig
verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
"
RDEPEND+="
!build? ( app-misc/mime-types )
"
if [[ ${PV} != *_alpha* ]]; then
RDEPEND+="
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
"
fi
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
QA_PKGCONFIG_VERSION=${PYVER}
# false positives -- functions specific to *BSD
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_unpack() {
if use verify-sig; then
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
fi
default
}
src_prepare() {
# Ensure that internal copies of expat and libffi are not used.
# TODO: Makefile has annoying deps on expat headers
#rm -r Modules/expat || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
# force the correct number of jobs
# https://bugs.gentoo.org/737660
sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
eautoreconf
}
build_cbuild_python() {
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
#
# -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
local -x CFLAGS= LDFLAGS=
local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
# We need to build our own Python on CBUILD first, and feed it in.
# bug #847910
local myeconfargs_cbuild=(
"${myeconfargs[@]}"
--prefix="${BROOT}"/usr
--libdir="${cbuild_libdir:2}"
# Avoid needing to load the right libpython.so.
--disable-shared
# As minimal as possible for the mini CBUILD Python
# we build just for cross to satisfy --with-build-python.
--without-lto
--without-readline
--disable-optimizations
)
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
# Avoid as many dependencies as possible for the cross build.
mkdir Modules || die
cat > Modules/Setup.local <<-EOF || die
*disabled*
nis
_dbm _gdbm
_sqlite3
_hashlib _ssl
_curses _curses_panel
readline
_tkinter
pyexpat
zlib
# We disabled these for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross. This should be rechecked for the pure Makefile approach,
# and uncommented if needed.
#_ctypes _crypt
EOF
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Unfortunately, we do have to build this immediately, and
# not in src_compile, because CHOST configure for Python
# will check the existence of the --with-build-python value
# immediately.
emake
popd &> /dev/null || die
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
if ! use bluetooth; then
local -x ac_cv_header_bluetooth_bluetooth_h=no
fi
append-flags -fwrapv
filter-flags -malign-double
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
# PKG_CONFIG needed for cross.
tc-export CXX PKG_CONFIG
local dbmliborder=
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
if use pgo; then
local profile_task_flags=(
-m test
"-j$(makeopts_jobs)"
--pgo-extended
-u-network
# We use a timeout because of how often we've had hang issues
# here. It also matches the default upstream PROFILE_TASK.
--timeout 1200
-x test_gdb
-x test_dtrace
# All of these seem to occasionally hang for PGO inconsistently
# They'll even hang here but be fine in src_test sometimes.
# bug #828535 (and related: bug #788022)
-x test_asyncio
-x test_httpservers
-x test_logging
-x test_multiprocessing_fork
-x test_socket
-x test_xmlrpc
# Hangs (actually runs indefinitely executing itself w/ many cpython builds)
# bug #900429
-x test_tools
)
if has_version "app-arch/rpm" ; then
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
profile_task_flags+=(
-x test_distutils
)
fi
local -x PROFILE_TASK="${profile_task_flags[*]}"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
--without-static-libpython
--enable-ipv6
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-platlibdir=lib
--with-pkg-config=yes
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
$(use_with debug assertions)
$(use_with lto)
$(use_enable pgo optimizations)
$(use_with readline readline "$(usex libedit editline readline)")
$(use_with valgrind)
)
# Force-disable modules we don't want built.
# See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
cat > Modules/Setup.local <<-EOF || die
*disabled*
nis
$(usev !gdbm '_gdbm _dbm')
$(usev !sqlite '_sqlite3')
$(usev !ssl '_hashlib _ssl')
$(usev !ncurses '_curses _curses_panel')
$(usev !readline 'readline')
$(usev !tk '_tkinter')
EOF
# disable implicit optimization/debugging flags
local -x OPT=
if tc-is-cross-compiler ; then
build_cbuild_python
myeconfargs+=(
# Point the imminent CHOST build to the Python we just
# built for CBUILD.
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
)
fi
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS}
local -x LDFLAGS_NODIST=${LDFLAGS}
local -x CFLAGS= LDFLAGS=
# Fix implicit declarations on cross and prefix builds. Bug #674070.
if use ncurses; then
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
fi
econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
# install epython.py as part of stdlib
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
export PYTHONSTRICTEXTENSIONBUILD=1
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
# end up writing bytecode & violating sandbox.
# bug #831897
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
if use pgo ; then
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
addpredict "/usr/lib/python${PYVER}/site-packages"
fi
# also need to clear the flags explicitly here or they end up
# in _sysconfigdata*
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Restore saved value from above.
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# this just happens to skip test_support.test_freeze that is broken
# without bundled expat
# TODO: get a proper skip for it upstream
local -x LOGNAME=buildbot
local test_opts=(
-u-network
-j "$(makeopts_jobs)"
# fails
-x test_gdb
)
if use sparc ; then
# bug #788022
test_opts+=(
-x test_multiprocessing_fork
-x test_multiprocessing_forkserver
)
fi
# workaround docutils breaking tests
cat > Lib/docutils.py <<-EOF || die
raise ImportError("Thou shalt not import!")
EOF
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
# workaround https://bugs.gentoo.org/775416
addwrite "/usr/lib/python${PYVER}/site-packages"
nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local ret=${?}
rm Lib/docutils.py || die
[[ ${ret} -eq 0 ]] || die "emake test failed"
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
# the Makefile rules are broken
# https://github.com/python/cpython/issues/100221
mkdir -p "${libdir}"/lib-dynload || die
# -j1 hack for now for bug #843458
emake -j1 DESTDIR="${D}" altinstall
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
rm -r "${libdir}"/ensurepip/_bundled || die
if ! use ensurepip; then
rm -r "${libdir}"/ensurepip || die
fi
if ! use sqlite; then
rm -r "${libdir}/"sqlite3 || die
fi
if ! use tk; then
rm -r "${ED}/usr/bin/idle${PYVER}" || die
rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
fi
ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(
printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
emake --no-print-directory -s -f - 2>/dev/null
)
newins Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
# python-exec wrapping support
local pymajor=${PYVER%.*}
local EPYTHON=python${PYVER}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
fi
}
pkg_postinst() {
local v
for v in ${REPLACING_VERSIONS}; do
if ver_test "${v}" -lt 3.11.0_beta4-r2; then
ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
ewarn "installed previously are no longer valid and will be regenerated"
ewarn "(or ignored) on the next import. This may cause sandbox failures"
ewarn "when installing some packages and checksum mismatches when removing"
ewarn "old versions. To actively prevent this, rebuild all packages"
ewarn "installing Python 3.11 modules, e.g. using:"
ewarn
ewarn " emerge -1v /usr/lib/python3.11/site-packages"
fi
done
}

View File

@ -0,0 +1,357 @@
# Copyright 1999-2023 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_{10..12} )
inherit 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://boostorg.jfrog.io/artifactory/main/release/${PV}/source/boost_${MY_PV}.tar.bz2"
S="${WORKDIR}/${PN}_${MY_PV}"
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead of the major version due to bug 486122
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="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-3.6:=[${MULTILIB_USEDEP}] )
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] )
mpi? ( >=virtual/mpi-2.0-r4[${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-util/b2-4.9.2"
PATCHES=(
"${FILESDIR}"/${PN}-1.81.0-disable_icu_rpath.patch
"${FILESDIR}"/${PN}-1.79.0-context-x32.patch
"${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch
# Boost.MPI's __init__.py doesn't work on Py3
"${FILESDIR}"/${PN}-1.79.0-boost-mpi-python-PEP-328.patch
"${FILESDIR}"/${PN}-1.81.0-phoenix-multiple-definitions.patch
"${FILESDIR}"/${PN}-1.83.0-unordered-uaf.patch
)
python_bindings_needed() {
multilib_is_native_abi && use python
}
tools_needed() {
multilib_is_native_abi && use tools
}
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 python_bindings_needed; 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 python_bindings_needed && 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 python_bindings_needed; 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() {
# 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 tools_needed; 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 tools_needed; 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 "${S}"/libs/mpi/build/__init__.py
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
}
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"
}

View File

@ -0,0 +1,18 @@
https://www.boost.org/patches/1_83_0/0001-unordered-fix-copy-assign.patch
https://github.com/boostorg/unordered/issues/205
--- a/boost/unordered/detail/foa/core.hpp
+++ b/boost/unordered/detail/foa/core.hpp
@@ -1870,9 +1870,10 @@ private:
void fast_copy_elements_from(const table_core& x)
{
- if(arrays.elements){
+ if(arrays.elements&&x.arrays.elements){
copy_elements_array_from(x);
copy_groups_array_from(x);
+ size_ctrl.ml=std::size_t(x.size_ctrl.ml);
size_ctrl.size=std::size_t(x.size_ctrl.size);
}
}

View File

@ -1,2 +1 @@
DIST cJSON-1.7.15.tar.gz 352278 BLAKE2B e0de3b8d56020853d56f5512e6e7216adafd238b6f69bbf6965b153bfe8ebfc23593dfa7cfb8543d8730d90820153d263c8af276c8e9588ba8a5ad76a50f8b72 SHA512 0b32a758c597fcc90c8ed0af493c9bccd611b9d4f9a03e87de3f7337bb9a28990b810befd44bc321a0cb42cbcd0b026d45761f9bab7bd798f920b7b6975fb124
DIST cJSON-1.7.16.tar.gz 353498 BLAKE2B 9dd519b03b24e46fd84798af32d733cec8803d3f5a4b9259352ffe7b1ba0b198a3b4dc0dbdb9cc6247787e49c48beaadc7c31368d8fd695a8ddd711cc0cbfa5b SHA512 3a894de03c33d89f1e7ee572418d5483c844d38e1e64aa4f6297ddaa01f4111f07601f8d26617b424b5af15d469e3955dae075d9f30b5c25e16ec348fdb06e6f DIST cJSON-1.7.16.tar.gz 353498 BLAKE2B 9dd519b03b24e46fd84798af32d733cec8803d3f5a4b9259352ffe7b1ba0b198a3b4dc0dbdb9cc6247787e49c48beaadc7c31368d8fd695a8ddd711cc0cbfa5b SHA512 3a894de03c33d89f1e7ee572418d5483c844d38e1e64aa4f6297ddaa01f4111f07601f8d26617b424b5af15d469e3955dae075d9f30b5c25e16ec348fdb06e6f

View File

@ -1,30 +0,0 @@
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake
DESCRIPTION="Ultralightweight JSON parser in ANSI C"
HOMEPAGE="https://github.com/DaveGamble/cJSON"
SRC_URI="https://github.com/DaveGamble/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
src_prepare() {
cmake_src_prepare
sed -i -e '/-Werror/d' CMakeLists.txt || die
}
src_configure() {
local mycmakeargs=(
-DENABLE_CJSON_TEST=$(usex test)
)
cmake_src_configure
}

View File

@ -1,36 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/guillemjover.asc
inherit multilib-minimal verify-sig
DESCRIPTION="Library to provide useful functions commonly found on BSD systems"
HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd"
SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
SRC_URI+=" verify-sig? ( https://${PN}.freedesktop.org/releases/${P}.tar.xz.asc )"
LICENSE="BSD BSD-2 BSD-4 ISC"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="static-libs"
RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]"
DEPEND="${RDEPEND}
>=sys-kernel/linux-headers-3.17
"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-guillemjover )"
multilib_src_configure() {
# The build system will install libbsd-ctor.a despite USE="-static-libs"
# which is correct, see:
# https://gitlab.freedesktop.org/libbsd/libbsd/commit/c5b959028734ca2281250c85773d9b5e1d259bc8
ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
}
multilib_src_install() {
emake DESTDIR="${D}" install
find "${ED}" -type f -name "*.la" -delete || die
}

View File

@ -0,0 +1,71 @@
https://gitlab.gnome.org/GNOME/libxml2/-/issues/583
https://gitlab.gnome.org/GNOME/libxml2/-/commit/d39f78069dff496ec865c73aa44d7110e429bce9
https://bugs.gentoo.org/915351
From d39f78069dff496ec865c73aa44d7110e429bce9 Mon Sep 17 00:00:00 2001
From: Nick Wellnhofer <wellnhofer@aevum.de>
Date: Wed, 23 Aug 2023 20:24:24 +0200
Subject: [PATCH] tree: Fix copying of DTDs
- Don't create multiple DTD nodes.
- Fix UAF if malloc fails.
- Skip DTD nodes if tree module is disabled.
Fixes #583.
--- a/tree.c
+++ b/tree.c
@@ -4471,29 +4471,28 @@ xmlNodePtr
xmlStaticCopyNodeList(xmlNodePtr node, xmlDocPtr doc, xmlNodePtr parent) {
xmlNodePtr ret = NULL;
xmlNodePtr p = NULL,q;
+ xmlDtdPtr newSubset = NULL;
while (node != NULL) {
-#ifdef LIBXML_TREE_ENABLED
if (node->type == XML_DTD_NODE ) {
- if (doc == NULL) {
+#ifdef LIBXML_TREE_ENABLED
+ if ((doc == NULL) || (doc->intSubset != NULL)) {
node = node->next;
continue;
}
- if (doc->intSubset == NULL) {
- q = (xmlNodePtr) xmlCopyDtd( (xmlDtdPtr) node );
- if (q == NULL) goto error;
- q->doc = doc;
- q->parent = parent;
- doc->intSubset = (xmlDtdPtr) q;
- xmlAddChild(parent, q);
- } else {
- q = (xmlNodePtr) doc->intSubset;
- xmlAddChild(parent, q);
- }
- } else
+ q = (xmlNodePtr) xmlCopyDtd( (xmlDtdPtr) node );
+ if (q == NULL) goto error;
+ q->doc = doc;
+ q->parent = parent;
+ newSubset = (xmlDtdPtr) q;
+#else
+ node = node->next;
+ continue;
#endif /* LIBXML_TREE_ENABLED */
+ } else {
q = xmlStaticCopyNode(node, doc, parent, 1);
- if (q == NULL) goto error;
+ if (q == NULL) goto error;
+ }
if (ret == NULL) {
q->prev = NULL;
ret = p = q;
@@ -4505,6 +4504,8 @@ xmlStaticCopyNodeList(xmlNodePtr node, xmlDocPtr doc, xmlNodePtr parent) {
}
node = node->next;
}
+ if (newSubset != NULL)
+ doc->intSubset = newSubset;
return(ret);
error:
xmlFreeNodeList(ret);
--
GitLab

View File

@ -0,0 +1,200 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: Please bump in sync with dev-libs/libxslt
PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="xml(+)"
inherit flag-o-matic python-r1 multilib-minimal
XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite"
XSTS_NAME_1="xmlschema2002-01-16"
XSTS_NAME_2="xmlschema2004-01-14"
XSTS_TARBALL_1="xsts-2002-01-16.tar.gz"
XSTS_TARBALL_2="xsts-2004-01-14.tar.gz"
XMLCONF_TARBALL="xmlts20130923.tar.gz"
DESCRIPTION="XML C parser and toolkit"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
inherit autotools git-r3
else
inherit gnome.org libtool
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
SRC_URI+="
test? (
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
https://www.w3.org/XML/Test/${XMLCONF_TARBALL}
)
"
S="${WORKDIR}/${PN}-${PV%_rc*}"
LICENSE="MIT"
SLOT="2"
IUSE="debug examples +ftp icu lzma +python readline static-libs test"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
virtual/libiconv
>=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
if [[ ${PV} == 9999 ]] ; then
BDEPEND+=" dev-util/gtk-doc-am"
fi
MULTILIB_CHOST_TOOLS=(
/usr/bin/xml2-config
)
PATCHES=(
"${FILESDIR}"/${PN}-2.11.5-CVE-2023-45322.patch
)
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
else
local tarname=${P/_rc/-rc}.tar.xz
# ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR},
# as they are needed as tarballs in ${S}/xstc instead and not unpacked
unpack ${tarname}
if [[ -n ${PATCHSET_VERSION} ]] ; then
unpack ${PN}-${PATCHSET_VERSION}.tar.xz
fi
fi
cd "${S}" || die
if use test ; then
cp "${DISTDIR}/${XSTS_TARBALL_1}" \
"${DISTDIR}/${XSTS_TARBALL_2}" \
"${S}"/xstc/ \
|| die "Failed to install test tarballs"
unpack ${XMLCONF_TARBALL}
fi
}
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautoreconf
else
# Please do not remove, as else we get references to PORTAGE_TMPDIR
# in /usr/lib/python?.?/site-packages/libxml2mod.la among things.
elibtoolize
fi
}
multilib_src_configure() {
# Filter seemingly problematic CFLAGS (bug #26320)
filter-flags -fprefetch-loop-arrays -funroll-loops
# Notes:
# The meaning of the 'debug' USE flag does not apply to the --with-debug
# switch (enabling the libxml2 debug module). See bug #100898.
libxml2_configure() {
ECONF_SOURCE="${S}" econf \
--enable-ipv6 \
$(use_with ftp) \
$(use_with debug run-debug) \
$(use_with icu) \
$(use_with lzma) \
$(use_enable static-libs static) \
$(multilib_native_use_with readline) \
$(multilib_native_use_with readline history) \
"$@"
}
# Build python bindings separately
libxml2_configure --without-python
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_configure --with-python
}
libxml2_py_emake() {
pushd "${BUILD_DIR}"/python >/dev/null || die
emake top_builddir="${NATIVE_BUILD_DIR}" "$@"
popd >/dev/null || die
}
multilib_src_compile() {
default
if multilib_is_native_abi && use python ; then
NATIVE_BUILD_DIR="${BUILD_DIR}"
python_foreach_impl run_in_build_dir libxml2_py_emake all
fi
}
multilib_src_test() {
ln -s "${S}"/xmlconf || die
emake check
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_py_emake check
}
multilib_src_install() {
emake DESTDIR="${D}" install
multilib_is_native_abi && use python &&
python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install
# Hack until automake release is made for the optimise fix
# https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097
multilib_is_native_abi && use python && python_foreach_impl python_optimize
}
multilib_src_install_all() {
einstalldocs
if ! use examples ; then
rm -rf "${ED}"/usr/share/doc/${PF}/examples || die
rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die
fi
rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die
find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
# We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
# be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
if [[ -n "${ROOT}" ]]; then
elog "Skipping XML catalog creation for stage building (bug #208887)."
else
# Need an XML catalog, so no-one writes to a non-existent one
CATALOG="${EROOT}/etc/xml/catalog"
# We don't want to clobber an existing catalog though,
# only ensure that one is there
# <obz@gentoo.org>
if [[ ! -e "${CATALOG}" ]]; then
[[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
"${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
einfo "Created XML catalog in ${CATALOG}"
fi
fi
}

View File

@ -23,7 +23,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3 inherit autotools git-r3
else else
inherit gnome.org libtool inherit gnome.org libtool
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi fi
SRC_URI+=" SRC_URI+="

View File

@ -71,7 +71,7 @@ src_unpack() {
unpack ${tarname} unpack ${tarname}
if [[ -n ${PATCHSET_VERSION} ]] ; then if [[ -n ${PATCHSET_VERSION} ]] ; then
unpack ${PN}-${PATCHSET_VERSION}.tar.bz2 unpack ${PN}-${PATCHSET_VERSION}.tar.xz
fi fi
fi fi

View File

@ -1,2 +1,3 @@
DIST cython-0.29.36.gh.tar.gz 2115333 BLAKE2B 6d43779c7222ff65d7de3a35ec18ef636480807d53480a8f94cc8c92d462fcc2f4d201a3bbf6e840a11fd33025e32c53f85626b05c131d10eed2859cdca7eb2d SHA512 a086fe1a11290cd3c870b891e61a0a0e2595bab9c26888024a758b6950c07059346d682fa9349e46c0af89805abbdd750059b3189960b8ce18007dfb5eb4391a DIST cython-0.29.36.gh.tar.gz 2115333 BLAKE2B 6d43779c7222ff65d7de3a35ec18ef636480807d53480a8f94cc8c92d462fcc2f4d201a3bbf6e840a11fd33025e32c53f85626b05c131d10eed2859cdca7eb2d SHA512 a086fe1a11290cd3c870b891e61a0a0e2595bab9c26888024a758b6950c07059346d682fa9349e46c0af89805abbdd750059b3189960b8ce18007dfb5eb4391a
DIST cython-3.0.2.gh.tar.gz 2744583 BLAKE2B f631891870a6ce24acf2bcde75ebcb9775cf0df7840fe9d7b138cfdea64d54e9253a53d35d892a9086f251c1294d9414eec8521218d031840a3cd06903fefb86 SHA512 f55be138efdca6ca61bd39c6f2fab736244328a170a6f6c9bda87036e022c846930b209e9e9101fad889cb179d6e60034ba6f299f14b3056536d46235b438eb7 DIST cython-3.0.2.gh.tar.gz 2744583 BLAKE2B f631891870a6ce24acf2bcde75ebcb9775cf0df7840fe9d7b138cfdea64d54e9253a53d35d892a9086f251c1294d9414eec8521218d031840a3cd06903fefb86 SHA512 f55be138efdca6ca61bd39c6f2fab736244328a170a6f6c9bda87036e022c846930b209e9e9101fad889cb179d6e60034ba6f299f14b3056536d46235b438eb7
DIST cython-3.0.3.gh.tar.gz 2753188 BLAKE2B 0e6d40533f1cebf3c4217dc19aeebc2f873a8bacb94e68810e81d1c6d4cd75176de88516f2d82f43b36107656b6cd5e6990547e93bd8436b1aa93c73ccda6eaf SHA512 c27c16abaf0122ad61e0eeb92aa80a33fc491332b8ebec209cd1810d2b0e3bf14fe1e81838803b86f407520a6d6f7ab8b84d97e495e7d91fd6f7702a46980caa

View File

@ -0,0 +1,84 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_TESTED=( python3_{10..11} )
PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_12 pypy3 )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 multiprocessing toolchain-funcs
MY_P=${P/_rc/rc}
DESCRIPTION="A Python to C compiler"
HOMEPAGE="
https://cython.org/
https://github.com/cython/cython/
https://pypi.org/project/Cython/
"
SRC_URI="
https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
${RDEPEND}
test? (
$(python_gen_cond_dep '
dev-python/numpy[${PYTHON_USEDEP}]
' "${PYTHON_TESTED[@]}")
)
"
PATCHES=(
"${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
"${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
"${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
)
distutils_enable_sphinx docs \
dev-python/jinja \
dev-python/sphinx-issues \
dev-python/sphinx-tabs
python_compile() {
# Python gets confused when it is in sys.path before build.
local -x PYTHONPATH=
distutils-r1_python_compile
}
python_test() {
if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then
einfo "Skipping tests on ${EPYTHON} (xfail)"
return
fi
# Needed to avoid confusing cache tests
unset CYTHON_FORCE_REGEN
tc-export CC
# https://github.com/cython/cython/issues/1911
local -x CFLAGS="${CFLAGS} -fno-strict-overflow"
"${PYTHON}" runtests.py \
-vv \
-j "$(makeopts_jobs)" \
--work-dir "${BUILD_DIR}"/tests \
--no-examples \
--no-code-style \
|| die "Tests fail with ${EPYTHON}"
}
python_install_all() {
local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
distutils-r1_python_install_all
}

View File

@ -1,3 +1,4 @@
DIST lxml-4.9.2.gh.tar.gz 957365 BLAKE2B 201b3977da90386e413f1b89a4b7ee1e44d6bbea05e622e92feb1d67c637ce46ebf746f0648f034ed3bccd609233ccf7d8a7ee456f13b8d9ca8587ddf1ebd32a SHA512 816b2fe2eef2a97a0df66cbc39850c6dc3d6470e4033cc73edb40c80c0afbbe6c084d042d7c98b29497926e76f648caa42e1ebe5d83060af08af6972316077b0 DIST lxml-4.9.2.gh.tar.gz 957365 BLAKE2B 201b3977da90386e413f1b89a4b7ee1e44d6bbea05e622e92feb1d67c637ce46ebf746f0648f034ed3bccd609233ccf7d8a7ee456f13b8d9ca8587ddf1ebd32a SHA512 816b2fe2eef2a97a0df66cbc39850c6dc3d6470e4033cc73edb40c80c0afbbe6c084d042d7c98b29497926e76f648caa42e1ebe5d83060af08af6972316077b0
DIST lxml-4.9.3-patches-2.tar.xz 24288 BLAKE2B 47b7c486a1c1616c875111bd53b14d4211a1eee3f412985f4022e71b85b087abd71d36919fb025257f17de404329284898ddc639f85e8b15ade21778fa218d98 SHA512 713172b4c907db6479a0a803a842824825b212a9b645c1ca356f793658bd6c63113ea248278e7c46b512e22e3130696e9fc5127fea82a67372d920733fc160b0
DIST lxml-4.9.3-patches.tar.xz 10544 BLAKE2B 407938d2f701400e919110c3bfe84e94621f39f8178850c466d41549ee0eff4f23e93cdd8ea684713e8276acfaa05d6f7b7af4d375c859b9fc5b2981d60983a3 SHA512 c2d5d2ffb035aed6d846de84885b87142b2be7a09ffe6927e7c032acab343730acfcbefd75e8141cf3b41b308c532869a7878b515f3d4eeefa7526a3d2599398 DIST lxml-4.9.3-patches.tar.xz 10544 BLAKE2B 407938d2f701400e919110c3bfe84e94621f39f8178850c466d41549ee0eff4f23e93cdd8ea684713e8276acfaa05d6f7b7af4d375c859b9fc5b2981d60983a3 SHA512 c2d5d2ffb035aed6d846de84885b87142b2be7a09ffe6927e7c032acab343730acfcbefd75e8141cf3b41b308c532869a7878b515f3d4eeefa7526a3d2599398
DIST lxml-4.9.3.gh.tar.gz 958628 BLAKE2B ffdf3fe781a03815f7c026229d313721c93375ebafad9b4a20c5d8a380a631401e546d8701a94d8c49615fb6a71e84940d8ca0299b47a37c1c9596db36659113 SHA512 903bd4935c7708b459aee9befcf3f6e3e3aaa9adc122591ea923b6e3d8fd288f07cab3f5f0edb08e3bf9db80414324f0a1a8e5a5089f9cda82f6c50f5df59423 DIST lxml-4.9.3.gh.tar.gz 958628 BLAKE2B ffdf3fe781a03815f7c026229d313721c93375ebafad9b4a20c5d8a380a631401e546d8701a94d8c49615fb6a71e84940d8ca0299b47a37c1c9596db36659113 SHA512 903bd4935c7708b459aee9befcf3f6e3e3aaa9adc122591ea923b6e3d8fd288f07cab3f5f0edb08e3bf9db80414324f0a1a8e5a5089f9cda82f6c50f5df59423

View File

@ -24,7 +24,7 @@ S=${WORKDIR}/lxml-${P}
LICENSE="BSD ElementTree GPL-2 PSF-2" LICENSE="BSD ElementTree GPL-2 PSF-2"
SLOT="0" SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc examples +threads test" IUSE="doc examples +threads test"
RESTRICT="!test? ( test )" RESTRICT="!test? ( test )"

View File

@ -0,0 +1,114 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 optfeature toolchain-funcs
DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
HOMEPAGE="
https://lxml.de/
https://pypi.org/project/lxml/
https://github.com/lxml/lxml/
"
SRC_URI="
https://github.com/lxml/lxml/archive/${P}.tar.gz
-> ${P}.gh.tar.gz
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches-2.tar.xz
"
S=${WORKDIR}/lxml-${P}
LICENSE="BSD ElementTree GPL-2 PSF-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc examples +threads test"
RESTRICT="!test? ( test )"
# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
DEPEND="
>=dev-libs/libxml2-2.10.3
>=dev-libs/libxslt-1.1.38
"
RDEPEND="
${DEPEND}
"
BDEPEND="
virtual/pkgconfig
>=dev-python/cython-0.29.35[${PYTHON_USEDEP}]
doc? (
$(python_gen_any_dep '
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
')
)
test? (
dev-python/cssselect[${PYTHON_USEDEP}]
)
"
PATCHES=(
"${WORKDIR}"/${PN}-4.9.3-patches-2
)
python_check_deps() {
use doc || return 0
python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
}
python_prepare_all() {
# avoid replacing PYTHONPATH in tests.
sed -i -e '/sys\.path/d' test.py || die
# don't use some random SDK on Darwin
sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
setupinfo.py || die
distutils-r1_python_prepare_all
}
python_compile() {
tc-export PKG_CONFIG
distutils-r1_python_compile
}
python_compile_all() {
use doc && emake html
}
python_test() {
local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml
local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
cp -al "${BUILD_DIR}"/{install,test} || die
cp -al src/lxml/tests "${dir}/" || die
cp -al src/lxml/html/tests "${dir}/html/" || die
ln -rs "${S}"/doc "${dir}"/../../ || die
"${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
}
python_install_all() {
if use doc; then
local DOCS=( README.rst *.txt doc/*.txt )
local HTML_DOCS=( doc/html/. )
fi
if use examples; then
dodoc -r samples
fi
distutils-r1_python_install_all
}
pkg_postinst() {
optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4
optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
}

View File

@ -1 +1,2 @@
DIST platformdirs-3.10.0.tar.gz 19203 BLAKE2B 951568733e4c3324d5817b3d9451aa5cc1d08afcce690a574357551f4452192cc98d406c6fc5c7d65d0a1f1d6111cb39a0877994e52021652c8c054add54f258 SHA512 39c068dad3fe6ec85247a8957c0fcfb27207e78041686a0231d836eeb431bba82583e2fcb609903bb0f479cd04e4c7866b6126e52a708e7e71eed7631bd121b0 DIST platformdirs-3.10.0.tar.gz 19203 BLAKE2B 951568733e4c3324d5817b3d9451aa5cc1d08afcce690a574357551f4452192cc98d406c6fc5c7d65d0a1f1d6111cb39a0877994e52021652c8c054add54f258 SHA512 39c068dad3fe6ec85247a8957c0fcfb27207e78041686a0231d836eeb431bba82583e2fcb609903bb0f479cd04e4c7866b6126e52a708e7e71eed7631bd121b0
DIST platformdirs-3.11.0.tar.gz 19914 BLAKE2B bea0cbb3c840441943aaf93b6c88d34ae93cf9a9bea7b00186ffae6f46a820036883cebf996ee998cee9b4b748ab24fcd88d3d318c418e6f70746769bdb8619f SHA512 a273ea8fc5916bdb94da9cc62ccef60a7247b5a019639aae3be9718626ce59d27d8e62c6552c25a3cdd0e7fb7215c32b6c30f2509a3356623f628f771e92bb56

View File

@ -0,0 +1,49 @@
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 pypi
DESCRIPTION="A small Python module for determining appropriate platform-specific dirs"
HOMEPAGE="
https://pypi.org/project/platformdirs/
https://github.com/platformdirs/platformdirs/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
BDEPEND="
test? (
dev-python/appdirs[${PYTHON_USEDEP}]
dev-python/pytest-mock[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "hatchling' pyproject.toml ||
die "Upstream changed build-backend, recheck"
# write a custom pyproject.toml to ease setuptools bootstrap
cat > pyproject.toml <<-EOF || die
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "${PN}"
version = "${PV}"
description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".'
EOF
# sigh
cat > src/platformdirs/version.py <<-EOF || die
__version__ = version = '${PV}'
__version_tuple__ = version_tuple = (${PV//./, })
EOF
}

View File

@ -1,4 +1,5 @@
DIST setuptools-scm-8.0.1.tar.gz 71827 BLAKE2B 4011879490a02f5bb8b4fa0292ee696010cca9cb5c322854f2c342b4c02a86f7a31535c3fe7b4e6eab4fb77c90a469714227c1487ee7e1c1d4de3a4db1137b6b SHA512 05c087cbcb8bf2f03d68cf91e5545c25dea85d61d16c26194ade42a5e78a573f1adc4265897998d4b151834e994b3aa32e02a1eb2fa103a4cd1f3c8e3b78d8d4 DIST setuptools-scm-8.0.1.tar.gz 71827 BLAKE2B 4011879490a02f5bb8b4fa0292ee696010cca9cb5c322854f2c342b4c02a86f7a31535c3fe7b4e6eab4fb77c90a469714227c1487ee7e1c1d4de3a4db1137b6b SHA512 05c087cbcb8bf2f03d68cf91e5545c25dea85d61d16c26194ade42a5e78a573f1adc4265897998d4b151834e994b3aa32e02a1eb2fa103a4cd1f3c8e3b78d8d4
DIST setuptools-scm-8.0.2.tar.gz 72614 BLAKE2B 80dedf269f504a632f6b8c8ceafc28948e359825b926ac851219171db4015856aaebde8c0e8ee81dc807bb1b25010d686a039063922046dc4d72beacf14914c6 SHA512 1a636f452cbe61fc1bc6fca49032e7d12b80fe5d8931f292cfa295d6787fb9273fd7f3887f3f74d60c1da19f4e2f676d038fd860c0410838225cad95e6375f9b DIST setuptools-scm-8.0.2.tar.gz 72614 BLAKE2B 80dedf269f504a632f6b8c8ceafc28948e359825b926ac851219171db4015856aaebde8c0e8ee81dc807bb1b25010d686a039063922046dc4d72beacf14914c6 SHA512 1a636f452cbe61fc1bc6fca49032e7d12b80fe5d8931f292cfa295d6787fb9273fd7f3887f3f74d60c1da19f4e2f676d038fd860c0410838225cad95e6375f9b
DIST setuptools-scm-8.0.3.tar.gz 72824 BLAKE2B f45b3bf67cc259e18fbd3a155d10967cf7c6a9df69d6bff7cc452236da3c3e1d0205ff7f5523c5bfdcbdbf5056e00f06c21dc1178edf14b386a0b89e95c947c1 SHA512 7002da1abdabbf617fb92b94aa04f6fe90aa5cbe26ae7ff8a9df0c53b35e8d13e6294ed38373d081ccafe375b376d52e72d5c7a031dbfb356aa0ee3221641096 DIST setuptools-scm-8.0.3.tar.gz 72824 BLAKE2B f45b3bf67cc259e18fbd3a155d10967cf7c6a9df69d6bff7cc452236da3c3e1d0205ff7f5523c5bfdcbdbf5056e00f06c21dc1178edf14b386a0b89e95c947c1 SHA512 7002da1abdabbf617fb92b94aa04f6fe90aa5cbe26ae7ff8a9df0c53b35e8d13e6294ed38373d081ccafe375b376d52e72d5c7a031dbfb356aa0ee3221641096
DIST setuptools-scm-8.0.4.tar.gz 74280 BLAKE2B 317f4955365b6b7d21ddecc846b0158a72537692b70b5f2092183bd93af119875054d775628659b113dec3bdb94575485b6f1e58760f1580b143dc3b0882cb57 SHA512 1b584f20dfad115f379a97de9e96bb3b36ab00986381748c2f395facd26ce01a6556ccfbabeb8f0cf9ce8720b26ce3a00040dba02cc689701ccf1d31f13277da
DIST setuptools_scm-7.1.0.tar.gz 71904 BLAKE2B be5ae215dadcc290290762b732434258409ecc2d71cdf1332ffe73431effae7cbc33e052a718efd952be79350171ed3e468492fc719bc08750dc23364fb0ee9d SHA512 bd7260672c213db6b8c5842dbb6ac69e69ce040777865c935033971f65d905bd8e6b54e174190a924e452c302e69d4c1de231cbc8f603176ba013a739840dad3 DIST setuptools_scm-7.1.0.tar.gz 71904 BLAKE2B be5ae215dadcc290290762b732434258409ecc2d71cdf1332ffe73431effae7cbc33e052a718efd952be79350171ed3e468492fc719bc08750dc23364fb0ee9d SHA512 bd7260672c213db6b8c5842dbb6ac69e69ce040777865c935033971f65d905bd8e6b54e174190a924e452c302e69d4c1de231cbc8f603176ba013a739840dad3

View File

@ -0,0 +1,64 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
DISTUTILS_USE_PEP517=standalone
PYPI_NO_NORMALIZE=1
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1 pypi
DESCRIPTION="Manage versions by scm tags via setuptools"
HOMEPAGE="
https://github.com/pypa/setuptools_scm/
https://pypi.org/project/setuptools-scm/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
# there's an optional dep on rich for cute logs
RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/setuptools[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
dev-python/tomli[${PYTHON_USEDEP}]
' 3.10)
dev-python/typing-extensions[${PYTHON_USEDEP}]
"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
test? (
dev-vcs/git
!sparc? (
dev-vcs/mercurial
)
)
"
distutils_enable_tests pytest
python_test() {
local EPYTEST_DESELECT=(
# the usual nondescript gpg-agent failure
testing/test_git.py::test_git_getdate_signed_commit
# fetching from the Internet
testing/test_regressions.py::test_pip_download
# calls flake8, unpredictable
testing/test_functions.py::test_dump_version_flake8
)
if has_version dev-python/nose; then
EPYTEST_DESELECT+=(
# https://bugs.gentoo.org/892639
testing/test_integration.py::test_pyproject_support
)
fi
epytest
}

View File

@ -9,3 +9,6 @@ DIST cmake-3.27.0-docs.tar.xz 521348 BLAKE2B 319c84195c37b1944bb5d3fde1aeae75623
DIST cmake-3.27.6-SHA-256.txt 1646 BLAKE2B 402f803dad534d8d053b5b17ba56fb1e61b256e9c1119337a5ef7b23e43c23b592ffcdd5e307ddc0b736b115f8080fde75e4b233d3a7ce42e4e772d8264390a3 SHA512 46c5536d7b8d8b08f97a7352d89df8c12ee9c3b28cd49bd29f91d6136bdb56481f93eb2ceb9c0391dc1284c43f36f384f7b749483b64aebb4f84c6a2cd9077d5 DIST cmake-3.27.6-SHA-256.txt 1646 BLAKE2B 402f803dad534d8d053b5b17ba56fb1e61b256e9c1119337a5ef7b23e43c23b592ffcdd5e307ddc0b736b115f8080fde75e4b233d3a7ce42e4e772d8264390a3 SHA512 46c5536d7b8d8b08f97a7352d89df8c12ee9c3b28cd49bd29f91d6136bdb56481f93eb2ceb9c0391dc1284c43f36f384f7b749483b64aebb4f84c6a2cd9077d5
DIST cmake-3.27.6-SHA-256.txt.asc 833 BLAKE2B e8089ea43f47776b7aec6b57b200c17429bd65a30674cd31868ce04be81ad30bc357f6a3d59748a0366a04e9c4ab844fde3e468025eaab9e9df7d848a96ad290 SHA512 c81b2e51be808cc9cd20a83a2063c721b1dea134f8fdb063ca4b5c6e5b524bd8366c9313b3437374d957cafb629bd4cea7c00ed4e5e23cbef4ad47dfc7f68788 DIST cmake-3.27.6-SHA-256.txt.asc 833 BLAKE2B e8089ea43f47776b7aec6b57b200c17429bd65a30674cd31868ce04be81ad30bc357f6a3d59748a0366a04e9c4ab844fde3e468025eaab9e9df7d848a96ad290 SHA512 c81b2e51be808cc9cd20a83a2063c721b1dea134f8fdb063ca4b5c6e5b524bd8366c9313b3437374d957cafb629bd4cea7c00ed4e5e23cbef4ad47dfc7f68788
DIST cmake-3.27.6.tar.gz 10982239 BLAKE2B 1aa876c0c4601261de30fa7829726f9423f3591ba6bfc17377cb846c025f9dc4d564a020b41dc2e24ba12b163c199803167fefd832cea723acdb6e10b6ac9b23 SHA512 268b5bd84800c37ce0e311cadf13c275a538d612844cc8687107549fe6341a6c3115560e3b9162836843016213d225f62db130bc251bf8aff50c69b9bd58e638 DIST cmake-3.27.6.tar.gz 10982239 BLAKE2B 1aa876c0c4601261de30fa7829726f9423f3591ba6bfc17377cb846c025f9dc4d564a020b41dc2e24ba12b163c199803167fefd832cea723acdb6e10b6ac9b23 SHA512 268b5bd84800c37ce0e311cadf13c275a538d612844cc8687107549fe6341a6c3115560e3b9162836843016213d225f62db130bc251bf8aff50c69b9bd58e638
DIST cmake-3.27.7-SHA-256.txt 1646 BLAKE2B 452413e7d2fe4eb8db96227e6b262bb540c8b58dbf9b34d07ecbc5ade69e76035940c82b643830086e09f113ba08271f271042a8e18b40478959f8f6010b081a SHA512 5f093ed51b10f530318c8b8205ff35f91443a71064008115eecce2f7e8393a3cb3b7dd1c35e5b7b58981c49b19ee708966321085a3237ec313a0865d26948e32
DIST cmake-3.27.7-SHA-256.txt.asc 833 BLAKE2B 687dc73a61abbda26be24dfce98f617e032c3f5494c7e5bd12aa83e3b91f2cf87cd1b08e7cdc5465eef29d005dcc317c3550cf6d447a199e94bf756374b57262 SHA512 cf5a657d739f66daa515b1c49914aabe264bedc24a6e91a18c7959623fac42390b75dc74063587c84b4a365451d5176766d76868279a4db1826eca6b69a44965
DIST cmake-3.27.7.tar.gz 10982558 BLAKE2B a20fac503ba54b4b7e85896056a614b67aa346ad2636e7ab1bf09a2660b92a52754485527f36101e59d47713e7445d27797577c1fa6a8ebe59acb4675227c6da SHA512 2e9b83dee8f8c012be4219ab74ebaa8b8438ea55d5204237a1c9feba94c732afe7baceddb9c681672903112b1e40f7b1a86b284cfceed15f46ce8f90143dbb86

View File

@ -0,0 +1,296 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
# Set to 1 if prebuilt, 0 if not
# (the construct below is to allow overriding from env for script)
: ${CMAKE_DOCS_PREBUILT:=1}
CMAKE_DOCS_PREBUILT_DEV=sam
#CMAKE_DOCS_VERSION=$(ver_cut 1-3)
CMAKE_DOCS_VERSION=3.27.0
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
# See bug #784815
CMAKE_DOCS_USEFLAG="+doc"
# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
# ... but seems fine as of 3.22.3?
# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
CMAKE_MAKEFILE_GENERATOR="emake"
CMAKE_REMOVE_MODULES_LIST=( none )
inherit bash-completion-r1 cmake elisp-common flag-o-matic multiprocessing \
toolchain-funcs virtualx xdg-utils
MY_P="${P/_/-}"
DESCRIPTION="Cross platform Make"
HOMEPAGE="https://cmake.org/"
if [[ ${PV} == 9999 ]] ; then
CMAKE_DOCS_PREBUILT=0
EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
inherit git-r3
else
SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
fi
if [[ ${PV} != *_rc* ]] ; then
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bradking.asc
inherit verify-sig
SRC_URI+=" verify-sig? (
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20230817 )"
fi
fi
[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
IUSE="${CMAKE_DOCS_USEFLAG} dap emacs gui ncurses qt6 test"
RESTRICT="!test? ( test )"
RDEPEND="
>=app-arch/libarchive-3.3.3:=
app-crypt/rhash:0=
>=dev-libs/expat-2.0.1
>=dev-libs/jsoncpp-1.9.2-r2:0=
>=dev-libs/libuv-1.10.0:=
>=net-misc/curl-7.21.5[ssl]
sys-libs/zlib
virtual/pkgconfig
dap? ( dev-cpp/cppdap )
emacs? ( >=app-editors/emacs-23.1:* )
gui? (
!qt6? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
)
qt6? ( dev-qt/qtbase:6[gui,widgets] )
)
ncurses? ( sys-libs/ncurses:= )
"
DEPEND="${RDEPEND}"
BDEPEND+="
doc? (
dev-python/requests
dev-python/sphinx
)
test? ( app-arch/libarchive[zstd] )
"
SITEFILE="50${PN}-gentoo.el"
PATCHES=(
# Prefix
"${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch
# Misc
"${FILESDIR}"/${PN}-3.27.0_rc1-0003-Prefer-pkgconfig-in-FindBLAS.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
"${FILESDIR}"/${PN}-3.27.0_rc1-0006-Filter-out-distcc-warnings-to-avoid-confusing-CMake.patch
# Upstream fixes (can usually be removed with a version bump)
# pkgconf
# fixes https://github.com/pkgconf/pkgconf/issues/317
"${FILESDIR}"/${PN}-3.27.4-0001-FindPkgConfig-ignore-whitespace-separators-in-versio.patch
)
cmake_src_bootstrap() {
# disable running of cmake in bootstrap command
sed -i \
-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
bootstrap || die "sed failed"
# execinfo.h on Solaris isn't quite what it is on Darwin
if [[ ${CHOST} == *-solaris* ]] ; then
sed -i -e 's/execinfo\.h/blablabla.h/' \
Source/kwsys/CMakeLists.txt || die
fi
# bootstrap script isn't exactly /bin/sh compatible
tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
--prefix="${T}/cmakestrap/" \
--parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
|| die "Bootstrap failed"
}
src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then
default
else
cd "${DISTDIR}" || die
# See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
cd "${WORKDIR}" || die
default
fi
}
src_prepare() {
cmake_src_prepare
if [[ ${CHOST} == *-darwin* ]] ; then
# Disable Xcode hooks, bug #652134
sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
Source/CMakeLists.txt || die
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
-e '/cmGlobalXCodeGenerator.h/d' \
Source/cmake.cxx || die
# Disable isysroot usage with GCC, we've properly instructed
# where things are via GCC configuration and ldwrapper
sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
Modules/Platform/Apple-GNU-*.cmake || die
# Disable isysroot usage with clang as well
sed -i -e '/_SYSROOT_FLAG/d' \
Modules/Platform/Apple-Clang.cmake || die
# Don't set a POSIX standard, system headers don't like that, #757426
sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
Source/cmLoadCommandCommand.cxx \
Source/cmStandardLexer.h \
Source/cmSystemTools.cxx \
Source/cmTimestamp.cxx
sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
Source/cmStandardLexer.h
fi
# Add gcc libs to the default link paths
sed -i \
-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
cmake_src_bootstrap
fi
}
src_configure() {
# Fix linking on Solaris
[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
# ODR warnings, bug #858335
# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
filter-lto
local mycmakeargs=(
-DCMAKE_USE_SYSTEM_LIBRARIES=ON
-DCMake_ENABLE_DEBUGGER=$(usex dap)
-DCMAKE_DOC_DIR=/share/doc/${PF}
-DCMAKE_MAN_DIR=/share/man
-DCMAKE_DATA_DIR=/share/${PN}
-DSPHINX_MAN=$(usex doc)
-DSPHINX_HTML=$(usex doc)
-DBUILD_CursesDialog="$(usex ncurses)"
-DBUILD_TESTING=$(usex test)
-DBUILD_QtDialog=$(usex gui)
)
use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=$(usex qt6 6 5) )
cmake_src_configure
}
src_compile() {
cmake_src_compile
use emacs && elisp-compile Auxiliary/cmake-mode.el
}
src_test() {
# Fix OutDir and SelectLibraryConfigurations tests
# these are altered thanks to our eclass
sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
|| die
pushd "${BUILD_DIR}" > /dev/null || die
# Excluded tests:
# BootstrapTest: we actualy bootstrap it every time so why test it.
# BundleUtilities: bundle creation broken
# CMakeOnly.AllFindModules: pthread issues
# CTest.updatecvs: which fails to commit as root
# Fortran: requires fortran
# RunCMake.CompilerLauncher: also requires fortran
# RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
# debugedit binary is not in the expected location
# RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
# it can't find a deb package that owns libc
# TestUpload, which requires network access
# RunCMake.CMP0125, known failure reported upstream (bug #829414)
local myctestargs=(
--output-on-failure
-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
)
virtx cmake_src_test
}
src_install() {
cmake_src_install
# If USE=doc, there'll be newly generated docs which we install instead.
if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
fi
if use emacs; then
elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
fi
insinto /usr/share/vim/vimfiles/syntax
doins Auxiliary/vim/syntax/cmake.vim
insinto /usr/share/vim/vimfiles/indent
doins Auxiliary/vim/indent/cmake.vim
insinto /usr/share/vim/vimfiles/ftdetect
doins "${FILESDIR}/${PN}.vim"
dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
}
pkg_postinst() {
use emacs && elisp-site-regen
if use gui; then
xdg_icon_cache_update
xdg_desktop_database_update
xdg_mimeinfo_database_update
fi
}
pkg_postrm() {
use emacs && elisp-site-regen
if use gui; then
xdg_icon_cache_update
xdg_desktop_database_update
xdg_mimeinfo_database_update
fi
}

View File

@ -0,0 +1,39 @@
From 5f96e35b873d6230970fd63ba2e706bbd3f4e26f Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Fri, 8 Sep 2023 16:54:48 -0400
Subject: [PATCH 1/7] python dependency: ensure that setuptools doesn't inject
itself into distutils
We do not use setuptools for anything, and only lightly use distutils.
Unpredictable issues can occur due to setuptools monkey-patching, which
interferes with our intended use. Tell setuptools to simply never get
involved.
Note: while it's otherwise possible to check if the probe is run using
sys.executable and avoid forking, setuptools unconditionally injects
itself at startup in a way that requires subprocess isolation to
disable.
(cherry picked from commit 9f610ad5b72ea91de2d7aeb6f3266d0a7477062e)
---
mesonbuild/dependencies/python.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/mesonbuild/dependencies/python.py b/mesonbuild/dependencies/python.py
index 160772888..f04494674 100644
--- a/mesonbuild/dependencies/python.py
+++ b/mesonbuild/dependencies/python.py
@@ -113,7 +113,9 @@ class BasicPythonExternalProgram(ExternalProgram):
with importlib.resources.path('mesonbuild.scripts', 'python_info.py') as f:
cmd = self.get_command() + [str(f)]
- p, stdout, stderr = mesonlib.Popen_safe(cmd)
+ env = os.environ.copy()
+ env['SETUPTOOLS_USE_DISTUTILS'] = 'stdlib'
+ p, stdout, stderr = mesonlib.Popen_safe(cmd, env=env)
try:
info = json.loads(stdout)
--
2.42.0

View File

@ -0,0 +1,72 @@
From cb4e62a8c55118988babac8b8254e0af1dc9698b Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz@archlinux.org>
Date: Mon, 21 Nov 2022 20:47:14 -0500
Subject: [PATCH 2/7] python module: stop using distutils schemes on
sufficiently new Debian
Since 3.10.3, Debian finally started patching sysconfig with custom
paths, instead of just distutils. This means we can now go use that
instead. It reduces our reliance on the deprecated distutils module.
Partial fix for #7702
(cherry picked from commit 40f897fa92f7d3cc43788d3000733310ce77cf0c)
---
mesonbuild/scripts/python_info.py | 32 +++++++++++++++++++++++--------
1 file changed, 24 insertions(+), 8 deletions(-)
diff --git a/mesonbuild/scripts/python_info.py b/mesonbuild/scripts/python_info.py
index 9c3a0791a..65597b121 100755
--- a/mesonbuild/scripts/python_info.py
+++ b/mesonbuild/scripts/python_info.py
@@ -13,7 +13,6 @@ if sys.path[0].endswith('scripts'):
del sys.path[0]
import json, os, sysconfig
-import distutils.command.install
def get_distutils_paths(scheme=None, prefix=None):
import distutils.dist
@@ -37,15 +36,32 @@ def get_distutils_paths(scheme=None, prefix=None):
# default scheme to a custom one pointing to /usr/local and replacing
# site-packages with dist-packages.
# See https://github.com/mesonbuild/meson/issues/8739.
-# XXX: We should be using sysconfig, but Debian only patches distutils.
+#
+# We should be using sysconfig, but before 3.10.3, Debian only patches distutils.
+# So we may end up falling back.
-if 'deb_system' in distutils.command.install.INSTALL_SCHEMES:
- paths = get_distutils_paths(scheme='deb_system')
- install_paths = get_distutils_paths(scheme='deb_system', prefix='')
-else:
- paths = sysconfig.get_paths()
+def get_install_paths():
+ if sys.version_info >= (3, 10):
+ scheme = sysconfig.get_default_scheme()
+ else:
+ scheme = sysconfig._get_default_scheme()
+
+ if sys.version_info >= (3, 10, 3):
+ if 'deb_system' in sysconfig.get_scheme_names():
+ scheme = 'deb_system'
+ else:
+ import distutils.command.install
+ if 'deb_system' in distutils.command.install.INSTALL_SCHEMES:
+ paths = get_distutils_paths(scheme='deb_system')
+ install_paths = get_distutils_paths(scheme='deb_system', prefix='')
+ return paths, install_paths
+
+ paths = sysconfig.get_paths(scheme=scheme)
empty_vars = {'base': '', 'platbase': '', 'installed_base': ''}
- install_paths = sysconfig.get_paths(vars=empty_vars)
+ install_paths = sysconfig.get_paths(scheme=scheme, vars=empty_vars)
+ return paths, install_paths
+
+paths, install_paths = get_install_paths()
def links_against_libpython():
from distutils.core import Distribution, Extension
--
2.42.0

View File

@ -0,0 +1,36 @@
From c179c18765514d5c37737dec996b4c91cb31477f Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Mon, 2 Oct 2023 16:40:15 -0400
Subject: [PATCH 3/7] python module: refactor pypy detection into a consistent
variable
(cherry picked from commit 3d3a10ef022284c8377bd9f8e1b1adec73c50d95)
---
mesonbuild/scripts/python_info.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/mesonbuild/scripts/python_info.py b/mesonbuild/scripts/python_info.py
index 65597b121..d17b3a376 100755
--- a/mesonbuild/scripts/python_info.py
+++ b/mesonbuild/scripts/python_info.py
@@ -72,6 +72,8 @@ def links_against_libpython():
variables = sysconfig.get_config_vars()
variables.update({'base_prefix': getattr(sys, 'base_prefix', sys.prefix)})
+is_pypy = '__pypy__' in sys.builtin_module_names
+
if sys.version_info < (3, 0):
suffix = variables.get('SO')
elif sys.version_info < (3, 8, 7):
@@ -88,7 +90,7 @@ print(json.dumps({
'install_paths': install_paths,
'version': sysconfig.get_python_version(),
'platform': sysconfig.get_platform(),
- 'is_pypy': '__pypy__' in sys.builtin_module_names,
+ 'is_pypy': is_pypy,
'is_venv': sys.prefix != variables['base_prefix'],
'link_libpython': links_against_libpython(),
'suffix': suffix,
--
2.42.0

View File

@ -0,0 +1,72 @@
From 3c493dae4bd8410bfb09e8f654605f65e15d8e66 Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz@archlinux.org>
Date: Tue, 22 Nov 2022 22:56:10 -0500
Subject: [PATCH 4/7] python module: stop using distutils "link to libpython"
probe on recent python
On python >=3.8, this information is expected to be encoded in the
sysconfig vars.
In distutils, it is always necessary to link to libpython on Windows;
for posix platforms, it depends on the value of LIBPYTHON (which is the
library to link to, possibly the empty string) as generated by
configure.ac and embedded into python.pc and python-config.sh, and then
coded a second time in the distutils python sources.
There are a couple of caveats which have ramifications for Cygwin and
Android:
- python.pc and python-config.sh disagree with distutils when python is
not built shared. In that case, the former act the same as a shared
build, while the latter *never* links to libpython
- python.pc disagrees with python-config.sh and distutils when python is
built shared. The former never links to libpython, while the latter do
The disagreement is resolved in favor of distutils' behavior in all
cases, and python.pc is correct for our purposes on python 3.12; see:
https://github.com/python/cpython/pull/100356
https://github.com/python/cpython/pull/100967
Although it was not backported to older releases, Cygwin at least has
always patched in a fix for python.pc, which behavior is now declared
canonical. We can reliably assume it is always correct.
This is the other half of the fix for #7702
(cherry picked from commit 2d6c10908b3771216e7ce086af1ee4dc77e698c2)
---
mesonbuild/scripts/python_info.py | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/scripts/python_info.py b/mesonbuild/scripts/python_info.py
index d17b3a376..a3f3d3535 100755
--- a/mesonbuild/scripts/python_info.py
+++ b/mesonbuild/scripts/python_info.py
@@ -64,10 +64,19 @@ def get_install_paths():
paths, install_paths = get_install_paths()
def links_against_libpython():
- from distutils.core import Distribution, Extension
- cmd = Distribution().get_command_obj('build_ext')
- cmd.ensure_finalized()
- return bool(cmd.get_libraries(Extension('dummy', [])))
+ # on versions supporting python-embed.pc, this is the non-embed lib
+ #
+ # PyPy is not yet up to 3.12 and work is still pending to export the
+ # relevant information (it doesn't automatically provide arbitrary
+ # Makefile vars)
+ if sys.version_info >= (3, 8) and not is_pypy:
+ variables = sysconfig.get_config_vars()
+ return bool(variables.get('LIBPYTHON', 'yes'))
+ else:
+ from distutils.core import Distribution, Extension
+ cmd = Distribution().get_command_obj('build_ext')
+ cmd.ensure_finalized()
+ return bool(cmd.get_libraries(Extension('dummy', [])))
variables = sysconfig.get_config_vars()
variables.update({'base_prefix': getattr(sys, 'base_prefix', sys.prefix)})
--
2.42.0

View File

@ -0,0 +1,31 @@
From ae44d9a379faca6274db819be44ffca3e0159f56 Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Mon, 2 Oct 2023 23:51:57 -0400
Subject: [PATCH 5/7] tests: fix test case to not import distutils on python
3.12
Testing the correctness of the `modules: ` kwarg can be done with other
guaranteed stdlib modules that are even more guaranteed since they
didn't get deprecated for removal.
(cherry picked from commit ecf261330c498783760cbde00b613b7469f8d3c0)
---
test cases/python/5 modules kwarg/meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/test cases/python/5 modules kwarg/meson.build b/test cases/python/5 modules kwarg/meson.build
index 9751adaab..41a9a4fae 100644
--- a/test cases/python/5 modules kwarg/meson.build
+++ b/test cases/python/5 modules kwarg/meson.build
@@ -1,7 +1,7 @@
project('python kwarg')
py = import('python')
-prog_python = py.find_installation('python3', modules : ['distutils'])
+prog_python = py.find_installation('python3', modules : ['os', 'sys', 're'])
assert(prog_python.found() == true, 'python not found when should be')
prog_python = py.find_installation('python3', modules : ['thisbetternotexistmod'], required : false)
assert(prog_python.found() == false, 'python not found but reported as found')
--
2.42.0

View File

@ -0,0 +1,25 @@
From d9abf4a97dc182b3c57204a792000d620f9f941e Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Tue, 3 Oct 2023 00:22:25 -0400
Subject: [PATCH 6/7] mark the PyPI metadata as supporting python 3.12
meson itself runs okay on 3.12, and the last issue for *probing* against
3.12 is solved. Tests pass here locally.
(cherry picked from commit 880f21281ee359e01de659fe7d45549d19e6b84d)
---
setup.cfg | 1 +
1 file changed, 1 insertion(+)
diff --git a/setup.cfg b/setup.cfg
index dfaba76dd..2f2962eed 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -30,6 +30,7 @@ classifiers =
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
+ Programming Language :: Python :: 3.12
Topic :: Software Development :: Build Tools
long_description = Meson is a cross-platform build system designed to be both as fast and as user friendly as possible. It supports many languages and compilers, including GCC, Clang, PGI, Intel, and Visual Studio. Its build definitions are written in a simple non-Turing complete DSL.

View File

@ -0,0 +1,141 @@
From 9d1d4ae746ce39d1916dfe71fd6dcc5fce27e828 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Tue, 3 Oct 2023 16:52:56 +0100
Subject: [PATCH 7/7] Revert "rust: apply global, project, and environment C
args to bindgen"
This reverts commit 36210f64f22dc10d324db76bb1a7988c9cd5b14e.
This ended up not doing what was intended - see https://github.com/mesonbuild/meson/issues/12065#issuecomment-1742263677.
Bug: https://bugs.gentoo.org/914989
Bug: https://bugs.gentoo.org/915014
Signed-off-by: Sam James <sam@gentoo.org>
---
mesonbuild/modules/rust.py | 6 ------
test cases/rust/12 bindgen/meson.build | 18 ------------------
.../rust/12 bindgen/src/global-project.h | 10 ----------
test cases/rust/12 bindgen/src/global.c | 5 -----
test cases/rust/12 bindgen/src/global.rs | 14 --------------
test cases/rust/12 bindgen/test.json | 5 +----
6 files changed, 1 insertion(+), 57 deletions(-)
delete mode 100644 test cases/rust/12 bindgen/src/global-project.h
delete mode 100644 test cases/rust/12 bindgen/src/global.c
delete mode 100644 test cases/rust/12 bindgen/src/global.rs
diff --git a/mesonbuild/modules/rust.py b/mesonbuild/modules/rust.py
index e6e5c633f..3514412e6 100644
--- a/mesonbuild/modules/rust.py
+++ b/mesonbuild/modules/rust.py
@@ -232,12 +232,6 @@ class RustModule(ExtensionModule):
elif isinstance(s, CustomTarget):
depends.append(s)
- clang_args.extend(state.global_args.get('c', []))
- clang_args.extend(state.project_args.get('c', []))
- cargs = state.get_option('args', state.subproject, lang='c')
- assert isinstance(cargs, list), 'for mypy'
- clang_args.extend(cargs)
-
if self._bindgen_bin is None:
self._bindgen_bin = state.find_program('bindgen')
diff --git a/test cases/rust/12 bindgen/meson.build b/test cases/rust/12 bindgen/meson.build
index e7cb5f3db..c05cc0631 100644
--- a/test cases/rust/12 bindgen/meson.build
+++ b/test cases/rust/12 bindgen/meson.build
@@ -8,9 +8,6 @@ if not prog_bindgen.found()
error('MESON_SKIP_TEST bindgen not found')
endif
-add_project_arguments('-DPROJECT_ARG', language : 'c')
-add_global_arguments('-DGLOBAL_ARG', language : 'c')
-
# This seems to happen on windows when libclang.dll is not in path or is not
# valid. We must try to process a header file for this to work.
#
@@ -84,18 +81,3 @@ test('generated header', rust_bin2)
subdir('sub')
subdir('dependencies')
-
-gp = rust.bindgen(
- input : 'src/global-project.h',
- output : 'global-project.rs',
-)
-
-gp_lib = static_library('gp_lib', 'src/global.c')
-
-gp_exe = executable(
- 'gp_exe',
- structured_sources(['src/global.rs', gp]),
- link_with : gp_lib,
-)
-
-test('global and project arguments', gp_exe)
diff --git a/test cases/rust/12 bindgen/src/global-project.h b/test cases/rust/12 bindgen/src/global-project.h
deleted file mode 100644
index 6084e8ed6..000000000
--- a/test cases/rust/12 bindgen/src/global-project.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef GLOBAL_ARG
-char * success(void);
-#endif
-#ifndef PROJECT_ARG
-char * success(void);
-#endif
-#ifndef CMD_ARG
-char * success(void);
-#endif
-int success(void);
diff --git a/test cases/rust/12 bindgen/src/global.c b/test cases/rust/12 bindgen/src/global.c
deleted file mode 100644
index 10f6676f7..000000000
--- a/test cases/rust/12 bindgen/src/global.c
+++ /dev/null
@@ -1,5 +0,0 @@
-#include "src/global-project.h"
-
-int success(void) {
- return 0;
-}
diff --git a/test cases/rust/12 bindgen/src/global.rs b/test cases/rust/12 bindgen/src/global.rs
deleted file mode 100644
index 4b70b1ecc..000000000
--- a/test cases/rust/12 bindgen/src/global.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-// SPDX-license-identifer: Apache-2.0
-// Copyright © 2023 Intel Corporation
-
-#![allow(non_upper_case_globals)]
-#![allow(non_camel_case_types)]
-#![allow(non_snake_case)]
-
-include!("global-project.rs");
-
-fn main() {
- unsafe {
- std::process::exit(success());
- };
-}
diff --git a/test cases/rust/12 bindgen/test.json b/test cases/rust/12 bindgen/test.json
index b3a758562..f94ee85f9 100644
--- a/test cases/rust/12 bindgen/test.json
+++ b/test cases/rust/12 bindgen/test.json
@@ -1,10 +1,7 @@
{
- "env": {
- "CFLAGS": "-DCMD_ARG"
- },
"stdout": [
{
- "line": "test cases/rust/12 bindgen/meson.build:30: WARNING: Project targets '>= 0.63' but uses feature introduced in '1.0.0': \"rust.bindgen\" keyword argument \"include_directories\" of type array[str]."
+ "line": "test cases/rust/12 bindgen/meson.build:27: WARNING: Project targets '>= 0.63' but uses feature introduced in '1.0.0': \"rust.bindgen\" keyword argument \"include_directories\" of type array[str]."
}
]
}
--
2.42.0

View File

@ -0,0 +1,122 @@
# Copyright 2016-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} pypy3 )
DISTUTILS_USE_PEP517=setuptools
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="https://github.com/mesonbuild/meson"
inherit git-r3
else
inherit pypi
MY_P=${P/_/}
S=${WORKDIR}/${MY_P}
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
fi
inherit bash-completion-r1 distutils-r1 toolchain-funcs
DESCRIPTION="Open source build system"
HOMEPAGE="https://mesonbuild.com/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="
test? (
dev-libs/glib:2
dev-libs/gobject-introspection
dev-util/ninja
dev-vcs/git
sys-libs/zlib[static-libs(+)]
virtual/pkgconfig
)
"
RDEPEND="
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}"/${PN}-1.2.1-python-path.patch
"${FILESDIR}"/1.2.2
)
python_prepare_all() {
local disable_unittests=(
# ASAN and sandbox both want control over LD_PRELOAD
# https://bugs.gentoo.org/673016
-e 's/test_generate_gir_with_address_sanitizer/_&/'
# ASAN is unsupported on some targets
# https://bugs.gentoo.org/692822
-e 's/test_pch_with_address_sanitizer/_&/'
# https://github.com/mesonbuild/meson/issues/7203
-e 's/test_templates/_&/'
# Broken due to python2 wrapper
-e 's/test_python_module/_&/'
)
sed -i "${disable_unittests[@]}" unittests/*.py || die
# Broken due to python2 script created by python_wrapper_setup
rm -r "test cases/frameworks/1 boost" || die
distutils-r1_python_prepare_all
}
src_test() {
tc-export PKG_CONFIG
if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then
ewarn "Found Qt5Core but not Qt5Gui; skipping tests"
else
distutils-r1_src_test
fi
}
python_test() {
(
# test_meson_installed
unset PYTHONDONTWRITEBYTECODE
# https://bugs.gentoo.org/687792
unset PKG_CONFIG
# test_cross_file_system_paths
unset XDG_DATA_HOME
# 'test cases/unit/73 summary' expects 80 columns
export COLUMNS=80
# If JAVA_HOME is not set, meson looks for javac in PATH.
# If javac is in /usr/bin, meson assumes /usr/include is a valid
# JDK include path. Setting JAVA_HOME works around this broken
# autodetection. If no JDK is installed, we should end up with an empty
# value in JAVA_HOME, and the tests should get skipped.
export JAVA_HOME=$(java-config -O 2>/dev/null)
# Call python3 instead of EPYTHON to satisfy test_meson_uninstalled.
python3 run_tests.py
) || die "Testing failed with ${EPYTHON}"
}
python_install_all() {
distutils-r1_python_install_all
insinto /usr/share/vim/vimfiles
doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax}
insinto /usr/share/zsh/site-functions
doins data/shell-completions/zsh/_meson
dobashcomp data/shell-completions/bash/meson
}

View File

@ -61,6 +61,7 @@ _setup-allowed-flags() {
-mindirect-branch-register -mindirect-branch-register
'-mfunction-return=*' '-mfunction-return=*'
-mretpoline -mretpoline
'-mbranch-protection=*'
# Misc # Misc
-fno-unit-at-a-time -fno-strict-overflow -fno-unit-at-a-time -fno-strict-overflow
@ -95,6 +96,7 @@ _setup-allowed-flags() {
'-fno-stack-protector*' '-fabi-version=*' '-fno-stack-protector*' '-fabi-version=*'
-fno-strict-aliasing -fno-bounds-check -fno-bounds-checking -fstrict-overflow -fno-strict-aliasing -fno-bounds-check -fno-bounds-checking -fstrict-overflow
-fno-omit-frame-pointer '-fno-builtin*' -fno-omit-frame-pointer '-fno-builtin*'
-mno-omit-leaf-frame-pointer
) )
ALLOWED_FLAGS+=( ALLOWED_FLAGS+=(
'-mregparm=*' -mno-app-regs -mapp-regs -mno-mmx -mno-sse '-mregparm=*' -mno-app-regs -mapp-regs -mno-mmx -mno-sse
@ -132,6 +134,12 @@ _setup-allowed-flags() {
# binaries: bug #677852 # binaries: bug #677852
-mstackrealign -mstackrealign
) )
ALLOWED_FLAGS+=(
# Clang-only
'--unwindlib=*'
'--rtlib=*'
'--stdlib=*'
)
} }
# @FUNCTION: _filter-hardened # @FUNCTION: _filter-hardened

View File

@ -1,2 +1,4 @@
DIST c-ares-1.19.1.tar.gz 1579100 BLAKE2B 4b6c9593edb1a91ab76d54ddacb1cd5d67006d5e628ea1f3289f54e9360be32abeb5d8fc7d23e193feab3e7928e8efde82757eb12fe217dc92ed0d9132bedf5d SHA512 466a94efda626e815a6ef7a890637056339f883d549ea6055e289fd8cd2391130e5682c905c0fb3bd7e955af7f6deb793562c170eb0ee066a4a62085a82ba470 DIST c-ares-1.19.1.tar.gz 1579100 BLAKE2B 4b6c9593edb1a91ab76d54ddacb1cd5d67006d5e628ea1f3289f54e9360be32abeb5d8fc7d23e193feab3e7928e8efde82757eb12fe217dc92ed0d9132bedf5d SHA512 466a94efda626e815a6ef7a890637056339f883d549ea6055e289fd8cd2391130e5682c905c0fb3bd7e955af7f6deb793562c170eb0ee066a4a62085a82ba470
DIST c-ares-1.19.1.tar.gz.asc 488 BLAKE2B 9c47d7b3e67d9a2bd1e332912d21d20ca591fc34f81707c18a4615ea14ba2da00146d1998250a5f4dd2a0b1c04f9bd2013d4940ac734674c0bdff6815985e19d SHA512 1b204ab1a667af1326be4b7c62c0919aacd447a2e00efea4b8ef2ec9f2b13ffb236a836ff8953b0b3359727faf3fb8cfcd71d0b06a0e533a09f9e9ea66024f4e DIST c-ares-1.19.1.tar.gz.asc 488 BLAKE2B 9c47d7b3e67d9a2bd1e332912d21d20ca591fc34f81707c18a4615ea14ba2da00146d1998250a5f4dd2a0b1c04f9bd2013d4940ac734674c0bdff6815985e19d SHA512 1b204ab1a667af1326be4b7c62c0919aacd447a2e00efea4b8ef2ec9f2b13ffb236a836ff8953b0b3359727faf3fb8cfcd71d0b06a0e533a09f9e9ea66024f4e
DIST c-ares-1.20.1.tar.gz 1599175 BLAKE2B 44d160e04dcbd78f0ad7c1f2eb3f34ff07017fd9b5c4bc12b81b123022297adccfff45f43630f8c73afdfd9424ff6ee9fb96c627405ec486c8d78bb0c7e518ca SHA512 83400fb276ebcf16dfe6f43d56ca87839d132b5a0544420eda9fa148eb85468b3f215593fcefc2a7a3a8ed8b0d4ef093ed99616a4e466b01f6913934240539e4
DIST c-ares-1.20.1.tar.gz.asc 488 BLAKE2B 5a6a9e60dd3fb675cafbbf60c7b6c75b385786d1171afa9b1effcdf0187dbd044c93f6a0e87f685b5fdf2992892fdd760e2dc3246c196d011c157fc88bbb5ab4 SHA512 f0622f6df863c599028f20462fb6f5604f30243f51f382c8430abe2afbf3583cb6ffe527f0a38e646700d753d90fa9a2a4d197a7540b2fc9bed1d779fe3b43df

View File

@ -13,7 +13,8 @@ SRC_URI="
verify-sig? ( https://c-ares.org/download/${P}.tar.gz.asc ) verify-sig? ( https://c-ares.org/download/${P}.tar.gz.asc )
" "
LICENSE="MIT" # ISC for lib/{bitncmp.c,inet_ntop.c,inet_net_pton.c} (bug #912405)
LICENSE="MIT ISC"
# Subslot = SONAME of libcares.so.2 # Subslot = SONAME of libcares.so.2
SLOT="0/2" SLOT="0/2"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"

View File

@ -0,0 +1,87 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/danielstenberg.asc
inherit edo multilib-minimal verify-sig
DESCRIPTION="C library that resolves names asynchronously"
HOMEPAGE="https://c-ares.org/"
SRC_URI="
https://c-ares.org/download/${P}.tar.gz
verify-sig? ( https://c-ares.org/download/${P}.tar.gz.asc )
"
# ISC for lib/{bitncmp.c,inet_ntop.c,inet_net_pton.c} (bug #912405)
LICENSE="MIT ISC"
# Subslot = SONAME of libcares.so.2
SLOT="0/2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="static-libs test"
RESTRICT="!test? ( test )"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-danielstenberg )"
DOCS=( AUTHORS CHANGES NEWS README.md RELEASE-NOTES TODO )
MULTILIB_WRAPPED_HEADERS=(
/usr/include/ares_build.h
)
QA_CONFIG_IMPL_DECL_SKIP=(
# Checking for obsolete headers
malloc
calloc
free
# Non-existent on Linux
closesocket
CloseSocket
ioctlsocket
bitncmp
)
multilib_src_configure() {
local myeconfargs=(
--enable-nonblocking
--enable-symbol-hiding
$(use_enable static-libs static)
$(use_enable test tests)
)
# Needed for running unit tests only
# Violates sandbox and tests pass fine without
export ax_cv_uts_namespace=no
export ax_cv_user_namespace=no
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_test() {
cd "${BUILD_DIR}"/test || die
# We're skipping the "real" network tests with the filter
# see https://github.com/c-ares/c-ares/tree/main/test
local network_tests=(
# Most live tests have Live in the name
*Live*
# These don't but are still in ares-test-live.cc => live
*GetTCPSock*
*TimeoutValue*
*GetSock*
*GetSock_virtualized*
*VerifySocketFunctionCallback*
# Seems flaky, even run manually?
*MockUDPMaxQueriesTest.GetHostByNameParallelLookups*
)
# The format for disabling test1, test2, and test3 looks like:
# -test1:test2:test3
edo ./arestest --gtest_filter=-$(echo $(IFS=:; echo "${network_tests[*]}"))
}
multilib_src_install_all() {
einstalldocs
find "${ED}" -name "*.la" -delete || die
}

View File

@ -0,0 +1,143 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools bash-completion-r1 linux-info pam python-single-r1
DESCRIPTION="Tools for Managing Linux CIFS Client Filesystems"
HOMEPAGE="https://wiki.samba.org/index.php/LinuxCIFS_utils https://git.samba.org/cifs-utils.git/?p=cifs-utils.git"
SRC_URI="https://ftp.samba.org/pub/linux-cifs/${PN}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
IUSE="+acl +ads +caps creds pam +python systemd"
RDEPEND="
ads? (
sys-apps/keyutils:=
sys-libs/talloc
virtual/krb5
)
caps? ( sys-libs/libcap-ng )
creds? ( sys-apps/keyutils:= )
pam? (
sys-apps/keyutils:=
sys-libs/pam
)
python? ( ${PYTHON_DEPS} )
"
DEPEND="${RDEPEND}"
BDEPEND="dev-python/docutils"
PDEPEND="
acl? ( >=net-fs/samba-4.0.0_alpha1 )
"
REQUIRED_USE="
acl? ( ads )
python? ( ${PYTHON_REQUIRED_USE} )
"
DOCS="doc/linux-cifs-client-guide.odt"
PATCHES=(
"${FILESDIR}/${PN}-6.12-ln_in_destdir.patch" #766594
"${FILESDIR}/${PN}-6.15-musl.patch"
"${FILESDIR}/${PN}-7.0-no-clobber-fortify-source.patch"
)
pkg_setup() {
linux-info_pkg_setup
if ! linux_config_exists || ! linux_chkconfig_present CIFS; then
ewarn "You must enable CIFS support in your kernel config, "
ewarn "to be able to mount samba shares. You can find it at"
ewarn
ewarn " File systems"
ewarn " Network File Systems"
ewarn " CIFS support"
ewarn
ewarn "and recompile your kernel ..."
fi
use python && python-single-r1_pkg_setup
}
src_prepare() {
default
if has_version app-crypt/heimdal ; then
# https://bugs.gentoo.org/612584
eapply "${FILESDIR}/${PN}-6.7-heimdal.patch"
fi
eautoreconf
}
src_configure() {
local myeconfargs=(
--enable-man
--enable-smbinfo
$(use_enable acl cifsacl cifsidmap)
$(use_enable ads cifsupcall)
$(use_with caps libcap)
$(use_enable creds cifscreds)
$(use_enable pam)
$(use_with pam pamdir $(getpam_mod_dir))
$(use_enable python pythontools)
# mount.cifs can get passwords from systemd
$(use_enable systemd)
)
ROOTSBINDIR="${EPREFIX}"/sbin \
econf "${myeconfargs[@]}"
}
src_install() {
default
# remove empty directories
find "${ED}" -type d -empty -delete || die
if use acl ; then
dodir /etc/cifs-utils
dosym ../../usr/$(get_libdir)/cifs-utils/idmapwb.so \
/etc/cifs-utils/idmap-plugin
dodir /etc/request-key.d
echo 'create cifs.idmap * * /usr/sbin/cifs.idmap %k' \
> "${ED}/etc/request-key.d/cifs.idmap.conf"
fi
if use ads ; then
dodir /etc/request-key.d
echo 'create dns_resolver * * /usr/sbin/cifs.upcall %k' \
> "${ED}/etc/request-key.d/cifs.upcall.conf"
echo 'create cifs.spnego * * /usr/sbin/cifs.upcall %k' \
> "${ED}/etc/request-key.d/cifs.spnego.conf"
fi
dobashcomp bash-completion/smbinfo
use python && python_fix_shebang "${ED}"
}
pkg_postinst() {
# Inform about set-user-ID bit of mount.cifs
ewarn "setuid use flag was dropped due to multiple security implications"
ewarn "such as CVE-2009-2948, CVE-2011-3585 and CVE-2012-1586"
ewarn "You are free to set setuid flags by yourself"
# Inform about upcall usage
if use acl ; then
einfo "The cifs.idmap utility has been enabled by creating the"
einfo "configuration file /etc/request-key.d/cifs.idmap.conf"
einfo "This enables you to get and set CIFS acls."
fi
if use ads ; then
einfo "The cifs.upcall utility has been enabled by creating the"
einfo "configuration file /etc/request-key.d/cifs.upcall.conf"
einfo "This enables you to mount DFS shares."
fi
}

View File

@ -0,0 +1,11 @@
Don't clobber toolchain defaults.
https://bugs.gentoo.org/890278
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-AM_CFLAGS = -Wall -Wextra -D_FORTIFY_SOURCE=2 $(PIE_CFLAGS) $(RELRO_CFLAGS)
+AM_CFLAGS = -Wall -Wextra $(PIE_CFLAGS) $(RELRO_CFLAGS)
ACLOCAL_AMFLAGS = -I aclocal
root_sbindir = $(ROOTSBINDIR)

View File

@ -17,7 +17,7 @@ else
#SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" #SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
#S="${WORKDIR}"/${PN} #S="${WORKDIR}"/${PN}
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux"
fi fi
LICENSE="GPL-2" LICENSE="GPL-2"

View File

@ -65,7 +65,7 @@ dev-lang/ruby -jit
# Sam James <sam@gentoo.org> (2023-04-03) # Sam James <sam@gentoo.org> (2023-04-03)
# pytables is available here. # pytables is available here.
dev-python/pytables -cpudetection dev-python/tables -cpudetection
# Craig Andrews <candrews@gentoo.org> (2023-03-09) # Craig Andrews <candrews@gentoo.org> (2023-03-09)
# media-libs/libplacebo is keyworded here # media-libs/libplacebo is keyworded here
@ -221,13 +221,6 @@ sci-physics/root -cudnn
mail-client/thunderbird -eme-free mail-client/thunderbird -eme-free
www-client/firefox -eme-free www-client/firefox -eme-free
# Andreas Sturmlechner <asturm@gentoo.org> (2020-02-26)
# Vulkan is available on amd64.
dev-qt/qt3d -vulkan
dev-qt/qtdeclarative -vulkan
dev-qt/qtgui -vulkan
dev-qt/qtwayland -vulkan
# James Le Cuirot <chewi@gentoo.org> (2019-12-10) # James Le Cuirot <chewi@gentoo.org> (2019-12-10)
# The JIT feature only works on amd64 and x86. # The JIT feature only works on amd64 and x86.
app-emulation/aranym -jit app-emulation/aranym -jit

View File

@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Maciej Barć <xgqt@gentoo.org> (2023-10-07)
# Requires net-libs/nodejs which is unavailable on amd64/x32.
app-containers/devcontainer
# Kai-Chun Ning <kaichun.ning@gmail.com> (2022-05-26) # Kai-Chun Ning <kaichun.ning@gmail.com> (2022-05-26)
# intel-hybrid-codec-driver does not work on x32 # intel-hybrid-codec-driver does not work on x32
media-libs/intel-hybrid-codec-driver media-libs/intel-hybrid-codec-driver

View File

@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Jon Janzen <jon@jonjanzen.com> (2023-09-11) # Jon Janzen <jon@jonjanzen.com> (2023-09-11)
# librttopo has not been tested on this arch # librttopo has not been tested on this arch
dev-db/spatialite rttopo dev-db/spatialite rttopo

View File

@ -4,6 +4,10 @@
# Unmask the flag which corresponds to ARCH. # Unmask the flag which corresponds to ARCH.
-arm64 -arm64
# Mart Raudsepp <leio@gentoo.org> (2023-10-03)
# dev-util/sysprof-capture is keyworded on arm64
-sysprof
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2023-07-11) # Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2023-07-11)
# Unmask secureboot flag on arches where sbsigntools is keyworded # Unmask secureboot flag on arches where sbsigntools is keyworded
-secureboot -secureboot

View File

@ -4,6 +4,10 @@
# This file requires eapi 5 or later. New entries go on top. # This file requires eapi 5 or later. New entries go on top.
# Please use the same syntax as in use.mask # Please use the same syntax as in use.mask
# Mart Raudsepp <leio@gentoo.org> (2023-10-03)
# dev-util/sysprof-capture and dev-util/sysprof are not stable yet
sysprof
# Ionen Wolkens <ionen@gentoo.org> (2022-02-17) # Ionen Wolkens <ionen@gentoo.org> (2022-02-17)
# x11-drivers/nvidia-drivers is not stable yet # x11-drivers/nvidia-drivers is not stable yet
video_cards_nvidia video_cards_nvidia

View File

@ -36,7 +36,7 @@ kde-plasma/discover snap
# Sam James <sam@gentoo.org> (2023-04-03) # Sam James <sam@gentoo.org> (2023-04-03)
# Needs dev-python/py-cpuinfo which is not ported to all of our platforms # Needs dev-python/py-cpuinfo which is not ported to all of our platforms
# See bug #894078. # See bug #894078.
dev-python/pytables cpudetection dev-python/tables cpudetection
# Michał Górny <mgorny@gentoo.org> (2023-01-24) # Michał Górny <mgorny@gentoo.org> (2023-01-24)
# libomptarget is only supported on 64-bit architectures. # libomptarget is only supported on 64-bit architectures.
@ -196,14 +196,6 @@ app-text/texlive-core xindy
# https://sourceware.org/glibc/wiki/PortStatus # https://sourceware.org/glibc/wiki/PortStatus
sys-libs/glibc static-pie sys-libs/glibc static-pie
# Andreas Sturmlechner <asturm@gentoo.org> (2020-02-26)
# Vulkan support is only available on few selected arches atm.
# Mask everywhere, unmask where appropriate.
dev-qt/qt3d vulkan
dev-qt/qtdeclarative vulkan
dev-qt/qtgui vulkan
dev-qt/qtwayland vulkan
# dev-python/pandas is only keyworded for amd64 & x86 # dev-python/pandas is only keyworded for amd64 & x86
sys-block/fio python gnuplot sys-block/fio python gnuplot

View File

@ -4,6 +4,17 @@
# NOTE: When masking a USE flag due to missing keywords, please file a keyword # NOTE: When masking a USE flag due to missing keywords, please file a keyword
# request bug for the hppa arch. # request bug for the hppa arch.
# Andreas Sturmlechner <asturm@gentoo.org> (2023-10-08)
# Vulkan is not available on hppa.
dev-qt/qtdeclarative vulkan
dev-qt/qtgui vulkan
<dev-qt/qtwayland-5.15.11:5 vulkan
>=dev-qt/qtwayland-5.15.11:5 compositor
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Sam James <sam@gentoo.org> (2023-09-24) # Sam James <sam@gentoo.org> (2023-09-24)
# Qt not keyworded here. # Qt not keyworded here.
app-doc/doxygen gui app-doc/doxygen gui

View File

@ -17,6 +17,11 @@
#--- END OF EXAMPLES --- #--- END OF EXAMPLES ---
# Sam James <sam@gentoo.org> (2023-06-18)
# Qt 5 not stable here
app-text/ansifilter gui
app-text/highlight gui
# Sam James <sam@gentoo.org> (2023-07-02) # Sam James <sam@gentoo.org> (2023-07-02)
# Unlikely that anybody wants to use net-nds/openldap on hppa & often has # Unlikely that anybody wants to use net-nds/openldap on hppa & often has
# platform-specific bugs. # platform-specific bugs.
@ -176,7 +181,6 @@ media-libs/libsdl2 fcitx4
# Rolf Eike Beer <eike@sf-mail.de> (2020-06-10) # Rolf Eike Beer <eike@sf-mail.de> (2020-06-10)
# not stable dev-vcs/mercurial because of broken dependencies: bug #727390 # not stable dev-vcs/mercurial because of broken dependencies: bug #727390
app-portage/layman mercurial
dev-python/setuptools-scm test dev-python/setuptools-scm test
# Rolf Eike Beer <eike@sf-mail.de> (2020-04-24) # Rolf Eike Beer <eike@sf-mail.de> (2020-04-24)

View File

@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Sam James <sam@gentoo.org> (2023-09-24) # Sam James <sam@gentoo.org> (2023-09-24)
# Qt not keyworded here. # Qt not keyworded here.
app-doc/doxygen gui app-doc/doxygen gui

View File

@ -1,2 +1,9 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2023-10-08)
# dev-db/mysql not keyworded here
dev-perl/DBD-mysql -mysql mariadb
# LoongArch systems boot with EFI # LoongArch systems boot with EFI
sys-boot/grub:2 grub_platforms_efi-64 sys-boot/grub:2 grub_platforms_efi-64

View File

@ -1,6 +1,18 @@
# Copyright 2022-2023 Gentoo Authors # Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2023-10-08)
# dev-db/mysql not keyworded here
dev-perl/DBD-mysql mysql
# Patrick Lauer <patrick@gentoo.org> (2023-10-05)
# JIT / llvm support needs too old llvm
dev-db/postgresql llvm
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# WANG Xuerui <xen0n@gentoo.org> (2023-09-29) # WANG Xuerui <xen0n@gentoo.org> (2023-09-29)
# no luajit for now # no luajit for now
media-gfx/gimp lua media-gfx/gimp lua
@ -18,13 +30,6 @@ dev-util/librnp man
# dev-cpp/cpp-httplib is keyworded here. # dev-cpp/cpp-httplib is keyworded here.
sys-devel/llvm -debuginfod sys-devel/llvm -debuginfod
# WANG Xuerui <xen0n@gentoo.org> (2023-09-12)
# Vulkan is available on loong.
dev-qt/qt3d -vulkan
dev-qt/qtdeclarative -vulkan
dev-qt/qtgui -vulkan
dev-qt/qtwayland -vulkan
# WANG Xuerui <xen0n@gentoo.org> (2023-09-10) # WANG Xuerui <xen0n@gentoo.org> (2023-09-10)
# Revdeps of dev-python/ujson which is masked. # Revdeps of dev-python/ujson which is masked.
dev-python/cattrs test dev-python/cattrs test
@ -126,10 +131,6 @@ dev-python/qtconsole test
# dev-qt/qtwebengine:5 isn't available on loong. # dev-qt/qtwebengine:5 isn't available on loong.
dev-python/QtPy webengine dev-python/QtPy webengine
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# app-arch/p7zip fails one test
kde-apps/kdeutils-meta 7zip
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05) # WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# <dev-cpp/tbb-2021 fails to build on loong w/ gcc-13 # <dev-cpp/tbb-2021 fails to build on loong w/ gcc-13
sci-libs/spqr tbb sci-libs/spqr tbb

View File

@ -203,10 +203,6 @@ media-video/mplayer ladspa
# app-xemacs/ruby-modes is not keyworded on this arch # app-xemacs/ruby-modes is not keyworded on this arch
dev-lang/ruby xemacs dev-lang/ruby xemacs
# Sebastian Pipping <sping@gentoo.org> (2010-01-27)
# dev-vcs/darcs is not keyworded on this arch
app-portage/layman darcs
# deps missing keywords # deps missing keywords
games-strategy/freeciv auth games-strategy/freeciv auth

View File

@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Georgy Yakovlev <gyakovlev@gentoo.org (2023-09-21) # Georgy Yakovlev <gyakovlev@gentoo.org (2023-09-21)
# dtrace/systemtap not availabie on ppc platform for jdk # dtrace/systemtap not availabie on ppc platform for jdk
# configure: ERROR: Unavailable JVM features explicitly enabled for 'server': 'dtrace' # configure: ERROR: Unavailable JVM features explicitly enabled for 'server': 'dtrace'
@ -104,10 +108,6 @@ net-libs/webkit-gtk avif
# criu is masked on big-endian ppc* # criu is masked on big-endian ppc*
app-containers/crun criu app-containers/crun criu
# Sergei Trofimovich <slyfox@gentoo.org> (2020-08-07)
# dev-vcs/darcs is not keyworded on ppc/ppc64
app-portage/layman darcs
# Sergei Trofimovich <slyfox@gentoo.org> (2018-03-27) # Sergei Trofimovich <slyfox@gentoo.org> (2018-03-27)
# dev-ruby/capybara depends on www-client/firefox which has no keywords # dev-ruby/capybara depends on www-client/firefox which has no keywords
dev-ruby/capybara test dev-ruby/capybara test

View File

@ -0,0 +1,6 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2023-10-08)
# dev-db/mysql not keyworded here
>=dev-perl/DBD-mysql-5 -mysql mariadb

View File

@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2023-10-08)
# dev-db/mysql not keyworded/stable here
dev-perl/DBD-mysql mysql
# Sam James <sam@gentoo.org> (2023-09-22) # Sam James <sam@gentoo.org> (2023-09-22)
# Qt 6 not keyworded here. # Qt 6 not keyworded here.
dev-util/cmake gui dev-util/cmake gui

View File

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
CHOST="powerpc64le-unknown-linux-gnu" CHOST="powerpc64le-unknown-linux-gnu"
@ -9,3 +9,6 @@ FCFLAGS="${CFLAGS}"
CHOST_ppc64="powerpc64le-unknown-linux-gnu" CHOST_ppc64="powerpc64le-unknown-linux-gnu"
CHOST_ppc="powerpcle-unknown-linux-gnu" CHOST_ppc="powerpcle-unknown-linux-gnu"
LDFLAGS_ppc64="-m elf64lppc"
# TODO: elf32lppc or elf32lppclinux?
#LDFLAGS_ppc="-m elf32lppc"

View File

@ -51,9 +51,6 @@ mail-client/thunderbird clang
# Georgy Yakovlev <gyakovlev@gentoo.org> (2020-02-26) # Georgy Yakovlev <gyakovlev@gentoo.org> (2020-02-26)
# vulkan tested and works on ppc64le # vulkan tested and works on ppc64le
dev-qt/qtdeclarative -vulkan
dev-qt/qtgui -vulkan
dev-qt/qtwayland -vulkan
media-libs/mesa -vulkan -vulkan-overlay media-libs/mesa -vulkan -vulkan-overlay
media-video/mpv -libplacebo -vulkan media-video/mpv -libplacebo -vulkan
media-video/vlc -libplacebo media-video/vlc -libplacebo

View File

@ -1,6 +1,10 @@
# Copyright 2019-2023 Gentoo Authors # Copyright 2019-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Sam James <sam@gentoo.org> (2023-09-22) # Sam James <sam@gentoo.org> (2023-09-22)
# Qt 6 not keyworded here. # Qt 6 not keyworded here.
dev-util/cmake gui dev-util/cmake gui
@ -139,8 +143,6 @@ dev-python/wcmatch doc
# Alex Fan <alex.fan.q@gmail.com> (2022-05-16) # Alex Fan <alex.fan.q@gmail.com> (2022-05-16)
# These depend on Haskell: # These depend on Haskell:
# - dev-vcs/darcs
app-portage/layman darcs
# - app-text/pandoc # - app-text/pandoc
sys-cluster/ceph pmdk sys-cluster/ceph pmdk
app-text/nuspell doc app-text/nuspell doc

View File

@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Sam James <sam@gentoo.org> (2023-09-24) # Sam James <sam@gentoo.org> (2023-09-24)
# Qt not keyworded here. # Qt not keyworded here.
app-doc/doxygen gui app-doc/doxygen gui
@ -156,9 +160,6 @@ dev-vcs/subversion ruby
# Mikle Kolyada <zlogene@gentoo.org> (2018-06-03) # Mikle Kolyada <zlogene@gentoo.org> (2018-06-03)
# Not tested # Not tested
dev-python/cssselect doc dev-python/cssselect doc
# not really interested in supporting alternative
# VCS for overlays yet. Layman needs SVN for tests too.
app-portage/layman darcs mercurial test
dev-python/setuptools-scm test dev-python/setuptools-scm test
# no lua support for vim # no lua support for vim
app-editors/vim lua app-editors/vim lua
@ -178,10 +179,6 @@ dev-libs/libpcre2 jit
# Not tested # Not tested
net-mail/dovecot lz4 net-mail/dovecot lz4
# Sergey Popov <pinkbyte@gentoo.org> (2015-02-18)
# Not tested
app-portage/layman g-sorcery
# Mikle Kolyada <zlogene@gentoo.org> (2014-01-11) # Mikle Kolyada <zlogene@gentoo.org> (2014-01-11)
# too much unkeyworded dependencies (bug #497068) # too much unkeyworded dependencies (bug #497068)
dev-vcs/git mediawiki dev-vcs/git mediawiki

View File

@ -1,6 +1,17 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Andreas Sturmlechner <asturm@gentoo.org> (2023-10-08)
# Vulkan is not available on sparc.
dev-qt/qtdeclarative vulkan
dev-qt/qtgui vulkan
<dev-qt/qtwayland-5.15.11:5 vulkan
>=dev-qt/qtwayland-5.15.11:5 compositor
# Patrick McLean <chutzpah@gentoo.org> (2023-10-03)
# sys-apps/s6-linux-init has not been tested on this arch
sys-apps/openrc s6
# Sam James <sam@gentoo.org> (2023-09-22) # Sam James <sam@gentoo.org> (2023-09-22)
# Qt 6 not keyworded here. # Qt 6 not keyworded here.
dev-util/cmake gui dev-util/cmake gui
@ -333,10 +344,6 @@ x11-themes/qtcurve plasma
# dependencies not keyworded # dependencies not keyworded
dev-python/stevedore doc dev-python/stevedore doc
# Rolf Eike Beer <eike@sf-mail.de> (2020-04-06)
# ghc does not build, which is needed for darcs, bug #711944
app-portage/layman darcs
# Rolf Eike Beer <eike@sf-mail.de> (2020-04-06) # Rolf Eike Beer <eike@sf-mail.de> (2020-04-06)
# grub pc is not supported on sparc # grub pc is not supported on sparc
sys-boot/grub:2 grub_platforms_pc grub_platforms_efi-32 grub_platforms_efi-64 grub_platforms_xen grub_platforms_xen-pvh sys-boot/grub:2 grub_platforms_pc grub_platforms_efi-32 grub_platforms_efi-64 grub_platforms_xen grub_platforms_xen-pvh

View File

@ -231,13 +231,6 @@ sys-libs/glibc -static-pie
mail-client/thunderbird -eme-free mail-client/thunderbird -eme-free
www-client/firefox -eme-free www-client/firefox -eme-free
# Andreas Sturmlechner <asturm@gentoo.org> (2020-02-26)
# Vulkan is available on x86.
dev-qt/qt3d -vulkan
dev-qt/qtdeclarative -vulkan
dev-qt/qtgui -vulkan
dev-qt/qtwayland -vulkan
# Georgy Yakovlev <gyakovlev@gentoo.org (2020-01-04) # Georgy Yakovlev <gyakovlev@gentoo.org (2020-01-04)
# zfs is not keyworded on x86 # zfs is not keyworded on x86
dev-util/schroot zfs dev-util/schroot zfs

View File

@ -204,10 +204,6 @@ dev-util/rpmdevtools emacs
# Requires dev-lang/julia stabilisation, bug #613576 # Requires dev-lang/julia stabilisation, bug #613576
kde-apps/cantor julia kde-apps/cantor julia
# Brian Dolbec <dolsen@gentoo.org> (2017-02-14)
# This is stable masked as g-sorcery is being not actively developed.
app-portage/layman g-sorcery
# Alon Bar-Lev <alonbl@gentoo.org> (2017-01-01) # Alon Bar-Lev <alonbl@gentoo.org> (2017-01-01)
# Will always require unstable packages. # Will always require unstable packages.
net-libs/gnutls test-full net-libs/gnutls test-full

View File

@ -64,7 +64,6 @@ dev-util/rr
# Sam James <sam@gentoo.org> (2022-10-04) # Sam James <sam@gentoo.org> (2022-10-04)
# Packages with dubious sys-libs/glibc dependencies (non-binary) but # Packages with dubious sys-libs/glibc dependencies (non-binary) but
# masking for now to allow musl profiles to graduate from exp->dev. # masking for now to allow musl profiles to graduate from exp->dev.
dev-db/pgbouncer
dev-libs/cgreen dev-libs/cgreen
media-sound/xwax media-sound/xwax
net-analyzer/gsad net-analyzer/gsad
@ -90,10 +89,6 @@ app-admin/clustershell
app-shells/pdsh app-shells/pdsh
net-analyzer/ipcad net-analyzer/ipcad
# Sam James <sam@gentoo.org> (2022-09-17)
# Fails to compile on musl: bug #832868
sys-apps/uutils-coreutils
# Sam James <sam@gentoo.org> (2022-09-12) # Sam James <sam@gentoo.org> (2022-09-12)
# libxcrypt migration masks. # libxcrypt migration masks.
# 1. The libxcrypt migration is optional for musl, so unmask -virtual/libcrypt:0/1. # 1. The libxcrypt migration is optional for musl, so unmask -virtual/libcrypt:0/1.

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Brian Dolbec <dolsen@gentoo.org> (2014-09-17) # Brian Dolbec <dolsen@gentoo.org> (2014-09-17)
@ -7,6 +7,5 @@ sys-apps/portage python_targets_pypy3
app-portage/elicense python_targets_pypy3 app-portage/elicense python_targets_pypy3
app-portage/elogv python_targets_pypy3 app-portage/elogv python_targets_pypy3
app-portage/gentoolkit python_targets_pypy3 app-portage/gentoolkit python_targets_pypy3
app-portage/layman python_targets_pypy3
app-portage/smart-live-rebuild python_targets_pypy3 app-portage/smart-live-rebuild python_targets_pypy3
app-portage/gentoopm python_targets_pypy3 app-portage/gentoopm python_targets_pypy3

View File

@ -33,6 +33,74 @@
#--- END OF EXAMPLES --- #--- END OF EXAMPLES ---
# David Seifert <soap@gentoo.org> (2023-10-08)
# Upstream long gone, unmaintained, EAPI 6, only Gentoo still packages
# this. Removal on 2023-11-07. Bug #905187.
app-misc/dvorakng
# David Seifert <soap@gentoo.org> (2023-10-08)
# Unmaintained, EAPI 6, tons of patches we have to carry, last release
# 20 years ago, all major distros have removed this.
# Removal on 2023-11-07. Bug #602382.
app-backup/flexbackup
# David Seifert <soap@gentoo.org> (2023-10-08)
# Unmaintained, last release over 23 years(!) ago, multiple QA issues,
# no other major distro carries this anymore. Removal on 2023-11-07.
# Bug #425872, #452982, #520968, #605450, #878621, #905945.
app-admin/qpage
# David Seifert <soap@gentoo.org> (2023-10-08)
# Upstream gone, kept on life support by Debian, most distros don't
# carry this anymore, Transmeta CPUs are long obsolete at this point.
# Removal on 2023-11-07. Bug #541694, #905186.
app-admin/longrun
# David Seifert <soap@gentoo.org> (2023-10-08)
# Unmaintained, typical broken suckless build system, no upstream
# activity, only Fedora still carries it.
# Removal on 2023-11-06. Bug #732422, #914638.
x11-misc/sselp
# David Seifert <soap@gentoo.org> (2023-10-08)
# Unmaintained, last release over 5 years ago, lots of QA issues, no
# other distro carries this.
# Removal on 2023-11-06. Bug #742782, #742809, #771858, #811393,
# #898314, #898322, #898324, #898326.
dev-libs/libtubo
x11-libs/librfm
x11-misc/rodent
# Hans de Graaff <graaff@gentoo.org> (2023-10-07)
# Unresolved security issues since two years, bug #792336. Original
# upstream inactive since 2019. Substitute upstream inactive since
# 2020. No reverse dependencies. Masked for removal on 2023-11-07.
sys-fs/dmg2img
# Sam James <sam@gentoo.org> (2023-10-06)
# Breaks building scipy: https://github.com/cython/cython/issues/5748
=dev-python/cython-3.0.3
# Volkmar W. Pogatzki <gentoo@pogatzki.net> (2023-10-04)
# Incompatible with newer media-video/ffmpeg, bug #914499.
# Deps appenh and loadlib not used by anything else.
# Removal on 2023-11-04.
media-video/jubler
dev-java/appenh
dev-java/loadlib
# Mart Raudsepp <leio@gentoo.org> (2023-10-04)
# GStreamer plugin removed upstream. The database used by this music fingerprint
# plugin has been defunct for a while. Removal on 2023-11-04. Bug #915189.
media-plugins/gst-plugins-ofa
# Michał Górny <mgorny@gentoo.org> (2023-10-04)
# The project was abandoned upstream. The test suite is broken
# with python3.12. It was used only as an optional test dep
# for dev-python/Arpeggio.
# Removal on 2023-11-03. Bug #915162.
dev-python/memory-profiler
# Michał Górny <mgorny@gentoo.org> (2023-09-29) # Michał Górny <mgorny@gentoo.org> (2023-09-29)
# The project is no longer maintained upstream. We haven't handled # The project is no longer maintained upstream. We haven't handled
# the version bump from a year ago yet. No reverse dependencies. # the version bump from a year ago yet. No reverse dependencies.
@ -183,11 +251,6 @@ dev-ruby/mail:2.7
<dev-libs/openssl-3 <dev-libs/openssl-3
<app-crypt/xca-2.4.0_p20230526 <app-crypt/xca-2.4.0_p20230526
# Conrad Kostecki <conikost@gentoo.org> (2023-09-09)
# Release causes problems, upstream degrated to RC back.
# See #913884 for more information
=net-wireless/unifi-7.5.174-r1
# David Seifert <soap@gentoo.org> (2023-09-09) # David Seifert <soap@gentoo.org> (2023-09-09)
# EOL upstream in 2 months, causes major headaches for OpenSSL 1.1 # EOL upstream in 2 months, causes major headaches for OpenSSL 1.1
# masking. Removal on 2023-10-09. # masking. Removal on 2023-10-09.
@ -228,54 +291,6 @@ app-crypt/tpm2-tss-engine
# Removal on 2023-10-03. # Removal on 2023-10-03.
dev-erlang/protobuffs dev-erlang/protobuffs
# Sam James <sam@gentoo.org> (2023-08-30)
# Used to be a dependency of dev-python/qiskit-terra but is now being phased
# out. Fails to build with modern setuptools and >= Python 3.11. No upstream
# activity.
# Removal on 2023-09-29. Bug #911840, bug #896900.
dev-python/tweedledum
# Hans de Graaff <graaff@gentoo.org> (2023-08-29)
# Obsolete slots that are no longer used by any sinatra version. Use the
# newer slot instead. Masked for removal on 2023-09-29.
dev-ruby/mustermann:1
dev-ruby/mustermann:2
# Olivier Laurantin <olivier.laurantin@laposte.net> (2023-08-29)
# Masked for removal on 2023-10-01
# net-wireless/blueberry will never work with recent gnome-bluetooth versions
# and is the only package requiring net-wireless/gnome-bluetooth:2
net-wireless/blueberry
net-wireless/gnome-bluetooth:2
# Hans de Graaff <graaff@gentoo.org> (2023-08-29)
# Use the newer slot instead. Masked for removal on 2023-09-29.
dev-ruby/twitter:7
# Sam James <sam@gentoo.org> (2023-08-29)
# Obsolete as of September 2021 when legacy Tor hidden services stopped
# working. Now fails to build with latest protobuf too. No upstream activity
# since 2017. Alternatives (unvetted) are 'cwtch' and 'ricochet-refreshed' but
# neither are packaged.
# Removal on 2023-09-28. Bug #830477, bug #913004.
net-im/ricochet
# Sam James <sam@gentoo.org> (2023-08-29)
# Fails to build with new protobuf. Deprecated by upstream which recommend
# sci-biology/kallisto as a replacement.
# Removal on 2023-09-28. Bug #912828.
sci-biology/express
# Michał Górny <mgorny@gentoo.org> (2023-08-28)
# A shim that is no longer needed. No reverse dependencies.
# Removal on 2023-09-27. Bug #906516.
dev-python/pytz_deprecation_shim
# Jonas Stein <jstein@gentoo.org> (2023-08-17)
# Upstream warns that it is broken and there is no fix since 2010
# Removal after 2023-10-01. Bug #912363.
app-dicts/edictionary
# Sam James <sam@gentoo.org> (2023-08-04) # Sam James <sam@gentoo.org> (2023-08-04)
# Stricter behavior which causes some packages to fail, see bug #911721. # Stricter behavior which causes some packages to fail, see bug #911721.
=dev-util/pkgconf-2.0.0 =dev-util/pkgconf-2.0.0
@ -319,7 +334,6 @@ app-dicts/edictionary
# Matt Turner <mattst88@gentoo.org> (2023-07-06) # Matt Turner <mattst88@gentoo.org> (2023-07-06)
# GNOME 45 mask # GNOME 45 mask
>=app-editors/ghex-45_alpha >=app-editors/ghex-45_alpha
>=app-misc/gnote-45_alpha
>=gnome-extra/gnome-logs-45_alpha >=gnome-extra/gnome-logs-45_alpha
>=net-misc/gnome-remote-desktop-45_alpha >=net-misc/gnome-remote-desktop-45_alpha
>=x11-libs/pango-1.51.0 >=x11-libs/pango-1.51.0
@ -539,10 +553,6 @@ sys-devel/automake:1.11
# is resolved. Bug #791259. # is resolved. Bug #791259.
>=media-libs/libopenaptx-0.2.1 >=media-libs/libopenaptx-0.2.1
# Ulrich Müller <ulm@gentoo.org> (2021-04-20)
# Version 3.15 is broken with Emacs 27.2.
=app-emacs/mic-paren-3.15-r0
# Sam James <sam@gentoo.org> (2021-03-30) # Sam James <sam@gentoo.org> (2021-03-30)
# Seems to break dev-tex/culmus-latex # Seems to break dev-tex/culmus-latex
# Masking until we can investigate & fix # Masking until we can investigate & fix

View File

@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors # Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
USE="colord eds evo gnome gnome-keyring gnome-online-accounts gstreamer introspection keyring nautilus networkmanager pulseaudio sysprof tracker wayland" USE="colord eds evo gnome gnome-keyring gnome-online-accounts gnome-shell gstreamer introspection keyring nautilus networkmanager pulseaudio sysprof tracker wayland"

View File

@ -18,3 +18,4 @@ move dev-libs/paho-mqtt-c net-libs/paho-mqtt-c
move dev-lisp/ecls dev-lisp/ecl move dev-lisp/ecls dev-lisp/ecl
move sys-devel/ct-ng sys-devel/crosstool-ng move sys-devel/ct-ng sys-devel/crosstool-ng
move dev-python/stack_data dev-python/stack-data move dev-python/stack_data dev-python/stack-data
move dev-python/pytables dev-python/tables

View File

@ -1,3 +1,5 @@
DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f
DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6
DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d
DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6
DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d

View File

@ -0,0 +1,141 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="${SELINUX_GIT_REPO:-https://anongit.gentoo.org/git/proj/hardened-refpolicy.git}"
EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}"
EGIT_CHECKOUT_DIR="${WORKDIR}/refpolicy"
inherit git-r3
else
SRC_URI="https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_${PV/./_}/refpolicy-${PV}.tar.bz2
https://dev.gentoo.org/~perfinion/patches/${PN}/patchbundle-${PN}-${PVR}.tar.bz2"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
fi
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:SELinux"
DESCRIPTION="SELinux policy for core modules"
IUSE="systemd +unconfined"
PDEPEND="unconfined? ( sec-policy/selinux-unconfined )"
DEPEND="=sec-policy/selinux-base-${PVR}[systemd?]"
RDEPEND="${DEPEND}"
BDEPEND="
sys-apps/checkpolicy
sys-devel/m4"
MODS="application authlogin bootloader clock consoletype cron dmesg fstools getty hostname init iptables libraries locallogin logging lvm miscfiles modutils mount mta netutils nscd portage raid rsync selinuxutil setrans ssh staff storage su sysadm sysnetwork systemd tmpfiles udev userdomain usermanage unprivuser xdg"
DEL_MODS="hotplug"
LICENSE="GPL-2"
SLOT="0"
S="${WORKDIR}/"
# Code entirely copied from selinux-eclass (cannot inherit due to dependency on
# itself), when reworked reinclude it. Only postinstall (where -b base.pp is
# added) needs to remain then.
pkg_pretend() {
for i in ${POLICY_TYPES}; do
if [[ "${i}" == "targeted" ]] && ! use unconfined; then
die "If you use POLICY_TYPES=targeted, then USE=unconfined is mandatory."
fi
done
}
src_prepare() {
local modfiles
if [[ ${PV} != 9999* ]]; then
einfo "Applying SELinux policy updates ... "
eapply -p0 "${WORKDIR}/0001-full-patch-against-stable-release.patch"
fi
eapply_user
# Collect only those files needed for this particular module
for i in ${MODS}; do
modfiles="$(find "${S}"/refpolicy/policy/modules -iname $i.te) $modfiles"
modfiles="$(find "${S}"/refpolicy/policy/modules -iname $i.fc) $modfiles"
done
for i in ${DEL_MODS}; do
[[ "${MODS}" != *${i}* ]] || die "Duplicate module in MODS and DEL_MODS: ${i}"
done
for i in ${POLICY_TYPES}; do
mkdir "${S}"/${i} || die "Failed to create directory ${S}/${i}"
cp "${S}"/refpolicy/doc/Makefile.example "${S}"/${i}/Makefile \
|| die "Failed to copy Makefile.example to ${S}/${i}/Makefile"
cp ${modfiles} "${S}"/${i} \
|| die "Failed to copy the module files to ${S}/${i}"
done
}
src_compile() {
for i in ${POLICY_TYPES}; do
emake NAME=$i SHAREDIR="${SYSROOT%/}/usr/share/selinux" -C "${S}"/${i}
done
}
src_install() {
local BASEDIR="/usr/share/selinux"
for i in ${POLICY_TYPES}; do
for j in ${MODS}; do
einfo "Installing ${i} ${j} policy package"
insinto ${BASEDIR}/${i}
doins "${S}"/${i}/${j}.pp
done
done
}
pkg_postinst() {
# Set root path and don't load policy into the kernel when cross compiling
local root_opts=""
if [[ "${ROOT}" != "" ]]; then
root_opts="-p ${ROOT} -n"
fi
# Override the command from the eclass, we need to load in base as well here
local COMMAND="-i base.pp"
if has_version "<sys-apps/policycoreutils-2.5"; then
COMMAND="-b base.pp"
fi
for i in ${MODS}; do
COMMAND="${COMMAND} -i ${i}.pp"
done
for i in ${POLICY_TYPES}; do
einfo "Inserting the following modules, with base, into the $i module store: ${MODS}"
cd "${ROOT}/usr/share/selinux/${i}"
semodule ${root_opts} -s ${i} ${COMMAND}
for mod in ${DEL_MODS}; do
if semodule ${root_opts} -s ${i} -l | grep -q "\b${mod}\b"; then
einfo "Removing obsolete ${i} ${mod} policy package"
semodule ${root_opts} -s ${i} -r ${mod}
fi
done
done
# Don't relabel when cross compiling
if [[ "${ROOT}" == "" ]]; then
# Relabel depending packages
local PKGSET="";
if [[ -x /usr/bin/qdepends ]] ; then
PKGSET=$(/usr/bin/qdepends -Cq -r -Q ${CATEGORY}/${PN} | grep -v 'sec-policy/selinux-');
elif [[ -x /usr/bin/equery ]] ; then
PKGSET=$(/usr/bin/equery -Cq depends ${CATEGORY}/${PN} | grep -v 'sec-policy/selinux-');
fi
if [[ -n "${PKGSET}" ]] ; then
rlpkg ${PKGSET};
fi
fi
}

View File

@ -1,3 +1,5 @@
DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f
DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6
DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d
DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6
DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d

View File

@ -0,0 +1,158 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="xml(+)"
inherit python-any-r1
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="${SELINUX_GIT_REPO:-https://anongit.gentoo.org/git/proj/hardened-refpolicy.git}"
EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}"
EGIT_CHECKOUT_DIR="${WORKDIR}/refpolicy"
inherit git-r3
else
SRC_URI="https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_${PV/./_}/refpolicy-${PV}.tar.bz2
https://dev.gentoo.org/~perfinion/patches/selinux-base-policy/patchbundle-selinux-base-policy-${PVR}.tar.bz2"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
fi
IUSE="doc +unknown-perms systemd +ubac +unconfined"
DESCRIPTION="Gentoo base policy for SELinux"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:SELinux"
LICENSE="GPL-2"
SLOT="0"
RDEPEND=">=sys-apps/policycoreutils-2.8"
DEPEND="${RDEPEND}"
BDEPEND="
${PYTHON_DEPS}
>=sys-apps/checkpolicy-2.8
sys-devel/m4"
S=${WORKDIR}/
src_prepare() {
if [[ ${PV} != 9999* ]]; then
einfo "Applying SELinux policy updates ... "
eapply -p0 "${WORKDIR}/0001-full-patch-against-stable-release.patch"
fi
eapply_user
cd "${S}/refpolicy" || die
emake bare
}
src_configure() {
[ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs"
# Update the SELinux refpolicy capabilities based on the users' USE flags.
if use unknown-perms; then
sed -i -e '/^UNK_PERMS/s/deny/allow/' "${S}/refpolicy/build.conf" \
|| die "Failed to allow Unknown Permissions Handling"
sed -i -e '/^UNK_PERMS/s/deny/allow/' "${S}/refpolicy/Makefile" \
|| die "Failed to allow Unknown Permissions Handling"
fi
if ! use ubac; then
sed -i -e '/^UBAC/s/y/n/' "${S}/refpolicy/build.conf" \
|| die "Failed to disable User Based Access Control"
fi
if use systemd; then
sed -i -e '/^SYSTEMD/s/n/y/' "${S}/refpolicy/build.conf" \
|| die "Failed to enable SystemD"
fi
echo "DISTRO = gentoo" >> "${S}/refpolicy/build.conf" || die
# Prepare initial configuration
cd "${S}/refpolicy" || die
emake conf
# Setup the policies based on the types delivered by the end user.
# These types can be "targeted", "strict", "mcs" and "mls".
for i in ${POLICY_TYPES}; do
cp -a "${S}/refpolicy" "${S}/${i}" || die
cd "${S}/${i}" || die
sed -i -e "/= module/d" "${S}/${i}/policy/modules.conf" || die
sed -i -e '/^QUIET/s/n/y/' -e "/^NAME/s/refpolicy/$i/" \
"${S}/${i}/build.conf" || die "build.conf setup failed."
if [[ "${i}" == "mls" ]] || [[ "${i}" == "mcs" ]];
then
# MCS/MLS require additional settings
sed -i -e "/^TYPE/s/standard/${i}/" "${S}/${i}/build.conf" \
|| die "failed to set type to mls"
fi
if [ "${i}" == "targeted" ]; then
sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \
"${S}/${i}/config/appconfig-standard/seusers" \
|| die "targeted seusers setup failed."
fi
if [ "${i}" != "targeted" ] && [ "${i}" != "strict" ] && use unconfined; then
sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \
"${S}/${i}/config/appconfig-${i}/seusers" \
|| die "policy seusers setup failed."
fi
done
}
src_compile() {
[ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs"
for i in ${POLICY_TYPES}; do
cd "${S}/${i}" || die
emake base
if use doc; then
emake html
fi
done
}
src_install() {
[ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs"
for i in ${POLICY_TYPES}; do
cd "${S}/${i}" || die
emake DESTDIR="${D}" install
emake DESTDIR="${D}" install-headers
echo "run_init_t" > "${D}/etc/selinux/${i}/contexts/run_init_type" || die
echo "textrel_shlib_t" >> "${D}/etc/selinux/${i}/contexts/customizable_types" || die
# libsemanage won't make this on its own
keepdir "/etc/selinux/${i}/policy"
if use doc; then
docinto ${i}/html
dodoc -r doc/html/*;
fi
insinto /usr/share/selinux/devel;
doins doc/policy.xml;
done
docinto /
dodoc doc/Makefile.example doc/example.{te,fc,if}
doman man/man8/*.8;
insinto /etc/selinux
doins "${FILESDIR}/config"
insinto /usr/share/portage/config/sets
doins "${FILESDIR}/selinux.conf"
}

View File

@ -1,3 +1,5 @@
DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f
DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6
DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d
DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6
DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d

View File

@ -0,0 +1,15 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
IUSE=""
MODS="container"
inherit selinux-policy-2
DESCRIPTION="SELinux policy for container"
if [[ ${PV} != 9999* ]] ; then
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
fi

View File

@ -1,3 +1,5 @@
DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f
DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6
DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d
DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6
DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d

View File

@ -0,0 +1,15 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
IUSE=""
MODS="dbus"
inherit selinux-policy-2
DESCRIPTION="SELinux policy for dbus"
if [[ ${PV} != 9999* ]] ; then
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
fi

View File

@ -1,3 +1,5 @@
DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f
DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6
DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d
DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6
DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d

View File

@ -0,0 +1,15 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
IUSE=""
MODS="sssd"
inherit selinux-policy-2
DESCRIPTION="SELinux policy for sssd"
if [[ ${PV} != 9999* ]] ; then
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
fi

View File

@ -1,3 +1,5 @@
DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f
DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6
DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d
DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6
DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d

View File

@ -0,0 +1,15 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
IUSE=""
MODS="unconfined"
inherit selinux-policy-2
DESCRIPTION="SELinux policy for unconfined"
if [[ ${PV} != 9999* ]] ; then
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
fi

View File

@ -2,3 +2,4 @@ DIST hwdata-0.371.tar.gz 2340297 BLAKE2B bb92b6d4f66879eacc1efae13ff1a5fe5801461
DIST hwdata-0.372.tar.gz 2349386 BLAKE2B 0b3c8a7d23cd999090839d046ce6228098bb4976d0be56a07b6b32bdd968e11933b0d648cf4d596ed9ca09f5b754083c62bf0aba116835de6aed72f228cacf1b SHA512 3a7fda4c1f06dff62892dd0d21095d7603a2ec16e67667215b2f59640a38845a79b2dc2a19bcc40656fd472e4216393ac08e190939ec05ef6d4af3e7e6c9141f DIST hwdata-0.372.tar.gz 2349386 BLAKE2B 0b3c8a7d23cd999090839d046ce6228098bb4976d0be56a07b6b32bdd968e11933b0d648cf4d596ed9ca09f5b754083c62bf0aba116835de6aed72f228cacf1b SHA512 3a7fda4c1f06dff62892dd0d21095d7603a2ec16e67667215b2f59640a38845a79b2dc2a19bcc40656fd472e4216393ac08e190939ec05ef6d4af3e7e6c9141f
DIST hwdata-0.373.tar.gz 2356072 BLAKE2B 22be63c94f1ba0fe5e31f1a19d8bf60a302bd6a2a7a15fbeaba0c3399490f86e067c5c84e1bbf5c4cc55a1ec588282d41c5ca9f3cf9e774ae559cac1b95d5812 SHA512 cb940a1cad1b7b6cef0e4bca980b0e6f0af06bf157069645645bb4403d98fbb26bbeef580c984b73091375db09e96c8b672b52d5cf27d75581ff8f0e935d8294 DIST hwdata-0.373.tar.gz 2356072 BLAKE2B 22be63c94f1ba0fe5e31f1a19d8bf60a302bd6a2a7a15fbeaba0c3399490f86e067c5c84e1bbf5c4cc55a1ec588282d41c5ca9f3cf9e774ae559cac1b95d5812 SHA512 cb940a1cad1b7b6cef0e4bca980b0e6f0af06bf157069645645bb4403d98fbb26bbeef580c984b73091375db09e96c8b672b52d5cf27d75581ff8f0e935d8294
DIST hwdata-0.374.tar.gz 2363130 BLAKE2B 696a0281307bb04f2aa9d946b97fdfffd918a3ee3ccc3479842779a4158e06733d128ca5feedf757fa15abb21bdc502cf3d81a775056aed17a95ddefade38df9 SHA512 c4dad796a170fb3b047ac4fe4a9fb32bc58858cdab7ca424d64e5ea00968af45d95af672a147faa2936436a904eae314b6143de2f75c0649ae9985dc4cad4301 DIST hwdata-0.374.tar.gz 2363130 BLAKE2B 696a0281307bb04f2aa9d946b97fdfffd918a3ee3ccc3479842779a4158e06733d128ca5feedf757fa15abb21bdc502cf3d81a775056aed17a95ddefade38df9 SHA512 c4dad796a170fb3b047ac4fe4a9fb32bc58858cdab7ca424d64e5ea00968af45d95af672a147faa2936436a904eae314b6143de2f75c0649ae9985dc4cad4301
DIST hwdata-0.375.tar.gz 2367434 BLAKE2B 9fe350d9ba0c38d1b765cb38d3e6f3a969c0d9847f0453b0e6709e3a992ae2daffd52871ea730da6bcf297785fa44dc7c745ffa4579b85ba08df7a98144b6b32 SHA512 6d3a796be26d5e50991354e6859d69145c09003fd04dafce93ea20e72909ce2f0572004c0270832ab99fed780497234c526f3fbf3b154162f449373be7039a83

View File

@ -0,0 +1,28 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit edo
DESCRIPTION="Hardware identification and configuration data"
HOMEPAGE="https://github.com/vcrhonek/hwdata"
SRC_URI="https://github.com/vcrhonek/hwdata/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
RESTRICT="test"
src_configure() {
# configure is not compatible with econf
local conf=(
./configure
--prefix="${EPREFIX}/usr"
--libdir="${EPREFIX}/lib"
--datadir="${EPREFIX}/usr/share"
)
edo "${conf[@]}"
}

View File

@ -0,0 +1,45 @@
https://github.com/legionus/kbd/pull/103
From 3392e2038dee97361d7438512653736d72a02109 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Wed, 4 Oct 2023 14:47:33 +0100
Subject: [PATCH] Use `AX_ADD_FORTIFY_SOURCE` to avoid redefining
`_FORTIFY_SOURCE`
Some distributions are now setting -D_FORTIFY_SOURCE=3 by default in their
toolchains rather than _F_S=2. By forcing _F_S=2, this causes both a warning
and a downgrade in the effective protection.
Use the autoconf-archive macro for this purpose (AX_ADD_FORTIFY_SOURCE)
to add the fortification at the highest supported level if the compiler doesn't
already default to it.
Bug: https://bugs.gentoo.org/892834
Signed-off-by: Sam James <sam@gentoo.org>
---
configure.ac | 5 +-
m4/ax_add_fortify_source.m4 | 119 ++++++++++++++++++++++++++++++++++++
2 files changed, 122 insertions(+), 2 deletions(-)
create mode 100644 m4/ax_add_fortify_source.m4
diff --git a/configure.ac b/configure.ac
index 66023ff8..7fdbe7d6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -63,13 +63,14 @@ strspn strstr strtol strtoul setpgrp malloc realloc])
AC_SEARCH_LIBS([timer_create], [rt])
+AX_ADD_FORTIFY_SOURCE
+
# Optimization level
CC_O_LEVEL="-O2"
-FORTIFY_SOURCE="-D_FORTIFY_SOURCE=2"
if test "$enable_code_coverage" = yes; then
CC_O_LEVEL="-O0"
- FORTIFY_SOURCE=
+ FORTIFY_SOURCE="-U_FORTIFY_SOURCE"
fi
case "$GCC,$ac_cv_prog_cc_g" in

View File

@ -0,0 +1,96 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/legionus/kbd.git https://git.kernel.org/pub/scm/linux/kernel/git/legion/kbd.git"
EGIT_BRANCH="master"
inherit git-r3
else
if [[ $(ver_cut 3) -lt 90 ]] ; then
SRC_URI="https://www.kernel.org/pub/linux/utils/kbd/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
else
SRC_URI="https://github.com/legionus/kbd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
fi
fi
DESCRIPTION="Keyboard and console utilities"
HOMEPAGE="https://kbd-project.org/"
LICENSE="GPL-2"
SLOT="0"
IUSE="nls selinux pam test"
RESTRICT="!test? ( test )"
# Testsuite's Makefile.am calls missing(!)
# ... but this seems to be consistent with the autoconf docs?
# Needs more investigation: https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
QA_AM_MAINTAINER_MODE=".*--run autom4te --language=autotest.*"
DEPEND="
app-alternatives/gzip
pam? (
!app-misc/vlock
sys-libs/pam
)
"
RDEPEND="
${DEPEND}
selinux? ( sec-policy/selinux-loadkeys )
"
# autoconf-archive for F_S patch
BDEPEND="
sys-devel/autoconf-archive
virtual/pkgconfig
test? ( dev-libs/check )
"
PATCHES=(
"${FILESDIR}"/${PN}-2.6.3-no-redefine-fortify-source.patch
)
src_prepare() {
default
# Rename conflicting keymaps to have unique names, bug #293228
# See also https://github.com/legionus/kbd/issues/76.
pushd "${S}"/data/keymaps/i386 &> /dev/null || die
mv fgGIod/trf.map fgGIod/trf-fgGIod.map || die
mv olpc/es.map olpc/es-olpc.map || die
mv olpc/pt.map olpc/pt-olpc.map || die
mv qwerty/cz.map qwerty/cz-qwerty.map || die
popd &> /dev/null || die
#if [[ ${PV} == 9999 ]] || [[ $(ver_cut 3) -ge 90 ]] ; then
# eautoreconf
#fi
# Always do it for now for the F_S patch
eautoreconf
}
src_configure() {
local myeconfargs=(
--disable-werror
$(use_enable nls)
$(use_enable pam vlock)
$(use_enable test tests)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
docinto html
dodoc docs/doc/*.html
# USE="test" installs .la files
find "${ED}" -type f -name "*.la" -delete || die
}

View File

@ -3,3 +3,4 @@ DIST portage-3.0.46.tar.bz2 1148375 BLAKE2B d97698eb3341a8d04980e021e5be8650193b
DIST portage-3.0.49.tar.bz2 1152449 BLAKE2B a47f951a35828ba9c8fc88c2eab5222c98ed20240c736c366d8f2e4f4aef773a140bf0e150448cc3796a7adb7471ce006aae4de1816bbbaae6dd83dcf28f52b0 SHA512 f07950d10c01bda0915aa30c5c0b6ce2864754fe7dea38b5341336cd7665dcabfdc219969f1a3d2803db59bc23fc4284bc96b4087a596cb27a5d9eb075735469 DIST portage-3.0.49.tar.bz2 1152449 BLAKE2B a47f951a35828ba9c8fc88c2eab5222c98ed20240c736c366d8f2e4f4aef773a140bf0e150448cc3796a7adb7471ce006aae4de1816bbbaae6dd83dcf28f52b0 SHA512 f07950d10c01bda0915aa30c5c0b6ce2864754fe7dea38b5341336cd7665dcabfdc219969f1a3d2803db59bc23fc4284bc96b4087a596cb27a5d9eb075735469
DIST portage-3.0.50.tar.bz2 1153508 BLAKE2B b90d93f8922acdb5486a52c1354c6c9829fac608971078a641b604b57240065eec4e82cc9cb2fb8b4ba485a7f2d52473c0a90295b29eb578638ad11cd3cf2943 SHA512 355841af862077f9203d6f8cbe904f4966516597444f38ef535fc06d0fe5c21d9c1da139a44407fdd69b56eb9c49c286187d856ef4e9b9bc6b21bab5b772a88f DIST portage-3.0.50.tar.bz2 1153508 BLAKE2B b90d93f8922acdb5486a52c1354c6c9829fac608971078a641b604b57240065eec4e82cc9cb2fb8b4ba485a7f2d52473c0a90295b29eb578638ad11cd3cf2943 SHA512 355841af862077f9203d6f8cbe904f4966516597444f38ef535fc06d0fe5c21d9c1da139a44407fdd69b56eb9c49c286187d856ef4e9b9bc6b21bab5b772a88f
DIST portage-3.0.51.tar.bz2 1155503 BLAKE2B 1095ab616993951da8f4d43cef4cf815672c67cb48ea2fe5aeb6b7c629058bfab1557d2b9508f2e3e9f38676733b5d60ec6a3686bc57840065c428508769cb1c SHA512 bf237819173bed9df3b63ada067a2a99700618d88fd4b528146c56bdd592f2452003db6cc6da4a445b647eb4d8bb591260ea0d2a5627ad540526a2e802025836 DIST portage-3.0.51.tar.bz2 1155503 BLAKE2B 1095ab616993951da8f4d43cef4cf815672c67cb48ea2fe5aeb6b7c629058bfab1557d2b9508f2e3e9f38676733b5d60ec6a3686bc57840065c428508769cb1c SHA512 bf237819173bed9df3b63ada067a2a99700618d88fd4b528146c56bdd592f2452003db6cc6da4a445b647eb4d8bb591260ea0d2a5627ad540526a2e802025836
DIST portage-3.0.52.tar.bz2 1157447 BLAKE2B 61e4d32f9713b9b0a2df6ca636b2d756dacdb93f862eeab8a8b46d436b9c90d3d5d04989023dc5580ce0c4a6827fa623e5b32ce3d5094ff56ccde7a53c1af81c SHA512 1a249b140cc24b6d83314ad0b3f4ca73fcff3df01f1207c2fe661b16e78ab1155bb6dca4fb89100910fce13bf0fc21636232f9560360cf12f2c43b803d2a0429

View File

@ -31,8 +31,11 @@ RESTRICT="!test? ( test )"
# setuptools is still needed as a workaround for Python 3.12+ for now. # setuptools is still needed as a workaround for Python 3.12+ for now.
# https://github.com/mesonbuild/meson/issues/7702 # https://github.com/mesonbuild/meson/issues/7702
#
# >=meson-1.2.1-r1 for bug #912051
BDEPEND=" BDEPEND="
${PYTHON_DEPS} ${PYTHON_DEPS}
>=dev-util/meson-1.2.1-r1
$(python_gen_cond_dep ' $(python_gen_cond_dep '
dev-python/setuptools[${PYTHON_USEDEP}] dev-python/setuptools[${PYTHON_USEDEP}]
' python3_12) ' python3_12)

View File

@ -31,8 +31,11 @@ RESTRICT="!test? ( test )"
# setuptools is still needed as a workaround for Python 3.12+ for now. # setuptools is still needed as a workaround for Python 3.12+ for now.
# https://github.com/mesonbuild/meson/issues/7702 # https://github.com/mesonbuild/meson/issues/7702
#
# >=meson-1.2.1-r1 for bug #912051
BDEPEND=" BDEPEND="
${PYTHON_DEPS} ${PYTHON_DEPS}
>=dev-util/meson-1.2.1-r1
$(python_gen_cond_dep ' $(python_gen_cond_dep '
dev-python/setuptools[${PYTHON_USEDEP}] dev-python/setuptools[${PYTHON_USEDEP}]
' python3_12) ' python3_12)

View File

@ -0,0 +1,238 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy3 python3_{10..12} )
PYTHON_REQ_USE='bzip2(+),threads(+)'
TMPFILES_OPTIONAL=1
inherit meson linux-info multiprocessing python-r1 tmpfiles
DESCRIPTION="The package management and distribution system for Gentoo"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="
https://anongit.gentoo.org/git/proj/portage.git
https://github.com/gentoo/portage.git
"
inherit git-r3
else
SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="!test? ( test )"
# setuptools is still needed as a workaround for Python 3.12+ for now.
# https://github.com/mesonbuild/meson/issues/7702
#
# >=meson-1.2.1-r1 for bug #912051
BDEPEND="
${PYTHON_DEPS}
>=dev-util/meson-1.2.1-r1
$(python_gen_cond_dep '
dev-python/setuptools[${PYTHON_USEDEP}]
' python3_12)
test? (
dev-python/pytest-xdist[${PYTHON_USEDEP}]
dev-vcs/git
)
"
DEPEND="
${PYTHON_DEPS}
>=app-arch/tar-1.27
dev-lang/python-exec:2
>=sys-apps/sed-4.0.5
sys-devel/patch
!build? ( $(python_gen_impl_dep 'ssl(+)') )
apidoc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-epytext[${PYTHON_USEDEP}]
)
doc? (
~app-text/docbook-xml-dtd-4.4
app-text/xmlto
)
"
# Require sandbox-2.2 for bug #288863.
# For whirlpool hash, require python[ssl] (bug #425046).
RDEPEND="
${PYTHON_DEPS}
acct-user/portage
>=app-arch/tar-1.27
app-arch/zstd
>=app-misc/pax-utils-0.1.17
dev-lang/python-exec:2
>=sys-apps/baselayout-2.9
>=sys-apps/findutils-4.4
!build? (
>=app-admin/eselect-1.2
app-portage/getuto
>=app-shells/bash-5.0:0
>=sec-keys/openpgp-keys-gentoo-release-20230329
>=sys-apps/sed-4.0.5
rsync-verify? (
>=app-crypt/gnupg-2.2.4-r2[ssl(-)]
>=app-portage/gemato-14.5[${PYTHON_USEDEP}]
)
)
elibc_glibc? ( >=sys-apps/sandbox-2.2 )
elibc_musl? ( >=sys-apps/sandbox-2.2 )
kernel_linux? ( sys-apps/util-linux )
selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
xattr? ( kernel_linux? (
>=sys-apps/install-xattr-0.3
) )
!<app-admin/logrotate-3.8.0
!<app-portage/gentoolkit-0.4.6
!<app-portage/repoman-2.3.10
!~app-portage/repoman-3.0.0
"
# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
# NOTE: FEATURES=installsources requires debugedit and rsync
PDEPEND="
!build? (
>=net-misc/rsync-2.6.4
>=sys-apps/coreutils-6.4
>=sys-apps/file-5.44-r3
)
"
pkg_pretend() {
local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
check_extra_config
}
src_prepare() {
default
if use prefix-guest; then
sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
-e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
-e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
-i cnf/repos.conf || die "sed failed"
fi
}
src_configure() {
local code_only=false
python_foreach_impl my_src_configure
}
my_src_configure() {
local emesonargs=(
-Dcode-only=${code_only}
-Deprefix="${EPREFIX}"
-Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}"
-Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
$(meson_use doc)
$(meson_use apidoc)
$(meson_use gentoo-dev)
$(meson_use ipc)
$(meson_use xattr)
)
if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
emesonargs+=( -Dnative-extensions=true )
else
emesonargs+=( -Dnative-extensions=false )
fi
if use build; then
emesonargs+=( -Drsync-verify=false )
else
emesonargs+=( $(meson_use rsync-verify) )
fi
meson_src_configure
code_only=true
}
src_compile() {
python_foreach_impl meson_src_compile
}
src_test() {
local -x PYTEST_ADDOPTS="-vv -ra -l -o console_output_style=count -n $(makeopts_jobs) --dist=worksteal"
python_foreach_impl meson_src_test --no-rebuild --verbose
}
src_install() {
python_foreach_impl my_src_install
dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf
local scripts
mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die)
python_replicate_script "${scripts[@]}"
}
my_src_install() {
local pydirs=(
"${D}$(python_get_sitedir)"
"${ED}/usr/lib/portage/${EPYTHON}"
)
meson_src_install
python_optimize "${pydirs[@]}"
python_fix_shebang "${pydirs[@]}"
}
pkg_preinst() {
if ! use build && [[ -z ${ROOT} ]]; then
python_setup
local sitedir=$(python_get_sitedir)
[[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
env -u DISTDIR \
-u PORTAGE_OVERRIDE_EPREFIX \
-u PORTAGE_REPOSITORIES \
-u PORTDIR \
-u PORTDIR_OVERLAY \
PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
"${PYTHON}" -m portage._compat_upgrade.default_locations || die
env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \
PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
"${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
env -u FEATURES -u PORTAGE_REPOSITORIES \
PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
"${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die
fi
# elog dir must exist to avoid logrotate error for bug #415911.
# This code runs in preinst in order to bypass the mapping of
# portage:portage to root:root which happens after src_install.
keepdir /var/log/portage/elog
# This is allowed to fail if the user/group are invalid for prefix users.
if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
fi
if has_version "<${CATEGORY}/${PN}-2.3.77"; then
elog "The emerge --autounmask option is now disabled by default, except for"
elog "portions of behavior which are controlled by the --autounmask-use and"
elog "--autounmask-license options. For backward compatibility, previous"
elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
elog "Users can get the old behavior simply by adding --autounmask to the"
elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
elog "change, see https://bugs.gentoo.org/658648."
fi
}
pkg_postinst() {
# Warn about obsolete "enotice" script, bug #867010
local bashrc=${EROOT}/etc/portage/profile/profile.bashrc
if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then
eerror "Obsolete 'enotice' script detected!"
eerror "Please remove this from ${bashrc} to avoid problems."
eerror "See bug 867010 for more details."
fi
}

View File

@ -31,8 +31,11 @@ RESTRICT="!test? ( test )"
# setuptools is still needed as a workaround for Python 3.12+ for now. # setuptools is still needed as a workaround for Python 3.12+ for now.
# https://github.com/mesonbuild/meson/issues/7702 # https://github.com/mesonbuild/meson/issues/7702
#
# >=meson-1.2.1-r1 for bug #912051
BDEPEND=" BDEPEND="
${PYTHON_DEPS} ${PYTHON_DEPS}
>=dev-util/meson-1.2.1-r1
$(python_gen_cond_dep ' $(python_gen_cond_dep '
dev-python/setuptools[${PYTHON_USEDEP}] dev-python/setuptools[${PYTHON_USEDEP}]
' python3_12) ' python3_12)

View File

@ -7,6 +7,7 @@ DIST gcc-11-20230622.tar.xz 76199316 BLAKE2B a769dc6be63eabca3bc33944b471d727bf2
DIST gcc-11-20230824.tar.xz 76202120 BLAKE2B 243ce16e28c66d681bb27df32866947309f8fa386e258896651b6853e390da79304250669096fd55cafe0a9d5adf4b3a3cf5989302f4ad13660ece80639b545a SHA512 a9cab8bf61f2a572baba73a2a11271eeb61d43f07411df376a8568820c1373f64f635d747933fda1e942ae717b0ae9f1c810f662fc09ccb075940248bc48b582 DIST gcc-11-20230824.tar.xz 76202120 BLAKE2B 243ce16e28c66d681bb27df32866947309f8fa386e258896651b6853e390da79304250669096fd55cafe0a9d5adf4b3a3cf5989302f4ad13660ece80639b545a SHA512 a9cab8bf61f2a572baba73a2a11271eeb61d43f07411df376a8568820c1373f64f635d747933fda1e942ae717b0ae9f1c810f662fc09ccb075940248bc48b582
DIST gcc-11-20230921.tar.xz 76227940 BLAKE2B b086b35bc7192be078d08f6c9363a9b343f8d97a1bc781870796cf564b829febeccb5f94739fb14a88357f7f66530ff3c23f298eed9341ffb6927a5ac4a40546 SHA512 20fd7e680303a8328e9c017ab21dc3cab46fe5684a08bfc48a342ec4e95cc94675db2e450483499f126b2d5943e3ef8115287a5b4da8718b966c0ffe9f79b925 DIST gcc-11-20230921.tar.xz 76227940 BLAKE2B b086b35bc7192be078d08f6c9363a9b343f8d97a1bc781870796cf564b829febeccb5f94739fb14a88357f7f66530ff3c23f298eed9341ffb6927a5ac4a40546 SHA512 20fd7e680303a8328e9c017ab21dc3cab46fe5684a08bfc48a342ec4e95cc94675db2e450483499f126b2d5943e3ef8115287a5b4da8718b966c0ffe9f79b925
DIST gcc-11-20230928.tar.xz 76217292 BLAKE2B d0c58f0e8e15a4efaa3faba9b83efdac9b96749836f776f2ef438cd0bcf74601e5d24b2c45e7edfb2cc44e5aee32c5a2b23c8efcb370e4cf902c98d930664157 SHA512 ddbc362d8b3177432886861da89e68b187deeaae7d40aa03881f8135931475ba688688fd3217d95dfb9d01d62a634808a04ab0a4c37f12332155bdabce459115 DIST gcc-11-20230928.tar.xz 76217292 BLAKE2B d0c58f0e8e15a4efaa3faba9b83efdac9b96749836f776f2ef438cd0bcf74601e5d24b2c45e7edfb2cc44e5aee32c5a2b23c8efcb370e4cf902c98d930664157 SHA512 ddbc362d8b3177432886861da89e68b187deeaae7d40aa03881f8135931475ba688688fd3217d95dfb9d01d62a634808a04ab0a4c37f12332155bdabce459115
DIST gcc-11-20231005.tar.xz 76222664 BLAKE2B f5671cdb01df00bd917f59ad33ac91a4904514ed25b9879e6c10cad15a86666709dd7ff9425ba99de45b811e3a1afde977a5683b6e9c8de91da8080f37dc9cce SHA512 4f0f0543655f398ea32c08f2b18be2430652ef3537b1d46ecbb9e522a7701bea2ffe04ed6fe6a179596a5f8da02fbd5fdc4758c6b9e8e2e9d9f0805383c4fc1e
DIST gcc-11.4.0-musl-patches-2.tar.xz 4308 BLAKE2B a2335e155fc57816fed822a648e0eaefafcba9d04e1ad0fd7baeea5a694ab6f5e3c1678cb406f2a1bd17bab25cb01699d032713a1ccf337948dfda2093844607 SHA512 17b84f907cb1bd763873655e6f35fd3ed55a40b602b70a626f04f83b4cc89c6261db1661de78d4d969187a8c56e9f6305b742515a3836b962248a21df0df5d0c DIST gcc-11.4.0-musl-patches-2.tar.xz 4308 BLAKE2B a2335e155fc57816fed822a648e0eaefafcba9d04e1ad0fd7baeea5a694ab6f5e3c1678cb406f2a1bd17bab25cb01699d032713a1ccf337948dfda2093844607 SHA512 17b84f907cb1bd763873655e6f35fd3ed55a40b602b70a626f04f83b4cc89c6261db1661de78d4d969187a8c56e9f6305b742515a3836b962248a21df0df5d0c
DIST gcc-11.4.0-patches-10.tar.xz 13852 BLAKE2B 54937d13e30e2a5303c7e197fae09eeed35ca0b9783625e02578fcee829b5503fb22d664366322b304df7d01ae807d00af7c93db3e3ceebe4851e15647724f87 SHA512 31b4d7a2e7cc589e92e12c3583d13d41c523cafbd309bc0532df9b68ea2473c89daef4c0edd3ce2917b5823d81a7792f145b9449f16277d0d64c22ceff50bbb9 DIST gcc-11.4.0-patches-10.tar.xz 13852 BLAKE2B 54937d13e30e2a5303c7e197fae09eeed35ca0b9783625e02578fcee829b5503fb22d664366322b304df7d01ae807d00af7c93db3e3ceebe4851e15647724f87 SHA512 31b4d7a2e7cc589e92e12c3583d13d41c523cafbd309bc0532df9b68ea2473c89daef4c0edd3ce2917b5823d81a7792f145b9449f16277d0d64c22ceff50bbb9
DIST gcc-11.4.0-patches-9.tar.xz 14704 BLAKE2B 9aa2ecbac493d3040694e9930738e57d59a764b90ab92b91709c319b883f28ad108767e5d11e8b62af40bf1e583d5ff83a03e8c895f904bc6f41315ce9ab4f0a SHA512 ac8b7c6c382ffacc4e9d08299440fc237fa366ec36fb8eb7a8d426b64a4186384a262e6380dc83ed7f7240125ce26a8435c8a4e0e13976ef2652067a7129bd17 DIST gcc-11.4.0-patches-9.tar.xz 14704 BLAKE2B 9aa2ecbac493d3040694e9930738e57d59a764b90ab92b91709c319b883f28ad108767e5d11e8b62af40bf1e583d5ff83a03e8c895f904bc6f41315ce9ab4f0a SHA512 ac8b7c6c382ffacc4e9d08299440fc237fa366ec36fb8eb7a8d426b64a4186384a262e6380dc83ed7f7240125ce26a8435c8a4e0e13976ef2652067a7129bd17
@ -14,18 +15,23 @@ DIST gcc-12-20230526.tar.xz 79780444 BLAKE2B 6f6eca272ab506e16a231003c399e285725
DIST gcc-12-20230825.tar.xz 79804260 BLAKE2B 4d3eb40eb5954d497b3e9586dad0d18c9e561d3fdd0bdccc5c9572edfbe024a235e30371a10116d98c77f0b6042739600c57ac99253d34f0fbb8b8465b187e1f SHA512 a6cd868f474c356886460b95263807828f9a379ce97524611ec504d6a9149ca1f92585128e6ffd03fa2647442e72fde6ebe987fd49f2fc49d8df39ab056905c5 DIST gcc-12-20230825.tar.xz 79804260 BLAKE2B 4d3eb40eb5954d497b3e9586dad0d18c9e561d3fdd0bdccc5c9572edfbe024a235e30371a10116d98c77f0b6042739600c57ac99253d34f0fbb8b8465b187e1f SHA512 a6cd868f474c356886460b95263807828f9a379ce97524611ec504d6a9149ca1f92585128e6ffd03fa2647442e72fde6ebe987fd49f2fc49d8df39ab056905c5
DIST gcc-12-20230922.tar.xz 79801244 BLAKE2B 9b7681a742ed7aa81f06f726d765d4b1259c199ec3fb5c3072b789491b99c966f1a5d90fbe357136b5f1dd8b046653c51653b8a7049ef0768049534b5364816a SHA512 41542d2ab1ebd3c5a342159bc58a2f891d89a6b87533a928193dd28dc8dc3e3b3e3e4e547be20c930f8e85014c76128cbedbe6f846524b67acd3af16e93c3189 DIST gcc-12-20230922.tar.xz 79801244 BLAKE2B 9b7681a742ed7aa81f06f726d765d4b1259c199ec3fb5c3072b789491b99c966f1a5d90fbe357136b5f1dd8b046653c51653b8a7049ef0768049534b5364816a SHA512 41542d2ab1ebd3c5a342159bc58a2f891d89a6b87533a928193dd28dc8dc3e3b3e3e4e547be20c930f8e85014c76128cbedbe6f846524b67acd3af16e93c3189
DIST gcc-12-20230929.tar.xz 79799412 BLAKE2B b4290ca0c9dd115e7e893c49ee205ab6c310f5c2b3087a6f619dca1838aef4c813fad349a0b618cbd8d107ae8d1a2307bc3499f32bf53c78d3dbda67a4991c99 SHA512 98bd7fe68d3ddd565c56182331129c5270e6a8b02bcb687e58af55e4a82644e6429e2ef7171216a19841fa8fc6fd605c0fabb38d7844daf278fc3bbb634cfc08 DIST gcc-12-20230929.tar.xz 79799412 BLAKE2B b4290ca0c9dd115e7e893c49ee205ab6c310f5c2b3087a6f619dca1838aef4c813fad349a0b618cbd8d107ae8d1a2307bc3499f32bf53c78d3dbda67a4991c99 SHA512 98bd7fe68d3ddd565c56182331129c5270e6a8b02bcb687e58af55e4a82644e6429e2ef7171216a19841fa8fc6fd605c0fabb38d7844daf278fc3bbb634cfc08
DIST gcc-12-20231006.tar.xz 79786912 BLAKE2B 09da5378d449b6d1d5d5af82bfa18b6d073a4f255afef5e19a086e72d41ba0a204705353a4ef7df8c89ace4de639573fe98ab37f90e0f0761743336fcfb023b2 SHA512 21975c70bc7958a44e4785881cc4c64bc842ec28e34a10880ef7369299af0bccdeb54ceb6e303ca031795a678e1649100a6924110268ba53147ae6e7da6acb91
DIST gcc-12.3.0-musl-patches-1.tar.xz 3572 BLAKE2B c7bf65f7c9ea8023ddaac821ee2b778622fa310ac72a72b2f7032494a8f304eac86217f9204622e6c21aaef9952bece0d09bc126facd4f42b602927909815ab5 SHA512 babc279fea2c1fd4c018815f2f5630214fd46015ce9f365c28af242681d51818eaca30ce298eddcab1eed5ac5f2759e2b47b2335afab9d722b4469a6d4fec326 DIST gcc-12.3.0-musl-patches-1.tar.xz 3572 BLAKE2B c7bf65f7c9ea8023ddaac821ee2b778622fa310ac72a72b2f7032494a8f304eac86217f9204622e6c21aaef9952bece0d09bc126facd4f42b602927909815ab5 SHA512 babc279fea2c1fd4c018815f2f5630214fd46015ce9f365c28af242681d51818eaca30ce298eddcab1eed5ac5f2759e2b47b2335afab9d722b4469a6d4fec326
DIST gcc-12.3.0-patches-2.tar.xz 14236 BLAKE2B 06c43662c9abb0fa3cf90d5e2273c69aecb9158e6cf6f23c04754ed5d686be2616e81e2502eb16f4298ddd50518ca7677e13249da9e9b091162d3931ff65e4fe SHA512 b0d4b85dbf1a54aaaa1997203b872e3106906b4ad49cde57e1428bc22b2f8e2d73b8cb10ae0d0b792aebaf664594da4d1dea04c44ddc34e59047410766db04d1 DIST gcc-12.3.0-patches-2.tar.xz 14236 BLAKE2B 06c43662c9abb0fa3cf90d5e2273c69aecb9158e6cf6f23c04754ed5d686be2616e81e2502eb16f4298ddd50518ca7677e13249da9e9b091162d3931ff65e4fe SHA512 b0d4b85dbf1a54aaaa1997203b872e3106906b4ad49cde57e1428bc22b2f8e2d73b8cb10ae0d0b792aebaf664594da4d1dea04c44ddc34e59047410766db04d1
DIST gcc-13-20230826.tar.xz 84285788 BLAKE2B c25be594e322dd7145245c42ae21b98aa9e3e6ae69f1fa313830e40bf2e8fcb8435762f1c9d3f1ca1dbf31653bdc76a658bec708b7850fe40a7c55504ac30618 SHA512 3d47632e90651bd50a881c727c1ef2aa3322b4fc3e082919ae430270901abf8a05a34fe93f8b678c10dc9a0758f93dc3b33ed5947c8743dab453d2b50c063722 DIST gcc-13-20230826.tar.xz 84285788 BLAKE2B c25be594e322dd7145245c42ae21b98aa9e3e6ae69f1fa313830e40bf2e8fcb8435762f1c9d3f1ca1dbf31653bdc76a658bec708b7850fe40a7c55504ac30618 SHA512 3d47632e90651bd50a881c727c1ef2aa3322b4fc3e082919ae430270901abf8a05a34fe93f8b678c10dc9a0758f93dc3b33ed5947c8743dab453d2b50c063722
DIST gcc-13-20230923.tar.xz 84304612 BLAKE2B 3820746f13c5b0dd741506c758ed8de4650fa5330b60802b627a7254f5b4b08da2493f12120aa24b712f98ae39fe2f188f05c79ad22ffdb3de67b2ebe49005aa SHA512 12c0aafb7e91a18224b9b94e7e7e34b57c2e447cc85f51c8ddab672fa3fe31c784d42c15a8a1eb0da8fc9cc321c24163b12fb4f71e7da91b0169a278f2b83713 DIST gcc-13-20230923.tar.xz 84304612 BLAKE2B 3820746f13c5b0dd741506c758ed8de4650fa5330b60802b627a7254f5b4b08da2493f12120aa24b712f98ae39fe2f188f05c79ad22ffdb3de67b2ebe49005aa SHA512 12c0aafb7e91a18224b9b94e7e7e34b57c2e447cc85f51c8ddab672fa3fe31c784d42c15a8a1eb0da8fc9cc321c24163b12fb4f71e7da91b0169a278f2b83713
DIST gcc-13-20230930.tar.xz 84312516 BLAKE2B f2d44c7a5a9d1996cfb02c1b08e4a4758434d39dde204f3acd5917828130d234ea6af3ec594aaa9aa60cd7cd4ce09dcf873c69ee801bae0de2b3c719515235cd SHA512 ca1c59c53af51c3e46a340210516594184fdfcb97bbb693c59a675d54239d8386732537632e486ed7c6030dbf3d836d07917d6dc9808071a55b1f411e46d3d10 DIST gcc-13-20230930.tar.xz 84312516 BLAKE2B f2d44c7a5a9d1996cfb02c1b08e4a4758434d39dde204f3acd5917828130d234ea6af3ec594aaa9aa60cd7cd4ce09dcf873c69ee801bae0de2b3c719515235cd SHA512 ca1c59c53af51c3e46a340210516594184fdfcb97bbb693c59a675d54239d8386732537632e486ed7c6030dbf3d836d07917d6dc9808071a55b1f411e46d3d10
DIST gcc-13-20231007.tar.xz 84313608 BLAKE2B 7c91f0e9329986df113c73f94325300918afcc58c5d2f2a8d4818d5f8c600c385160dd083f9a993138ede53f9e2163a84b8886e62cf6b83b03089c2c5c55f7b5 SHA512 5e3c7f4ec2b1d9f0f65097b0d992bf5acfafb2830b1394a832a4e95163a369b9beb42681cd0fd09aa25494d8b83bc377f1f03f0319dd785d4eea372b8477074b
DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69 DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69
DIST gcc-13.2.0-patches-7.tar.xz 37064 BLAKE2B 4a8700a8d44bfaa84926f8bfd0da4c5b0c0377f47fc0679456e909f7c9029b9cf1b72c0ba0bc505d9035d5c38e27f7e5b029727eaf2bc7aca417a6be966b2f43 SHA512 f440c97e6782ecb8581d41608e31a648ac426e2d870bc1d171da7794cdeff2fd0546cae0c7214e72fd3a00ead8a5c66f3f633b670b74553a2f3a40378b51f20c DIST gcc-13.2.0-patches-7.tar.xz 37064 BLAKE2B 4a8700a8d44bfaa84926f8bfd0da4c5b0c0377f47fc0679456e909f7c9029b9cf1b72c0ba0bc505d9035d5c38e27f7e5b029727eaf2bc7aca417a6be966b2f43 SHA512 f440c97e6782ecb8581d41608e31a648ac426e2d870bc1d171da7794cdeff2fd0546cae0c7214e72fd3a00ead8a5c66f3f633b670b74553a2f3a40378b51f20c
DIST gcc-13.2.0-patches-8.tar.xz 34872 BLAKE2B 58e8229384c7b1bfdf3b576c240599e4e9feece94dd39dfbe5e94f9978ca6f165edfa00579bbd2d5410c295d9114e3575a5efc78fa4f976b43bb8c3fb3bfb07f SHA512 bc5cfeef5e8053dbdb1e336f3374dbf37233e08b5f2a0635accf2ae746fa9658f2201971901c73f1332f2f36f21916709ff4ca1e3be7d1e05a0774fc6c7ecd4d DIST gcc-13.2.0-patches-8.tar.xz 34872 BLAKE2B 58e8229384c7b1bfdf3b576c240599e4e9feece94dd39dfbe5e94f9978ca6f165edfa00579bbd2d5410c295d9114e3575a5efc78fa4f976b43bb8c3fb3bfb07f SHA512 bc5cfeef5e8053dbdb1e336f3374dbf37233e08b5f2a0635accf2ae746fa9658f2201971901c73f1332f2f36f21916709ff4ca1e3be7d1e05a0774fc6c7ecd4d
DIST gcc-14-20230917.tar.xz 85875468 BLAKE2B afd39683b7ae9e84c6fa81d6ba6059a1411463ab45fce81eccf34dfafb29ff633a287826063da547014c12b9e0244d2a022ddb1fef1c73edd882249c5be695e3 SHA512 a1f79805278e61c9feb4020c62e07c666fa724d872fc55dd0372a7d17cc2c2e2e8d2d149e748499e75331bcb28a6b1a6641c20111a6d8b871dddc1efe957608d DIST gcc-14-20230917.tar.xz 85875468 BLAKE2B afd39683b7ae9e84c6fa81d6ba6059a1411463ab45fce81eccf34dfafb29ff633a287826063da547014c12b9e0244d2a022ddb1fef1c73edd882249c5be695e3 SHA512 a1f79805278e61c9feb4020c62e07c666fa724d872fc55dd0372a7d17cc2c2e2e8d2d149e748499e75331bcb28a6b1a6641c20111a6d8b871dddc1efe957608d
DIST gcc-14-20230924.tar.xz 85950048 BLAKE2B cc353b46f963eca7ad820fe35fb14ece3d76714466ee6ac227433fddc101e76c40d71ce4bc6363e2bc5c3fdf233ab7479bf18542be3df6e1f77690090d08d351 SHA512 19a93b35660f8960b5a9385b9312d9555d83bb8ca8662492b54ece3c1d634da0fd6614e677ce6f1738ac2eadc5dd18b2ce311d2adde6c41f34db8598373bd335 DIST gcc-14-20230924.tar.xz 85950048 BLAKE2B cc353b46f963eca7ad820fe35fb14ece3d76714466ee6ac227433fddc101e76c40d71ce4bc6363e2bc5c3fdf233ab7479bf18542be3df6e1f77690090d08d351 SHA512 19a93b35660f8960b5a9385b9312d9555d83bb8ca8662492b54ece3c1d634da0fd6614e677ce6f1738ac2eadc5dd18b2ce311d2adde6c41f34db8598373bd335
DIST gcc-14-20231001.tar.xz 85968476 BLAKE2B 3a3749b1c5346472977e436d09aff6cf44e372b2a05a6227df34b054070de9a438ead20f4da114525bc3e9d7d13bc111fa292ffd03fefb4428a22d00884aaa5f SHA512 bc342152c7d70ddc4b6b3a7c8fb769aca971d0f8432eb842b53e9c7e3075f6f57295fbcfae14f288709fa846e58eabdb07e6e3185195f6d1820cee69e9a2a586
DIST gcc-14-20231008.tar.xz 86002968 BLAKE2B 9b59a66e269b3a80f344e96619ed4fa99c5a1f03036b6fd577edac22cf8dfb2b4aa970bb30214dc4a32476c5b22970deea975f808e9a788e5cef8482d704f2c0 SHA512 6cc3030a16111eb57e02d40920e34b967ce1c006eae353f6d969722ce2c0cd3ed711036f826b61858e568a749f9c97ba9550283a5ba8a6c8d41a7024b475f32b
DIST gcc-14.0.0-musl-patches-1.tar.xz 3576 BLAKE2B 692baee8a7709905d53aeb150d73a3721c4ba47ee5f397cfb1b5be905cf003ca02b60c94ee294d90ac39645cd5cdf186c7a3aa950c47d8cf680c128ed705b807 SHA512 0592ab98a7142e404623a6511c67dff61e9ade32c3fb2c0e75b456306e0af3799ad13252b50b3d2fdd31e5815d7f0b16b0ad63ab8386fe4d78729fc9c182d617 DIST gcc-14.0.0-musl-patches-1.tar.xz 3576 BLAKE2B 692baee8a7709905d53aeb150d73a3721c4ba47ee5f397cfb1b5be905cf003ca02b60c94ee294d90ac39645cd5cdf186c7a3aa950c47d8cf680c128ed705b807 SHA512 0592ab98a7142e404623a6511c67dff61e9ade32c3fb2c0e75b456306e0af3799ad13252b50b3d2fdd31e5815d7f0b16b0ad63ab8386fe4d78729fc9c182d617
DIST gcc-14.0.0-patches-2.tar.xz 11484 BLAKE2B 6ff968051d286f21eb7f4ec80303b232530c153cca8d9e61ddfdf3675ef8c5740223a8b720ec9d5c4561b505993c675cc6fc7a9bab659ee1db99e1d97911eb74 SHA512 b255338d6110d9bfe211ba14da7b186f69b81503dba6e4ec19ee6fa37d44c0690e713c763abe27ce934ff7f9e5d0c8788a54c30587f07f65858b1e817cbf7247 DIST gcc-14.0.0-patches-2.tar.xz 11484 BLAKE2B 6ff968051d286f21eb7f4ec80303b232530c153cca8d9e61ddfdf3675ef8c5740223a8b720ec9d5c4561b505993c675cc6fc7a9bab659ee1db99e1d97911eb74 SHA512 b255338d6110d9bfe211ba14da7b186f69b81503dba6e4ec19ee6fa37d44c0690e713c763abe27ce934ff7f9e5d0c8788a54c30587f07f65858b1e817cbf7247
DIST gcc-14.0.0-patches-3.tar.xz 11500 BLAKE2B 508ac2fc1d15cba29921c5faf96f45ad77fc3aae05bcdb4a9eb3114ad23a2afa4810cfafd71ff3b77ea2bae9ed809f9de615396486acb6086ddf316a008fa1c8 SHA512 cac927be1ca191b98963bda65b5fb4eda3f6449d5f4e9c42a0db3e4036ec4963ba7675523cfa823a5938b7e6a5260c4c5e2f9b268414a94fab7418dc1cbbfd58
DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6 DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6
DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8
DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf

View File

@ -0,0 +1,45 @@
https://bugs.gentoo.org/914998
https://gcc.gnu.org/PR111642
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=e465e5e4a969334f64cf0d6611de5273d73ea732
From e465e5e4a969334f64cf0d6611de5273d73ea732 Mon Sep 17 00:00:00 2001
From: Richard Sandiford <richard.sandiford@arm.com>
Date: Mon, 2 Oct 2023 07:20:45 +0100
Subject: [PATCH] Fix profiledbootstrap poly_int fallout [PR111642]
rtl-tests.cc and simplify-rtx.cc used partial specialisation
to try to restrict the NUM_POLY_INT_COEFFS>1 tests without
resorting to preprocessor tests. That now triggers an error
in some configurations, since the NUM_POLY_INT_COEFFS>1 tests
used the global poly_int64, whose definition does not depend
on the template parameter.
This patch uses local types that do depend on the template parameter.
gcc/
PR bootstrap/111642
* rtl-tests.cc (const_poly_int_tests<N>::run): Use a local
poly_int64 typedef.
* simplify-rtx.cc (simplify_const_poly_int_tests<N>::run): Likewise.
--- a/gcc/rtl-tests.cc
+++ b/gcc/rtl-tests.cc
@@ -246,6 +246,7 @@ template<unsigned int N>
void
const_poly_int_tests<N>::run ()
{
+ using poly_int64 = poly_int<N, HOST_WIDE_INT>;
rtx x1 = gen_int_mode (poly_int64 (1, 1), QImode);
rtx x255 = gen_int_mode (poly_int64 (1, 255), QImode);
--- a/gcc/simplify-rtx.cc
+++ b/gcc/simplify-rtx.cc
@@ -8689,6 +8689,7 @@ template<unsigned int N>
void
simplify_const_poly_int_tests<N>::run ()
{
+ using poly_int64 = poly_int<N, HOST_WIDE_INT>;
rtx x1 = gen_int_mode (poly_int64 (1, 1), QImode);
rtx x2 = gen_int_mode (poly_int64 (-80, 127), QImode);
rtx x3 = gen_int_mode (poly_int64 (-79, -128), QImode);
--
2.39.3

View File

@ -0,0 +1,64 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
TOOLCHAIN_PATCH_DEV="sam"
PATCH_GCC_VER="11.4.0"
PATCH_VER="10"
MUSL_VER="2"
MUSL_GCC_VER="11.4.0"
if [[ ${PV} == *.9999 ]] ; then
MY_PV_2=$(ver_cut 2)
MY_PV_3=1
if [[ ${MY_PV_2} == 0 ]] ; then
MY_PV_2=0
MY_PV_3=0
else
MY_PV_2=$((${MY_PV_2} - 1))
fi
# e.g. 12.2.9999 -> 12.1.1
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
# Cheesy hack for RCs
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
MY_P=${PN}-${MY_PV}
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
TOOLCHAIN_SET_S=no
S="${WORKDIR}"/${MY_P}
fi
inherit toolchain
if tc_is_live ; then
# Needs to be after inherit (for now?), bug #830908
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
# Don't keyword live ebuilds
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
:;
fi
if [[ ${CATEGORY} != cross-* ]] ; then
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
# If GCC is enabling CET by default, we need glibc to be built with support for it.
# bug #830454
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
DEPEND="${RDEPEND}"
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
fi
src_prepare() {
local p upstreamed_patches=(
# add them here
)
for p in "${upstreamed_patches[@]}"; do
rm -v "${WORKDIR}/patch/${p}" || die
done
toolchain_src_prepare
eapply_user
}

View File

@ -0,0 +1,64 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
TOOLCHAIN_PATCH_DEV="sam"
PATCH_GCC_VER="12.3.0"
PATCH_VER="2"
MUSL_VER="1"
MUSL_GCC_VER="12.3.0"
if [[ ${PV} == *.9999 ]] ; then
MY_PV_2=$(ver_cut 2)
MY_PV_3=1
if [[ ${MY_PV_2} == 0 ]] ; then
MY_PV_2=0
MY_PV_3=0
else
MY_PV_2=$((${MY_PV_2} - 1))
fi
# e.g. 12.2.9999 -> 12.1.1
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
# Cheesy hack for RCs
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
MY_P=${PN}-${MY_PV}
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
TOOLCHAIN_SET_S=no
S="${WORKDIR}"/${MY_P}
fi
inherit toolchain
if tc_is_live ; then
# Needs to be after inherit (for now?), bug #830908
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
# Don't keyword live ebuilds
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
:;
fi
if [[ ${CATEGORY} != cross-* ]] ; then
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
# If GCC is enabling CET by default, we need glibc to be built with support for it.
# bug #830454
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
DEPEND="${RDEPEND}"
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
fi
src_prepare() {
local p upstreamed_patches=(
# add them here
)
for p in "${upstreamed_patches[@]}"; do
rm -v "${WORKDIR}/patch/${p}" || die
done
toolchain_src_prepare
eapply_user
}

View File

@ -0,0 +1,65 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
TOOLCHAIN_PATCH_DEV="sam"
PATCH_GCC_VER="13.2.0"
PATCH_VER="8"
MUSL_VER="2"
MUSL_GCC_VER="13.2.0"
if [[ ${PV} == *.9999 ]] ; then
MY_PV_2=$(ver_cut 2)
MY_PV_3=1
if [[ ${MY_PV_2} == 0 ]] ; then
MY_PV_2=0
MY_PV_3=0
else
MY_PV_2=$((${MY_PV_2} - 1))
fi
# e.g. 12.2.9999 -> 12.1.1
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
# Cheesy hack for RCs
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
MY_P=${PN}-${MY_PV}
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
TOOLCHAIN_SET_S=no
S="${WORKDIR}"/${MY_P}
fi
inherit toolchain
if tc_is_live ; then
# Needs to be after inherit (for now?), bug #830908
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
# Don't keyword live ebuilds
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
:;
fi
if [[ ${CATEGORY} != cross-* ]] ; then
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
# If GCC is enabling CET by default, we need glibc to be built with support for it.
# bug #830454
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
DEPEND="${RDEPEND}"
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
fi
src_prepare() {
local p upstreamed_patches=(
# add them here
)
for p in "${upstreamed_patches[@]}"; do
rm -v "${WORKDIR}/patch/${p}" || die
done
toolchain_src_prepare
eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
eapply_user
}

View File

@ -0,0 +1,65 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
TOOLCHAIN_PATCH_DEV="sam"
PATCH_GCC_VER="14.0.0"
PATCH_VER="3"
MUSL_VER="1"
MUSL_GCC_VER="14.0.0"
if [[ ${PV} == *.9999 ]] ; then
MY_PV_2=$(ver_cut 2)
MY_PV_3=1
if [[ ${MY_PV_2} == 0 ]] ; then
MY_PV_2=0
MY_PV_3=0
else
MY_PV_2=$((${MY_PV_2} - 1))
fi
# e.g. 12.2.9999 -> 12.1.1
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
# Cheesy hack for RCs
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
MY_P=${PN}-${MY_PV}
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
TOOLCHAIN_SET_S=no
S="${WORKDIR}"/${MY_P}
fi
inherit toolchain
if tc_is_live ; then
# Needs to be after inherit (for now?), bug #830908
EGIT_BRANCH=master
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
# Don't keyword live ebuilds
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
:;
fi
if [[ ${CATEGORY} != cross-* ]] ; then
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
# If GCC is enabling CET by default, we need glibc to be built with support for it.
# bug #830454
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
DEPEND="${RDEPEND}"
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
fi
src_prepare() {
local p upstreamed_patches=(
# add them here
)
for p in "${upstreamed_patches[@]}"; do
rm -v "${WORKDIR}/patch/${p}" || die
done
toolchain_src_prepare
eapply_user
eapply "${FILESDIR}"/${P}-pgo-bootstrap.patch
}

Some files were not shown because too many files have changed in this diff Show More