Merge pull request #433 from flatcar/buildbot/weekly-package-updates-2023-03-27

Weekly package updates 2023-03-27
This commit is contained in:
Krzesimir Nowak 2023-04-04 09:44:07 +02:00 committed by GitHub
commit 460fa1bef7
165 changed files with 3334 additions and 1710 deletions

View File

@ -371,6 +371,8 @@ sys-libs/zlib
virtual/libcrypt
virtual/libelf
virtual/perl-Carp
virtual/perl-Data-Dumper
virtual/perl-Encode
virtual/perl-Exporter
virtual/perl-ExtUtils-MakeMaker
virtual/perl-File-Spec

View File

@ -0,0 +1,32 @@
Gentoo Bug: https://bugs.gentoo.org/898176
Upstream Commit Link: https://git.savannah.gnu.org/cgit/tar.git/commit/?id=3da78400eafcccb97e2f2fd4b227ea40d794ede8
From 3da78400eafcccb97e2f2fd4b227ea40d794ede8 Mon Sep 17 00:00:00 2001
From: Sergey Poznyakoff <gray@gnu.org>
Date: Sat, 11 Feb 2023 11:57:39 +0200
Subject: [PATCH] Fix boundary checking in base-256 decoder
* src/list.c (from_header): Base-256 encoding is at least 2 bytes
long.
---
src/list.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/list.c b/src/list.c
index 9fafc425..86bcfdd1 100644
--- a/src/list.c
+++ b/src/list.c
@@ -881,8 +881,9 @@ from_header (char const *where0, size_t digs, char const *type,
where++;
}
}
- else if (*where == '\200' /* positive base-256 */
- || *where == '\377' /* negative base-256 */)
+ else if (where <= lim - 2
+ && (*where == '\200' /* positive base-256 */
+ || *where == '\377' /* negative base-256 */))
{
/* Parse base-256 output. A nonnegative number N is
represented as (256**DIGS)/2 + N; a negative number -N is
--
2.39.2.637.g21b0678d19-goog

View File

@ -38,8 +38,13 @@ PDEPEND="
"
src_configure() {
# -fanalyzer doesn't make sense for us in ebuilds, as it's for static analysis
export gl_cv_warn_c__fanalyzer=no
local myeconfargs=(
--bindir="${EPREFIX}"/bin
# Avoid -Werror
--disable-gcc-warnings
--enable-backup-scripts
--libexecdir="${EPREFIX}"/usr/sbin
$(use_with acl posix-acls)

View File

@ -0,0 +1,99 @@
# Copyright 1999-2023 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/tar.asc
inherit verify-sig
DESCRIPTION="Use this to make tarballs :)"
HOMEPAGE="https://www.gnu.org/software/tar/"
SRC_URI="mirror://gnu/tar/${P}.tar.xz
https://alpha.gnu.org/gnu/tar/${P}.tar.xz"
SRC_URI+=" verify-sig? (
mirror://gnu/tar/${P}.tar.xz.sig
https://alpha.gnu.org/gnu/tar/${P}.tar.xz.sig
)"
LICENSE="GPL-3+"
SLOT="0"
if [[ -z "$(ver_cut 3)" ]] || [[ "$(ver_cut 3)" -lt 90 ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
IUSE="acl minimal nls selinux xattr"
RDEPEND="
acl? ( virtual/acl )
selinux? ( sys-libs/libselinux )
"
DEPEND="${RDEPEND}
xattr? ( elibc_glibc? ( sys-apps/attr ) )
"
BDEPEND="
nls? ( sys-devel/gettext )
verify-sig? ( sec-keys/openpgp-keys-tar )
"
PDEPEND="
app-alternatives/tar
"
PATCHES=(
"${FILESDIR}"/${P}-fix-cve-2022-48303.patch
)
src_configure() {
# -fanalyzer doesn't make sense for us in ebuilds, as it's for static analysis
export gl_cv_warn_c__fanalyzer=no
local myeconfargs=(
--bindir="${EPREFIX}"/bin
# Avoid -Werror
--disable-gcc-warnings
--enable-backup-scripts
--libexecdir="${EPREFIX}"/usr/sbin
$(use_with acl posix-acls)
$(use_enable nls)
$(use_with selinux)
$(use_with xattr xattrs)
# autoconf looks for gtar before tar (in configure scripts), hence
# in Prefix it is important that it is there, otherwise, a gtar from
# the host system (FreeBSD, Solaris, Darwin) will be found instead
# of the Prefix provided (GNU) tar
--program-prefix=g
)
FORCE_UNSAFE_CONFIGURE=1 econf "${myeconfargs[@]}"
}
src_install() {
default
# a nasty yet required piece of baggage
exeinto /etc
doexe "${FILESDIR}"/rmt
mv "${ED}"/usr/sbin/{gbackup,backup-tar} || die
mv "${ED}"/usr/sbin/{grestore,restore-tar} || die
mv "${ED}"/usr/sbin/{g,}backup.sh || die
mv "${ED}"/usr/sbin/{g,}dump-remind || die
if use minimal ; then
find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
-type f -a '!' -name gtar \
-delete || die
fi
if ! use minimal; then
dosym grmt /usr/sbin/rmt
fi
dosym grmt.8 /usr/share/man/man8/rmt.8
}
pkg_postinst() {
# ensure to preserve the symlink before app-alternatives/tar
# is installed
if [[ ! -h ${EROOT}/bin/tar ]]; then
ln -s gtar "${EROOT}/bin/tar" || die
fi
}

View File

@ -14,7 +14,7 @@ S="${WORKDIR}"/${P}/build/meson
LICENSE="|| ( BSD GPL-2 )"
SLOT="0/1"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~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 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+lzma lz4 static-libs test zlib"
RESTRICT="!test? ( test )"

View File

@ -1,4 +1,5 @@
DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-9.0.1157.tar.gz 16924574 BLAKE2B 0cdc6cf61f5abdaff0762b98550bfa5bae8f0485ddd0e9947a5fe52390f9da54fc8f5fdae767fb8f5d3ac2b441253917a80ae7f6092f67b69bdc9b6a630df8e2 SHA512 19240a9bcf5900766db42e2894b1bf7b849274711f17dc267671aacd867b334c3d30f39947dde7dd0245f289e9ad801eeb272f34a2ab15d01fac40bf71a54271
DIST vim-9.0.1363.tar.gz 16974190 BLAKE2B 456114cd7e74836998b51e9272e9c9a12952146f42740b3df66e36ee8e47c8c0538341d9ac9c877c93e0b356fd9ca46a2016e9386d53e3cbfd51d0e2b113bc5a SHA512 2e79e104d9816438c14f94d0e858766129eb3f706b3a89a9761331d32b46b3f83eeadb2ce0d2ec14392a69122ab8761e57218c0e5731a4453d2b91f53a70c4c8
DIST vim-9.0.1403.tar.gz 16976705 BLAKE2B 9664d52de488086308fcbcda0b0a1167161afbf0efbb40dd9ce9e2393f0ada35e0a44d7f0c3f789d26ae1427604a281f689e87885fbb1557dce12a69898ec46d SHA512 bd83feba38a4aa9b3cf910a0b5a2c153abc4c6eaf9abf0ebee389879ff9ddee51c6f9dba5151aab5df3f73594cf8921d0a0e34121c50e65366cdcdd6482fd00f
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a

View File

@ -0,0 +1,241 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim and app-editors/gvim
VIM_VERSION="9.0"
VIM_PATCHES_VERSION="9.0.1000"
inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils
if [[ ${PV} == 9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/vim/vim.git"
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2"
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
S="${WORKDIR}/vim-${PV}"
DESCRIPTION="vim and gvim shared files"
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
LICENSE="vim"
SLOT="0"
IUSE="nls acl minimal"
# ncurses is only needed by ./configure, so no subslot operator required
DEPEND=">=sys-libs/ncurses-5.2-r2:0"
BDEPEND="sys-devel/autoconf"
if [[ ${PV} != 9999* ]]; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
PATCHES=(
"${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches"
)
fi
# platform-specific checks (bug #898406):
# - acl() -- Solaris
# - statacl() -- AIX
QA_CONFIG_IMPL_DECL_SKIP=(
'acl'
'statacl'
)
pkg_setup() {
# people with broken alphabets run into trouble. bug #82186.
unset LANG LC_ALL
export LC_COLLATE="C"
}
src_prepare() {
default
# Fixup a script to use awk instead of nawk
sed -i \
-e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
"${S}"/runtime/tools/mve.awk || die "sed failed"
# See bug #77841. We remove this file after the tarball extraction.
rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed"
# Read vimrc and gvimrc from /etc/vim
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
# Hopefully this pattern won't break for a while at least.
# This fixes bug #29398 (27 Sep 2003 agriffis)
sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
"${S}"/runtime/doc/syntax.txt \
"${S}"/runtime/doc/tagsrch.txt \
"${S}"/runtime/doc/usr_29.txt \
"${S}"/runtime/menu.vim \
"${S}"/src/configure.ac || die 'sed failed'
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
# this is NeXT, but it's actually just a file in dev-libs/9libs
# This fixes bug #43885 (20 Mar 2004 agriffis)
sed -i 's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
# correctly. To avoid some really entertaining error messages about stuff
# which isn't even in the source file being invalid, we'll do some trickery
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
find "${S}" -name '*.c' | while read c; do
echo >> "$c" || die "echo failed"
done
# Try to avoid sandbox problems. Bug #114475.
if [[ -d "${S}"/src/po ]]; then
sed -i -e \
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
"${S}"/src/po/Makefile || die "sed failed"
fi
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
sed -i -e \
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
# Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for
# everyone since previous flag filtering bugs have turned out to affect
# multiple archs...
replace-flags -O3 -O2
# Fix bug #18245: Prevent "make" from the following chain:
# (1) Notice configure.ac is newer than auto/configure
# (2) Rebuild auto/configure
# (3) Notice auto/configure is newer than auto/config.mk
# (4) Run ./configure (with wrong args) to remake auto/config.mk
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
# Remove src/auto/configure file.
rm -v src/auto/configure || die "rm configure failed"
}
src_configure() {
# Fix bug #37354: Disallow -funroll-all-loops on amd64
# Bug 57859 suggests that we want to do this for all archs
filter-flags -funroll-all-loops
emake -j1 -C src autoconf
# This should fix a sandbox violation (see bug 24447). The hvc
# things are for ppc64, see bug 86433.
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
if [[ -e "${file}" ]]; then
addwrite ${file}
fi
done
# Let Portage do the stripping. Some people like that.
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
local myconf=(
--with-modified-by=Gentoo-${PVR}
--enable-gui=no
--without-x
--disable-darwin
--disable-perlinterp
--disable-pythoninterp
--disable-rubyinterp
--disable-gpm
--disable-selinux
$(use_enable nls)
$(use_enable acl)
)
# Keep Gentoo Prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no
fi
econf "${myconf[@]}"
}
src_compile() {
emake -j1 -C src auto/osdef.h objects
emake tools
}
src_test() { :; }
src_install() {
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
dodir /usr/{bin,share/{man/man1,vim}}
emake -C src \
installruntime \
installmanlinks \
installmacros \
installtutor \
installtutorbin \
installtools \
install-languages \
DESTDIR="${D}" \
BINDIR="${EPREFIX}"/usr/bin \
MANDIR="${EPREFIX}"/usr/share/man \
DATADIR="${EPREFIX}"/usr/share
keepdir ${vimfiles}/keymap
# default vimrc is installed by vim-core since it applies to
# both vim and gvim
insinto /etc/vim/
newins "${FILESDIR}"/vimrc-r6 vimrc
eprefixify "${ED}"/etc/vim/vimrc
if use minimal; then
# To save space, install only a subset of the files.
# Helps minimalize the livecd, bug 65144.
rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die
rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die
rm -v "${ED}"/usr/bin/vimtutor || die
for f in "${ED}${vimfiles}"/colors/*.vim; do
if [[ ${f} != */@(default).vim ]] ; then
printf '%s\0' "${f}"
fi
done | xargs -0 rm -f || die
for f in "${ED}${vimfiles}"/syntax/*.vim; do
if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then
printf '%s\0' "${f}"
fi
done | xargs -0 rm -f || die
fi
newbashcomp "${FILESDIR}"/xxd-completion xxd
# install gvim icon since both vim/gvim desktop files reference it
doicon -s scalable "${FILESDIR}"/gvim.svg
}
pkg_postinst() {
# update documentation tags (from vim-doc.eclass)
update_vim_helptags
# update icon cache
xdg_icon_cache_update
}
pkg_postrm() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# update icon cache
xdg_icon_cache_update
}

View File

@ -1,4 +1,5 @@
DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-9.0.1157.tar.gz 16924574 BLAKE2B 0cdc6cf61f5abdaff0762b98550bfa5bae8f0485ddd0e9947a5fe52390f9da54fc8f5fdae767fb8f5d3ac2b441253917a80ae7f6092f67b69bdc9b6a630df8e2 SHA512 19240a9bcf5900766db42e2894b1bf7b849274711f17dc267671aacd867b334c3d30f39947dde7dd0245f289e9ad801eeb272f34a2ab15d01fac40bf71a54271
DIST vim-9.0.1363.tar.gz 16974190 BLAKE2B 456114cd7e74836998b51e9272e9c9a12952146f42740b3df66e36ee8e47c8c0538341d9ac9c877c93e0b356fd9ca46a2016e9386d53e3cbfd51d0e2b113bc5a SHA512 2e79e104d9816438c14f94d0e858766129eb3f706b3a89a9761331d32b46b3f83eeadb2ce0d2ec14392a69122ab8761e57218c0e5731a4453d2b91f53a70c4c8
DIST vim-9.0.1403.tar.gz 16976705 BLAKE2B 9664d52de488086308fcbcda0b0a1167161afbf0efbb40dd9ce9e2393f0ada35e0a44d7f0c3f789d26ae1427604a281f689e87885fbb1557dce12a69898ec46d SHA512 bd83feba38a4aa9b3cf910a0b5a2c153abc4c6eaf9abf0ebee389879ff9ddee51c6f9dba5151aab5df3f73594cf8921d0a0e34121c50e65366cdcdd6482fd00f
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a

View File

@ -0,0 +1,382 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim-core and app-editors/gvim
VIM_VERSION="9.0"
VIM_PATCHES_VERSION="9.0.1000"
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="threads(+)"
USE_RUBY="ruby27 ruby30 ruby31"
inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils
if [[ ${PV} == 9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/vim/vim.git"
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-${VIM_PATCHES_VERSION}-patches.tar.bz2"
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
DESCRIPTION="Vim, an improved vi-style text editor"
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
LICENSE="vim"
SLOT="0"
IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
REQUIRED_USE="
lua? ( ${LUA_REQUIRED_USE} )
python? ( ${PYTHON_REQUIRED_USE} )
vim-pager? ( !minimal )
"
RDEPEND="
>=app-eselect/eselect-vi-1.1
>=sys-libs/ncurses-5.2-r2:0=
nls? ( virtual/libintl )
acl? ( kernel_linux? ( sys-apps/acl ) )
crypt? ( dev-libs/libsodium:= )
cscope? ( dev-util/cscope )
gpm? ( >=sys-libs/gpm-1.19.3 )
lua? ( ${LUA_DEPS}
$(lua_gen_impl_dep 'deprecated' lua5-1)
)
~app-editors/vim-core-${PV}
!<app-editors/vim-core-8.2.4328-r1
vim-pager? ( app-editors/vim-core[-minimal] )
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
racket? ( dev-scheme/racket )
ruby? ( ${RUBY_DEPS} )
selinux? ( sys-libs/libselinux )
sound? ( media-libs/libcanberra )
tcl? ( dev-lang/tcl:0= )
X? ( x11-libs/libXt )
"
DEPEND="${RDEPEND}"
# configure runs the Lua interpreter
BDEPEND="
sys-devel/autoconf
lua? ( ${LUA_DEPS} )
nls? ( sys-devel/gettext )
"
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
if [[ ${PV} != 9999* ]]; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
PATCHES=(
"${WORKDIR}/vim-patches-vim-${VIM_PATCHES_VERSION}-patches"
)
fi
# platform-specific checks (bug #898452):
# - acl() -- Solaris
# - statacl() -- AIX
QA_CONFIG_IMPL_DECL_SKIP=(
'acl'
'statacl'
)
pkg_setup() {
# people with broken alphabets run into trouble. bug #82186.
unset LANG LC_ALL
export LC_COLLATE="C"
use lua && lua-single_pkg_setup
use python && python-single-r1_pkg_setup
}
src_prepare() {
default
# Fixup a script to use awk instead of nawk
sed -i -e \
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
# Read vimrc and gvimrc from /etc/vim
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
>> "${S}"/src/feature.h || die "echo failed"
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
>> "${S}"/src/feature.h || die "echo failed"
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
# Hopefully this pattern won't break for a while at least.
# This fixes bug #29398 (27 Sep 2003 agriffis)
sed -i -e \
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
"${S}"/runtime/doc/syntax.txt \
"${S}"/runtime/doc/tagsrch.txt \
"${S}"/runtime/doc/usr_29.txt \
"${S}"/runtime/menu.vim \
"${S}"/src/configure.ac || die 'sed failed'
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
# this is NeXT, but it's actually just a file in dev-libs/9libs
# This fixes bug #43885 (20 Mar 2004 agriffis)
sed -i -e \
's/ libc\.h / /' \
"${S}"/src/configure.ac || die 'sed failed'
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
# correctly. To avoid some really entertaining error messages about stuff
# which isn't even in the source file being invalid, we'll do some trickery
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
find "${S}" -name '*.c' | while read c; do
echo >> "$c" || die "echo failed"
done
# conditionally make the manpager.sh script
if use vim-pager; then
cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
#!/bin/sh
sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
vim \\
-c 'let no_plugin_maps = 1' \\
-c 'set nolist nomod ft=man ts=8' \\
-c 'let g:showmarks_enable=0' \\
-c 'runtime! macros/less.vim' -
_EOF_
fi
# Try to avoid sandbox problems. Bug #114475.
if [[ -d "${S}"/src/po ]]; then
sed -i -e \
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
"${S}"/src/po/Makefile || die "sed failed"
fi
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
sed -i -e \
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
# Fix bug 18245: Prevent "make" from the following chain:
# (1) Notice configure.ac is newer than auto/configure
# (2) Rebuild auto/configure
# (3) Notice auto/configure is newer than auto/config.mk
# (4) Run ./configure (with wrong args) to remake auto/config.mk
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
rm src/auto/configure || die "rm failed"
}
src_configure() {
# Fix bug #37354: Disallow -funroll-all-loops on amd64
# Bug #57859 suggests that we want to do this for all archs
filter-flags -funroll-all-loops
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
# everyone since previous flag filtering bugs have turned out to affect
# multiple archs...
replace-flags -O3 -O2
emake -j1 -C src autoconf
# This should fix a sandbox violation (see bug #24447). The hvc
# things are for ppc64, see bug #86433.
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
if [[ -e "${file}" ]]; then
addwrite ${file}
fi
done
local myconf=()
if use minimal; then
myconf=(
--with-features=tiny
--disable-nls
--disable-canberra
--disable-acl
--enable-gui=no
--without-x
--disable-darwin
--disable-luainterp
--disable-perlinterp
--disable-pythoninterp
--disable-mzschemeinterp
--disable-rubyinterp
--disable-selinux
--disable-tclinterp
--disable-gpm
)
else
use debug && append-flags "-DDEBUG"
myconf=(
--with-features=huge
$(use_enable sound canberra)
$(use_enable acl)
$(use_enable crypt libsodium)
$(use_enable cscope)
$(use_enable gpm)
$(use_enable nls)
$(use_enable perl perlinterp)
$(use_enable python python3interp)
$(use_with python python3-command "${PYTHON}")
$(use_enable racket mzschemeinterp)
$(use_enable ruby rubyinterp)
$(use_enable selinux)
$(use_enable tcl tclinterp)
$(use_enable terminal)
)
# --with-features=huge forces on cscope even if we --disable it. We need
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
if ! use cscope; then
sed -i -e \
'/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
fi
if use lua; then
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
# deprecated (in 5.1) luaL_openlib API (#874690)
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
myconf+=(
--enable-luainterp
$(use_with lua_single_target_luajit luajit)
--with-lua-prefix="${EPREFIX}/usr"
)
fi
# don't test USE=X here ... see bug #19115
# but need to provide a way to link against X ... see bug #20093
myconf+=(
--enable-gui=no
--disable-darwin
$(use_with X x)
)
fi
# let package manager strip binaries
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
# keep prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no
fi
econf \
--with-modified-by=Gentoo-${PVR} \
"${myconf[@]}"
}
src_compile() {
# The following allows emake to be used
emake -j1 -C src auto/osdef.h objects
emake
}
src_test() {
einfo
einfo "Starting vim tests. Several error messages will be shown"
einfo "while the tests run. This is normal behaviour and does not"
einfo "indicate a fault."
einfo
ewarn "If the tests fail, your terminal may be left in a strange"
ewarn "state. Usually, running 'reset' will fix this."
einfo
# Don't let vim talk to X
unset DISPLAY
# Arch and opensuse seem to do this and at this point, I'm willing
# to try anything to avoid random test hangs!
export TERM=xterm
# See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5
# for more information on test variables we can use.
# Note that certain variables need vim-compatible regex (not PCRE), see e.g.
# http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml.
#
# Skipped tests:
# - Test_expand_star_star
# Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680)
# - Test_exrc
# Looks in wrong location? (bug #742710)
# - Test_job_tty_in_out
# Fragile and depends on TERM(?)
# - Test_spelldump_bang
# Hangs.
# - Test_fuzzy_completion_env
# Too sensitive to leaked environment variables.
# - Test_term_mouse_multiple_clicks_to_select_mode
# Hangs.
# - Test_spelldump
# Hangs.
export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)'
emake -j1 -C src/testdir nongui
}
# Call eselect vi update with --if-unset
# to respect user's choice (bug #187449)
eselect_vi_update() {
ebegin "Calling eselect vi update"
eselect vi update --if-unset
eend $?
}
src_install() {
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
# Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
# managed by eselect-vi
dobin src/vim
if ! use minimal ; then
dosym vim /usr/bin/vimdiff
fi
dosym vim /usr/bin/rvim
dosym vim /usr/bin/rview
if use vim-pager ; then
dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
insinto ${vimfiles}/macros
doins runtime/macros/manpager.sh
fperms a+x ${vimfiles}/macros/manpager.sh
fi
domenu runtime/vim.desktop
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
# keep in sync with 'complete ... -F' list
bashcomp_alias vim ex vi view rvim rview vimdiff
}
pkg_postinst() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Call eselect vi update
eselect_vi_update
# update desktop file mime cache
xdg_desktop_database_update
}
pkg_postrm() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Call eselect vi update
eselect_vi_update
# update desktop file mime cache
xdg_desktop_database_update
}

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -13,7 +13,7 @@ if [[ ${PV} == *9999 ]]; then
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"
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"

View File

@ -0,0 +1,2 @@
- tar ([CVE-2022-48303](https://nvd.nist.gov/vuln/detail/CVE-2022-48303))
- vim ([CVE-2023-1127](https://nvd.nist.gov/vuln/detail/CVE-2023-1127), [CVE-2023-1175](https://nvd.nist.gov/vuln/detail/CVE-2023-1175), [CVE-2023-1170](https://nvd.nist.gov/vuln/detail/CVE-2023-1170))

View File

@ -0,0 +1,3 @@
- Zstandard ([1.5.4](https://github.com/facebook/zstd/releases/tag/v1.5.4))
- vim ([9.0.1403](https://github.com/vim/vim/releases/tag/v9.0.1403))
- iperf ([3.13](https://github.com/esnet/iperf/blob/3.13/RELNOTES.md))

View File

@ -1,6 +1,4 @@
DIST sqlite-doc-3400100.zip 10934836 BLAKE2B 52adbfa911a5d8556e4e071bf14ad83145023fbd426f285d9724d7f06e41257df53d3c28224581f12b4ca8f699bf3d3ec829ee161374ce0208783e5da72639dc SHA512 1131b0a6304a4dd6287c85d38d1450fd2dd0e3377d88a263e3c4716415e0587750357f25486727b9433797da0331229682565e7a8a3986eba89cfcab550a2d41
DIST sqlite-doc-3410000.zip 10979224 BLAKE2B aa42dd8977b1a2f782fcaecdea9797d0a97c623349854b8bf3050bbc8627482e77c1fd8952633c759e99ab6dd1038ab71fd4942429af9f9422cbc76deaac46ed SHA512 6eff61b7a63ee8cd8c9460b50f6ab6c9bf8074a270e900fee8bf28c1602cc5da35b0c626a780e735f349f08310a924ba83cd1420f2767f8d12d0ee0455374109
DIST sqlite-doc-3410100.zip 10996110 BLAKE2B 03a0c77547ba20957884e202138a280d4f65e25f08e784b06026fdcb97a79999c1065009b8102362d4e58817a359d18245f2f34e98c210faa795b8b96ad4014f SHA512 796e3f75506ab1819043377cfaa96ff156e962b19d1aa5f04da591842ea52bc4e5dc5c69d765d9d7debd34e9075e1c48276d0a57c90d914ccb6236044cad0895
DIST sqlite-doc-3410200.zip 10633275 BLAKE2B 1323179d04b9fa21df4ed93ad1aa89ff943a9d930ef02699aade779f18f28aa45dac8362d6427d7eb896c0c0b20e12f8446050f1fc08c3deef24e395123319c1 SHA512 77099fd3bfdb0c19baedb1248c5ff028a14cbc98d18956dfb13e55289a7dddbe82d25e4522f0cbbe9c2798e0531c354df5a207f89c62dfe0f84877db47bb4f9e
DIST sqlite-src-3400100.zip 13725560 BLAKE2B 24d2efbbf7f8f35888b1e53c98f9c7fece9b1cf0b175bf49b78869253aa753ce47e2db67247183c07368e69d6eb63a6e39c06b212c8fd5ca36c892ff535bedca SHA512 78f8c6396bf8da090671c6f4c41255e60788324fccdaad906c53610eb6e37705f4d25c7f84da3be00b511ddf9f2e0545901f33f5ae4b6e00b1ea9413af095299
DIST sqlite-src-3410000.zip 13831104 BLAKE2B 3bc0828f53c9e1e4344352375ef749fa145579b1a07ef657ca8d05417b5b0a211c785b44613fffe45d4bf74cff6f8e5320b5af7e8e97c1199e3d69916bc6ae6c SHA512 9c39202eb058e421035ffe4d5c9f74164a0ad4a928f6f01e4fa04af0e7efb64635ab5902220dbb37478c5c777170e4c49a171b36a0f908315e187a8f1aa2b5e8
DIST sqlite-src-3410100.zip 13833820 BLAKE2B e863f03355bb47ba4464d953c0191a02845e651ec6ceaa1bb203c9976cf4c11ad2739af3f538c7fb675c863fd0b4980ed4f2237fa7e66abacca3bc4dc1986a72 SHA512 840d2542825db2d1758cf9fa0f7159a8c6c7d40d23a5249d1c7bdf0210a6cc83e4dd8e3393c0c6e76e922a76614a1b5f311e232d7439759bdc0e2fbb4c12244a
DIST sqlite-src-3410200.zip 13836230 BLAKE2B 4edcd65728143b1ea27abe65db8c8353dfa309858e6f40d70f3c376ef9e5613d92c41ed5a3c3282cacef8a29a434e3881f6e47ba5642820331170ceb69321d86 SHA512 28cfa72f2b39d851c38fb757a0c6d0696c22548792ce2fa1be5e2f6084e4bf0a5fb216902b59ccba5b6ebaf140aab954ed7676d84841b58ad063404a119a0c17

View File

@ -0,0 +1,101 @@
https://sqlite.org/forum/forumpost/3a180ba0d4 and https://sqlite.org/forum/forumpost/f9346b11a6
https://sqlite.org/src/info/aa6bd6dff751223e
(-> https://sqlite.org/src/vpatch?from=71215599cd8ebb97&to=aa6bd6dff751223e)
--- a/src/select.c
+++ b/src/select.c
@@ -4236,12 +4236,11 @@
** (17f) the subquery must not be the RHS of a LEFT JOIN.
** (17g) either the subquery is the first element of the outer
** query or there are no RIGHT or FULL JOINs in any arm
** of the subquery. (This is a duplicate of condition (27b).)
** (17h) The corresponding result set expressions in all arms of the
-** compound must have the same affinity. (See restriction (9)
-** on the push-down optimization.)
+** compound must have the same affinity.
**
** The parent and sub-query may contain WHERE clauses. Subject to
** rules (11), (13) and (14), they may also contain ORDER BY,
** LIMIT and OFFSET clauses. The subquery cannot use any compound
** operator other than UNION ALL because all the other compound
@@ -5105,14 +5104,10 @@
**
** (8) If the subquery is a compound that uses UNION, INTERSECT,
** or EXCEPT, then all of the result set columns for all arms of
** the compound must use the BINARY collating sequence.
**
-** (9) If the subquery is a compound, then all arms of the compound must
-** have the same affinity. (This is the same as restriction (17h)
-** for query flattening.)
-**
**
** Return 0 if no changes are made and non-zero if one or more WHERE clause
** terms are duplicated into the subquery.
*/
static int pushDownWhereTerms(
@@ -5139,13 +5134,10 @@
}
#ifndef SQLITE_OMIT_WINDOWFUNC
if( pSel->pWin ) return 0; /* restriction (6b) */
#endif
}
- if( compoundHasDifferentAffinities(pSubq) ){
- return 0; /* restriction (9) */
- }
if( notUnionAll ){
/* If any of the compound arms are connected using UNION, INTERSECT,
** or EXCEPT, then we must ensure that none of the columns use a
** non-BINARY collating sequence. */
for(pSel=pSubq; pSel; pSel=pSel->pPrior){
--- a/test/pushdown.test
+++ b/test/pushdown.test
@@ -120,7 +120,47 @@
SELECT v1.a, v1.b, t0.c0 AS cd FROM t0 LEFT JOIN v0 ON v0.c0!=0, v1
) WHERE a=2 AND b=0 AND cd=0;
} {
2 0 0
}
-
+
+# 2023-02-22 https://sqlite.org/forum/forumpost/bcc4375032
+# Performance regression caused by check-in [1ad41840c5e0fa70] from 2022-11-25.
+# That check-in added a new restriction on push-down. The new restriction is
+# no longer necessary after check-in [27655c9353620aa5] from 2022-12-14.
+#
+do_execsql_test 3.5 {
+ DROP TABLE IF EXISTS t1;
+ CREATE TABLE t1(a INT, b INT, c TEXT, PRIMARY KEY(a,b)) WITHOUT ROWID;
+ INSERT INTO t1(a,b,c) VALUES
+ (1,100,'abc'),
+ (2,200,'def'),
+ (3,300,'abc');
+ DROP TABLE IF EXISTS t2;
+ CREATE TABLE t2(a INT, b INT, c TEXT, PRIMARY KEY(a,b)) WITHOUT ROWID;
+ INSERT INTO t2(a,b,c) VALUES
+ (1,110,'efg'),
+ (2,200,'hij'),
+ (3,330,'klm');
+ CREATE VIEW v3 AS
+ SELECT a, b, c FROM t1
+ UNION ALL
+ SELECT a, b, 'xyz' FROM t2;
+ SELECT * FROM v3 WHERE a=2 AND b=200;
+} {2 200 def 2 200 xyz}
+do_eqp_test 3.6 {
+ SELECT * FROM v3 WHERE a=2 AND b=200;
+} {
+ QUERY PLAN
+ |--CO-ROUTINE v3
+ | `--COMPOUND QUERY
+ | |--LEFT-MOST SUBQUERY
+ | | `--SEARCH t1 USING PRIMARY KEY (a=? AND b=?)
+ | `--UNION ALL
+ | `--SEARCH t2 USING PRIMARY KEY (a=? AND b=?)
+ `--SCAN v3
+}
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+# We want both arms of the compound subquery to use the
+# primary key.
+
finish_test

View File

@ -50,6 +50,11 @@ else
BDEPEND+=" app-arch/unzip"
fi
PATCHES=(
# Will be fixed in 3.42
"${FILESDIR}"/${PN}-3.41.2-perf-regression.patch
)
_fossil_fetch() {
local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}"
local repo_id="${1}"

View File

@ -53,7 +53,7 @@ LICENSE="|| ( Artistic GPL-1+ )"
SLOT="0/${SUBSLOT}"
if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; 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
IUSE="berkdb debug doc gdbm ithreads minimal quadmath"

View File

@ -4,7 +4,7 @@
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/elfutils.gpg
inherit flag-o-matic multilib-minimal verify-sig
inherit autotools flag-o-matic multilib-minimal verify-sig
DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
HOMEPAGE="https://sourceware.org/elfutils/"
@ -44,6 +44,7 @@ BDEPEND="
PATCHES=(
"${WORKDIR}"/${PN}-0.187-patches/
"${FILESDIR}"/${P}-configure-bashisms.patch
)
src_unpack() {
@ -62,6 +63,9 @@ src_prepare() {
eapply "${WORKDIR}"/${PN}-0.187-patches/musl/
fi
# Only here for ${P}-configure-bashisms.patch, delete on next bump!
eautoreconf
if ! use static-libs; then
sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die
fi

View File

@ -0,0 +1,49 @@
https://sourceware.org/git/?p=elfutils.git;a=commit;h=a9834d7df68afde4ee44ee8fef888cf7e799171a
From a9834d7df68afde4ee44ee8fef888cf7e799171a Mon Sep 17 00:00:00 2001
From: Mark Wielaard <mark@klomp.org>
Date: Sun, 5 Mar 2023 13:09:34 +0100
Subject: [PATCH] configure.ac contains Bashisms
Autoconf scripts are supposed to be written in POSIX-compatible shell
language. elfutils commits 0ffe2874e75d48cb88936e119e5284ff2bf664d9
and 3fa98a6f29b0f370e32549ead7eb897c839af980 introduced Bashisms to
configure.ac that cause errors when /bin/sh is not Bash.
Example error when /bin/sh is Dash:
./configure: 8748: test: xyes: unexpected operator
The cause of the error is the use of a non-existent == operator in
expressions passed to the 'test' built-in command. POSIX shell
specifies only an = operator for testing string equality.
* configure.ac: Replace == by = in use_msan and enable_demangler
comparisons.
https://sourceware.org/bugzilla/show_bug.cgi?id=30196
Reported-by: Matt Whitlock <sourceware@mattwhitlock.name>
Signed-off-by: Mark Wielaard <mark@klomp.org>
--- a/configure.ac
+++ b/configure.ac
@@ -169,7 +169,7 @@ if test "$use_msan" = yes; then
CXXFLAGS="$CXXFLAGS -fsanitize=memory -fsanitize-memory-track-origins -D_FORTIFY_SOURCE=0"
LDFLAGS="-shared"
AC_LINK_IFELSE([AC_LANG_SOURCE([int main (int argc, char **argv) { return 0; }])], use_msan=yes, use_msan=no)
- AS_IF([test "x$use_msan" == xyes],
+ AS_IF([test "x$use_msan" = xyes],
ac_cv_zdefs=no NO_UNDEFINED=,
AC_MSG_WARN([clang memory sanitizer not available])
CFLAGS="$old_CFLAGS" CXXFLAGS="$old_CXXFLAGS")
@@ -493,7 +493,7 @@ AC_ARG_ENABLE([demangler],
AS_HELP_STRING([--disable-demangler],
[Disable libstdc++ demangle support]),
[], [enable_demangler=yes])
-AS_IF([test "x$enable_demangler" == xyes],
+AS_IF([test "x$enable_demangler" = xyes],
AC_CHECK_LIB([stdc++], [__cxa_demangle], [dnl
AC_DEFINE([USE_DEMANGLE], [1], [Defined if demangling is enabled])])
AM_CONDITIONAL(DEMANGLE, test "x$ac_cv_lib_stdcpp___cxa_demangle" = "xyes")
--
2.31.1

View File

@ -1,3 +1,4 @@
DIST glib-2.74.5.tar.xz 5211852 BLAKE2B 5bf0069cbf949a946357127682e4f687c7e7b8565037024a232b3e905e65bebb86d016832b6274f743005ec8fe5fcd31eaf99ccece82d9d7c3f924d17502c409 SHA512 2716e0fe984cc5d0714e91fe0de47ee71a8bd0b4c85caee337ddb7e02ac2fb3c8c007ccc1207b29cf901c30a7ec8e3bcca75d69c6fab2a32a8cf14bff974e614
DIST glib-2.74.6.tar.xz 5217312 BLAKE2B 07b0a5cb74c1451ba863d5f9a781a122d3d20af1f1227177025de114279277cacada3dd6ab5eb5ad5c0bff5ac7abab6fdfbe0551f44d07b2ddc9141a0640a8c8 SHA512 6b6d113012ec90f6cf77513ec0132668c49aa7224c806181ad662388701004667cdf6d263050d6f896b8688c085abf461aa3e659eb288e6ba93ba4970a2f181b
DIST glib-2.76.0.tar.xz 5268620 BLAKE2B 74bfba6254787b6b386161c329899fe6a53c87290261866f8aceb6e23ebf0bcacd085b04f480a7297d6fc11d37a676fb2fad5661e9f2668ae81f872ff5e2054f SHA512 812834ca6d840dd9c15c0689685d8bd96f4acd69a89213f807a75732d1aa5efadbed0e0073f05a56a09beb2d4f0be1b83a4642259682aac84302632da2d62370
DIST glib-2.76.1.tar.xz 5270936 BLAKE2B 6e6d15bda7ca6365d5f33e197cad41043f17c2f505997953e4f5222121571dabfa07ac88d0a1e298313021c63ef97e7560128c3f8ddf7f518afba98692555e81 SHA512 7ab8740925fa4ed2d860a35544c475ae905df5fa7fc0cc64ffa8c543df6073794e44c8ff39e3e1de1d677016ef9d27e9bc709d2505d13090faa8d6c47cd64bd0

View File

@ -0,0 +1,279 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_REQ_USE="xml(+)"
PYTHON_COMPAT=( python3_{9..11} )
inherit gnome.org gnome2-utils linux-info meson-multilib multilib python-any-r1 toolchain-funcs xdg
DESCRIPTION="The GLib library of C routines"
HOMEPAGE="https://www.gtk.org/"
LICENSE="LGPL-2.1+"
SLOT="2"
IUSE="dbus debug +elf gtk-doc +mime selinux static-libs sysprof systemtap test utils xattr"
RESTRICT="!test? ( test )"
REQUIRED_USE="gtk-doc? ( test )" # Bug #777636
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
# * elfutils (via libelf) does not build on Windows. gresources are not embedded
# within ELF binaries on that platform anyway and inspecting ELF binaries from
# other platforms is not that useful so exclude the dependency in this case.
# * Technically static-libs is needed on zlib, util-linux and perhaps more, but
# these are used by GIO, which glib[static-libs] consumers don't really seem
# to need at all, thus not imposing the deps for now and once some consumers
# are actually found to static link libgio-2.0.a, we can revisit and either add
# them or just put the (build) deps in that rare consumer instead of recursive
# RDEPEND here (due to lack of recursive DEPEND).
RDEPEND="
!<dev-util/gdbus-codegen-${PV}
>=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
>=dev-libs/libpcre2-10.32:0=[${MULTILIB_USEDEP},unicode(+),static-libs?]
>=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}]
>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
>=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] )
selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] )
xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) )
elf? ( virtual/libelf:0= )
sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}"
# libxml2 used for optional tests that get automatically skipped
BDEPEND="
app-text/docbook-xsl-stylesheets
dev-libs/libxslt
>=sys-devel/gettext-0.19.8
gtk-doc? ( >=dev-util/gtk-doc-1.33
app-text/docbook-xml-dtd:4.2
app-text/docbook-xml-dtd:4.5 )
systemtap? ( >=dev-util/systemtap-1.3 )
${PYTHON_DEPS}
test? ( >=sys-apps/dbus-1.2.14 )
virtual/pkgconfig
"
# TODO: >=dev-util/gdbus-codegen-${PV} test dep once we modify gio/tests/meson.build to use external gdbus-codegen
PDEPEND="
dbus? ( gnome-base/dconf )
mime? ( x11-misc/shared-mime-info )
"
# shared-mime-info needed for gio/xdgmime, bug #409481
# dconf is needed to be able to save settings, bug #498436
MULTILIB_CHOST_TOOLS=(
/usr/bin/gio-querymodules$(get_exeext)
)
pkg_setup() {
if use kernel_linux ; then
CONFIG_CHECK="~INOTIFY_USER"
if use test ; then
CONFIG_CHECK="~IPV6"
WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them."
fi
linux-info_pkg_setup
fi
python-any-r1_pkg_setup
}
src_prepare() {
if use test; then
# TODO: Review the test exclusions, especially now with meson
# Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629, upstream bug #629163
if ! has_version dev-util/desktop-file-utils ; then
ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system,"
ewarn "think on installing it to get these tests run."
sed -i -e "/appinfo\/associations/d" gio/tests/appinfo.c || die
sed -i -e "/g_test_add_func/d" gio/tests/desktop-app-info.c || die
fi
# gdesktopappinfo requires existing terminal (gnome-terminal or any
# other), falling back to xterm if one doesn't exist
#if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then
# ewarn "Some tests will be skipped due to missing terminal program"
# These tests seem to sometimes fail even with a terminal; skip for now and reevulate with meson
# Also try https://gitlab.gnome.org/GNOME/glib/issues/1601 once ready for backport (or in a bump) and file new issue if still fails
sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die
# desktop-app-info/launch* might fail similarly
sed -i -e "/desktop-app-info\/launch-as-manager/d" gio/tests/desktop-app-info.c || die
#fi
# https://bugzilla.gnome.org/show_bug.cgi?id=722604
sed -i -e "/timer\/stop/d" glib/tests/timer.c || die
sed -i -e "/timer\/basic/d" glib/tests/timer.c || die
ewarn "Tests for search-utils have been skipped"
sed -i -e "/search-utils/d" glib/tests/meson.build || die
# Play nice with network-sandbox, but this approach would defeat the purpose of the test
#sed -i -e "s/localhost/127.0.0.1/g" gio/tests/gsocketclient-slow.c || die
else
# Don't build tests, also prevents extra deps, bug #512022
sed -i -e '/subdir.*tests/d' {.,gio,glib}/meson.build || die
fi
# Don't build fuzzing binaries - not used
sed -i -e '/subdir.*fuzzing/d' meson.build || die
# gdbus-codegen is a separate package
sed -i -e '/install_dir/d' gio/gdbus-2.0/codegen/meson.build || die
# Same kind of meson-0.50 issue with some installed-tests files; will likely be fixed upstream soon
sed -i -e '/install_dir/d' gio/tests/meson.build || die
cat > "${T}/glib-test-ld-wrapper" <<-EOF
#!/usr/bin/env sh
exec \${LD:-ld} "\$@"
EOF
chmod a+x "${T}/glib-test-ld-wrapper" || die
sed -i -e "s|'ld'|'${T}/glib-test-ld-wrapper'|g" gio/tests/meson.build || die
default
gnome2_environment_reset
# TODO: python_name sedding for correct python shebang? Might be relevant mainly for glib-utils only
}
multilib_src_configure() {
# TODO: figure a way to pass appropriate values for all cross properties that glib uses (search for get_cross_property)
#if tc-is-cross-compiler ; then
# https://bugzilla.gnome.org/show_bug.cgi?id=756473
# TODO-meson: This should be in meson cross file as 'growing_stack' property; and more, look at get_cross_property
#case ${CHOST} in
#hppa*|metag*) export glib_cv_stack_grows=yes ;;
#*) export glib_cv_stack_grows=no ;;
#esac
#fi
local emesonargs=(
--buildtype $(usex debug debug plain)
-Ddefault_library=$(usex static-libs both shared)
-Druntime_dir="${EPREFIX}"/run
$(meson_feature selinux)
$(meson_use xattr)
-Dlibmount=enabled # only used if host_system == 'linux'
-Dman=true
$(meson_use systemtap dtrace)
$(meson_use systemtap)
$(meson_feature sysprof)
$(meson_native_use_bool gtk-doc gtk_doc)
$(meson_use test tests)
-Dinstalled_tests=false
-Dnls=enabled
-Doss_fuzz=disabled
$(meson_native_use_feature elf libelf)
-Dmultiarch=false
)
meson_src_configure
}
multilib_src_test() {
export XDG_CONFIG_DIRS=/etc/xdg
export XDG_DATA_DIRS=/usr/local/share:/usr/share
export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
export LC_TIME=C # bug #411967
export TZ=UTC
unset GSETTINGS_BACKEND # bug #596380
python_setup
# https://bugs.gentoo.org/839807
local -x SANDBOX_PREDICT=${SANDBOX_PREDICT}
addpredict /usr/b
# Related test is a bit nitpicking
mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
meson_src_test --timeout-multiplier 2 --no-suite flaky
}
multilib_src_install() {
meson_src_install
keepdir /usr/$(get_libdir)/gio/modules
}
multilib_src_install_all() {
# These are installed by dev-util/glib-utils
# TODO: With patching we might be able to get rid of the python-any deps and removals, and test depend on glib-utils instead; revisit now with meson
rm "${ED}/usr/bin/glib-genmarshal" || die
rm "${ED}/usr/share/man/man1/glib-genmarshal.1" || die
rm "${ED}/usr/bin/glib-mkenums" || die
rm "${ED}/usr/share/man/man1/glib-mkenums.1" || die
rm "${ED}/usr/bin/gtester-report" || die
rm "${ED}/usr/share/man/man1/gtester-report.1" || die
# gdbus-codegen manpage installed by dev-util/gdbus-codegen
rm "${ED}/usr/share/man/man1/gdbus-codegen.1" || die
}
pkg_preinst() {
xdg_pkg_preinst
# Make gschemas.compiled belong to glib alone
local cache="/usr/share/glib-2.0/schemas/gschemas.compiled"
if [[ -e ${EROOT}${cache} ]]; then
cp "${EROOT}"${cache} "${ED}"/${cache} || die
else
touch "${ED}"${cache} || die
fi
multilib_pkg_preinst() {
# Make giomodule.cache belong to glib alone
local cache="/usr/$(get_libdir)/gio/modules/giomodule.cache"
if [[ -e ${EROOT}${cache} ]]; then
cp "${EROOT}"${cache} "${ED}"${cache} || die
else
touch "${ED}"${cache} || die
fi
}
# Don't run the cache ownership when cross-compiling, as it would end up with an empty cache
# file due to inability to create it and GIO might not look at any of the modules there
if ! tc-is-cross-compiler ; then
multilib_foreach_abi multilib_pkg_preinst
fi
}
pkg_postinst() {
xdg_pkg_postinst
# glib installs no schemas itself, but we force update for fresh install in case
# something has dropped in a schemas file without direct glib dep; and for upgrades
# in case the compiled schema format could have changed
gnome2_schemas_update
multilib_pkg_postinst() {
gnome2_giomodule_cache_update \
|| die "Update GIO modules cache failed (for ${ABI})"
}
if ! tc-is-cross-compiler ; then
multilib_foreach_abi multilib_pkg_postinst
else
ewarn "Updating of GIO modules cache skipped due to cross-compilation."
ewarn "You might want to run gio-querymodules manually on the target for"
ewarn "your final image for performance reasons and re-run it when packages"
ewarn "installing GIO modules get upgraded or added to the image."
fi
for v in ${REPLACING_VERSIONS}; do
if ver_test "$v" "-lt" "2.63.6"; then
ewarn "glib no longer installs the gio-launch-desktop binary. You may need"
ewarn "to restart your session for \"Open With\" dialogs to work."
fi
done
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
if [[ -z ${REPLACED_BY_VERSION} ]]; then
multilib_pkg_postrm() {
rm -f "${EROOT}"/usr/$(get_libdir)/gio/modules/giomodule.cache
}
multilib_foreach_abi multilib_pkg_postrm
rm -f "${EROOT}"/usr/share/glib-2.0/schemas/gschemas.compiled
fi
}

View File

@ -1,3 +1,4 @@
DIST gobject-introspection-1.74.0.tar.xz 1044008 BLAKE2B 223bb9b8b452f03945f941086e47fb3b14f03f8353f4f903b21e3f494af728652a44de986752374057e90dd8111f21f5b0cd3e00bb0a8c3aa25c8261bb0b9247 SHA512 decff5dda0ec5ec0afda4d6bcd3bdadcbf34289002c0d9c0c77ecf8c5d3f15d196b24d8035041545031006acbdfe76af47c42da061c40e200c87f2c74cd301f0
DIST gobject-introspection-1.75.6.tar.xz 1054100 BLAKE2B 3fb76550fc4f0ede1f0af93ef15d9923d25408ffc7d4f10fa4e10830ce1c7055760ec0fb11985f977eee9e81066e0712b4b6271398febd3e7592919db0335998 SHA512 6fb7b82c46eb79336ec654d34c94213bafd5ea6b293050698714c26afc929c73b6abbe75e09e992f0cccb7168f638a40219d6708e2758f620551a7b39306e0fb
DIST gobject-introspection-1.76.0.tar.xz 1054488 BLAKE2B b5cc25977cf0a61b93fb98919f2c0e30e770431fdd4cfe85a564c50f9bd5e6ea9fec2b61c0b58f98c326c3007c361e1de0aee961538bcfd3b41fdb2a7e48a40b SHA512 76f3d2a74afbc3c819dee9350c39024b8665e704e01f63f877b431d59db42ee52ff636cb314c6be6e30b06bb21286ef37255467cc28ba434dc4dd72edc0cf8e9
DIST gobject-introspection-1.76.1.tar.xz 1055416 BLAKE2B 2251c34b543c95f95bdec6853c8234db1b2e6271e729eaa5abf28e39c7718b326e0813a1214c62fb4634fd11218c4c856e6651de09081b01c9fcf8f73b8cf316 SHA512 84331a30f8854d2259609650c21aadd6363ea1417a75828bd395f8f4346da1c6d6550cff5f2c9f5f6fd6fbf2a9d27b5880c2ee1616fa905c5f362384d481a916

View File

@ -0,0 +1,30 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
GNOME_ORG_MODULE="gobject-introspection"
inherit gnome.org
DESCRIPTION="Build infrastructure for GObject Introspection"
HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
LICENSE="HPND"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
RDEPEND="!<${CATEGORY}/${GNOME_ORG_MODULE}-${PV}"
# Use !<${PV} because mixing gobject-introspection with different version of -common can cause issues like:
# https://forums.gentoo.org/viewtopic-p-7421930.html
src_configure() { :; }
src_compile() { :; }
src_install() {
insinto /usr/share/aclocal
doins m4/introspection.m4
insinto /usr/share/gobject-introspection-1.0
doins Makefile.introspection
}

View File

@ -1,3 +1,4 @@
DIST gobject-introspection-1.74.0.tar.xz 1044008 BLAKE2B 223bb9b8b452f03945f941086e47fb3b14f03f8353f4f903b21e3f494af728652a44de986752374057e90dd8111f21f5b0cd3e00bb0a8c3aa25c8261bb0b9247 SHA512 decff5dda0ec5ec0afda4d6bcd3bdadcbf34289002c0d9c0c77ecf8c5d3f15d196b24d8035041545031006acbdfe76af47c42da061c40e200c87f2c74cd301f0
DIST gobject-introspection-1.75.6.tar.xz 1054100 BLAKE2B 3fb76550fc4f0ede1f0af93ef15d9923d25408ffc7d4f10fa4e10830ce1c7055760ec0fb11985f977eee9e81066e0712b4b6271398febd3e7592919db0335998 SHA512 6fb7b82c46eb79336ec654d34c94213bafd5ea6b293050698714c26afc929c73b6abbe75e09e992f0cccb7168f638a40219d6708e2758f620551a7b39306e0fb
DIST gobject-introspection-1.76.0.tar.xz 1054488 BLAKE2B b5cc25977cf0a61b93fb98919f2c0e30e770431fdd4cfe85a564c50f9bd5e6ea9fec2b61c0b58f98c326c3007c361e1de0aee961538bcfd3b41fdb2a7e48a40b SHA512 76f3d2a74afbc3c819dee9350c39024b8665e704e01f63f877b431d59db42ee52ff636cb314c6be6e30b06bb21286ef37255467cc28ba434dc4dd72edc0cf8e9
DIST gobject-introspection-1.76.1.tar.xz 1055416 BLAKE2B 2251c34b543c95f95bdec6853c8234db1b2e6271e729eaa5abf28e39c7718b326e0813a1214c62fb4634fd11218c4c856e6651de09081b01c9fcf8f73b8cf316 SHA512 84331a30f8854d2259609650c21aadd6363ea1417a75828bd395f8f4346da1c6d6550cff5f2c9f5f6fd6fbf2a9d27b5880c2ee1616fa905c5f362384d481a916

View File

@ -0,0 +1,79 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="xml(+)"
inherit gnome.org meson python-single-r1 xdg
DESCRIPTION="Introspection system for GObject-based libraries"
HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
LICENSE="LGPL-2+ GPL-2+"
SLOT="0"
IUSE="doctool gtk-doc test"
RESTRICT="!test? ( test )"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
# virtual/pkgconfig needed at runtime, bug #505408
RDEPEND="
>=dev-libs/gobject-introspection-common-${PV}
>=dev-libs/glib-2.75.0:2
dev-libs/libffi:=
doctool? (
$(python_gen_cond_dep '
dev-python/mako[${PYTHON_USEDEP}]
dev-python/markdown[${PYTHON_USEDEP}]
')
)
virtual/pkgconfig
${PYTHON_DEPS}
"
# Wants real bison, not app-alternatives/yacc
DEPEND="${RDEPEND}"
BDEPEND="
gtk-doc? (
>=dev-util/gtk-doc-1.19
app-text/docbook-xml-dtd:4.3
app-text/docbook-xml-dtd:4.5
)
sys-devel/bison
sys-devel/flex
test? (
x11-libs/cairo[glib]
$(python_gen_cond_dep '
dev-python/mako[${PYTHON_USEDEP}]
dev-python/markdown[${PYTHON_USEDEP}]
')
)
"
pkg_setup() {
python-single-r1_pkg_setup
}
src_configure() {
local emesonargs=(
$(meson_feature test cairo)
$(meson_feature doctool)
#-Dglib_src_dir
$(meson_use gtk-doc gtk_doc)
#-Dcairo_libname
-Dpython="${EPYTHON}"
#-Dgir_dir_prefix
)
meson_src_configure
}
src_install() {
meson_src_install
python_fix_shebang "${ED}"/usr/bin/
python_optimize "${ED}"/usr/$(get_libdir)/gobject-introspection/giscanner
# Prevent collision with gobject-introspection-common
rm -v "${ED}"/usr/share/aclocal/introspection.m4 \
"${ED}"/usr/share/gobject-introspection-1.0/Makefile.introspection || die
rmdir "${ED}"/usr/share/aclocal || die
}

View File

@ -9,7 +9,6 @@ PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 toolchain-funcs elisp-common
MY_P=${P/_beta/b}
DESCRIPTION="A Python to C compiler"
HOMEPAGE="
https://cython.org/
@ -17,10 +16,9 @@ HOMEPAGE="
https://pypi.org/project/Cython/
"
SRC_URI="
https://github.com/cython/cython/archive/${PV/_beta/b}.tar.gz
-> ${MY_P}.gh.tar.gz
https://github.com/cython/cython/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
@ -43,14 +41,12 @@ BDEPEND="
PATCHES=(
"${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
"${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
"${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
)
SITEFILE=50cython-gentoo.el
distutils_enable_sphinx docs \
dev-python/jinja \
dev-python/sphinx-issues \
dev-python/sphinx-tabs
distutils_enable_sphinx docs
python_compile() {
# Python gets confused when it is in sys.path before build.

View File

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

View File

@ -0,0 +1,20 @@
An empty directory in site-packages is a valid Python module, unfortunately, because
of namespaces. If installing packages in parallel, the pythran module might "exist"
but be empty (hence no __version__ attribute). Catch AttributeError to avoid a narrow
race.
See https://bugs.gentoo.org/902713.
This might still be a Portage issue if there's a substantial delay between creating
the directory and installing the remaining files though.
--- a/Cython/Compiler/Pythran.py
+++ b/Cython/Compiler/Pythran.py
@@ -10,7 +10,7 @@ try:
import pythran
pythran_is_pre_0_9 = tuple(map(int, pythran.__version__.split('.')[0:2])) < (0, 9)
pythran_is_pre_0_9_6 = tuple(map(int, pythran.__version__.split('.')[0:3])) < (0, 9, 6)
-except ImportError:
+except (AttributeError, ImportError):
pythran = None
pythran_is_pre_0_9 = True
pythran_is_pre_0_9_6 = True

View File

@ -5,6 +5,8 @@
EAPI=7
DISTUTILS_USE_PEP517=flit
PYPI_NO_NORMALIZE=1
PYPI_PN=${PN/-/.}
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1 pypi
@ -14,8 +16,6 @@ HOMEPAGE="
https://github.com/jaraco/jaraco.context/
https://pypi.org/project/jaraco.context/
"
SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")"
S=${WORKDIR}/${P/-/.}
LICENSE="MIT"
SLOT="0"

View File

@ -1,2 +1 @@
DIST jaraco.functools-3.5.2.tar.gz 14650 BLAKE2B 63db54c5f3dea7b0ce939ad51fc4c4f5831a620a37a47d416079d4c9ad30cb3d401567a8da036178122431cafd8dc18e4a9b59241cd1fc0b8bd1c057dfb8a034 SHA512 3f67d151f4f6553b3e560b0e6ab71cf726d6c8f36ef5e9f69b6325605547797e19a3f9eb1331cf332db498538953ccaeb75820528e6599fd7cf125abdc073e69
DIST jaraco.functools-3.6.0.tar.gz 16054 BLAKE2B dad26dc73b696dfc62d21f1807a8340e770b35881f3877fdcf6e7e95080f0cd1a81339500c306f4afb2dda896a19ffffcc1715cfc4d37f36594d59af3fd58ac0 SHA512 f249e6cdcbd88e5c89663bcc0467687ea533dc70b7c9260880da8099380b5c925f05933527de6043aa0786709a0ca4d4b183cc18acab69d8e88f63a3360e9efb

View File

@ -1,56 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 7 -- sys-apps/portage dep
EAPI=7
DISTUTILS_USE_PEP517=flit
PYTHON_COMPAT=( pypy3 python3_{9..11} )
inherit distutils-r1 pypi
DESCRIPTION="Additional functions used by other projects by developer jaraco"
HOMEPAGE="
https://github.com/jaraco/jaraco.functools/
https://pypi.org/project/jaraco.functools/
"
SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")"
S=${WORKDIR}/${P/-/.}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
RDEPEND="
>=dev-python/more-itertools-0.12.0-r1[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/jaraco-classes[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_configure() {
grep -q 'build-backend = "setuptools' pyproject.toml ||
die "Upstream changed build-backend, recheck"
# write a custom pyproject.toml to ease setuptools bootstrap
cat > pyproject.toml <<-EOF || die
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "jaraco.functools"
version = "${PV}"
description = "Functools like those found in stdlib"
EOF
}
python_install() {
distutils-r1_python_install
# rename to workaround a bug in pkg_resources
# https://bugs.gentoo.org/834522
mv "${D}$(python_get_sitedir)"/jaraco{_,.}functools-${PV}.dist-info || die
}

View File

@ -5,6 +5,8 @@
EAPI=7
DISTUTILS_USE_PEP517=flit
PYPI_NO_NORMALIZE=1
PYPI_PN=${PN/-/.}
PYTHON_COMPAT=( pypy3 python3_{9..11} )
inherit distutils-r1 pypi
@ -14,12 +16,10 @@ HOMEPAGE="
https://github.com/jaraco/jaraco.functools/
https://pypi.org/project/jaraco.functools/
"
SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")"
S=${WORKDIR}/${P/-/.}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~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 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
RDEPEND="
>=dev-python/more-itertools-0.12.0-r1[${PYTHON_USEDEP}]

View File

@ -5,6 +5,8 @@
EAPI=7
DISTUTILS_USE_PEP517=flit
PYPI_NO_NORMALIZE=1
PYPI_PN=${PN/-/.}
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1 pypi
@ -14,8 +16,6 @@ HOMEPAGE="
https://github.com/jaraco/jaraco.text/
https://pypi.org/project/jaraco.text/
"
SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")"
S=${WORKDIR}/${P/-/.}
LICENSE="MIT"
SLOT="0"

View File

@ -4,12 +4,11 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYPI_NO_NORMALIZE=1
PYPI_PN="MarkupSafe"
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1
MY_PN="MarkupSafe"
MY_P="${MY_PN}-${PV}"
inherit distutils-r1 pypi
DESCRIPTION="Implements a XML/HTML/XHTML Markup safe string for Python"
HOMEPAGE="
@ -17,8 +16,6 @@ HOMEPAGE="
https://github.com/pallets/markupsafe/
https://pypi.org/project/MarkupSafe/
"
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
S=${WORKDIR}/${MY_P}
LICENSE="BSD"
SLOT="0"

View File

@ -1 +1,2 @@
DIST platformdirs-3.1.1.tar.gz 14712 BLAKE2B ddb070cc3c572b03eaa356599d2a0e408f7f0a650378e60b4a7b4fcd740fb9117c73491451588b26d42a4db9b971dbc690f9ddae34ec03e42248120ff5e4e64e SHA512 537557370a05f78279c88cdda4b5abfbe1d2e6d91d69c4dd4049c6b1a8ac3e44a830d787e2b86af85c346e0244a6ba26233db061d7c8d0a3fbd141962609930d
DIST platformdirs-3.2.0.tar.gz 15017 BLAKE2B ce9f180965e0736ae83170b3a055dbb58e2ce59b84a414cd212f0f2f27a6a0a194636d315a30e344046ee1da85f2de3d2e7c58c02a329c4a36129fa617d8feb6 SHA512 2e4613f563b7014b526e1f81f561726a0060983b0e998ce46d070b2f4f4ec26ad46d6a3cd242fb14a420e6439207b9c9eeb31daac7ec65005abc3a74131e5cf8

View File

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

View File

@ -1,3 +1,2 @@
DIST pydantic-1.10.4.gh.tar.gz 898916 BLAKE2B 506a53de6a59f858a7c8fd56cf18f8079d48eb4f6d3ba36d149141a7e2d471819a466bfc1c34c879f5ec90c0de385b2b89d58beb75660da7de282278092e901f SHA512 0566f89518c6f0171c9b49b5fb57e568286ed421d64655dde90a1565d0672bfef6237ed99e4120564ca2562c7e29e08d86db4fcec47e605aaa98d60845688e72
DIST pydantic-1.10.5.gh.tar.gz 900106 BLAKE2B 6ad75bc0e58b2fea8e0e4c2e23e7b8de39779ec6f1acf05b693201f6ef63e2e6765cac2320ecf694086facdc5d38d9213cead7dc267b53bbec97f11e0f6ff67e SHA512 2f25e5ed3016a64af05674a21dd8dccf3af7e075237b0d078433fa347e58482113e243f9c21ddd55677432d22da692cbb24a682c5af2f09bfdb6fb5cbd53d408
DIST pydantic-1.10.6.gh.tar.gz 902014 BLAKE2B ba3a3896cdcd2eecc7bd4e6ad979846de377c94d939519889752b36827eba7b3d245943ba192dd80925c2aa09ef02243aaae5e990a6f7b1ab9a8d0b5ba9830c4 SHA512 094fda0158faeb6021632f7ce3ea2570c19ddb288260d4e0f5a4361ab2684a68b0e6212264b37a4a75166746570098d1c4aa0311797d2cf1a22cef2c1e1f0137
DIST pydantic-1.10.7.gh.tar.gz 903379 BLAKE2B b2dd75a640ca54024a2bf141117a1d738a30a4630bed8f4d0169fc5a6a55ded719727d88c7e78b9a2acc3aec68482e9be8c8bf4776fef668fe4acc3e1fd775df SHA512 948a7935b374719773df50243aed708b3c6789243b9aa0ba239cf1502ddd0e0cec4d701e108f1cc78090c088f3cb1c78b840c39f5e7ad0e61739776f552f284d

View File

@ -1,82 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( pypy3 python3_{9..11} )
inherit distutils-r1
MY_P=${P/_beta/b}
DESCRIPTION="Data parsing and validation using Python type hints"
HOMEPAGE="
https://github.com/pydantic/pydantic/
https://pypi.org/project/pydantic/
"
SRC_URI="
https://github.com/pydantic/pydantic/archive/v${PV/_beta/b}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="+native-extensions"
RDEPEND="
>=dev-python/typing-extensions-4.1.0[${PYTHON_USEDEP}]
"
BDEPEND="
native-extensions? (
dev-python/cython[${PYTHON_USEDEP}]
)
test? (
dev-python/hypothesis[${PYTHON_USEDEP}]
dev-python/pytest-mock[${PYTHON_USEDEP}]
dev-python/python-dotenv[${PYTHON_USEDEP}]
>=dev-python/python-email-validator-1.2.1[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
sed -i -e '/CFLAGS/d' setup.py || die
distutils-r1_src_prepare
}
python_compile() {
if [[ ${EPYTHON} == pypy3 ]] || ! use native-extensions; then
# do not build extensions on PyPy to workaround
# https://github.com/cython/cython/issues/4763
local -x SKIP_CYTHON=1
fi
distutils-r1_python_compile
}
python_test() {
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
local -x PYTEST_PLUGINS=pytest_mock
local EPYTEST_DESELECT=(
# flaky test, known upstream
tests/test_hypothesis_plugin.py::test_can_construct_models_with_all_fields
# mypy linting causes regressions with new mypy versions
tests/mypy
)
case ${EPYTHON} in
pypy3)
EPYTEST_DESELECT+=(
tests/test_private_attributes.py::test_private_attribute
tests/test_private_attributes.py::test_private_attribute_annotation
tests/test_private_attributes.py::test_private_attribute_factory
tests/test_private_attributes.py::test_private_attribute_multiple_inheritance
tests/test_private_attributes.py::test_underscore_attrs_are_private
)
;;
esac
rm -rf pydantic || die
epytest
}

View File

@ -22,7 +22,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos"
IUSE="+native-extensions"
RDEPEND="

View File

@ -4,19 +4,18 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYPI_NO_NORMALIZE=1
PYPI_PN=${PN^}
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1 bash-completion-r1
inherit distutils-r1 bash-completion-r1 pypi
MY_P=${P^}
DESCRIPTION="Pygments is a syntax highlighting package written in Python"
HOMEPAGE="
https://pygments.org/
https://github.com/pygments/pygments/
https://pypi.org/project/Pygments/
"
SRC_URI="mirror://pypi/${MY_P:0:1}/${PN^}/${MY_P}.tar.gz"
S=${WORKDIR}/${MY_P}
LICENSE="BSD-2"
SLOT="0"

View File

@ -1,2 +1,3 @@
DIST b2-4.9.3.tar.gz 975934 BLAKE2B 8d16e7227676786408f0d84efb577806e304a9181b89656dad1243b5b0b48e67d4226fa51ea97d4ea10110e4ea86f3ae2884d711fa4b04e36bdaa68dff0a4710 SHA512 8f861074a50720ad5469277a469523ef5f87ef2aab65d745f4c5e6af0ed8f40af91c43cd42b7845982c065974026ce1ecc77a831cd0c698c7e22fa848cc81009
DIST b2-4.9.5.tar.gz 977680 BLAKE2B 9025554e4c68257a8d12af9db22c3c3e4c13a5244c7ca474fb935a76fb8fdf2a0a7778756a7b022de90d6585edb758e8dbc54e012f2340ab055b1294709625e8 SHA512 398398e1437554aad0dc123bbf30bd61b26266058b872eb18dd84941cccf3bbc8903944c09add7bf5f05fb8424539fd4358e9b1bcdd4dbfbc84d4f41710e92e6
DIST b2-4.9.6.tar.gz 977724 BLAKE2B 15ce459d7051be037bdb477432591baccb4e5339a16385a63205c19815766406f631879f0e1f986e184640466f5b6af5ade72d248975731528032a8e735e483e SHA512 a3dc9dccbf1221971607a15df642d4ad9029c1acaf329e419f363a6e6ddb6062a8ef595aa49810dc2ff3a3f333bfbaed7384819a143cc5847a95daf6fd48ccb1

View File

@ -0,0 +1,70 @@
# Copyright 1999-2023 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

@ -14,3 +14,7 @@ DIST cmake-3.26.0-SHA-256.txt 1646 BLAKE2B 4d206db310af5b0305329755473d936d54adb
DIST cmake-3.26.0-SHA-256.txt.asc 833 BLAKE2B cbbc54efd9e4b0242f28bbb7c6ce435fc31bd28180331537c44538600ec6470b69fe37635c5de8b55eb1eb015b51c0fb2f591b698195b27686644341ef1813b2 SHA512 eb81bf190fd74b2ad2cb9d35fd8248024054ec6e33b5a12ce49da23cc0fac1ec5bae48df748ad9b30680e77e9b51af5dd8e3de02e47b587670d25b372f977fcb
DIST cmake-3.26.0-docs.tar.xz 507564 BLAKE2B 13f0f30cd87ce10e8331573a8bb93c796b7ad2862eba6e7ca676784068931f19ac3e3758b5767f4897933cf432099899668acf0dbf132e367eaa3b54bf674cd9 SHA512 5e140b1a81ab24dc05851717ddd1a7d57bc3c54103328db8826ff190e6d27f5d0d35f4e07f094dec4217aaa8c497abd7c858132775955cb89560c8e080de9279
DIST cmake-3.26.0.tar.gz 10667656 BLAKE2B a1c6970935e103467f0557d244fa630d6f01add9a61f4f6200c711b757b7852eceb9c96f4247c2c09f8582c19a6def0c8b632e8e56574019c630a65c6a77bdd2 SHA512 c9d166989abbae71002fe2fbe589c18794a0d6d2ff61fd197c473ff593066a1a17d12889cd875d63fa8824327c8ad165cb03d1f17e517dcef6b2de3b0f0ee789
DIST cmake-3.26.1-SHA-256.txt 1646 BLAKE2B 7f340fbf52c2b990ba983989a93ce90cbd9fa8d927fd0e74b5b27914a4e03595049627cab6bd5c8e5fd48dc919a0ba16181c9e28e31c61dd02986eff702a4e93 SHA512 a886911e7574c8f1e25f90abd494b9f54c06a6450141e8b742b916a6c70f0b3ab0725e2d8a86c1eb3009cfbc1731a9b273eaa8f6041530b821953ca286d02e98
DIST cmake-3.26.1-SHA-256.txt.asc 833 BLAKE2B cb9ea154f921328018957660f5d655986b14d0beb09ffac7b6d5a7e60d219d99030e958510ea7ba632f786bd335dd466dadaa5e833e33e00ba52bcab5dfe0795 SHA512 d30c8410b6e7a411a8ed28e3adbeeafe9800859097c7adaa38ecfc6b6c601a1c6bd57df21d7208040ae8e71f6b92a0dc0f8275ce222fab73ec42e82bf5553ed3
DIST cmake-3.26.1-docs.tar.xz 507596 BLAKE2B 872c334051ba7b836c618ee33532eae2afd83c94a94234757a884a57b64504e071fe499d7c648cf4f8c532406928f3f59de95cdfeefc8476259ef600855ec2f4 SHA512 6393d7d41489c6d14deaf0192658d800ace6482c1127295c53dac90a325c10a19f1ef408c866767e710e7b725141c77ef54ac888bae24d463f7a8e3c1b06c544
DIST cmake-3.26.1.tar.gz 10667838 BLAKE2B 7f0f950c038300d2d5e7b70f1cb88eb693bb3a361cb61fbc838efd6208b25b8c0082b04b73926dc0ed960edaeab99d5dcf4ba525498e180471dc88055b4b57b2 SHA512 e631e4f2277a640015a3c3a2690f0ff68577c4d04d2c39bda0b04afc142df4514b7a813c34e3f245c229ee0d6dcaf667a0f6fd8d76785ea2ff61f5295ae85ada

View File

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

View File

@ -1,3 +1,4 @@
DIST glib-2.74.5.tar.xz 5211852 BLAKE2B 5bf0069cbf949a946357127682e4f687c7e7b8565037024a232b3e905e65bebb86d016832b6274f743005ec8fe5fcd31eaf99ccece82d9d7c3f924d17502c409 SHA512 2716e0fe984cc5d0714e91fe0de47ee71a8bd0b4c85caee337ddb7e02ac2fb3c8c007ccc1207b29cf901c30a7ec8e3bcca75d69c6fab2a32a8cf14bff974e614
DIST glib-2.74.6.tar.xz 5217312 BLAKE2B 07b0a5cb74c1451ba863d5f9a781a122d3d20af1f1227177025de114279277cacada3dd6ab5eb5ad5c0bff5ac7abab6fdfbe0551f44d07b2ddc9141a0640a8c8 SHA512 6b6d113012ec90f6cf77513ec0132668c49aa7224c806181ad662388701004667cdf6d263050d6f896b8688c085abf461aa3e659eb288e6ba93ba4970a2f181b
DIST glib-2.76.0.tar.xz 5268620 BLAKE2B 74bfba6254787b6b386161c329899fe6a53c87290261866f8aceb6e23ebf0bcacd085b04f480a7297d6fc11d37a676fb2fad5661e9f2668ae81f872ff5e2054f SHA512 812834ca6d840dd9c15c0689685d8bd96f4acd69a89213f807a75732d1aa5efadbed0e0073f05a56a09beb2d4f0be1b83a4642259682aac84302632da2d62370
DIST glib-2.76.1.tar.xz 5270936 BLAKE2B 6e6d15bda7ca6365d5f33e197cad41043f17c2f505997953e4f5222121571dabfa07ac88d0a1e298313021c63ef97e7560128c3f8ddf7f518afba98692555e81 SHA512 7ab8740925fa4ed2d860a35544c475ae905df5fa7fc0cc64ffa8c543df6073794e44c8ff39e3e1de1d677016ef9d27e9bc709d2505d13090faa8d6c47cd64bd0

View File

@ -0,0 +1,72 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
GNOME_ORG_MODULE="glib"
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="xml(+)"
DISTUTILS_USE_PEP517=setuptools
DISTUTILS_SINGLE_IMPL=1
inherit gnome.org distutils-r1
DESCRIPTION="GDBus code and documentation generator"
HOMEPAGE="https://www.gtk.org/"
LICENSE="LGPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
RDEPEND="${PYTHON_DEPS}"
DEPEND="${RDEPEND}"
BDEPEND="
dev-libs/libxslt
app-text/docbook-xsl-stylesheets
"
S="${WORKDIR}/glib-${PV}/gio/gdbus-2.0/codegen"
python_prepare_all() {
PATCHES=(
"${FILESDIR}/${PN}-2.56.1-sitedir.patch"
)
distutils-r1_python_prepare_all
local MAJOR_VERSION=$(ver_cut 1)
local MINOR_VERSION=$(ver_cut 2)
sed -e 's:@PYTHON@:python:' gdbus-codegen.in > gdbus-codegen || die
sed -e "s:@VERSION@:${PV}:" \
-e "s:@MAJOR_VERSION@:${MAJOR_VERSION}:" \
-e "s:@MINOR_VERSION@:${MINOR_VERSION}:" config.py.in > config.py || die
cp "${FILESDIR}/setup.py-2.32.4" setup.py || die "cp failed"
sed -e "s/@PV@/${PV}/" -i setup.py || die "sed setup.py failed"
}
do_xsltproc_command() {
# Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/glib-utils)
xsltproc \
--nonet \
--stringparam man.output.quietly 1 \
--stringparam funcsynopsis.style ansi \
--stringparam man.th.extra1.suppress 1 \
--stringparam man.authors.section.enabled 0 \
--stringparam man.copyright.section.enabled 0 \
-o "${2}" \
http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
"${1}" || die "manpage generation failed"
}
src_compile() {
distutils-r1_src_compile
do_xsltproc_command "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.xml" "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
}
src_test() {
einfo "Skipping tests. This package is tested by dev-libs/glib"
einfo "when merged with FEATURES=test"
}
python_install_all() {
distutils-r1_python_install_all # no-op, but prevents QA warning
doman "${WORKDIR}/glib-${PV}/docs/reference/gio/gdbus-codegen.1"
}

View File

@ -1,3 +1,4 @@
DIST glib-2.74.5.tar.xz 5211852 BLAKE2B 5bf0069cbf949a946357127682e4f687c7e7b8565037024a232b3e905e65bebb86d016832b6274f743005ec8fe5fcd31eaf99ccece82d9d7c3f924d17502c409 SHA512 2716e0fe984cc5d0714e91fe0de47ee71a8bd0b4c85caee337ddb7e02ac2fb3c8c007ccc1207b29cf901c30a7ec8e3bcca75d69c6fab2a32a8cf14bff974e614
DIST glib-2.74.6.tar.xz 5217312 BLAKE2B 07b0a5cb74c1451ba863d5f9a781a122d3d20af1f1227177025de114279277cacada3dd6ab5eb5ad5c0bff5ac7abab6fdfbe0551f44d07b2ddc9141a0640a8c8 SHA512 6b6d113012ec90f6cf77513ec0132668c49aa7224c806181ad662388701004667cdf6d263050d6f896b8688c085abf461aa3e659eb288e6ba93ba4970a2f181b
DIST glib-2.76.0.tar.xz 5268620 BLAKE2B 74bfba6254787b6b386161c329899fe6a53c87290261866f8aceb6e23ebf0bcacd085b04f480a7297d6fc11d37a676fb2fad5661e9f2668ae81f872ff5e2054f SHA512 812834ca6d840dd9c15c0689685d8bd96f4acd69a89213f807a75732d1aa5efadbed0e0073f05a56a09beb2d4f0be1b83a4642259682aac84302632da2d62370
DIST glib-2.76.1.tar.xz 5270936 BLAKE2B 6e6d15bda7ca6365d5f33e197cad41043f17c2f505997953e4f5222121571dabfa07ac88d0a1e298313021c63ef97e7560128c3f8ddf7f518afba98692555e81 SHA512 7ab8740925fa4ed2d860a35544c475ae905df5fa7fc0cc64ffa8c543df6073794e44c8ff39e3e1de1d677016ef9d27e9bc709d2505d13090faa8d6c47cd64bd0

View File

@ -0,0 +1,62 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
GNOME_ORG_MODULE="glib"
inherit gnome.org python-single-r1
DESCRIPTION="Build utilities for GLib using projects"
HOMEPAGE="https://www.gtk.org/"
LICENSE="LGPL-2.1+"
SLOT="0" # /usr/bin utilities that can't be parallel installed by their nature
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
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 ~x86-winnt"
RDEPEND="${PYTHON_DEPS}"
DEPEND="${RDEPEND}"
BDEPEND="
dev-libs/libxslt
app-text/docbook-xsl-stylesheets
"
src_configure() { :; }
do_xsltproc_command() {
# Taken from meson.build for manual manpage building - keep in sync (also copied to dev-util/gdbus-codegen)
xsltproc \
--nonet \
--stringparam man.output.quietly 1 \
--stringparam funcsynopsis.style ansi \
--stringparam man.th.extra1.suppress 1 \
--stringparam man.authors.section.enabled 0 \
--stringparam man.copyright.section.enabled 0 \
-o "${2}" \
http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl \
"${1}" || die "manpage generation failed"
}
src_compile() {
sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-genmarshal.in > gobject/glib-genmarshal || die
sed -e "s:@VERSION@:${PV}:g;s:@PYTHON@:python:g" gobject/glib-mkenums.in > gobject/glib-mkenums || die
sed -e "s:@GLIB_VERSION@:${PV}:g;s:@PYTHON@:python:g" glib/gtester-report.in > glib/gtester-report || die
do_xsltproc_command docs/reference/gobject/glib-genmarshal.xml docs/reference/gobject/glib-genmarshal.1
do_xsltproc_command docs/reference/gobject/glib-mkenums.xml docs/reference/gobject/glib-mkenums.1
do_xsltproc_command docs/reference/glib/gtester-report.xml docs/reference/glib/gtester-report.1
}
src_install() {
python_fix_shebang gobject/glib-genmarshal
python_fix_shebang gobject/glib-mkenums
python_fix_shebang glib/gtester-report
exeinto /usr/bin
doexe gobject/glib-genmarshal
doexe gobject/glib-mkenums
doexe glib/gtester-report
doman docs/reference/gobject/glib-genmarshal.1
doman docs/reference/gobject/glib-mkenums.1
doman docs/reference/glib/gtester-report.1
}

View File

@ -1,3 +1,2 @@
DIST dwarves-1.23.tar.xz 815076 BLAKE2B 2d89ac2d8cacb70a322b1c946356c0b18a2276f7a549efc2cf530c087dd718c7d01f5bcf8b9208965e066770064b6d8db7a9f6ab9a3f3a4612f6fcc8d146c1e8 SHA512 5255930d6898ce35a41e3e553363964663d2b686d12732ff6140fa1d06fcc3806adf28e24ec35ab0712eec0562c52c3943afe9ecce468b0053b852ffeb04c3dc
DIST dwarves-1.24.tar.xz 875744 BLAKE2B 6766b5a5ecbf64013227e7cd459af662fc213f230b5b1279354fcaaccebfa3d74f9a2254542dc4f3f1bb4a5def1d4c77e2445fa8b531fa8b9e331cdfc23155fe SHA512 3cdca183cf68ec46fd9a0301ae4a8a30b23a8139c65ffba64ae11f85f9e942f7341dca6f88a4a3b49f32bfd880927193a80fa011726e4a33d3e5a1a146326c06
DIST pahole-1.24_p20221024-patches.tar.xz 22088 BLAKE2B b39458400411dd7da0f568257f42164952e170b952e4893a92d769e17ce4cf0de88b727808a38195438fe10e5537f245bf101f647f383b6df7642c5446fa5d45 SHA512 93f160f01023c5402535a34d59005f0a3e056662a2764722480d71b6e522f3bfef0d642084467d1fbea96e23386b4cbb708243713d59eb84f4f767c1ac5ab3f5

View File

@ -1,52 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
inherit multilib cmake python-single-r1
DESCRIPTION="pahole (Poke-a-Hole) and other DWARF2 utilities"
HOMEPAGE="https://git.kernel.org/cgit/devel/pahole/pahole.git/"
LICENSE="GPL-2" # only
SLOT="0"
KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
IUSE="debug"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
>=dev-libs/elfutils-0.178
sys-libs/zlib"
DEPEND="${RDEPEND}"
MY_PN=dwarves
MY_P=${MY_PN}-${PV}
S=${WORKDIR}/${MY_P}
if [[ ${PV//_p} == ${PV} ]]; then
SRC_URI="http://fedorapeople.org/~acme/${MY_PN}/${MY_P}.tar.xz"
else
SRC_URI="https://dev.gentoo.org/~zzam/${PN}/${P}.tar.xz"
fi
DOCS=( README README.ctracer NEWS )
PATCHES=(
"${FILESDIR}"/${PN}-1.10-python-import.patch
)
src_prepare() {
cmake_src_prepare
python_fix_shebang ostra/ostra-cg ostra/python/ostra.py
}
src_configure() {
local mycmakeargs=( "-D__LIB=$(get_libdir)" )
cmake_src_configure
}
src_test() { :; }
src_install() {
cmake_src_install
}

View File

@ -1,52 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
inherit cmake python-single-r1
DESCRIPTION="pahole (Poke-a-Hole) and other DWARF2 utilities"
HOMEPAGE="https://git.kernel.org/cgit/devel/pahole/pahole.git/"
LICENSE="GPL-2" # only
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
IUSE="debug"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
>=dev-libs/elfutils-0.178
sys-libs/zlib"
DEPEND="${RDEPEND}"
MY_PN=dwarves
MY_P=${MY_PN}-${PV}
S=${WORKDIR}/${MY_P}
if [[ ${PV//_p} == ${PV} ]]; then
SRC_URI="http://fedorapeople.org/~acme/${MY_PN}/${MY_P}.tar.xz"
else
SRC_URI="https://dev.gentoo.org/~zzam/${PN}/${P}.tar.xz"
fi
DOCS=( README README.ctracer NEWS )
PATCHES=(
"${FILESDIR}"/${PN}-1.10-python-import.patch
)
src_prepare() {
cmake_src_prepare
python_fix_shebang ostra/ostra-cg ostra/python/ostra.py
}
src_configure() {
local mycmakeargs=( "-D__LIB=$(get_libdir)" )
cmake_src_configure
}
src_test() { :; }
src_install() {
cmake_src_install
}

View File

@ -61,7 +61,7 @@ readonly ACCT_GROUP_NAME
# @REQUIRED
# @DESCRIPTION:
# Preferred GID for the new group. This variable is obligatory, and its
# value must be unique across all group packages. This can be overriden
# value must be unique across all group packages. This can be overridden
# in make.conf through ACCT_GROUP_<UPPERCASE_USERNAME>_ID variable.
#
# Overlays should set this to -1 to dynamically allocate GID. Using -1
@ -72,13 +72,13 @@ readonly ACCT_GROUP_NAME
# If set to a non-null value, the eclass will require the group to have
# specified GID. If the group already exists with another GID, or
# the GID is taken by another group, the install will fail.
: ${ACCT_GROUP_ENFORCE_ID:=}
: "${ACCT_GROUP_ENFORCE_ID:=}"
# << Boilerplate ebuild variables >>
: ${DESCRIPTION:="System group: ${ACCT_GROUP_NAME}"}
: ${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}
: "${DESCRIPTION:="System group: ${ACCT_GROUP_NAME}"}"
: "${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}"
S=${WORKDIR}

View File

@ -69,7 +69,7 @@ readonly ACCT_USER_NAME
# @REQUIRED
# @DESCRIPTION:
# Preferred UID for the new user. This variable is obligatory, and its
# value must be unique across all user packages. This can be overriden
# value must be unique across all user packages. This can be overridden
# in make.conf through ACCT_USER_<UPPERCASE_USERNAME>_ID variable.
#
# Overlays should set this to -1 to dynamically allocate UID. Using -1
@ -80,14 +80,14 @@ readonly ACCT_USER_NAME
# If set to a non-null value, the eclass will require the user to have
# specified UID. If the user already exists with another UID, or
# the UID is taken by another user, the install will fail.
: ${ACCT_USER_ENFORCE_ID:=}
: "${ACCT_USER_ENFORCE_ID:=}"
# @ECLASS_VARIABLE: ACCT_USER_NO_MODIFY
# @DEFAULT_UNSET
# @DESCRIPTION:
# If set to a non-null value, the eclass will not make any changes
# to an already existing user.
: ${ACCT_USER_NO_MODIFY:=}
: "${ACCT_USER_NO_MODIFY:=}"
# @ECLASS_VARIABLE: ACCT_USER_COMMENT
# @DEFAULT_UNSET
@ -99,33 +99,33 @@ readonly ACCT_USER_NAME
# @ECLASS_VARIABLE: ACCT_USER_SHELL
# @DESCRIPTION:
# The shell to use for the user. If not specified, a 'nologin' variant
# for the system is used. This can be overriden in make.conf through
# for the system is used. This can be overridden in make.conf through
# ACCT_USER_<UPPERCASE_USERNAME>_SHELL variable.
: ${ACCT_USER_SHELL:=/sbin/nologin}
: "${ACCT_USER_SHELL:=/sbin/nologin}"
# @ECLASS_VARIABLE: ACCT_USER_HOME
# @DESCRIPTION:
# The home directory for the user. If not specified, /dev/null is used.
# The directory will be created with appropriate permissions if it does
# not exist. When updating, existing home directory will not be moved.
# This can be overriden in make.conf through
# This can be overridden in make.conf through
# ACCT_USER_<UPPERCASE_USERNAME>_HOME variable.
: ${ACCT_USER_HOME:=/dev/null}
: "${ACCT_USER_HOME:=/dev/null}"
# @ECLASS_VARIABLE: ACCT_USER_HOME_OWNER
# @DEFAULT_UNSET
# @DESCRIPTION:
# The ownership to use for the home directory, in chown ([user][:group])
# syntax. Defaults to the newly created user, and its primary group.
# This can be overriden in make.conf through
# This can be overridden in make.conf through
# ACCT_USER_<UPPERCASE_USERNAME>_HOME_OWNER variable.
# @ECLASS_VARIABLE: ACCT_USER_HOME_PERMS
# @DESCRIPTION:
# The permissions to use for the home directory, in chmod (octal
# or verbose) form. This can be overriden in make.conf through
# or verbose) form. This can be overridden in make.conf through
# ACCT_USER_<UPPERCASE_USERNAME>_HOME_PERMS variable.
: ${ACCT_USER_HOME_PERMS:=0755}
: "${ACCT_USER_HOME_PERMS:=0755}"
# @ECLASS_VARIABLE: ACCT_USER_GROUPS
# @REQUIRED
@ -134,7 +134,7 @@ readonly ACCT_USER_NAME
# array. The first group specified is the user's primary group, while
# the remaining groups (if any) become supplementary groups.
#
# This can be overriden in make.conf through
# This can be overridden in make.conf through
# ACCT_USER_<UPPERCASE_USERNAME>_GROUPS variable, or appended to
# via ACCT_USER_<UPPERCASE_USERNAME>_GROUPS_ADD. Please note that
# due to technical limitations, the override variables are not arrays
@ -142,9 +142,9 @@ readonly ACCT_USER_NAME
# << Boilerplate ebuild variables >>
: ${DESCRIPTION:="System user: ${ACCT_USER_NAME}"}
: ${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}
: "${DESCRIPTION:="System user: ${ACCT_USER_NAME}"}"
: "${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}"
S=${WORKDIR}
@ -269,7 +269,7 @@ acct-user_src_install() {
debug-print-function ${FUNCNAME} "${@}"
# Replace reserved characters in comment
: ${ACCT_USER_COMMENT:=${DESCRIPTION//[:,=]/;}}
: "${ACCT_USER_COMMENT:=${DESCRIPTION//[:,=]/;}}"
# serialize for override support
local ACCT_USER_GROUPS=${ACCT_USER_GROUPS[*]}

View File

@ -39,19 +39,19 @@ inherit gnuconfig libtool
# @PRE_INHERIT
# @DESCRIPTION:
# The major version of autoconf your package needs
: ${WANT_AUTOCONF:=latest}
: "${WANT_AUTOCONF:=latest}"
# @ECLASS_VARIABLE: WANT_AUTOMAKE
# @PRE_INHERIT
# @DESCRIPTION:
# The major version of automake your package needs
: ${WANT_AUTOMAKE:=latest}
: "${WANT_AUTOMAKE:=latest}"
# @ECLASS_VARIABLE: WANT_LIBTOOL
# @PRE_INHERIT
# @DESCRIPTION:
# Do you want libtool? Valid values here are "latest" and "none".
: ${WANT_LIBTOOL:=latest}
: "${WANT_LIBTOOL:=latest}"
# @ECLASS_VARIABLE: _LATEST_AUTOMAKE
# @INTERNAL
@ -125,7 +125,7 @@ RDEPEND=""
# Set to 'no' to disable automatically adding to DEPEND. This lets
# ebuilds form conditional depends by using ${AUTOTOOLS_DEPEND} in
# their own DEPEND string.
: ${AUTOTOOLS_AUTO_DEPEND:=yes}
: "${AUTOTOOLS_AUTO_DEPEND:=yes}"
if [[ ${AUTOTOOLS_AUTO_DEPEND} != "no" ]] ; then
case ${EAPI} in
6) DEPEND=${AUTOTOOLS_DEPEND} ;;
@ -141,14 +141,14 @@ unset _automake_atom _autoconf_atom
# @DESCRIPTION:
# Additional options to pass to automake during
# eautoreconf call.
: ${AM_OPTS:=}
: "${AM_OPTS:=}"
# @ECLASS_VARIABLE: AT_NOEAUTOHEADER
# @DEFAULT_UNSET
# @DESCRIPTION:
# Don't run eautoheader command if set to 'yes'; only used to work around
# packages that don't want their headers being modified.
: ${AT_NOEAUTOHEADER:=}
: "${AT_NOEAUTOHEADER:=}"
# @ECLASS_VARIABLE: AT_NOEAUTOMAKE
# @DEFAULT_UNSET
@ -156,7 +156,7 @@ unset _automake_atom _autoconf_atom
# Don't run eautomake command if set to 'yes'; only used to workaround
# broken packages. Generally you should, instead, fix the package to
# not call AM_INIT_AUTOMAKE if it doesn't actually use automake.
: ${AT_NOEAUTOMAKE:=}
: "${AT_NOEAUTOMAKE:=}"
# @ECLASS_VARIABLE: AT_NOELIBTOOLIZE
# @DEFAULT_UNSET
@ -164,13 +164,13 @@ unset _automake_atom _autoconf_atom
# Don't run elibtoolize command if set to 'yes',
# useful when elibtoolize needs to be ran with
# particular options
: ${AT_NOELIBTOOLIZE:=}
: "${AT_NOELIBTOOLIZE:=}"
# @ECLASS_VARIABLE: AT_M4DIR
# @DEFAULT_UNSET
# @DESCRIPTION:
# Additional director(y|ies) aclocal should search
: ${AT_M4DIR:=}
: "${AT_M4DIR:=}"
# @ECLASS_VARIABLE: AT_SYS_M4DIR
# @DEFAULT_UNSET
@ -179,7 +179,7 @@ unset _automake_atom _autoconf_atom
# For system integrators, a list of additional aclocal search paths.
# This variable gets eval-ed, so you can use variables in the definition
# that may not be valid until eautoreconf & friends are run.
: ${AT_SYS_M4DIR:=}
: "${AT_SYS_M4DIR:=}"
# @FUNCTION: eautoreconf
# @DESCRIPTION:
@ -325,7 +325,7 @@ eaclocal_amflags() {
# @FUNCTION: eaclocal
# @DESCRIPTION:
# These functions runs the autotools using autotools_run_tool with the
# specified parametes. The name of the tool run is the same of the function
# specified parameters. The name of the tool run is the same of the function
# without e prefix.
# They also force installing the support files for safety.
# Respects AT_M4DIR for additional directories to search for macros.

View File

@ -24,7 +24,7 @@
# @DEPRECATED: none
# @DESCRIPTION:
# Only "cmake" is supported.
: ${CMAKE_ECLASS:=cmake}
: "${CMAKE_ECLASS:=cmake}"
case ${EAPI} in
7|8)

View File

@ -35,15 +35,15 @@ inherit flag-o-matic multiprocessing ninja-utils toolchain-funcs xdg-utils
# For in-source build it's fixed to ${CMAKE_USE_DIR}.
# For out-of-source build it can be overridden, by default it uses
# ${CMAKE_USE_DIR}_build (in EAPI-7: ${WORKDIR}/${P}_build).
[[ ${EAPI} == 7 ]] && : ${BUILD_DIR:=${WORKDIR}/${P}_build}
[[ ${EAPI} == 7 ]] && : "${BUILD_DIR:=${WORKDIR}/${P}_build}"
# EAPI-8: set inside _cmake_check_build_dir
# @ECLASS_VARIABLE: CMAKE_BINARY
# @DESCRIPTION:
# Eclass can use different cmake binary than the one provided in by system.
: ${CMAKE_BINARY:=cmake}
: "${CMAKE_BINARY:=cmake}"
[[ ${EAPI} == 7 ]] && : ${CMAKE_BUILD_TYPE:=Gentoo}
[[ ${EAPI} == 7 ]] && : "${CMAKE_BUILD_TYPE:=Gentoo}"
# @ECLASS_VARIABLE: CMAKE_BUILD_TYPE
# @DESCRIPTION:
# Set to override default CMAKE_BUILD_TYPE. Only useful for packages
@ -55,7 +55,7 @@ inherit flag-o-matic multiprocessing ninja-utils toolchain-funcs xdg-utils
# build type to achieve desirable results.
#
# In EAPI 7, the default was non-standard build type of Gentoo.
: ${CMAKE_BUILD_TYPE:=RelWithDebInfo}
: "${CMAKE_BUILD_TYPE:=RelWithDebInfo}"
# @ECLASS_VARIABLE: CMAKE_IN_SOURCE_BUILD
# @DEFAULT_UNSET
@ -69,7 +69,7 @@ inherit flag-o-matic multiprocessing ninja-utils toolchain-funcs xdg-utils
# Specify a makefile generator to be used by cmake.
# At this point only "emake" and "ninja" are supported.
# The default is set to "ninja".
: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
: "${CMAKE_MAKEFILE_GENERATOR:=ninja}"
# @ECLASS_VARIABLE: CMAKE_REMOVE_MODULES_LIST
# @PRE_INHERIT
@ -100,14 +100,14 @@ fi
# @USER_VARIABLE
# @DESCRIPTION:
# Set to OFF to disable verbose messages during compilation
: ${CMAKE_VERBOSE:=ON}
: "${CMAKE_VERBOSE:=ON}"
# @ECLASS_VARIABLE: CMAKE_WARN_UNUSED_CLI
# @DESCRIPTION:
# Warn about variables that are declared on the command line
# but not used. Might give false-positives.
# "no" to disable (default) or anything else to enable.
: ${CMAKE_WARN_UNUSED_CLI:=yes}
: "${CMAKE_WARN_UNUSED_CLI:=yes}"
# @ECLASS_VARIABLE: CMAKE_EXTRA_CACHE_FILE
# @USER_VARIABLE
@ -284,15 +284,15 @@ cmake-utils_useno() { _cmake_banned_func "" "$@" ; }
# Determine using IN or OUT source build
_cmake_check_build_dir() {
if [[ ${EAPI} == 7 ]]; then
: ${CMAKE_USE_DIR:=${S}}
: "${CMAKE_USE_DIR:=${S}}"
else
: ${CMAKE_USE_DIR:=${PWD}}
: "${CMAKE_USE_DIR:=${PWD}}"
fi
if [[ -n ${CMAKE_IN_SOURCE_BUILD} ]]; then
# we build in source dir
BUILD_DIR="${CMAKE_USE_DIR}"
else
: ${BUILD_DIR:=${CMAKE_USE_DIR}_build}
: "${BUILD_DIR:=${CMAKE_USE_DIR}_build}"
fi
einfo "Source directory (CMAKE_USE_DIR): \"${CMAKE_USE_DIR}\""
@ -526,6 +526,7 @@ cmake_src_configure() {
set(CMAKE_USER_MAKE_RULES_OVERRIDE "${build_rules}" CACHE FILEPATH "Gentoo override rules")
set(CMAKE_INSTALL_DOCDIR "${EPREFIX}/usr/share/doc/${PF}" CACHE PATH "")
set(BUILD_SHARED_LIBS ON CACHE BOOL "")
set(Python3_FIND_UNVERSIONED_NAMES FIRST CACHE STRING "")
_EOF_
if [[ -n ${_ECM_ECLASS} ]]; then

View File

@ -445,7 +445,7 @@ unset -f _distutils_set_globals
# This helper is meant for the most common case, that is a single Sphinx
# subdirectory with standard layout, building and installing HTML docs
# behind USE=doc. It assumes it's the only consumer of the three
# aforementioned functions. If you need to use a custom implemention,
# aforementioned functions. If you need to use a custom implementation,
# you can't use it.
#
# If your package uses additional Sphinx plugins, they should be passed

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: elisp-common.eclass
@ -206,7 +206,7 @@ BYTECOMPFLAGS="-L ."
# @ECLASS_VARIABLE: NEED_EMACS
# @DESCRIPTION:
# The minimum Emacs version required for the package.
: ${NEED_EMACS:=23.1}
: "${NEED_EMACS:=25.3}"
# @ECLASS_VARIABLE: _ELISP_EMACS_VERSION
# @INTERNAL

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: epatch.eclass
@ -190,7 +190,7 @@ epatch() {
local patchname=${x##*/}
# Apply single patches, or forced sets of patches, or
# patches with ARCH dependant names.
# patches with ARCH dependent names.
# ???_arch_foo.patch
# Else, skip this input altogether
local a=${patchname#*_} # strip the ???_
@ -272,7 +272,7 @@ epatch() {
fi
# Check for absolute paths in patches. If sandbox is disabled,
# people could (accidently) patch files in the root filesystem.
# people could (accidentally) patch files in the root filesystem.
# Or trigger other unpleasantries #237667. So disallow -p0 on
# such patches.
local abs_paths=$(grep -E -n '^[-+]{3} /' "${PATCH_TARGET}" | awk '$2 != "/dev/null" { print }')

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: flag-o-matic.eclass
@ -888,15 +888,14 @@ no-as-needed() {
esac
}
# @FUNCTION: _test-compile-PROG
# @FUNCTION: test-compile
# @USAGE: <language> <code>
# @INTERNAL
# @DESCRIPTION:
# Attempts to compile (and possibly link) the given program. The first
# <language> parameter corresponds to the standard -x compiler argument.
# If the program should additionally be attempted to be linked, the string
# "+ld" should be added to the <language> parameter.
_test-compile-PROG() {
test-compile() {
local lang=$1
local code=$2
shift 2
@ -982,7 +981,7 @@ append-atomic-flags() {
local code
# first, ensure we can compile a trivial program
# this is because we can't distinguish if _test-compile-PROG
# this is because we can't distinguish if test-compile
# fails because -latomic is actually needed or if we have a
# broken toolchain (like due to bad FLAGS)
read -r -d '' code <<- EOF
@ -996,7 +995,7 @@ append-atomic-flags() {
# let other pieces of the build fail later down the line than to
# make people think that something to do with atomic support is the
# cause of their problems.
_test-compile-PROG "c+ld" "${code}" || return
test-compile "c+ld" "${code}" || return
local bytesizes
[[ "${#}" == "0" ]] && bytesizes=( "1" "2" "4" "8" ) || bytesizes="${@}"
@ -1017,7 +1016,7 @@ append-atomic-flags() {
EOF
# do nothing if test program links fine
_test-compile-PROG "c+ld" "${code}" && continue
test-compile "c+ld" "${code}" && continue
# ensure that the toolchain supports -latomic
test-flags-CCLD "-latomic" &>/dev/null || die "-latomic is required but not supported by $(tc-getCC)"
@ -1025,7 +1024,7 @@ append-atomic-flags() {
append-libs "-latomic"
# verify that this did indeed fix the problem
_test-compile-PROG "c+ld" "${code}" || \
test-compile "c+ld" "${code}" || \
die "libatomic does not include an implementation of ${bytesize}-byte atomics for this toolchain"
# if any of the required bytesizes require -latomic, no need to continue

View File

@ -62,7 +62,7 @@ fi
# unavailable calls like 'git describe' will not reference prior tags.
# No purging of old references is done. This mode is intended mostly for
# embedded systems with limited disk space.
: ${EGIT_CLONE_TYPE:=single}
: "${EGIT_CLONE_TYPE:=single}"
# @ECLASS_VARIABLE: EGIT_MIN_CLONE_TYPE
# @DESCRIPTION:
@ -79,7 +79,7 @@ fi
# or a similar remote is used that does not support shallow clones
# and fetching tags along with commits. Please use sparingly, and to fix
# fatal errors rather than 'non-pretty versions'.
: ${EGIT_MIN_CLONE_TYPE:=shallow}
: "${EGIT_MIN_CLONE_TYPE:=shallow}"
# @ECLASS_VARIABLE: EGIT3_STORE_DIR
# @USER_VARIABLE
@ -115,7 +115,7 @@ fi
# read the manpage for git-clone(1).
#
# URIs should be using https:// whenever possible. http:// and git://
# URIs are completely unsecured and their use (even if only as
# URIs are completely insecure and their use (even if only as
# a fallback) renders the ebuild completely vulnerable to MITM attacks.
#
# Can be a whitespace-separated list or an array.
@ -317,7 +317,7 @@ _git-r3_set_gitdir() {
repo_name=${repo_name//\//_}
local distdir=${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}
: ${EGIT3_STORE_DIR:=${distdir}/git3-src}
: "${EGIT3_STORE_DIR:=${distdir}/git3-src}"
GIT_DIR=${EGIT3_STORE_DIR}/${repo_name}
@ -533,7 +533,7 @@ git-r3_fetch() {
local r
for r in "${repos[@]}"; do
if [[ ${r} == git:* || ${r} == http:* ]]; then
ewarn "git-r3: ${r%%:*} protocol is completely unsecure and may render the ebuild"
ewarn "git-r3: ${r%%:*} protocol is completely insecure and may render the ebuild"
ewarn "easily susceptible to MITM attacks (even if used only as fallback). Please"
ewarn "use https instead."
ewarn "[URI: ${r}]"
@ -769,7 +769,7 @@ git-r3_fetch() {
[[ ${success} ]] || die "Unable to fetch from any of EGIT_REPO_URI"
# submodules can reference commits in any branch
# always use the 'mirror' mode to accomodate that, bug #503332
# always use the 'mirror' mode to accommodate that, bug #503332
local EGIT_CLONE_TYPE=mirror
# recursively fetch submodules

View File

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gnome.org.eclass
@ -29,7 +29,7 @@ _GNOME_ORG_ECLASS=1
# Most projects hosted on gnome.org mirrors provide tarballs as tar.bz2 or
# tar.xz. This eclass defaults to xz. This is because the GNOME mirrors are
# moving to only have xz tarballs for new releases.
: ${GNOME_TARBALL_SUFFIX:="xz"}
: "${GNOME_TARBALL_SUFFIX:="xz"}"
# Even though xz-utils are in @system, they must still be added to BDEPEND; see
# https://archives.gentoo.org/gentoo-dev/msg_a0d4833eb314d1be5d5802a3b710e0a4.xml
@ -45,16 +45,16 @@ fi
# @DESCRIPTION:
# Name of the module as hosted on gnome.org mirrors.
# Leave unset if package name matches module name.
: ${GNOME_ORG_MODULE:=$PN}
: "${GNOME_ORG_MODULE:=$PN}"
# @ECLASS_VARIABLE: GNOME_ORG_PVP
# @INTERNAL
# @DESCRIPTION:
# Components of the version number that correspond to a 6 month release.
if ver_test -ge 40.0; then
: ${GNOME_ORG_PVP:=$(ver_cut 1)}
: "${GNOME_ORG_PVP:=$(ver_cut 1)}"
else
: ${GNOME_ORG_PVP:=$(ver_cut 1-2)}
: "${GNOME_ORG_PVP:=$(ver_cut 1-2)}"
fi
SRC_URI="mirror://gnome/sources/${GNOME_ORG_MODULE}/${GNOME_ORG_PVP}/${GNOME_ORG_MODULE}-${PV}.tar.${GNOME_TARBALL_SUFFIX}"

View File

@ -37,7 +37,7 @@ has test ${JAVA_PKG_IUSE} && RESTRICT+=" !test? ( test )"
# @VARIABLE: JAVA_PKG_E_DEPEND
# @INTERNAL
# @DESCRIPTION:
# This is a convience variable to be used from the other java eclasses. This is
# This is a convenience variable to be used from the other java eclasses. This is
# the version of java-config we want to use. Usually the latest stable version
# so that ebuilds can use new features without depending on specific versions.
JAVA_PKG_E_DEPEND=">=dev-java/java-config-2.2.0-r3"
@ -783,7 +783,7 @@ java-pkg_dosrc() {
# @FUNCTION: java-pkg_dolauncher
# @USAGE: <filename> [options]
# @DESCRIPTION:
# Make a wrapper script to lauch/start this package
# Make a wrapper script to launch/start this package
# If necessary, the wrapper will switch to the appropriate VM.
#
# Can be called without parameters if the package installs only one jar
@ -953,7 +953,7 @@ java-pkg_recordjavadoc()
# Example: get a specific jar from xerces slot 2
# java-pkg_jar-from xerces-2 xml-apis.jar
#
# Example: get a specific jar from xerces slot 2, and name it diffrently
# Example: get a specific jar from xerces slot 2, and name it differently
# java-pkg_jar-from xerces-2 xml-apis.jar xml.jar
#
# Example: get junit.jar which is needed only for building
@ -1364,7 +1364,7 @@ java-pkg_register-optional-dependency() {
# @DESCRIPTION:
# Register an arbitrary environment variable into package.env. The gjl launcher
# for this package or any package depending on this will export it into
# environement before executing java command.
# environment before executing java command.
# Must only be called in src_install phase.
JAVA_PKG_EXTRA_ENV="${T}/java-pkg-extra-env"
JAVA_PKG_EXTRA_ENV_VARS=""
@ -2640,7 +2640,7 @@ java-pkg_get-vm-version() {
# @RETURN: VM handle of an available JDK
# @DESCRIPTION:
# Selects a build vm from a list of vm handles. First checks for the system-vm
# beeing usable, then steps through the listed handles till a suitable vm is
# being usable, then steps through the listed handles till a suitable vm is
# found.
#
java-pkg_build-vm-from-handle() {

View File

@ -26,7 +26,7 @@
# @DEFAULT_UNSET
# @DESCRIPTION:
# Used as a comparison kernel version, which is used when
# PV doesnt reflect the genuine kernel version.
# PV doesn't reflect the genuine kernel version.
# This gets set to the portage style versioning. ie:
# CKV=2.6.11_rc4
@ -87,7 +87,7 @@
# @ECLASS_VARIABLE: K_EXTRAEINFO
# @DEFAULT_UNSET
# @DESCRIPTION:
# this is a new-line seperated list of einfo displays in
# this is a new-line separated list of einfo displays in
# postinst and can be used to carry additional postinst
# messages
@ -171,7 +171,7 @@
# @ECLASS_VARIABLE: K_SYMLINK
# @DEFAULT_UNSET
# @DESCRIPTION:
# if this is set, then forcably create symlink anyway
# if this is set, then forcibly create symlink anyway
# @ECLASS_VARIABLE: K_USEPV
# @DEFAULT_UNSET
@ -251,7 +251,7 @@
# @ECLASS_VARIABLE: UNIPATCH_EXCLUDE
# @DEFAULT_UNSET
# @DESCRIPTION:
# An addition var to support exlusion based completely
# An addition var to support exclusion based completely
# on "<passedstring>*" and not "<passedno#>_*"
# this should _NOT_ be used from the ebuild as this is
# reserved for end users passing excludes from the cli
@ -299,13 +299,13 @@ if [[ ${CTARGET} == ${CHOST} && ${CATEGORY/cross-} != ${CATEGORY} ]]; then
fi
HOMEPAGE="https://www.kernel.org/ https://wiki.gentoo.org/wiki/Kernel ${HOMEPAGE}"
: ${LICENSE:="GPL-2"}
: "${LICENSE:="GPL-2"}"
# No need to run scanelf/strip on kernel sources/headers (bug #134453).
RESTRICT="binchecks strip"
# set LINUX_HOSTCFLAGS if not already set
: ${LINUX_HOSTCFLAGS:="-Wall -Wstrict-prototypes -Os -fomit-frame-pointer -I${S}/include"}
: "${LINUX_HOSTCFLAGS:="-Wall -Wstrict-prototypes -Os -fomit-frame-pointer -I${S}/include"}"
# @FUNCTION: debug-print-kernel2-variables
@ -393,7 +393,7 @@ detect_version() {
[[ -n ${KV_FULL} ]] && return 0
# CKV is used as a comparison kernel version, which is used when
# PV doesnt reflect the genuine kernel version.
# PV doesn't reflect the genuine kernel version.
# this gets set to the portage style versioning. ie:
# CKV=2.6.11_rc4
CKV=${CKV:-${PV}}
@ -487,7 +487,7 @@ detect_version() {
RELEASE=${RELEASE/_beta}
RELEASE=${RELEASE/_rc/-rc}
RELEASE=${RELEASE/_pre/-pre}
# We cannot trivally call kernel_is here, because it calls us to detect the
# We cannot trivially call kernel_is here, because it calls us to detect the
# version
#kernel_is ge 2 6 && RELEASE=${RELEASE/-pre/-git}
(( KV_MAJOR * 1000 + ${KV_MINOR:-0} >= 2006 )) && RELEASE=${RELEASE/-pre/-git}
@ -928,7 +928,7 @@ postinst_sources() {
# use deblob && \
# K_SECURITY_UNSUPPORTED=deblob
# if we are to forcably symlink, delete it if it already exists first.
# if we are to forcibly symlink, delete it if it already exists first.
if [[ ${K_SYMLINK} -gt 0 ]]; then
if [[ -e ${EROOT}/usr/src/linux && ! -L ${EROOT}/usr/src/linux ]] ; then
die "${EROOT}/usr/src/linux exists and is not a symlink"
@ -1024,7 +1024,7 @@ setup_headers() {
# Universal function that will apply patches to source
unipatch() {
local i x y z extention PIPE_CMD UNIPATCH_DROP KPATCH_DIR PATCH_DEPTH ELINE
local i x y z extension PIPE_CMD UNIPATCH_DROP KPATCH_DIR PATCH_DEPTH ELINE
local STRICT_COUNT PATCH_LEVEL myLC_ALL myLANG
# set to a standard locale to ensure sorts are ordered properly.
@ -1070,10 +1070,10 @@ unipatch() {
[[ ${i} == *:* ]] && elog ">>> Strict patch levels not currently supported for tarballed patchsets"
else
extention=${i/*./}
extention=${extention/:*/}
extension=${i/*./}
extension=${extension/:*/}
PIPE_CMD=""
case ${extention} in
case ${extension} in
xz) PIPE_CMD="xz -T$(makeopts_jobs) -dc";;
lzma) PIPE_CMD="lzma -dc";;
bz2) PIPE_CMD="bzip2 -dc";;
@ -1087,7 +1087,7 @@ unipatch() {
PATCH_LEVEL=${i/*([^:])?(:)}
i=${i/:*/}
x=${i/*\//}
x=${x/\.${extention}/}
x=${x/\.${extension}/}
if [[ -n ${PIPE_CMD} ]]; then
if [[ ! -r ${i} ]]; then
@ -1342,7 +1342,7 @@ getfilevar() {
# @USAGE:
# @DESCRIPTION:
# This function sets ARCH_URI and ARCH_PATCH
# with the neccessary info for the arch sepecific compatibility
# with the necessary info for the arch specific compatibility
# patchsets.
detect_arch() {
@ -1499,7 +1499,7 @@ kernel-2_pkg_preinst() {
# @FUNCTION: kernel-2_src_install
# @USAGE:
# @DESCRIPTION:
# Install headers or sources dependant on ETYPE
# Install headers or sources dependent on ETYPE
kernel-2_src_install() {
install_universal

View File

@ -45,7 +45,7 @@ _LINUX_INFO_ECLASS=1
# @DESCRIPTION:
# Do not error out in check_extra_config if CONFIG settings are not met.
# This is a user flag and should under _no circumstances_ be set in the ebuild.
: ${CHECKCONFIG_DONOTHING:=""}
: "${CHECKCONFIG_DONOTHING:=""}"
# @ECLASS_VARIABLE: KERNEL_DIR
# @DESCRIPTION:
@ -85,8 +85,8 @@ KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}"
# e.g.: ERROR_MTRR="MTRR exists in the .config but shouldn't!!"
#
# CONFIG_CHECK="CFG" with ERROR_<CFG>="Error Message" will die
# CONFIG_CHECK="~CFG" with ERROR_<CFG>="Error Message" calls eerror without dieing
# CONFIG_CHECK="~CFG" with WARNING_<CFG>="Warning Message" calls ewarn without dieing
# CONFIG_CHECK="~CFG" with ERROR_<CFG>="Error Message" calls eerror without dying
# CONFIG_CHECK="~CFG" with WARNING_<CFG>="Warning Message" calls ewarn without dying
# @ECLASS_VARIABLE: KBUILD_OUTPUT
@ -105,7 +105,7 @@ KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}"
# the following names, in order: GNUmakefile, makefile and Makefile. Set this variable to the
# proper Makefile name or the eclass will search in this order for it.
# See https://www.gnu.org/software/make/manual/make.html
: ${KERNEL_MAKEFILE:=""}
: "${KERNEL_MAKEFILE:=""}"
# @ECLASS_VARIABLE: KV_FULL
# @OUTPUT_VARIABLE
@ -156,7 +156,7 @@ KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}"
# Do not check for kernel sources or a running kernel version.
# Main use-case is for chroots.
# This is a user flag and should under _no circumstances_ be set in the ebuild.
: ${SKIP_KERNEL_CHECK:=""}
: "${SKIP_KERNEL_CHECK:=""}"
# And to ensure all the weirdness with crosscompile
inherit toolchain-funcs
@ -290,7 +290,7 @@ _LINUX_CONFIG_EXISTS_DONE=
# @FUNCTION: linux_config_qa_check
# @INTERNAL
# @DESCRIPTION:
# Helper funciton which returns an error before the function argument is run if no config exists
# Helper function which returns an error before the function argument is run if no config exists
linux_config_qa_check() {
local f="$1"
@ -679,7 +679,7 @@ get_running_version() {
KV_MINOR=$(ver_cut 2 ${kv_full})
KV_PATCH=$(ver_cut 3 ${kv_full})
KV_EXTRA="${KV_FULL#${KV_MAJOR}.${KV_MINOR}${KV_PATCH:+.${KV_PATCH}}}"
: ${KV_PATCH:=0}
: "${KV_PATCH:=0}"
return 0
}

View File

@ -38,7 +38,7 @@
# @DESCRIPTION:
# A string containing the directory of the target kernel sources. The default value is
# "/usr/src/linux"
: ${KERNEL_DIR:=/usr/src/linux}
: "${KERNEL_DIR:=/usr/src/linux}"
# @ECLASS_VARIABLE: ECONF_PARAMS
# @DEFAULT_UNSET
@ -54,7 +54,7 @@
# @ECLASS_VARIABLE: BUILD_TARGETS
# @DESCRIPTION:
# It's a string with the build targets to pass to make. The default value is "clean module"
: ${BUILD_TARGETS:=clean module}
: "${BUILD_TARGETS:=clean module}"
# @ECLASS_VARIABLE: MODULE_NAMES
# @DEFAULT_UNSET
@ -177,7 +177,7 @@ RDEPEND="
)
${MODULES_OPTIONAL_USE:+)}"
DEPEND="${RDEPEND}
${MODULES_OPTIONAL_USE}${MODULES_OPTIONAL_USE:+? (}
${MODULES_OPTIONAL_USE}${MODULES_OPTIONAL_USE:+? (}
kernel_linux? ( virtual/linux-sources virtual/libelf )
${MODULES_OPTIONAL_USE:+)}"
@ -340,7 +340,7 @@ get-KERNEL_CC() {
# @USAGE: /path/to/the/modulename_without_extension
# @RETURN: A file in /etc/modprobe.d
# @DESCRIPTION:
# This function will generate and install the neccessary modprobe.d file from the
# This function will generate and install the necessary modprobe.d file from the
# information contained in the modules exported parms.
# (see the variables MODULESD_<modulename>_ENABLED, MODULESD_<modulename>_EXAMPLES,
# MODULESD_<modulename>_ALIASES, MODULESD_<modulename>_ADDITION and MODULESD_<modulename>_DOCS).
@ -679,7 +679,7 @@ linux-mod_src_install() {
insinto "${INSTALL_MOD_PATH}"/lib/modules/${KV_FULL}/${libdir}
# check here for CONFIG_MODULE_COMPRESS_<compression option> (NONE, GZIP, XZ, ZSTD)
# and similarily compress the module being built if != NONE.
# and similarly compress the module being built if != NONE.
if linux_chkconfig_present MODULE_COMPRESS_XZ; then
xz -T$(makeopts_jobs) --memlimit-compress=50% -q ${modulename}.${KV_OBJ} || die "Compressing ${modulename}.${KV_OBJ} with xz failed"
@ -728,7 +728,7 @@ linux-mod_pkg_postinst() {
# @FUNCTION: linux-mod_pkg_postrm
# @DESCRIPTION:
# It removes the package from the /var/lib/module-rebuild/moduledb database but it doens't
# It removes the package from the /var/lib/module-rebuild/moduledb database but it doesn't
# call /sbin/depmod because the modules are still installed.
linux-mod_pkg_postrm() {
debug-print-function ${FUNCNAME} $*

View File

@ -58,7 +58,7 @@ BDEPEND=">=dev-util/meson-0.62.2
# @ECLASS_VARIABLE: EMESON_BUILDTYPE
# @DESCRIPTION:
# The buildtype value to pass to meson setup.
: ${EMESON_BUILDTYPE=plain}
: "${EMESON_BUILDTYPE=plain}"
# @ECLASS_VARIABLE: EMESON_SOURCE
# @DEFAULT_UNSET
@ -289,21 +289,21 @@ meson_src_configure() {
local BUILD_PKG_CONFIG_PATH=${BUILD_PKG_CONFIG_PATH}
if tc-is-cross-compiler; then
: ${BUILD_CFLAGS:=-O1 -pipe}
: ${BUILD_CXXFLAGS:=-O1 -pipe}
: ${BUILD_FCFLAGS:=-O1 -pipe}
: ${BUILD_OBJCFLAGS:=-O1 -pipe}
: ${BUILD_OBJCXXFLAGS:=-O1 -pipe}
: "${BUILD_CFLAGS:=-O1 -pipe}"
: "${BUILD_CXXFLAGS:=-O1 -pipe}"
: "${BUILD_FCFLAGS:=-O1 -pipe}"
: "${BUILD_OBJCFLAGS:=-O1 -pipe}"
: "${BUILD_OBJCXXFLAGS:=-O1 -pipe}"
else
: ${BUILD_CFLAGS:=${CFLAGS}}
: ${BUILD_CPPFLAGS:=${CPPFLAGS}}
: ${BUILD_CXXFLAGS:=${CXXFLAGS}}
: ${BUILD_FCFLAGS:=${FCFLAGS}}
: ${BUILD_LDFLAGS:=${LDFLAGS}}
: ${BUILD_OBJCFLAGS:=${OBJCFLAGS}}
: ${BUILD_OBJCXXFLAGS:=${OBJCXXFLAGS}}
: ${BUILD_PKG_CONFIG_LIBDIR:=${PKG_CONFIG_LIBDIR}}
: ${BUILD_PKG_CONFIG_PATH:=${PKG_CONFIG_PATH}}
: "${BUILD_CFLAGS:=${CFLAGS}}"
: "${BUILD_CPPFLAGS:=${CPPFLAGS}}"
: "${BUILD_CXXFLAGS:=${CXXFLAGS}}"
: "${BUILD_FCFLAGS:=${FCFLAGS}}"
: "${BUILD_LDFLAGS:=${LDFLAGS}}"
: "${BUILD_OBJCFLAGS:=${OBJCFLAGS}}"
: "${BUILD_OBJCXXFLAGS:=${OBJCXXFLAGS}}"
: "${BUILD_PKG_CONFIG_LIBDIR:=${PKG_CONFIG_LIBDIR}}"
: "${BUILD_PKG_CONFIG_PATH:=${PKG_CONFIG_PATH}}"
fi
local mesonargs=(

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: multilib.eclass
@ -47,7 +47,7 @@ has_multilib_profile() {
# ex:
# CFLAGS=$(get_abi_var CFLAGS sparc32) # CFLAGS=-m32
#
# Note that the prefered method is to set CC="$(tc-getCC) $(get_abi_CFLAGS)"
# Note that the preferred method is to set CC="$(tc-getCC) $(get_abi_CFLAGS)"
# This will hopefully be added to portage soon...
#
# If <ABI> is not specified, ${ABI} is used.
@ -288,8 +288,8 @@ multilib_env() {
# - https://bugs.gentoo.org/675954
# - https://gcc.gnu.org/PR90077
# - https://github.com/gentoo/musl/issues/245
: ${MULTILIB_ABIS=default}
: ${DEFAULT_ABI=default}
: "${MULTILIB_ABIS=default}"
: "${DEFAULT_ABI=default}"
export MULTILIB_ABIS DEFAULT_ABI
return
fi
@ -311,8 +311,8 @@ multilib_env() {
export CTARGET_arm64=${CHOST_arm64}
export LIBDIR_arm64="lib64"
: ${MULTILIB_ABIS=arm64}
: ${DEFAULT_ABI=arm64}
: "${MULTILIB_ABIS=arm64}"
: "${DEFAULT_ABI=arm64}"
;;
x86_64*)
export CFLAGS_x86=${CFLAGS_x86--m32}
@ -337,12 +337,12 @@ multilib_env() {
case ${CTARGET} in
*-gnux32)
: ${MULTILIB_ABIS=x32 amd64 x86}
: ${DEFAULT_ABI=x32}
: "${MULTILIB_ABIS=x32 amd64 x86}"
: "${DEFAULT_ABI=x32}"
;;
*)
: ${MULTILIB_ABIS=amd64 x86}
: ${DEFAULT_ABI=amd64}
: "${MULTILIB_ABIS=amd64 x86}"
: "${DEFAULT_ABI=amd64}"
;;
esac
;;
@ -352,8 +352,8 @@ multilib_env() {
export CTARGET_lp64d=${CTARGET}
export LIBDIR_lp64d=${LIBDIR_lp64d-lib64}
: ${MULTILIB_ABIS=lp64d}
: ${DEFAULT_ABI=lp64d}
: "${MULTILIB_ABIS=lp64d}"
: "${DEFAULT_ABI=lp64d}"
;;
mips64*|mipsisa64*)
export CFLAGS_o32=${CFLAGS_o32--mabi=32}
@ -372,8 +372,8 @@ multilib_env() {
export CTARGET_n64=${CHOST_n64}
export LIBDIR_n64="lib64"
: ${MULTILIB_ABIS=n64 n32 o32}
: ${DEFAULT_ABI=n32}
: "${MULTILIB_ABIS=n64 n32 o32}"
: "${DEFAULT_ABI=n32}"
;;
powerpc64*)
export CFLAGS_ppc=${CFLAGS_ppc--m32}
@ -386,12 +386,12 @@ multilib_env() {
export CTARGET_ppc64=${CHOST_ppc64}
export LIBDIR_ppc64="lib64"
: ${MULTILIB_ABIS=ppc64 ppc}
: ${DEFAULT_ABI=ppc64}
: "${MULTILIB_ABIS=ppc64 ppc}"
: "${DEFAULT_ABI=ppc64}"
;;
riscv64*)
: ${MULTILIB_ABIS=lp64d lp64 ilp32d ilp32}
: ${DEFAULT_ABI=lp64d}
: "${MULTILIB_ABIS=lp64d lp64 ilp32d ilp32}"
: "${DEFAULT_ABI=lp64d}"
# the default abi is set to the 1-level libdir default
@ -422,8 +422,8 @@ multilib_env() {
export LIBDIR_ilp32=${LIBDIR_ilp32-lib32/ilp32}
;;
riscv32*)
: ${MULTILIB_ABIS=ilp32d ilp32}
: ${DEFAULT_ABI=ilp32d}
: "${MULTILIB_ABIS=ilp32d ilp32}"
: "${DEFAULT_ABI=ilp32d}"
# the default abi is set to the 1-level libdir default
@ -454,8 +454,8 @@ multilib_env() {
export CTARGET_s390x=${CHOST_s390x}
export LIBDIR_s390x="lib64"
: ${MULTILIB_ABIS=s390x s390}
: ${DEFAULT_ABI=s390x}
: "${MULTILIB_ABIS=s390x s390}"
: "${DEFAULT_ABI=s390x}"
;;
sparc64*)
export CFLAGS_sparc32=${CFLAGS_sparc32--m32}
@ -468,12 +468,12 @@ multilib_env() {
export CTARGET_sparc64=${CHOST_sparc64}
export LIBDIR_sparc64="lib64"
: ${MULTILIB_ABIS=sparc64 sparc32}
: ${DEFAULT_ABI=sparc64}
: "${MULTILIB_ABIS=sparc64 sparc32}"
: "${DEFAULT_ABI=sparc64}"
;;
*)
: ${MULTILIB_ABIS=default}
: ${DEFAULT_ABI=default}
: "${MULTILIB_ABIS=default}"
: "${DEFAULT_ABI=default}"
;;
esac

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: ninja-utils.eclass
@ -34,12 +34,12 @@ _NINJA_UTILS_ECLASS=1
# but other values can be set where NINJA_DEPEND will then be set
# to a blank variable.
# The default is set to "ninja".
: ${NINJA:=ninja}
: "${NINJA:=ninja}"
# @ECLASS_VARIABLE: NINJA_DEPEND
# @OUTPUT_VARIABLE
# @DESCRIPTION:
# Contains a set of build-time depenendencies based on the NINJA setting.
# Contains a set of build-time dependencies based on the NINJA setting.
# @ECLASS_VARIABLE: NINJAOPTS
# @DEFAULT_UNSET

View File

@ -143,7 +143,7 @@ dopammod() {
# Install pam module file <old name> as <new name> in the pam
# modules' dir for current implementation
newpammod() {
[[ $# -ne 2 ]] && die "newpammod requires two arguements"
[[ $# -ne 2 ]] && die "newpammod requires two arguments"
if has pam ${IUSE} && ! use pam; then
return 0;
@ -159,7 +159,7 @@ newpammod() {
# This function creates a pamd file which mimics system-auth file
# for the given levels in the /etc/pam.d directory.
pamd_mimic_system() {
[[ $# -lt 2 ]] && die "pamd_mimic_system requires at least two argments"
[[ $# -lt 2 ]] && die "pamd_mimic_system requires at least two arguments"
pamd_mimic system-auth "$@"
}
@ -169,7 +169,7 @@ pamd_mimic_system() {
# This function creates a pamd file which mimics the given stack
# for the given levels in the /etc/pam.d directory.
pamd_mimic() {
[[ $# -lt 3 ]] && die "pamd_mimic requires at least three argments"
[[ $# -lt 3 ]] && die "pamd_mimic requires at least three arguments"
if has pam ${IUSE} && ! use pam; then
return 0;

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: portability.eclass
@ -139,11 +139,11 @@ get_mounts() {
fi
# OK, pray we have a -p option that outputs mounts in fstab format
# using tabs as the seperator.
# using tabs as the separator.
# Then pray that there are no tabs in the either.
# Currently only FreeBSD supports this and the other BSDs will
# have to be patched.
# Athough the BSD's may support /proc, they do NOT put \040 in place
# Although the BSDs may support /proc, they do NOT put \040 in place
# of the spaces and we should not force a /proc either.
local IFS=$'\t'
LC_ALL=C mount -p | while read node point fs foo ; do

View File

@ -16,7 +16,7 @@
# the eclass), and the version is translated using
# pypi_translate_version.
#
# If necessary, SRC_URI and S can be overriden by the ebuild. Two
# If necessary, SRC_URI and S can be overridden by the ebuild. Two
# helper functions, pypi_sdist_url and pypi_wheel_url are provided
# to generate URLs to artifacts of specified type, with customizable
# URL components. Additionally, pypi_wheel_name can be used to generate
@ -50,6 +50,19 @@ _PYPI_ECLASS=1
# When set to a non-empty value, disables project name normalization
# for the default SRC_URI and S values.
# @ECLASS_VARIABLE: PYPI_PN
# @PRE_INHERIT
# @DESCRIPTION:
# The PyPI project name. This should be overridden scarcely, generally
# when upstream project name does not conform to Gentoo naming rules,
# e.g. when it contains dots or uppercase letters.
#
# Example use:
# @CODE
# PYPI_PN=${PN/-/.}
# @CODE
: "${PYPI_PN:=${PN}}"
# @FUNCTION: pypi_normalize_name
# @USAGE: <name>
# @DESCRIPTION:
@ -99,9 +112,9 @@ pypi_translate_version() {
# generated using build systems that did not follow PEP 625
# (i.e. the sdist name contains uppercase letters, hyphens or dots).
#
# If <package> is unspecified, it defaults to ${PN}. The package name
# is normalized according to the specification unless `--no-normalize`
# is passed.
# If <package> is unspecified, it defaults to ${PYPI_PN}. The package
# name is normalized according to the specification unless
# `--no-normalize` is passed.
#
# If <version> is unspecified, it defaults to ${PV} translated
# via pypi_translate_version. If it is specified, then it is used
@ -121,7 +134,7 @@ pypi_sdist_url() {
die "Usage: ${FUNCNAME} [--no-normalize] <project> [<version> [<suffix>]]"
fi
local project=${1-"${PN}"}
local project=${1-"${PYPI_PN}"}
local version=${2-"$(pypi_translate_version "${PV}")"}
local suffix=${3-.tar.gz}
local fn_project=${project}
@ -135,8 +148,8 @@ pypi_sdist_url() {
# @DESCRIPTION:
# Output the wheel filename for the specified project/version tuple.
#
# If <package> is unspecified, it defaults to ${PN}. The package name
# is normalized according to the wheel specification.
# If <package> is unspecified, it defaults to ${PYPI_PN}. The package
# name is normalized according to the wheel specification.
#
# If <version> is unspecified, it defaults to ${PV} translated
# via pypi_translate_version. If it is specified, then it is used
@ -154,7 +167,7 @@ pypi_wheel_name() {
die "Usage: ${FUNCNAME} <project> [<version> [<python-tag> [<abi-platform-tag>]]]"
fi
local project=$(pypi_normalize_name "${1-"${PN}"}")
local project=$(pypi_normalize_name "${1-"${PYPI_PN}"}")
local version=${2-"$(pypi_translate_version "${PV}")"}
local pytag=${3-py3}
local abitag=${4-none-any}
@ -172,7 +185,7 @@ pypi_wheel_name() {
# the wheel contents will be unpacked straight into ${WORKDIR}.
# You need to add a BDEPEND on app-arch/unzip.
#
# If <package> is unspecified, it defaults to ${PN}.
# If <package> is unspecified, it defaults to ${PYPI_PN}.
#
# If <version> is unspecified, it defaults to ${PV} translated
# via pypi_translate_version. If it is specified, then it is used
@ -197,7 +210,7 @@ pypi_wheel_url() {
fi
local filename=$(pypi_wheel_name "${@}")
local project=${1-"${PN}"}
local project=${1-"${PYPI_PN}"}
local version=${2-"$(pypi_translate_version "${PV}")"}
local pytag=${3-py3}
printf "https://files.pythonhosted.org/packages/%s" \
@ -210,10 +223,10 @@ pypi_wheel_url() {
if [[ ${PYPI_NO_NORMALIZE} ]]; then
SRC_URI="$(pypi_sdist_url --no-normalize)"
S="${WORKDIR}/${PN}-$(pypi_translate_version "${PV}")"
S="${WORKDIR}/${PYPI_PN}-$(pypi_translate_version "${PV}")"
else
SRC_URI="$(pypi_sdist_url)"
S="${WORKDIR}/$(pypi_normalize_name "${PN}")-$(pypi_translate_version "${PV}")"
S="${WORKDIR}/$(pypi_normalize_name "${PYPI_PN}")-$(pypi_translate_version "${PV}")"
fi
fi

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: readme.gentoo-r1.eclass
@ -45,7 +45,7 @@ esac
# @ECLASS_VARIABLE: README_GENTOO_SUFFIX
# @DESCRIPTION:
# If you want to specify a suffix for README.gentoo file please export it.
: ${README_GENTOO_SUFFIX:=""}
: "${README_GENTOO_SUFFIX:=""}"
# @FUNCTION: readme.gentoo_create_doc
# @DESCRIPTION:

View File

@ -355,16 +355,16 @@ tc-export_build_env() {
# Some build envs will initialize vars like:
# : ${BUILD_LDFLAGS:-${LDFLAGS}}
# So make sure all variables are non-empty. #526734
: ${BUILD_CFLAGS:=-O1 -pipe}
: ${BUILD_CXXFLAGS:=-O1 -pipe}
: ${BUILD_CPPFLAGS:= }
: ${BUILD_LDFLAGS:= }
: "${BUILD_CFLAGS:=-O1 -pipe}"
: "${BUILD_CXXFLAGS:=-O1 -pipe}"
: "${BUILD_CPPFLAGS:= }"
: "${BUILD_LDFLAGS:= }"
else
# https://bugs.gentoo.org/654424
: ${BUILD_CFLAGS:=${CFLAGS}}
: ${BUILD_CXXFLAGS:=${CXXFLAGS}}
: ${BUILD_CPPFLAGS:=${CPPFLAGS}}
: ${BUILD_LDFLAGS:=${LDFLAGS}}
: "${BUILD_CFLAGS:=${CFLAGS}}"
: "${BUILD_CXXFLAGS:=${CXXFLAGS}}"
: "${BUILD_CPPFLAGS:=${CPPFLAGS}}"
: "${BUILD_LDFLAGS:=${LDFLAGS}}"
fi
export BUILD_{C,CXX,CPP,LD}FLAGS
@ -654,7 +654,7 @@ tc-has-tls() {
-l) ;;
-*) die "Usage: tc-has-tls [-c|-l] [toolchain prefix]";;
esac
: ${flags:=-fPIC -shared -Wl,-z,defs}
: "${flags:=-fPIC -shared -Wl,-z,defs}"
[[ $1 == -* ]] && shift
$(tc-getCC "$@") ${flags} "${base}.c" -o "${base}" >&/dev/null
local ret=$?

View File

@ -53,9 +53,9 @@ if [[ ${CTARGET} = ${CHOST} ]] ; then
export CTARGET=${CATEGORY#cross-}
fi
fi
: ${TARGET_ABI:=${ABI}}
: ${TARGET_MULTILIB_ABIS:=${MULTILIB_ABIS}}
: ${TARGET_DEFAULT_ABI:=${DEFAULT_ABI}}
: "${TARGET_ABI:=${ABI}}"
: "${TARGET_MULTILIB_ABIS:=${MULTILIB_ABIS}}"
: "${TARGET_DEFAULT_ABI:=${DEFAULT_ABI}}"
is_crosscompile() {
[[ ${CHOST} != ${CTARGET} ]]
@ -400,17 +400,17 @@ PDEPEND=">=sys-devel/gcc-config-2.3"
# Used to override compression used for for patchsets.
# Default is xz for EAPI 8+ and bz2 for older EAPIs.
if [[ ${EAPI} == 8 ]] ; then
: ${TOOLCHAIN_PATCH_SUFFIX:=xz}
: "${TOOLCHAIN_PATCH_SUFFIX:=xz}"
else
# Older EAPIs
: ${TOOLCHAIN_PATCH_SUFFIX:=bz2}
: "${TOOLCHAIN_PATCH_SUFFIX:=bz2}"
fi
# @ECLASS_VARIABLE: TOOLCHAIN_SET_S
# @DESCRIPTION:
# Used to override value of S for snapshots and such. Mainly useful
# if needing to set GCC_TARBALL_SRC_URI.
: ${TOOLCHAIN_SET_S:=yes}
: "${TOOLCHAIN_SET_S:=yes}"
# Set the source directory depending on whether we're using
# a live git tree, snapshot, or release tarball.
@ -537,12 +537,18 @@ get_gcc_src_uri() {
# Pull gcc tarball from another location. Frequently used by gnat-gpl.
GCC_SRC_URI="${GCC_TARBALL_SRC_URI}"
elif [[ -n ${SNAPSHOT} ]] ; then
GCC_SRC_URI="https://gcc.gnu.org/pub/gcc/snapshots/${SNAPSHOT}/gcc-${SNAPSHOT}.tar.xz"
GCC_SRC_URI="mirror://gcc/snapshots/${SNAPSHOT}/gcc-${SNAPSHOT}.tar.xz"
else
if tc_version_is_between 5.5 6 || tc_version_is_between 6.4 7 || tc_version_is_at_least 7.2 ; then
GCC_SRC_URI="mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.xz"
GCC_SRC_URI="
mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.xz
mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.xz
"
else
GCC_SRC_URI="mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.bz2"
GCC_SRC_URI="
mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.bz2
mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.bz2
"
fi
fi
@ -1090,6 +1096,14 @@ toolchain_src_configure() {
confgcc+=( --enable-libstdcxx-time )
fi
# This only controls whether the compiler *supports* LTO, not whether
# it's *built using* LTO. Hence we do it without a USE flag.
if tc_version_is_at_least 4.6 ; then
confgcc+=( --enable-lto )
elif tc_version_is_at_least 4.5 ; then
confgcc+=( --disable-lto )
fi
# Build compiler itself using LTO
if tc_version_is_at_least 9.1 && _tc_use_if_iuse lto ; then
build_config_targets+=( bootstrap-lto )
@ -1164,6 +1178,10 @@ toolchain_src_configure() {
avr)
confgcc+=( --enable-shared --disable-threads )
;;
nvptx*)
# "LTO is not supported for this target"
confgcc+=( --disable-lto )
;;
esac
if [[ -n ${needed_libc} ]] ; then
@ -1293,7 +1311,7 @@ toolchain_src_configure() {
[[ ${arm_arch} == armv7? ]] && arm_arch=${arm_arch/7/7-}
# See if this is a valid --with-arch flag
if (srcdir=${S}/gcc target=${CTARGET} with_arch=${arm_arch};
. "${srcdir}"/config.gcc) &>/dev/null
. "${srcdir}"/config.gcc) &>/dev/null
then
confgcc+=( --with-arch=${arm_arch} )
fi
@ -1331,7 +1349,7 @@ toolchain_src_configure() {
;;
amd64)
# drop the older/ABI checks once this get's merged into some
# drop the older/ABI checks once this gets merged into some
# version of gcc upstream
if tc_version_is_at_least 4.8 && has x32 $(get_all_abis TARGET) ; then
confgcc+=( --with-abi=$(gcc-abi-map ${TARGET_DEFAULT_ABI}) )
@ -1485,14 +1503,6 @@ toolchain_src_configure() {
confgcc+=( $(use_with zstd) )
fi
# This only controls whether the compiler *supports* LTO, not whether
# it's *built using* LTO. Hence we do it without a USE flag.
if tc_version_is_at_least 4.6 ; then
confgcc+=( --enable-lto )
elif tc_version_is_at_least 4.5 ; then
confgcc+=( --disable-lto )
fi
# graphite was added in 4.4 but we only support it in 6.5+ due to external
# library issues. bug #448024, bug #701270
if tc_version_is_at_least 6.5 && in_iuse graphite ; then
@ -1954,7 +1964,7 @@ gcc_do_make() {
LIBPATH="${LIBPATH}" \
BOOT_CFLAGS="${BOOT_CFLAGS}"
popd > /dev/null || die
fi
fi
einfo "Compiling ${PN} (${GCC_MAKE_TARGET})..."
@ -2409,7 +2419,7 @@ create_gcc_env_entry() {
local gcc_envd_file="${ED}${gcc_envd_base}"
if [[ -z $1 ]] ; then
# I'm leaving the following commented out to remind me that it
# was an insanely -bad- idea. Stuff broke. GCC_SPECS isnt unset
# was an insanely -bad- idea. Stuff broke. GCC_SPECS isn't unset
# on chroot or in non-toolchain.eclass gcc ebuilds!
#gcc_specs_file="${LIBPATH}/specs"
gcc_specs_file=""
@ -2583,14 +2593,14 @@ do_gcc_config() {
ewarn "The currently selected specs-specific gcc config,"
ewarn "${current_specs}, doesn't exist anymore. This is usually"
ewarn "due to enabling/disabling hardened or switching to a version"
ewarn "of gcc that doesnt create multiple specs files. The default"
ewarn "of gcc that doesn't create multiple specs files. The default"
ewarn "config will be used, and the previous preference forgotten."
use_specs=""
fi
target="${CTARGET}-${GCC_CONFIG_VER}${use_specs}"
else
# The curent target is invalid. Attempt to switch to a valid one.
# The current target is invalid. Attempt to switch to a valid one.
# Blindly pick the latest version. bug #529608
# TODO: Should update gcc-config to accept `-l ${CTARGET}` rather than
# doing a partial grep like this.
@ -2643,7 +2653,7 @@ should_we_gcc_config() {
#---->> support and misc functions <<----
# This is to make sure we don't accidentally try to enable support for a
# language that doesnt exist. GCC 3.4 supports f77, while 4.0 supports f95, etc.
# language that doesn't exist. GCC 3.4 supports f77, while 4.0 supports f95, etc.
#
# Also add a hook so special ebuilds (kgcc64) can control which languages
# exactly get enabled

View File

@ -57,7 +57,7 @@ IUSE="verify-sig"
#
# - openpgp -- verify PGP signatures using app-crypt/gnupg (the default)
# - signify -- verify signatures with Ed25519 public key using app-crypt/signify
: ${VERIFY_SIG_METHOD:=openpgp}
: "${VERIFY_SIG_METHOD:=openpgp}"
case ${VERIFY_SIG_METHOD} in
openpgp)
@ -102,7 +102,7 @@ esac
# connection.
#
# Supported for OpenPGP only.
: ${VERIFY_SIG_OPENPGP_KEY_REFRESH:=no}
: "${VERIFY_SIG_OPENPGP_KEY_REFRESH:=no}"
# @FUNCTION: verify-sig_verify_detached
# @USAGE: <file> <sig-file> [<key-file>]

View File

@ -27,7 +27,7 @@ inherit vim-doc
# @ECLASS_VARIABLE: VIM_PLUGIN_VIM_VERSION
# @DESCRIPTION:
# Minimum Vim version the plugin supports.
: ${VIM_PLUGIN_VIM_VERSION:=7.3}
: "${VIM_PLUGIN_VIM_VERSION:=7.3}"
DEPEND="|| ( >=app-editors/vim-${VIM_PLUGIN_VIM_VERSION}
>=app-editors/gvim-${VIM_PLUGIN_VIM_VERSION} )"

View File

@ -22,11 +22,11 @@ _VIRTUALX_ECLASS=1
# @DESCRIPTION:
# Variable specifying the dependency on xorg-server and xhost.
# Possible special values are "always" and "manual", which specify
# the dependency to be set unconditionaly or not at all.
# the dependency to be set unconditionally or not at all.
# Any other value is taken as useflag desired to be in control of
# the dependency (eg. VIRTUALX_REQUIRED="kde" will add the dependency
# into "kde? ( )" and add kde into IUSE.
: ${VIRTUALX_REQUIRED:=test}
: "${VIRTUALX_REQUIRED:=test}"
# @ECLASS_VARIABLE: VIRTUALX_DEPEND
# @OUTPUT_VARIABLE

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: waf-utils.eclass
@ -30,7 +30,7 @@ inherit multilib toolchain-funcs multiprocessing
# @DESCRIPTION:
# Set to OFF to disable verbose messages during compilation
# this is _not_ meant to be set in ebuilds
: ${WAF_VERBOSE:=ON}
: "${WAF_VERBOSE:=ON}"
# @ECLASS_VARIABLE: WAF_BINARY
# @DESCRIPTION:
@ -67,7 +67,7 @@ waf-utils_src_configure() {
fi
if [[ ${PYTHON_REQ_USE} != *threads* ]]; then
eerror "Waf requires threading support in Python. To accomodate this requirement,"
eerror "Waf requires threading support in Python. To accommodate this requirement,"
eerror "please add 'threads(+)' to PYTHON_REQ_USE variable (above inherit line)."
eerror "For more information and examples, please see:"
eerror " https://wiki.gentoo.org/wiki/Project:Python/waf-utils_integration"
@ -77,7 +77,7 @@ waf-utils_src_configure() {
[[ ${fail} ]] && die "Invalid use of waf-utils.eclass"
: ${WAF_BINARY:="${S}/waf"}
: "${WAF_BINARY:="${S}/waf"}"
local conf_args=()

View File

@ -1,4 +1,4 @@
# Copyright 2004-2022 Gentoo Authors
# Copyright 2004-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: xdg-utils.eclass
@ -26,13 +26,13 @@ esac
# @INTERNAL
# @DESCRIPTION:
# Directory where .desktop files database is stored
: ${DESKTOP_DATABASE_DIR="/usr/share/applications"}
: "${DESKTOP_DATABASE_DIR="/usr/share/applications"}"
# @ECLASS_VARIABLE: MIMEINFO_DATABASE_DIR
# @INTERNAL
# @DESCRIPTION:
# Directory where .desktop files database is stored
: ${MIMEINFO_DATABASE_DIR:="/usr/share/mime"}
: "${MIMEINFO_DATABASE_DIR:="/usr/share/mime"}"
# @FUNCTION: xdg_environment_reset
# @DESCRIPTION:

View File

@ -1,37 +0,0 @@
CEDICT LICENCE STATEMENT
Copyright (C) 1997, 1998 Paul Andrew Denisowski
This licence statement and copyright notice applies to the CEDICT
Chinese/English Dictionary file, the associated documentation file
CEDICT.DOC, and any data files which are derived from them.
COPYING AND DISTRIBUTION
Permission is granted to make and distribute verbatim copies of these files
provided this copyright notice and permission notice is distributed with all
copies. Any distribution of the files must take place without a financial
return, except a charge to cover the cost of the distribution medium.
Permission is granted to make and distribute extracts or subsets of the CEDICT
file under the same conditions applying to verbatim copies.
Permission is granted to translate the English elements of the CEDICT file
into other languages, and to make and distribute copies of those translations
under the same conditions applying to verbatim copies.
USAGE
These files may be freely used by individuals, and may be accessed by
software belonging to, or operated by, such individuals.
The files, extracts from the files, and translations of the files must not be
sold as part of any commercial software package, nor must they be
incorporated in any published dictionary or other printed document without
the specific permission of the copyright holder.
COPYRIGHT
Copyright over the documents covered by this statement is held by
Paul Denisowski.

View File

@ -1,47 +0,0 @@
PSF LICENSE AGREEMENT FOR PYTHON 2.2
------------------------------------
1. This LICENSE AGREEMENT is between the Python Software Foundation
("PSF"), and the Individual or Organization ("Licensee") accessing and
otherwise using Python 2.2 software in source or binary form and its
associated documentation.
2. Subject to the terms and conditions of this License Agreement, PSF
hereby grants Licensee a nonexclusive, royalty-free, world-wide
license to reproduce, analyze, test, perform and/or display publicly,
prepare derivative works, distribute, and otherwise use Python 2.2
alone or in any derivative version, provided, however, that PSF's
License Agreement and PSF's notice of copyright, i.e., "Copyright (c)
2001 Python Software Foundation; All Rights Reserved" are retained in
Python 2.2 alone or in any derivative version prepared by Licensee.
3. In the event Licensee prepares a derivative work that is based on
or incorporates Python 2.2 or any part thereof, and wants to make
the derivative work available to others as provided herein, then
Licensee hereby agrees to include in any such work a brief summary of
the changes made to Python 2.2.
4. PSF is making Python 2.2 available to Licensee on an "AS IS"
basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 2.2 WILL NOT
INFRINGE ANY THIRD PARTY RIGHTS.
5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
2.2 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 2.2,
OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
6. This License Agreement will automatically terminate upon a material
breach of its terms and conditions.
7. Nothing in this License Agreement shall be deemed to create any
relationship of agency, partnership, or joint venture between PSF and
Licensee. This License Agreement does not grant permission to use PSF
trademarks or trade name in a trademark sense to endorse or promote
products or services of Licensee, or any third party.
8. By copying, installing or otherwise using Python 2.2, Licensee
agrees to be bound by the terms and conditions of this License
Agreement.

View File

@ -1,132 +0,0 @@
Sourcetrail
Software License Agreement (“AGREEMENT”)
Last date of change: 2018-04-23
BY INSTALLING OR USING THIS SOFTWARE, YOU ARE BECOMING A PARTY TO, AND ARE CONSENTING TO BE BOUND BY, THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, DO NOT INSTALL OR USE THIS SOFTWARE.
1. DEFINITIONS
"SOFTWARE" means:
* a version of the cross-platform source code explorer known as Sourcetrail in executable form. The version is defined by the two leading numbers of the version string (e.g. the version of Sourcetrail 2017.1.x is version 2017.1); and
* documentation for that version of Sourcetrail; and
* minor updates included in software maintenance which are indicated by an increase in the digits that follow the first two leading numbers of the version string (e.g. the update from Sourcetrail 2017.1.0 to Sourcetrail 2017.1.1 is a minor update).
"LICENSE" means:
* the permission to use and distribute the SOFTWARE as defined by the following sections of this document. The permissions granted especially depend on whether a SOFTWARE Non-Commercial License or a SOFTWARE Commercial License is agreed-upon.
"LICENSOR" means:
* Coati Software KG, having a place of business at Jakob-Haringer-Straße 1/127, 5020 Salzburg, Austria.
"LICENSEE" means:
* the individual who purchased a LICENSE(s) for the SOFTWARE;
* the individual who was granted a LICENSE(s) for the SOFTWARE by LICENSOR;
* the company, corporation, organization, or legal entity that purchased a LICENSE(s) for the SOFTWARE;
* the company, corporation, organization, or legal entity that was granted a LICENSE(s) for the SOFTWARE by LICENSOR.
"PARTIES" means:
* both LICENSOR and LICENSEE collectively.
"AUTHORIZED USER" means:
* the individual who is LICENSEE of the SOFTWARE. This individual is the only AUTHORIZED USER;
* an employee who is nameable on demand and might at any time use the SOFTWARE, of LICENSEE. Every AUTHORIZED USER known by name can be replaced by another user known by name only once in a month. From that time on, said first user must not use the SOFTWARE anymore and said second user may start to use the SOFTWARE. At no time may the simultaneous number of users known by name exceed the agreed-upon number of AUTHORIZED USER(s). For each LICENSE that has been acquired before May 23th 2018 every AUTHORIZED USER known by name can be replaced by another user known by name instantly.
"ACTIVATION KEY" means:
* a document issued by LICENSOR that defines all parameters of the SOFTWARE Commercial License. Said document specifies the name of the licensed SOFTWARE, the name of LICENSEE, the license type, the agreed-upon number of AUTHORIZED USERS, an upper limit for the licensed SOFTWARE version or an expiration date, and a hash-code. The combination of these values allows LICENSEE to unlock the full functionality of a genuine copy of the SOFTWARE for intended commercial use.
2. GRANT
The SOFTWARE is handed over to LICENSEE for its intended use. The scope of the intended use permitted by this AGREEMENT depends on whether a SOFTWARE Non-Commercial License or a SOFTWARE Commercial License is agreed-upon. If a SOFTWARE Non-Commercial License is agreed-upon LICENSEE is allowed to use the SOFTWARE solely for non-commercial purposes. A purpose is non-commercial only if it is in no manner primarily intended for or directed toward commercial advantage or private monetary compensation.
Examples of non-commercial purposes:
* you are using the SOFTWARE to work on open-source projects for free;
* you are a student and you are using the SOFTWARE for your academic projects;
* you are using the SOFTWARE in your spare time to work on the desktop application of your local football club for free.
Examples of commercial purposes, i.e. when you will need a Commercial License:
* you are using the SOFTWARE to work on open-source as well as on your company's projects;
* you are a student and you are using the SOFTWARE for your work as a freelancer;
* you are using the SOFTWARE in your spare time to work on the desktop application of your local football club and you are getting paid for that.
Subject to the terms of this AGREEMENT, LICENSOR hereby grants LICENSEE a worldwide, non-transferable, non-exclusive, non-sub-licensable, limited LICENSE that allows:
* LICENSEE to distribute (an) ACTIVATION KEY(s) to AUTHORIZED USER(s);
* LICENSEE and AUTHORIZED USER(s) to install the SOFTWARE on any number of computer PCs where potential use of the full functionality of the SOFTWARE is restricted exclusively to AUTHORIZED USER(s);
* LICENSEE and AUTHORIZED USER(s) to use the command-line interface of the SOFTWARE without unlocking the full functionality of the SOFTWARE;
* LICENSEE and AUTHORIZED USER(s) to use an ACTIVATION KEY to unlock the full functionality of the SOFTWARE for intended commercial use;
* LICENSEE and AUTHORIZED USER(s) to truthfully declare their intend to solely use the SOFTWARE for non-commercial purposes to unlock the full functionality of the SOFTWARE for intended non-commercial use;
* AUTHORIZED USER(s) to apply any version of the unlocked SOFTWARE that specifies a version number less than or equal to the version number denoted in the ACTIVATION KEY to the permitted intended use. If the ACTIVATION KEY does not denote a version number, the AUTHORIZED USER is allowed to use any version of the SOFTWARE for a period of time that is limited by the expiration date specified in the ACTIVATION KEY;
* LICENSEE to make a copy of the SOFTWARE for archival purposes provided the copy contains all of the proprietary notices of the SOFTWARE.
3. RESTRICTIONS
LICENSEE and AUTHORIZED USER(s) will not, and will have no right to:
* modify, translate, reverse engineer, decompile, disassemble (except to the extent applicable laws specifically prohibit such restriction), create derivative works based on, or otherwise attempt to discover the source code or underlying ideas or algorithms of the SOFTWARE;
* sell, rent, lease, distribute, or otherwise transfer rights to the SOFTWARE without prior written consent from LICENSOR;
* remove any proprietary notices or labels from the SOFTWARE;
* distribute, use, or transfer an ACTIVATION KEY(s) that has been superseded by an ACTIVATION KEY(s) provided with software maintenance.
4. CONFIDENTIALITY
The SOFTWARE contains a feature that will automatically connect to LICENSOR's servers to check for a new program version. The data sent in this process contains NO POTENTIALLY SENSITIVE INFORMATION. The user can opt-out from this feature.
Unless a valid non-disclosure agreement exists between the Parties, in which case the terms of that non-disclosure agreement shall apply, the following terms shall: Except as necessary for its performance under the AGREEMENT or required by law, LICENSOR shall not disclose to anyone any information furnished by LICENSEE that is marked as confidential or proprietary.
5. TITLE AND COPYRIGHT
Title, ownership rights, intellectual property rights, and copyright to the SOFTWARE, and any copies or portions thereof, shall remain in LICENSOR. The SOFTWARE is protected by European copyright directives, Austrian copyright laws as well as United States copyright laws and international treaty provisions.
6. DISCLAIMER OF WARRANTY
THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND. LICENSOR HEREBY DISCLAIMS ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS AGREEMENT. SOME U.S. STATES DO NOT ALLOW EXCLUSIONS OF AN IMPLIED WARRANTY, SO THIS DISCLAIMER MAY NOT APPLY TO LICENSEE. LICENSEE MAY HAVE OTHER LEGAL RIGHTS THAT VARY FROM STATE TO STATE OR BY JURISDICTION.
7. LIMITATION OF LIABILITY
LICENSEE ASSUMES THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE. LICENSOR ASSUMES NO LIABILITY FOR THE COST OF ANY SERVICE OR REPAIR IF THE SOFTWARE IS DEFECTIVE. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, TORT, CONTRACT, STRICT LIABILITY, OR OTHERWISE, SHALL LICENSOR, OR ITS LICENSORS, SUPPLIERS OR RESELLERS, BE LIABLE TO LICENSEE OR ANY OTHER PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES. IN NO EVENT WILL LICENSOR BE LIABLE FOR ANY DAMAGES IN EXCESS OF THE MONEY PAID FOR THE SOFTWARE, EVEN IF LICENSOR SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. FURTHERMORE, SOME U.S. STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS LIMITATION AND EXCLUSION MAY NOT APPLY TO LICENSEE.
8. TERMINATION
The LICENSE granted herein shall be perpetual. If LICENSEE fails to comply with any of the terms of this AGREEMENT, this AGREEMENT and the rights granted herein will terminate immediately. As such the Non-Commercial LICENSE terminates automatically if the usage of SOFTWARE becomes commercial. LICENSOR may, at its sole discretion and at any time, terminate this AGREEMENT. On termination, LICENSEE must cease using and destroy all copies of the SOFTWARE.
9. EXPORT CONTROLS
LICENSEE shall comply with all export laws, restrictions and regulations of the United States, the Directive 2009/428/EC of the European Parliament and of the Council and the Austrian Außenwirtschaftsgesetz 2011, BGBl I No. 26/2011. LICENSEE shall not export, re-export or otherwise transfer the SOFTWARE to any country for which the United States or the European Union or Austria maintains an embargo, or to any person or entity on the U.S. Department of Treasury List of Specially Designated Nationals or the U.S. Department of Commerce Denied Persons List or Entity List. LICENSEE represents and warrants that LICENSEE is not located in, under the control of, or a national or resident of any restricted country or on any such list.
10. YOUR RESPONSIBILITIES.
LICENSEE agrees to immediately notify LICENSOR in writing of any misuse, misappropriation or unauthorized use, disclosure, display or copying of the SOFTWARE that may come to LICENSEE's attention. In addition, LICENSEE agrees to defend, indemnify and hold LICENSOR, its suppliers and any of its directors, officers, employees or affiliates of any of the foregoing harmless from any and all claims resulting from or arising out of LICENSEE's use of the Software or breach of this AGREEMENT.
11. THIRD PARTY CREDITS
Portions of the SOFTWARE utilize or include third party software and other copyrighted materials. Credits, licensing terms, and disclaimers for such materials are contained in the installation directory for the SOFTWARE, and are accessible via the “3rd Party Licenses” dialog for the SOFTWARE. LICENSEE agrees that use of such copyrighted materials is governed by their respective terms.
12. SEVERABILITY
If a particular term of this AGREEMENT is not enforceable, the unenforceability of that term will not affect any other terms of this AGREEMENT.
13. HEADINGS
The section headings used herein are for convenience only and do not affect the interpretation of this AGREEMENT.
14. NO WAIVER
LICENSOR's failure to enforce or exercise any part of this AGREEMENT is not a waiver of that part.
15. ENTIRE AGREEMENT
This AGREEMENT represents the complete agreement concerning this SOFTWARE between the PARTIES and supersedes all prior agreements and representations between them. It may be amended only in writing executed by both PARTIES. The inclusion of LICENSEE's own terms and conditions is contradicted, unless their validity has explicitly been agreed to. LICENSOR reserves the exclusive right to update this AGREEMENT for new SOFTWARE versions. By using these new SOFTWARE versions the new AGREEMENT supersedes any older one. Any action arising out of or relating to this AGREEMENT may be brought exclusively in Salzburg, Austria, and the PARTIES irrevocably consent to the jurisdiction of such courts and venue in Salzburg, Austria.
CONTACT
If you have questions regarding this AGREEMENT, contact:
Coati Software KG
Jakob-Haringer-Straße 1/127
5020 Salzburg
Austria
support@sourcetrail.com

View File

@ -1,131 +0,0 @@
Sun Microsystems, Inc.
Binary Code License Agreement
READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED SUPPLEMENTAL LICENSE TERMS
(COLLECTIVELY "AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE MEDIA PACKAGE.
BY OPENING THE SOFTWARE MEDIA PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMENT.
IF YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY, INDICATE YOUR ACCEPTANCE OF
THESE TERMS BY SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS AGREEMENT. IF
YOU DO NOT AGREE TO ALL THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR
PLACE OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS ACCESSED ELECTRONICALLY,
SELECT THE "DECLINE" BUTTON AT THE END OF THIS AGREEMENT. 1. LICENSE TO USE.
Sun grants you a non-exclusive and non-transferable license for the internal use
only of the accompanying software and documentation and any error corrections
provided by Sun (collectively "Software"), by the number of users and the class
of computer hardware for which the corresponding fee has been paid. 2.
RESTRICTIONS. Software is confidential and copyrighted. Title to Software and
all associated intellectual property rights is retained by Sun and/or its
licensors. Except as specifically authorized in any Supplemental License Terms,
you may not make copies of Software, other than a single copy of Software for
archival purposes. Unless enforcement is prohibited by applicable law, you may
not modify, decompile, or reverse engineer Software. Licensee acknowledges that
Licensed Software is not designed or intended for use in the design,
construction, operation or maintenance of any nuclear facility. Sun
Microsystems, Inc. disclaims any express or implied warranty of fitness for such
uses. No right, title or interest in or to any trademark, service mark, logo
or trade name of Sun or its licensors is granted under this Agreement. 3.
LIMITED WARRANTY. Sun warrants to you that for a period of ninety (90) days
from the date of purchase, as evidenced by a copy of the receipt, the media on
which Software is furnished (if any) will be free of defects in materials and
workmanship under normal use. Except for the foregoing, Software is provided
"AS IS". Your exclusive remedy and Sun's entire liability under this limited
warranty will be at Sun's option to replace Software media or refund the fee
paid for Software. 4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS
AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE
DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. 5. LIMITATION OF LIABILITY. TO THE
EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE
FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL,
INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF
LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE,
EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event
will Sun's liability to you, whether in contract, tort (including negligence),
or otherwise, exceed the amount paid by you for Software under this Agreement.
The foregoing limitations will apply even if the above stated warranty fails of
its essential purpose. 6. Termination. This Agreement is effective until
terminated. You may terminate this Agreement at any time by destroying all
copies of Software. This Agreement will terminate immediately without notice
from Sun if you fail to comply with any provision of this Agreement. Upon
Termination, you must destroy all copies of Software. 7. Export Regulations. All
Software and technical data delivered under this Agreement are subject to US
export control laws and may be subject to export or import regulations in other
countries. You agree to comply strictly with all such laws and regulations and
acknowledge that you have the responsibility to obtain such licenses to export,
re-export, or import as may be required after delivery to you. 8. U.S.
Government Restricted Rights. If Software is being acquired by or on behalf of
the U.S. Government or by a U.S. Government prime contractor or subcontractor
(at any tier), then the Government's rights in Software and accompanying
documentation will be only as set forth in this Agreement; this is in accordance
with 48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD)
acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD acquisitions). 9.
Governing Law. Any action related to this Agreement will be governed by
California law and controlling U.S. federal law. No choice of law rules of any
jurisdiction will apply. 10. Severability. If any provision of this Agreement
is held to be unenforceable, this Agreement will remain in effect with the
provision omitted, unless omission would frustrate the intent of the parties, in
which case this Agreement will immediately terminate. 11. Integration. This
Agreement is the entire agreement between you and Sun relating to its subject
matter. It supersedes all prior or contemporaneous oral or written
communications, proposals, representations and warranties and prevails over any
conflicting or additional terms of any quote, order, acknowledgment, or other
communication between the parties relating to its subject matter during the term
of this Agreement. No modification of this Agreement will be binding, unless in
writing and signed by an authorized representative of each party. JAVATM
INTERFACE CLASSES JAVA TRANSACTION API (JTA), VERSION 1.0.1B, MAINTENANCE
RELEASESUPPLEMENTAL LICENSE TERMS These supplemental license terms
("Supplemental Terms") add to or modify the terms of the Binary Code License
Agreement (collectively, the "Agreement"). Capitalized terms not defined in
these Supplemental Terms shall have the same meanings ascribed to them in the
Agreement. These Supplemental Terms shall supersede any inconsistent or
conflicting terms in the Agreement, or in any license contained within the
Software. 1. Software Internal Use and Development License Grant. Subject to the
terms and conditions of this Agreement, including, but not limited to Section 3
(Java Technology Restrictions) of these Supplemental Terms, Sun grants you a
non-exclusive, non-transferable, limited license to reproduce internally and use
internally the binary form of the Software, complete and unmodified, for the
sole purpose of designing, developing and testing your Java applets and
applications ("Programs"). 2. License to Distribute Software. In addition to
the license granted in Section 1 (Software Internal Use and Development License
Grant) of these Supplemental Terms, subject to the terms and conditions of this
Agreement, including but not limited to Section 3 (Java Technology
Restrictions), Sun grants you a non-exclusive, non-transferable, limited license
to reproduce and distribute the Software in binary form only, provided that you
(i) distribute the Software complete and unmodified and only bundled as part of
your Programs, (ii) do not distribute additional software intended to replace
any component(s) of the Software, (iii) do not remove or alter any proprietary
legends or notices contained in the Software, (iv) only distribute the Software
subject to a license agreement that protects Sun's interests consistent with the
terms contained in this Agreement, and (v) agree to defend and indemnify Sun and
its licensors from and against any damages, costs, liabilities, settlement
amounts and/or expenses (including attorneys' fees) incurred in connection with
any claim, lawsuit or action by any third party that arises or results from the
use or distribution of any and all Programs and/or Software. 3. Java Technology
Restrictions. You may not modify the Java Platform Interface ("JPI", identified
as classes contained within the "java" package or any subpackages of the "java"
package), by creating additional classes within the JPI or otherwise causing the
addition to or modification of the classes in the JPI. In the event that you
create an additional class and associated API(s) which (i) extends the
functionality of the Java Platform, and (ii) is exposed to third party software
developers for the purpose of developing additional software which invokes such
additional API, you must promptly publish broadly an accurate specification for
such API for free use by all developers. You may not create, or authorize your
licensees to create additional classes, interfaces, or subpackages that are in
any way identified as "java", "javax", "sun" or similar convention as specified
by Sun in any naming convention designation. 4. Trademarks and Logos. You
acknowledge and agree as between you and Sun that Sun owns the SUN, SOLARIS,
JAVA, JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS, JAVA, JINI,
FORTE, and iPLANET-related trademarks, service marks, logos and other brand
designations ("Sun Marks"), and you agree to comply with the Sun Trademark and
Logo Usage Requirements currently located at
http://www.sun.com/policies/trademarks. Any use you make of the Sun Marks inures
to Sun's benefit. 5. Source Code. Software may contain source code that is
provided solely for reference purposes pursuant to the terms of this Agreement.
Source code may not be redistributed unless expressly provided for in this
Agreement. 6. Termination for Infringement. Either party may terminate this
Agreement immediately should any Software become, or in either party's opinion
be likely to become, the subject of a claim of infringement of any intellectual
property right. For inquiries please contact: Sun Microsystems, Inc. 4150
Network Circle, Santa Clara, California 95054. (LFI#121049/Form ID#011801)

View File

@ -1,10 +0,0 @@
Copyright 1986,1996,2002 by International Bible Society
Uebersetzt und herausgegeben durch: Brunnen Verlag, Basel und Giessen
Das Nutzungsrecht beschraenkt sich auf einen einzigen Rechner, die
Vervielfaeltigung in jedweder Form ueber den persoenlichen Gebrauch hinaus
ist nicht gestattet.
Copyright 1986, 1996, 2002 by International Bible Society
Translated and published by: Brunnen Verlag, Basel/Swiss and Giessen/Germany.
The right to use is limited to a single computer. Any reproduction in any
form beyond the personal use is prohibited.

View File

@ -2,3 +2,5 @@ DIST curl-7.87.0.tar.xz 2547932 BLAKE2B b272ec928c5ef1728434630d8910f58834327a30
DIST curl-7.87.0.tar.xz.asc 488 BLAKE2B 031d8236b357bd3c519548b181254dc0aea1efc1375738bce04f4f331d35bafe99d1ca394ecf5943ede7cae040854b6d2b478fd305147eb7330f8d50e5d95c96 SHA512 0bcc12bafc4ae50d80128af2cf4bf1a1ec6018ebb8d5b9c49f52b51c0c25acc77e820858965656549ef43c1f923f4e5fe75b0a3523623154b4cfb9dc8a1d76e4
DIST curl-7.88.1.tar.xz 2581032 BLAKE2B ed7e7aa29efb02fd89a53d5c8d0ec79b4d17612ea07d2a6b5a951f0ca651b4cf7264704344b1a0c2d82196f4cb5c08525e06b4cdd432bc3278ff23c7a6580839 SHA512 b8d30c52a6d1c3e272608a7a8db78dfd79aef21330f34d6f1df43839a400e13ac6aac72a383526db0b711a70ecbec89a3b934677d7ecf5094fd64d3dbcb3492f
DIST curl-7.88.1.tar.xz.asc 488 BLAKE2B ea90d840846fca3f0b17838a84431cb44d6e3f8d2b42c3eced1fb1c929a58e8899b303c93d27ca3cafcaa52e7269ac440e7102191d6b2c2751729a6c4116e82f SHA512 d6dc720533004c4d533cc4fb3dd33ac28d95e114f440ec011e4b58f65d1f4c40cfa10ba26d2e2f2f1f9de99511632578b4758c5e79593c7c30d29788fdf1cbb6
DIST curl-8.0.1.tar.xz 2575544 BLAKE2B 67d82e9d71f0a351b5c2ed3ad5eab02e367ded872658a295179b935729d5105015f8c29569c396e11cd14036656af894ded85c8838cba260d9f6f1a8dcb5e22b SHA512 3bb777982659ed697ae90f113ff7b65d6ce8ba9fe6a8984cfd6769d2f051a72ba953c911abe234c204ec2cc5a35d68b4d033037fad7fba31bb92a52543f8d13d
DIST curl-8.0.1.tar.xz.asc 488 BLAKE2B 452e1bebe1028e7621bbf8829e50cf56e254cd63a8cf2a4c0332176b9f18fb2821304ae556a203996d273c986bddbd04db2218c18fd34dee66e9155861ba50ce SHA512 92c6a0570e9a8a708fe2f717b8b37a68dcb9cd4520ca50c9baafec5891bda103bce2d2dcb67f1387bf11bd7e51e0e64ccd52d196e61d58b598ad3aa1960386cf

View File

@ -0,0 +1,316 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/danielstenberg.asc
inherit autotools multilib-minimal prefix verify-sig
DESCRIPTION="A Client that groks URLs"
HOMEPAGE="https://curl.se/"
SRC_URI="
https://curl.se/download/${P}.tar.xz
verify-sig? ( https://curl.se/download/${P}.tar.xz.asc )
"
LICENSE="curl"
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="+adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap 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 curl_ssl_rustls"
IUSE+=" nghttp3"
RESTRICT="!test? ( test )"
# Only one default ssl provider can be enabled
REQUIRED_USE="
ssl? (
^^ (
curl_ssl_gnutls
curl_ssl_mbedtls
curl_ssl_nss
curl_ssl_openssl
curl_ssl_rustls
)
)
"
RDEPEND="
sys-libs/zlib[${MULTILIB_USEDEP}]
adns? ( net-dns/c-ares:=[${MULTILIB_USEDEP}] )
brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] )
http2? ( net-libs/nghttp2:=[${MULTILIB_USEDEP}] )
idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] )
kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
nghttp3? (
net-libs/nghttp3[${MULTILIB_USEDEP}]
net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}]
)
rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] )
ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] )
ssl? (
gnutls? (
app-misc/ca-certificates
net-libs/gnutls:=[static-libs?,${MULTILIB_USEDEP}]
dev-libs/nettle:=[${MULTILIB_USEDEP}]
)
mbedtls? (
app-misc/ca-certificates
net-libs/mbedtls:=[${MULTILIB_USEDEP}]
)
nss? (
app-misc/ca-certificates
dev-libs/nss[${MULTILIB_USEDEP}]
dev-libs/nss-pem
)
openssl? (
dev-libs/openssl:=[sslv3(-)=,static-libs?,${MULTILIB_USEDEP}]
)
rustls? (
net-libs/rustls-ffi:=[${MULTILIB_USEDEP}]
)
)
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
"
DEPEND="${RDEPEND}"
BDEPEND="
dev-lang/perl
virtual/pkgconfig
test? (
sys-apps/diffutils
http2? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] )
nghttp3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] )
)
verify-sig? ( sec-keys/openpgp-keys-danielstenberg )
"
DOCS=( CHANGES README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} )
MULTILIB_WRAPPED_HEADERS=(
/usr/include/curl/curlbuild.h
)
MULTILIB_CHOST_TOOLS=(
/usr/bin/curl-config
)
QA_CONFIG_IMPL_DECL_SKIP=(
__builtin_available
closesocket
CloseSocket
getpass_r
ioctlsocket
IoctlSocket
mach_absolute_time
setmode
)
PATCHES=(
"${FILESDIR}"/${PN}-7.30.0-prefix.patch
"${FILESDIR}"/${PN}-respect-cflags-3.patch
# Backports
"${FILESDIR}"/${PN}-8.0.1-onion-resolution.patch
)
src_prepare() {
default
eprefixify curl-config.in
eautoreconf
}
multilib_src_configure() {
# We make use of the fact that later flags override earlier ones
# So start with all ssl providers off until proven otherwise
# TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/)
local myconf=()
myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt )
#myconf+=( --without-default-ssl-backend )
if use ssl ; then
myconf+=( --without-gnutls --without-mbedtls --without-nss --without-rustls )
if use gnutls || use curl_ssl_gnutls; then
einfo "SSL provided by gnutls"
myconf+=( --with-gnutls )
fi
if use mbedtls || use curl_ssl_mbedtls; then
einfo "SSL provided by mbedtls"
myconf+=( --with-mbedtls )
fi
if use nss || use curl_ssl_nss; then
einfo "SSL provided by nss"
myconf+=( --with-nss --with-nss-deprecated )
fi
if use openssl || use curl_ssl_openssl; then
einfo "SSL provided by openssl"
myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs )
fi
if use rustls || use curl_ssl_rustls; then
einfo "SSL provided by rustls"
myconf+=( --with-rustls )
fi
if use curl_ssl_gnutls; then
einfo "Default SSL provided by gnutls"
myconf+=( --with-default-ssl-backend=gnutls )
elif use curl_ssl_mbedtls; then
einfo "Default SSL provided by mbedtls"
myconf+=( --with-default-ssl-backend=mbedtls )
elif use curl_ssl_nss; then
einfo "Default SSL provided by nss"
myconf+=( --with-default-ssl-backend=nss )
elif use curl_ssl_openssl; then
einfo "Default SSL provided by 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
eerror "We can't be here because of REQUIRED_USE."
fi
else
myconf+=( --without-ssl )
einfo "SSL disabled"
fi
# These configuration options are organized alphabetically
# within each category. This should make it easier if we
# ever decide to make any of them contingent on USE flags:
# 1) protocols first. To see them all do
# 'grep SUPPORT_PROTOCOLS configure.ac'
# 2) --enable/disable options second.
# 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort
# 3) --with/without options third.
# grep -- --with configure | grep Check | awk '{ print $4 }' | sort
myconf+=(
$(use_enable alt-svc)
--enable-crypto-auth
--enable-dict
--disable-ech
--enable-file
$(use_enable ftp)
$(use_enable gopher)
$(use_enable hsts)
--enable-http
$(use_enable imap)
$(use_enable ldap)
$(use_enable ldap ldaps)
--enable-ntlm
--disable-ntlm-wb
$(use_enable pop3)
--enable-rt
--enable-rtsp
$(use_enable samba smb)
$(use_with ssh libssh2)
$(use_enable smtp)
$(use_enable telnet)
$(use_enable tftp)
--enable-tls-srp
$(use_enable adns ares)
--enable-cookies
--enable-dateparse
--enable-dnsshuffle
--enable-doh
--enable-symbol-hiding
--enable-http-auth
--enable-ipv6
--enable-largefile
--enable-manual
--enable-mime
--enable-netrc
$(use_enable progress-meter)
--enable-proxy
--enable-socketpair
--disable-sspi
$(use_enable static-libs static)
--enable-pthreads
--enable-threaded-resolver
--disable-versioned-symbols
--without-amissl
--without-bearssl
$(use_with brotli)
--without-fish-functions-dir
$(use_with http2 nghttp2)
--without-hyper
$(use_with idn libidn2)
$(use_with kerberos gssapi "${EPREFIX}"/usr)
--without-libgsasl
--without-libpsl
--without-msh3
$(use_with nghttp3)
$(use_with nghttp3 ngtcp2)
--without-quiche
$(use_with rtmp librtmp)
--without-schannel
--without-secure-transport
--without-test-caddy
--without-test-httpd
--without-test-nghttpx
$(use_enable websockets)
--without-winidn
--without-wolfssl
--with-zlib
$(use_with zstd)
)
if use test && multilib_is_native_abi && ( use http2 || use nghttp3 ); then
myconf+=(
--with-test-nghttpx="${BROOT}/usr/bin/nghttpx"
)
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
if ! multilib_is_native_abi; then
# Avoid building the client (we just want libcurl for multilib)
sed -i -e '/SUBDIRS/s:src::' Makefile || die
sed -i -e '/SUBDIRS/s:scripts::' Makefile || die
fi
# Fix up the pkg-config file to be more robust.
# https://github.com/curl/curl/issues/864
local priv=() libs=()
# We always enable zlib.
libs+=( "-lz" )
priv+=( "zlib" )
if use http2; then
libs+=( "-lnghttp2" )
priv+=( "libnghttp2" )
fi
if use nghttp3; then
libs+=( "-lnghttp3" "-lngtcp2" )
priv+=( "libnghttp3" "libngtcp2" )
fi
if use ssl && use curl_ssl_openssl; then
libs+=( "-lssl" "-lcrypto" )
priv+=( "openssl" )
fi
grep -q Requires.private libcurl.pc && die "need to update ebuild"
libs=$(printf '|%s' "${libs[@]}")
sed -i -r \
-e "/^Libs.private/s:(${libs#|})( |$)::g" \
libcurl.pc || die
echo "Requires.private: ${priv[*]}" >> libcurl.pc || die
}
multilib_src_test() {
# See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721
# -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches)
# -v: verbose
# -a: keep going on failure (so we see everything which breaks, not just 1st test)
# -k: keep test files after completion
# -am: automake style TAP output
# -p: print logs if test fails
# Note: if needed, we can skip specific tests. See e.g. Fedora's packaging
# or just read https://github.com/curl/curl/tree/master/tests#run.
multilib_is_native_abi && emake test TFLAGS="-n -v -a -k -am -p"
}
multilib_src_install_all() {
einstalldocs
find "${ED}" -type f -name '*.la' -delete || die
rm -rf "${ED}"/etc/ || die
}

View File

@ -1,4 +1,6 @@
https://bugs.gentoo.org/887287
https://github.com/curl/curl/pull/10705
From: Matt Jolly <Matt.Jolly@footclan.ninja>
Date: Wed, 8 Mar 2023 02:16:45 +1100
Subject: [PATCH] Refuse to resolve the .onion TLD.

View File

@ -0,0 +1,158 @@
https://bugs.gentoo.org/887287
https://github.com/curl/curl/pull/10705
From e2bbd1adc22ec5033e2292b780e1790db93c3cb4 Mon Sep 17 00:00:00 2001
From: Matt Jolly <Matt.Jolly@footclan.ninja>
Date: Wed, 8 Mar 2023 02:16:45 +1100
Subject: [PATCH] Refuse to resolve the .onion TLD.
RFC 7686 states that:
> Applications that do not implement the Tor
> protocol SHOULD generate an error upon the use of .onion and
> SHOULD NOT perform a DNS lookup.
Let's do that.
See curl/curl#543
https://www.rfc-editor.org/rfc/rfc7686#section-2
--- a/docs/KNOWN_BUGS
+++ b/docs/KNOWN_BUGS
@@ -80,7 +80,6 @@ problems may have been fixed or changed somewhat since this was written.
10.3 FTPS over SOCKS
11. Internals
- 11.1 Curl leaks .onion hostnames in DNS
11.2 error buffer not set if connection to multiple addresses fails
11.4 HTTP test server 'connection-monitor' problems
11.5 Connection information when using TCP Fast Open
@@ -525,14 +524,6 @@ problems may have been fixed or changed somewhat since this was written.
11. Internals
-11.1 Curl leaks .onion hostnames in DNS
-
- Curl sends DNS requests for hostnames with a .onion TLD. This leaks
- information about what the user is attempting to access, and violates this
- requirement of RFC7686: https://datatracker.ietf.org/doc/html/rfc7686
-
- Issue: https://github.com/curl/curl/issues/543
-
11.2 error buffer not set if connection to multiple addresses fails
If you ask libcurl to resolve a hostname like example.com to IPv6 addresses
--- a/lib/hostip.c
+++ b/lib/hostip.c
@@ -652,6 +652,14 @@ enum resolve_t Curl_resolv(struct Curl_easy *data,
CURLcode result;
enum resolve_t rc = CURLRESOLV_ERROR; /* default to failure */
struct connectdata *conn = data->conn;
+ /* We should intentionally error and not resolve .onion TLDs */
+ size_t hostname_len = strlen(hostname);
+ if(hostname_len >= 7 &&
+ (curl_strequal(&hostname[hostname_len-6], ".onion") ||
+ curl_strequal(&hostname[hostname_len-7], ".onion."))) {
+ failf(data, "Not resolving .onion address (RFC 7686)");
+ return CURLRESOLV_ERROR;
+ }
*entry = NULL;
#ifndef CURL_DISABLE_DOH
conn->bits.doh = FALSE; /* default is not */
--- a/tests/data/Makefile.inc
+++ b/tests/data/Makefile.inc
@@ -186,8 +186,8 @@ test1432 test1433 test1434 test1435 test1436 test1437 test1438 test1439 \
test1440 test1441 test1442 test1443 test1444 test1445 test1446 test1447 \
test1448 test1449 test1450 test1451 test1452 test1453 test1454 test1455 \
test1456 test1457 test1458 test1459 test1460 test1461 test1462 test1463 \
-test1464 test1465 test1466 test1467 test1468 test1469 test1470 \
-\
+test1464 test1465 test1466 test1467 test1468 test1469 test1470 test1471 \
+test1472 \
test1500 test1501 test1502 test1503 test1504 test1505 test1506 test1507 \
test1508 test1509 test1510 test1511 test1512 test1513 test1514 test1515 \
test1516 test1517 test1518 test1519 test1520 test1521 test1522 test1523 \
--- /dev/null
+++ b/tests/data/test1471
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+Onion
+Tor
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<name>
+Fail to resolve .onion TLD
+</name>
+<command>
+red.onion
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# Couldn't resolve host name
+<errorcode>
+6
+</errorcode>
+<stderr mode="text">
+curl: (6) Not resolving .onion address (RFC 7686)
+</stderr>
+</verify>
+</testcase>
--- /dev/null
+++ b/tests/data/test1472
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+Onion
+Tor
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<name>
+Fail to resolve .onion. TLD
+</name>
+<command>
+tasty.onion.
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# Couldn't resolve host name
+<errorcode>
+6
+</errorcode>
+<stderr mode="text">
+curl: (6) Not resolving .onion address (RFC 7686)
+</stderr>
+</verify>
+</testcase>

View File

@ -12,7 +12,7 @@ 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"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Matt Turner <tetromino@gentoo.org> (2023-02-15)
@ -120,6 +120,7 @@ media-libs/rubberband jni
# media-libs/libavif isn't keyworded here
media-libs/gd avif heif
media-gfx/graphicsmagick heif
www-client/links avif
# Sam James <sam@gentoo.org> (2021-02-26)
# dev-libs/efl not keyworded here

View File

@ -1,6 +1,10 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2023-03-23)
# app-emacs/flycheck is not marked stable here yet
dev-util/pkgcheck emacs
# Sam James <sam@gentoo.org> (2022-07-06)
# sci-libs/sundials is not marked stable on arm
sci-mathematics/octave sundials

View File

@ -0,0 +1,7 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
# Broken on big-endian (#861710)
# https://github.com/trendmicro/tlsh/issues/131
dev-libs/tlsh

View File

@ -1,6 +1,11 @@
# Copyright 2019-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
# Broken on big-endian (#861710)
# https://github.com/trendmicro/tlsh/issues/131
dev-libs/tlsh
# Sam James <sam@gentoo.org> (2023-03-10)
# Fails to build on HPPA w/ sys-kernel/linux-headers-6.2:
# https://github.com/strace/strace/issues/241

View File

@ -152,6 +152,7 @@ media-libs/rubberband jni
# media-libs/libavif isn't keyworded here
media-libs/gd avif heif
media-gfx/graphicsmagick heif
www-client/links avif
# Georgy Yakovlev <gyakovlev@gentoo.org> (2021-01-19)
# uchardet not stable/keyworded yet on this arch

View File

@ -121,6 +121,7 @@ media-libs/rubberband jni
# media-libs/libavif isn't keyworded here
media-libs/gd avif heif
media-gfx/graphicsmagick heif
www-client/links avif
# Akinori Hattori <hattya@gentoo.org> (2021-03-03)
# dev-lang/ruby is not keyworded

View File

@ -0,0 +1,7 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
# Broken on big-endian (#861710)
# https://github.com/trendmicro/tlsh/issues/131
dev-libs/tlsh

View File

@ -0,0 +1,6 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# matoro <matoro_gentoo@matoro.tk> (2023-03-20)
# Requires dev-lang/go, not available on n32 ABI
sys-libs/libcap tools

View File

@ -0,0 +1,6 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# matoro <matoro_gentoo@matoro.tk> (2023-03-20)
# Requires dev-lang/go, not available on n32 ABI
sys-libs/libcap tools

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