Merge pull request #399 from flatcar/buildbot/weekly-package-updates-2022-12-12

Weekly package updates 2022-12-12
This commit is contained in:
Krzesimir Nowak 2022-12-14 14:50:32 +01:00 committed by GitHub
commit a0b03dfd51
427 changed files with 2850 additions and 2143 deletions

View File

@ -67,6 +67,7 @@ dev-util/strace
dev-vcs/git dev-vcs/git
eclass/alternatives.eclass eclass/alternatives.eclass
eclass/app-alternatives.eclass
eclass/autotools.eclass eclass/autotools.eclass
# Still has some Flatcar modifications, will need to upstream it first. # Still has some Flatcar modifications, will need to upstream it first.
# #

View File

@ -3,53 +3,68 @@
EAPI=8 EAPI=8
DESCRIPTION="/bin/awk and /usr/bin/awk symlinks" ALTERNATIVES=(
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives" gawk:sys-apps/gawk
SRC_URI="" busybox:sys-apps/busybox
S=${WORKDIR} mawk:sys-apps/mawk
nawk:sys-apps/nawk
)
LICENSE="CC0-1.0" inherit app-alternatives
SLOT="0"
DESCRIPTION="/bin/awk and /usr/bin/awk symlinks"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="busybox +gawk mawk nawk split-usr" IUSE="split-usr"
REQUIRED_USE="^^ ( busybox gawk mawk nawk )"
RDEPEND=" RDEPEND="
busybox? ( sys-apps/busybox )
gawk? ( sys-apps/gawk )
mawk? ( sys-apps/mawk )
nawk? ( sys-apps/nawk )
!app-eselect/eselect-awk !app-eselect/eselect-awk
" "
src_install() { src_install() {
local alt=$(get_alternative)
local root_prefix= local root_prefix=
use split-usr && root_prefix=../../bin/ use split-usr && root_prefix=../../bin/
# We could consider setting AWK=... like we do for yacc & lex, # We could consider setting AWK=... like we do for yacc & lex,
# but it would need some testing with a fair amount of packages first, # but it would need some testing with a fair amount of packages first,
# as autoconf prefers gawk. # as autoconf prefers gawk.
if use busybox; then case ${alt} in
dosym "${root_prefix}busybox" /usr/bin/awk busybox)
newman - awk.1 <<<".so busybox.1" dosym "${root_prefix}busybox" /usr/bin/awk
elif use gawk; then ;;
dosym gawk /usr/bin/awk *)
newman - awk.1 <<<".so gawk.1" dosym "${alt}" /usr/bin/awk
elif use mawk; then ;;
dosym mawk /usr/bin/awk esac
newman - awk.1 <<<".so mawk.1"
elif use nawk; then newman - awk.1 <<<".so ${alt}.1"
dosym nawk /usr/bin/awk
newman - awk.1 <<<".so nawk.1"
else
die "Invalid USE flag combination (broken REQUIRED_USE?)"
fi
if use split-usr; then if use split-usr; then
dosym ../usr/bin/awk /bin/awk dosym ../usr/bin/awk /bin/awk
fi fi
} }
pkg_preinst() {
local v
for v in ${REPLACING_VERSIONS}; do
# if we are upgrading from a new enough version, leftover manpage
# symlink cleanup was done already
if ver_test "${v}" -ge 3; then
return
fi
done
# otherwise, remove leftover files/symlinks created by eselect-awk (sic!)
shopt -s nullglob
local files=( "${EROOT}"/usr/share/man/man1/awk.1* )
shopt -u nullglob
if [[ ${files[@]} ]]; then
einfo "Cleaning up leftover manpage symlinks from eselect-awk ..."
rm -v "${files[@]}" || die
fi
}
pkg_postrm() { pkg_postrm() {
# make sure we don't leave the user without the symlinks, since # make sure we don't leave the user without the symlinks, since
# they've not been owned by any other package # they've not been owned by any other package

View File

@ -3,54 +3,42 @@
EAPI=8 EAPI=8
DESCRIPTION="yacc symlinks" ALTERNATIVES=(
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives" "bison:>=sys-devel/bison-3.8.2-r1"
SRC_URI="" byacc:dev-util/byacc
S=${WORKDIR} "reference:>=dev-util/yacc-1.9.1-r7"
)
LICENSE="CC0-1.0" inherit app-alternatives
SLOT="0"
DESCRIPTION="yacc symlinks"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+bison byacc reference"
REQUIRED_USE="^^ ( bison byacc reference )"
RDEPEND=" RDEPEND="
bison? ( >=sys-devel/bison-3.8.2-r1 )
byacc? ( dev-util/byacc )
reference? ( >=dev-util/yacc-1.9.1-r7 )
!<dev-util/yacc-1.9.1-r7 !<dev-util/yacc-1.9.1-r7
!<sys-devel/bison-3.8.2-r1 !<sys-devel/bison-3.8.2-r1
" "
src_install() { src_install() {
if use bison; then local alt=$(get_alternative)
case ${alt} in
# bison installs its own small wrapper script 'yacc-bison' # bison installs its own small wrapper script 'yacc-bison'
# around bison(1). # around bison(1).
dosym yacc.bison /usr/bin/yacc bison) alt=yacc.bison;;
newman - yacc.1 <<<".so yacc.bison.1" reference) alt=yacc-reference;;
esac
# Leaving this for now to be safe, as it's closer to pre-alternatives dosym "${alt}" /usr/bin/yacc
# status quo to leave it unset and let autoconf probe for Bison by itself newman - yacc.1 <<<".so ${alt}.1"
# as it prefers it anyway, and might be a CPP-like situation wrt
# calling bison or bison -y if YACC is set.
#newenvd - 90yacc <<-EOF
# YACC=yacc.bison
#EOF
elif use byacc; then
dosym byacc /usr/bin/yacc
newman - yacc.1 <<<".so byacc.1"
# Leaving this for now to be safe, as it's closer to pre-alternatives
# status quo to leave it unset and let autoconf probe for Bison by itself
# as it prefers it anyway, and might be a CPP-like situation wrt
# calling bison or bison -y if YACC is set.
if [[ ${alt} != yacc.bison ]]; then
newenvd - 90yacc <<-EOF newenvd - 90yacc <<-EOF
YACC=byacc YACC=${alt}
EOF EOF
elif use reference; then
dosym yacc-reference /usr/bin/yacc
newman - yacc.1 <<<".so yacc-reference.1"
newenvd - 90yacc <<-EOF
YACC=yacc
EOF
else
die "Invalid USE flag combination (broken REQUIRED_USE?)"
fi fi
} }

View File

@ -1,2 +1,4 @@
DIST libarchive-3.6.1.tar.xz 5241148 BLAKE2B e7b79e97545dabeac164069e87adbd2081d3bd75c22f80b3797c6e487a477b3f6347b6fc14c76668eb69f2f2e5dcdd5a33a694e0a292ce426b8d0d93435218cf SHA512 2e5a72edc468080c0e8f29e07d9c33826ffb246fa040ec42399bedeecf698b7555f69ffd15057ad79c0f50cd4926d43174599d99632b1b99ec6cd159c43a70b8 DIST libarchive-3.6.1.tar.xz 5241148 BLAKE2B e7b79e97545dabeac164069e87adbd2081d3bd75c22f80b3797c6e487a477b3f6347b6fc14c76668eb69f2f2e5dcdd5a33a694e0a292ce426b8d0d93435218cf SHA512 2e5a72edc468080c0e8f29e07d9c33826ffb246fa040ec42399bedeecf698b7555f69ffd15057ad79c0f50cd4926d43174599d99632b1b99ec6cd159c43a70b8
DIST libarchive-3.6.1.tar.xz.asc 833 BLAKE2B 8a1ca13491f3b29b322ab281a80eaef9ca2cca680e18a0ed5ff626e8808b6c9a5eb4cdd6eaf00fb771f361d84d7785c103a9a0665d812f1f27ac66f5d1a2e1da SHA512 0411a9bdc9bb058b289b5cc102a220216420bf01ea213e771a16246ed48e670f3426e8555bac27262b686b40b7b2239907c4eef2bf43d812d73a69ccb2a5b00c DIST libarchive-3.6.1.tar.xz.asc 833 BLAKE2B 8a1ca13491f3b29b322ab281a80eaef9ca2cca680e18a0ed5ff626e8808b6c9a5eb4cdd6eaf00fb771f361d84d7785c103a9a0665d812f1f27ac66f5d1a2e1da SHA512 0411a9bdc9bb058b289b5cc102a220216420bf01ea213e771a16246ed48e670f3426e8555bac27262b686b40b7b2239907c4eef2bf43d812d73a69ccb2a5b00c
DIST libarchive-3.6.2.tar.xz 5213196 BLAKE2B 355b5d402e352dee802513485ce7e047af58d6de5b9bf6a49f3fd8d7b94117007598820ac979585c0da79747e8b63b70ab151131182368a11f97a047cf9029d4 SHA512 a12bb6839e13a0be1099f42c650fc90fbfe62d32ce38bcbb4794206d29b2c782ae1115124d0e5f6b9716514213af32b05e4a42eb196447674a5f9a2a32bee043
DIST libarchive-3.6.2.tar.xz.asc 659 BLAKE2B a4b0035ab2bda4129cdf0c99266cd1e5f4772d90de6e348c75958bc803f369d6abea85d9730c6c9a216466b35697faad8d265fb2c285545887eafde27d828887 SHA512 403e5f7dec14d8b1cc01fad5a249e7b7618a7b45bcb3361ea80d67d76b591b12ce97f2c88b23d5486505dd3b34c1f1643e02235a3e5fc5150ee5735946092efe

View File

