Sync with portage [Sat Oct 30 13:42:43 MSK 2021].

akrasnyh 2116
root 3 years ago
parent ea50ddd489
commit ec1d2d6e92

Binary file not shown.

Binary file not shown.

@ -3,3 +3,4 @@ DIST awscli-1.20.60.tar.gz 2090278 BLAKE2B 107d4d34730769fe18729cc2a42a574c8b66d
DIST awscli-1.20.65.tar.gz 2091702 BLAKE2B e8295cf4e859c1e642077f4014fdea333292e98e22bbcb58a87da174687af8ebdf693a94f04949119d544daaf6fb9bfe4388444d9ec8a24c0e8b67d202e75753 SHA512 dd943682d10212179ebba959b8919a07ba0b548c5f24f735c69c05f9e1c27efa3f74c45d9702b96c4e556a6b436947d34da88291fc5718386891a3425a738c84
DIST awscli-1.21.5.tar.gz 2095418 BLAKE2B 152d0ac70e9e0120fb9b10451904af52035bce84168c055695e7dc93e56648bd7689f20ac0ecdbdfc54ccb846d51b33027d2e9ee09c5e5d1e915c0ec05b0fbfe SHA512 e3063252a50fc6033669a0ff80f82d73764a6728d623d75a27f0652e779cbeb452454d887bf5bd70199a7394df40f9758b14619778c6428a164d590e6c8aaa89
DIST awscli-1.21.6.tar.gz 2095961 BLAKE2B 7c765168604cf98f2c1be1aebf1cacb425124dff51a0a1ba1792634187feab6361d740aa743eda7d41a671300d4196e852640e04f56aa399752ce3305ac1ce86 SHA512 912d81f96cef3ae1c2a0969050e1bce304d1019a98d6bf16e45de50c66f85f6f69a10ceffeae773aafa002227e657861a9f41d123368c1b4a93b5d49747137d3
DIST awscli-1.21.7.tar.gz 2095914 BLAKE2B 6cb53fab223941a41eceeb8430d7158bc14da670a42609707ee5aea02a7e9d43f32fd7118ef7ab4ede54dd5312a4907eac7aa0e040d775ca7f606049dfc1a090 SHA512 8bf7dd4aaab890e4269a02fdd8735dd918a31783128dab46bc5077310ca385717fe4da913c2fb3c36e1132eaaea40cb7c4f434d6060fe27cd4bfc704581cd1e0

@ -0,0 +1,47 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
inherit bash-completion-r1 distutils-r1
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="https://pypi.org/project/awscli/"
#SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
SRC_URI="https://github.com/aws/aws-cli/archive/${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/aws-cli-${PV}"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
# botocore is x.(y+1).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1)).$(ver_cut 3-)"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.4.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
"
distutils_enable_tests --install pytest
python_test() {
distutils_install_for_testing
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit}
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
insinto /usr/share/zsh/site-functions
newins bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

@ -22,7 +22,7 @@ else
SRC_URI="https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz
ftp://ftp.sudo.ws/pub/sudo/${uri_prefix}${MY_P}.tar.gz"
if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~sparc-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~sparc-solaris"
fi
fi

Binary file not shown.

@ -3,3 +3,4 @@ DIST Geekbench-2.4.3-Linux.tar.gz 3337551 BLAKE2B cb660f3c08cc812cb23374032490a1
DIST Geekbench-3.4.2-Linux.tar.gz 9986039 BLAKE2B 63d7e768d65bc033260a0d99da17df2e518750f19882e63dbc9bbe6ff0b52a8cddb35b9143e85c01838bf5d77a04599578fc0a57a3e6fd89e7aec8c8ffdd4f5b SHA512 a61a5d5481682baefdce64f6054c3373900e8cd585dcbfa2feabbf386032986b40b603619c552102401a83e0b748831d00af5b5b5278e88ef42dee176adf06e9
DIST Geekbench-4.4.1-Linux.tar.gz 71076124 BLAKE2B 14c2b80c971798e7d2bb256e76c7ab9c48e8c1c389e2f7547a436f706ac4f21c1e52e564cd584893071ee2f9f0a4747cd03ea72cc728ff8e4f369d5cc794d77a SHA512 fa687d33a7d7a2d09c544e3d17de93f41cfa77915c708cd1ef0743f84f7f83df9d3f8df2872a8f85ed2c4c872e3cd41932685ffeb19cdb0ea047ab5116713420
DIST Geekbench-5.4.1-Linux.tar.gz 93161586 BLAKE2B 3d7c1915b6eeb83f5e7c3f2ab2e3d863d0e1e9252d76a612d58f2549e0c2ef664d1ebade93d2eaca336e78d54641768d1cfc9d9d736eb00c7457d312af565ab2 SHA512 b1a6634c9173254aa46111b06367dbc13aeb0813ba53b770a1dc7757140c1821c03dee566f40c0378d79f8658ff4c06bfb8170be631c2d95c2e367d239554492
DIST Geekbench-5.4.2-Linux.tar.gz 93166278 BLAKE2B bc3abcf6fc8fbabdf8084085694b594d177537624310b962e55d7ad4128d67c1b0f03f11c5dd4d5e714e71f700d25e689601c2137c3b4d25322d683a0e7ff401 SHA512 f1e38ceca1c6c3e670409563e32ed24e6eac0038fb1d61e839e29975b09f9505c1bcd18dd5b8064a952f49053e298e7135cd9639ffa41dfe07ecbb2601647dfb

@ -1,11 +1,12 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com"
SRC_URI="https://cdn.primatelabs.com/Geekbench-${PV}-LinuxARM.tar.gz"
S="${WORKDIR}/dist/Geekbench-${PV}-LinuxARM"
KEYWORDS="-* arm"
LICENSE="geekbench"
@ -13,8 +14,6 @@ SLOT="2"
RESTRICT="bindist mirror"
S="${WORKDIR}/dist/Geekbench-${PV}-LinuxARM"
QA_PREBUILT="opt/geekbench2/geekbench opt/geekbench2/geekbench_arm_32"
pkg_nofetch() {

@ -1,11 +1,12 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com"
SRC_URI="https://cdn.primatelabs.com/Geekbench-${PV}-Linux.tar.gz"
S="${WORKDIR}/dist/Geekbench-${PV}-Linux"
KEYWORDS="-* amd64 x86"
LICENSE="geekbench"
@ -13,8 +14,6 @@ SLOT="2"
RESTRICT="bindist mirror"
S="${WORKDIR}/dist/Geekbench-${PV}-Linux"
QA_PREBUILT="opt/geekbench2/geekbench opt/geekbench2/geekbench_x86_32 opt/geekbench2/geekbench_x86_64"
pkg_nofetch() {

@ -1,11 +1,12 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com"
SRC_URI="https://cdn.primatelabs.com/Geekbench-${PV}-Linux.tar.gz"
S="${WORKDIR}/dist/Geekbench-${PV}-Linux"
KEYWORDS="-* amd64 x86"
LICENSE="geekbench"
@ -13,8 +14,6 @@ SLOT="3"
RESTRICT="bindist mirror"
S="${WORKDIR}/dist/Geekbench-${PV}-Linux"
QA_PREBUILT="opt/geekbench3/geekbench opt/geekbench3/geekbench_x86_32 opt/geekbench3/geekbench_x86_64"
pkg_nofetch() {

@ -1,11 +1,12 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com"
SRC_URI="https://cdn.geekbench.com/Geekbench-${PV}-Linux.tar.gz"
S="${WORKDIR}/Geekbench-${PV}-Linux"
KEYWORDS="-* amd64 x86"
LICENSE="geekbench"
@ -13,8 +14,6 @@ SLOT="4"
RESTRICT="bindist mirror"
S="${WORKDIR}/Geekbench-${PV}-Linux"
QA_PREBUILT="
opt/geekbench4/geekbench4
opt/geekbench4/geekbench_x86_32

@ -1,11 +1,12 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com/"
SRC_URI="https://cdn.geekbench.com/Geekbench-${PV}-Linux.tar.gz"
S="${WORKDIR}/Geekbench-${PV}-Linux"
KEYWORDS="-* amd64"
LICENSE="geekbench"
@ -13,8 +14,6 @@ SLOT="5"
RESTRICT="bindist mirror"
S="${WORKDIR}/Geekbench-${PV}-Linux"
QA_PREBUILT="
opt/geekbench5/geekbench5
opt/geekbench5/geekbench_x86_64

@ -0,0 +1,42 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com/"
SRC_URI="https://cdn.geekbench.com/Geekbench-${PV}-Linux.tar.gz"
S="${WORKDIR}/Geekbench-${PV}-Linux"
KEYWORDS="-* ~amd64"
LICENSE="geekbench"
SLOT="5"
RESTRICT="bindist mirror"
QA_PREBUILT="
opt/geekbench5/geekbench5
opt/geekbench5/geekbench_x86_64
"
pkg_nofetch() {
elog "Please download ${A} from ${HOMEPAGE}/download/linux"
elog "and place it in your DISTDIR directory."
}
src_install() {
exeinto /opt/geekbench5
doexe geekbench5 geekbench_x86_64
insinto /opt/geekbench5
doins geekbench.plar
dodir /opt/bin
dosym ../geekbench5/geekbench5 /opt/bin/geekbench5
}
pkg_postinst() {
elog "If you have purchased a commercial license, you can enter"
elog "your email address and your license key with the following command:"
elog "geekbench5 -r <email address> <license key>"
}

@ -1 +1 @@
DIST stress-ng-0.13.05.tar.xz 590340 BLAKE2B 214e98ef5db575a0835ccef15d9145bba6d25774bb26ce1ac2ffa3b29309a62416752b298ccb5b1ce91ad40a3c68dee7ada7c59fd85c06d8372e24c72a927480 SHA512 39a1622d63e88a1d0f535b36c57a01f734e686a3f4f2dc9dcf69154e7b0e4986c6bd654a42803cc3dc0e9a22151db9e2ae79a772758e9d80beb22bd39492d13a
DIST stress-ng-0.13.06.tar.gz 1014981 BLAKE2B a93ff571919707568cd0162479e47c6241b4081713cfa88b30594227d01f9af2a6e3ad759ba62f5f5485322d68768ba1ea19087d07281fa1c2b949bcac99f70e SHA512 7aefc794edaa5799f96dd4afe099b747d532e4367bd372b9ed29db03f8276322113509fdd4885500864d292beeb9f407dc3f2ef2a04f92b65f240ee73eb174bb

@ -1,13 +1,13 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit optfeature toolchain-funcs
DESCRIPTION="Stress test for a computer system with various selectable ways"
HOMEPAGE="https://kernel.ubuntu.com/~cking/stress-ng/"
SRC_URI="https://kernel.ubuntu.com/~cking/tarballs/${PN}/${P}.tar.xz"
HOMEPAGE="https://github.com/ColinIanKing/stress-ng"
SRC_URI="https://github.com/ColinIanKing/${PN}/archive/refs/tags/V${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"

Binary file not shown.

@ -17,7 +17,7 @@ if [[ ${PV} == 9999* ]]; then
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
https://dev.gentoo.org/~zlogene/distfiles/app-editors/vim/vim-8.2.0360-gentoo-patches.tar.xz"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
fi
DESCRIPTION="GUI version of the Vim text editor"

@ -15,7 +15,7 @@ if [[ ${PV} == 9999* ]] ; then
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
https://dev.gentoo.org/~zlogene/distfiles/app-editors/vim/vim-8.2.0360-gentoo-patches.tar.xz"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}"/vim-${PV}

@ -16,7 +16,7 @@ if [[ ${PV} == 9999* ]] ; then
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~zlogene/distfiles/app-editors/vim/vim-8.2.0360-gentoo-patches.tar.xz"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Vim, an improved vi-style text editor"

Binary file not shown.

@ -1,2 +1,3 @@
DIST qemu-6.0.0.tar.xz 107333232 BLAKE2B 7746329d3e13782b7c346ce4052cc517cfc65cd9b2d514d199e4d5b8570ca79566ec04b0c114db2e97c84e68eb551e0d4cdce1b14b91a88fe08d2a5f682c1418 SHA512 ee3ff00aebec4d8891d2ff6dabe4e667e510b2a4fe3f6190aa34673a91ea32dcd2db2e9bf94c2f1bf05aa79788f17cfbbedc6027c0988ea08a92587b79ee05e4
DIST qemu-6.0.1.tar.xz 107084292 BLAKE2B 53f4adc1a4ba99aaf03659db499d557c57d0c2559955980591594bf0ed06aaf485f0192d7f8f68338b97e0d4d0a114e4431bae5e5b3f3fc82aef08616429d8ed SHA512 2e37ae97a56c4de71412ebabe0e0a59908a7ca7d353440e046831319456d4020614f0909af07cb2a8bb23423e84880a89b5aa4e463e95d1ad37a64fbf8021337
DIST qemu-6.1.0.tar.xz 111258808 BLAKE2B 412eecf6d39debd6089b26d3b22e5d25c6c8c30d2eaf31b17c25cc2b3a1b10794a30218dfb151c78801aa295255aa974b297f1fe05b93f14334f203c2af5ccee SHA512 3378ae21c75b77ee6a759827f1fcf7b2a50a0fef07e3b0e89117108022a8d8655fa977e4d65596f4f24f7c735c6594d44b0c6f69732ea4465e88a7406b1d5d3c

@ -0,0 +1,911 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_{7,8,9,10} )
PYTHON_REQ_USE="ncurses,readline"
FIRMWARE_ABI_VERSION="6.0.0-r50"
inherit eutils linux-info toolchain-funcs multilib python-r1
inherit udev fcaps readme.gentoo-r1 pax-utils xdg-utils
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
EGIT_SUBMODULES=(
meson
tests/fp/berkeley-softfloat-3
tests/fp/berkeley-testfloat-3
ui/keycodemapdb
)
inherit git-r3
SRC_URI=""
else
SRC_URI="https://download.qemu.org/${P}.tar.xz"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug +doc
+fdt fuse glusterfs gnutls gtk infiniband iscsi io-uring
jack jemalloc +jpeg kernel_linux
kernel_FreeBSD lzo multipath
ncurses nfs nls numa opengl +oss +pin-upstream-blobs
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+slirp
smartcard snappy spice ssh static static-user systemtap test udev usb
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
xfs zstd"
COMMON_TARGETS="
aarch64
alpha
arm
cris
hppa
i386
m68k
microblaze
microblazeel
mips
mips64
mips64el
mipsel
nios2
or1k
ppc
ppc64
riscv32
riscv64
s390x
sh4
sh4eb
sparc
sparc64
x86_64
xtensa
xtensaeb
"
IUSE_SOFTMMU_TARGETS="
${COMMON_TARGETS}
avr
lm32
moxie
rx
tricore
unicore32
"
IUSE_USER_TARGETS="
${COMMON_TARGETS}
aarch64_be
armeb
hexagon
mipsn32
mipsn32el
ppc64abi32
ppc64le
sparc32plus
"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
RESTRICT="!test? ( test )"
# Allow no targets to be built so that people can get a tools-only build.
# Block USE flag configurations known to not work.
REQUIRED_USE="${PYTHON_REQUIRED_USE}
qemu_softmmu_targets_arm? ( fdt )
qemu_softmmu_targets_microblaze? ( fdt )
qemu_softmmu_targets_mips64el? ( fdt )
qemu_softmmu_targets_ppc64? ( fdt )
qemu_softmmu_targets_ppc? ( fdt )
qemu_softmmu_targets_riscv32? ( fdt )
qemu_softmmu_targets_riscv64? ( fdt )
sdl-image? ( sdl )
static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy !udev )
static-user? ( !plugins )
vhost-user-fs? ( caps seccomp )
virgl? ( opengl )
virtfs? ( caps xattr )
vte? ( gtk )
multipath? ( udev )
plugins? ( !static !static-user )
"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# and user/softmmu targets (qemu-*, qemu-system-*).
#
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
#
# The attr lib isn't always linked in (although the USE flag is always
# respected). This is because qemu supports using the C library's API
# when available rather than always using the external library.
ALL_DEPEND="
>=dev-libs/glib-2.0[static-libs(+)]
sys-libs/zlib[static-libs(+)]
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
xattr? ( sys-apps/attr[static-libs(+)] )"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
dev-libs/libxml2[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
app-accessibility/brltty[static-libs(+)]
)
aio? ( dev-libs/libaio[static-libs(+)] )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bzip2? ( app-arch/bzip2[static-libs(+)] )
capstone? ( dev-libs/capstone:= )
caps? ( sys-libs/libcap-ng[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
gnutls? (
dev-libs/nettle:=[static-libs(+)]
>=net-libs/gnutls-3.0:=[static-libs(+)]
)
gtk? (
x11-libs/gtk+:3
vte? ( x11-libs/vte:2.91 )
)
infiniband? (
sys-fabric/libibumad:=[static-libs(+)]
sys-fabric/libibverbs:=[static-libs(+)]
sys-fabric/librdmacm:=[static-libs(+)]
)
iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc )
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] )
multipath? ( sys-fs/multipath-tools )
ncurses? (
sys-libs/ncurses:=[unicode(+)]
sys-libs/ncurses:=[static-libs(+)]
)
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
numa? ( sys-process/numactl[static-libs(+)] )
opengl? (
virtual/opengl
media-libs/libepoxy[static-libs(+)]
media-libs/mesa[static-libs(+)]
media-libs/mesa[egl,gbm]
)
png? ( media-libs/libpng:0=[static-libs(+)] )
pulseaudio? ( media-sound/pulseaudio )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? (
media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)]
)
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
slirp? ( net-libs/libslirp[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.12.3
>=app-emulation/spice-0.12.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev:= )
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
EDK2_OVMF_VERSION="202105"
SEABIOS_VERSION="1.14.0"
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}[binary]
~sys-firmware/ipxe-1.21.1[binary,qemu]
~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
sys-firmware/ipxe[qemu]
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
sys-firmware/sgabios
)"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
)
!pin-upstream-blobs? (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
)
"
BDEPEND="
$(python_gen_impl_dep)
dev-lang/perl
sys-apps/texinfo
virtual/pkgconfig
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
gtk? ( nls? ( sys-devel/gettext ) )
test? (
dev-libs/glib[utils]
sys-devel/bc
)
"
CDEPEND="
!static? (
${ALL_DEPEND//\[static-libs(+)]}
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
)
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
"
DEPEND="${CDEPEND}
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? (
${ALL_DEPEND}
${SOFTMMU_TOOLS_DEPEND}
)
static-user? ( ${ALL_DEPEND} )"
RDEPEND="${CDEPEND}
acct-group/kvm
selinux? ( sec-policy/selinux-qemu )"
PATCHES=(
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
"${FILESDIR}"/${PN}-5.2.0-strings.patch
"${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
"${FILESDIR}"/${PN}-5.2.0-dce-locks.patch
"${FILESDIR}"/${PN}-6.0.0-make.patch
)
QA_PREBUILT="
usr/share/qemu/hppa-firmware.img
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/u-boot.e500
"
QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-x86_64
usr/bin/qemu-alpha
usr/bin/qemu-arm
usr/bin/qemu-cris
usr/bin/qemu-m68k
usr/bin/qemu-microblaze
usr/bin/qemu-microblazeel
usr/bin/qemu-mips
usr/bin/qemu-mipsel
usr/bin/qemu-or1k
usr/bin/qemu-ppc
usr/bin/qemu-ppc64
usr/bin/qemu-ppc64abi32
usr/bin/qemu-sh4
usr/bin/qemu-sh4eb
usr/bin/qemu-sparc
usr/bin/qemu-sparc64
usr/bin/qemu-armeb
usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32
"
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
kernel module loaded before running kvm. The easiest way to ensure that the
kernel module is loaded is to load it on boot.
For AMD CPUs the module is called 'kvm-amd'.
For Intel CPUs the module is called 'kvm-intel'.
Please review /etc/conf.d/modules for how to load these.
Make sure your user is in the 'kvm' group. Just run
$ gpasswd -a <USER> kvm
then have <USER> re-login.
For brand new installs, the default permissions on /dev/kvm might not let
you access it. You can tell udev to reset ownership/perms:
$ udevadm trigger -c add /dev/kvm
If you want to register binfmt handlers for qemu user targets:
For openrc:
# rc-update add qemu-binfmt
For systemd:
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
elif use kernel_linux; then
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
ERROR_KVM="You must enable KVM in your kernel to continue"
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
ERROR_KVM_AMD+=" your kernel configuration."
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
ERROR_TUN+=" into your kernel or loaded as a module to use the"
ERROR_TUN+=" virtual network device if using -net tap."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
ERROR_VHOST_NET+=" support"
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_AMD"
elif grep -q GenuineIntel /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_INTEL"
fi
fi
use python && CONFIG_CHECK+=" ~DEBUG_FS"
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
# Now do the actual checks setup above
check_extra_config
fi
fi
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
eerror "instances are still pointing to it. Please update your"
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
eerror "and the right system binary (e.g. qemu-system-x86_64)."
die "update your virt configs to not use qemu-kvm"
fi
}
# Sanity check to make sure target lists are kept up-to-date.
check_targets() {
local var=$1 mak=$2
local detected sorted
pushd "${S}"/default-configs/targets/ >/dev/null || die
# Force C locale until glibc is updated. #564936
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "${var}: ${sorted}"
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
die "sync ${var} to the list of targets"
fi
popd >/dev/null
}
src_prepare() {
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
default
# Use correct toolchain to fix cross-compiling
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# Remove bundled copy of libfdt
rm -r dtc || die
}
##
# configures qemu based on the build directory and the build type
# we are using.
#
qemu_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local buildtype=$1
local builddir="${S}/${buildtype}-build"
mkdir "${builddir}"
local conf_opts=(
--prefix=/usr
--sysconfdir=/etc
--bindir=/usr/bin
--libdir=/usr/$(get_libdir)
--datadir=/usr/share
--docdir=/usr/share/doc/${PF}/html
--mandir=/usr/share/man
--localstatedir=/var
--disable-bsd-user
--disable-containers # bug #732972
--disable-guest-agent
--disable-strip
# bug #746752: TCG interpreter has a few limitations:
# - it does not support FPU
# - it's generally slower on non-self-modifying code
# It's advantage is support for host architectures
# where native codegeneration is not implemented.
# Gentoo has qemu keyworded only on targets with
# native code generation available. Avoid the interpreter.
--disable-tcg-interpreter
--disable-werror
# We support gnutls/nettle for crypto operations. It is possible
# to use gcrypt when gnutls/nettle are disabled (but not when they
# are enabled), but it's not really worth the hassle. Disable it
# all the time to avoid automatically detecting it. #568856
--disable-gcrypt
--python="${PYTHON}"
--cc="$(tc-getCC)"
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
$(use_enable debug debug-info)
$(use_enable debug debug-tcg)
$(use_enable doc docs)
$(use_enable nls gettext)
$(use_enable plugins)
$(use_enable xattr attr)
)
# Disable options not used by user targets. This simplifies building
# static user targets (USE=static-user) considerably.
conf_notuser() {
if [[ ${buildtype} == "user" ]] ; then
echo "--disable-${2:-$1}"
else
use_enable "$@"
fi
}
# Enable option only for softmmu build, but not 'user' or 'tools'
conf_softmmu() {
if [[ ${buildtype} == "softmmu" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Enable option only for tools build, but not 'user' or 'softmmu'
conf_tools() {
if [[ ${buildtype} == "tools" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
conf_opts+=(
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_notuser bzip2)
$(conf_notuser capstone)
$(conf_notuser caps cap-ng)
$(conf_notuser curl)
$(conf_notuser fdt)
$(conf_notuser fuse)
$(conf_notuser glusterfs)
$(conf_notuser gnutls)
$(conf_notuser gnutls nettle)
$(conf_notuser gtk)
$(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_notuser jemalloc jemalloc)
$(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm)
$(conf_notuser lzo)
$(conf_notuser multipath mpath)
$(conf_notuser ncurses curses)
$(conf_notuser nfs libnfs)
$(conf_notuser numa)
$(conf_notuser opengl)
$(conf_notuser png vnc-png)
$(conf_notuser rbd)
$(conf_notuser sasl vnc-sasl)
$(conf_notuser sdl)
$(conf_softmmu sdl-image)
$(conf_notuser seccomp)
$(conf_notuser slirp slirp system)
$(conf_notuser smartcard)
$(conf_notuser snappy)
$(conf_notuser spice)
$(conf_notuser ssh libssh)
$(conf_notuser udev libudev)
$(conf_notuser usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser vhost-user-fs)
$(conf_tools vhost-user-fs virtiofsd)
$(conf_notuser virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
$(conf_notuser xfs xfsctl)
# use prebuilt keymaps, bug #759604
--disable-xkbcommon
$(conf_notuser zstd)
)
if [[ ${buildtype} == "user" ]] ; then
conf_opts+=( --disable-libxml2 )
else
conf_opts+=( --enable-libxml2 )
fi
if [[ ! ${buildtype} == "user" ]] ; then
# audio options
local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev jack)
$(usev sdl)
$(usev alsa)
$(usev oss)
)
conf_opts+=(
--audio-drv-list=$(printf "%s," "${audio_opts[@]}")
)
fi
case ${buildtype} in
user)
conf_opts+=(
--enable-linux-user
--disable-system
--disable-blobs
--disable-tools
)
local static_flag="static-user"
;;
softmmu)
conf_opts+=(
--disable-linux-user
--enable-system
--disable-tools
)
local static_flag="static"
;;
tools)
conf_opts+=(
--disable-linux-user
--disable-system
--disable-blobs
--enable-tools
)
local static_flag="static"
;;
esac
local targets="${buildtype}_targets"
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
# Add support for SystemTAP
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
# We always want to attempt to build with PIE support as it results
# in a more secure binary. But it doesn't work with static or if
# the current GCC doesn't have PIE support.
if use ${static_flag}; then
conf_opts+=( --static --disable-pie )
else
tc-enables-pie && conf_opts+=( --enable-pie )
fi
# Meson will not use a cross-file unless cross_prefix is set.
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
# Plumb through equivalent of EXTRA_ECONF to allow experiments
# like bug #747928.
conf_opts+=( ${EXTRA_CONF_QEMU} )
echo "../configure ${conf_opts[*]}"
cd "${builddir}"
../configure "${conf_opts[@]}" || die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
}
src_configure() {
local target
python_setup
softmmu_targets= softmmu_bins=()
user_targets= user_bins=()
for target in ${IUSE_SOFTMMU_TARGETS} ; do
if use "qemu_softmmu_targets_${target}"; then
softmmu_targets+=",${target}-softmmu"
softmmu_bins+=( "qemu-system-${target}" )
fi
done
for target in ${IUSE_USER_TARGETS} ; do
if use "qemu_user_targets_${target}"; then
user_targets+=",${target}-linux-user"
user_bins+=( "qemu-${target}" )
fi
done
softmmu_targets=${softmmu_targets#,}
user_targets=${user_targets#,}
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
[[ -n ${user_targets} ]] && qemu_src_configure "user"
qemu_src_configure "tools"
}
src_compile() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
default
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
default
fi
cd "${S}/tools-build"
default
}
src_test() {
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
pax-mark m */qemu-system-* #515550
emake check
fi
}
qemu_python_install() {
python_domodule "${S}/python/qemu"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
python_doscript "${S}/scripts/qmp/qemu-ga-client"
}
# Generate binfmt support files.
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
generate_initd() {
local out="${T}/qemu-binfmt"
local out_systemd="${T}/qemu.conf"
local d="${T}/binfmt.d"
einfo "Generating qemu binfmt scripts and configuration files"
# Generate the debian fragments first.
mkdir -p "${d}"
"${S}"/scripts/qemu-binfmt-conf.sh \
--debian \
--exportdir "${d}" \
--qemu-path "${EPREFIX}/usr/bin" \
|| die
# Then turn the fragments into a shell script we can source.
sed -E -i \
-e 's:^([^ ]+) (.*)$:\1="\2":' \
"${d}"/* || die
# Generate the init.d script by assembling the fragments from above.
local f qcpu package interpreter magic mask
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
for f in "${d}"/qemu-* ; do
source "${f}"
# Normalize the cpu logic like we do in the init.d for the native cpu.
qcpu=${package#qemu-}
case ${qcpu} in
arm*) qcpu="arm";;
mips*) qcpu="mips";;
ppc*) qcpu="ppc";;
s390*) qcpu="s390";;
sh*) qcpu="sh";;
sparc*) qcpu="sparc";;
esac
# we use 'printf' here to be portable across 'sh'
# implementations: #679168
cat <<EOF >>"${out}"
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
fi
EOF
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
done
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
}
src_install() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets.
generate_initd
doinitd "${T}/qemu-binfmt"
# Install binfmt/qemu.conf.
insinto "/usr/share/qemu/binfmt.d"
doins "${T}/qemu.conf"
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install
# This might not exist if the test failed. #512010
[[ -e check-report.html ]] && dodoc check-report.html
if use kernel_linux; then
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
cd "${S}/tools-build"
emake DESTDIR="${ED}" install
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
pushd "${ED}"/usr/bin >/dev/null
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
popd >/dev/null
# Install config file example for qemu-bridge-helper
insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}"
dodoc MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
# Disallow stripping of prebuilt firmware files.
dostrip -x ${QA_PREBUILT}
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin"
rm "${ED}/usr/share/qemu/bios-256k.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
# PPC/PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
rm "${ED}/usr/share/qemu/sgabios.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
fi
# Remove iPXE since we're using the iPXE packaged one
rm "${ED}"/usr/share/qemu/pxe-*.rom
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi
fi
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
xdg_icon_cache_update
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
ewarn " $(best_version sys-firmware/edk2-ovmf)"
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/seabios)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
echo " $(best_version sys-firmware/edk2-ovmf)"
if has_version 'sys-firmware/edk2-ovmf[binary]'; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/seabios)"
if has_version 'sys-firmware/seabios[binary]'; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/sgabios)"
}
pkg_postrm() {
xdg_icon_cache_update
}

Binary file not shown.

@ -13,7 +13,7 @@ if [[ ${PV} == "9999" ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/ReFirmLabs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~x64-macos"
KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~x86 ~x64-macos"
fi
DESCRIPTION="A tool for identifying files embedded inside firmware images"

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://github.com/vaeth/eix/releases/download/v${PV}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug doc nls sqlite"
DEPEND="

Binary file not shown.

@ -9,7 +9,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/tpope/vim-fugitive.git"
else
SRC_URI="https://github.com/tpope/vim-fugitive/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 ~x86 ~ppc-macos ~x64-macos"
KEYWORDS="amd64 x86 ~ppc-macos ~x64-macos"
S="${WORKDIR}/vim-${P}"
fi

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -16,7 +16,7 @@ IUSE="+openmp test"
RESTRICT="!test? ( test )"
DEPEND="
sys-apps/hwloc
sys-apps/hwloc:=
"
RDEPEND="${DEPEND}"
BDEPEND=""

@ -15,7 +15,7 @@ KEYWORDS="~amd64 -x86"
IUSE="+openmp test"
RESTRICT="!test? ( test )"
DEPEND="sys-apps/hwloc"
DEPEND="sys-apps/hwloc:="
RDEPEND="${DEPEND}"
BDEPEND=""

@ -1 +1,2 @@
DIST tbb-2020.3.tar.gz 2639788 BLAKE2B 3e92bccdc8179fc049379ccbb8ad7f615623177abc61d813b1a601020c345137bfd7d4c4600cf5b0d587e5ebef677635c3c8124d06b05fdd3325128ed8c9f84a SHA512 04c4b5501418792827190691d03d20d4dc1fd3cbbcf459a4d40c5c2281d964e658f31f133ad3907b78e17ed04f4ff16728ed89487ed0ce2cb239f23feb34bd87
DIST tbb-2021.4.0.tar.gz 2452533 BLAKE2B a635c6efa1894c33e2f75c1aa03b6c0f4a86ebef3b58fa42bd25b53d661ed7a9d21f49f121dd3679735f219fbfc35604600bcc72ba60d3602e6de77b0d62e37b SHA512 96da2bc351fd64dfa854f8e6cabc1c4e53af3d55760e99d6f83ad53779c727af333d13d6be0828ed70371cf796498d2063e9dd0e4b2f6451623bb5d28ccbf20b

@ -0,0 +1,247 @@
From 6feeba8035ea2bdf652d473a35730b19427752db Mon Sep 17 00:00:00 2001
From: Ivan Kochin <kochin.ivan@intel.com>
Date: Wed, 27 Oct 2021 17:23:32 +0300
Subject: [PATCH] Use native CMake way to detect the IPO support (#608)
* Use native CMake way to detect the IPO support
Signed-off-by: Kochin Ivan <kochin.ivan@intel.com>
---
CMakeLists.txt | 17 +++++++++++++++++
cmake/README.md | 1 +
cmake/compilers/Clang.cmake | 8 ++------
cmake/compilers/GNU.cmake | 8 +++-----
cmake/compilers/MSVC.cmake | 1 +
cmake/utils.cmake | 13 +++++++++++++
src/tbb/CMakeLists.txt | 5 ++---
src/tbbbind/CMakeLists.txt | 6 +++---
src/tbbmalloc/CMakeLists.txt | 5 ++---
9 files changed, 44 insertions(+), 20 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 13b1dbc2c..4dbdadb97 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -103,6 +103,7 @@ option(TBBMALLOC_BUILD "Enable tbbmalloc build" ON)
option(TBB_CPF "Enable preview features of the library" OFF)
option(TBB_FIND_PACKAGE "Enable search for external oneTBB using find_package instead of build from sources" OFF)
option(TBB_DISABLE_HWLOC_AUTOMATIC_SEARCH "Disable HWLOC automatic search by pkg-config tool" OFF)
+option(TBB_ENABLE_IPO "Enable Interprocedural Optimization (IPO) during the compilation" ON)
if (NOT DEFINED BUILD_SHARED_LIBS)
set(BUILD_SHARED_LIBS ON)
@@ -181,6 +182,22 @@ foreach(FILE_WITH_EXTRA_TARGETS ${FILES_WITH_EXTRA_TARGETS})
include(${FILE_WITH_EXTRA_TARGETS})
endforeach()
+# - Enabling LTO on Android causes the NDK bug.
+# NDK throws the warning: "argument unused during compilation: '-Wa,--noexecstack'"
+# - For some reason GCC does not instrument code with Thread Sanitizer when lto is enabled and C linker is used.
+if (TBB_ENABLE_IPO AND BUILD_SHARED_LIBS AND NOT ANDROID_PLATFORM AND NOT TBB_SANITIZE MATCHES "thread")
+ if (NOT CMAKE_VERSION VERSION_LESS 3.9)
+ cmake_policy(SET CMP0069 NEW)
+ include(CheckIPOSupported)
+ check_ipo_supported(RESULT TBB_IPO_PROPERTY)
+ else()
+ set(TBB_IPO_FLAGS TRUE)
+ endif()
+ if (TBB_IPO_PROPERTY OR TBB_IPO_FLAGS)
+ message(STATUS "IPO enabled")
+ endif()
+endif()
+
set(TBB_COMPILER_SETTINGS_FILE ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compilers/${CMAKE_CXX_COMPILER_ID}.cmake)
if (EXISTS ${TBB_COMPILER_SETTINGS_FILE})
include(${TBB_COMPILER_SETTINGS_FILE})
diff --git a/cmake/README.md b/cmake/README.md
index ec56e423c..ed1631de3 100644
--- a/cmake/README.md
+++ b/cmake/README.md
@@ -16,6 +16,7 @@ TBB_CPF:BOOL - Enable preview features of the library (OFF by default)
TBB_INSTALL_VARS:BOOL - Enable auto-generated vars installation(packages generated by `cpack` and `make install` will also include the vars script)(OFF by default)
TBB_VALGRIND_MEMCHECK:BOOL - Enable scan for memory leaks using Valgrind (OFF by default)
TBB_DISABLE_HWLOC_AUTOMATIC_SEARCH - Disable HWLOC automatic search by pkg-config tool (OFF by default)
+TBB_ENABLE_IPO - Enable Interprocedural Optimization (IPO) during the compilation (ON by default)
```
## Configure, build and test
diff --git a/cmake/compilers/Clang.cmake b/cmake/compilers/Clang.cmake
index 183341fcc..69aa51932 100644
--- a/cmake/compilers/Clang.cmake
+++ b/cmake/compilers/Clang.cmake
@@ -58,12 +58,8 @@ if (MINGW)
list(APPEND TBB_COMMON_COMPILE_FLAGS -U__STRICT_ANSI__)
endif()
-# Enabling LTO on Android causes the NDK bug.
-# NDK throws the warning: "argument unused during compilation: '-Wa,--noexecstack'"
-if (NOT ANDROID_PLATFORM AND BUILD_SHARED_LIBS)
- set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
- set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
-endif()
+set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
# TBB malloc settings
set(TBBMALLOC_LIB_COMPILE_FLAGS -fno-rtti -fno-exceptions)
diff --git a/cmake/compilers/GNU.cmake b/cmake/compilers/GNU.cmake
index fa14c869e..a9cfa8927 100644
--- a/cmake/compilers/GNU.cmake
+++ b/cmake/compilers/GNU.cmake
@@ -63,11 +63,9 @@ if (MINGW)
list(APPEND TBB_COMMON_COMPILE_FLAGS -U__STRICT_ANSI__)
endif()
-# For some reason GCC does not instrument code with Thread Sanitizer when lto is enabled and C linker is used.
-if (NOT TBB_SANITIZE MATCHES "thread")
- set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
- set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
-endif()
+set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+
# TBB malloc settings
set(TBBMALLOC_LIB_COMPILE_FLAGS -fno-rtti -fno-exceptions)
diff --git a/cmake/compilers/MSVC.cmake b/cmake/compilers/MSVC.cmake
index 3447418cc..5767235a0 100644
--- a/cmake/compilers/MSVC.cmake
+++ b/cmake/compilers/MSVC.cmake
@@ -77,6 +77,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)")
endif()
set(TBB_OPENMP_NO_LINK_FLAG TRUE)
set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+ set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
else()
set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:/GL>)
set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-LTCG> $<$<NOT:$<CONFIG:Debug>>:-INCREMENTAL:NO>)
diff --git a/cmake/utils.cmake b/cmake/utils.cmake
index 06d3a9aee..f74abfcf9 100644
--- a/cmake/utils.cmake
+++ b/cmake/utils.cmake
@@ -44,3 +44,16 @@ macro(tbb_install_target target)
COMPONENT devel)
endif()
endmacro()
+
+macro(tbb_handle_ipo target)
+ if (TBB_IPO_PROPERTY)
+ set_target_properties(${target} PROPERTIES INTERPROCEDURAL_OPTIMIZATION TRUE)
+ elseif (TBB_IPO_FLAGS)
+ target_compile_options(${target} PRIVATE ${TBB_IPO_COMPILE_FLAGS})
+ if (COMMAND target_link_options)
+ target_link_options(${target} PRIVATE ${TBB_IPO_LINK_FLAGS})
+ else()
+ target_link_libraries(${target} PRIVATE ${TBB_IPO_LINK_FLAGS})
+ endif()
+ endif()
+endmacro()
diff --git a/src/tbb/CMakeLists.txt b/src/tbb/CMakeLists.txt
index 80fdcdcde..021392d89 100644
--- a/src/tbb/CMakeLists.txt
+++ b/src/tbb/CMakeLists.txt
@@ -79,7 +79,6 @@ target_compile_options(tbb
${TBB_WARNING_SUPPRESS}
${TBB_LIB_COMPILE_FLAGS}
${TBB_COMMON_COMPILE_FLAGS}
- ${TBB_IPO_COMPILE_FLAGS}
)
# Avoid use of target_link_libraries here as it changes /DEF option to \DEF on Windows.
@@ -89,6 +88,8 @@ set_target_properties(tbb PROPERTIES
SOVERSION ${TBB_BINARY_VERSION}
)
+tbb_handle_ipo(tbb)
+
if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
set_target_properties(tbb PROPERTIES
LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbb.def
@@ -103,14 +104,12 @@ if (COMMAND target_link_options)
PRIVATE
${TBB_LIB_LINK_FLAGS}
${TBB_COMMON_LINK_FLAGS}
- ${TBB_IPO_LINK_FLAGS}
)
else()
target_link_libraries(tbb
PRIVATE
${TBB_LIB_LINK_FLAGS}
${TBB_COMMON_LINK_FLAGS}
- ${TBB_IPO_LINK_FLAGS}
)
endif()
diff --git a/src/tbbbind/CMakeLists.txt b/src/tbbbind/CMakeLists.txt
index 99b7ccaac..3233ec718 100644
--- a/src/tbbbind/CMakeLists.txt
+++ b/src/tbbbind/CMakeLists.txt
@@ -46,7 +46,6 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
${TBB_WARNING_LEVEL}
${TBB_LIB_COMPILE_FLAGS}
${TBB_COMMON_COMPILE_FLAGS}
- ${TBB_IPO_COMPILE_FLAGS}
)
# Avoid use of target_link_libraries here as it changes /DEF option to \DEF on Windows.
@@ -55,6 +54,9 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
VERSION ${TBBBIND_BINARY_VERSION}.${TBB_BINARY_MINOR_VERSION}
SOVERSION ${TBBBIND_BINARY_VERSION}
)
+
+ tbb_handle_ipo(${TBBBIND_NAME})
+
if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
set_target_properties(${TBBBIND_NAME} PROPERTIES
LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbbbind.def
@@ -69,14 +71,12 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
PRIVATE
${TBB_LIB_LINK_FLAGS}
${TBB_COMMON_LINK_FLAGS}
- ${TBB_IPO_LINK_FLAGS}
)
else()
target_link_libraries(${TBBBIND_NAME}
PRIVATE
${TBB_LIB_LINK_FLAGS}
${TBB_COMMON_LINK_FLAGS}
- ${TBB_IPO_LINK_FLAGS}
)
endif()
diff --git a/src/tbbmalloc/CMakeLists.txt b/src/tbbmalloc/CMakeLists.txt
index f77bc8f10..5a851851f 100644
--- a/src/tbbmalloc/CMakeLists.txt
+++ b/src/tbbmalloc/CMakeLists.txt
@@ -59,7 +59,6 @@ target_compile_options(tbbmalloc
${TBB_LIB_COMPILE_FLAGS}
${TBBMALLOC_LIB_COMPILE_FLAGS}
${TBB_COMMON_COMPILE_FLAGS}
- ${TBB_IPO_COMPILE_FLAGS}
)
enable_language(C)
@@ -72,6 +71,8 @@ set_target_properties(tbbmalloc PROPERTIES
LINKER_LANGUAGE C
)
+tbb_handle_ipo(tbbmalloc)
+
if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
set_target_properties(tbbmalloc PROPERTIES
LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbbmalloc.def
@@ -88,14 +89,12 @@ if (COMMAND target_link_options)
PRIVATE
${TBB_LIB_LINK_FLAGS}
${TBB_COMMON_LINK_FLAGS}
- ${TBB_IPO_LINK_FLAGS}
)
else()
target_link_libraries(tbbmalloc
PRIVATE
${TBB_LIB_LINK_FLAGS}
${TBB_COMMON_LINK_FLAGS}
- ${TBB_IPO_LINK_FLAGS}
)
endif()

@ -0,0 +1,37 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib flag-o-matic toolchain-funcs
DESCRIPTION="High level abstract threading library"
HOMEPAGE="https://www.threadingbuildingblocks.org"
SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/oneTBB-${PV}"
LICENSE="Apache-2.0"
# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
SLOT="0/12-2-3"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="sys-apps/hwloc:="
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${P}-lto.patch
)
src_configure() {
local mycmakeargs=(
-DTBB_TEST=$(usex test)
-DTBB_ENABLE_IPO=OFF
-DTBB_STRICT=OFF
)
cmake-multilib_src_configure
}

Binary file not shown.

@ -1,56 +0,0 @@
diff --git a/src/mongo/SConscript b/src/mongo/SConscript
index 8acf5469..737c31d4 100644
--- a/src/mongo/SConscript
+++ b/src/mongo/SConscript
@@ -834,43 +834,6 @@ for full_dir, archive_dir in list(env["ARCHIVE_ADDITION_DIR_MAP"].items()):
for target in env["DIST_BINARIES"]:
installBinary(env, "db/modules/" + target)
-compass_type = 'compass'
-
-compass_script = "install_compass.in"
-if env.TargetOSIs('windows'):
- compass_script = "Install-Compass.ps1.in"
-
-compass_python_interpreter = '/usr/bin/env python2'
-if env.TargetOSIs('darwin'):
- compass_python_interpreter = '/usr/bin/env python'
-
-compass_installer = env.Substfile(
- target="$BUILD_DIR/mongo/installer/compass/" + compass_script[:-3],
- source='installer/compass/' + compass_script,
- SUBST_DICT=[
- ('@compass_type@', compass_type),
- ('@python_interpreter@', compass_python_interpreter),
- ],
-)
-
-distBinaries.append(compass_installer)
-
-if not hygienic:
- compass_script_installer = env.Install("$DESTDIR/bin", compass_installer)
-else:
- compass_script_installer = env.AutoInstall(
- target='$PREFIX_BINDIR',
- source=[
- compass_installer,
- ],
- AIB_COMPONENT='dist',
- AIB_ROLE='runtime',
- )
-
-if env.TargetOSIs('posix'):
- env.AddPostAction( compass_script_installer, 'chmod 755 $TARGET' )
- env.AddPostAction( compass_installer, 'chmod 755 $TARGET' )
-
if not hygienic:
server_archive = env.Command(
target='#/${SERVER_ARCHIVE}',
@@ -884,7 +847,6 @@ if not hygienic:
'--transform $BUILD_DIR/mongo/stripped/db/modules/enterprise=$SERVER_DIST_BASENAME/bin',
'--transform $BUILD_DIR/mongo/stripped=$SERVER_DIST_BASENAME/bin',
'--transform $BUILD_DIR/mongo=$SERVER_DIST_BASENAME/bin',
- '--transform src/mongo/installer/compass=$SERVER_DIST_BASENAME/bin',
'${TEMPFILE(SOURCES[1:])}'
],
),

@ -1,12 +0,0 @@
diff --git a/src/third_party/unwind/SConscript b/src/third_party/unwind/SConscript
index ed947c8e..7308956f 100644
--- a/src/third_party/unwind/SConscript
+++ b/src/third_party/unwind/SConscript
@@ -90,6 +90,7 @@ if env['TARGET_ARCH'] == 'aarch64':
env.Append(
CCFLAGS=[
+ '-fcommon',
'-fexceptions',
'-Wno-unused-result',
'-Wno-unused-value',

Binary file not shown.

@ -46,7 +46,7 @@ RDEPEND="
ois? ( dev-games/ois )
threads? (
poco? ( dev-libs/poco )
tbb? ( dev-cpp/tbb )
tbb? ( dev-cpp/tbb:= )
)
tools? ( dev-libs/tinyxml[stl] )
zip? ( sys-libs/zlib dev-libs/zziplib )"

Binary file not shown.

@ -1,4 +1,5 @@
DIST abs-2.5.0.tar.gz 8857271 BLAKE2B ee3ce3c77f9e1dd6b9ec6e15738e71100f4105a6c900c1308ef62487f88e6f791e5248c4b06d159fa097b3ea53b4de8a77a40ed12d9c8b0e140c33f1b1d70b23 SHA512 574e54dc6ee0e66d7d4292aa9f41b4d59a8a61d742da6c004eb7e2b97646853d08dd7db3877a95f9a0c983150bb37a9486365489af6498fe4a63b75961eb288c
DIST abs-2.5.1.tar.gz 8911811 BLAKE2B 64a6db5acf19bad720d9ed6d40e4ecd8a9cc6c023dc2fedc80361ba07e041da803b9b5bf0a20250728f8b4714f4e3ed18ca8f8b6d18947b30211e206a78cae95 SHA512 33c2a83927096373a37559b7e289cdff3e06307018ff45f8919b470c1e8ed74582834f3a10ac02dac11e890b6d845512569d42edf3b71a78ca09dd8d9fb7a329
DIST github.com%2Fc-bata%2Fgo-prompt%2F@v%2Fv0.2.4-0.20190826134812-0f95e1d1de2e.mod 340 BLAKE2B 650749404beaa133f46d4c68c1b07e32165aa7812e6f305051593343b09015bf4b1d0e3611ac036405d6385cb3ea1e6f744fb43d62211eaff0eb2ea1b79bfd23 SHA512 72a9185136d1cf700e66e4d797735736cdb657616e4d06bb1215e0a31cc2450e54ec371d18689321260a920d252a5989548ee877519506da59aef45ed8f780ba
DIST github.com%2Fc-bata%2Fgo-prompt%2F@v%2Fv0.2.4-0.20190826134812-0f95e1d1de2e.zip 67370 BLAKE2B 558e9204a410da1e3084baaaed6dbcff71e4276f59351baea247b472de5740343e4be8f1a78ee477c5b7ec067fa85e90ddc2a7a01e1ed747e552e20a22ea91d2 SHA512 e1b4ddd39ea717b9e2913542de9b8cdd6e6fd63accc1cf2917256e21ed196c0f0c381510f342aff94a716fb5fbd2581dcb914180a580b2f3c70cbf3d8f902062
DIST github.com%2Fiancoleman%2Fstrcase%2F@v%2Fv0.0.0-20191112232945-16388991a334.mod 37 BLAKE2B b89a81bf16b5ba5e2f814368631aa94f29971205a44decaac68cded4238cbd22a212c27cc98de33cdf3536c3988f0d37b4834be2c079fecdb660a00b9ec1091b SHA512 2ecd44b656204f60c1eeb710bb443b8a860b97365fefa295d2ceb07f08199f17f53444f76a6202d26efb1226c30a093ad2eee65ba6e0ab910090998ca0ca9792
@ -6,6 +7,7 @@ DIST github.com%2Fiancoleman%2Fstrcase%2F@v%2Fv0.0.0-20191112232945-16388991a334
DIST github.com%2Fiancoleman%2Fstrcase%2F@v%2Fv0.1.0.mod 37 BLAKE2B b89a81bf16b5ba5e2f814368631aa94f29971205a44decaac68cded4238cbd22a212c27cc98de33cdf3536c3988f0d37b4834be2c079fecdb660a00b9ec1091b SHA512 2ecd44b656204f60c1eeb710bb443b8a860b97365fefa295d2ceb07f08199f17f53444f76a6202d26efb1226c30a093ad2eee65ba6e0ab910090998ca0ca9792
DIST github.com%2Fiancoleman%2Fstrcase%2F@v%2Fv0.1.0.zip 8897 BLAKE2B 4847c9758faf05a96572eaa488c0da4916aad67219ce1798c1204ec13fdc1269807ea959eaf43b7f4d17eaee355cbea3ba54487a3473d8d3ec72a1ddd1cc2a0a SHA512 57465a7f3ea929ca0115b5f6fd857292f4fa6a11f5cdbc40815d01e8ac7735016f1c7ff26115164a4431e03d5ad8353a1674238f57f18a5e58d601eb017e05ab
DIST github.com%2Fjteeuwen%2Fgo-bindata%2F@v%2Fv3.0.7+incompatible.mod 38 BLAKE2B a13b18980c75d555eb0eb51e506dac6148a3279a34d7a4defdc78ee4beb14b9f50566869c44b07b6f3b7afbbf5ec767510e52af8f307cb26ad8fc4b2e38c802c SHA512 ba3b02c44dd395548a55e459e053e6d95b38eb1e92e4926942411e6738df01128b42c23b0dfce2454765bc2cc33397e99795e533711973b92aa5b59dc2fc3b97
DIST github.com%2Fjteeuwen%2Fgo-bindata%2F@v%2Fv3.0.7+incompatible.zip 26778 BLAKE2B cfe2d6ff41cb33b3745a1f45b986cca88036543b1a660047ae88a313f4222459171b39141d797ae15b92af2b64a150d33aeeb6f6a06174a3a268a0334c34606a SHA512 8d115a09a50969b2c627578e4fd5e88861c5d7151da3beff8d7955476e603a51a82be164bb3879fba1ab1f366fe9088512e1074be13e7c63370f689aa7cc61e7
DIST github.com%2Fmattn%2Fgo-colorable%2F@v%2Fv0.0.9.mod 37 BLAKE2B 6bd675a05c0bb6f9dc12d09203d13de115801888cf8c02cb5d609f72d214b7e7ebf13a72ddfa2eb9172e9c2ba1f3e5a040f089a86ce9fe873d49288d5f7dc5a7 SHA512 3cc3ae26618b96a0fc076b18bab6f8f0f6a1064d6a9913c1015a9867fd3571d17f5d2867d72cec008e9bc7005883a596edb21424084f82ad5b572443de90f976
DIST github.com%2Fmattn%2Fgo-colorable%2F@v%2Fv0.1.4.mod 80 BLAKE2B 486156a648d66786de2a05b45b054ffbc6ccbb45ffe98230d3b3126ff533fd546af1b348fdcf67b1b3ae9310918869355fc39390a4f67b99cd7a1bbd1c6cf891 SHA512 f69ecc2e8097c17a9c0002181451d56a8a7496f62e87f437802420e9af27c5f80da2be189597759f2a5ee2656dca8c1cf91a5374b8e46919f7a6e0f9579d2526
DIST github.com%2Fmattn%2Fgo-colorable%2F@v%2Fv0.1.6.mod 160 BLAKE2B 10c23e5a0edbdd398d6913ee8e4665e15ab0c30c6aad4d8e113533d421058858a4c23898f8f360b72cc39922bf9b4e7c6c656faab76ec4616e05285932bfef03 SHA512 60840c731813699f19e9a23f3cc0e890c0b0e8228510b0021aa2696f35f3aefa1fc06eb396c5035214ac185816d5757896da1bfaf59e2dd24ca750f5b792e6c5

@ -0,0 +1,85 @@
# Copyright 2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module
DESCRIPTION="The ABS programing language"
HOMEPAGE="https://github.com/abs-lang/abs https://www.abs-lang.org/"
EGO_SUM=(
"github.com/c-bata/go-prompt v0.2.4-0.20190826134812-0f95e1d1de2e"
"github.com/c-bata/go-prompt v0.2.4-0.20190826134812-0f95e1d1de2e/go.mod"
"github.com/iancoleman/strcase v0.0.0-20191112232945-16388991a334"
"github.com/iancoleman/strcase v0.0.0-20191112232945-16388991a334/go.mod"
"github.com/iancoleman/strcase v0.1.0"
"github.com/iancoleman/strcase v0.1.0/go.mod"
"github.com/jteeuwen/go-bindata v3.0.7+incompatible"
"github.com/jteeuwen/go-bindata v3.0.7+incompatible/go.mod"
"github.com/mattn/go-colorable v0.0.9/go.mod"
"github.com/mattn/go-colorable v0.1.4/go.mod"
"github.com/mattn/go-colorable v0.1.6"
"github.com/mattn/go-colorable v0.1.6/go.mod"
"github.com/mattn/go-colorable v0.1.7"
"github.com/mattn/go-colorable v0.1.7/go.mod"
"github.com/mattn/go-isatty v0.0.3/go.mod"
"github.com/mattn/go-isatty v0.0.8/go.mod"
"github.com/mattn/go-isatty v0.0.10/go.mod"
"github.com/mattn/go-isatty v0.0.12"
"github.com/mattn/go-isatty v0.0.12/go.mod"
"github.com/mattn/go-runewidth v0.0.3/go.mod"
"github.com/mattn/go-runewidth v0.0.6/go.mod"
"github.com/mattn/go-runewidth v0.0.9"
"github.com/mattn/go-runewidth v0.0.9/go.mod"
"github.com/mattn/go-tty v0.0.0-20180219170247-931426f7535a/go.mod"
"github.com/mattn/go-tty v0.0.3"
"github.com/mattn/go-tty v0.0.3/go.mod"
"github.com/pkg/term v0.0.0-20180423043932-cda20d4ac917/go.mod"
"github.com/pkg/term v0.0.0-20190109203006-aa71e9d9e942"
"github.com/pkg/term v0.0.0-20190109203006-aa71e9d9e942/go.mod"
"github.com/pkg/term v0.0.0-20200520122047-c3ffed290a03"
"github.com/pkg/term v0.0.0-20200520122047-c3ffed290a03/go.mod"
"golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod"
"golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59"
"golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod"
"golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a"
"golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod"
"golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod"
"golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod"
"golang.org/x/sys v0.0.0-20180620133508-ad87a3a340fa/go.mod"
"golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod"
"golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod"
"golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod"
"golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod"
"golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod"
"golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod"
"golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod"
"golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd"
"golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod"
"golang.org/x/sys v0.0.0-20200824131525-c12d262b63d8"
"golang.org/x/sys v0.0.0-20200824131525-c12d262b63d8/go.mod"
"golang.org/x/text v0.3.0/go.mod"
)
go-module_set_globals
SRC_URI="https://github.com/abs-lang/abs/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
${EGO_SUM_SRC_URI}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
RESTRICT+=" test"
src_prepare() {
sed -e "s:^var Version = \"dev\"\$:var Version = \"${PV}\":" -i main.go || die
default
}
src_compile() {
CGO_ENABLED=0 emake build_simple || die
}
src_install() {
dobin builds/abs
dodoc README.md
}

@ -1,2 +1 @@
DIST bff-1.0.5.tar.gz 4833 BLAKE2B 9e3b44da9cd001552119e25764b171c86027755583f79a13b1d1035ecbab134df0aa31234c1479370599dd56a76a7f1c67eff61d2c1189430bab6a9a22f629d8 SHA512 78e481f6f371421ce6f046041fe6d48be2e11000ddda82f60244c0100665469c4aff4f151d297bb533140d723f68d5a3844e0c29a256b022ac93cafbd2abe9fd
DIST bff-1.0.7.tar.gz 5121 BLAKE2B 581cac5c20742811d9c848d59833256c2c72f08f256ad0b061723b7bb57efa64b0873ae8011323f53dbecd21e61d8d1610b393a4f0a3695508ee4b607fa541db SHA512 8ab43671ea02d59db291b338f4323aba2879318539efbd249883ef241295a12f3d3e55bcb4b0ad6e3f886a044eec0bfcecf526b70c81099afdf89320babfee6d

@ -1,36 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs
DESCRIPTION="A brainfuck interpreter"
HOMEPAGE="https://github.com/apankrat/bff"
SRC_URI="https://github.com/apankrat/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm ~ia64 ~m68k ppc ppc64 ~s390 x86"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND=""
RDEPEND=""
src_compile() {
# Makefile is not nice
emake -f /dev/null CC="$(tc-getCC)" bff
}
src_test() {
ebegin "Running mandelbrot test"
./bff samples/mandelbrot.b > mandelbrot.out
eend $? || die
md5sum -c <<< '5024283fa65866ddd347b877798e84d8 mandelbrot.out' \
&& cat mandelbrot.out \
|| die "mandelbrot did not output correctly"
}
src_install() {
dobin bff
}

@ -2,6 +2,8 @@ DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381
DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8
DIST Python-3.10.0.tar.xz 18726176 BLAKE2B 77143edf733cadf7e52327a58782f0617b1dd0d132cf58e0f26d37a454bb97f82e7931118a6a71f22779d9b6ec4efca974c43c19a6338b4b24a9fd616b60cc89 SHA512 82b2729afc7d72a80882f199970667dce7d971a2e5ecfe6cf84f7b68612ab2caf6ed6d7a8cb81f24ea85cb0816464bb2e8b2e6884eda62fa40742edc674193bd
DIST Python-3.10.0.tar.xz.asc 833 BLAKE2B 295df19932ea076bb1a50acb38782055ff34fb235df0380fa361727eedb3ca68aeca2a31419de5b05ce128c2e21ad04605c226e7a61d508a17607f615e46e570 SHA512 67236e02bc49da1423717cb54216b745f613ba2fc4b372a4aa15a36ab15fe69d9b9087070382957d480df7576d13056caedcd979fb56531799a1190b822f673d
DIST Python-3.11.0a1.tar.xz 18678136 BLAKE2B 1a28fdc2bbbb60896240b4a7bc361f060205dae51fa2d0e4f981752d81c14f1a28ebef09960ea82d5158e874d0e335ee45f69d968f7433ce4c0d02978ad39c95 SHA512 3705fa3d05fccd491fba981c9495d5b36793f284a39b267a5ff7b25c7f08de84bbd5afe200296cedd1cc55f495fd3efc55d7b34910e1be1a785ce5772b857d7a
DIST Python-3.11.0a1.tar.xz.asc 833 BLAKE2B f5c6064e8b9de17bc22d60b0ae52a9aa887823a9a52fc8fff1e9d29e05c4c1392841a7c492fe69b426be4ee945f0cbfed7ec0d31604e488458d6c61583a051dd SHA512 b9d1542f215b5633835d21de0311d324c62e53b7afc525c00d26c863740fd01cc8c18a6ecb0a8ce8d38bf543cebdb64f0930f9201a8968dbbedf58fe9ad4c05c
DIST Python-3.6.14.tar.xz 17218148 BLAKE2B efe655cb907ffa678ca135f88ba9d867e523969ad82dbc09ffb6d8d383824a4b43c525e156a3c35484a526b4b3ea755109e5ef15d17852d44e3351c307fc5e91 SHA512 15b82b7285db97cb27a6fcd57ce9e258fdf8dbdb2f00e22e4331161b8557c8244342546c4143e84c72730759e0276770396b6ca5bb7cf87310cca8e175423006
DIST Python-3.6.14.tar.xz.asc 833 BLAKE2B 81c79dca5728b21b8c2badcaa1242836f1cf13984bb755463cfe9e4fd96a02ebf31f1a9239759a937c6d6a04c18bfc682a82cb0ab2e5a473de153423a7248c9c SHA512 600bf504f2c0d3ce7d1e8e953b4f27a7a7c996b7b9cd70efb876178fa5424130bff5414d5ac7deb8b45103ed417fd40d830613db39750d35a0c967c8fdfea50d
DIST Python-3.6.15.tar.xz 17223796 BLAKE2B c139c6f93ea70ad898d5626dfa964280a14de9676f0d9d55668ad91618b1ba330874cbba8d6526a87e53b585ff34e3bf242613ca3fb17ee60f362a9676306c7d SHA512 f1894d704c91669d94ec83b5631288bf1e0c73ddcf33cea0977575f262eb672caebc8ac00e34e9b99c321c19cc9a71d6081fa957bb8e23cf5bfba50f345145ef
@ -14,6 +16,7 @@ DIST Python-3.9.7.tar.xz 19123232 BLAKE2B 69dfba6974c8c74de1b71977d28cad4d7c2661
DIST Python-3.9.7.tar.xz.asc 833 BLAKE2B 2d9c47e47d9a625e393a8b456dd5b10dd485fc13ca7c236b5fd304c373879bea8ab3c67ff99c3a81350443f6ccba20718466a221a05faada6b82cfe92943fdbf SHA512 7ff9f845f520efab3b4a0e95da3ffe055ee5777a4173a5b2cc1fd2419dc2b4faf30d1e711e372df36e34bc971ecfcde88a7cd815cfe2d8080ccb575a1ae8e101
DIST python-gentoo-patches-2.7.18_p13.tar.xz 33296 BLAKE2B 91b711458aff4f6337ee1b34aff58d7edda6725644a64c9320076a1e04c816729ed163d82333cfe4dfef379a9ad5ef50ba00abdbbfed4503b0f92c8f0b7ca683 SHA512 97f3657a4a95e8492aa710801b974a56e6dd4636e475aea45cbbe76e7ae32d00f07b05769887f05e49cb0df8584ac9499a7ce842bad77f837a7c869f9b769b07
DIST python-gentoo-patches-3.10.0_p1.tar.xz 10068 BLAKE2B 1c9817b449831559f0a0b722c02a5f55d94b3dfde98e5882c1403fe24a4addf7074ab39c09b91cff6fd7ace2e4b6e8ed899d9a0b9ffd6612ce315c4c192bd309 SHA512 39aa41dbf17b6dc5255491c75031a3dae6962b44125e426dbfdce365a6533c5dae9856b1fff8016a189124b7cff72d2665ce99da344c2f9dff005ba685e8c2c4
DIST python-gentoo-patches-3.11.0a1.tar.xz 9468 BLAKE2B 9bbc0c41d366752d2481c19070d71c27f88fd605e35e62f6b86498cb537051e92972f3c3f7b234485fd07e2a6ac4e4d6701e03e7893897531da58fbaaa609e76 SHA512 a06274c8c1d772121ac9570125eea12a4e53bcac030b8f4f3c5c76d68fc475df3f073a4dffe55614ced9cf031c7581e428b1cee67078c63d4f41e0a51e372e41
DIST python-gentoo-patches-3.6.14_p1.tar.xz 16576 BLAKE2B 902a9073e6d3e40cfba105680d9947b64a4bfa1632381bc71afbd2691350dccb36f498bf17ac7dfc8ce331dfc3fb7e3cdd539cea3f5e9db1c49210ad4d124182 SHA512 4aa354f1ca8d9bb3c30b666ef61cac8380741342102aeb9ea77cc06ae62179f595acc1c2e6321e9c2395abbc3fbc649ecc93b80443d139859924524989539992
DIST python-gentoo-patches-3.6.15.tar.xz 15300 BLAKE2B f49fd96f6ad1a1c94fea6b83acd229a81754b86061e243044ead4b9a9d5122a2e43b270b68722c359c084c05a566a3ad70aa46588ab7a005ee560ee118b92b8b SHA512 cc33491a33f3f1d990cf494d53b91b74db761142e8aebe1bd4b128ef10a268ff945e5ba08daad39cee095612a8e52265d6988873ecf9c073377cbbc10735aa39
DIST python-gentoo-patches-3.7.12_p1.tar.xz 19112 BLAKE2B e9964244af3db544dd6e96d85ca4bc24d7131b48eda85df5bafa3fb36474a024cecbbf4b27324e1f35f76ae6a1aed31dd7896e831b79b574b45a4371afcc7e5b SHA512 9ec996c2904f99bd6651ed1b700eabd91f2b82b1e9e0f3d9572243886a9c7139bf8ac2af04169485d3ca6339e1a87044cba203f6f0aee9609d2a1d53c812548d

@ -62,6 +62,7 @@ RDEPEND="app-arch/bzip2:=
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )"
BDEPEND="
virtual/awk
virtual/pkgconfig
verify-sig? ( app-crypt/openpgp-keys-python )
!sys-devel/gcc[libffi(-)]"

@ -0,0 +1,347 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_LIBTOOL="none"
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
python-utils-r1 toolchain-funcs verify-sig
MY_PV=${PV/_alpha/a}
MY_P="Python-${MY_PV%_p*}"
PYVER=$(ver_cut 1-2)
PATCHSET="python-gentoo-patches-${MY_PV}"
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
HOMEPAGE="https://www.python.org/"
SRC_URI="https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
verify-sig? (
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
)"
S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
# run the bootstrap code on your dev box and include the results in the
# patchset. See bug 447752.
RDEPEND="app-arch/bzip2:=
app-arch/xz-utils:=
dev-libs/libffi:=
sys-apps/util-linux:=
>=sys-libs/zlib-1.1.3:=
virtual/libcrypt:=
virtual/libintl
gdbm? ( sys-libs/gdbm:=[berkdb] )
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? ( >=dev-libs/openssl-1.1.1:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=
dev-tcltk/blt:=
dev-tcltk/tix
)
xml? ( >=dev-libs/expat-2.1:= )
!!<sys-apps/sandbox-2.21"
# bluetooth requires headers from bluez
DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )"
# autoconf-archive needed to eautoreconf
BDEPEND="
sys-devel/autoconf-archive
virtual/awk
virtual/pkgconfig
verify-sig? ( app-crypt/openpgp-keys-python )
!sys-devel/gcc[libffi(-)]"
RDEPEND+=" !build? ( app-misc/mime-types )"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
# large file tests involve a 2.5G file being copied (duplicated)
CHECKREQS_DISK_BUILD=5500M
pkg_pretend() {
use test && check-reqs_pkg_pretend
}
pkg_setup() {
use test && check-reqs_pkg_setup
}
src_unpack() {
if use verify-sig; then
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
fi
default
}
src_prepare() {
# Ensure that internal copies of expat, libffi and zlib are not used.
rm -fr Modules/expat || die
rm -fr Modules/_ctypes/libffi* || die
rm -fr Modules/zlib || die
local PATCHES=(
"${WORKDIR}/${PATCHSET}"
)
default
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
# force correct number of jobs
# https://bugs.gentoo.org/737660
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
eautoreconf
}
src_configure() {
local disable
# disable automagic bluetooth headers detection
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
use gdbm || disable+=" gdbm"
use ncurses || disable+=" _curses _curses_panel"
use readline || disable+=" readline"
use sqlite || disable+=" _sqlite3"
use ssl || export PYTHON_DISABLE_SSL="1"
use tk || disable+=" _tkinter"
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
export PYTHON_DISABLE_MODULES="${disable}"
if ! use xml; then
ewarn "You have configured Python without XML support."
ewarn "This is NOT a recommended configuration as you"
ewarn "may face problems parsing any XML documents."
fi
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
fi
if [[ "$(gcc-major-version)" -ge 4 ]]; then
append-flags -fwrapv
fi
filter-flags -malign-double
# https://bugs.gentoo.org/show_bug.cgi?id=50309
if is-flagq -O3; then
is-flagq -fstack-protector-all && replace-flags -O3 -O2
use hardened && replace-flags -O3 -O2
fi
# https://bugs.gentoo.org/700012
if is-flagq -flto || is-flagq '-flto=*'; then
append-cflags $(test-flags-CC -ffat-lto-objects)
fi
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
tc-export CXX
# Fix implicit declarations on cross and prefix builds. Bug #674070.
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
local dbmliborder
if use gdbm; then
dbmliborder+="${dbmliborder:+:}gdbm"
fi
local myeconfargs=(
# glibc-2.30 removes it; since we can't cleanly force-rebuild
# Python on glibc upgrade, remove it proactively to give
# a chance for users rebuilding python before glibc
ac_cv_header_stropts_h=no
--enable-shared
--without-static-libpython
--enable-ipv6
--infodir='${prefix}/share/info'
--mandir='${prefix}/share/man'
--with-computed-gotos
--with-dbmliborder="${dbmliborder}"
--with-libc=
--enable-loadable-sqlite-extensions
--without-ensurepip
--with-system-expat
--with-system-ffi
)
OPT="" econf "${myeconfargs[@]}"
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
eerror "configure has detected that the sem_open function is broken."
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
die "Broken sem_open function (bug 496328)"
fi
}
src_compile() {
# Ensure sed works as expected
# https://bugs.gentoo.org/594768
local -x LC_ALL=C
emake CPPFLAGS= CFLAGS= LDFLAGS=
# Work around bug 329499. See also bug 413751 and 457194.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E python
else
pax-mark m python
fi
}
src_test() {
# Tests will not work when cross compiling.
if tc-is-cross-compiler; then
elog "Disabling tests due to crosscompiling."
return
fi
# Skip failing tests.
local skipped_tests="gdb"
for test in ${skipped_tests}; do
mv "${S}"/Lib/test/test_${test}.py "${T}"
done
# bug 660358
local -x COLUMNS=80
local -x PYTHONDONTWRITEBYTECODE=
# workaround https://bugs.gentoo.org/775416
addwrite /usr/lib/python3.10/site-packages
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
local result=$?
for test in ${skipped_tests}; do
mv "${T}/test_${test}.py" "${S}"/Lib/test
done
elog "The following tests have been skipped:"
for test in ${skipped_tests}; do
elog "test_${test}.py"
done
elog "If you would like to run them, you may:"
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
elog "and run the tests separately."
if [[ ${result} -ne 0 ]]; then
die "emake test failed"
fi
}
src_install() {
local libdir=${ED}/usr/lib/python${PYVER}
emake DESTDIR="${D}" altinstall
sed \
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
-e "s/\(PY_LDFLAGS=\).*/\1/" \
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
# Fix collisions between different slots of Python.
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
# Cheap hack to get version with ABIFLAGS
local abiver=$(cd "${ED}/usr/include"; echo python*)
if [[ ${abiver} != python${PYVER} ]]; then
# Replace python3.X with a symlink to python3.Xm
rm "${ED}/usr/bin/python${PYVER}" || die
dosym "${abiver}" "/usr/bin/python${PYVER}"
# Create python3.X-config symlink
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
# Create python-3.5m.pc symlink
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
fi
# python seems to get rebuilt in src_install (bug 569908)
# Work around it for now.
if has_version dev-libs/libffi[pax-kernel]; then
pax-mark E "${ED}/usr/bin/${abiver}"
else
pax-mark m "${ED}/usr/bin/${abiver}"
fi
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
dodoc Misc/{ACKS,HISTORY,NEWS}
if use examples; then
docinto examples
find Tools -name __pycache__ -exec rm -fr {} + || die
dodoc -r Tools
fi
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
emake --no-print-directory -s -f - 2>/dev/null)
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
sed \
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
-e "s:@PYDOC@:pydoc${PYVER}:" \
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
local -x EPYTHON=python${PYVER}
# if not using a cross-compiler, use the fresh binary
if ! tc-is-cross-compiler; then
local -x PYTHON=./python
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
else
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
fi
echo "EPYTHON='${EPYTHON}'" > epython.py || die
python_domodule epython.py
# python-exec wrapping support
local pymajor=${PYVER%.*}
local scriptdir=${D}$(python_get_scriptdir)
mkdir -p "${scriptdir}" || die
# python and pythonX
ln -s "../../../bin/${abiver}" \
"${scriptdir}/python${pymajor}" || die
ln -s "python${pymajor}" "${scriptdir}/python" || die
# python-config and pythonX-config
# note: we need to create a wrapper rather than symlinking it due
# to some random dirname(argv[0]) magic performed by python-config
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
#!/bin/sh
exec "${abiver}-config" "\${@}"
EOF
chmod +x "${scriptdir}/python${pymajor}-config" || die
ln -s "python${pymajor}-config" \
"${scriptdir}/python-config" || die
# 2to3, pydoc
ln -s "../../../bin/2to3-${PYVER}" \
"${scriptdir}/2to3" || die
ln -s "../../../bin/pydoc${PYVER}" \
"${scriptdir}/pydoc" || die
# idle
if use tk; then
ln -s "../../../bin/idle${PYVER}" \
"${scriptdir}/idle" || die
fi
}