@ -42,7 +42,7 @@ DEPEND="${RDEPEND}
) )
" "
BDEPEND=" BDEPEND="
verify-sig? ( sec-keys/openpgp-keys-libarchive ) verify-sig? ( <sec-keys/openpgp-keys-libarchive-20221209 )
" "
PATCHES=( PATCHES=(

View File

@ -0,0 +1,126 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit multilib-minimal toolchain-funcs verify-sig
DESCRIPTION="Multi-format archive and compression library"
HOMEPAGE="https://www.libarchive.org/"
SRC_URI="
https://www.libarchive.de/downloads/${P}.tar.xz
verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
"
LICENSE="BSD BSD-2 BSD-4 public-domain"
SLOT="0/13"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle static-libs xattr zstd"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/libarchive.org.asc
RDEPEND="
sys-libs/zlib[${MULTILIB_USEDEP}]
acl? ( virtual/acl[${MULTILIB_USEDEP}] )
blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
!expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
kernel_linux? (
xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
)
dev-libs/openssl:0=[${MULTILIB_USEDEP}]
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] )
lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}
kernel_linux? (
virtual/os-headers
e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
)
"
BDEPEND="
verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
"
multilib_src_configure() {
export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
local myconf=(
$(use_enable acl)
$(use_enable static-libs static)
$(use_enable xattr)
$(use_with blake2 libb2)
$(use_with bzip2 bz2lib)
$(use_with expat)
$(use_with !expat xml2)
$(use_with iconv)
$(use_with lz4)
$(use_with lzma)
$(use_with lzo lzo2)
$(use_with nettle)
--with-zlib
$(use_with zstd)
# Windows-specific
--without-cng
)
if multilib_is_native_abi ; then
myconf+=(
--enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
--enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
--enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
)
else
myconf+=(
--disable-bsdcat
--disable-bsdcpio
--disable-bsdtar
)
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
multilib_src_compile() {
if multilib_is_native_abi ; then
emake
else
emake libarchive.la
fi
}
src_test() {
mkdir -p "${T}"/bin || die
# tests fail when lbzip2[symlink] is used in place of ref bunzip2
ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
local -x PATH=${T}/bin:${PATH}
multilib-minimal_src_test
}
multilib_src_test() {
# sandbox is breaking long symlink behavior
local -x SANDBOX_ON=0
local -x LD_PRELOAD=
# some locales trigger different output that breaks tests
local -x LC_ALL=C
emake check
}
multilib_src_install() {
if multilib_is_native_abi ; then
emake DESTDIR="${D}" install
else
local install_targets=(
install-includeHEADERS
install-libLTLIBRARIES
install-pkgconfigDATA
)
emake DESTDIR="${D}" "${install_targets[@]}"
fi
# Libs.private: should be used from libarchive.pc instead
find "${ED}" -type f -name "*.la" -delete || die
}

View File

@ -28,7 +28,7 @@ else
" "
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi fi
S="${WORKDIR}/${MY_P}" S="${WORKDIR}/${MY_P}"

View File

@ -1,2 +1,3 @@
DIST portage-utils-0.94.1.tar.xz 1871688 BLAKE2B bec5ddd514b397c157c3b1bff70d61730f15804a6751f56eb69c4030a35fc6a6b11fa1e2bde94332772660f02bf9428623210733ae9e2f1290f29aa3b31a1813 SHA512 29fdb4093997eb95703d407da6b00305c949f0a00ae3aa5cfb2c47b66bddc59e034fae114663b40b611f906332066b648018aa4e5bc1b935e61a64f4b4bf1088 DIST portage-utils-0.94.1.tar.xz 1871688 BLAKE2B bec5ddd514b397c157c3b1bff70d61730f15804a6751f56eb69c4030a35fc6a6b11fa1e2bde94332772660f02bf9428623210733ae9e2f1290f29aa3b31a1813 SHA512 29fdb4093997eb95703d407da6b00305c949f0a00ae3aa5cfb2c47b66bddc59e034fae114663b40b611f906332066b648018aa4e5bc1b935e61a64f4b4bf1088
DIST portage-utils-0.94.3.tar.xz 1804720 BLAKE2B b0239a26d878db6dd73c9ee54f586526f8812921775126ef74afbe089186fdc5ca7197847e204c6ecbf9d79b6e2a6173cb0c39d4a26653ed0db2d7f9b10e88c5 SHA512 bf8fcccc26bb985bf7664f6ab0227a5251c3f918199de0c4e4c95b7107eb72eee367d1d524b5d9608b3c7eea9b1fae789456390cbb0d375297b807bb98644e01 DIST portage-utils-0.94.3.tar.xz 1804720 BLAKE2B b0239a26d878db6dd73c9ee54f586526f8812921775126ef74afbe089186fdc5ca7197847e204c6ecbf9d79b6e2a6173cb0c39d4a26653ed0db2d7f9b10e88c5 SHA512 bf8fcccc26bb985bf7664f6ab0227a5251c3f918199de0c4e4c95b7107eb72eee367d1d524b5d9608b3c7eea9b1fae789456390cbb0d375297b807bb98644e01
DIST portage-utils-0.94.4.tar.xz 1804252 BLAKE2B 4bdb3dca331eeeaeca34b949aa0228d81df71888fa7cb07f878958939f7820f6887ebb43f0a89d8ed8d787c152a631a731bc53f30c8241ca2530ee9420fea1e2 SHA512 d59a09c9b2dd4de8ed320a5b1c943a1d5dcdef41a057fbfeb00ed136e2ba87375d4562861de5b0e44bad986916d0f58487f3d93deaeb44e96385535d85d74217

View File

@ -0,0 +1,75 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
DESCRIPTION="Small and fast Portage helper tools written in C"
HOMEPAGE="https://wiki.gentoo.org/wiki/Portage-utils"
if [[ ${PV} == *9999 ]]; then
inherit git-r3 autotools
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/portage-utils.git"
else
SRC_URI="https://dev.gentoo.org/~grobian/distfiles/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="openmp +qmanifest +qtegrity static"
RDEPEND="
qmanifest? (
!static? (
app-crypt/gpgme:=
app-crypt/libb2:=
dev-libs/openssl:=
sys-libs/zlib:=
)
)
qtegrity? (
!static? (
dev-libs/openssl:=
)
)"
DEPEND="${RDEPEND}
qmanifest? (
static? (
app-crypt/gpgme[static-libs]
app-crypt/libb2[static-libs]
dev-libs/openssl[static-libs]
sys-libs/zlib[static-libs]
)
)
qtegrity? (
static? (
dev-libs/openssl[static-libs]
)
)"
BDEPEND="virtual/pkgconfig"
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
pkg_setup() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
src_prepare() {
default
[[ ${PV} == *9999 ]] && eautoreconf
}
src_configure() {
use static && append-ldflags -static
econf \
--disable-maintainer-mode \
--with-eprefix="${EPREFIX}" \
$(use_enable qmanifest) \
$(use_enable qtegrity) \
$(use_enable openmp)
}

View File

@ -0,0 +1 @@
- XZ utils ([5.2.9](https://git.tukaani.org/?p=xz.git;a=blob;f=NEWS;h=ebb303084403445088ec97dfedf0461a6e5b5077;hb=d8a898eb9974683bc725c49ec76722f9a8758f48))

View File

@ -1,21 +1,18 @@
DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c
DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8 DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8
DIST Python-3.10.8.tar.xz 19619508 BLAKE2B 8bbfbae34fbc517c4a746e5e4c360efc57aca175c50fe46a378aa9d6d023a3d90c7df816149e4cca0c9b64ca0142267d8df552e8f8dc53a04b5251e8848dce74 SHA512 40e3e77d79618c81d6fc57c5d119b99c2959dcf932f40aad6b26f2ec39c5e713e6ff298f7597b4fad2ab94680db3732483b5ca0a45e6ae58c14580b3ea44cb0f DIST Python-3.10.9.tar.xz 19612112 BLAKE2B ef2d063a9fbaf234aa4a47149cb184a0379dc403515df10249104a5092750cdaf22ad47916d34e17dd68fff1c30338c0375f4e4e3cc9bde33e0896c1c3ba655b SHA512 d66ea8adeb6dc4951e612175f8838b3092967ff275b7a3470f2d86f470036aa2221e722c3144d90bcd230b88efd53dde204213f72f703e524e4b833e2ccc68e2
DIST Python-3.10.8.tar.xz.asc 833 BLAKE2B 1e94822a57d055f5db1a5d2915df24be9d6fd9e6b301d148919a7643285a93ca1c8a16db7d74e0adabe7d2a21678b5126e3df7fffb253b35f8db6f74284a0aba SHA512 0c2ef09d898257ba5e9ec7c5bb224a7e50e5ebca96843b4d9e25be6cdd2f17144772aafc92280af20c21491e3c8cedc697414688ece613c93b28ff7ecddcf93f DIST Python-3.10.9.tar.xz.asc 833 BLAKE2B 8895c6cb5031b2463cc6ba3e0dc56bee40c2e99117c062f9c72f2b7adb0d5a49782b968abfc764117e8513bd12816915245677c25b1710e3dae3c9e26937c2b9 SHA512 525e166ede6836086de814c26fc880f41eaf1ed4bff6118f00342e42f7ab1c47148447ced1b565e146d3125fa06b5cd6b394a256bc61096766b26e07f18bbf10
DIST Python-3.11.0.tar.xz 19819768 BLAKE2B 3a9852b8973e0e6ce414742f08f17f2c239d20a4e437e95656a325e151d04f4751f07fce955e55f2818af6810b767f2438b3d14e9f2313fe607bab31c47a2fca SHA512 314eef88ae0d68760f34d7a32f238fd2ecb27c50963baa7357c42ad8159026ec50229a0b31d83c39710a472904a06422afc082f9658a90a1dc83ccb74c08039d DIST Python-3.11.1.tar.xz 19856648 BLAKE2B 2a8942e7a145cfcc5b6932865ff9a1afd300bf2e6c4c915e88d0e849441196a3a4cacf94f3db87eaa7538872059085cf7eeff91c436f424448f85d4b180a6f24 SHA512 5edd70c881e083c96199c60471f18f9ebc4c97a2d45dc66f89e16d7c3638d8a5d2cbf2e84b1be3d7f1178ce9f7fa4197884385c1ee3618ff66a538f872f318ed
DIST Python-3.11.0.tar.xz.asc 833 BLAKE2B 7133f390ff8e7d856466c8d310903ef694196f5d945d6b753dcd7bf3e5416d69ef0e2320252ecce419ecce07ac5e2a37ad1657e2ded393d0c38a6521a65cebc2 SHA512 d20fb152c5b16cfef1f59af588f7576eb45c903d9e15fd4ad0e15fd32bef7ffd951b99a062d2944234ecffcf29eb9266544e92d2f6584710cbb20ba38f8ac224 DIST Python-3.11.1.tar.xz.asc 833 BLAKE2B 27c6101b2022cb7bea3e6082f1554b31cceb8cabe720e4b19391f550e870588c4defd1552c580a7e063638b80e8b8f415e54a11cf40ae3b0f449500c2e9babc6 SHA512 81ed05c2adf38552bdc5ac761704f2720a646d56681a919a6bfa51f1a4b42cd14edb9c84d58664dbc8e7b561cd78d82ae6b10dda423e1fae543bc7fa4bf3f78e
DIST Python-3.12.0a1.tar.xz 19776600 BLAKE2B 035e75c5713f9ff139f6df50329d9b74ade3b255f5413311d7012b2298dd3cb6d71ed11f5855d01e79d6bac334f80bd6a3340591fc3654d9723fd1c5f80eb750 SHA512 fa69dddf36dfe89b869d4de71cb8e878ef1e8be2b96ddfe2d58286710dd09b64db67c130d0438e3cea6679f6e9cd6bb83633691c8b7d6f346b730668866a28f7 DIST Python-3.12.0a3.tar.xz 19695444 BLAKE2B c869e68612b7b32a3a9cdb5accd1fec3453abbea68ca6993e7ce6d5f8deead50902ee6026c3bf2a3faf92e5a571b6b71fbcfc85d49fa03b4ac12ab5dba3f486a SHA512 82d88adda53a1e5c16fc7165ac0d55f3828bae9249d361fbf7237d8826bd5acd941befb9b2c74f815a251b216d377f416831fbd233f1bfef31c2cab73b6554d1
DIST Python-3.12.0a1.tar.xz.asc 963 BLAKE2B 5027ce705b80ad2d186f45c27d00542df1090dcaa30e9d97e483d7debdaeb35b5bf94c9f0cd000715a8ccf6dc5f752e0129bb42e48bfd6b308754bd73ee26090 SHA512 4db7946d27505da9c9b358a3b0fc2f47bb79b10bbcdb8f3ce2f918d1b74665e41a51600de3b94d50b126b66c72f191f8532f4030af184698c32430c35ef8d821 DIST Python-3.12.0a3.tar.xz.asc 963 BLAKE2B ff0a4eb7a3e27281494450dca7f23f4e1816e18d0487e09b6a9f58d441b766f32e8653b7e01753c8353bb34a235b8296cbe975ee7a917ae4a24e5b8875b4ff5f SHA512 e25a42982f3cab6e38ef7a4f5bfd71ad25811f52dffeffbb827ee9f48bf45003edad14ffdd3289bfda113a34b7ef818d04a413d0da7e8ca52d0c47f9b4475dbb
DIST Python-3.12.0a2.tar.xz 19633668 BLAKE2B 03c5b5637d43bd324f3dce2d16d8d12a585b2bbed82e165c1491e798f9a321547ab035372fe775b28098c6b8f65fc115f77d9ef677ec34da65cbf882689d6181 SHA512 0f830fdb514078c5403727b31fd81912382eca4decb52ae9bfb0f00b8a007be9f8e29bad349034ec97e2229f60fe0baae417227413350485d747d31f4567d5c1 DIST Python-3.8.16.tar.xz 19046724 BLAKE2B cbdeec7961d39cb9ab4960760b5d4c7ae71675c174156aa9f6fca55ee92a93a937ef39defe86e423237a25e0e24703233ce4b91dc97005b6ffc1f342ddd9e22c SHA512 d206e80806409410c00ef8acd8c3d90e3cc9553f996d0a57faa63802f2415e9d7591542b2e84b5e8e79245f40f6478790b5ba2acf1da98ebbc9495999183f7fd
DIST Python-3.12.0a2.tar.xz.asc 963 BLAKE2B a5508457e61db805cbadcef66ebb92d6e62a797704827483cca616d6441a60f99ec7a826ad3ebdaa7c92865a9aa2e5b41fde248467d5b9e1c57fb4295f7910b4 SHA512 f0c22e071c68d648c8cf2823647f0c807db41b81b94b8100b50d2049a47f19475a4323c5ac488eb5a3798f942978054f358090c1e460804232bb46093fb3fd55 DIST Python-3.8.16.tar.xz.asc 833 BLAKE2B 678dabc558d013b104bf9e65d4319076c4730a67093a66fefc073b429c640d4facb31a0d6b7238deb08b265586a0cfb2c345051fe4df7bf5001d7317e6c06c9b SHA512 e93c394c0c5afcaaab625a3bd540dcc8e0ab946803d212343b8d1d6d5e6b89b09b6a20607bab0d858b30389a03305d57e14548605a65277d053c7817f32f4546
DIST Python-3.8.15.tar.xz 19038408 BLAKE2B 4ce84171b2f7ca8c9cf1d130adf70f16a0899766cea98965c3e7afcb84b73c482bcb400b59b91736d20e31c57be79edc178f6eeecd775a1f8920a8fbfdd90c24 SHA512 4fb3827b13c2452faa75e5ed18dddf381e80b4fffcfde046e289b4629cff0bb87fba1d09916b9b8a6f8039dc422c952293ebdb381c49f8ca7e7893ae4be6c28d DIST Python-3.9.16.tar.xz 19738796 BLAKE2B 70dedeb70d9d8f27e4f6db5106623e087c61d451c7a04639cf8d3503ad02d4d43f1b36d0cdf1131aefc9bf6e677e561227dd4baef2c2c3d2dbf6d3e7dc36bd94 SHA512 b5fd0afe131c82bbce6ddf887c59eef6945910d6a9a2bc87c0927f4e4a096bf9ca4d25bcb729c40f6ebb8a65fbe8bf7b0b97a7c4a8c9e551240eb4f34b878653
DIST Python-3.8.15.tar.xz.asc 833 BLAKE2B bff055e28f4a2e59bb9e6d131ed39f954b729ac791279a6ac618521b545ace16e4eba3aaab629ca1c155d973c0c255b3d184b38fd82ee943d59a328d0603b1b6 SHA512 8ed69db7773a111e7b356848e18fc35b8835426e8d2cb8f311644d511682960c97740232c32c92196391adaecebc0ff842c2f918aad07e5dd46b168e8277ac04 DIST Python-3.9.16.tar.xz.asc 833 BLAKE2B 416b4a4be06e101c5971c12a6f21229c425bcabaea58487e0d1b24d6dea318c58806ee43892fc704df8252670451bd6a4a2610c25672d3983ddb081fed34b92d SHA512 468959c36a3ec6136f57a39475fff4745a25be0cb5d3d58cf3e5faf0b9ce2d2a8b89f1f9fea1479c4c6ad12ac49e97c1cfd4291c978bb3d30df5a582ec315210
DIST Python-3.9.15.tar.xz 19712208 BLAKE2B a8490c998c89ed4e3e87ef48e3b5d622e5d06ebd7b8b79db564d668cd1f0c7fe89e0ef37ec4481ff82b30778e2be1a96c1b16199b9dce1f82de32f73b4343ddd SHA512 9310d263bc7a7925f73a6f66fd254ae61f377f43011a6bc5c58e57c8b170c2da4f197a646927ab9d05f8912ed8be4369c09576063931a3f93c3b0228ccb33a39
DIST Python-3.9.15.tar.xz.asc 833 BLAKE2B c325fb52fae254153456c24c1039b07c9ccf8734df3665640215d35219ccacb705f99d94c9f8b644d15d4ea4612f5ac0da599814f68f7d3b6fc1fdc175db9002 SHA512 722625091731536757b9db447590c31620665133d45076367a3281f2ee3add23a781b10ce5cea582d65caabb18814583c1a347689d2b396214e36a6771182f38
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.8_p3-r1.tar.xz 16468 BLAKE2B be00739bdfc78623781139b8218d5173f13f252d3394482c38aeda8efd9b6bb4988a8dbec1b521a028448a0a92c7dce8b979eb2c38fdd6749bd9be682847d719 SHA512 094a058d2b956dfe017ae8b1da4c8da0a6aad82b70eebe9cdeb8d86bfe8b625aba57526186c97a805392c6baa62e5daaf005b54864e096f946f40ef3ce703bda DIST python-gentoo-patches-3.10.9.tar.xz 12216 BLAKE2B ced4f951089c51ddaab6c62ade9d2c84f69e7e1baf2acf5247559534c7d0fb0e88dca1222f5bd2209b4e61f5aca17279b8054f269535dbc10de0786c2c5779f5 SHA512 2d01f0f3831beeba004517bb82f7d616f25f08e5c755409ecff79cd68e0a619b5bf6802fffd0e5f7f39f1d9d93e65b018b91cdeb337a5e47f1651f36bea0e96e
DIST python-gentoo-patches-3.11.0_p2-r1.tar.xz 9140 BLAKE2B 3fa95d054c2702ec04f92493c1a721064a5119bfe555dc413f54977d2349d513c00586ec379ee3719e8c5a213c1c43b8702e945d1f6b746ba71dc53d70d98d9c SHA512 2372b40f5e5d391193c8560430c21d6b1d8d9aaefd8ea77aff68decc08addaea17c34ae3b3f754b6069bbab797f06361438585411276d680da2a18d6361be1fd DIST python-gentoo-patches-3.11.1.tar.xz 7076 BLAKE2B 3ec45f7529d34eabc9d9ba7fa7f8dd51d8754d9758a605b61857a9fd80386a0357837c925263ad7b0e207ff916944b94cc0e03c0f59921f839d5e51d92f0e47e SHA512 4253dbfa057a91db584b92550e2d39d87986f33041233bc400dd0254cbd95415b33fc47b0fe997bb84192c755bc16d3d31941bba4c216ee4d65facf0b48c7862
DIST python-gentoo-patches-3.12.0a1_p2-r1.tar.xz 9168 BLAKE2B c2f1018c7890518c66051a3470bb4bec45342c0656a143e0a25ea5b2ec5c27a1285345f8f6fbc7eaea5e216ae1bd2462ecd6ad251851368921cb3fe816652d43 SHA512 7c5436768e3e4de8bafe16f0709115901c90892b127e6f81c06a6da4a3a35c973cb38542180c714d0f2848972db18a0f70e33f0a4dce9b037ea0d15ace045f5a DIST python-gentoo-patches-3.12.0a3.tar.xz 6152 BLAKE2B 6c8c88100d184440cf27a4b9baf4f192310f62960b2061adca8dd423745836048f3f8489c434c51ab7572320356bc889498d68f3635f174194d6009e1b9277e4 SHA512 7b0dbcbefeafbdb2a822bb06950844ff21336ba1685a2af6bf2bd32b1ecde7c17591d01b2a018105b8c094149a9804d709c3ca17af67378644ad40fd5e02c012
DIST python-gentoo-patches-3.12.0a2.tar.xz 6164 BLAKE2B 734068ed87dae1bb30b61f42436664936f27c2507e89fde6da0ce10f791d444b54e8298810717e461b60b7fe572a8fbf2cc9c787e59f01aa0eb5fd1360b212bd SHA512 96e060dc6f2cf412cb1a1be251a6cdd2c30cd2706bfc669dfb920815bcc768b712ed53cc43ee6a1606504a19fdcd9492e7d88bf7e334e1dde2769aa7f1e6ed2d DIST python-gentoo-patches-3.8.16.tar.xz 28716 BLAKE2B 28ccad9d77a89f80f72dd12eb89d657825e80061eaa069d4c491736bffd87b235f483b9d079b9f383377ea4bc6c19471bb6a4869a37fc0401abe28e2444fd9d2 SHA512 fe94ee2851af5c87c64ea3af5c1a744a53dcb03743f824a7726803daf454f38511894e24fe68be9de4ab59d1798161a3c320748309d04afd1e77906df353a246
DIST python-gentoo-patches-3.8.15_p3-r1.tar.xz 30604 BLAKE2B 68ddeff291a70dfe22e8a0276b30db5a37d7e53dfc5d52c311573136f6fc322cddc65478684ed6339cd8156170588fe8ea3a454a5ec18e0bb91a898dc7c99f1e SHA512 ce9c73cd2b53c5c7f8bb27c65d5ea02bb7c38bfc1b25c972203fcea52bd1ffe4afcb65eedc8556b026a2faf0fc402f566c38b91ee54d6580bc958c0322e90e0a DIST python-gentoo-patches-3.9.16.tar.xz 23348 BLAKE2B 26b66e57530d167776d2aee60fd4620fc8e6c229f371616fdaa74aa2f03fd5a50b61653a5f34e0f2659901ba167af7c2aadbb0d2db773ab08bac8b3125c84b77 SHA512 8260369d96a6328ad8498359ecc56f48cb02015547065cdaec28a6bb2293bef420cb12764fae9fdd13f4a6faa60c4c402e804a22cbed7dca031ac1679032f9f6
DIST python-gentoo-patches-3.9.15_p3-r1.tar.xz 26400 BLAKE2B 27198acf3e9087b96ef15328b9da6d80837a459c62b21c9785fde77dc6f4a5c8c4ccbc3cb48e5af684a253a978c5562fb1a342e6a554d2247aa968fd5890d6f5 SHA512 d658dc89ca29070de2a39d643cc9585ae7f66232dececfd7007cb57a6c6ededd30ae030dbe9226686b8517c48fdb5ed7e681decb64b207e41173a0993f461aea

View File

@ -10,7 +10,7 @@ inherit python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc} MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}" MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2) PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}-r1" PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language" DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE=" HOMEPAGE="
@ -230,6 +230,9 @@ src_configure() {
local -x OPT= local -x OPT=
if tc-is-cross-compiler ; then if tc-is-cross-compiler ; then
# 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 # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions # propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD} local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
@ -241,6 +244,8 @@ src_configure() {
local myeconfargs_cbuild=( local myeconfargs_cbuild=(
"${myeconfargs[@]}" "${myeconfargs[@]}"
--libdir="${cbuild_libdir:2}"
# As minimal as possible for the mini CBUILD Python # As minimal as possible for the mini CBUILD Python
# we build just for cross. # we build just for cross.
--without-lto --without-lto
@ -253,7 +258,10 @@ src_configure() {
mkdir "${WORKDIR}"/${P}-${CBUILD} || die mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build. # Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die cat >> Makefile <<-EOF || die
@ -276,7 +284,7 @@ src_configure() {
# not in src_compile, because CHOST configure for Python # not in src_compile, because CHOST configure for Python
# will check the existence of the Python it was pointed to # will check the existence of the Python it was pointed to
# immediately. # immediately.
emake PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
popd &> /dev/null || die popd &> /dev/null || die
fi fi

View File

@ -10,7 +10,7 @@ inherit python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc} MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}" MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2) PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}-r1" PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language" DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE=" HOMEPAGE="
@ -219,6 +219,9 @@ src_configure() {
local -x OPT= local -x OPT=
if tc-is-cross-compiler ; then if tc-is-cross-compiler ; then
# 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 # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions # propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD} local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
@ -230,6 +233,8 @@ src_configure() {
local myeconfargs_cbuild=( local myeconfargs_cbuild=(
"${myeconfargs[@]}" "${myeconfargs[@]}"
--libdir="${cbuild_libdir:2}"
# As minimal as possible for the mini CBUILD Python # As minimal as possible for the mini CBUILD Python
# we build just for cross to satisfy --with-build-python. # we build just for cross to satisfy --with-build-python.
--without-lto --without-lto
@ -245,7 +250,10 @@ src_configure() {
mkdir "${WORKDIR}"/${P}-${CBUILD} || die mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build. # Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die cat >> Makefile <<-EOF || die
@ -268,7 +276,7 @@ src_configure() {
# not in src_compile, because CHOST configure for Python # not in src_compile, because CHOST configure for Python
# will check the existence of the --with-build-python value # will check the existence of the --with-build-python value
# immediately. # immediately.
emake PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
popd &> /dev/null || die popd &> /dev/null || die
fi fi

View File

@ -1,494 +0,0 @@
# Copyright 1999-2022 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 python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_alpha/a}
MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}-r1"
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 +ensurepip examples gdbm hardened libedit lto
+ncurses pgo +readline +sqlite +ssl test tk
"
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:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
ensurepip? ( dev-python/ensurepip-wheels )
gdbm? ( sys-libs/gdbm:=[berkdb] )
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
)
!!<sys-apps/sandbox-2.21
"
# bluetooth requires headers from bluez
DEPEND="
${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )
"
# 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}
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
rm -r Modules/_ctypes/libffi* || 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
}
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
-x test_gdb
-u-network
# 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
)
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 lto)
$(use_enable pgo optimizations)
$(use_with readline readline "$(usex libedit editline readline)")
)
# disable implicit optimization/debugging flags
local -x OPT=
if tc-is-cross-compiler ; then
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
local -x CFLAGS= LDFLAGS=
# We need to build our own Python on CBUILD first, and feed it in.
# bug #847910
local myeconfargs_cbuild=(
"${myeconfargs[@]}"
# 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
)
myeconfargs+=(
# Point the imminent CHOST build to the Python we just
# built for CBUILD.
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
)
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
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.
emake
popd &> /dev/null || die
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
# 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
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

@ -215,6 +215,9 @@ src_configure() {
local -x OPT= local -x OPT=
if tc-is-cross-compiler ; then if tc-is-cross-compiler ; then
# 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 # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions # propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD} local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
@ -226,6 +229,8 @@ src_configure() {
local myeconfargs_cbuild=( local myeconfargs_cbuild=(
"${myeconfargs[@]}" "${myeconfargs[@]}"
--libdir="${cbuild_libdir:2}"
# As minimal as possible for the mini CBUILD Python # As minimal as possible for the mini CBUILD Python
# we build just for cross to satisfy --with-build-python. # we build just for cross to satisfy --with-build-python.
--without-lto --without-lto
@ -241,7 +246,10 @@ src_configure() {
mkdir "${WORKDIR}"/${P}-${CBUILD} || die mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build. # Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die cat >> Makefile <<-EOF || die
@ -264,7 +272,7 @@ src_configure() {
# not in src_compile, because CHOST configure for Python # not in src_compile, because CHOST configure for Python
# will check the existence of the --with-build-python value # will check the existence of the --with-build-python value
# immediately. # immediately.
emake PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
popd &> /dev/null || die popd &> /dev/null || die
fi fi

View File

@ -10,7 +10,7 @@ inherit python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc} MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}" MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2) PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}-r1" PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language" DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE=" HOMEPAGE="
@ -184,6 +184,9 @@ src_configure() {
local -x OPT= local -x OPT=
if tc-is-cross-compiler ; then if tc-is-cross-compiler ; then
# 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 # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions # propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD} local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
@ -195,6 +198,8 @@ src_configure() {
local myeconfargs_cbuild=( local myeconfargs_cbuild=(
"${myeconfargs[@]}" "${myeconfargs[@]}"
--libdir="${cbuild_libdir:2}"
# As minimal as possible for the mini CBUILD Python # As minimal as possible for the mini CBUILD Python
# we build just for cross. # we build just for cross.
--without-lto --without-lto
@ -207,7 +212,10 @@ src_configure() {
mkdir "${WORKDIR}"/${P}-${CBUILD} || die mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build. # Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die cat >> Makefile <<-EOF || die
@ -230,7 +238,7 @@ src_configure() {
# not in src_compile, because CHOST configure for Python # not in src_compile, because CHOST configure for Python
# will check the existence of the Python it was pointed to # will check the existence of the Python it was pointed to
# immediately. # immediately.
emake PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
popd &> /dev/null || die popd &> /dev/null || die
fi fi

View File

@ -10,7 +10,7 @@ inherit python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_rc/rc} MY_PV=${PV/_rc/rc}
MY_P="Python-${MY_PV%_p*}" MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2) PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}-r1" PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language" DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE=" HOMEPAGE="
@ -224,6 +224,9 @@ src_configure() {
local -x OPT= local -x OPT=
if tc-is-cross-compiler ; then if tc-is-cross-compiler ; then
# 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 # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
# propagated to sysconfig for built extensions # propagated to sysconfig for built extensions
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD} local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
@ -235,6 +238,8 @@ src_configure() {
local myeconfargs_cbuild=( local myeconfargs_cbuild=(
"${myeconfargs[@]}" "${myeconfargs[@]}"
--libdir="${cbuild_libdir:2}"
# As minimal as possible for the mini CBUILD Python # As minimal as possible for the mini CBUILD Python
# we build just for cross. # we build just for cross.
--without-lto --without-lto
@ -247,7 +252,10 @@ src_configure() {
mkdir "${WORKDIR}"/${P}-${CBUILD} || die mkdir "${WORKDIR}"/${P}-${CBUILD} || die
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
# libdir correctly for cross.
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
# Avoid as many dependencies as possible for the cross build. # Avoid as many dependencies as possible for the cross build.
cat >> Makefile <<-EOF || die cat >> Makefile <<-EOF || die
@ -270,7 +278,7 @@ src_configure() {
# not in src_compile, because CHOST configure for Python # not in src_compile, because CHOST configure for Python
# will check the existence of the Python it was pointed to # will check the existence of the Python it was pointed to
# immediately. # immediately.
emake PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
popd &> /dev/null || die popd &> /dev/null || die
fi fi

View File

@ -1,121 +0,0 @@
https://src.fedoraproject.org/rpms/boost/raw/master/f/boost-1.58.0-pool.patch
https://bugzilla.redhat.com/show_bug.cgi?id=828856
https://bugs.gentoo.org/620468
https://svn.boost.org/trac10/ticket/6701
--- a/boost/pool/pool.hpp
+++ b/boost/pool/pool.hpp
@@ -27,4 +27,6 @@
#include <boost/pool/poolfwd.hpp>
+// std::numeric_limits
+#include <boost/limits.hpp>
// boost::integer::static_lcm
#include <boost/integer/common_factor_ct.hpp>
@@ -356,4 +358,11 @@
}
+ size_type max_chunks() const
+ { //! Calculated maximum number of memory chunks that can be allocated in a single call by this Pool.
+ size_type partition_size = alloc_size();
+ size_type POD_size = integer::static_lcm<sizeof(size_type), sizeof(void *)>::value + sizeof(size_type);
+ return (std::numeric_limits<size_type>::max() - POD_size) / alloc_size();
+ }
+
static void * & nextof(void * const ptr)
{ //! \returns Pointer dereferenced.
@@ -375,5 +384,7 @@
//! the first time that object needs to allocate system memory.
//! The default is 32. This parameter may not be 0.
- //! \param nmax_size is the maximum number of chunks to allocate in one block.
+ //! \param nmax_size is the maximum number of chunks to allocate in one block.
+ set_next_size(nnext_size);
+ set_max_size(nmax_size);
}
@@ -398,7 +409,7 @@
}
void set_next_size(const size_type nnext_size)
- { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0.
- //! \returns nnext_size.
- next_size = start_size = nnext_size;
+ { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0.
+ BOOST_USING_STD_MIN();
+ next_size = start_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nnext_size, max_chunks());
}
size_type get_max_size() const
@@ -408,5 +419,6 @@
void set_max_size(const size_type nmax_size)
{ //! Set max_size.
- max_size = nmax_size;
+ BOOST_USING_STD_MIN();
+ max_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nmax_size, max_chunks());
}
size_type get_requested_size() const
@@ -709,7 +721,7 @@
BOOST_USING_STD_MIN();
if(!max_size)
- next_size <<= 1;
+ set_next_size(next_size << 1);
else if( next_size*partition_size/requested_size < max_size)
- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size);
+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size));
// initialize it,
@@ -749,7 +761,7 @@
BOOST_USING_STD_MIN();
if(!max_size)
- next_size <<= 1;
+ set_next_size(next_size << 1);
else if( next_size*partition_size/requested_size < max_size)
- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size);
+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size));
// initialize it,
@@ -793,4 +805,6 @@
//! \returns Address of chunk n if allocated ok.
//! \returns 0 if not enough memory for n chunks.
+ if (n > max_chunks())
+ return 0;
const size_type partition_size = alloc_size();
@@ -841,7 +855,7 @@
BOOST_USING_STD_MIN();
if(!max_size)
- next_size <<= 1;
+ set_next_size(next_size << 1);
else if( next_size*partition_size/requested_size < max_size)
- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size);
+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size));
// insert it into the list,
--- a/libs/pool/test/test_bug_6701.cpp
+++ b/libs/pool/test/test_bug_6701.cpp
@@ -0,0 +1,27 @@
+/* Copyright (C) 2012 Étienne Dupuis
+*
+* Use, modification and distribution is subject to the
+* Boost Software License, Version 1.0. (See accompanying
+* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
+*/
+
+// Test of bug #6701 (https://svn.boost.org/trac/boost/ticket/6701)
+
+#include <boost/pool/object_pool.hpp>
+#include <boost/limits.hpp>
+
+int main()
+{
+ boost::pool<> p(1024, std::numeric_limits<size_t>::max() / 768);
+
+ void *x = p.malloc();
+ BOOST_ASSERT(!x);
+
+ BOOST_ASSERT(std::numeric_limits<size_t>::max() / 1024 >= p.get_next_size());
+ BOOST_ASSERT(std::numeric_limits<size_t>::max() / 1024 >= p.get_max_size());
+
+ void *y = p.ordered_malloc(std::numeric_limits<size_t>::max() / 768);
+ BOOST_ASSERT(!y);
+
+ return 0;
+}

View File

@ -1,29 +0,0 @@
--- a/libs/locale/build/Jamfile.v2
+++ b/libs/locale/build/Jamfile.v2
@@ -65,8 +65,8 @@
if $(ICU_LINK)
{
- ICU_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <runtime-link>shared ;
- ICU64_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin64 <runtime-link>shared ;
+ ICU_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <runtime-link>shared ;
+ ICU64_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <runtime-link>shared ;
}
else
{
@@ -124,7 +124,6 @@
<library>icuuc/<link>shared/<runtime-link>shared
<library>icudt/<link>shared/<runtime-link>shared
<library>icuin/<link>shared/<runtime-link>shared
- <dll-path>$(ICU_PATH)/bin
<runtime-link>shared ;
@@ -183,7 +182,6 @@
<library>icuuc_64/<link>shared/<runtime-link>shared
<library>icudt_64/<link>shared/<runtime-link>shared
<library>icuin_64/<link>shared/<runtime-link>shared
- <dll-path>$(ICU_PATH)/bin64
<runtime-link>shared ;

View File

@ -1,39 +0,0 @@
https://github.com/boostorg/boost/commit/791442bf1ed7a3b14893ed9e73ef2ab32b2a6026, and
https://github.com/boostorg/config/commit/1a55d1d9c6d1cf7739645080bdd92fe903b4211e without the file renaming.
--- a/boostcpp.jam
+++ b/boostcpp.jam
@@ -634,7 +634,7 @@ rule address-model ( )
return <conditional>@boostcpp.deduce-address-model ;
}
-local deducable-architectures = arm mips1 power riscv s390x sparc x86 combined ;
+local deducable-architectures = arm mips power riscv s390x sparc x86 combined ;
feature.feature deduced-architecture : $(deducable-architectures) : propagated optional composite hidden ;
for a in $(deducable-architectures)
{
@@ -645,10 +645,10 @@ rule deduce-architecture ( properties * )
{
local result ;
local filtered = [ toolset-properties $(properties) ] ;
- local names = arm mips1 power riscv s390x sparc x86 combined ;
+ local names = arm mips power riscv s390x sparc x86 combined ;
local idx = [ configure.find-builds "default architecture" : $(filtered)
: /boost/architecture//arm
- : /boost/architecture//mips1
+ : /boost/architecture//mips
: /boost/architecture//power
: /boost/architecture//riscv
: /boost/architecture//s390x
--- a/libs/config/checks/architecture/Jamfile.jam
+++ b/libs/config/checks/architecture/Jamfile.jam
@@ -18,7 +18,8 @@ obj 64 : 64.cpp ;
obj arm : arm.cpp ;
obj combined : combined.cpp ;
-obj mips1 : mips1.cpp ;
+obj mips : mips1.cpp ;
+alias mips1 : mips ; # Backwards compatibility
obj power : power.cpp ;
obj riscv : riscv.cpp ;
obj sparc : sparc.cpp ;

View File

@ -1,2 +1 @@
DIST libtool-2.4.6.tar.xz 973080 BLAKE2B 0865af9f8701ca9dc62eec8294a088d24f4a3ff541bc76acfe7b69f70637d7e8261a17d69f7d54a4177f974c429be68467883a1560edb539061966cbf7d4a356 SHA512 a6eef35f3cbccf2c9e2667f44a476ebc80ab888725eb768e91a3a6c33b8c931afc46eb23efaee76c8696d3e4eed74ab1c71157bcb924f38ee912c8a90a6521a4
DIST libtool-2.4.7.tar.xz 1016040 BLAKE2B 5e022586337637dd634bd40578ad944bec6e3b8de41f95d55777b90cc88cbc4badb3d76cbf0e638166ece1ea7de828e83590e1e6bac30c1e4b1c254a11a742f2 SHA512 47f4c6de40927254ff9ba452612c0702aea6f4edc7e797f0966c8c6bf0340d533598976cdba17f0bdc64545572e71cd319bbb587aa5f47cd2e7c1d96f873a3da DIST libtool-2.4.7.tar.xz 1016040 BLAKE2B 5e022586337637dd634bd40578ad944bec6e3b8de41f95d55777b90cc88cbc4badb3d76cbf0e638166ece1ea7de828e83590e1e6bac30c1e4b1c254a11a742f2 SHA512 47f4c6de40927254ff9ba452612c0702aea6f4edc7e797f0966c8c6bf0340d533598976cdba17f0bdc64545572e71cd319bbb587aa5f47cd2e7c1d96f873a3da

View File

@ -1,39 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal
MY_P="libtool-${PV}"
DESCRIPTION="A shared library tool for developers"
HOMEPAGE="https://www.gnu.org/software/libtool/"
SRC_URI="mirror://gnu/libtool/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
# libltdl doesn't have a testsuite.
RESTRICT="test"
RDEPEND="!<sys-devel/libtool-2.4.3-r2:2"
BDEPEND="app-arch/xz-utils"
S="${WORKDIR}/${MY_P}/libltdl"
multilib_src_configure() {
ECONF_SOURCE=${S} \
econf \
--enable-ltdl-install \
$(use_enable static-libs static)
}
multilib_src_install() {
emake DESTDIR="${D}" install
# While the libltdl.la file is not used directly, the m4 ltdl logic
# keys off of its existence when searching for ltdl support. #293921
#use static-libs || find "${D}" -name libltdl.la -delete
}

View File

@ -1,3 +1,5 @@
DIST libpcre2-10.36-patchset-01.tar.xz 1364 BLAKE2B bfef3c876a092e06972107b44794c23b758a030181f3040c8b722db166789eac794783169b468fc71334fd660bc2f1c31422a8cb8e5bdc18a69b72654b1b59b2 SHA512 04324d1efa6d155fa3ffbc328638e4674bea305fef7f57d4369ab4a6399a0f489b4c0ecfb49643feff310d91872e1673e965c48a5c60f1bf54a319f0d275c306 DIST libpcre2-10.36-patchset-01.tar.xz 1364 BLAKE2B bfef3c876a092e06972107b44794c23b758a030181f3040c8b722db166789eac794783169b468fc71334fd660bc2f1c31422a8cb8e5bdc18a69b72654b1b59b2 SHA512 04324d1efa6d155fa3ffbc328638e4674bea305fef7f57d4369ab4a6399a0f489b4c0ecfb49643feff310d91872e1673e965c48a5c60f1bf54a319f0d275c306
DIST pcre2-10.40.tar.bz2 1765440 BLAKE2B 627a204585b92238eda81b4befc88757a81d75b0d9fa26ea6d51afcdd93f7e2d102a2245bf3c8e1f5f9ddf69a316c419c948b741a64442bb567480015543e49b SHA512 00e7b48a6554b9127cb6fe24c5cacf72783416a9754ec88f62f73c52f46ed72c86c1869e62c91a31b2ff2cbafbbedabca44b3f1eb7670bc92f49d8401c7374e8 DIST pcre2-10.40.tar.bz2 1765440 BLAKE2B 627a204585b92238eda81b4befc88757a81d75b0d9fa26ea6d51afcdd93f7e2d102a2245bf3c8e1f5f9ddf69a316c419c948b741a64442bb567480015543e49b SHA512 00e7b48a6554b9127cb6fe24c5cacf72783416a9754ec88f62f73c52f46ed72c86c1869e62c91a31b2ff2cbafbbedabca44b3f1eb7670bc92f49d8401c7374e8
DIST pcre2-10.40.tar.bz2.sig 310 BLAKE2B 9609111a64b66893b12e36d1cbc77b64d6a0cc30b9288e52753785ddcab37cc3e169d0f117d94e4ad7d7ff897a6ba0a574c9a2e529c3c7e171f5a1bc6f64fe23 SHA512 faa4b47fdac1543cd323651f251b8abb94b31b5966b42d445b8cbb38c441df4742e3c3517c2bc6c0a4464e9fb5feab5d5beda1250a03d56bec2d8383be2f63ab DIST pcre2-10.40.tar.bz2.sig 310 BLAKE2B 9609111a64b66893b12e36d1cbc77b64d6a0cc30b9288e52753785ddcab37cc3e169d0f117d94e4ad7d7ff897a6ba0a574c9a2e529c3c7e171f5a1bc6f64fe23 SHA512 faa4b47fdac1543cd323651f251b8abb94b31b5966b42d445b8cbb38c441df4742e3c3517c2bc6c0a4464e9fb5feab5d5beda1250a03d56bec2d8383be2f63ab
DIST pcre2-10.41.tar.bz2 1799126 BLAKE2B 4335eae8e8a327c32092a1a9f8214fa86a2d016deb7450938c4ddc38214b72dfa8c6f9c85a03bb36b3686390d378d74fdd991563f92611c42a54915310604559 SHA512 328f331a56f152424f6021b37f8dcf660842c55d43ff39f1b49115f0d05ed651d0bbb66b43c0ed61d65022030615768b92ce5e6218a54e4e17152ec473cca68d
DIST pcre2-10.41.tar.bz2.sig 310 BLAKE2B 4ee3f9327bf568e38d1c072a4be93cdab4209e7b0cc0d183b978553cd7413ba9f292318ddf815cf44bc24872f685ee4ff9bceddd7d0e915b7be67c43fd8bf8f7 SHA512 4127258f17011be7c82d9412728863a9121c5b780514ec836769ab64ccd4cd5349a84fc85b8fdc4abb2e6fe08f4610b2a3e926116e7f1451d90d9afaa888661c

View File

@ -0,0 +1,37 @@
From 8b6b10229201e5b148979a24e06c640dbbcfbad9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Fri, 20 Feb 2015 14:34:26 +0100
Subject: [PATCH] Fix multilib
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Do not set RPATH nor add explicit -L path to compiler.
Signed-off-by: Petr Písař <ppisar@redhat.com>
--- a/pcre2-config.in
+++ b/pcre2-config.in
@@ -28,19 +28,7 @@ if test $# -eq 0; then
fi
libR=
-case `uname -s` in
- *SunOS*)
- libR=" -R@libdir@"
- ;;
- *BSD*)
- libR=" -Wl,-R@libdir@"
- ;;
-esac
-
libS=
-if test @libdir@ != /usr/lib ; then
- libS=-L@libdir@
-fi
while test $# -gt 0; do
case "$1" in
--
2.1.0

View File

@ -0,0 +1,66 @@
https://github.com/PCRE2Project/pcre2/commit/cd8dc40b901bdedf5bcc0b3acdd9eede16802f39
https://github.com/PCRE2Project/pcre2/issues/173
https://bugs.gentoo.org/884705
From cd8dc40b901bdedf5bcc0b3acdd9eede16802f39 Mon Sep 17 00:00:00 2001
From: Philip Hazel <Philip.Hazel@gmail.com>
Date: Fri, 9 Dec 2022 09:40:52 +0000
Subject: [PATCH] Move default of PCRE2_CALL_CONVENTION from pcre2posix.c to
pcre2posix.h
--- a/src/pcre2posix.c
+++ b/src/pcre2posix.c
@@ -92,20 +92,6 @@ changed. This #define is a copy of the one in pcre2_internal.h. */
#include "pcre2.h"
#include "pcre2posix.h"
-/* When compiling with the MSVC compiler, it is sometimes necessary to include
-a "calling convention" before exported function names. (This is secondhand
-information; I know nothing about MSVC myself). For example, something like
-
- void __cdecl function(....)
-
-might be needed. In order to make this easy, all the exported functions have
-PCRE2_CALL_CONVENTION just before their names. It is rarely needed; if not
-set, we ensure here that it has no effect. */
-
-#ifndef PCRE2_CALL_CONVENTION
-#define PCRE2_CALL_CONVENTION
-#endif
-
/* Table to translate PCRE2 compile time error codes into POSIX error codes.
Only a few PCRE2 errors with a value greater than 23 turn into special POSIX
codes: most go to REG_BADPAT. The second table lists, in pairs, those that
--- a/src/pcre2posix.h
+++ b/src/pcre2posix.h
@@ -9,7 +9,7 @@ POSIX wrapper interface.
Written by Philip Hazel
Original API code Copyright (c) 1997-2012 University of Cambridge
- New API code Copyright (c) 2016-2019 University of Cambridge
+ New API code Copyright (c) 2016-2022 University of Cambridge
-----------------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
@@ -116,6 +116,20 @@ typedef struct {
regoff_t rm_eo;
} regmatch_t;
+/* When compiling with the MSVC compiler, it is sometimes necessary to include
+a "calling convention" before exported function names. (This is secondhand
+information; I know nothing about MSVC myself). For example, something like
+
+ void __cdecl function(....)
+
+might be needed. In order to make this easy, all the exported functions have
+PCRE2_CALL_CONVENTION just before their names. It is rarely needed; if not
+set, we ensure here that it has no effect. */
+
+#ifndef PCRE2_CALL_CONVENTION
+#define PCRE2_CALL_CONVENTION
+#endif
+
/* When an application links to a PCRE2 DLL in Windows, the symbols that are
imported have to be identified as such. When building PCRE2, the appropriate
export settings are needed, and are set in pcre2posix.c before including this

View File

@ -29,7 +29,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="BSD" LICENSE="BSD"
SLOT="0/3" # libpcre2-posix.so version SLOT="0/3" # libpcre2-posix.so version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline static-libs unicode zlib" IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )" REQUIRED_USE="?? ( libedit readline )"

View File

@ -0,0 +1,94 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/philiphazel.asc
inherit libtool multilib-minimal usr-ldscript verify-sig
MY_P="pcre2-${PV/_rc/-RC}"
DESCRIPTION="Perl-compatible regular expression library"
HOMEPAGE="https://www.pcre.org/"
if [[ ${PV} != *_rc* ]] ; then
# Only the final releases are available here.
SRC_URI="https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2
https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
verify-sig? ( https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2.sig )"
else
SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
fi
S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0/3" # libpcre2-posix.so version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )"
RDEPEND="
bzip2? ( app-arch/bzip2 )
libedit? ( dev-libs/libedit )
readline? ( sys-libs/readline:= )
zlib? ( sys-libs/zlib )
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
verify-sig? ( sec-keys/openpgp-keys-philiphazel )
"
MULTILIB_CHOST_TOOLS=(
/usr/bin/pcre2-config
)
PATCHES=(
"${FILESDIR}"/${PN}-10.10-000-Fix-multilib.patch
"${FILESDIR}"/${P}-pcre2posix-header.patch
)
src_prepare() {
default
elibtoolize
}
multilib_src_configure() {
local myeconfargs=(
--enable-pcre2-8
--enable-shared
$(multilib_native_use_enable bzip2 pcre2grep-libbz2)
$(multilib_native_use_enable libedit pcre2test-libedit)
$(multilib_native_use_enable readline pcre2test-libreadline)
$(multilib_native_use_enable zlib pcre2grep-libz)
$(use_enable jit)
$(use_enable jit pcre2grep-jit)
$(use_enable pcre16 pcre2-16)
$(use_enable pcre32 pcre2-32)
$(use_enable static-libs static)
$(use_enable unicode)
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_compile() {
emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=")
}
multilib_src_test() {
emake check VERBOSE=yes
}
multilib_src_install() {
emake \
DESTDIR="${D}" \
$(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \
install
multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix
}
multilib_src_install_all() {
find "${ED}" -type f -name "*.la" -delete || die
}

View File

@ -6,7 +6,7 @@ EAPI=8
# Note: Please bump this in sync with dev-libs/libxml2. # Note: Please bump this in sync with dev-libs/libxml2.
PYTHON_COMPAT=( python3_{8..11} ) PYTHON_COMPAT=( python3_{8..11} )
inherit python-r1 multilib-minimal inherit flag-o-matic python-r1 multilib-minimal
DESCRIPTION="XSLT libraries and tools" DESCRIPTION="XSLT libraries and tools"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxslt" HOMEPAGE="https://gitlab.gnome.org/GNOME/libxslt"
@ -53,6 +53,10 @@ src_prepare() {
} }
multilib_src_configure() { multilib_src_configure() {
# Remove this after upstream merge request to add AC_SYS_LARGEFILE lands:
# https://gitlab.gnome.org/GNOME/libxslt/-/merge_requests/55
append-lfs-flags
libxslt_configure() { libxslt_configure() {
ECONF_SOURCE="${S}" econf \ ECONF_SOURCE="${S}" econf \
--without-python \ --without-python \

View File

@ -1 +1,2 @@
DIST b2-4.9.2.tar.gz 975882 BLAKE2B 83c2ef85c9f1ae20922541ca8c344316f1660ee069426e3a9907c0a19e1c94db470c67d0c29a1f31788eddb86ab414ab06b9713f8ea53d974d1d8f0ca29f4aa5 SHA512 eab180770608b863dcf6a5fbc626e1733cf4353cf62f4189bd28258a03591fdb7853f5dddb4d3dad60f1bb06db5415025b792a30c2c65f7b1278f61e33f903e3 DIST b2-4.9.2.tar.gz 975882 BLAKE2B 83c2ef85c9f1ae20922541ca8c344316f1660ee069426e3a9907c0a19e1c94db470c67d0c29a1f31788eddb86ab414ab06b9713f8ea53d974d1d8f0ca29f4aa5 SHA512 eab180770608b863dcf6a5fbc626e1733cf4353cf62f4189bd28258a03591fdb7853f5dddb4d3dad60f1bb06db5415025b792a30c2c65f7b1278f61e33f903e3
DIST b2-4.9.3.tar.gz 975934 BLAKE2B 8d16e7227676786408f0d84efb577806e304a9181b89656dad1243b5b0b48e67d4226fa51ea97d4ea10110e4ea86f3ae2884d711fa4b04e36bdaa68dff0a4710 SHA512 8f861074a50720ad5469277a469523ef5f87ef2aab65d745f4c5e6af0ed8f40af91c43cd42b7845982c065974026ce1ecc77a831cd0c698c7e22fa848cc81009

View File

@ -14,7 +14,7 @@ S="${WORKDIR}/${P}/src"
LICENSE="Boost-1.0" LICENSE="Boost-1.0"
SLOT="0" SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="examples" IUSE="examples"
RESTRICT="test" RESTRICT="test"

View File

@ -0,0 +1,66 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit edo flag-o-matic toolchain-funcs
MY_PV="$(ver_rs 1- _)"
DESCRIPTION="A system for large project software construction, simple to use and powerful"
HOMEPAGE="https://www.bfgroup.xyz/b2/"
SRC_URI="https://github.com/bfgroup/b2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P}/src"
LICENSE="Boost-1.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="examples"
RESTRICT="test"
RDEPEND="!dev-util/boost-build"
PATCHES=(
"${FILESDIR}"/${PN}-4.9.2-disable_python_rpath.patch
"${FILESDIR}"/${PN}-4.9.2-darwin-gentoo-toolchain.patch
"${FILESDIR}"/${PN}-4.9.2-add-none-feature-options.patch
"${FILESDIR}"/${PN}-4.9.2-no-implicit-march-flags.patch
"${FILESDIR}"/${PN}-4.9.2-odr.patch
)
src_configure() {
# need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100)
append-lfs-flags
}
src_compile() {
cd engine || die
# upstream doesn't want separate flags for CPPFLAGS/LDFLAGS
# https://github.com/bfgroup/b2/pull/187#issuecomment-1335688424
edo ${CONFIG_SHELL:-${BASH}} ./build.sh cxx --cxx="$(tc-getCXX)" --cxxflags="${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}" -d+2 --without-python
}
src_test() {
# Forget tests, b2 is a lost cause
:
}
src_install() {
dobin engine/b2
insinto /usr/share/b2/src
doins -r "${FILESDIR}/site-config.jam" \
bootstrap.jam build-system.jam ../example/user-config.jam \
build kernel options tools util
find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die
dodoc ../notes/{changes,release_procedure,build_dir_option,relative_source_paths}.txt
if use examples; then
docinto examples
dodoc -r ../example/.
docompress -x /usr/share/doc/${PF}/examples
fi
}

View File

@ -0,0 +1,21 @@
https://bugs.gentoo.org/882787
https://git.savannah.gnu.org/gitweb/?p=gperf.git;a=commit;h=a63b830554920476881837eeacd4a6b507632b19
From a63b830554920476881837eeacd4a6b507632b19 Mon Sep 17 00:00:00 2001
From: Bruno Haible <bruno@clisp.org>
Date: Sun, 30 Aug 2020 12:36:15 +0200
Subject: [PATCH] Make the code C++17 compliant.
* lib/getline.cc (getstr): Don't use the 'register' keyword.
--- a/lib/getline.cc
+++ b/lib/getline.cc
@@ -55,7 +55,7 @@ getstr (char **lineptr, size_t *n, FILE *stream, char terminator, size_t offset)
for (;;)
{
- register int c = getc (stream);
+ int c = getc (stream);
/* We always want at least one char left in the buffer, since we
always (unless we get an error while reading the first char)

View File

@ -13,6 +13,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~
PATCHES=( PATCHES=(
"${FILESDIR}"/${P}-strncmp-decl-mismatch.patch "${FILESDIR}"/${P}-strncmp-decl-mismatch.patch
"${FILESDIR}"/${P}-clang-16-wregister.patch
) )
src_prepare() { src_prepare() {

View File

@ -1,4 +1,2 @@
DIST meson-0.63.2.tar.gz 2063397 BLAKE2B 765ef8994168bb149cce4dbbbdab4a5531b1c1119db5dace1a66c2728241830c7de075d586187d3f987fcc99e4181176a5910da56552ba735dda110a641d2541 SHA512 770d8d82502c5cd419123e09f6a445d2cbaea4463c5fa79f1497c868bf5defc5e5779a6e550ef5fcf75d57322d2b25b61574f4df0cbf001c4325c6abdbbc30b4
DIST meson-0.63.3.tar.gz 2067612 BLAKE2B aa6052330f15aa6b1f64598a60075ea3b245ba4b53d65e760670fd526e3e462c110f95e710a83f91ab32f316fdb66dff1783c79ea832ed11d263fe0a3304eaa8 SHA512 6855b2bfe05d592419bfeaf4346c3d1079319f14de995109c09a7e5e9770cef829f66d659553337b3e54ca0dd6c497bccd4abef720f299173077b664d905864b DIST meson-0.63.3.tar.gz 2067612 BLAKE2B aa6052330f15aa6b1f64598a60075ea3b245ba4b53d65e760670fd526e3e462c110f95e710a83f91ab32f316fdb66dff1783c79ea832ed11d263fe0a3304eaa8 SHA512 6855b2bfe05d592419bfeaf4346c3d1079319f14de995109c09a7e5e9770cef829f66d659553337b3e54ca0dd6c497bccd4abef720f299173077b664d905864b
DIST meson-0.64.0.tar.gz 2090162 BLAKE2B 85fe35cba3b2b966a8ba818b305e6e75437af4315f8ce9b6bdc26324dc4a51e5ef3cbb16e23552db1d6191b8d08b1086640eb87e03a1dcfee794de492a0fa237 SHA512 0656515e983d98350081dc7cd726bff4a83ed1e24d414c022ea804317f2ff86052b53bbbc36e00847541f2cbe19ebe4c87bb35a174bf6321864363512a4cf6b0
DIST meson-0.64.1.tar.gz 2089752 BLAKE2B e444df936738ddbbc8af1cc203417ee8f6063bf36a953158295da0c0a40aeb05e6c9a8677a17440c3a4153e0e479fb7215e18b5f0ce7c896fd928f841637ce07 SHA512 4896f5a09f89cadce028080f70e5ca005fd3bb2141a730a0ad71ded63d1bde6d1254957fe079f5e4c6e3b9420a9fcc4525b01e689979f0bab6d09d6483ca42ec DIST meson-0.64.1.tar.gz 2089752 BLAKE2B e444df936738ddbbc8af1cc203417ee8f6063bf36a953158295da0c0a40aeb05e6c9a8677a17440c3a4153e0e479fb7215e18b5f0ce7c896fd928f841637ce07 SHA512 4896f5a09f89cadce028080f70e5ca005fd3bb2141a730a0ad71ded63d1bde6d1254957fe079f5e4c6e3b9420a9fcc4525b01e689979f0bab6d09d6483ca42ec

View File

@ -1,117 +0,0 @@
# Copyright 2016-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..11} )
DISTUTILS_USE_PEP517=setuptools
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="https://github.com/mesonbuild/meson"
inherit git-r3
else
MY_P=${P/_/}
S=${WORKDIR}/${MY_P}
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
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}-0.63-xtools-support.patch
)
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

@ -1,120 +0,0 @@
# Copyright 2016-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..11} )
DISTUTILS_USE_PEP517=setuptools
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="https://github.com/mesonbuild/meson"
inherit git-r3
else
MY_P=${P/_/}
S=${WORKDIR}/${MY_P}
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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}-0.63-xtools-support.patch
)
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

@ -1,9 +1,12 @@
DIST git-2.37.4.tar.xz 6990080 BLAKE2B 731ae7ff4247fd9d300b2b2b27074cce2d62b6333051bbdb161cdf644b4b40247963a978e1ed25a4f8fc9b544b52aa94ef97abf16db46ffcb688efab380efaec SHA512 f13a25548f6463ee0c3e662819a4af13dfafa8d18108534aeaebafd9a36c84dbea913402d781f7bc1436560c9937d76fd78b39cafa5864f576a1278ed96a9a80 DIST git-2.37.4.tar.xz 6990080 BLAKE2B 731ae7ff4247fd9d300b2b2b27074cce2d62b6333051bbdb161cdf644b4b40247963a978e1ed25a4f8fc9b544b52aa94ef97abf16db46ffcb688efab380efaec SHA512 f13a25548f6463ee0c3e662819a4af13dfafa8d18108534aeaebafd9a36c84dbea913402d781f7bc1436560c9937d76fd78b39cafa5864f576a1278ed96a9a80
DIST git-2.38.1.tar.xz 7088208 BLAKE2B 50e4e9ef04d9eef7c10aba1f0d53d5d15f50ea9a8c344733e7a7865e2f2a833edb4f4b5882f47dd39389dfdedf22a813cfe3d35ab950d6543d21e0294ce17f2d SHA512 e62ca6f54f01d2e4ccffb5f94e8e5cd2f3e098b766d909c694a8daf4d00d5cdeb9cc5ff8e9bc55d888406f292ba99433d334d4da9689c0ce5d7299a3c67c90e0 DIST git-2.38.1.tar.xz 7088208 BLAKE2B 50e4e9ef04d9eef7c10aba1f0d53d5d15f50ea9a8c344733e7a7865e2f2a833edb4f4b5882f47dd39389dfdedf22a813cfe3d35ab950d6543d21e0294ce17f2d SHA512 e62ca6f54f01d2e4ccffb5f94e8e5cd2f3e098b766d909c694a8daf4d00d5cdeb9cc5ff8e9bc55d888406f292ba99433d334d4da9689c0ce5d7299a3c67c90e0
DIST git-2.39.0.rc1.tar.xz 7146844 BLAKE2B 02d457b2c05290de9bd47e85ce55f2bc7e4b649f898bbda971aa447881ba4da3cf750d065a3bb431c974bf4602403c99af92089467a1b7c9d8c6b95c11d6beb1 SHA512 c90496689cf4ef5bd0efe85ac1f52b53527603596bef064470bd6c30f6b5d067e001d4a2f2cbe10f57235f8a74b733d59bc8cd8051f6fa9475b6dfb4df67577e DIST git-2.38.2.tar.xz 7090572 BLAKE2B 80c72541c6cd7362ab5c8e92a2b81fbe80f5fcb3fac26680309ab30250a35f3bf3f1d613cc58bd570e52c81739a212969e28af4b7611ec8e08b8f15f5c9c4b8a SHA512 797c1cee61ff07b6f8502b1819d9797282aa82e33d023dffb4d395376b7a621d518017eaf38d05c6e5aba1372f2731985c53fcb46d43168b67b5bc8febedc6bc
DIST git-2.39.0.rc2.tar.xz 7146628 BLAKE2B a33e1bf569fc946a68071506e53b74dc9006c468df43b4cdfd776329b476034c8504cdf295d9c696a447cb3ed7f0aabb195bc24bd5397f3b708e98f9152f01cd SHA512 31b6fda1fcbed027f20140066f77283bae1179da015fd01b3bee61ab4b313603b229b13b84680030ca65c4b9435133f209b9cc832caf9cff30824da816c3f687
DIST git-htmldocs-2.37.4.tar.xz 1448376 BLAKE2B 2414b2f18e3c75c377400623f9e804b6fd5623724834ce52d2680cc10839466d52a8407cac9ed0c8c5928d65058963fe62e9ae2e31f1b695ea3a6fc18ea1938a SHA512 638feee014498af63ea083540b065778d3e3b7fdec9bb7f6e915bbc524e1525e0c4056f8af7d859376b60fcc936cb0ac1e6f83ff940e09f822dfa11570465db4 DIST git-htmldocs-2.37.4.tar.xz 1448376 BLAKE2B 2414b2f18e3c75c377400623f9e804b6fd5623724834ce52d2680cc10839466d52a8407cac9ed0c8c5928d65058963fe62e9ae2e31f1b695ea3a6fc18ea1938a SHA512 638feee014498af63ea083540b065778d3e3b7fdec9bb7f6e915bbc524e1525e0c4056f8af7d859376b60fcc936cb0ac1e6f83ff940e09f822dfa11570465db4
DIST git-htmldocs-2.38.1.tar.xz 1479360 BLAKE2B 72d33a04c94ccb250def2136a2967fd333f3704f8e525f065b508cee890058546fec4e5b1349285b83768a7bd1513c0fac8d9ca287e5e964e6f1ec0d055ef7de SHA512 740da4546bdc0e9c4131e9dd0775662525aeb30a468fc4be63bb09c728da2903d479da5b7ef25d5ee029690ff5c9640de0271c7defcba1fadfa4a21f96d0aa8b DIST git-htmldocs-2.38.1.tar.xz 1479360 BLAKE2B 72d33a04c94ccb250def2136a2967fd333f3704f8e525f065b508cee890058546fec4e5b1349285b83768a7bd1513c0fac8d9ca287e5e964e6f1ec0d055ef7de SHA512 740da4546bdc0e9c4131e9dd0775662525aeb30a468fc4be63bb09c728da2903d479da5b7ef25d5ee029690ff5c9640de0271c7defcba1fadfa4a21f96d0aa8b
DIST git-htmldocs-2.39.0.rc1.tar.xz 1503072 BLAKE2B fe8beca129e7bc1dfc2198ad304adf92d88d43a6e50609831f8974dd3cc1e76e0317be8fa5fe2172aae930b622de7870e52f7faeb2b0f4715927745631c10be0 SHA512 e9de3cd8fb84d2bbe38b6185f732c9167b375fd12554f92b00d13cf9d772d9b9970fd83d61546251ff984c61c91565942157c32a3f49ebc57d77cbc3ece9ca34 DIST git-htmldocs-2.38.2.tar.xz 1479720 BLAKE2B 270454b0692e9ef678ec5ba5a8bbf5b119230981a29928dd256c5851beb5db0db1c12084f091e57bf7cfe011a7c166f5e341be03d98fade7d848cd069fcf6f0e SHA512 9e505f38658384381c22ff7b0502313b2ac842f89d2f8c27d3a03cb0a51fe23f06541fbdd0e5729a056baafc06689fa9faa40f74d8a456d00d5c5c7ef9b39dd0
DIST git-htmldocs-2.39.0.rc2.tar.xz 1503264 BLAKE2B cc6e70fc6c7bf620c76da7f4651165cb2e06ae3c4c9dae9da6696a9bacb460d08629f837e9b62fa7be54ea1d7342894dc33bb12c5fff305627581130261f2c1f SHA512 92bb44dc85ed878c1a11fffafae0b8889d03f48c1a7a7f2fd70797f0af1dd9ed33f14c1969247cc18e4671af90a57cf5d8786ef1e60a818c6e8b333fc33368fa
DIST git-manpages-2.37.4.tar.xz 510016 BLAKE2B 03cba56a27039547429eca6a3dfda600d2b1332a6b0da321a1abc8bb311b03e46c389fdbbd7aafc8b5863730e9417ebbd3195ce04408e3f229e646d134a2ac13 SHA512 8cf5ae54ae3e86929f375ea2d229ecda7d8b5c8a7f7fbe790334fcd38069285b58636320b1886030402ac9d46ed324c1d26784fff14077f661c43ef98b5f5ec7 DIST git-manpages-2.37.4.tar.xz 510016 BLAKE2B 03cba56a27039547429eca6a3dfda600d2b1332a6b0da321a1abc8bb311b03e46c389fdbbd7aafc8b5863730e9417ebbd3195ce04408e3f229e646d134a2ac13 SHA512 8cf5ae54ae3e86929f375ea2d229ecda7d8b5c8a7f7fbe790334fcd38069285b58636320b1886030402ac9d46ed324c1d26784fff14077f661c43ef98b5f5ec7
DIST git-manpages-2.38.1.tar.xz 553484 BLAKE2B 991e7f3916106e346921f6ae281df803b663b7fb4584f98f48f61a121030db8e5a1a97ecb147bf1559408893d3c9692c58b2890ff5a5a00bd451d8f20b73efdb SHA512 d2c75efc497ec62733be0ae0092a256dedb2a24b765e516218c9d96466aef34a0f2a118f68618ea457bf0fb39f5986c52022870116de974b21f541e0994c7d67 DIST git-manpages-2.38.1.tar.xz 553484 BLAKE2B 991e7f3916106e346921f6ae281df803b663b7fb4584f98f48f61a121030db8e5a1a97ecb147bf1559408893d3c9692c58b2890ff5a5a00bd451d8f20b73efdb SHA512 d2c75efc497ec62733be0ae0092a256dedb2a24b765e516218c9d96466aef34a0f2a118f68618ea457bf0fb39f5986c52022870116de974b21f541e0994c7d67
DIST git-manpages-2.39.0.rc1.tar.xz 557232 BLAKE2B 5bc878cccda24dee906f1c7e4f286539f8c8db29dd5d4b5eee111e45d2eb02c380be6cea1c01e34fdd7c9336bd0c476edba3f32121c3c042c938c4e178a9a5f3 SHA512 f43cb08eb00371995e98336f99db6fd0551d6abc069c0db5a1293a8cc4a0d426ea1c2d7f6b7bd4e38db9d82ee0aad24e7e5ff15ed3e2a4cec30e81503c7eb5ec DIST git-manpages-2.38.2.tar.xz 553556 BLAKE2B 781b50a011d1c329fcdf3c01a94fecf5a388a03ca39e71aac07908e02982ed472d27a581184d894acbad441c945457c32dcb359ee0bcf70671af893e10c8bde4 SHA512 3214887045a6b3ff734794d67f17914324de401badae86ca40e16935f81cca183b3d762519922fa03a260dae218acc407896335ae96a17f433a3115e71512fbf
DIST git-manpages-2.39.0.rc2.tar.xz 557304 BLAKE2B 0db29a436c709b7cdb45abd5e10d26aba2136b5fa7a501b4313083780ece66d846cc4012b14061ed1f31f368c8407fde021cc092693a64763067fab852f2a7f4 SHA512 d30b27251de23053afe2c34ba7b18c8ab7beaf33278d3dcb90aec76147f289b3844eaa1da2dd08950f2398b8541f1538025ecd502b9efc37deadb9b3e8ddea17

View File

@ -0,0 +1,657 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python3_{8..10} )
inherit toolchain-funcs perl-module bash-completion-r1 optfeature plocale python-single-r1 systemd
PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git"
inherit git-r3
# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
# See https://git-scm.com/docs/gitworkflows#_graduation
# In order of stability:
# 9999-r0: maint
# 9999-r1: master
# 9999-r2: next
# 9999-r3: seen
case ${PVR} in
9999) EGIT_BRANCH=maint ;;
9999-r1) EGIT_BRANCH=master ;;
9999-r2) EGIT_BRANCH=next;;
9999-r3) EGIT_BRANCH=seen ;;
esac
fi
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER="${MY_PV}"
DESCRIPTION="Stupid content tracker: distributed VCS designed for speed and efficiency"
HOMEPAGE="https://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="xz"
SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
[[ ${PV/rc} != ${PV} ]] && SRC_URI_KORG+='/testing'
SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}"
SRC_URI+=" ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}"
SRC_URI+=" doc? ( ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} )"
if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
fi
S="${WORKDIR}"/${MY_P}
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc gnome-keyring +gpg highlight +iconv mediawiki mediawiki-experimental +nls +pcre perforce +perl +safe-directory selinux subversion tk +webdav xinetd cvs test"
# Common to both DEPEND and RDEPEND
DEPEND="
dev-libs/openssl:=
sys-libs/zlib
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
gnome-keyring? (
app-crypt/libsecret
dev-libs/glib:2
)
iconv? ( virtual/libiconv )
pcre? ( dev-libs/libpcre2:= )
perl? ( dev-lang/perl:=[-build(-)] )
tk? ( dev-lang/tk:= )
"
RDEPEND="
${DEPEND}
gpg? ( app-crypt/gnupg )
perl? (
dev-perl/Error
dev-perl/MailTools
dev-perl/Authen-SASL
>=virtual/perl-libnet-3.110.0-r4[ssl]
cgi? (
dev-perl/CGI
highlight? ( app-text/highlight )
)
cvs? (
>=dev-vcs/cvsps-2.1:0
dev-perl/DBI
dev-perl/DBD-SQLite
)
mediawiki? (
dev-perl/DateTime-Format-ISO8601
dev-perl/HTML-Tree
dev-perl/MediaWiki-API
)
subversion? (
dev-vcs/subversion[-dso(-),perl]
dev-perl/libwww-perl
dev-perl/TermReadKey
)
)
perforce? ( ${PYTHON_DEPS} )
selinux? ( sec-policy/selinux-git )
"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
BDEPEND="
doc? (
app-text/asciidoc
app-text/docbook2X
app-text/xmlto
sys-apps/texinfo
)
gnome-keyring? ( virtual/pkgconfig )
nls? ( sys-devel/gettext )
test? ( app-crypt/gnupg )
"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
BDEPEND+=" app-text/asciidoc"
fi
SITEFILE="50${PN}-gentoo.el"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
mediawiki? ( perl )
mediawiki-experimental? ( mediawiki )
perforce? ( ${PYTHON_REQUIRED_USE} )
subversion? ( perl )
webdav? ( curl )
"
RESTRICT="!test? ( test )"
PATCHES=(
# Avoid automagic CVS, bug #350330
"${FILESDIR}"/git-2.37.0_rc1-optional-cvs.patch
# Make submodule output quiet
"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
)
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]" ; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned!"
fi
if use perforce ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local extlibs myopts
myopts=(
ASCIIDOC_NO_ROFF=YesPlease
$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
$(usev elibc_musl NO_REGEX=YesPlease)
$(usev !cvs NO_CVS=YesPlease)
$(usev !iconv NO_ICONV=YesPlease)
$(usev !nls NO_GETTEXT=YesPlease)
$(usev !perforce NO_PYTHON=YesPlease)
$(usev !subversion NO_SVN_TESTS=YesPlease)
$(usev !tk NO_TCLTK=YesPlease)
)
if use blksha1 ; then
myopts+=( BLK_SHA1=YesPlease )
fi
if use curl ; then
use webdav || myopts+=( NO_EXPAT=YesPlease )
else
myopts+=( NO_CURL=YesPlease )
fi
# Broken assumptions because of static build system
myopts+=(
NO_FINK=YesPlease
NO_DARWIN_PORTS=YesPlease
INSTALL=install
TAR=tar
SHELL_PATH="${EPREFIX}/bin/sh"
SANE_TOOL_PATH=
OLD_ICONV=
NO_EXTERNAL_GREP=
)
# Can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
if use pcre; then
myopts+=( USE_LIBPCRE2=YesPlease )
extlibs+=( -lpcre2-8 )
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts+=(
NEEDS_LIBICONV=YesPlease
HAVE_CLOCK_MONOTONIC=1
)
if grep -Fq getdelim "${ESYSROOT}"/usr/include/stdio.h ; then
myopts+=( HAVE_GETDELIM=1 )
fi
fi
myopts+=( ASCIIDOC8=YesPlease )
export MY_MAKEOPTS="${myopts[@]}"
export EXTLIBS="${extlibs[@]}"
}
src_unpack() {
if [[ ${PV} != *9999 ]] ; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}" || die
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
if use doc ; then
pushd "${S}"/Documentation &>/dev/null || die
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
popd &>/dev/null || die
fi
else
git-r3_src_unpack
#cp "${FILESDIR}"/GIT-VERSION-GEN . || die
fi
}
src_prepare() {
# Add experimental patches to improve mediawiki support,
# see patches for origin.
if use mediawiki-experimental ; then
PATCHES+=(
"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
)
fi
if ! use safe-directory ; then
# This patch neuters the "safe directory" detection.
# bugs #838271, #838223
PATCHES+=(
"${FILESDIR}"/git-2.37.2-unsafe-directory.patch
)
fi
default
if use prefix ; then
# bug #757309
eapply "${FILESDIR}"/git-2.37.2-darwin-prefix-gettext.patch
fi
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile || die
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die
}
git_emake() {
# bug #320647: PYTHON_PATH
local PYTHON_PATH=""
use perforce && PYTHON_PATH="${PYTHON}"
local mymakeargs=(
${MY_MAKEOPTS}
prefix="${EPREFIX}"/usr
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html
perllibdir="$(use perl && perl_get_raw_vendorlib)"
sysconfdir="${EPREFIX}"/etc
CC="$(tc-getCC)"
CFLAGS="${CFLAGS}"
PKG_CONFIG="$(tc-getPKG_CONFIG)"
# TODO: --verbose?
GIT_TEST_OPTS="--no-color"
OPTAR="$(tc-getAR)"
OPTCC="$(tc-getCC)"
OPTCFLAGS="${CFLAGS}"
OPTLDFLAGS="${LDFLAGS}"
PERL_PATH="${EPREFIX}/usr/bin/perl"
PERL_MM_OPT=""
PYTHON_PATH="${PYTHON_PATH}"
V=1
"$@"
)
emake "${mymakeargs[@]}"
}
src_configure() {
exportmakeopts
}
src_compile() {
git_emake
if use perl && use cgi ; then
git_emake gitweb
fi
if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
git_emake -C contrib/credential/osxkeychain
fi
pushd Documentation &>/dev/null || die
if [[ ${PV} == *9999 ]] ; then
git_emake man
if use doc ; then
git_emake info html
fi
else
if use doc ; then
git_emake info
fi
fi
popd &>/dev/null || die
if use gnome-keyring ; then
git_emake -C contrib/credential/libsecret
fi
pushd contrib/subtree &>/dev/null || die
git_emake git-subtree
# git-subtree.1 requires the full USE=doc dependency stack
use doc && git_emake git-subtree.html git-subtree.1
popd &>/dev/null || die
git_emake -C contrib/diff-highlight
if use mediawiki ; then
git_emake -C contrib/mw-to-git
fi
}
src_test() {
local disabled=(
# We make safe-directory optional
t0033-safe-directory.sh
)
local tests_cvs=(
t9200-git-cvsexportcommit.sh
t9400-git-cvsserver-server.sh
t9401-git-cvsserver-crlf.sh
t9402-git-cvsserver-refs.sh
t9600-cvsimport.sh
t9601-cvsimport-vendor-branch.sh
t9602-cvsimport-branches-tags.sh
t9603-cvsimport-patchsets.sh
t9604-cvsimport-timestamps.sh
)
local tests_perl=(
t3701-add-interactive.sh
t5502-quickfetch.sh
t5512-ls-remote.sh
t5520-pull.sh
t7106-reset-unborn-branch.sh
t7501-commit.sh
)
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot=(
t0001-init.sh
t0004-unwritable.sh
t0070-fundamental.sh
t1004-read-tree-m-u-wf.sh
t3700-add.sh
t7300-clean.sh
)
# t9100 still fails with symlinks in SVN 1.7
local test_svn=( t9100-git-svn-basic.sh )
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled+=( t5000-tar-tree.sh )
fi
local cvs=0
use cvs && let cvs=${cvs}+1
if [[ ${EUID} -eq 0 ]] ; then
if [[ ${cvs} -eq 1 ]] ; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled+=( ${tests_cvs[@]} )
fi
einfo "Skipping other tests that require being non-root"
disabled+=( ${tests_nonroot[@]} )
else
if [[ ${cvs} -gt 0 ]] && has_version dev-vcs/cvs ; then
let cvs=${cvs}+1
fi
if [[ ${cvs} -gt 1 ]] && has_version "dev-vcs/cvs[server]" ; then
let cvs=${cvs}+1
fi
if [[ ${cvs} -lt 3 ]] ; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled+=( ${tests_cvs[@]} )
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled+=( ${tests_perl[@]} )
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled+=( ${test_svn[@]} )
# Reset all previously disabled tests
pushd t &>/dev/null || die
local i
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled[@]} ; do
if [[ -f "${i}" ]] ; then
mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
fi
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die
# Clean old results first, must always run
nonfatal git_emake clean
popd &>/dev/null || die
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
local rc
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
pushd t &>/dev/null || die
nonfatal git_emake aggregate-results
# And bail if there was a problem
[[ ${rc} -eq 0 ]] || die "Tests failed. Please file a bug!"
}
src_install() {
git_emake DESTDIR="${D}" install
if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
local d
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
if use doc ; then
docinto ${d}/html
dodoc Documentation${d}*.html
fi
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
bashcomp_alias git gitk
# Not really a bash-completion file (bug #477920)
# but still needed uncompressed (bug #507480)
insinto /usr/share/${PN}
doins contrib/completion/git-prompt.sh
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
pushd contrib/subtree &>/dev/null || die
git_emake DESTDIR="${D}" install
if use doc ; then
# Do not move git subtree install-man outside USE=doc!
git_emake DESTDIR="${D}" install-man install-html
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
popd &>/dev/null || die
if use mediawiki ; then
git_emake -C contrib/mw-to-git DESTDIR="${D}" install
fi
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
pushd contrib/credential/libsecret &>/dev/null || die
dobin git-credential-libsecret
popd &>/dev/null || die
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# diff-highlight - done above
# emacs - removed upstream
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
local contrib_objects=(
buildsystems
fast-import
hg-to-git
hooks
remotes2config.sh
rerere-train.sh
stats
workdir
)
local i
for i in "${contrib_objects[@]}" ; do
cp -rf "${S}"/contrib/${i} "${ED}"/usr/share/${PN}/contrib || die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym ../gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
for d in "${ED}"/usr/lib{,64}/perl5/ ; do
if [[ -d "${d}" ]] ; then
find "${d}" -name .packlist -delete || die
fi
done
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if ! use prefix ; then
newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
perl_delete_localpod
# Remove disabled linguas
# we could remove sources in src_prepare, but install does not
# handle missing locale dir well
rm_loc() {
if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then
rm -r "${ED}/usr/share/locale/${1}" || die
fi
}
plocale_for_each_disabled_locale rm_loc
}
pkg_postinst() {
if [[ -z ${REPLACING_VERSIONS} ]] ; then
elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
elog "completion."
elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
elog "Note that the prompt bash code is now in that separate script"
fi
optfeature_header "Some scripts require additional dependencies:"
optfeature git-quiltimport dev-util/quilt
optfeature git-instaweb www-servers/lighttpd www-servers/apache www-servers/nginx
use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
}

View File

@ -0,0 +1,84 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: app-alternatives.eclass
# @MAINTAINER:
# Michał Górny <mgorny@gentoo.org>
# @AUTHOR:
# Michał Górny <mgorny@gentoo.org>
# @SUPPORTED_EAPIS: 8
# @BLURB: Common logic for app-alternatives/*
# @DESCRIPTION:
# This eclass provides common logic shared by app-alternatives/*
# ebuilds. A global ALTERNATIVES variable needs to be declared
# that lists available options and their respective dependencies.
# HOMEPAGE, S, LICENSE, SLOT, IUSE, REQUIRED_USE and RDEPEND are set.
# A get_alternative() function is provided that determines the selected
# alternative and prints its respective flag name.
case ${EAPI} in
8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} unsupported."
esac
if [[ ! ${_APP_ALTERNATIVES_ECLASS} ]]; then
_APP_ALTERNATIVES_ECLASS=1
# @ECLASS_VARIABLE: ALTERNATIVES
# @PRE_INHERIT
# @REQUIRED
# @DESCRIPTION:
# Array of "flag:dependency" pairs specifying the available
# alternatives. The default provider must be listed first.
# @FUNCTION: _app-alternatives_set_globals
# @INTERNAL
# @DESCRIPTION:
# Set ebuild metadata variables.
_app-alternatives_set_globals() {
debug-print-function ${FUNCNAME} "${@}"
if [[ ${ALTERNATIVES@a} != *a* ]]; then
die 'ALTERNATIVES must be an array.'
elif [[ ${#ALTERNATIVES[@]} -eq 0 ]]; then
die 'ALTERNATIVES must not be empty.'
fi
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives"
S=${WORKDIR}
LICENSE="CC0-1.0"
SLOT="0"
# yep, that's a cheap hack adding '+' to the first flag
IUSE="+${ALTERNATIVES[*]%%:*}"
REQUIRED_USE="^^ ( ${ALTERNATIVES[*]%%:*} )"
RDEPEND=""
local flag dep
for flag in "${ALTERNATIVES[@]}"; do
[[ ${flag} != *:* ]] && die "Invalid ALTERNATIVES item: ${flag}"
dep=${flag#*:}
flag=${flag%%:*}
RDEPEND+="
${flag}? ( ${dep} )
"
done
}
_app-alternatives_set_globals
# @FUNCTION: get_alternative
# @DESCRIPTION:
# Get the flag name for the selected alternative (i.e. the USE flag set).
get_alternative() {
debug-print-function ${FUNCNAME} "${@}"
local flag
for flag in "${ALTERNATIVES[@]%%:*}"; do
usev "${flag}" && return
done
die "No selected alternative found (REQUIRED_USE ignored?!)"
}
fi

View File

@ -15,8 +15,7 @@
# @DESCRIPTION: # @DESCRIPTION:
# The cmake eclass makes creating ebuilds for cmake-based packages much easier. # The cmake eclass makes creating ebuilds for cmake-based packages much easier.
# It provides all inherited features (DOCS, HTML_DOCS, PATCHES) along with # It provides all inherited features (DOCS, HTML_DOCS, PATCHES) along with
# out-of-source builds (default), in-source builds and an implementation of the # out-of-source builds (default) and in-source builds.
# well-known use_enable function for CMake.
case ${EAPI} in case ${EAPI} in
7|8) ;; 7|8) ;;
@ -355,7 +354,7 @@ cmake_src_prepare() {
default_src_prepare default_src_prepare
# check if CMakeLists.txt exist and if no then die # check if CMakeLists.txt exists and if not then die
if [[ ! -e ${CMAKE_USE_DIR}/CMakeLists.txt ]] ; then if [[ ! -e ${CMAKE_USE_DIR}/CMakeLists.txt ]] ; then
eerror "Unable to locate CMakeLists.txt under:" eerror "Unable to locate CMakeLists.txt under:"
eerror "\"${CMAKE_USE_DIR}/CMakeLists.txt\"" eerror "\"${CMAKE_USE_DIR}/CMakeLists.txt\""

View File

@ -986,7 +986,7 @@ append-atomic-flags() {
# fails because -latomic is actually needed or if we have a # fails because -latomic is actually needed or if we have a
# broken toolchain (like due to bad FLAGS) # broken toolchain (like due to bad FLAGS)
read -r -d '' code <<- EOF read -r -d '' code <<- EOF
int main() int main(void)
{ {
return 0; return 0;
} }
@ -1007,7 +1007,7 @@ append-atomic-flags() {
# https://github.com/buildroot/buildroot/commit/6856e417da4f3aa77e2a814db2a89429af072f7d # https://github.com/buildroot/buildroot/commit/6856e417da4f3aa77e2a814db2a89429af072f7d
read -r -d '' code <<- EOF read -r -d '' code <<- EOF
#include <stdint.h> #include <stdint.h>
int main() int main(void)
{ {
uint$((${bytesize} * 8))_t a = 0; uint$((${bytesize} * 8))_t a = 0;
__atomic_add_fetch(&a, 3, __ATOMIC_RELAXED); __atomic_add_fetch(&a, 3, __ATOMIC_RELAXED);

View File

@ -186,7 +186,6 @@ RDEPEND="
${MODULES_OPTIONAL_USE:+)}" ${MODULES_OPTIONAL_USE:+)}"
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
${MODULES_OPTIONAL_USE}${MODULES_OPTIONAL_USE:+? (} ${MODULES_OPTIONAL_USE}${MODULES_OPTIONAL_USE:+? (}
sys-apps/sed
kernel_linux? ( virtual/linux-sources virtual/libelf ) kernel_linux? ( virtual/linux-sources virtual/libelf )
${MODULES_OPTIONAL_USE:+)}" ${MODULES_OPTIONAL_USE:+)}"
@ -653,6 +652,7 @@ linux-mod_src_compile() {
einfo "Preparing ${modulename} module" einfo "Preparing ${modulename} module"
if [[ -n ${ECONF_PARAMS} ]] if [[ -n ${ECONF_PARAMS} ]]
then then
eqawarn "This package relies on the deprecated functionality of econf being called in linux-mod_src_compile (ECONF_PARAMS), which will go away in 30 days (20230107) (https://bugs.gentoo.org/340597)"
econf ${ECONF_PARAMS} || \ econf ${ECONF_PARAMS} || \
die "Unable to run econf ${ECONF_PARAMS}" die "Unable to run econf ${ECONF_PARAMS}"
fi fi

View File

@ -87,11 +87,11 @@ DEPEND="!!sys-devel/llvm:0"
# Correct values of LLVM slots, newest first. # Correct values of LLVM slots, newest first.
declare -g -r _LLVM_KNOWN_SLOTS=( {16..8} ) declare -g -r _LLVM_KNOWN_SLOTS=( {16..8} )
# @FUNCTION: get_llvm_prefix # @FUNCTION: get_llvm_slot
# @USAGE: [-b|-d] [<max_slot>] # @USAGE: [-b|-d] [<max_slot>]
# @DESCRIPTION: # @DESCRIPTION:
# Find the newest LLVM install that is acceptable for the package, # Find the newest LLVM install that is acceptable for the package,
# and print an absolute path to it. # and print its major version number (i.e. slot).
# #
# If -b is specified, the checks are performed relative to BROOT, # If -b is specified, the checks are performed relative to BROOT,
# and BROOT-path is returned. This is appropriate when your package # and BROOT-path is returned. This is appropriate when your package
@ -114,7 +114,7 @@ declare -g -r _LLVM_KNOWN_SLOTS=( {16..8} )
# is acceptable, false otherwise. If llvm_check_deps() is not defined, # is acceptable, false otherwise. If llvm_check_deps() is not defined,
# the function defaults to checking whether sys-devel/llvm:${LLVM_SLOT} # the function defaults to checking whether sys-devel/llvm:${LLVM_SLOT}
# is installed. # is installed.
get_llvm_prefix() { get_llvm_slot() {
debug-print-function ${FUNCNAME} "${@}" debug-print-function ${FUNCNAME} "${@}"
local hv_switch=-d local hv_switch=-d
@ -126,23 +126,12 @@ get_llvm_prefix() {
shift shift
done done
local prefix= if [[ ${EAPI} == 6 ]]; then
if [[ ${EAPI} != 6 ]]; then
case ${hv_switch} in
-b)
prefix=${BROOT}
;;
-d)
prefix=${ESYSROOT}
;;
esac
else
case ${hv_switch} in case ${hv_switch} in
-b) -b)
die "${FUNCNAME} -b is not supported in EAPI ${EAPI}" die "${FUNCNAME} -b is not supported in EAPI ${EAPI}"
;; ;;
-d) -d)
prefix=${EPREFIX}
hv_switch= hv_switch=
;; ;;
esac esac
@ -168,7 +157,7 @@ get_llvm_prefix() {
has_version ${hv_switch} "sys-devel/llvm:${slot}" || continue has_version ${hv_switch} "sys-devel/llvm:${slot}" || continue
fi fi
echo "${prefix}/usr/lib/llvm/${slot}" echo "${slot}"
return return
done done
@ -180,6 +169,31 @@ get_llvm_prefix() {
die "No LLVM slot${1:+ <= ${1}} satisfying the package's dependencies found installed!" die "No LLVM slot${1:+ <= ${1}} satisfying the package's dependencies found installed!"
} }
# @FUNCTION: get_llvm_prefix
# @USAGE: [-b|-d] [<max_slot>]
# @DESCRIPTION:
# Find the newest LLVM install that is acceptable for the package,
# and print an absolute path to it.
#
# The options and behavior is the same as for get_llvm_slot.
get_llvm_prefix() {
debug-print-function ${FUNCNAME} "${@}"
local prefix=${EPREFIX}
if [[ ${EAPI} != 6 ]]; then
case ${1} in
-b)
prefix=${BROOT}
;;
*)
prefix=${ESYSROOT}
;;
esac
fi
echo "${prefix}/usr/lib/llvm/$(get_llvm_slot "${@}")"
}
# @FUNCTION: llvm_fix_clang_version # @FUNCTION: llvm_fix_clang_version
# @USAGE: <variable-name>... # @USAGE: <variable-name>...
# @DESCRIPTION: # @DESCRIPTION:
@ -256,12 +270,16 @@ llvm_pkg_setup() {
debug-print-function ${FUNCNAME} "${@}" debug-print-function ${FUNCNAME} "${@}"
if [[ ${MERGE_TYPE} != binary ]]; then if [[ ${MERGE_TYPE} != binary ]]; then
LLVM_SLOT=$(get_llvm_slot "${LLVM_MAX_SLOT}")
llvm_fix_clang_version CC CPP CXX llvm_fix_clang_version CC CPP CXX
# keep in sync with profiles/features/llvm/make.defaults! # keep in sync with profiles/features/llvm/make.defaults!
llvm_fix_tool_path ADDR2LINE AR AS LD NM OBJCOPY OBJDUMP RANLIB llvm_fix_tool_path ADDR2LINE AR AS LD NM OBJCOPY OBJDUMP RANLIB
llvm_fix_tool_path READELF STRINGS STRIP llvm_fix_tool_path READELF STRINGS STRIP
local llvm_path=$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin local prefix=${EPREFIX}
[[ ${EAPI} != 6 ]] && prefix=${ESYSROOT}
local llvm_path=${prefix}/usr/lib/llvm/${LLVM_SLOT}/bin
local IFS=: local IFS=:
local split_path=( ${PATH} ) local split_path=( ${PATH} )
local new_path=() local new_path=()

View File

@ -442,7 +442,8 @@ tc-env_build() {
# @CODE # @CODE
econf_build() { econf_build() {
local CBUILD=${CBUILD:-${CHOST}} local CBUILD=${CBUILD:-${CHOST}}
tc-env_build econf --build=${CBUILD} --host=${CBUILD} "$@" econf_env() { CHOST=${CBUILD} econf "$@"; }
tc-env_build econf_env "$@"
} }
# @FUNCTION: tc-ld-is-gold # @FUNCTION: tc-ld-is-gold
@ -466,7 +467,7 @@ tc-ld-is-gold() {
# options and not CFLAGS/CXXFLAGS. # options and not CFLAGS/CXXFLAGS.
local base="${T}/test-tc-gold" local base="${T}/test-tc-gold"
cat <<-EOF > "${base}.c" cat <<-EOF > "${base}.c"
int main() { return 0; } int main(void) { return 0; }
EOF EOF
out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
rm -f "${base}"* rm -f "${base}"*
@ -499,7 +500,7 @@ tc-ld-is-lld() {
# options and not CFLAGS/CXXFLAGS. # options and not CFLAGS/CXXFLAGS.
local base="${T}/test-tc-lld" local base="${T}/test-tc-lld"
cat <<-EOF > "${base}.c" cat <<-EOF > "${base}.c"
int main() { return 0; } int main(void) { return 0; }
EOF EOF
out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
rm -f "${base}"* rm -f "${base}"*
@ -538,7 +539,7 @@ tc-ld-force-bfd() {
# to its value (like multilib). #545218 # to its value (like multilib). #545218
local ld=$(tc-getLD "$@") local ld=$(tc-getLD "$@")
local bfd_ld="${ld%% *}.bfd" local bfd_ld="${ld%% *}.bfd"
local path_ld=$(which "${bfd_ld}" 2>/dev/null) local path_ld=$(type -P "${bfd_ld}" 2>/dev/null)
[[ -e ${path_ld} ]] && export LD=${bfd_ld} [[ -e ${path_ld} ]] && export LD=${bfd_ld}
# Set up LDFLAGS to select bfd based on the gcc / clang version. # Set up LDFLAGS to select bfd based on the gcc / clang version.
@ -583,7 +584,7 @@ _tc-has-openmp() {
local base="${T}/test-tc-openmp" local base="${T}/test-tc-openmp"
cat <<-EOF > "${base}.c" cat <<-EOF > "${base}.c"
#include <omp.h> #include <omp.h>
int main() { int main(void) {
int nthreads, tid, ret = 0; int nthreads, tid, ret = 0;
#pragma omp parallel private(nthreads, tid) #pragma omp parallel private(nthreads, tid)
{ {
@ -1083,7 +1084,7 @@ gen_usr_ldscript() {
# If they're using gold, manually invoke the old bfd. #487696 # If they're using gold, manually invoke the old bfd. #487696
local d="${T}/bfd-linker" local d="${T}/bfd-linker"
mkdir -p "${d}" mkdir -p "${d}"
ln -sf $(which ${CHOST}-ld.bfd) "${d}"/ld ln -sf $(type -P ${CHOST}-ld.bfd) "${d}"/ld
flags+=( -B"${d}" ) flags+=( -B"${d}" )
fi fi
output_format=$($(tc-getCC) "${flags[@]}" 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') output_format=$($(tc-getCC) "${flags[@]}" 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')

View File

@ -0,0 +1,107 @@
**Alliance for Open Media Patent License 1.0**
1. **License Terms.**
**Patent License.** Subject to the terms and conditions of this License, each
Licensor, on behalf of itself and successors in interest and assigns,
grants Licensee a non-sublicensable, perpetual, worldwide, non-exclusive,
no-charge, royalty-free, irrevocable (except as expressly stated in this
License) patent license to its Necessary Claims to make, use, sell, offer
for sale, import or distribute any Implementation.
**Conditions.**
*Availability.* As a condition to the grant of rights to Licensee to make,
sell, offer for sale, import or distribute an Implementation under
Section 1.1, Licensee must make its Necessary Claims available under
this License, and must reproduce this License with any Implementation
as follows:
a. For distribution in source code, by including this License in the
root directory of the source code with its Implementation.
b. For distribution in any other form (including binary, object form,
and/or hardware description code (e.g., HDL, RTL, Gate Level Netlist,
GDSII, etc.)), by including this License in the documentation, legal
notices, and/or other written materials provided with the
Implementation.
*Additional Conditions.* This license is directly from Licensor to
Licensee. Licensee acknowledges as a condition of benefiting from it
that no rights from Licensor are received from suppliers, distributors,
or otherwise in connection with this License.
**Defensive Termination**. If any Licensee, its Affiliates, or its agents
initiates patent litigation or files, maintains, or voluntarily
participates in a lawsuit against another entity or any person asserting
that any Implementation infringes Necessary Claims, any patent licenses
granted under this License directly to the Licensee are immediately
terminated as of the date of the initiation of action unless 1) that suit
was in response to a corresponding suit regarding an Implementation first
brought against an initiating entity, or 2) that suit was brought to
enforce the terms of this License (including intervention in a third-party
action by a Licensee).
**Disclaimers.** The Reference Implementation and Specification are provided
"AS IS" and without warranty. The entire risk as to implementing or
otherwise using the Reference Implementation or Specification is assumed
by the implementer and user. Licensor expressly disclaims any warranties
(express, implied, or otherwise), including implied warranties of
merchantability, non-infringement, fitness for a particular purpose, or
title, related to the material. IN NO EVENT WILL LICENSOR BE LIABLE TO
ANY OTHER PARTY FOR LOST PROFITS OR ANY FORM OF INDIRECT, SPECIAL,
INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER FROM ANY CAUSES OF
ACTION OF ANY KIND WITH RESPECT TO THIS LICENSE, WHETHER BASED ON BREACH
OF CONTRACT, TORT (INCLUDING NEGLIGENCE), OR OTHERWISE, AND WHETHER OR
NOT THE OTHER PARTRY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2. **Definitions.**
**Affiliate.** "Affiliate" means an entity that directly or indirectly
Controls, is Controlled by, or is under common Control of that party.
**Control.** "Control" means direct or indirect control of more than 50% of
the voting power to elect directors of that corporation, or for any other
entity, the power to direct management of such entity.
**Decoder.** "Decoder" means any decoder that conforms fully with all
non-optional portions of the Specification.
**Encoder.** "Encoder" means any encoder that produces a bitstream that can
be decoded by a Decoder only to the extent it produces such a bitstream.
**Final Deliverable.** "Final Deliverable" means the final version of a
deliverable approved by the Alliance for Open Media as a Final
Deliverable.
**Implementation.** "Implementation" means any implementation, including the
Reference Implementation, that is an Encoder and/or a Decoder. An
Implementation also includes components of an Implementation only to the
extent they are used as part of an Implementation.
**License.** "License" means this license.
**Licensee.** "Licensee" means any person or entity who exercises patent
rights granted under this License.
**Licensor.** "Licensor" means (i) any Licensee that makes, sells, offers
for sale, imports or distributes any Implementation, or (ii) a person
or entity that has a licensing obligation to the Implementation as a
result of its membership and/or participation in the Alliance for Open
Media working group that developed the Specification.
**Necessary Claims.** "Necessary Claims" means all claims of patents or
patent applications, (a) that currently or at any time in the future,
are owned or controlled by the Licensor, and (b) (i) would be an
Essential Claim as defined by the W3C Policy as of February 5, 2004
(https://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential)
as if the Specification was a W3C Recommendation; or (ii) are infringed
by the Reference Implementation.
**Reference Implementation.** "Reference Implementation" means an Encoder
and/or Decoder released by the Alliance for Open Media as a Final
Deliverable.
**Specification.** "Specification" means the specification designated by
the Alliance for Open Media as a Final Deliverable for which this
License was issued.

View File

@ -0,0 +1,103 @@
https://github.com/nmap/nmap/pull/2580
From 14f8e230a61748b1cde86d13a2cf2353d7ad1fa7 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Fri, 9 Dec 2022 15:58:35 +0000
Subject: [PATCH] zenmap: further Python 3 compatibility fixes
Without this, we get:
```
Traceback (most recent call last):
File "/var/tmp/portage/net-analyzer/nmap-9999/work/nmap-9999/zenmap/setup.py", line 584, in <module>
setup(**setup_args)
File "/usr/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
File "/usr/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/usr/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.10/site-packages/setuptools/dist.py", line 1208, in run_command
super().run_command(command)
File "/usr/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/var/tmp/portage/net-analyzer/nmap-9999/work/nmap-9999/zenmap/setup.py", line 188, in run
self.write_installed_files()
File "/var/tmp/portage/net-analyzer/nmap-9999/work/nmap-9999/zenmap/setup.py", line 419, in write_installed_files
print >> f, output
TypeError: unsupported operand type(s) for >>: 'builtin_function_or_method' and '_io.TextIOWrapper'. Did you mean "print(<message>, file=<output_stream>)"?
make: *** [Makefile:372: install-zenmap] Error 1
```
This is because Python 3 doesn't support Python 2-style print without
parentheses, or specifying the output file in that manner.
Signed-off-by: Sam James <sam@gentoo.org>
--- a/zenmap/setup.py
+++ b/zenmap/setup.py
@@ -215,13 +215,13 @@ def create_uninstaller(self):
#!/usr/bin/env python3
import errno, os, os.path, sys
-print 'Uninstall %(name)s %(version)s'
+print('Uninstall %(name)s %(version)s')
answer = raw_input('Are you sure that you want to uninstall '
'%(name)s %(version)s? (yes/no) ')
if answer != 'yes' and answer != 'y':
- print 'Not uninstalling.'
+ print('Not uninstalling.')
sys.exit(0)
""" % {'name': APP_DISPLAY_NAME, 'version': VERSION}
@@ -237,8 +237,8 @@ def create_uninstaller(self):
# This should never happen (everything gets installed
# inside the root), but if it does, be safe and don't
# delete anything.
- uninstaller += ("print '%s was not installed inside "
- "the root %s; skipping.'\n" % (output, self.root))
+ uninstaller += ("print('%s was not installed inside "
+ "the root %s; skipping.')\n" % (output, self.root))
continue
output = path_strip_prefix(output, self.root)
assert os.path.isabs(output)
@@ -262,24 +262,24 @@ def create_uninstaller(self):
dirs.append(path)
# Delete the files.
for file in files:
- print "Removing '%s'." % file
+ print("Removing '%s'." % file)
try:
os.remove(file)
except OSError as e:
- print >> sys.stderr, ' Error: %s.' % str(e)
+ print(' Error: %s.' % str(e), file=sys.stderr)
# Delete the directories. First reverse-sort the normalized paths by
# length so that child directories are deleted before their parents.
dirs = [os.path.normpath(dir) for dir in dirs]
dirs.sort(key = len, reverse = True)
for dir in dirs:
try:
- print "Removing the directory '%s'." % dir
+ print("Removing the directory '%s'." % dir)
os.rmdir(dir)
except OSError as e:
if e.errno == errno.ENOTEMPTY:
- print "Directory '%s' not empty; not removing." % dir
+ print("Directory '%s' not empty; not removing." % dir)
else:
- print >> sys.stderr, str(e)
+ print(str(e), file=sys.stderr)
"""
uninstaller_file = open(uninstaller_filename, 'w')
@@ -419,7 +419,7 @@ def write_installed_files(self):
with open(INSTALLED_FILES_NAME, "w") as f:
for output in self.get_installed_files():
assert "\n" not in output
- print >> f, output
+ print(output, file=f)
class my_uninstall(Command):

View File

@ -16,10 +16,12 @@
<use> <use>
<flag name="libssh2">Enable SSH support through <pkg>net-libs/libssh2</pkg></flag> <flag name="libssh2">Enable SSH support through <pkg>net-libs/libssh2</pkg></flag>
<flag name="ncat">Install the ncat utility</flag> <flag name="ncat">Install the ncat utility</flag>
<flag name="ndiff">Install the ndiff utility</flag>
<flag name="nping">Install the nping utility</flag> <flag name="nping">Install the nping utility</flag>
<flag name="nse">Include support for the Nmap Scripting Engine (NSE)</flag> <flag name="nse">Include support for the Nmap Scripting Engine (NSE)</flag>
<flag name="symlink">Install symlink to nc</flag> <flag name="symlink">Install symlink to nc</flag>
<flag name="system-lua">Use <pkg>dev-lang/lua</pkg> instead of the bundled liblua</flag> <flag name="system-lua">Use <pkg>dev-lang/lua</pkg> instead of the bundled liblua</flag>
<flag name="zenmap">Install the GTK+ based nmap GUI, zenmap</flag>
</use> </use>
<upstream> <upstream>
<remote-id type="github">nmap/nmap</remote-id> <remote-id type="github">nmap/nmap</remote-id>

View File

@ -6,7 +6,9 @@ EAPI=8
LUA_COMPAT=( lua5-3 ) LUA_COMPAT=( lua5-3 )
LUA_REQ_USE="deprecated" LUA_REQ_USE="deprecated"
PYTHON_COMPAT=( python3_{8..11} ) PYTHON_COMPAT=( python3_{8..11} )
inherit autotools lua-single python-any-r1 toolchain-funcs PLOCALES="de es fr hi hr hu id it ja pl pt_BR pt_PR ro ru sk zh"
PLOCALE_BACKUP="en"
inherit autotools lua-single plocale python-single-r1 toolchain-funcs
DESCRIPTION="Network exploration tool and security / port scanner" DESCRIPTION="Network exploration tool and security / port scanner"
HOMEPAGE="https://nmap.org/" HOMEPAGE="https://nmap.org/"
@ -27,8 +29,9 @@ fi
LICENSE="|| ( NPSL GPL-2 )" LICENSE="|| ( NPSL GPL-2 )"
SLOT="0" SLOT="0"
IUSE="ipv6 libssh2 ncat nping +nse ssl symlink +system-lua" IUSE="ipv6 libssh2 ncat ndiff nping nls +nse ssl symlink +system-lua zenmap"
REQUIRED_USE=" REQUIRED_USE="
${PYTHON_REQUIRED_USE}
system-lua? ( nse ${LUA_REQUIRED_USE} ) system-lua? ( nse ${LUA_REQUIRED_USE} )
symlink? ( ncat ) symlink? ( ncat )
" "
@ -37,12 +40,14 @@ RDEPEND="
dev-libs/liblinear:= dev-libs/liblinear:=
dev-libs/libpcre dev-libs/libpcre
net-libs/libpcap net-libs/libpcap
ndiff? ( ${PYTHON_DEPS} )
libssh2? ( libssh2? (
net-libs/libssh2[zlib] net-libs/libssh2[zlib]
sys-libs/zlib sys-libs/zlib
) )
nls? ( virtual/libintl )
nse? ( sys-libs/zlib ) nse? ( sys-libs/zlib )
ssl? ( dev-libs/openssl:0= ) ssl? ( dev-libs/openssl:= )
symlink? ( symlink? (
ncat? ( ncat? (
!net-analyzer/netcat !net-analyzer/netcat
@ -50,11 +55,18 @@ RDEPEND="
) )
) )
system-lua? ( ${LUA_DEPS} ) system-lua? ( ${LUA_DEPS} )
zenmap? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
dev-python/pygobject:3[${PYTHON_USEDEP}]
')
)
" "
DEPEND="${RDEPEND}" DEPEND="${RDEPEND}"
BDEPEND=" BDEPEND="
${PYTHON_DEPS} ${PYTHON_DEPS}
virtual/pkgconfig virtual/pkgconfig
nls? ( sys-devel/gettext )
" "
if [[ ${PV} != *9999* ]] ; then if [[ ${PV} != *9999* ]] ; then
@ -72,20 +84,30 @@ PATCHES=(
"${FILESDIR}"/${PN}-7.80-ac-config-subdirs.patch "${FILESDIR}"/${PN}-7.80-ac-config-subdirs.patch
"${FILESDIR}"/${PN}-7.91-no-FORTIFY_SOURCE.patch "${FILESDIR}"/${PN}-7.91-no-FORTIFY_SOURCE.patch
"${FILESDIR}"/${PN}-9999-netutil-else.patch "${FILESDIR}"/${PN}-9999-netutil-else.patch
"${FILESDIR}"/${PN}-9999-python3.patch
) )
pkg_setup() { pkg_setup() {
python-any-r1_pkg_setup python-single-r1_pkg_setup
use system-lua && lua-single_pkg_setup use system-lua && lua-single_pkg_setup
} }
src_prepare() { src_prepare() {
default
# Drop bundled libraries
rm -r liblinear/ libpcap/ libpcre/ libssh2/ libz/ || die rm -r liblinear/ libpcap/ libpcre/ libssh2/ libz/ || die
cat "${FILESDIR}"/nls.m4 >> "${S}"/acinclude.m4 || die cat "${FILESDIR}"/nls.m4 >> "${S}"/acinclude.m4 || die
default delete_disabled_locale() {
# Force here as PLOCALES contains supported locales for man
# pages and zenmap doesn't have all of those
rm -rf zenmap/share/zenmap/locale/${1} || die
rm -f zenmap/share/zenmap/locale/${1}.po || die
}
plocale_for_each_disabled_locale delete_disabled_locale
sed -i \ sed -i \
-e '/^ALL_LINGUAS =/{s|$| id|g;s|jp|ja|g}' \ -e '/^ALL_LINGUAS =/{s|$| id|g;s|jp|ja|g}' \
@ -105,23 +127,27 @@ src_configure() {
export ac_cv_path_PYTHON="${PYTHON}" export ac_cv_path_PYTHON="${PYTHON}"
export am_cv_pathless_PYTHON="${EPYTHON}" export am_cv_pathless_PYTHON="${EPYTHON}"
# The bundled libdnet is incompatible with the version available in the local myeconfargs=(
# tree, so we cannot use the system library here. $(use_enable ipv6)
econf \ $(use_enable nls)
$(use_enable ipv6) \ $(use_with libssh2)
$(use_with libssh2) \ $(use_with ncat)
$(use_with ncat) \ $(use_with ndiff)
$(use_with nping) \ $(use_with nping)
$(use_with ssl openssl) \ $(use_with ssl openssl)
$(usex libssh2 --with-zlib) \ $(use_with zenmap)
$(usex nse --with-liblua=$(usex system-lua yes included '' '') --without-liblua) \ $(usex libssh2 --with-zlib)
$(usex nse --with-zlib) \ $(usex nse --with-liblua=$(usex system-lua yes included '' '') --without-liblua)
--cache-file="${S}"/config.cache \ $(usex nse --with-zlib)
--with-libdnet=included \ --cache-file="${S}"/config.cache
--with-pcre="${ESYSROOT}"/usr \ # The bundled libdnet is incompatible with the version available in the
--without-dpdk \ # tree, so we cannot use the system library here.
--without-ndiff \ --with-libdnet=included
--without-zenmap --with-pcre="${ESYSROOT}"/usr
--without-dpdk
)
econf "${myeconfargs[@]}"
} }
src_compile() { src_compile() {
@ -146,5 +172,9 @@ src_install() {
dodoc CHANGELOG HACKING docs/README docs/*.txt dodoc CHANGELOG HACKING docs/README docs/*.txt
if use ndiff || use zenmap ; then
python_optimize
fi
use symlink && dosym /usr/bin/ncat /usr/bin/nc use symlink && dosym /usr/bin/ncat /usr/bin/nc
} }

View File

@ -13,8 +13,8 @@ SRC_URI="https://curl.haxx.se/download/${P}.tar.xz
LICENSE="curl" LICENSE="curl"
SLOT="0" SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap ipv6 kerberos ldap mbedtls nss +openssl +pop3 +progress-meter rtmp samba +smtp ssh ssl sslv3 static-libs test telnet +tftp websockets zstd" IUSE="+adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap ipv6 kerberos ldap mbedtls nss +openssl +pop3 +progress-meter rtmp rustls samba +smtp ssh ssl sslv3 static-libs test telnet +tftp websockets zstd"
IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl" IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_rustls"
IUSE+=" nghttp3 quiche" IUSE+=" nghttp3 quiche"
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/danielstenberg.asc VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/danielstenberg.asc
@ -26,6 +26,7 @@ REQUIRED_USE="
curl_ssl_mbedtls curl_ssl_mbedtls
curl_ssl_nss curl_ssl_nss
curl_ssl_openssl curl_ssl_openssl
curl_ssl_rustls
) )
)" )"
@ -52,6 +53,9 @@ RDEPEND="ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
dev-libs/nss-pem dev-libs/nss-pem
app-misc/ca-certificates app-misc/ca-certificates
) )
rustls? (
net-libs/rustls-ffi:=[${MULTILIB_USEDEP}]
)
) )
http2? ( net-libs/nghttp2:=[${MULTILIB_USEDEP}] ) http2? ( net-libs/nghttp2:=[${MULTILIB_USEDEP}] )
nghttp3? ( nghttp3? (
@ -116,7 +120,7 @@ multilib_src_configure() {
myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt )
#myconf+=( --without-default-ssl-backend ) #myconf+=( --without-default-ssl-backend )
if use ssl ; then if use ssl ; then
myconf+=( --without-gnutls --without-mbedtls --without-nss ) myconf+=( --without-gnutls --without-mbedtls --without-nss --without-rustls )
if use gnutls || use curl_ssl_gnutls; then if use gnutls || use curl_ssl_gnutls; then
einfo "SSL provided by gnutls" einfo "SSL provided by gnutls"
@ -134,6 +138,10 @@ multilib_src_configure() {
einfo "SSL provided by openssl" einfo "SSL provided by openssl"
myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs )
fi fi
if use rustls || use curl_ssl_rustls; then
einfo "SSL provided by rustls"
myconf+=( --with-rustls )
fi
if use curl_ssl_gnutls; then if use curl_ssl_gnutls; then
einfo "Default SSL provided by gnutls" einfo "Default SSL provided by gnutls"
@ -147,6 +155,9 @@ multilib_src_configure() {
elif use curl_ssl_openssl; then elif use curl_ssl_openssl; then
einfo "Default SSL provided by openssl" einfo "Default SSL provided by openssl"
myconf+=( --with-default-ssl-backend=openssl ) myconf+=( --with-default-ssl-backend=openssl )
elif use curl_ssl_rustls; then
einfo "Default SSL provided by rustls"
myconf+=( --with-default-ssl-backend=rustls )
else else
eerror "We can't be here because of REQUIRED_USE." eerror "We can't be here because of REQUIRED_USE."
fi fi
@ -224,7 +235,6 @@ multilib_src_configure() {
$(use_with nghttp3 ngtcp2) $(use_with nghttp3 ngtcp2)
$(use_with quiche) $(use_with quiche)
$(use_with rtmp librtmp) $(use_with rtmp librtmp)
--without-rustls
--without-schannel --without-schannel
--without-secure-transport --without-secure-transport
$(use_enable websockets) $(use_enable websockets)

View File

@ -22,6 +22,7 @@
<flag name="pop3">Enable Post Office Protocol 3 support</flag> <flag name="pop3">Enable Post Office Protocol 3 support</flag>
<flag name="progress-meter">Enable the progress meter</flag> <flag name="progress-meter">Enable the progress meter</flag>
<flag name="rtmp">Enable RTMP Streaming Media support</flag> <flag name="rtmp">Enable RTMP Streaming Media support</flag>
<flag name="rustls">Enable Rustls ssl backend</flag>
<flag name="smtp">Enable Simple Mail Transfer Protocol support</flag> <flag name="smtp">Enable Simple Mail Transfer Protocol support</flag>
<flag name="ssh">Enable SSH urls in curl using libssh2</flag> <flag name="ssh">Enable SSH urls in curl using libssh2</flag>
<flag name="ssl">Enable crypto engine support (via openssl if USE='-gnutls -nss')</flag> <flag name="ssl">Enable crypto engine support (via openssl if USE='-gnutls -nss')</flag>

View File

@ -1,3 +1,2 @@
DIST iperf-2.0.13.tar.gz 326148 BLAKE2B 2a40aea9e2d7fdc935b91be5e4e586bf68dd27604375d2570570145e5db1ea5837469a4989f47586986932bef33cba05ed19ed3a9ce40c0a5531581c6d3ba982 SHA512 40fcfb8f4d27887f53a743ac07396511fb2a7ac59f4b300fe36896bd0241e191945fa253705990711772ee776d5e4227ed62760fc92abebdfebcedd11c27c0ea DIST iperf-2.0.13.tar.gz 326148 BLAKE2B 2a40aea9e2d7fdc935b91be5e4e586bf68dd27604375d2570570145e5db1ea5837469a4989f47586986932bef33cba05ed19ed3a9ce40c0a5531581c6d3ba982 SHA512 40fcfb8f4d27887f53a743ac07396511fb2a7ac59f4b300fe36896bd0241e191945fa253705990711772ee776d5e4227ed62760fc92abebdfebcedd11c27c0ea
DIST iperf-3.11.tar.gz 638521 BLAKE2B b2981c170aac947c407b0a5686cd9708012282044be30ec7e5f993a9d61d55c4517003024890a194f6e55d342be0e60f1bcab27460541d2b9631a3bb88e094a5 SHA512 4be3e407f77a083d826bddc5ce2939047c85f5b816a6aeb3293eacabf2ea23bf13df4226e629ade3bf390c2eb08d6a1cb96f8cdb0fefb290a0fa4c8331d11a17
DIST iperf-3.12.tar.gz 648136 BLAKE2B 95753e4fd2b7ca640b17501f6b21b0e63ea0a3df2ba920c672ffcccd991502cacf4bf3641be1ffbbb993c86e6915ceada5745cffe1796bb86b6a6a1dff8811ae SHA512 9b0600a19750311557833b32ca5c4be809ab98643522f125645dd8f83c482017e42fbe5fc9484624731176a59b67203a468eb81eebf1a37b9c1b3eff818857ba DIST iperf-3.12.tar.gz 648136 BLAKE2B 95753e4fd2b7ca640b17501f6b21b0e63ea0a3df2ba920c672ffcccd991502cacf4bf3641be1ffbbb993c86e6915ceada5745cffe1796bb86b6a6a1dff8811ae SHA512 9b0600a19750311557833b32ca5c4be809ab98643522f125645dd8f83c482017e42fbe5fc9484624731176a59b67203a468eb81eebf1a37b9c1b3eff818857ba

View File

@ -1,40 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit systemd
DESCRIPTION="A TCP, UDP, and SCTP network bandwidth measurement tool"
HOMEPAGE="https://github.com/esnet/iperf"
SRC_URI="https://github.com/esnet/iperf/archive/${PV/_/}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/${P/_/}
LICENSE="BSD"
SLOT="3"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="dev-libs/openssl:=
sctp? ( net-misc/lksctp-tools )"
RDEPEND="${DEPEND}"
DOCS=( README.md RELNOTES.md )
PATCHES=(
"${FILESDIR}"/${PN}-3.10.1-drop-forced-debugging-symbols.patch
)
src_configure() {
econf $(use_with sctp)
}
src_install() {
default
newconfd "${FILESDIR}"/iperf.confd iperf3
newinitd "${FILESDIR}"/iperf3.initd iperf3
systemd_dounit contrib/iperf3.service
find "${ED}" -name '*.la' -delete || die
}

View File

@ -17,6 +17,16 @@
#--- END OF EXAMPLES --- #--- END OF EXAMPLES ---
# Sam James <sam@gentoo.org> (2022-12-11)
# net-libs/rustls-ffi is keyworded here
net-misc/curl -rustls -curl_ssl_rustls
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2022-12-06)
# Quick Sync Video (through intel-mediasdk or oneVPL) is
# only keyworded on amd64
media-video/ffmpeg -qsv
media-libs/gst-plugins-bad -qsv
# Michał Górny <mgorny@gentoo.org> (2022-12-01) # Michał Górny <mgorny@gentoo.org> (2022-12-01)
# Keyworded here. # Keyworded here.
app-alternatives/awk -nawk app-alternatives/awk -nawk

View File

@ -17,6 +17,14 @@
#--- END OF EXAMPLES --- #--- END OF EXAMPLES ---
# Sam James <sam@gentoo.org> (2022-12-11)
# net-libs/rustls-ffi is not yet marked stable
net-misc/curl rustls curl_ssl_rustls
# Sam James <sam@gentoo.org> (2022-12-07)
# Needs unstable media-libs/oneVPL
media-libs/gst-plugins-bad qsv
# Kai-Chun Ning <kaichun.ning@gmail.com> (2022-05-23) # Kai-Chun Ning <kaichun.ning@gmail.com> (2022-05-23)
# Dependency media-libs/intel-hybrid-codec-driver is only available on unstable # Dependency media-libs/intel-hybrid-codec-driver is only available on unstable
# branch # branch

View File

@ -119,6 +119,7 @@ lpsol
zvbi zvbi
gts gts
anthy anthy
snapcast
# Unmask ARM-only video-cards # Unmask ARM-only video-cards
-video_cards_exynos -video_cards_exynos

View File

@ -1,6 +1,16 @@
# Copyright 1999-2022 Gentoo Authors # Copyright 1999-2022 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> (2022-12-11)
# Unkeyworded dependencies
net-misc/curl rustls curl_ssl_rustls
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2022-12-06)
# Quick Sync Video (through intel-mediasdk or oneVPL) is
# only keyworded on amd64
media-video/ffmpeg qsv
media-libs/gst-plugins-bad qsv
# Georgy Yakovlev <gyakovlev@gentoo.org> (2022-12-01) # Georgy Yakovlev <gyakovlev@gentoo.org> (2022-12-01)
# Only supported on ppc64le. # Only supported on ppc64le.
sys-devel/gcc ieee-long-double sys-devel/gcc ieee-long-double

View File

@ -496,7 +496,7 @@ x11-wm/fvwm lock
dev-lisp/clisp hyperspec svm dev-lisp/clisp hyperspec svm
# missing keywords # missing keywords
media-plugins/gst-plugins-meta dts dv lame libvisual modplug taglib vcd wavpack media-plugins/gst-plugins-meta dts dv lame libvisual modplug jack taglib vcd wavpack
# Marius Brehler <marfbre@linux.sungazer.de> (2015-08-13) # Marius Brehler <marfbre@linux.sungazer.de> (2015-08-13)
# missing keyword # missing keyword

View File

@ -1,2 +1,12 @@
# Copyright 2022 Gentoo Authors # Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# sys-boot/gnu-efi upstream hasn't merged the loong port yet
app-crypt/efitools
app-crypt/pesign
app-crypt/sbsigntools
sys-apps/fwupd-efi
sys-boot/elilo
sys-boot/refind
sys-kernel/installkernel-systemd-boot

View File

@ -1,6 +1,51 @@
# Copyright 2022 Gentoo Authors # Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# WANG Xuerui <xen0n@gentoo.org> (2022-12-06)
# dev-cpp/glog fails tests, needs checknig
media-libs/opencv glog contribsfm
# WANG Xuerui <xen0n@gentoo.org> (2022-12-06)
# sci-libs/gdal not keyworded yet
media-libs/opencv gdal
# WANG Xuerui <xen0n@gentoo.org> (2022-12-06)
# app-crypt/heimdal not keyworded yet
net-nds/openldap kerberos
# WANG Xuerui <xen0n@gentoo.org> (2022-12-06)
# net-vpn/ocserv fails tests, probably kernel config related but needs
# further investigation.
net-vpn/openconnect test
# WANG Xuerui <xen0n@gentoo.org> (2022-12-06)
# dev-python/pyside2 not keyworded yet
dev-python/QtPy pyside2
dev-python/qtconsole test
# WANG Xuerui <xen0n@gentoo.org> (2022-12-06)
# dev-qt/qtwebengine:5 isn't available on loong.
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)
# <dev-cpp/tbb-2021 fails to build on loong w/ gcc-13
sci-libs/spqr tbb
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# in-tree version of sys-apps/flashrom (1.2) is outdated and cannot build
# on loong
sys-apps/fwupd flashrom
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# sys-boot/gnu-efi upstream hasn't merged the loong port yet
sys-apps/fwupd uefi
sys-apps/systemd gnuefi
sys-apps/systemd-utils boot
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05) # WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# The loong port of sys-boot/grub:2 isn't upstreamed yet. # The loong port of sys-boot/grub:2 isn't upstreamed yet.
dev-util/ostree grub dev-util/ostree grub
@ -59,6 +104,7 @@ dev-libs/boost -context
# WANG Xuerui <xen0n@gentoo.org> (2022-12-02) # WANG Xuerui <xen0n@gentoo.org> (2022-12-02)
# dev-qt/qtlocation:5 fails to compile with gcc-13 for now. # dev-qt/qtlocation:5 fails to compile with gcc-13 for now.
dev-python/PyQt5 location dev-python/PyQt5 location
dev-python/QtPy test
# WANG Xuerui <xen0n@gentoo.org> (2022-12-01) # WANG Xuerui <xen0n@gentoo.org> (2022-12-01)
# sys-libs/libhugetlbfs isn't buildable here yet due to arch-specific code. # sys-libs/libhugetlbfs isn't buildable here yet due to arch-specific code.
@ -111,7 +157,10 @@ mate-base/mate help
# Sanitizers partially supported on this architecture. # Sanitizers partially supported on this architecture.
# #
# ASan: https://reviews.llvm.org/D129418 (LLVM 15 and above) # ASan: https://reviews.llvm.org/D129418 (LLVM 15 and above)
# TSan: https://reviews.llvm.org/D139292 (LLVM 16 since 20221208)
# UBSan: https://reviews.llvm.org/D139292 (LLVM 16 since 20221208)
>=sys-libs/compiler-rt-sanitizers-15 -asan >=sys-libs/compiler-rt-sanitizers-15 -asan
>=sys-libs/compiler-rt-sanitizers-16.0.0_pre20221210 -tsan -ubsan
# WANG Xuerui <xen0n@gentoo.org> (2022-07-08) # WANG Xuerui <xen0n@gentoo.org> (2022-07-08)
# virtual/{jdk,jre} is not available on loong yet. # virtual/{jdk,jre} is not available on loong yet.
@ -127,7 +176,6 @@ net-libs/libssh mbedtls
# WANG Xuerui <xen0n@gentoo.org> (2022-04-24) # WANG Xuerui <xen0n@gentoo.org> (2022-04-24)
# Unmask experimental-loong on packages; we're loong. # Unmask experimental-loong on packages; we're loong.
dev-libs/libffi -experimental-loong dev-libs/libffi -experimental-loong
sys-kernel/linux-headers -experimental-loong
sys-libs/glibc -experimental-loong sys-libs/glibc -experimental-loong
sys-libs/libseccomp -experimental-loong sys-libs/libseccomp -experimental-loong

View File

@ -1,6 +1,10 @@
# Copyright 2022 Gentoo Authors # Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# media-libs/xine-lib not tested
xine
# WANG Xuerui <xen0n@gentoo.org> (2022-12-05) # WANG Xuerui <xen0n@gentoo.org> (2022-12-05)
# Respective dependency fails to build, pending investigation, mask for the # Respective dependency fails to build, pending investigation, mask for the
# time being # time being
@ -54,19 +58,12 @@ opencl
valgrind valgrind
# Temporarily masked during initial keywording # Temporarily masked during initial keywording
audit
doc doc
efl
elogind elogind
emacs emacs
fam fam
gtk4
gtk-doc
kde
latex
ldap ldap
mpi mpi
sctp
systemtap systemtap
tk tk
tpm tpm

View File

@ -1,7 +1,2 @@
# Copyright 1999-2022 Gentoo Authors # Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# Viorel Munteanu <ceamac@gentoo.org> (2022-11-04)
# Upstream dropped the x86 build. Bug #879519
# Removal on 2022-12-04.
net-im/mattermost-desktop-bin

View File

@ -7,7 +7,7 @@
# Andreas Sturmlechner <asturm@gentoo.org> (2022-06-14) # Andreas Sturmlechner <asturm@gentoo.org> (2022-06-14)
# Only python 3.9 supported, bug #835921 # Only python 3.9 supported, bug #835921
dev-util/kdevelop-python:5 python_single_target_python3_9 <dev-util/kdevelop-python-22.12.0:5 python_single_target_python3_9
# Patrick McLean <chutzpah@gentoo.org) (2022-05-04) # Patrick McLean <chutzpah@gentoo.org) (2022-05-04)
# Default to lua 5.4 (upstream requires 5.3 or higher) # Default to lua 5.4 (upstream requires 5.3 or higher)

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 package.use.mask # Please use the same syntax as in package.use.mask
# Sam James <sam@gentoo.org> (2022-12-07)
# Needs unstable media-libs/oneVPL
media-libs/gst-plugins-bad qsv
# Guillermo Joandet <gjoandet@gmail.com> (2022-11-22) # Guillermo Joandet <gjoandet@gmail.com> (2022-11-22)
# app-text/pandoc is not stable # app-text/pandoc is not stable
net-libs/gssdp man net-libs/gssdp man

View File

@ -10,10 +10,6 @@
# Bug #875053 # Bug #875053
video_cards_nv video_cards_nv
# Brian Evans <grknight@gentoo.org> (2022-09-30)
# PHP 8.2 is in RC
php_targets_php8-2
# Sam James <sam@gentoo.org> (2022-08-02) # Sam James <sam@gentoo.org> (2022-08-02)
# Masked for testing. The split of some packages may still # Masked for testing. The split of some packages may still
# change. bug #838970. # change. bug #838970.

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
# Brian Evans <grknight@gentoo.org> (2022-12-09)
# PHP 8.2 is in testing
php_targets_php8-2
# Alfredo Tupone <tupone@gentoo.org> (2022-12-4) # Alfredo Tupone <tupone@gentoo.org> (2022-12-4)
# sys-devel/gcc:12 is not stable yet # sys-devel/gcc:12 is not stable yet
ada_target_gcc_12_2_0 ada_target_gcc_12_2_0

View File

@ -0,0 +1,2 @@
..
../../../../../../targets/desktop/gnome

View File

@ -0,0 +1,2 @@
..
../../../../../../../targets/desktop/gnome/systemd

View File

@ -0,0 +1,2 @@
..
../../../../../targets/desktop

View File

@ -0,0 +1,2 @@
..
../../../../releases/23.0

View File

@ -0,0 +1,2 @@
..
../../../../../../../targets/desktop/gnome

View File

@ -0,0 +1,2 @@
..
../../../../../../targets/desktop

View File

@ -0,0 +1,2 @@
..
../../../../../features/split-usr

View File

@ -0,0 +1,2 @@
..
../../../../../targets/systemd

View File

@ -0,0 +1,2 @@
..
../../../../../../../../features/merged-usr

View File

@ -0,0 +1,2 @@
..
../../../../../../../features/merged-usr

View File

@ -0,0 +1,2 @@
..
../../../../../../targets/desktop/gnome

View File

@ -0,0 +1,2 @@
..
../../../../../../../targets/desktop/gnome/systemd

View File

@ -0,0 +1,2 @@
..
../../../../../targets/desktop

View File

@ -0,0 +1,2 @@
..
../../../../../../targets/desktop/plasma

View File

@ -0,0 +1,2 @@
..
../../../../../../../targets/systemd

View File

@ -0,0 +1,2 @@
..
../../../../../features/hardened/amd64

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