@ -54,6 +54,7 @@ DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )"
BDEPEND="
virtual/awk
virtual/pkgconfig
verify-sig? ( app-crypt/openpgp-keys-python )
!sys-devel/gcc[libffi(-)]"

@ -54,6 +54,7 @@ DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )"
BDEPEND="
virtual/awk
virtual/pkgconfig
verify-sig? ( app-crypt/openpgp-keys-python )
!sys-devel/gcc[libffi(-)]"

@ -55,6 +55,7 @@ DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )"
BDEPEND="
virtual/awk
virtual/pkgconfig
verify-sig? ( app-crypt/openpgp-keys-python )
!sys-devel/gcc[libffi(-)]"

@ -56,6 +56,7 @@ DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )"
BDEPEND="
virtual/awk
virtual/pkgconfig
sys-devel/autoconf-archive
verify-sig? ( app-crypt/openpgp-keys-python )

@ -56,6 +56,7 @@ DEPEND="${RDEPEND}
bluetooth? ( net-wireless/bluez )
test? ( app-arch/xz-utils[extra-filters(+)] )"
BDEPEND="
virtual/awk
virtual/pkgconfig
sys-devel/autoconf-archive
verify-sig? ( app-crypt/openpgp-keys-python )

@ -1,4 +1,5 @@
DIST Inflector-0.11.4.crate 17438 BLAKE2B eaf0c7f983b3186e9bc89353021a10592f2877e46585bd50b96db9b087343d1199c7b6cf3fa53cd274fb6d33de025a904b8aa31a7ac9599ae3689ecdbcec34cd SHA512 f1f6463e033b6d3c16c51dc1e1a3f5569954308b95b59058294b7f9310919bbda797e99e6a07529071bb83f0688867a243997d33795a7136b0af73977004296e
DIST ahash-0.7.6.crate 38030 BLAKE2B aca3661477fcd7822d6d10970151e05c28e1615f8cd7ddaac064b15102027e404b19b0f3f16dd76145048594ea1c22ae27dd08cc05c411efbae9ec7a1ef55ce9 SHA512 61354688b6fb096359faefb6f34be958cd2215d56b88c22c737d24183eaad433f811bc9e64f927e4852c87d2799c22fda82b55cfbef2ed6357ff74f0c4ffec68
DIST aho-corasick-0.7.18.crate 112923 BLAKE2B 4f6947d1aacf89ccfab0592cdc55fa61ef09cea38231d3f758765dbce328a810c0b588be4ba96e81d64955379ee005722d22a7aec39caea6e72342245d7ca34f SHA512 7a23b16231a90d23ee60ad4c81bc225410599a4560d33d3a203138fc540c39cf1000100fed3aed40dcc371c3635656a3792545dca5dd1aefbde00d8774eebd00
DIST annotate-snippets-0.9.0.crate 31491 BLAKE2B d62d0d0da8b38d570f6efac995ec9014074d44500fb8634d2215187d063cda2c523c37d690551a536c8a1e30b8fbb2974b577b695a02fd4c236520fae5fefb9f SHA512 bdcdf3ce7fae0232a804604b3580ca8b68d29f8cb67f10fd39411b2ca2dc4c497dc9882bbcddecb15977809bdc58f8a946f25ce0152d27e4d128b3dd83087d9c
DIST ansi_term-0.11.0.crate 17087 BLAKE2B 9bd35c045a01ce4c6c4a5db1b4f15e9412bb97426eec19d4421dffbec633de8d13452c13c1dc1b30998690b78d7ed38311aca700087f13a81f66bd1d5d7300c4 SHA512 a637466a380748f939b3af090b8c0333f35581925bc03f4dda9b3f95d338836403cf5487ae3af9ff68f8245a837f8ab061aabe57a126a6a2c20f2e972c77d1fa
@ -42,10 +43,14 @@ DIST fixedbitset-0.2.0.crate 13597 BLAKE2B cfbdb06fefda131509b04cfa780c9e9574ef0
DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
DIST form_urlencoded-1.0.1.crate 8773 BLAKE2B e2d2224dbd85d053343aea29ef1bd540fb8be12fd600289e9c048e3b74bfb009d0770f8296556309ef756086f22feec4713dfed1006e1101075c8897be5471cc SHA512 3ab371c223561a27ffbd35cf648ef4a9145d47bba9d71900a7c54cfc2f089175e9361f6352331a9a7fa018923b15e7a3553c8f9ff9fae80e1626e641a5faff68
DIST fs2-0.4.3.crate 13138 BLAKE2B a8c53130014affc276544360425718c480fe6b6583675e15e8bf25dca0cd2752aeb0793135fce1bdc12bcfc0ef21fb7f6aa298981d61ac150300eb134c2014e0 SHA512 b83fefa9123f304e4813ec1dacbb1aee5dc0c94e1316cd7c8a434aa2a242c9c42523d2bd8232d78e6c84c4e172b5c46ef8605e93b54216a2d4496fdf885dcf50
DIST gazebo-0.2.1.crate 22298 BLAKE2B 104e76794825f897c8fe641296a64d8e530b9f2a1a93d546463f9b9acb7fff4e8785198ac790d16e7eb76e271ed8465faf95a2ecb6e1e5d1b8588ab7c9b274d9 SHA512 2f4d8a385bce0dff9e2b3a9a8d677cf33f940228e3a028823f118a318cbd7d81c30c1652fb19eb1fad046a7e326f7946fa3050686621739e746b70fb007fd60d
DIST gazebo-0.2.2.crate 22503 BLAKE2B e88503e72153b0aa8aa9c3993639e4960ac9916cdc1de7b0d5543cf9543b9fbced04ad79ae4f1a6938407e3a8522fdf8d4178021d34375bb74d8434f695227d6 SHA512 2d78550ecdb07d171ca78b4f2efeeb2bb1fb68b7a49519ec33583e184a49143556c808bd5737af1b68e010c6252e8f2be226d7f6239f2ec71539111aba093988
DIST gazebo-0.4.1.crate 28314 BLAKE2B bce81192c7db2716888b622498f3a833d51ba62b8ddff1ea8e4c108bec6c35457a6188447dd2fa6498e2c314e87ad10902578069f463c0aa6a796dd093c7fe0d SHA512 c483a0d65235ffc1ca2dd8d6e33140b1f238700809a47dc6c93b6a33a21a310a7e13ecede51ea80aa2c0a36866ded0137ce0df99c669cafed7d10db4e4b1198e
DIST gazebo_derive-0.1.1.crate 10002 BLAKE2B 953680dc207f82ef4bab99601b3a8898da32ef6ff61ee51debafc4b1209b916bc583a3890bb313627cc6e215886bf45a6d928f3d525e6ac7c873bfe0e432c79e SHA512 d8c66392d81d45f21885e992ec6fa27e09703eb33ab3abad847c8d4570e07e28ce39778d34343591582a4233d0bbaba2eb2023e600619eb5998dff7d60eda723
DIST gazebo_derive-0.4.1.crate 13385 BLAKE2B a50f1fd4648338310b7abd5597ee94fc99273096bb7931f64740e739c9c74ea5de1dbc45d309982b383a19fdfb20135af109a44fc45334304c4911ea6da44f42 SHA512 baa6e1ad727f0a3ae8d548e477a3f5be22e264f1b3d5ec661e25e353d5a1d1ef23eb9c96b21a0ebd0fcb4162ae626556ba413e1c6be797e02f26ba67ccaebd3b
DIST getrandom-0.2.3.crate 26261 BLAKE2B 3e52a87b9355f850e07e5080c20e1ab3acfa927bae28c63bb8bfd6a773ad77be96d3ba770c344631cc0f2d9a95aac920790173168b102e25f50480ee96663569 SHA512 e6da64ed529cb0fc000b613f75187ed6b20f716e721d8a02ac2ae39c507fb9f6189ebb66b522d28584eff1e7e9efc274cad6bfe43f464f58053701e1d51c603d
DIST half-1.7.1.crate 36168 BLAKE2B 632fefc24ad4b44c64ef6d3da745392ac016580baa5ba898c45bf41598ebb9ea86bb11c041b8813df73aaa755e323cc762b9e95b834aff7118d0d77e1834e7d5 SHA512 cd678b9277fd909083b67eb86c1fe92f464c92e1932246c6793dd835069aac5af6b9dc16bfbdcfbcdd75d3a641bc1f2240effd83dff6068a41b6c54d3739f73e
DIST hashbrown-0.11.2.crate 85713 BLAKE2B 402f9f1bdcb92631206f9b72923ee35e28db8623e87469c0f1496664bc7185077013ab3c8aea68268241e5b2504f10cddc613a350abd4291050deda6c112e559 SHA512 c21ca68fd49bbb741901f59fed04cc124b8da99e2a4dfc26e2e5e1140637872b344612a01691bd30cc771575c571be15f756c84dde225441699cd2322af2ad6c
DIST hashbrown-0.9.1.crate 77734 BLAKE2B d59002253112cf92173c3c1b305fd03fb7318ef187d7e033433baf6a354db046d1f3fe0387b3cf500fbcc0f83d2b2076527ba7cda2695f7627eca0bc3e3487c1 SHA512 dfa4742111f6fe757b7fa97f04c7b4a78ce9708c87e8e09ecf3c28f2566e48af9885fda380ed918cec37b5c696110fbdd30273aba6e7d2221c9e65f72af064fd
DIST heck-0.3.3.crate 10260 BLAKE2B dc756738081d855583f239908f671e9b5dde72ebfb577f6387b1a169817a03332464cf67071708a4c4f06b1ecb222118e8c719073ccdec1c0f938e5ef378b13f SHA512 b3498e033f44e03206421e565efec5b21d13107b60d35e4476331c44e6effd75c81f7678f2452c822eefd581209a2ffefd2034779cca2d8b4fac4583bbbf777f
DIST hermit-abi-0.1.18.crate 9936 BLAKE2B a5a1d1c9bdf83fdca8edc392f8fa7d9b9b248ac8d716e009300220befa5d8d80601643e768037be89bbbe6e21adbe6349c94c595cee3837c4b92b5f98ba838ad SHA512 54f060c6c1c80d41f40cec7102345147efb535aff9fa5cc0ed4ccd7f010bfdb6daaf40626fd5069af60ceb42058452803b59d4bbcfbed4c5546c79b57ae0f914
@ -63,7 +68,9 @@ DIST log-0.4.14.crate 34582 BLAKE2B ddfba35947ae1f5905cd9ecb9eb862a78af6f00ee8b8
DIST logos-0.11.4.crate 9324 BLAKE2B 6af99113ef9ebae1b64f05fb68b2c513476e6bf925a0bf5c9a85d1451461633165ef2b037e7eba48e31b3d4977a6636a7752947126bb2b23358eca6ddb295e98 SHA512 3767672b9abf0c00b4ec3b0f764e856a890d5559795f354f85338041af1372c26e908ddead9eebb57b38c6c0b2b5706217ab55de6b7f8baaaece2a503999874f
DIST logos-derive-0.11.5.crate 29466 BLAKE2B 311010767675c6313a6b79fe210478141ff67be167a26f53d5642e35aa9d2ec0630f31caeee64deef2a9122f5de4bd12097e023431d423103e6e39ea984cbab5 SHA512 9c5167162b30ee13e8aa05aeb7e272b1f34dbb587cdc2c20545dad8cbb3d574b542f2e7e9f2e60d55760edc934459d3a57f9c4734f7681ebd191330a8a50e5e0
DIST lsp-server-0.3.4.crate 11483 BLAKE2B 7ac90daa84af70018060efbc9b100fb8bd4d93cb58f6e20ec23b2fef13c987a87a425b64f8f63da3f8b0dd4cc28b156636417fb02d5fc522b8e34b8b51666bd3 SHA512 ce4c95625b3bbf3dee0df1a0b718a599de18a5f3d04631e98b6b970d422153559394f2e36e0d6b60b26c4591a288ed933b9ec6f3c3f0ddee25af7486ce53524f
DIST lsp-server-0.5.0.crate 10467 BLAKE2B 579f4482f58e035e4d591d2f66fba325db23342c6f4f78c6150dc8de693b26bbc253a4688f589cbfb00aa834052850efc9718b544d9214341aed30101dfba5aa SHA512 29c15ccbaae5fc00f719e804bbf188d3349680879c3f6ec855b84dc2167cc4690ebbd708bc7b37bdb4c391e376f5822b63181db81638ab4ab16a45e7d55e072a
DIST lsp-types-0.73.0.crate 36411 BLAKE2B 1ef3f94fbaa467c61159f0898e90f9f3d0094d52598e0b1009d7825e6da1e94347486237db9e651fe6153b577470f9765e7d1514d7101a05566c0dd090f579a7 SHA512 124df3ca0f25501b19930151ac692d5d3ffae7820a5179ebea88e8cdffa051cd29a325ec18b3aa77d0af70f90c9349ea0417ad2f5916ba0f546b7b183b2ffc52
DIST lsp-types-0.89.0.crate 48915 BLAKE2B 9085fe0b7520df246c475a6c9a8a4d8cca1a71c2ad01caf6786cdd81792e76643070be86f4bba14acfc52ac6dfd6ba88a033de9c6d22f04fc03bd98f127b1866 SHA512 34134dea7fce71054657b7bd7623a36dd522152a2cc38f4479fec5c5cae170179f62b97003e0fb604e1473c4a4f17c1030095fa6e593923495647491c1d9a0e4
DIST maplit-1.0.2.crate 8871 BLAKE2B 3cf975d35de2d2fbd50227a6d2c5e72227e99197b620c8f29be97bd3666ec162deeef0d9e6bd327a063f175201beeb73c4ed27272449b1df0b78238b2d36ca22 SHA512 917b5cf665e12b687035c895b60b2ae05622963f495f5693515fd24d56f49e95a06ffced68606d061bd20822c655100035930673fd4b0d4790168763b6961a9f
DIST matches-0.1.8.crate 2216 BLAKE2B f18176110921b1cf6e58d52d12f1d1a3455ce2dc04421fbf1b392f66cdd81a88e924571fa27e307a06301d83b04f3b8a0ca3ae40d2da6f2decb8aac4e2801fbb SHA512 98b58f6a2694b03a7dd1be69ebf7e3ad14483fc8e4cb6e6c26a4937e4e660e843efb4dd04a7312dd9659ca02acd3775678f73b8faac44a76ffafaf873c22f590
DIST maybe-uninit-2.0.0.crate 11809 BLAKE2B 5e517b8c59f9ae4f1a4f86b48679ea64d62450ec2519c8caaa914479ce9e5b3aff24707e2e37272ba74bb60499afdc602fff17756337b0c50a9184edbd8b8805 SHA512 3006fc009c7c743d9147a4122e677cdeb2546f7bb46963b2f266839614eb906f9d763c161044fd0bf3f7b54124ac0734ac9ae7f7151b1a7a5f45cbc739976434
@ -113,8 +120,10 @@ DIST serde_derive-1.0.126.crate 54189 BLAKE2B fa3ca8ef2e7d9bd29e682ac7df066bab05
DIST serde_json-1.0.64.crate 115138 BLAKE2B c61a404db9800cfb4e2ac29d4e287a7c8f388b62407d5e25e07514e2840fdf9c127476db35cb556b56143755c64c26be1c6b1facc7529067b06946ac8f54a573 SHA512 55a45dd4c60fd93d2d9331f6a8eac39fdfece9ddc1aae45ea27e3dfa81352f08c71bf03906ba99d0feb5df8d847b68547ecaa8eb5a2c76011ebbe8d4cd5bfc2d
DIST serde_repr-0.1.7.crate 10173 BLAKE2B 30bca6a616e55f44def56ab1f85cbb141727a872466f161f562798db005473d520e6a4dba89b631cfe11f1a38cbc1db2fb0ef921f0245e0990a6744f9987e95a SHA512 4e3e87b1c97ee587e88be56d67f287e43252de474a3becdefb4b768eda661db5d78f665d7d93720a40d9f5bd27fd9ab6213d66713ec89bcc2063092b16625a18
DIST siphasher-0.3.5.crate 9455 BLAKE2B 73a09ba949dc4ea670a01e4cfc4f34d8f6ab53facd656beadda396fee087b36afd895e2acba5fecb796fb629b0f56bca84f971970c2f771ed84f74f667f9708d SHA512 4887f7b7b4c0df55c185249a16041052e16ad1f7c80d69ca69dba76af7b25095f2ace3d5b2a33346797f74b63c476a67055929c2856a6b4dff60e8fe2147f8ae
DIST smawk-0.3.1.crate 12840 BLAKE2B 937471e3ec3431f174264ce41e7a9c8ac781f5ce3638afe6219173730f5a0d0cec2b482ca72eeee34d5765c75db1707433b2c5b5004cd6d6fa4809f606b26813 SHA512 d6a050e873da5c90de3ff9fd02166de3be4c03931de9cac5307e6c16a71b8db1db6e8309eaa38ad408b20e0cc98eb4133595ad7aea96f62ebdcea579a643b65f
DIST starlark-0.4.0.crate 403045 BLAKE2B 7d0f76b627c787a65450b444ab35a3cbfebbefbd59ab458030af5789b7ce140d920be5ec37625fb3d1499724bb37d6900887bfaade9907cb36de621579ac88e8 SHA512 52fff866d95e7cd1ba81b9dca4adfc9ea9efd6d1d8bed106718c1b8041c4311ad8ab2f87d77b50c1e312c5da6f9a12bf18e2541f3b15c7e2e5c30baf68a7f444
DIST starlark-rust-0.4.0.tar.gz 474742 BLAKE2B bb95bd9b0d8932efcc0921752a1bc576efe846f2b61c7a91a3b336e5b79bd02da90348ea07de24c292f1e70a739a5aa11ff673a6a19e0267a034f04df80afb54 SHA512 ef94e2849c44345e908f78dcef0d1bcc0480f94bcbd43ba4946860c0c53d27f459ef136299d23a82edb198fa582c42060d4d5c6e92be0a307a5392db4ee2dda9
DIST starlark-rust-0.5.0.tar.gz 526571 BLAKE2B 66b64be38e8fbfa5c278d262a6c9ad68b1c12feff322eea85e2cffd3aba3ee438684c60834cc36a532ecf1b608ea2c65df3259d6b45215c083060c926e5d698b SHA512 769fc64864764693b6388a2cfffd61353e3df2903293fd4713736f02fcecff18dcd3908ee5b8d36a6d0194698a056f081d853b620739fc2caeb1aa455ae5ffa1
DIST starlark_module-0.4.0.crate 10711 BLAKE2B 0f6ae47f013a3030f4358c85ee4cd07288f385a948f1a53f84c298b313993817a33731b1afbb3e40b9e04900d28b6b1bb2bfc71d67dc8b4284081cedb6ebbfdc SHA512 61eed47cf90ff5bc6959b3c9f44c042817a7b5a0e2374dd1b9a9cb44f1d0e9ba1ca5cef2f6f6cc15ae920549e572017448c5079a3cfa20981288448d2b26e9e0
DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
DIST string_cache-0.8.1.crate 14423 BLAKE2B af0c9b9f52a246d5537ac2831be6aea462ce253b086baf6fb1773f760d566ba70917b686c2c732f60cff4c30068c5800b7c26f73763e9ef825b2fa619f6a7c00 SHA512 476aa99da2d83de7eabe68b3dc2d064cb549e2caa2b708459f883cc0a8f27bed1b1607abb1481959cc26046cfd4c44886bb87bbef5aba95a195a9d850311915b
@ -124,6 +133,7 @@ DIST structopt-derive-0.4.14.crate 20116 BLAKE2B cfeb48f5e4906ca24b61afc085a5dc4
DIST syn-1.0.73.crate 232706 BLAKE2B c580f9ab914c54e731c8503c9b9d577d05032edb6bd12d7a183a3c0e3532fcf24196479a9ee40d09cb7e09ba6d94add36e338331affc2625058ce54419621ee4 SHA512 b37beb1b6d483cfdbc44d806af9955cdf52c4b0d5f918782019b089d06e107c7e23ced343a3bece20235a24752783795ebba8e603b61a6302e82ee7027843d8b
DIST term-0.7.0.crate 37082 BLAKE2B cb7947c696f71fc68bab3b25cc6cbde74b92380fdde5447399b06de99534b0cb2160963792824ac74a350444ce41a4fa16d6a9792a68d84578a15ab37ab76ca2 SHA512 9de6e836f1fd205b3b58645ec880eaabfc0fd8991e3980ef90bc6184b370a14676edb688a2a75bce412dd8ebd97345aef742afe5b964250e2b6f84e6b15b486a
DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
DIST textwrap-0.14.2.crate 52016 BLAKE2B db80b15ba23db718064ef0214578ea6aa4f0ee3b76723adaca131be26b770324205f2ead13c8f5c1e438ae1b5c9476cf1ede8f4ed82426c9d99d9406f2b83191 SHA512 521ab37e03aae8fcce5b909541399fc90a23020e353f95102c658fa94ffc56b9bdff43f47fb3da6e30f5c9cc9447fab72fe21d7276dfa21fe5a1a5a1c874e371
DIST thiserror-1.0.25.crate 16690 BLAKE2B a03107d70186d46870050ef86cb1f49aa99d91e509bd9ab22ee6cbac28d37176b2bafbadedc237a25d233abf7816cb3d85d88c140f172ede40d309ddaa1223dc SHA512 f408c2722060c6f707b9afcc1d9f3cb175bcf955263c4e643ef7ee935fd68299af835f4ad489ace814a7bcad6dc428eec5df2858453834d0b6154d22a38ba1da
DIST thiserror-impl-1.0.25.crate 13364 BLAKE2B 9b0eb7a6fd5f290d7a666de6065edc210ab9ef35960c424258d5039f24433baef7d1228ac2e962e8ef9dcb673979c9d3c09ef3f3d20533fe2ad1500bfcb20015 SHA512 a2d2f39d3c1e5a722d7020672f63fc312dd9f8ed73863971814f1fd12faac4ea5d8546e06b26838d8224b1f91161011f51dda476848b2555153203ee9f7ee3ca
DIST tiny-keccak-2.0.2.crate 20129 BLAKE2B 105a2d2af36cc053cd95721ea563108f33b8a3feb2ae84c75a04a65ed5d548dfe35d8b2e48977a82f725c0ebcf914f21157c547f4a74bb4d98c2e894385139be SHA512 c0219f23361eb07e0a68575c461a36b7286d9bdebae89080d9e259178d402b0c7762ccf33e65a16951ea168392322c44a24eb55189cf143e22d09d6dfc4acec1
@ -132,6 +142,7 @@ DIST tinyvec-1.2.0.crate 41625 BLAKE2B d7ffe63aa2f076ecf57a2c8af3269abc7c811b7e1
DIST tinyvec_macros-0.1.0.crate 1817 BLAKE2B a3d1966bf57c11afcd026269135a6189f149f905bb70b47537c0a7bcaef0bfc6c89bdcbdb0f6cb8e5255632855134631c683fc90606a254ec8ba818fd5ef0794 SHA512 d6afc83a3c70cde916a6ff599e2772588e4bbfa7a5b1c7e5c8aa0f4a8a5c9426182497a644e4a88194ece986d38fa64b6c8eda9eb1630441c8e65a8741a45873
DIST ucd-trie-0.1.3.crate 44615 BLAKE2B 491f604d63446dbccf5176333edd159ac56261a9aa76efecf57e9a11ae017a6cba975658a4ffdd310561704fb0831686fb7770b1142b4ac495f01e26de51b099 SHA512 54d43b3824669aa20b725c7747f4fb65bd24e620670c968c1bb0094a0503773acda921b50a0b200c1ea0f84e1e059883c1704bfa5a856d2e2ccda116fb8c3e2b
DIST unicode-bidi-0.3.5.crate 33423 BLAKE2B 26434df7646ca6fc3b655ac2482c2be70700bd84fdd31d016f49b5276b23308d1f9258d40ff97a4090e3dd603d3a19f8fe45c13c5dcde6b00816dcee1695c7d3 SHA512 4541d84db17eef16da6ea59f1ff7103549ff338d6ffabef21e75fbfcfdb1a3fd0f8e8fe18abab7b6117e997cefeaa5e87fb01fed8fedbcd0657fc913743de8ad
DIST unicode-linebreak-0.1.2.crate 69293 BLAKE2B 825dc2a29d86314cff3492cac71add2cd48948284d9e9b684580186f4c021c8ce1e288d21cc47493eb19a158385ec602f0cd5608a7618e38667c1cc7445a302d SHA512 170db67d6d74df913dffc921986b92df8a2ba68776ddb17c8ffca51d0d4bee597a5460591e7ba593c1eaec8b6227956f4e0f9b11d217aed4ee85cf46f1be5277
DIST unicode-normalization-0.1.19.crate 107353 BLAKE2B 4c69d50efcae131eb4b91d385a64b49412a11ba913b3c0364cd04ad107d59e31adbda74d34ed13a065d9a7825d79fb740e82a4dc66b7813a9837af4352ac9e16 SHA512 7459e9d2867308cac80a98d8dd0b0cce797e2830ea5ff55b878f7a37a6f5e1f0bc14340e1a29955298d660ba2be57754a1478d74851b1b90576dd5bc4231729f
DIST unicode-segmentation-1.7.1.crate 93066 BLAKE2B 80058a79c64972dfff897b08a24e9f18ae0fa312a50f86fc321961eeab83c5546bdbc30534315870d891e648bde1d7d77f459ec9744455bdebb94bf6e326f2ef SHA512 183ca68d456a8d53e6f255129e8fd07b87d8da23b8f18187231d6fa70dac80e4069eb6c501d45155d9f0050b6bd713964e55f0e4b25a40546c4d245a17fc8dc6
DIST unicode-width-0.1.8.crate 16732 BLAKE2B 5aa7b87eef1322e4151a3fcf981ade311b8fa030527d7561815950e58d3f15156163dfe34da6a708c37dccc3f7652bf7fc2cd899fe8bb0118b67c4113ff3a2d2 SHA512 0abba6da6981a2451e01d93bbd47652c46eb6fb07cc0214f33259fb29945bfd5ee2b302e883ddca8f68e921635f222701b7310e7da2a5e225f854980d1e474b0

@ -92,11 +92,9 @@ _test-features_execute-test() {
local error_msg test_title=$1 test_stdin=$2 exp_stdout=$3 exp_stderr=$4 exp_exitcode=$5
ebegin "$test_title"
error_msg=$(
stderr_file=$(mktemp) || exit
cleanup() { rm -f "$stderr_file"; }
trap cleanup EXIT
test_stdout=$("$starlark_binary" -i --json <<< "$test_stdin" 2>"$stderr_file")
# Redirect stderr to stdin because print goes to stderr since this commit:
# https://github.com/facebookexperimental/starlark-rust/commit/cdd68fa752aa8b6cae602297de1e43658b0a63fd
test_stdout=$("$starlark_binary" -i --json <<< "$test_stdin" 2>&1)
test_exitcode=$?
if (( test_exitcode != exp_exitcode )); then
@ -105,9 +103,6 @@ _test-features_execute-test() {
elif [[ "$test_stdout" != "$exp_stdout" ]]; then
echo "unexpected stdout \"$test_stdout\", expected stdout \"$exp_stdout\" for test_stdin: $test_stdin"
exit 1
elif [[ $(< "$stderr_file") != "$exp_stderr" ]]; then
echo "unexpected stderr \"$(< "$stderr_file")\", expected stderr \"$exp_stderr\" for test_stdin: $test_stdin"
exit 1
fi
exit 0
)

@ -0,0 +1,199 @@
# Copyright 2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
CRATES="
Inflector-0.11.4
ahash-0.7.6
aho-corasick-0.7.18
annotate-snippets-0.9.0
ansi_term-0.11.0
anyhow-1.0.41
ascii-canvas-3.0.0
atty-0.2.14
autocfg-1.0.1
base64-0.11.0
beef-0.4.4
bitflags-1.2.1
bit-set-0.5.2
bit-vec-0.6.3
bstr-0.2.16
bumpalo-3.7.0
cast-0.2.6
cc-1.0.68
cfg-if-0.1.10
cfg-if-1.0.0
clap-2.33.3
convert_case-0.4.0
criterion-0.3.4
criterion-plot-0.4.3
crossbeam-channel-0.4.4
crossbeam-channel-0.5.1
crossbeam-deque-0.8.0
crossbeam-epoch-0.9.5
crossbeam-utils-0.7.2
crossbeam-utils-0.8.5
crunchy-0.2.2
csv-1.1.6
csv-core-0.1.10
debugserver-types-0.5.0
derivative-2.2.0
derive_more-0.99.14
diff-0.1.12
dirs-next-2.0.0
dirs-sys-next-0.1.2
either-1.6.1
ena-0.14.0
fixedbitset-0.2.0
fnv-1.0.7
form_urlencoded-1.0.1
fs2-0.4.3
gazebo-0.2.1
gazebo-0.4.1
gazebo_derive-0.1.1
gazebo_derive-0.4.1
getrandom-0.2.3
half-1.7.1
hashbrown-0.9.1
hashbrown-0.11.2
heck-0.3.3
hermit-abi-0.1.18
idna-0.2.3
indexmap-1.6.2
itertools-0.9.0
itertools-0.10.1
itoa-0.4.7
js-sys-0.3.51
lalrpop-0.19.6
lalrpop-util-0.19.6
lazy_static-1.4.0
libc-0.2.97
logos-0.11.4
logos-derive-0.11.5
log-0.4.14
lsp-server-0.5.0
lsp-types-0.89.0
maplit-1.0.2
matches-0.1.8
maybe-uninit-2.0.0
memchr-2.4.0
memoffset-0.6.4
new_debug_unreachable-1.0.4
nix-0.19.1
num-traits-0.2.14
num_cpus-1.13.0
once_cell-1.8.0
oorandom-11.1.3
paste-1.0.5
percent-encoding-2.1.0
pest-2.1.3
petgraph-0.5.1
phf_shared-0.8.0
pico-args-0.4.2
plotters-0.3.1
plotters-backend-0.3.0
plotters-svg-0.3.0
precomputed-hash-0.1.1
proc-macro2-1.0.27
proc-macro-error-1.0.4
proc-macro-error-attr-1.0.4
quote-1.0.9
rayon-1.5.1
rayon-core-1.9.1
redox_syscall-0.2.9
redox_users-0.4.0
regex-1.5.4
regex-automata-0.1.10
regex-syntax-0.6.25
rustc_version-0.3.3
rustversion-1.0.5
rustyline-7.1.0
ryu-1.0.5
same-file-1.0.6
schemafy-0.5.2
schemafy_core-0.5.2
schemafy_lib-0.5.2
scopeguard-1.1.0
semver-0.11.0
semver-parser-0.10.2
serde-1.0.126
serde_cbor-0.11.1
serde_derive-1.0.126
serde_json-1.0.64
serde_repr-0.1.7
siphasher-0.3.5
smawk-0.3.1
starlark-0.4.0
starlark_module-0.4.0
static_assertions-1.1.0
string_cache-0.8.1
strsim-0.8.0
structopt-0.3.21
structopt-derive-0.4.14
syn-1.0.73
term-0.7.0
textwrap-0.11.0
textwrap-0.14.2
thiserror-1.0.25
thiserror-impl-1.0.25
tinytemplate-1.2.1
tinyvec-1.2.0
tinyvec_macros-0.1.0
tiny-keccak-2.0.2
ucd-trie-0.1.3
unicode-bidi-0.3.5
unicode-linebreak-0.1.2
unicode-normalization-0.1.19
unicode-segmentation-1.7.1
unicode-width-0.1.8
unicode-xid-0.2.2
url-2.2.2
utf8parse-0.2.0
utf8-ranges-1.0.4
vec_map-0.8.2
version_check-0.9.3
void-1.0.2
walkdir-2.3.2
wasi-0.10.2+wasi-snapshot-preview1
wasm-bindgen-0.2.74
wasm-bindgen-backend-0.2.74
wasm-bindgen-macro-0.2.74
wasm-bindgen-macro-support-0.2.74
wasm-bindgen-shared-0.2.74
web-sys-0.3.51
winapi-0.3.9
winapi-i686-pc-windows-gnu-0.4.0
winapi-util-0.1.5
winapi-x86_64-pc-windows-gnu-0.4.0
yansi-term-0.1.2
"
inherit cargo
DESCRIPTION="A Rust implementation of the Starlark language"
HOMEPAGE="https://github.com/facebookexperimental/starlark-rust"
SRC_URI="$(cargo_crate_uris ${CRATES})
https://github.com/facebookexperimental/starlark-rust/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
# Nightly rust-1.53.0 required for https://bugs.gentoo.org/796824
BDEPEND="${RUST_DEPEND}
>=dev-lang/rust-1.53.0[nightly]"
# RUSTFLAGS support needed: https://bugs.gentoo.org/796887
QA_FLAGS_IGNORED=".*"
src_test() {
source "${FILESDIR}/test/features.bash" || die
test-features_main "${PWD}/target/release/starlark" || die
}
src_install() {
dobin target/release/starlark
ln "${ED}/usr/bin/starlark"{,-rust} || die
dodoc -r {docs,{CHANGELOG,README}.md}
}

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="http://isl.gforge.inria.fr/${P}.tar.xz https://libisl.sourceforge.io/${
LICENSE="LGPL-2.1"
SLOT="0/23"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
RDEPEND=">=dev-libs/gmp-5.1.3-r1:=[${MULTILIB_USEDEP}]"

@ -3,3 +3,4 @@ DIST libfilezilla-0.28.0.tar.bz2 572028 BLAKE2B 579881b1bf127f709cdfda61efb71cce
DIST libfilezilla-0.30.0.tar.bz2 578592 BLAKE2B abfef274989b0ba31d9237394aa1e88012e9fe9d071c11e7350e0ada8d5da54d7cdc93f46f65b38fa9a811a638210238f42de99fdd6832f97ede3808723e5d4f SHA512 f05a1ef2be7a6d32a6c5adf8e02f2b17e83deb67bf7c67b1bc1fec539a7235903d91dd3e98412aa1b90f1fcb322cb9ab54d3a1ff4ec44889b4dcdda6984300c9
DIST libfilezilla-0.31.1.tar.bz2 585070 BLAKE2B b7cd275ee39d5ac62801889adae79515c056a5f838f4348324c0f5a975d3cc45a058b4c7d37f99179efe6808464b7972c31e300ae9e05371134d7a149b5616d5 SHA512 072ae343bc44939deff435078c29954dc60e4bb5079aa705b7445bec17717919d4957858538284e4f131d734439743bd5d39085a618ea41d586be8be887cf2b8
DIST libfilezilla-0.34.0.tar.bz2 593998 BLAKE2B 3f3563389f4dfe3667c8c1e46d5f4ab76e02f93188bada3c15e974405c49e0d1346813e64457ec5b60bdeca98629e5a05941f76cb375bb229eee759cc6ab5246 SHA512 960908aa570704e983e51e2eaa13a7fb688587bd1f3c37ade6a3f1b3f5379d0b9e5d3c727bcf58f033a1cc0fce2fc34e2fdffdb379ad5be85de917c0a590de22
DIST libfilezilla-0.34.2.tar.bz2 595072 BLAKE2B b7c5db16ff74ee218eb38e69f029f6c2cad7984f7f27795ec67f9250eb544b259941cd34fc30bc8222aa0fef51e275d4ca0587754386807ecd916ab7c56b6688 SHA512 a749635f7526e307b93002c4044debdcae948bebb73c272ffc98d1997cf160001a7edc6c776656ea927254614c5a3067ebab1ffc92d7b9f97cf5d4542dec8df9

@ -0,0 +1,49 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic
DESCRIPTION="C++ library offering some basic functionality for platform-independent programs"
HOMEPAGE="https://lib.filezilla-project.org/"
SRC_URI="https://download.filezilla-project.org/${PN}/${P}.tar.bz2"
LICENSE="GPL-2+"
SLOT="0/22" # libfilezilla.so version
KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/nettle:0=
>=net-libs/gnutls-3.5.7:=
virtual/libcrypt:=
"
DEPEND="${RDEPEND}
test? ( dev-util/cppunit )"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]]; then
if ! test-flag-CXX -std=c++14; then
eerror "${P} requires C++14-capable C++ compiler. Your current compiler"
eerror "does not seem to support -std=c++14 option. Please upgrade your compiler"
eerror "to gcc-4.9 or an equivalent version supporting C++14."
die "Currently active compiler does not support -std=c++14"
fi
fi
}
src_configure() {
if use ppc || use arm || use hppa; then
# bug 727652
append-libs -latomic
fi
econf --disable-static
}
src_install() {
default
find "${ED}" -type f -name "*.la" -delete || die
}

@ -1,3 +1,4 @@
DIST libpcre2-10.36-patchset-01.tar.xz 1364 BLAKE2B bfef3c876a092e06972107b44794c23b758a030181f3040c8b722db166789eac794783169b468fc71334fd660bc2f1c31422a8cb8e5bdc18a69b72654b1b59b2 SHA512 04324d1efa6d155fa3ffbc328638e4674bea305fef7f57d4369ab4a6399a0f489b4c0ecfb49643feff310d91872e1673e965c48a5c60f1bf54a319f0d275c306
DIST pcre2-10.37.tar.bz2 1729384 BLAKE2B b4e56041010d7f44e84a63a17b35e87329d258107d8b27ccead10f51e7deacc93cbee64a22c71b9f0b8f244920b3a22fa4d9b786ec441a428e0ad0bb8535773e SHA512 69f4bf4736b986e0fc855eedb292efe72a0df2e803bc0e61a6cf47775eed433bb1b2f28d7e641591ef4603d47beb543a64ed0eef9538d00f0746bc3435c143ec
DIST pcre2-10.38.tar.bz2 1729078 BLAKE2B 9438ff2422afaa83d5a4b2e64d5897068c35add28d66956431f9937191416d6df4903ecf35af72c788480d7def08e0ce17922e9b036698ce1bbe6cacbb799df2 SHA512 3634cb2db6ccba9720c1b69890bcd9eb7057f6a6cb6981f12b3f2d6b2bb4e75e4e5014f566045f9ba1b79edf01fa5c4d81eb333727b9462e843dfb70f3a58f95
DIST pcre2-10.39.tar.bz2 1730729 BLAKE2B 9ee01ac2704e9cb7a107d402fa0c32828fc66425b62270f6891667bde5fb00c1e779c9730df3522acbd62d11703343bf48265050c09d3754183de314baf7cddd SHA512 b3d898198f4b5ffc3453d2ba56fe2a7298c01c52e5f67d45f1e046fc0dee62e16a4024fcb65839ac9c367beedb531647affd6f8599fbeb102f19423c150d80d4

@ -0,0 +1,95 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit libtool multilib-minimal usr-ldscript
PATCH_SET="${PN}-10.36-patchset-01.tar.xz"
DESCRIPTION="Perl-compatible regular expression library"
HOMEPAGE="https://www.pcre.org/"
MY_P="pcre2-${PV/_rc/-RC}"
if [[ ${PV} != *_rc* ]] ; then
# Only the final releases are available here.
SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2
https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2"
else
SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
fi
if [[ -n "${PATCH_SET}" ]] ; then
SRC_URI+=" https://dev.gentoo.org/~whissi/dist/${PN}/${PATCH_SET}
https://dev.gentoo.org/~polynomial-c/dist/${PATCH_SET}"
fi
LICENSE="BSD"
SLOT="0/3" # libpcre2-posix.so version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )"
BDEPEND="
virtual/pkgconfig
userland_GNU? ( >=sys-apps/findutils-4.4.0 )
"
RDEPEND="
bzip2? ( app-arch/bzip2 )
libedit? ( dev-libs/libedit )
readline? ( sys-libs/readline:0= )
zlib? ( sys-libs/zlib )
"
DEPEND="${RDEPEND}"
S="${WORKDIR}/${MY_P}"
MULTILIB_CHOST_TOOLS=(
/usr/bin/pcre2-config
)
src_prepare() {
if [[ -d "${WORKDIR}/patches" ]] ; then
rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die
eapply "${WORKDIR}"/patches
fi
default
elibtoolize
}
multilib_src_configure() {
local myeconfargs=(
--enable-pcre2-8
--enable-shared
--with-match-limit-depth=$(usex recursion-limit 8192 MATCH_LIMIT)
$(multilib_native_use_enable bzip2 pcre2grep-libbz2)
$(multilib_native_use_enable libedit pcre2test-libedit)
$(multilib_native_use_enable readline pcre2test-libreadline)
$(multilib_native_use_enable zlib pcre2grep-libz)
$(use_enable jit)
$(use_enable jit pcre2grep-jit)
$(use_enable pcre16 pcre2-16)
$(use_enable pcre32 pcre2-32)
$(use_enable static-libs static)
$(use_enable unicode)
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_compile() {
emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=")
}
multilib_src_install() {
emake \
DESTDIR="${D}" \
$(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \
install
multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix
}
multilib_src_install_all() {
find "${ED}" -type f -name "*.la" -delete || die
}

@ -14,7 +14,7 @@ SRC_URI+=" verify-sig? ( ftp://xmlsoft.org/${PN}/${P}.tar.gz.asc )"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="crypt debug examples static-libs elibc_Darwin"
BDEPEND=">=virtual/pkgconfig-1

@ -0,0 +1 @@
DIST mimalloc-1.7.2.tar.gz 903317 BLAKE2B 6983a575c8e3a9ee92acc0042bc229805b7090794de6e693ff1cc344cd50e333d46f23663fbd16647ae4442b28f24bdc2043b46ed2bc16e13c3f8def08b155bb SHA512 5d78c5cc00dfff3dd7eb4bb59e8eff32397f5110d1183b4656cb56c40b88e2e648e3b18338119412b95ba9526937b16fce3aa4732f241a61a546e2bcea1efc9d

@ -0,0 +1,29 @@
https://github.com/microsoft/mimalloc/pull/463
From: Yaroslav Syrytsia <me@ys.lc>
Date: Tue, 28 Sep 2021 20:34:56 +0300
Subject: [PATCH] cmake: removed hardcoded names for top level configuration
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -24,6 +24,7 @@ option(MI_DEBUG_UBSAN "Build with undefined-behavior sanitizer (needs clan
option(MI_CHECK_FULL "Use full internal invariant checking in DEBUG mode (deprecated, use MI_DEBUG_FULL instead)" OFF)
option(MI_INSTALL_TOPLEVEL "Install directly into $CMAKE_INSTALL_PREFIX instead of PREFIX/lib/mimalloc-version" OFF)
+include(GNUInstallDirs)
include("cmake/mimalloc-config-version.cmake")
set(mi_sources
@@ -208,9 +209,9 @@ endif()
# -----------------------------------------------------------------------------
if (MI_INSTALL_TOPLEVEL)
- set(mi_install_libdir "lib")
- set(mi_install_incdir "include")
- set(mi_install_cmakedir "cmake")
+ set(mi_install_libdir "${CMAKE_INSTALL_LIBDIR}")
+ set(mi_install_incdir "${CMAKE_INSTALL_INCLUDEDIR}")
+ set(mi_install_cmakedir "${CMAKE_INSTALL_LIBDIR}/cmake/mimalloc")
else()
set(mi_install_libdir "lib/mimalloc-${mi_version}")
set(mi_install_incdir "include/mimalloc-${mi_version}")

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
<email>sam@gentoo.org</email>
<name>Sam James</name>
</maintainer>
<upstream>
<remote-id type="github">microsoft/mimalloc</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,32 @@
# Copyright 2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
DESCRIPTION="mimalloc is a compact general purpose allocator with excellent performance"
HOMEPAGE="https://github.com/microsoft/mimalloc"
SRC_URI="https://github.com/microsoft/mimalloc/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0/1"
KEYWORDS="~amd64"
IUSE="test"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}"/${PN}-1.7.2-GNUInstallDirs.patch
)
src_configure() {
local mycmakeargs=(
# TODO: build hardened variant?
#-DMI_SECURE=$(usex hardened)
-DMI_INSTALL_TOPLEVEL=ON
-DMI_BUILD_TESTS=$(usex test)
)
cmake_src_configure
}

@ -34,8 +34,8 @@ RDEPEND="
virtual/opencl
${CLANG_DEPS}
debug? ( dev-util/lttng-ust )
hwloc? ( sys-apps/hwloc[cuda?] )
debug? ( dev-util/lttng-ust:= )
hwloc? ( sys-apps/hwloc:=[cuda?] )
"
DEPEND="${RDEPEND}"
BDEPEND="${CLANG_DEPS}

@ -34,8 +34,8 @@ RDEPEND="
virtual/opencl
${CLANG_DEPS}
debug? ( dev-util/lttng-ust )
hwloc? ( sys-apps/hwloc[cuda?] )
debug? ( dev-util/lttng-ust:= )
hwloc? ( sys-apps/hwloc:=[cuda?] )
"
DEPEND="${RDEPEND}"
BDEPEND="${CLANG_DEPS}

Binary file not shown.

@ -23,8 +23,7 @@ DEPEND="
dev-ml/react:=
dev-ml/dune-configurator:=
dev-libs/libev"
RDEPEND="${DEPEND}
!<www-servers/ocsigen-1.1"
RDEPEND="${DEPEND}"
BDEPEND="
>=dev-ml/cppo-1.6.6
dev-ml/findlib"

@ -1,11 +0,0 @@
diff -ruN Crypt-Cracklib-1.7.orig/Makefile.PL Crypt-Cracklib-1.7/Makefile.PL
--- Crypt-Cracklib-1.7.orig/Makefile.PL 2019-10-16 05:55:37.321262001 +0200
+++ Crypt-Cracklib-1.7/Makefile.PL 2019-10-16 05:56:38.585611172 +0200
@@ -15,7 +15,6 @@
requires_external_cc();
cc_lib_links('crack');
-cc_optimize_flags('-g -Wall -Werror');
auto_install();
WriteAll();

@ -1,252 +0,0 @@
From b110ec2277ba33e0935f3d465a5413f669d8aefc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Tue, 11 Oct 2016 16:15:43 +0200
Subject: [PATCH] Port to OpenSSL 1.1.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
OpenSSL 1.1.0 hid ECDSA structure internals and provided methods
instead.
This patch uses the methods and provides their copies in the case of
older OpenSSL. Because the new OpenSSL API, ECDSA_SIG_set0(), cannot
set curve parameters individually and ECDSA_SIG_get0() returns yet
another reference, it's necessary to duplicate the other unchanged
paramater when calling set_r() or set_s().
This patch also stops exporting ECDSA_METHOD functions that were
removed from the new OpenSSL.
CPAN RT#118330
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
ECDSA.xs | 105 ++++++++++++++++++++++++++++++++++++++++--------
t/Crypt-OpenSSL-ECDSA.t | 13 +++++-
2 files changed, 100 insertions(+), 18 deletions(-)
diff --git a/ECDSA.xs b/ECDSA.xs
index 4016368..3d6e2d1 100644
--- a/ECDSA.xs
+++ b/ECDSA.xs
@@ -7,9 +7,35 @@
#include <openssl/ecdsa.h>
#include <openssl/err.h>
+#include <openssl/bn.h>
#include "const-c.inc"
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+#include <openssl/ec.h>
+#else
+/* ECDSA_SIG_get0() and ECDSA_SIG_set0() copied from OpenSSL 1.1.0b. */
+static void ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr,
+ const BIGNUM **ps) {
+ if (pr != NULL)
+ *pr = sig->r;
+ if (ps != NULL)
+ *ps = sig->s;
+}
+
+static int ECDSA_SIG_set0(ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s)
+{
+ if (r == NULL || s == NULL)
+ return 0;
+ BN_clear_free(sig->r);
+ BN_clear_free(sig->s);
+ sig->r = r;
+ sig->s = s;
+ return 1;
+}
+#endif
+
MODULE = Crypt::OpenSSL::ECDSA PACKAGE = Crypt::OpenSSL::ECDSA
PROTOTYPES: ENABLE
@@ -17,7 +43,9 @@ INCLUDE: const-xs.inc
BOOT:
ERR_load_crypto_strings();
+#if OPENSSL_VERSION_NUMBER >= 0x10002000L && OPENSSL_VERSION_NUMBER < 0x10100000L
ERR_load_ECDSA_strings();
+#endif
#ECDSA_SIG *
#ECDSA_SIG_new()
@@ -61,10 +89,16 @@ ECDSA_do_verify(const unsigned char *dgst, const ECDSA_SIG *sig, EC_KEY* eckey);
OUTPUT:
RETVAL
-# These ECDSA_METHOD functions only became available in 1.0.2
+# These ECDSA_METHOD functions only became available in 1.0.2,
+# but some of them removed again in 1.1.0.
#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+int
+ECDSA_size(const EC_KEY *eckey)
+
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+
const ECDSA_METHOD *
ECDSA_OpenSSL()
@@ -77,9 +111,6 @@ ECDSA_get_default_method()
int
ECDSA_set_method(EC_KEY *eckey, const ECDSA_METHOD *meth)
-int
-ECDSA_size(const EC_KEY *eckey)
-
ECDSA_METHOD *
ECDSA_METHOD_new(ECDSA_METHOD *ecdsa_method=0)
@@ -95,7 +126,7 @@ ECDSA_METHOD_set_name(ECDSA_METHOD *ecdsa_method, char *name)
void
ERR_load_ECDSA_strings()
-
+#endif
#endif
@@ -135,11 +166,13 @@ SV *
get_r(ecdsa_sig)
ECDSA_SIG *ecdsa_sig
PREINIT:
+ const BIGNUM *r;
unsigned char *to;
STRLEN len;
CODE:
to = malloc(sizeof(char) * 128);
- len = BN_bn2bin(ecdsa_sig->r, to);
+ ECDSA_SIG_get0(ecdsa_sig, &r, NULL);
+ len = BN_bn2bin(r, to);
RETVAL = newSVpvn((const char*)to, len);
free(to);
OUTPUT:
@@ -149,11 +182,13 @@ SV *
get_s(ecdsa_sig)
ECDSA_SIG *ecdsa_sig
PREINIT:
+ const BIGNUM *s;
unsigned char *to;
STRLEN len;
CODE:
to = malloc(sizeof(char) * 128);
- len = BN_bn2bin(ecdsa_sig->s, to);
+ ECDSA_SIG_get0(ecdsa_sig, NULL, &s);
+ len = BN_bn2bin(s, to);
RETVAL = newSVpvn((const char*)to, len);
free(to);
OUTPUT:
@@ -164,26 +199,62 @@ set_r(ecdsa_sig, r_SV)
ECDSA_SIG *ecdsa_sig
SV * r_SV
PREINIT:
- char *s;
+ char *string;
STRLEN len;
+ BIGNUM *r;
+ BIGNUM *s;
+ const BIGNUM *old_s;
CODE:
- s = SvPV(r_SV, len);
- if (ecdsa_sig->r)
- BN_free(ecdsa_sig->r);
- ecdsa_sig->r = BN_bin2bn((const unsigned char *)s, len, NULL);
+ string = SvPV(r_SV, len);
+ r = BN_bin2bn((const unsigned char *)string, len, NULL);
+ if (NULL == r)
+ croak("Could not convert ECDSA parameter string to big number");
+ ECDSA_SIG_get0(ecdsa_sig, NULL, &old_s);
+ if (NULL == old_s) {
+ s = BN_new();
+ } else {
+ s = BN_dup(old_s);
+ }
+ if (NULL == s) {
+ BN_free(r);
+ croak("Could not duplicate unchanged ECDSA parameter");
+ }
+ if (!ECDSA_SIG_set0(ecdsa_sig, r, s)) {
+ BN_free(r);
+ BN_free(s);
+ croak("Could not store ECDSA parameters");
+ }
void
set_s(ecdsa_sig, s_SV)
ECDSA_SIG *ecdsa_sig
SV * s_SV
PREINIT:
- char *s;
+ char *string;
STRLEN len;
+ BIGNUM *r;
+ BIGNUM *s;
+ const BIGNUM *old_r;
CODE:
- s = SvPV(s_SV, len);
- if (ecdsa_sig->s)
- BN_free(ecdsa_sig->s);
- ecdsa_sig->s = BN_bin2bn((const unsigned char *)s, len, NULL);
+ string = SvPV(s_SV, len);
+ s = BN_bin2bn((const unsigned char *)string, len, NULL);
+ if (NULL == s)
+ croak("Could not convert ECDSA parameter string to big number");
+ ECDSA_SIG_get0(ecdsa_sig, &old_r, NULL);
+ if (NULL == old_r) {
+ r = BN_new();
+ } else {
+ r = BN_dup(old_r);
+ }
+ if (NULL == r) {
+ BN_free(s);
+ croak("Could not duplicate unchanged ECDSA parameter");
+ }
+ if (!ECDSA_SIG_set0(ecdsa_sig, r, s)) {
+ BN_free(r);
+ BN_free(s);
+ croak("Could not store ECDSA parameters");
+ }
diff --git a/t/Crypt-OpenSSL-ECDSA.t b/t/Crypt-OpenSSL-ECDSA.t
index 7ab584f..3c02025 100644
--- a/t/Crypt-OpenSSL-ECDSA.t
+++ b/t/Crypt-OpenSSL-ECDSA.t
@@ -6,7 +6,7 @@
use strict;
use warnings;
-use Test::More tests => 21;
+use Test::More tests => 25;
BEGIN { use_ok('Crypt::OpenSSL::ECDSA'); use_ok('Crypt::OpenSSL::EC'); };
@@ -77,6 +77,17 @@ $ret = Crypt::OpenSSL::ECDSA::ECDSA_do_verify($digest, $sig, $key);
ok($ret);
undef $sig;
+# Test a signature can be built from scratch
+$sig = Crypt::OpenSSL::ECDSA::ECDSA_SIG->new();
+ok($sig, 'Empty Crypt::OpenSSL::ECDSA::ECDSA_SIG object created');
+eval { $sig->set_r($r); };
+ok(!$@, 'R parameter set');
+eval { $sig->set_s($s); };
+ok(!$@, 'S parameter set');
+$ret = Crypt::OpenSSL::ECDSA::ECDSA_do_verify($digest, $sig, $key);
+ok($ret, 'built-from-scratch signature matches');
+undef $sig;
+
# Testing signing and verifying with the _ex version
my $dummy = 0;
$sig = Crypt::OpenSSL::ECDSA::ECDSA_do_sign_ex($digest, \$dummy, \$dummy, $key);
--
2.7.4

@ -1,32 +0,0 @@
From 0906d6c153b3bedad2a91a19e8441b9633070e10 Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentfredric@gmail.com>
Date: Sun, 11 Jun 2017 15:29:53 +1200
Subject: [PATCH] Fix tab/tables.pl for Perl 5.26
Removal of "." from @INC means require $PATH no longer ever assumes
a path relative to ".", and instead must be explicitly stated with a
leading "./"
Fixes RT#120087
Bug: https://rt.cpan.org/Ticket/Display.html?id=120087
---
tab/tables.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tab/tables.pl b/tab/tables.pl
index 2aa0c66..7bed411 100644
--- a/tab/tables.pl
+++ b/tab/tables.pl
@@ -3,7 +3,7 @@
# Copyright 2001 Abhijit Menon-Sen <ams@wiw.org>
use strict;
-require 'tab/misc.pl';
+require './tab/misc.pl';
my ($qtab, $mtab) = ([], []);
--
2.13.1

@ -1,59 +0,0 @@
From 7b70e4169faf4e2ec0fe570b02190e71bc168377 Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Tue, 10 Oct 2017 08:15:54 +1300
Subject: Rename installed script to '.pl'
Note: this must not happen in dist-root, or EUMM will also install this
as $INC[0]/Data/hexdump.pl
Bug: https://rt.cpan.org/Ticket/Display.html?id=123224
---
MANIFEST | 2 +-
Makefile.PL | 2 +-
hexdump => bin/hexdump.pl | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
rename hexdump => bin/hexdump.pl (95%)
diff --git a/MANIFEST b/MANIFEST
index 2e0843a..2f0c98b 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -2,7 +2,7 @@ MANIFEST
MANIFEST.SKIP
Makefile.PL
README
-hexdump
+bin/hexdump.pl
lib/Data/HexDump.pm
t/compare.t
t/data.t
diff --git a/Makefile.PL b/Makefile.PL
index 0ee62bf..091fa9d 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -6,5 +6,5 @@ WriteMakefile(NAME => "Data::HexDump",
VERSION_FROM => "lib/Data/HexDump.pm",
dist => { COMPRESS => "gzip", SUFFIX => "gz" },
clean => { FILES => '*.bak *.old mibs/*.dump lib/*/*~' },
- EXE_FILES => [ qw(hexdump) ],
+ EXE_FILES => [ qw(bin/hexdump.pl) ],
);
diff --git a/hexdump b/bin/hexdump.pl
similarity index 95%
rename from hexdump
rename to bin/hexdump.pl
index a2e28a1..9f86cd8 100755
--- a/hexdump
+++ b/bin/hexdump.pl
@@ -5,7 +5,7 @@ use strict;
use Data::HexDump;
use FileHandle;
-my $prgname = "hexdump";
+my $prgname = "hexdump.pl";
my $file = shift;
my $fh;
--
2.14.1

@ -1,28 +0,0 @@
From 36f61caaa95340817098b8b9f6631c9f2060a292 Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Tue, 10 Oct 2017 08:17:01 +1300
Subject: Remove 'use lib lib'
There's no sense in blindly adding lib based on wherever you currently
are to an installed program, its just a security problem asking to be
invented.
Bug: https://rt.cpan.org/Ticket/Display.html?id=123225
---
bin/hexdump.pl | 1 -
1 file changed, 1 deletion(-)
diff --git a/bin/hexdump.pl b/bin/hexdump.pl
index 9f86cd8..1ce8962 100755
--- a/bin/hexdump.pl
+++ b/bin/hexdump.pl
@@ -1,6 +1,5 @@
#!/usr/bin/perl -w
-use lib "lib";
use strict;
use Data::HexDump;
use FileHandle;
--
2.14.1

@ -1,28 +0,0 @@
From 1eec10393fbf1123327858d127e1f6d9e50f5a85 Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Tue, 10 Oct 2017 08:17:59 +1300
Subject: Don't use signed characters for 0-255
'c' == -127 to 127
Bug: https://rt.cpan.org/Ticket/Display.html?id=123226
---
t/compare.t | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/t/compare.t b/t/compare.t
index f03d73d..3c25803 100644
--- a/t/compare.t
+++ b/t/compare.t
@@ -11,7 +11,7 @@ print "1..2\n";
# data
my $org = "";
for (my $i = 0; $i <= 255; $i++) {
- $org .= pack 'c', $i;
+ $org .= pack 'C', $i;
}
$org = $org x 17 . "more data";
--
2.14.1

@ -0,0 +1,19 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DIST_AUTHOR=TMTM
DIST_VERSION=1.41
inherit perl-module
DESCRIPTION="work with a range of dates"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
>=dev-perl/Date-Simple-0.30.0
"
BDEPEND="${RDEPEND}
"

@ -0,0 +1 @@
DIST Date-Range-1.41.tar.gz 4779 BLAKE2B c2fe77acc3cfcff577bb4b139d24400b266e77afe905d3b63b4b3ea17c25074a5fa75421a959ad87a2ab51fe3469ecb7c498767aa3b2492d545a274327a7fc65 SHA512 452672d6050805c0a5743d49e278925df8d2d44b3f2ffc5c69dc6520ae4cbf54847baa905a35290375bb200bf3c74a2a862c54bcd57ee9ef0f513e3ccdc07f93

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>perl@gentoo.org</email>
<name>Gentoo Perl Project</name>
</maintainer>
</pkgmetadata>

@ -1,37 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=ETHER
DIST_VERSION=0.11
inherit perl-module
DESCRIPTION="Install shared files"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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="test"
RESTRICT="!test? ( test )"
PERL_RM_FILES=( "Build.PL" ) # Using MBTiny is stupid this high up
RDEPEND="
virtual/perl-Carp
virtual/perl-Exporter
virtual/perl-File-Spec
virtual/perl-IO
"
DEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
virtual/perl-File-Path
virtual/perl-Module-Metadata
virtual/perl-Test-Simple
)
"
DIST_TEST="do" # RT#111296
src_prepare() {
PERL_MM_FALLBACK_SILENCE_WARNING=1 perl-module_src_prepare
}

@ -1,2 +1 @@
DIST File-ShareDir-Install-0.11.tar.gz 31187 BLAKE2B 4be6bd829fc9b2784069ba3ee8f54fadd390e3bd003d43a7754f3469fc14c01a5587044f045abe806688ed4442088256264d983ccf4080caec8b8062912e2acf SHA512 6611f6c3221ec52db7582f30b2159dba22ca8d899666526c069298b3350ced9e3b46872baaceb30f7a27e3c744c929ca4967fa820d14bbfdb41e5ed5485a9f72
DIST File-ShareDir-Install-0.13.tar.gz 31191 BLAKE2B 53bde507e8fcd0c75030bd977bc6a55d6da810c99102269e46042ebe3873d8fbb224d967cafa87dee4bd02ca18b968f525129986bf7204f84251d7f86f0588b3 SHA512 a119e38491fad8ae0ebd95913e3b608e09a2b99376a5160e75083a28abe4f83c4f6a36df216365527ff87bf8ec095254b16a2f6d2515c69f34609df8672605ca

@ -1,7 +1,7 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DIST_AUTHOR=KENTNL
DIST_VERSION=1.000009
@ -10,8 +10,7 @@ inherit perl-module
DESCRIPTION="Simple set-and-forget using of a '/share' directory in your projects root"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="test minimal"
RESTRICT="!test? ( test )"
IUSE="minimal"
RDEPEND="
!minimal? ( >=dev-perl/Path-Tiny-0.58.0 )
@ -22,7 +21,7 @@ RDEPEND="
dev-perl/Path-Tiny
dev-perl/Sub-Exporter
"
DEPEND="${RDEPEND}
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
!minimal? ( >=virtual/perl-ExtUtils-MakeMaker-7.0.0 )
test? (

@ -1,31 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=CAPOEIRAB
DIST_VERSION=9999.27
inherit perl-module
DESCRIPTION="Simple and Efficient Reading/Writing/Modifying of Complete Files"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
virtual/perl-Carp
>=virtual/perl-Exporter-5.570.0
>=virtual/perl-File-Spec-3.10.0
virtual/perl-File-Temp
"
DEPEND="${RDEPEND}
test? (
>=virtual/perl-Scalar-List-Utils-1.0.0
virtual/perl-Socket
virtual/perl-Test-Simple
)
"
mydoc="extras/slurp_article.pod"

@ -1,2 +1 @@
DIST File-Slurp-9999.27.tar.gz 37734 BLAKE2B 2e2589b834e1092a869a9527395d9ed589f0dafac99b13ca3e802c4bf159ebc55f7b28284a13effdcbd476b7c7d7727a9b25735dc9f9b1711a9ec63444d44888 SHA512 24a5e2b93f7fda65cbdf0e54687de3af511cfd3909dcf4c79610882bf4f119afdf2bd60de28fcb8d9155b94a29ca4f901e28930a810949e490ba1c584d7a6ee0
DIST File-Slurp-9999.32.tar.gz 34574 BLAKE2B d75d7253945908328124ef46f53d86fba7ba0751e87ae493f071b03844d17b969371d1b26fddbc94f4b788475b09b5ee76c3d2c0b6f1c0c64959da0be95dd0f0 SHA512 413337e0257e95e8e8d2aabf684bec81e746000a741809935b058490b8c42b494064f724e618b250330d8bb67a0a7a2a5adad17e3e6c96d4b193531a192a4d56

@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DIST_AUTHOR=RWSTAUNER
DIST_VERSION=1.004
@ -10,11 +10,11 @@ inherit perl-module
DESCRIPTION="Use native OS implementation of File::Spec from a subclass"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="virtual/perl-File-Spec"
DEPEND="${RDEPEND}
RDEPEND="
virtual/perl-File-Spec
"
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
>=virtual/perl-CPAN-Meta-2.120.900

@ -1,22 +1,20 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DIST_AUTHOR=MGRABNAR
DIST_VERSION=1.3
inherit perl-module
DESCRIPTION="Perl extension for reading from continously updated files"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
IUSE=""
RDEPEND="
>=virtual/perl-Time-HiRes-1.120.0
"
DEPEND="${RDEPEND}
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
"

@ -1,17 +1,15 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DIST_AUTHOR=FTASSIN
DIST_VERSION=0.05
inherit perl-module
DESCRIPTION="Disk space information"
SLOT="0"
KEYWORDS="amd64 ~ppc sparc x86"
IUSE=""
src_test() {
#https://rt.cpan.org/Ticket/Display.html?id=108971

@ -1,25 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
MODULE_AUTHOR=MIYAGAWA
MODULE_VERSION=0.12
inherit perl-module
DESCRIPTION="Simple and dumb file system watcher"
SLOT="0"
KEYWORDS="~alpha amd64 ~ia64 ppc ppc64 sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="dev-perl/Filter"
DEPEND="
test? (
${RDEPEND}
dev-perl/Test-SharedFork
)
"
SRC_TEST=do

@ -1,2 +1 @@
DIST Filesys-Notify-Simple-0.12.tar.gz 12935 BLAKE2B 835e45ca61fe7e624b5e14df16d897a56c8f108cc17a9002a8192f01f46a4542a9a6dce5c75ddce40323db87713cf1ddb59b8300be096bc1e8d195bc1436b4ee SHA512 3edb9a5087b82c87bea1b4092a3c7c264ec6f8da391052593e504b16392ea1a84771bbcbad21d623f727682cc6ab4474fe6a7e346c8bebe13f60d39e83594e2b
DIST Filesys-Notify-Simple-0.14.tar.gz 13429 BLAKE2B 303b1576f1f98fe016ad31e435683cc7535f3f0270c358a6ca5878d9872c792f2ead8aaa737f915bc27a605146a3f78353c8b5301da300448afa3f26bf7c709f SHA512 45fe097beb925e913af9c48704f5f550931c70673455258249127dff27abe1955e0e968f37c7c0f4c798a20be78b1055362c69ec2906e8e2633b21f68b198208

@ -1,23 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=RURBAN
DIST_VERSION=1.57
DIST_EXAMPLES=("examples/*")
inherit perl-module
DESCRIPTION="Interface for creation of Perl Filters"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND="
virtual/perl-ExtUtils-MakeMaker
"
src_test() {
perl_rm_files t/z_*.t
perl-module_src_test
}

@ -1,2 +1 @@
DIST Filter-1.57.tar.gz 92255 BLAKE2B 33eaa676892f189e8e6ad8a86bd1a3769c3f7db08b65b7d0b349a884be44f1e098dc15c5c178406575c3c553af79a5c5ad6dbb58d0a5768eb96c81b378dfc050 SHA512 6e0fe52ace85b329a73a79522a8227b64017701c9949d89271257bc6c50c263074084a50c500a3250959617707261ea71abd2432678c0741f4ad713e03ddefec
DIST Filter-1.60.tar.gz 95351 BLAKE2B ac7a53644e4423a5b34432f11a9354ff5ee9cbf56a3d790d86ec7ef2c5dc7468d6ef793b4c23b8258c8b8aba74198700c0b8800bdfdfea9fb890b6c78be20e80 SHA512 be6ecb9d37c8384de34e842e1e46a24c43592cb1995178ef7a100ef8b028e506d26c044ae9fd1e4672344cbc2dae06b9136b27eced5470cfce683017129cf248

@ -1,10 +1,10 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=8
DIST_AUTHOR=ECOCODE
DIST_VERSION=1.47
DIST_AUTHOR=BPSCHUCK
DIST_VERSION=1.51
DIST_EXAMPLES=( "Examples/*" )
inherit perl-module
@ -12,42 +12,62 @@ DESCRIPTION="Get stock and mutual fund quotes from various exchanges"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm64 ppc ~ppc64 x86"
IUSE="test"
RESTRICT="!test? ( test )"
# virtual/perl-Data-Dumper currently commented out in the code
KEYWORDS="~amd64"
RDEPEND="
dev-perl/CGI
virtual/perl-Carp
dev-perl/DateTime
dev-perl/DateTime-Format-Strptime
virtual/perl-Encode
virtual/perl-Exporter
dev-perl/HTML-Parser
dev-perl/HTML-TableExtract
dev-perl/HTML-Parser
dev-perl/HTML-TokeParser-Simple
dev-perl/HTML-Tree
dev-perl/HTTP-Cookies
dev-perl/HTTP-Message
dev-perl/JSON
dev-perl/JSON-Parse
dev-perl/LWP-Protocol-https
dev-perl/libwww-perl
virtual/perl-Module-Load
dev-perl/Mozilla-CA
virtual/perl-Scalar-List-Utils
dev-perl/Spreadsheet-XLSX
dev-perl/String-Util
dev-perl/Text-Template
virtual/perl-Time-Piece
dev-perl/Try-Tiny
dev-perl/URI
dev-perl/Web-Scraper
dev-perl/XML-LibXML
virtual/perl-if
"
DEPEND="${RDEPEND}
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
virtual/perl-Data-Dumper
dev-perl/Date-Manip
dev-perl/Date-Range
dev-perl/Date-Simple
dev-perl/DateTime-Format-ISO8601
virtual/perl-File-Spec
virtual/perl-Test-Simple
)
"
PERL_RM_FILES=(
t/01-pod.t
t/02-pod-coverage.t
t/03-kwalitee.t
t/04-critic.t
t/author-pod-syntax.t
lib/GPATH
lib/GRTAGS
lib/GTAGS
)
src_test() {
perl_rm_files t/01-pod.t t/02-pod-coverage.t t/03-kwalitee.t \
t/04-critic.t t/author-pod-syntax.t
if ! has network ${DIST_TEST_OVERRIDE:-${DIST_TEST:-do parallel}}; then
einfo "Disabling network tests without DIST_TEST_OVERRIDE=~network"
else

@ -1,2 +1,2 @@
DIST Finance-Quote-1.47.tar.gz 270335 BLAKE2B 585ab3736b7ea448b083f4dbbed460ac442fb30285041b7b0bf2a52d6b2d533a8d1eb1d9bfa72cc1cd7a3d4664d2cb5104eb539ecd6b1042083548b8ef605333 SHA512 a900ed3e305edb8c713dc4a885b912ad9a9f873cb501d66d393a39aacd8a980af1bd4fb0fdf5bce8e2b2aeec744e811b861a2803a6fb0d5c71ab6b8d1c3a57f7
DIST Finance-Quote-1.49.tar.gz 274659 BLAKE2B 1fb4523a576960b48b855807945ef79bb18f68c82c5cf8eece8dcea910c3bc2669dd07e635d74cd0a85639d9eff27337687faf5a4fc213bedde4ee720d6e6149 SHA512 5b4b8836e1529409f1f6aa41345bf906ba2cc1c1b44e89b59765a883cf0db082cef9df91a4eaa671e494f5e9a842c4e1fbfcc31e57964d74f7895f3e25c4d91c
DIST Finance-Quote-1.51.tar.gz 231156 BLAKE2B 5472e19863a752fd9c610fccf0b6a383f441c89d88ad50fea50fe3067294ba8463b0367b52da3fa471fa7df3944ab4f23d4624644fb52a27c9f0a335beebc6d4 SHA512 163b87b9905fb5d2becbb1de285a180c98328295b6f3ba6ddc2148993303e00bad751505add47fc540b203fd24b4c9385bb7a8c7ef67b97e3bad5f1e90ea6218

@ -0,0 +1,23 @@
# Copyright 2020-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DIST_AUTHOR=CORION
DIST_VERSION=0.25
inherit perl-module
DESCRIPTION="CSS Selector to XPath compiler"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
virtual/perl-Carp
virtual/perl-Exporter
"
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
virtual/perl-Encode
)
"

@ -0,0 +1 @@
DIST HTML-Selector-XPath-0.25.tar.gz 32420 BLAKE2B 81eee33c711b1b4a6f6dd7d05baa916bc0c559ffb5ef16d93d24c72289a22ee6cc8d4d3222d7f930d197aa9be4d000ec2d1f7cb355fe52b5e0cb0e81a0843d52 SHA512 91430ae4898908c65ee2c527fd589fed16ac2699af028a51949c6fe2a7c84552dfdd370ad35a0fea4564914b1799b65efbf7025ace0fd9aa06e47081ce9b3bc8

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>perl@gentoo.org</email>
<name>Gentoo Perl Project</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,22 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DIST_AUTHOR=MIROD
DIST_VERSION=0.14
inherit perl-module
DESCRIPTION="add XPath support to HTML::TreeBuilder"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
dev-perl/HTML-Tree
virtual/perl-Scalar-List-Utils
>=dev-perl/XML-XPathEngine-0.120.0
"
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
"

@ -0,0 +1 @@
DIST HTML-TreeBuilder-XPath-0.14.tar.gz 10486 BLAKE2B 736fea2897ed43fe9ec451e4619b9f6462d49e5f542bc5eb7aa4bfd7b35ca2ba407d0053ea6be014a54897acf295326aed1e1936dd49d42aaab1dd6e965c7150 SHA512 36d68ff08e4cac37e0d596fdcc7c1e84ba4fbecd23f41fccbce43e223750d35a1a7d51a3456397e3037c286fa093c3cd7dd825a07ea90a0c69ed6545ace4b727

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>perl@gentoo.org</email>
<name>Gentoo Perl Project</name>
</maintainer>
</pkgmetadata>

Binary file not shown.

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

Loading…
Cancel
Save