mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-18 02:16:59 +02:00
Merge pull request #1277 from flatcar-linux/krnowak/python-transition2
Python transition: clean up stale keywords
This commit is contained in:
commit
51c47c610c
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{6,7} )
|
PYTHON_COMPAT=( python3_{7,8,9} )
|
||||||
inherit autotools flag-o-matic multilib-minimal python-any-r1 systemd toolchain-funcs
|
inherit autotools flag-o-matic multilib-minimal python-any-r1 systemd toolchain-funcs
|
||||||
|
|
||||||
MY_P="${P/mit-}"
|
MY_P="${P/mit-}"
|
@ -31,9 +31,9 @@ RDEPEND="
|
|||||||
S="${WORKDIR}/compute-image-packages-${PV}"
|
S="${WORKDIR}/compute-image-packages-${PV}"
|
||||||
|
|
||||||
src_compile() {
|
src_compile() {
|
||||||
(cd "${S}" && exec python setup.py build)
|
(cd "${S}" && exec python3 setup.py build)
|
||||||
}
|
}
|
||||||
|
|
||||||
src_install() {
|
src_install() {
|
||||||
(cd "${S}" && exec python setup.py install -O1 --skip-build --root "${D}")
|
(cd "${S}" && exec python3 setup.py install -O1 --skip-build --root "${D}")
|
||||||
}
|
}
|
@ -1 +0,0 @@
|
|||||||
DIST qemu-6.1.0.tar.xz 111258808 BLAKE2B 412eecf6d39debd6089b26d3b22e5d25c6c8c30d2eaf31b17c25cc2b3a1b10794a30218dfb151c78801aa295255aa974b297f1fe05b93f14334f203c2af5ccee SHA512 3378ae21c75b77ee6a759827f1fcf7b2a50a0fef07e3b0e89117108022a8d8655fa977e4d65596f4f24f7c735c6594d44b0c6f69732ea4465e88a7406b1d5d3c
|
|
@ -1,3 +0,0 @@
|
|||||||
KERNEL=="kvm", GROUP="kvm", MODE="0660"
|
|
||||||
KERNEL=="vhost-net", GROUP="kvm", MODE="0660", OPTIONS+="static_node=vhost-net"
|
|
||||||
KERNEL=="vhost-vsock", GROUP="kvm", MODE="0660", OPTIONS+="static_node=vhost-vsock"
|
|
@ -1,14 +0,0 @@
|
|||||||
# This should have the following permissions: root:qemu 0640
|
|
||||||
|
|
||||||
# allow br0
|
|
||||||
# Uncommenting the above would allow users in the 'qemu' group
|
|
||||||
# to add devices to 'br0'
|
|
||||||
|
|
||||||
# allow virbr0
|
|
||||||
# Uncommenting the above would allow users in the 'qemu' group
|
|
||||||
# to add devices to 'virbr0'
|
|
||||||
|
|
||||||
# include /etc/qemu/bob.conf
|
|
||||||
# Uncommenting the above would allow users in the 'bob' group
|
|
||||||
# to have permissions defined in it, iff it has the following
|
|
||||||
# permissions: root:bob 0640
|
|
@ -1,11 +0,0 @@
|
|||||||
--- qemu-2.11.1/include/disas/capstone.h 2018-02-14 22:53:22.000000000 +0100
|
|
||||||
+++ qemu-2.11.1/include/disas/capstone.h 2018-02-17 20:12:12.754703951 +0100
|
|
||||||
@@ -3,7 +3,7 @@
|
|
||||||
|
|
||||||
#ifdef CONFIG_CAPSTONE
|
|
||||||
|
|
||||||
-#include <capstone.h>
|
|
||||||
+#include <capstone/capstone.h>
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
|||||||
Do not use system's 'qemu-keymap' in native case.
|
|
||||||
--- a/meson.build
|
|
||||||
+++ b/meson.build
|
|
||||||
@@ -337,6 +337,8 @@ if 'CONFIG_LIBCAP_NG' in config_host
|
|
||||||
endif
|
|
||||||
if get_option('xkbcommon').auto() and not have_system and not have_tools
|
|
||||||
xkbcommon = not_found
|
|
||||||
+elif get_option('xkbcommon').disabled()
|
|
||||||
+ xkbcommon = not_found
|
|
||||||
else
|
|
||||||
xkbcommon = dependency('xkbcommon', required: get_option('xkbcommon'),
|
|
||||||
method: 'pkg-config', static: enable_static)
|
|
||||||
--- a/pc-bios/keymaps/meson.build
|
|
||||||
+++ b/pc-bios/keymaps/meson.build
|
|
||||||
@@ -33,7 +33,9 @@ keymaps = {
|
|
||||||
'tr': '-l tr',
|
|
||||||
}
|
|
||||||
|
|
||||||
-if meson.is_cross_build() or 'CONFIG_XKBCOMMON' not in config_host
|
|
||||||
+if meson.is_cross_build()
|
|
||||||
native_qemu_keymap = find_program('qemu-keymap', required: false, disabler: true)
|
|
||||||
+elif get_option('xkbcommon').disabled()
|
|
||||||
+ native_qemu_keymap = not_found
|
|
||||||
else
|
|
||||||
native_qemu_keymap = qemu_keymap
|
|
@ -1,14 +0,0 @@
|
|||||||
Allow MAKE='make V=1' and similar.
|
|
||||||
|
|
||||||
https://bugs.gentoo.org/795678
|
|
||||||
--- a/configure
|
|
||||||
+++ b/configure
|
|
||||||
@@ -1953,7 +1953,7 @@ if test -z "$python"
|
|
||||||
then
|
|
||||||
error_exit "Python not found. Use --python=/path/to/python"
|
|
||||||
fi
|
|
||||||
-if ! has "$make"
|
|
||||||
+if ! has $make
|
|
||||||
then
|
|
||||||
error_exit "GNU make ($make) not found"
|
|
||||||
fi
|
|
@ -1,21 +0,0 @@
|
|||||||
commit 080832e4f4801a28bd1170c49e61f6a0f5f05d03
|
|
||||||
Author: Paolo Bonzini <pbonzini@redhat.com>
|
|
||||||
Date: Tue Sep 7 12:45:12 2021 +0200
|
|
||||||
|
|
||||||
ebpf: only include in system emulators
|
|
||||||
|
|
||||||
eBPF files are being included in user emulators, which is useless and
|
|
||||||
also breaks compilation because ebpf/trace-events is only processed
|
|
||||||
if a system emulator is included in the build.
|
|
||||||
|
|
||||||
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/566
|
|
||||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
||||||
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/ebpf/meson.build b/ebpf/meson.build
|
|
||||||
index 9cd0635370..2dd0fd8948 100644
|
|
||||||
--- a/ebpf/meson.build
|
|
||||||
+++ b/ebpf/meson.build
|
|
||||||
@@ -1 +1 @@
|
|
||||||
-common_ss.add(when: libbpf, if_true: files('ebpf_rss.c'), if_false: files('ebpf_rss-stub.c'))
|
|
||||||
+softmmu_ss.add(when: libbpf, if_true: files('ebpf_rss.c'), if_false: files('ebpf_rss-stub.c'))
|
|
@ -1,26 +0,0 @@
|
|||||||
Forward-ported from original patch for 5.2.0.
|
|
||||||
|
|
||||||
diff --git a/configure b/configure
|
|
||||||
index da2501489f..4660ee3ee5 100755
|
|
||||||
--- a/configure
|
|
||||||
+++ b/configure
|
|
||||||
@@ -516,6 +516,7 @@ ld="${LD-${cross_prefix}ld}"
|
|
||||||
ranlib="${RANLIB-${cross_prefix}ranlib}"
|
|
||||||
nm="${NM-${cross_prefix}nm}"
|
|
||||||
strip="${STRIP-${cross_prefix}strip}"
|
|
||||||
+strings="${STRINGS-${cross_prefix}strings}"
|
|
||||||
windres="${WINDRES-${cross_prefix}windres}"
|
|
||||||
pkg_config_exe="${PKG_CONFIG-${cross_prefix}pkg-config}"
|
|
||||||
query_pkg_config() {
|
|
||||||
@@ -2380,9 +2381,9 @@ int main(int argc, char *argv[])
|
|
||||||
EOF
|
|
||||||
|
|
||||||
if compile_prog ; then
|
|
||||||
- if strings -a $TMPE | grep -q BiGeNdIaN ; then
|
|
||||||
+ if $strings -a $TMPE | grep -q BiGeNdIaN ; then
|
|
||||||
bigendian="yes"
|
|
||||||
- elif strings -a $TMPE | grep -q LiTtLeEnDiAn ; then
|
|
||||||
+ elif $strings -a $TMPE | grep -q LiTtLeEnDiAn ; then
|
|
||||||
bigendian="no"
|
|
||||||
else
|
|
||||||
echo big/little test failed
|
|
@ -1,64 +0,0 @@
|
|||||||
#!/sbin/openrc-run
|
|
||||||
# Copyright 1999-2018 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
# Enable automatic non-native program execution by the kernel.
|
|
||||||
|
|
||||||
# Defaulting to OC should be safe because it comes down to:
|
|
||||||
# - do we trust the interp itself to not be malicious? yes; we built it.
|
|
||||||
# - do we trust the programs we're running? ish; same permission as native
|
|
||||||
# binaries apply. so if user can do bad stuff natively, cross isn't worse.
|
|
||||||
: ${QEMU_BINFMT_FLAGS:=OC}
|
|
||||||
|
|
||||||
depend() {
|
|
||||||
after procfs
|
|
||||||
}
|
|
||||||
|
|
||||||
start() {
|
|
||||||
ebegin "Registering qemu-user binaries (flags: ${QEMU_BINFMT_FLAGS})"
|
|
||||||
|
|
||||||
if [ ! -d /proc/sys/fs/binfmt_misc ] ; then
|
|
||||||
modprobe -q binfmt_misc
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -d /proc/sys/fs/binfmt_misc ] ; then
|
|
||||||
eend 1 "You need support for 'misc binaries' in your kernel!"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f /proc/sys/fs/binfmt_misc/register ] ; then
|
|
||||||
mount -t binfmt_misc -o nodev,noexec,nosuid \
|
|
||||||
binfmt_misc /proc/sys/fs/binfmt_misc >/dev/null 2>&1
|
|
||||||
eend $? || return
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Probe the native cpu type so we don't try registering them.
|
|
||||||
local cpu="$(uname -m)"
|
|
||||||
case "${cpu}" in
|
|
||||||
armv[4-9]*)
|
|
||||||
cpu="arm"
|
|
||||||
;;
|
|
||||||
i386|i486|i586|i686|i86pc|BePC|x86_64)
|
|
||||||
cpu="i386"
|
|
||||||
;;
|
|
||||||
m68k)
|
|
||||||
cpu="m68k"
|
|
||||||
;;
|
|
||||||
mips*)
|
|
||||||
cpu="mips"
|
|
||||||
;;
|
|
||||||
"Power Macintosh"|ppc|ppc64)
|
|
||||||
cpu="ppc"
|
|
||||||
;;
|
|
||||||
s390*)
|
|
||||||
cpu="s390"
|
|
||||||
;;
|
|
||||||
sh*)
|
|
||||||
cpu="sh"
|
|
||||||
;;
|
|
||||||
sparc*)
|
|
||||||
cpu="sparc"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Register the interpreter for each cpu except for the native one.
|
|
@ -1,14 +0,0 @@
|
|||||||
eend 0
|
|
||||||
}
|
|
||||||
|
|
||||||
stop() {
|
|
||||||
# We unregister everything in the "qemu-xxx" namespace.
|
|
||||||
ebegin "Unregistering qemu-user binaries"
|
|
||||||
local f
|
|
||||||
for f in /proc/sys/fs/binfmt_misc/qemu-* ; do
|
|
||||||
if [ -f "${f}" ] ; then
|
|
||||||
echo '-1' > "${f}"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
eend 0
|
|
||||||
}
|
|
@ -1,70 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="person">
|
|
||||||
<email>tamiko@gentoo.org</email>
|
|
||||||
<name>Matthias Maier</name>
|
|
||||||
</maintainer>
|
|
||||||
<maintainer type="person">
|
|
||||||
<email>zlogene@gentoo.org</email>
|
|
||||||
<name>Mikle Kolyada</name>
|
|
||||||
</maintainer>
|
|
||||||
<maintainer type="project">
|
|
||||||
<email>virtualization@gentoo.org</email>
|
|
||||||
<name>Gentoo Virtualization Project</name>
|
|
||||||
</maintainer>
|
|
||||||
<use>
|
|
||||||
<flag name="accessibility">Adds support for braille displays using brltty</flag>
|
|
||||||
<flag name="aio">Enables support for Linux's Async IO</flag>
|
|
||||||
<flag name="alsa">Enable alsa output for sound emulation</flag>
|
|
||||||
<flag name="bpf">Enable eBPF support for RSS implementation.</flag>
|
|
||||||
<flag name="capstone">Enable disassembly support with <pkg>dev-libs/capstone</pkg></flag>
|
|
||||||
<flag name="curl">Support ISOs / -cdrom directives via HTTP or HTTPS.</flag>
|
|
||||||
<flag name="fdt">Enables firmware device tree support</flag>
|
|
||||||
<flag name="fuse">Enables FUSE block device export</flag>
|
|
||||||
<flag name="glusterfs">Enables GlusterFS cluster fileystem via
|
|
||||||
<pkg>sys-cluster/glusterfs</pkg></flag>
|
|
||||||
<flag name="gnutls">Enable TLS support for the VNC console server.
|
|
||||||
For 1.4 and newer this also enables WebSocket support.
|
|
||||||
For 2.0 through 2.3 also enables disk quorum support.</flag>
|
|
||||||
<flag name="iscsi">Enable direct iSCSI support via
|
|
||||||
<pkg>net-libs/libiscsi</pkg> instead of indirectly via the Linux
|
|
||||||
block layer that <pkg>sys-block/open-iscsi</pkg> does.</flag>
|
|
||||||
<flag name="io-uring">Enable efficient I/O via <pkg>sys-libs/liburing</pkg>.</flag>
|
|
||||||
<flag name="multipath">Enable multipath persistent reservation passthrough via
|
|
||||||
<pkg>sys-fs/multipath-tools</pkg>.</flag>
|
|
||||||
<flag name="ncurses">Enable the ncurses-based console</flag>
|
|
||||||
<flag name="nfs">Enable NFS support</flag>
|
|
||||||
<flag name="numa">Enable NUMA support</flag>
|
|
||||||
<flag name="pin-upstream-blobs">Pin the versions of BIOS firmware to the version included in the upstream release.
|
|
||||||
This is needed to sanely support migration/suspend/resume/snapshotting/etc... of instances.
|
|
||||||
When the blobs are different, random corruption/bugs/crashes/etc... may be observed.</flag>
|
|
||||||
<flag name="plugins">Enable qemu plugin API via shared library loading.</flag>
|
|
||||||
<flag name="pulseaudio">Enable pulseaudio output for sound emulation</flag>
|
|
||||||
<flag name="rbd">Enable rados block device backend support, see https://docs.ceph.com/en/mimic/rbd/qemu-rbd/</flag>
|
|
||||||
<flag name="sdl">Enable the SDL-based console</flag>
|
|
||||||
<flag name="sdl-image">SDL Image support for icons</flag>
|
|
||||||
<flag name="slirp">Enable TCP/IP in hypervisor via <pkg>net-libs/libslirp</pkg></flag>
|
|
||||||
<flag name="spice">Enable Spice protocol support via <pkg>app-emulation/spice</pkg></flag>
|
|
||||||
<flag name="ssh">Enable SSH based block device support via <pkg>net-libs/libssh2</pkg></flag>
|
|
||||||
<flag name="static-user">Build the User targets as static binaries</flag>
|
|
||||||
<flag name="static">Build the User and Software MMU (system) targets as well as tools as static binaries</flag>
|
|
||||||
<flag name="systemtap">Enable SystemTAP/DTrace tracing</flag>
|
|
||||||
<flag name="jemalloc">Enable jemalloc allocator support</flag>
|
|
||||||
<flag name="jpeg">Enable jpeg image support for the VNC console server</flag>
|
|
||||||
<flag name="png">Enable png image support for the VNC console server</flag>
|
|
||||||
<flag name="usb">Enable USB passthrough via <pkg>dev-libs/libusb</pkg></flag>
|
|
||||||
<flag name="usbredir">Use <pkg>sys-apps/usbredir</pkg> to redirect USB devices to another machine over TCP</flag>
|
|
||||||
<flag name="vde">Enable VDE-based networking</flag>
|
|
||||||
<flag name="vhost-net">Enable accelerated networking using vhost-net, see https://www.linux-kvm.org/page/VhostNet</flag>
|
|
||||||
<flag name="vhost-user-fs">Enable shared file system access using the FUSE protocol carried over virtio.</flag>
|
|
||||||
<flag name="virgl">Enable experimental Virgil 3d (virtual software GPU)</flag>
|
|
||||||
<flag name="virtfs">Enable VirtFS via virtio-9p-pci / fsdev. See https://wiki.qemu.org/Documentation/9psetup</flag>
|
|
||||||
<flag name="vte">Enable terminal support (<pkg>x11-libs/vte</pkg>) in the GTK+ interface</flag>
|
|
||||||
<flag name="xattr">Add support for getting and setting POSIX extended attributes, through
|
|
||||||
<pkg>sys-apps/attr</pkg>. Requisite for the virtfs backend.</flag>
|
|
||||||
<flag name="xen">Enables support for Xen backends</flag>
|
|
||||||
<flag name="xfs">Support xfsctl() notification and syncing for XFS backed
|
|
||||||
virtual disks.</flag>
|
|
||||||
</use>
|
|
||||||
</pkgmetadata>
|
|
@ -1,912 +0,0 @@
|
|||||||
# Copyright 1999-2021 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="7"
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python{3_6,3_7} )
|
|
||||||
PYTHON_REQ_USE="ncurses,readline"
|
|
||||||
|
|
||||||
FIRMWARE_ABI_VERSION="6.1.0"
|
|
||||||
|
|
||||||
inherit linux-info toolchain-funcs python-r1 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 bpf 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
|
|
||||||
rx
|
|
||||||
tricore
|
|
||||||
"
|
|
||||||
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 )
|
|
||||||
bpf? ( dev-libs/libbpf:= )
|
|
||||||
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}]
|
|
||||||
dev-python/sphinx_rtd_theme[${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-disable-keymap.patch
|
|
||||||
"${FILESDIR}"/${PN}-6.0.0-make.patch
|
|
||||||
"${FILESDIR}"/${PN}-6.1.0-strings.patch
|
|
||||||
"${FILESDIR}"/${P}-automagic-libbpf.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}"/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_softmmu bpf)
|
|
||||||
$(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
|
|
||||||
}
|
|
@ -15,7 +15,7 @@ IUSE=""
|
|||||||
# Depending on specific version of python-oem allows us to notice when
|
# Depending on specific version of python-oem allows us to notice when
|
||||||
# we update the major version of python and then to make sure that we
|
# we update the major version of python and then to make sure that we
|
||||||
# install the package in correctly versioned site-packages directory.
|
# install the package in correctly versioned site-packages directory.
|
||||||
DEP_PYVER="3.6"
|
DEP_PYVER="3.9"
|
||||||
|
|
||||||
RDEPEND="
|
RDEPEND="
|
||||||
dev-lang/python-oem:${DEP_PYVER}
|
dev-lang/python-oem:${DEP_PYVER}
|
@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit multilib python-any-r1 systemd toolchain-funcs
|
inherit multilib python-any-r1 systemd toolchain-funcs
|
||||||
|
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
inherit python-any-r1 systemd
|
inherit python-any-r1 systemd
|
||||||
|
|
||||||
RTM_NAME="NSS_${PV//./_}_RTM"
|
RTM_NAME="NSS_${PV//./_}_RTM"
|
1
sdk_container/src/third_party/coreos-overlay/changelog/updates/2021-12-10-python-oem.md
vendored
Normal file
1
sdk_container/src/third_party/coreos-overlay/changelog/updates/2021-12-10-python-oem.md
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
- Python for OEM images (Azure) ([3.9.8](https://www.python.org/downloads/release/python-398/))
|
@ -14,7 +14,7 @@ else
|
|||||||
KEYWORDS="amd64 arm arm64 x86"
|
KEYWORDS="amd64 arm arm64 x86"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit cros-workon systemd python-any-r1
|
inherit cros-workon systemd python-any-r1
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ else
|
|||||||
KEYWORDS="amd64 arm arm64 x86"
|
KEYWORDS="amd64 arm arm64 x86"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit cros-workon python-single-r1
|
inherit cros-workon python-single-r1
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ RDEPEND="${RDEPEND}
|
|||||||
app-arch/sharutils
|
app-arch/sharutils
|
||||||
app-arch/unzip
|
app-arch/unzip
|
||||||
app-emulation/qemu
|
app-emulation/qemu
|
||||||
=dev-lang/python-2*
|
=dev-lang/python-3*
|
||||||
dev-python/setuptools
|
dev-python/setuptools
|
||||||
dev-lang/nasm
|
dev-lang/nasm
|
||||||
dev-lang/swig
|
dev-lang/swig
|
||||||
@ -48,7 +48,6 @@ RDEPEND="${RDEPEND}
|
|||||||
dev-libs/libyaml
|
dev-libs/libyaml
|
||||||
dev-libs/nspr
|
dev-libs/nspr
|
||||||
dev-libs/protobuf
|
dev-libs/protobuf
|
||||||
dev-python/ctypesgen
|
|
||||||
dev-python/mako
|
dev-python/mako
|
||||||
sys-devel/bc
|
sys-devel/bc
|
||||||
dev-util/gdbus-codegen
|
dev-util/gdbus-codegen
|
||||||
|
@ -22,6 +22,7 @@ DEPEND="
|
|||||||
app-emulation/acbuild
|
app-emulation/acbuild
|
||||||
app-emulation/actool
|
app-emulation/actool
|
||||||
app-emulation/open-vmdk
|
app-emulation/open-vmdk
|
||||||
|
app-eselect/eselect-python
|
||||||
app-misc/jq
|
app-misc/jq
|
||||||
app-shells/bash-completion
|
app-shells/bash-completion
|
||||||
coreos-base/hard-host-depends
|
coreos-base/hard-host-depends
|
||||||
@ -34,7 +35,7 @@ DEPEND="
|
|||||||
dev-util/boost-build
|
dev-util/boost-build
|
||||||
dev-util/catalyst
|
dev-util/catalyst
|
||||||
dev-util/checkbashisms
|
dev-util/checkbashisms
|
||||||
dev-util/dwarves
|
dev-util/pahole
|
||||||
dev-util/patchelf
|
dev-util/patchelf
|
||||||
dev-vcs/repo
|
dev-vcs/repo
|
||||||
net-dns/bind-tools
|
net-dns/bind-tools
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
DIST Python-3.6.5.tar.xz 17049912 BLAKE2B f393e9563a18a46c457afcd2e174d9eacda20fe2b0ae5461e11c582fa4d27b85c01bbe7b602f45511b6b44f635c6330205b12fb3e8325ffd07e87b78a8258889 SHA512 6b26fcd296b9bd8e67861eff10d14db7507711ddba947288d16d6def53135c39326b7f969c04bb2b2993f924d9e7ad3f5c5282a3915760bc0885cf0a8ea5eb51
|
DIST Python-3.9.8.tar.xz 19149464 BLAKE2B 739eb22bae8b44cf5be9a24ca6ecacb80eaca65684abf1fef18b7adcac9adede2eff60e8a9ac5db2672511d180d6079c39e2ff2901ab454c0876ae8e1bfe96cc SHA512 5d5b46a242525b2e6a7f9c69c63c6d7cd985e1443a7d9b716107e75f14fef7b5c9c2e5e8a90adbbbf5f7a8b90a483d01e18c1732470e6e54b611b5aba9f99fe1
|
||||||
DIST python-gentoo-patches-3.6.4.tar.xz 12888 BLAKE2B 7cf49ae22df53e855f2e99df51686b5d4bd0da82ef4c22836e24726ea9ed561808352c0305a5659b052d38b843f1ff61b6466a7bc3673b7e5cfb4d81d22fa4bc SHA512 90a1b685f2539872ffd67f96581f70145b7afaf18af19f4a7f4a61214103d2a10bf0069c1769dac229ae011fceaf8538f041082b33c1671905246d018d184dd7
|
DIST python-gentoo-patches-3.9.8.tar.xz 13192 BLAKE2B 995bead7e87b1d2eb9984012065c0f752d51e5a78dd9019270e071f83660cdab71c39e5be0104919f5af9089dede71d9c918a521f76e67c6ef1aeab5ffb58991 SHA512 80dfa3766bb5546924a5fccf4f469ce409cb8a4b0873c3d2fb737b3eb27b7c2b29337e0179624bbe077273b8e475f7921d6479ca7eb8e31ba423d0cea2f3d1cf
|
||||||
|
@ -1,65 +1,80 @@
|
|||||||
Modifications made:
|
Modifications made:
|
||||||
|
|
||||||
- Drop python updater and eselect python stuff (so the pkg_ functions).
|
- We are not running any tests, so drop the `test` use flag and
|
||||||
|
`src_test` function. Drop also `pkg_pretend` and `pkg_setup`
|
||||||
|
functions as they were only doing some stuff if `test` use flag was
|
||||||
|
enabled.
|
||||||
|
|
||||||
- Drop src_test and the test use flag.
|
- Fix a path to a patchset that was using a `${PN}` variable, but
|
||||||
|
expected it to be `python` while our package is actually
|
||||||
- Rename one patch in PATCHES variable, so I don't need to rename the
|
`python-oem`.
|
||||||
file (the name in ebuild was using `${PN}`, which in
|
|
||||||
`dev-lang/python` expands to `python`, whereas in
|
|
||||||
`dev-lang/python-oem` it would expand to `python-oem`).
|
|
||||||
|
|
||||||
- Drop the following use flags and simplify the ebuild assuming that
|
- Drop the following use flags and simplify the ebuild assuming that
|
||||||
they were disabled: examples, gdbm, libressl, ncurses, sqlite, ssl,
|
they were disabled: `bluetooth examples gdbm ncurses readline sqlite
|
||||||
tk, wininst.
|
ssl tk wininst`.
|
||||||
|
|
||||||
- Drop the following use flags and simplify the ebuild assuming that
|
- Drop the following use flags and simplify the ebuild assuming that
|
||||||
they were enabled: build, ipv6, threads.
|
they were enabled: `build`.
|
||||||
|
|
||||||
- Drop xml use flag, but keep the internal copies of expat, do not
|
- Drop `xml` use flag. Drop the dependency on expat, but instead keep
|
||||||
disable _elementtree and pyexpat modules and tell the configure
|
the internal copy of expat, so we keep `_elementtree` and `pyexpat`
|
||||||
script to use the internal stuff.
|
modules enabled. Finally tell the configure script to use the
|
||||||
|
internal stuff (by passing the `--without-system-expat` flag).
|
||||||
|
|
||||||
- Keep using internal libffi, instead of depending on system-provided
|
- Drop the dependency on libffi, instead keep using internal libffi
|
||||||
libffi.
|
and tell the configure script to use internal stuff (by passing the
|
||||||
|
`--without-system-ffi` flag).
|
||||||
|
|
||||||
- Move RDEPEND to DEPEND, so RDEPEND remains empty. OEM packages are
|
- Rename `RDEPEND` to `DEPEND`, so `RDEPEND` remains empty. OEM
|
||||||
installed after prod images are pruned of the previously installed
|
packages are installed after production images are pruned of the
|
||||||
package database.
|
previously installed package database.
|
||||||
|
|
||||||
- Make the following changes in configure flags:
|
- Make the following changes in configure flags:
|
||||||
|
|
||||||
- Add --prefix=/usr/share/oem/python to the myeconfargs variable.
|
- Add `--prefix=/usr/share/oem/python` to the `myeconfargs` variable.
|
||||||
|
|
||||||
- Change --enable-shared to --disable-shared.
|
- To make sure that python library ends up where we want (for
|
||||||
|
example, in `lib64` instead of `lib`, because in this prefix, we
|
||||||
|
have no symlinks from `lib` to `lib64`), add
|
||||||
|
`--with-platlibdir=$(get_libdir)` to the `myeconfargs` variable.
|
||||||
|
|
||||||
- Set --mandir, --infodir and --includedir to some subdirectory of
|
- Change `--enable-shared` to `--disable-shared`.
|
||||||
/discard, so during installation this could be easily removed.
|
|
||||||
|
- Set `--mandir`, `--infodir` and `--includedir` to some subdirectory of
|
||||||
|
`/discard`, so during installation this could be easily removed.
|
||||||
|
|
||||||
|
- Drop `--enable-loadable-sqlite-extensions` flag.
|
||||||
|
|
||||||
- Export some configure variables for the cross-compilation:
|
- Export some configure variables for the cross-compilation:
|
||||||
ac_cv_file__dev_ptc and ac_cv_file__dev_ptmx. If not done, build
|
`ac_cv_file__dev_ptc` and `ac_cv_file__dev_ptmx`. If not done, build
|
||||||
will fail with a message saying that these should be set to either
|
will fail with a message saying that these should be set to either
|
||||||
yes or no.
|
yes or no.
|
||||||
|
|
||||||
- Simplify src_install:
|
- Drop pax stuff (search for `pax-utils` and `pax-mark`) - it's noop
|
||||||
|
on Flatcar.
|
||||||
|
|
||||||
- Replace the hardcoded ${ED}/usr/bin with bindir variable set to
|
- Simplify `src_install`:
|
||||||
${ED}/usr/share/oem/python/bin.
|
|
||||||
|
|
||||||
- Create versionless links (python and python3) to python executable.
|
- Replace the hardcoded `${ED}/usr` with `${ED}/usr/share/oem/python`.
|
||||||
|
|
||||||
- Drop sed stuff mucking with LDFLAGS.
|
- Drop sed stuff mucking with `LDFLAGS`.
|
||||||
|
|
||||||
- Drop collision fixes.
|
- Drop collision fixes.
|
||||||
|
|
||||||
- Drop ABIFLAGS hack.
|
- Drop `ABIFLAGS` hack.
|
||||||
|
|
||||||
- Do not install ACKS, HISTORY and NEWS files.
|
- Do not install ACKS, HISTORY and NEWS files.
|
||||||
|
|
||||||
- Drop gdb autoload stuff.
|
- Drop gdb autoload stuff.
|
||||||
|
|
||||||
- Drop pydoc.{conf,init} stuff.
|
- Drop `pydoc.{conf,init}` stuff.
|
||||||
|
|
||||||
|
- Drop `epython.py` stuff.
|
||||||
|
|
||||||
- Drop python-exec stuff.
|
- Drop python-exec stuff.
|
||||||
|
|
||||||
- Remove installed stuff in /discard.
|
- Just everything below that involves `${scriptdir}`.
|
||||||
|
|
||||||
|
- Create versionless links (python and python3) to python executable.
|
||||||
|
|
||||||
|
- Remove installed stuff in `/discard`.
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
--- a/setup.py
|
|
||||||
+++ b/setup.py
|
|
||||||
@@ -1364,7 +1364,7 @@ class PyBuildExt(build_ext):
|
|
||||||
else:
|
|
||||||
missing.extend(['resource', 'termios'])
|
|
||||||
|
|
||||||
- nis = self._detect_nis(inc_dirs, lib_dirs)
|
|
||||||
+ nis = None
|
|
||||||
if nis is not None:
|
|
||||||
exts.append(nis)
|
|
||||||
else:
|
|
@ -1,80 +0,0 @@
|
|||||||
From 90507018442f9adabb586fd3d0a0206b9c2f2f50 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
|
|
||||||
Date: Sun, 5 Jun 2016 08:18:01 +0200
|
|
||||||
Subject: [PATCH] distutils: make -OO enable both opt-1 and opt-2 optimization
|
|
||||||
|
|
||||||
Bug: http://bugs.python.org/issue27226
|
|
||||||
Bug: https://bugs.gentoo.org/585060
|
|
||||||
---
|
|
||||||
Lib/distutils/command/build_py.py | 8 ++++----
|
|
||||||
Lib/distutils/command/install_lib.py | 12 ++++++------
|
|
||||||
2 files changed, 10 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/Lib/distutils/command/build_py.py b/Lib/distutils/command/build_py.py
|
|
||||||
index cf0ca57..838d4e4 100644
|
|
||||||
--- a/Lib/distutils/command/build_py.py
|
|
||||||
+++ b/Lib/distutils/command/build_py.py
|
|
||||||
@@ -315,9 +315,9 @@ class build_py (Command):
|
|
||||||
if self.compile:
|
|
||||||
outputs.append(importlib.util.cache_from_source(
|
|
||||||
filename, optimization=''))
|
|
||||||
- if self.optimize > 0:
|
|
||||||
+ for opt in range(1, self.optimize + 1):
|
|
||||||
outputs.append(importlib.util.cache_from_source(
|
|
||||||
- filename, optimization=self.optimize))
|
|
||||||
+ filename, optimization=opt))
|
|
||||||
|
|
||||||
outputs += [
|
|
||||||
os.path.join(build_dir, filename)
|
|
||||||
@@ -387,8 +387,8 @@ class build_py (Command):
|
|
||||||
if self.compile:
|
|
||||||
byte_compile(files, optimize=0,
|
|
||||||
force=self.force, prefix=prefix, dry_run=self.dry_run)
|
|
||||||
- if self.optimize > 0:
|
|
||||||
- byte_compile(files, optimize=self.optimize,
|
|
||||||
+ for opt in range(1, self.optimize + 1):
|
|
||||||
+ byte_compile(files, optimize=opt,
|
|
||||||
force=self.force, prefix=prefix, dry_run=self.dry_run)
|
|
||||||
|
|
||||||
class build_py_2to3(build_py, Mixin2to3):
|
|
||||||
diff --git a/Lib/distutils/command/install_lib.py b/Lib/distutils/command/install_lib.py
|
|
||||||
index 6154cf0..049b662 100644
|
|
||||||
--- a/Lib/distutils/command/install_lib.py
|
|
||||||
+++ b/Lib/distutils/command/install_lib.py
|
|
||||||
@@ -24,8 +24,8 @@ class install_lib(Command):
|
|
||||||
# 2) compile .pyc only (--compile --no-optimize; default)
|
|
||||||
# 3) compile .pyc and "opt-1" .pyc (--compile --optimize)
|
|
||||||
# 4) compile "opt-1" .pyc only (--no-compile --optimize)
|
|
||||||
- # 5) compile .pyc and "opt-2" .pyc (--compile --optimize-more)
|
|
||||||
- # 6) compile "opt-2" .pyc only (--no-compile --optimize-more)
|
|
||||||
+ # 5) compile .pyc, "opt-1" and "opt-2" .pyc (--compile --optimize-more)
|
|
||||||
+ # 6) compile "opt-1" and "opt-2" .pyc (--no-compile --optimize-more)
|
|
||||||
#
|
|
||||||
# The UI for this is two options, 'compile' and 'optimize'.
|
|
||||||
# 'compile' is strictly boolean, and only decides whether to
|
|
||||||
@@ -132,8 +132,8 @@ class install_lib(Command):
|
|
||||||
byte_compile(files, optimize=0,
|
|
||||||
force=self.force, prefix=install_root,
|
|
||||||
dry_run=self.dry_run)
|
|
||||||
- if self.optimize > 0:
|
|
||||||
- byte_compile(files, optimize=self.optimize,
|
|
||||||
+ for opt in range(1, self.optimize + 1):
|
|
||||||
+ byte_compile(files, optimize=opt,
|
|
||||||
force=self.force, prefix=install_root,
|
|
||||||
verbose=self.verbose, dry_run=self.dry_run)
|
|
||||||
|
|
||||||
@@ -167,9 +167,9 @@ class install_lib(Command):
|
|
||||||
if self.compile:
|
|
||||||
bytecode_files.append(importlib.util.cache_from_source(
|
|
||||||
py_file, optimization=''))
|
|
||||||
- if self.optimize > 0:
|
|
||||||
+ for opt in range(1, self.optimize + 1):
|
|
||||||
bytecode_files.append(importlib.util.cache_from_source(
|
|
||||||
- py_file, optimization=self.optimize))
|
|
||||||
+ py_file, optimization=opt))
|
|
||||||
|
|
||||||
return bytecode_files
|
|
||||||
|
|
||||||
--
|
|
||||||
2.8.3
|
|
||||||
|
|
@ -1,42 +0,0 @@
|
|||||||
The hash implementation casts the input pointer to uint64_t* and directly reads
|
|
||||||
from this, which may cause unaligned accesses. Use memcpy() instead so this code
|
|
||||||
will not crash with SIGBUS on sparc.
|
|
||||||
|
|
||||||
--- a/Python/pyhash.c 2017-11-29 10:21:20.283094068 +0100
|
|
||||||
+++ b/Python/pyhash.c 2017-11-29 10:24:26.733087813 +0100
|
|
||||||
@@ -369,7 +369,7 @@
|
|
||||||
uint64_t k0 = _le64toh(_Py_HashSecret.siphash.k0);
|
|
||||||
uint64_t k1 = _le64toh(_Py_HashSecret.siphash.k1);
|
|
||||||
uint64_t b = (uint64_t)src_sz << 56;
|
|
||||||
- const uint64_t *in = (uint64_t*)src;
|
|
||||||
+ const uint8_t *in = (uint8_t*)src;
|
|
||||||
|
|
||||||
uint64_t v0 = k0 ^ 0x736f6d6570736575ULL;
|
|
||||||
uint64_t v1 = k1 ^ 0x646f72616e646f6dULL;
|
|
||||||
@@ -378,11 +378,13 @@
|
|
||||||
|
|
||||||
uint64_t t;
|
|
||||||
uint8_t *pt;
|
|
||||||
- uint8_t *m;
|
|
||||||
+ const uint8_t *m;
|
|
||||||
|
|
||||||
while (src_sz >= 8) {
|
|
||||||
- uint64_t mi = _le64toh(*in);
|
|
||||||
- in += 1;
|
|
||||||
- src_sz -= 8;
|
|
||||||
+ uint64_t mi;
|
|
||||||
+ memcpy(&mi, in, sizeof(mi));
|
|
||||||
+ mi = _le64toh(mi);
|
|
||||||
+ in += sizeof(mi);
|
|
||||||
+ src_sz -= sizeof(mi);
|
|
||||||
v3 ^= mi;
|
|
||||||
DOUBLE_ROUND(v0,v1,v2,v3);
|
|
||||||
@@ -391,7 +393,7 @@
|
|
||||||
|
|
||||||
t = 0;
|
|
||||||
pt = (uint8_t *)&t;
|
|
||||||
- m = (uint8_t *)in;
|
|
||||||
+ m = in;
|
|
||||||
switch (src_sz) {
|
|
||||||
case 7: pt[6] = m[6]; /* fall through */
|
|
||||||
case 6: pt[5] = m[5]; /* fall through */
|
|
@ -1,114 +0,0 @@
|
|||||||
From 8d89a385b71a2e4cce0fba0cfc8d91b63485edc5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Christian Heimes <christian@python.org>
|
|
||||||
Date: Sat, 24 Mar 2018 18:38:14 +0100
|
|
||||||
Subject: [PATCH] [3.6] bpo-33127: Compatibility patch for LibreSSL 2.7.0
|
|
||||||
(GH-6210) (GH-6214)
|
|
||||||
|
|
||||||
LibreSSL 2.7 introduced OpenSSL 1.1.0 API. The ssl module now detects
|
|
||||||
LibreSSL 2.7 and only provides API shims for OpenSSL < 1.1.0 and
|
|
||||||
LibreSSL < 2.7.
|
|
||||||
|
|
||||||
Documentation updates and fixes for failing tests will be provided in
|
|
||||||
another patch set.
|
|
||||||
|
|
||||||
Signed-off-by: Christian Heimes <christian@python.org>.
|
|
||||||
(cherry picked from commit 4ca0739c9d97ac7cd45499e0d31be68dc659d0e1)
|
|
||||||
|
|
||||||
Co-authored-by: Christian Heimes <christian@python.org>
|
|
||||||
---
|
|
||||||
Lib/test/test_ssl.py | 1 +
|
|
||||||
.../2018-03-24-15-08-24.bpo-33127.olJmHv.rst | 1 +
|
|
||||||
Modules/_ssl.c | 24 ++++++++++++-------
|
|
||||||
Tools/ssl/multissltests.py | 3 ++-
|
|
||||||
4 files changed, 20 insertions(+), 9 deletions(-)
|
|
||||||
create mode 100644 Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst
|
|
||||||
|
|
||||||
diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
|
|
||||||
index 8dd3b41450..9785a59a7e 100644
|
|
||||||
--- a/Lib/test/test_ssl.py
|
|
||||||
+++ b/Lib/test/test_ssl.py
|
|
||||||
@@ -1687,6 +1687,7 @@ class SimpleBackgroundTests(unittest.TestCase):
|
|
||||||
self.assertEqual(len(ctx.get_ca_certs()), 1)
|
|
||||||
|
|
||||||
@needs_sni
|
|
||||||
+ @unittest.skipUnless(hasattr(ssl, "PROTOCOL_TLSv1_2"), "needs TLS 1.2")
|
|
||||||
def test_context_setget(self):
|
|
||||||
# Check that the context of a connected socket can be replaced.
|
|
||||||
ctx1 = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
|
|
||||||
diff --git a/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst b/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000000..635aabbde0
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst
|
|
||||||
@@ -0,0 +1 @@
|
|
||||||
+The ssl module now compiles with LibreSSL 2.7.1.
|
|
||||||
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
|
|
||||||
index c54e43c2b4..5e007da858 100644
|
|
||||||
--- a/Modules/_ssl.c
|
|
||||||
+++ b/Modules/_ssl.c
|
|
||||||
@@ -106,6 +106,12 @@ struct py_ssl_library_code {
|
|
||||||
|
|
||||||
#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
# define OPENSSL_VERSION_1_1 1
|
|
||||||
+# define PY_OPENSSL_1_1_API 1
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+/* LibreSSL 2.7.0 provides necessary OpenSSL 1.1.0 APIs */
|
|
||||||
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x2070000fL
|
|
||||||
+# define PY_OPENSSL_1_1_API 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Openssl comes with TLSv1.1 and TLSv1.2 between 1.0.0h and 1.0.1
|
|
||||||
@@ -152,16 +158,18 @@ struct py_ssl_library_code {
|
|
||||||
#define INVALID_SOCKET (-1)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#ifdef OPENSSL_VERSION_1_1
|
|
||||||
-/* OpenSSL 1.1.0+ */
|
|
||||||
-#ifndef OPENSSL_NO_SSL2
|
|
||||||
-#define OPENSSL_NO_SSL2
|
|
||||||
-#endif
|
|
||||||
-#else /* OpenSSL < 1.1.0 */
|
|
||||||
-#if defined(WITH_THREAD)
|
|
||||||
+/* OpenSSL 1.0.2 and LibreSSL needs extra code for locking */
|
|
||||||
+#if !defined(OPENSSL_VERSION_1_1) && defined(WITH_THREAD)
|
|
||||||
#define HAVE_OPENSSL_CRYPTO_LOCK
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#if defined(OPENSSL_VERSION_1_1) && !defined(OPENSSL_NO_SSL2)
|
|
||||||
+#define OPENSSL_NO_SSL2
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+#ifndef PY_OPENSSL_1_1_API
|
|
||||||
+/* OpenSSL 1.1 API shims for OpenSSL < 1.1.0 and LibreSSL < 2.7.0 */
|
|
||||||
+
|
|
||||||
#define TLS_method SSLv23_method
|
|
||||||
#define TLS_client_method SSLv23_client_method
|
|
||||||
#define TLS_server_method SSLv23_server_method
|
|
||||||
@@ -227,7 +235,7 @@ SSL_SESSION_get_ticket_lifetime_hint(const SSL_SESSION *s)
|
|
||||||
return s->tlsext_tick_lifetime_hint;
|
|
||||||
}
|
|
||||||
|
|
||||||
-#endif /* OpenSSL < 1.1.0 or LibreSSL */
|
|
||||||
+#endif /* OpenSSL < 1.1.0 or LibreSSL < 2.7.0 */
|
|
||||||
|
|
||||||
|
|
||||||
enum py_ssl_error {
|
|
||||||
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
|
|
||||||
index ce5bbd8530..ba4529ae06 100755
|
|
||||||
--- a/Tools/ssl/multissltests.py
|
|
||||||
+++ b/Tools/ssl/multissltests.py
|
|
||||||
@@ -57,8 +57,9 @@ LIBRESSL_OLD_VERSIONS = [
|
|
||||||
]
|
|
||||||
|
|
||||||
LIBRESSL_RECENT_VERSIONS = [
|
|
||||||
- "2.5.3",
|
|
||||||
"2.5.5",
|
|
||||||
+ "2.6.4",
|
|
||||||
+ "2.7.1",
|
|
||||||
]
|
|
||||||
|
|
||||||
# store files in ../multissl
|
|
||||||
--
|
|
||||||
2.17.0
|
|
||||||
|
|
@ -1,161 +0,0 @@
|
|||||||
# Copyright 1999-2018 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="6"
|
|
||||||
WANT_LIBTOOL="none"
|
|
||||||
|
|
||||||
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
|
|
||||||
|
|
||||||
MY_P="Python-${PV}"
|
|
||||||
PATCHSET_VERSION="3.6.4"
|
|
||||||
|
|
||||||
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/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
|
|
||||||
|
|
||||||
LICENSE="PSF-2"
|
|
||||||
SLOT="3.6/3.6m"
|
|
||||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
|
|
||||||
IUSE="hardened"
|
|
||||||
|
|
||||||
# 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=""
|
|
||||||
DEPEND="app-arch/bzip2:0=
|
|
||||||
app-arch/xz-utils:0=
|
|
||||||
>=sys-libs/zlib-1.1.3:0=
|
|
||||||
virtual/libintl
|
|
||||||
!!<sys-apps/sandbox-2.6-r1
|
|
||||||
virtual/pkgconfig
|
|
||||||
!sys-devel/gcc[libffi(-)]"
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MY_P}"
|
|
||||||
PYVER=${SLOT%/*}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# Ensure that internal copies of zlib are not used.
|
|
||||||
rm -fr Modules/zlib
|
|
||||||
|
|
||||||
local PATCHES=(
|
|
||||||
"${WORKDIR}/patches"
|
|
||||||
"${FILESDIR}/python-3.5-distutils-OO-build.patch"
|
|
||||||
"${FILESDIR}/3.6.5-disable-nis.patch"
|
|
||||||
"${FILESDIR}/python-3.6.5-libressl-compatibility.patch"
|
|
||||||
"${FILESDIR}/python-3.6.5-hash-unaligned.patch"
|
|
||||||
)
|
|
||||||
|
|
||||||
default
|
|
||||||
|
|
||||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
|
||||||
Lib/distutils/command/install.py \
|
|
||||||
Lib/distutils/sysconfig.py \
|
|
||||||
Lib/site.py \
|
|
||||||
Lib/sysconfig.py \
|
|
||||||
Lib/test/test_site.py \
|
|
||||||
Makefile.pre.in \
|
|
||||||
Modules/Setup.dist \
|
|
||||||
Modules/getpath.c \
|
|
||||||
configure.ac \
|
|
||||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
|
||||||
|
|
||||||
eautoreconf
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
local disable
|
|
||||||
disable+=" gdbm"
|
|
||||||
disable+=" _curses _curses_panel"
|
|
||||||
disable+=" readline"
|
|
||||||
disable+=" _sqlite3"
|
|
||||||
export PYTHON_DISABLE_SSL="1"
|
|
||||||
disable+=" _tkinter"
|
|
||||||
export PYTHON_DISABLE_MODULES="${disable}"
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
if tc-is-cross-compiler; then
|
|
||||||
# Force some tests that try to poke fs paths.
|
|
||||||
export ac_cv_file__dev_ptc=no
|
|
||||||
export ac_cv_file__dev_ptmx=yes
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
|
||||||
tc-export CXX
|
|
||||||
|
|
||||||
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
|
||||||
# Needed on FreeBSD unless Python 3.2 is already installed.
|
|
||||||
# Please query BSD team before removing this!
|
|
||||||
append-ldflags "-L."
|
|
||||||
|
|
||||||
local dbmliborder
|
|
||||||
|
|
||||||
local myeconfargs=(
|
|
||||||
--prefix=/usr/share/oem/python
|
|
||||||
--with-fpectl
|
|
||||||
--disable-shared
|
|
||||||
--enable-ipv6
|
|
||||||
--with-threads
|
|
||||||
--includedir='/discard/include'
|
|
||||||
--infodir='/discard/info'
|
|
||||||
--mandir='/discard/man'
|
|
||||||
--with-computed-gotos
|
|
||||||
--with-dbmliborder="${dbmliborder}"
|
|
||||||
--with-libc=
|
|
||||||
--without-ensurepip
|
|
||||||
--without-system-expat
|
|
||||||
--without-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=
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
local rawbindir=/usr/share/oem/python/bin
|
|
||||||
local bindir=${ED}${rawbindir}
|
|
||||||
local libdir=${ED}/usr/share/oem/python/$(get_libdir)/python${PYVER}
|
|
||||||
|
|
||||||
emake DESTDIR="${D}" altinstall
|
|
||||||
|
|
||||||
# create a simple versionless 'python' symlink
|
|
||||||
dosym "python${PYVER}" "${rawbindir}/python"
|
|
||||||
dosym "python${PYVER}" "${rawbindir}/python3"
|
|
||||||
|
|
||||||
rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
|
||||||
rm -r "${bindir}/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
|
||||||
|
|
||||||
rm "${libdir}/distutils/command/"wininst-*.exe || die
|
|
||||||
|
|
||||||
rm -r "${ED}/discard" || die
|
|
||||||
}
|
|
189
sdk_container/src/third_party/coreos-overlay/dev-lang/python-oem/python-oem-3.9.8.ebuild
vendored
Normal file
189
sdk_container/src/third_party/coreos-overlay/dev-lang/python-oem/python-oem-3.9.8.ebuild
vendored
Normal file
@ -0,0 +1,189 @@
|
|||||||
|
# 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 \
|
||||||
|
python-utils-r1 toolchain-funcs verify-sig
|
||||||
|
|
||||||
|
MY_PV=${PV/_rc/rc}
|
||||||
|
MY_P="Python-${MY_PV%_p*}"
|
||||||
|
PYVER=$(ver_cut 1-2)
|
||||||
|
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||||
|
|
||||||
|
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||||
|
HOMEPAGE="https://www.python.org/"
|
||||||
|
SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
|
||||||
|
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
||||||
|
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/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="hardened"
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
DEPEND="app-arch/bzip2:=
|
||||||
|
app-arch/xz-utils:=
|
||||||
|
sys-apps/util-linux:=
|
||||||
|
>=sys-libs/zlib-1.1.3:=
|
||||||
|
virtual/libcrypt:=
|
||||||
|
virtual/libintl"
|
||||||
|
BDEPEND="
|
||||||
|
virtual/awk
|
||||||
|
virtual/pkgconfig
|
||||||
|
sys-devel/autoconf-archive
|
||||||
|
verify-sig? ( app-crypt/openpgp-keys-python )
|
||||||
|
!sys-devel/gcc[libffi(-)]"
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
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 zlib are not used.
|
||||||
|
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
|
||||||
|
export ac_cv_header_bluetooth_bluetooth_h=no
|
||||||
|
disable+=" gdbm"
|
||||||
|
disable+=" _curses _curses_panel"
|
||||||
|
disable+=" readline"
|
||||||
|
disable+=" _sqlite3"
|
||||||
|
export PYTHON_DISABLE_SSL="1"
|
||||||
|
disable+=" _tkinter"
|
||||||
|
export PYTHON_DISABLE_MODULES="${disable}"
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
# Force some tests that try to poke fs paths.
|
||||||
|
export ac_cv_file__dev_ptc=no
|
||||||
|
export ac_cv_file__dev_ptmx=yes
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||||
|
tc-export CXX
|
||||||
|
|
||||||
|
local dbmliborder
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
--prefix=/usr/share/oem/python
|
||||||
|
--with-platlibdir=$(get_libdir)
|
||||||
|
--disable-shared
|
||||||
|
--enable-ipv6
|
||||||
|
--infodir='/discard/info'
|
||||||
|
--mandir='/discard/man'
|
||||||
|
--includedir='/discard/include'
|
||||||
|
--with-computed-gotos
|
||||||
|
--with-dbmliborder="${dbmliborder}"
|
||||||
|
--with-libc=
|
||||||
|
--enable-loadable-sqlite-extensions
|
||||||
|
--without-ensurepip
|
||||||
|
--without-system-expat
|
||||||
|
--without-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
|
||||||
|
# Prevent using distutils bundled by setuptools.
|
||||||
|
# https://bugs.gentoo.org/823728
|
||||||
|
export SETUPTOOLS_USE_DISTUTILS=stdlib
|
||||||
|
|
||||||
|
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local prefix=/usr/share/oem/python
|
||||||
|
local eprefix="${ED}${prefix}"
|
||||||
|
local elibdir="${eprefix}/$(get_libdir)"
|
||||||
|
local epythonplatlibdir="${elibdir}/python${PYVER}"
|
||||||
|
local bindir="${prefix}/bin"
|
||||||
|
local ebindir="${eprefix}/bin"
|
||||||
|
|
||||||
|
emake DESTDIR="${D}" altinstall
|
||||||
|
|
||||||
|
# Remove static library
|
||||||
|
rm "${elibdir}"/libpython*.a || die
|
||||||
|
|
||||||
|
rm -r "${epythonplatlibdir}/"{sqlite3,test/test_sqlite*} || die
|
||||||
|
rm -r "${ebindir}/idle${PYVER}" "${epythonplatlibdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||||
|
|
||||||
|
# create a simple versionless 'python' symlink
|
||||||
|
dosym "python${PYVER}" "${bindir}/python"
|
||||||
|
dosym "python${PYVER}" "${bindir}/python3"
|
||||||
|
|
||||||
|
rm -r "${ED}/discard" || die
|
||||||
|
}
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing \
|
inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing \
|
||||||
multilib-build python-any-r1 rust-toolchain toolchain-funcs verify-sig
|
multilib-build python-any-r1 rust-toolchain toolchain-funcs verify-sig
|
1
sdk_container/src/third_party/coreos-overlay/dev-python/boto/Manifest
vendored
Normal file
1
sdk_container/src/third_party/coreos-overlay/dev-python/boto/Manifest
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
DIST boto-2.49.0.tar.gz 1478498 BLAKE2B 6a897ea162f5f4bd34a2d488a3e3897f7f2f5b8707dd0922c01b6a0b90ea577223bf3e588b6685bda1f2bc0e92af426711fcba67a70377183465a530065c6c84 SHA512 2175cf30cd25bbc05812e83e5ade7668c3e21b1bb09aa1b43f0f0ac7d6967a646394fb52c9be673ebb65618c5b33a52d6f31f6da702f5cd1d6c9a18169476dd4
|
66
sdk_container/src/third_party/coreos-overlay/dev-python/boto/boto-2.49.0-r4.ebuild
vendored
Normal file
66
sdk_container/src/third_party/coreos-overlay/dev-python/boto/boto-2.49.0-r4.ebuild
vendored
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
# Copyright 1999-2021 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI="7"
|
||||||
|
|
||||||
|
PYTHON_COMPAT=( python3_{7..9} )
|
||||||
|
DISTUTILS_USE_SETUPTOOLS=bdepend
|
||||||
|
|
||||||
|
inherit distutils-r1
|
||||||
|
|
||||||
|
DESCRIPTION="Amazon Web Services API"
|
||||||
|
HOMEPAGE="https://github.com/boto/boto https://pypi.org/project/boto/"
|
||||||
|
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="MIT"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="amd64 arm arm64 ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
# taken from https://bugs.debian.org/909545
|
||||||
|
"${FILESDIR}"/${P}-try-to-add-SNI-support-v3.patch
|
||||||
|
"${FILESDIR}"/${P}-py38.patch
|
||||||
|
"${FILESDIR}"/${P}-py3-socket-binary.patch
|
||||||
|
"${FILESDIR}"/${P}-py3-httplib-strict.patch
|
||||||
|
"${FILESDIR}"/${P}-py3-server-port.patch
|
||||||
|
"${FILESDIR}"/${P}-unbundle-six.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
RDEPEND=">=dev-python/six-1.12.0[${PYTHON_USEDEP}]"
|
||||||
|
|
||||||
|
BDEPEND="
|
||||||
|
test? (
|
||||||
|
dev-python/httpretty[${PYTHON_USEDEP}]
|
||||||
|
dev-python/keyring[${PYTHON_USEDEP}]
|
||||||
|
dev-python/lxml[${PYTHON_USEDEP}]
|
||||||
|
dev-python/mock[${PYTHON_USEDEP}]
|
||||||
|
dev-python/paramiko[${PYTHON_USEDEP}]
|
||||||
|
dev-python/requests[${PYTHON_USEDEP}]
|
||||||
|
dev-python/rsa[${PYTHON_USEDEP}]
|
||||||
|
dev-python/selenium[${PYTHON_USEDEP}]
|
||||||
|
)"
|
||||||
|
|
||||||
|
distutils_enable_tests nose
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
# remove bundled libs.
|
||||||
|
rm -f "${S}"/boto/vendored/six.py || die
|
||||||
|
# broken, not worth fixing
|
||||||
|
rm tests/unit/cloudfront/test_signed_urls.py || die
|
||||||
|
# fix tests
|
||||||
|
mkdir -p "${HOME}"/.ssh || die
|
||||||
|
: > "${HOME}"/.ssh/known_hosts || die
|
||||||
|
# Flatcar: Do not import boto only for the version number in
|
||||||
|
# setup.py - it ends up trying to import six, which we have
|
||||||
|
# unbundled and the six module effectively becomes a BDEPEND
|
||||||
|
# instead of RDEPEND. Drop the import and define the
|
||||||
|
# __variable__ instead.
|
||||||
|
sed -i -e 's/^from boto import __version__$/__version__ = '"'${PV}'"'/' setup.py
|
||||||
|
|
||||||
|
distutils-r1_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
python_test() {
|
||||||
|
nosetests -v tests/unit ||
|
||||||
|
die "Tests fail with ${EPYTHON}"
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
https://github.com/boto/boto/commit/4f4dcb31fe852c05ce19b44eb9d5b5d747e36f7c
|
||||||
|
https://github.com/boto/boto/pull/2718
|
||||||
|
|
||||||
|
From 4f4dcb31fe852c05ce19b44eb9d5b5d747e36f7c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lee Ball <43632885+catleeball@users.noreply.github.com>
|
||||||
|
Date: Mon, 10 Jun 2019 16:02:53 -0700
|
||||||
|
Subject: [PATCH] Remove `strict=True` from http_client (#6)
|
||||||
|
|
||||||
|
In Python 3.4, the `strict` kwarg was removed[1]. We are removing it
|
||||||
|
here too.
|
||||||
|
|
||||||
|
Alternatively, we can leave in `strict=True` for 2.x, but I chose to
|
||||||
|
remove it entirely to maintain consistent behavior across versions.
|
||||||
|
|
||||||
|
[1]: https://docs.python.org/3/library/http.client.html
|
||||||
|
---
|
||||||
|
boto/connection.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/boto/connection.py b/boto/connection.py
|
||||||
|
index c731173bb4eb..54e26fb2de16 100644
|
||||||
|
--- a/boto/connection.py
|
||||||
|
+++ b/boto/connection.py
|
||||||
|
@@ -807,7 +807,7 @@ class AWSAuthConnection(object):
|
||||||
|
sock.sendall(six.ensure_binary("\r\n"))
|
||||||
|
else:
|
||||||
|
sock.sendall(six.ensure_binary("\r\n"))
|
||||||
|
- resp = http_client.HTTPResponse(sock, strict=True, debuglevel=self.debug)
|
||||||
|
+ resp = http_client.HTTPResponse(sock, debuglevel=self.debug)
|
||||||
|
resp.begin()
|
||||||
|
|
||||||
|
if resp.status != 200:
|
||||||
|
--
|
||||||
|
2.28.0
|
||||||
|
|
@ -0,0 +1,42 @@
|
|||||||
|
https://github.com/boto/boto/commit/b9f6cb0ab717ea76e2780c7fddd1cd36b3bf7d63
|
||||||
|
|
||||||
|
From b9f6cb0ab717ea76e2780c7fddd1cd36b3bf7d63 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matt Houglum <houglum@google.com>
|
||||||
|
Date: Fri, 21 Jun 2019 15:09:11 -0700
|
||||||
|
Subject: [PATCH] Make server_name() behave correctly for PY3
|
||||||
|
|
||||||
|
...because Python-2.6-or-newer doesn't just include Python 2.6 and 2.7.
|
||||||
|
---
|
||||||
|
boto/connection.py | 14 +++++---------
|
||||||
|
1 file changed, 5 insertions(+), 9 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/boto/connection.py b/boto/connection.py
|
||||||
|
index 54e26fb2de16..bbb25d8fb842 100644
|
||||||
|
--- a/boto/connection.py
|
||||||
|
+++ b/boto/connection.py
|
||||||
|
@@ -650,17 +650,13 @@ class AWSAuthConnection(object):
|
||||||
|
if port == 80:
|
||||||
|
signature_host = self.host
|
||||||
|
else:
|
||||||
|
- # This unfortunate little hack can be attributed to
|
||||||
|
- # a difference in the 2.6 version of http_client. In old
|
||||||
|
- # versions, it would append ":443" to the hostname sent
|
||||||
|
- # in the Host header and so we needed to make sure we
|
||||||
|
- # did the same when calculating the V2 signature. In 2.6
|
||||||
|
- # (and higher!)
|
||||||
|
- # it no longer does that. Hence, this kludge.
|
||||||
|
- if ((ON_APP_ENGINE and sys.version[:3] == '2.5') or
|
||||||
|
- sys.version[:3] in ('2.6', '2.7')) and port == 443:
|
||||||
|
+ ver_int = sys.version_info[0] * 10 + sys.version_info[1]
|
||||||
|
+ if port == 443 and ver_int >= 26: # Py >= 2.6
|
||||||
|
signature_host = self.host
|
||||||
|
else:
|
||||||
|
+ # In versions < 2.6, Python's http_client would append ":443"
|
||||||
|
+ # to the hostname sent in the Host header and so we needed to
|
||||||
|
+ # make sure we did the same when calculating the V2 signature.
|
||||||
|
signature_host = '%s:%d' % (self.host, port)
|
||||||
|
return signature_host
|
||||||
|
|
||||||
|
--
|
||||||
|
2.28.0
|
||||||
|
|
@ -0,0 +1,59 @@
|
|||||||
|
https://github.com/boto/boto/commit/d2cb697b32c297858ecc36701a5a4176818ab36d
|
||||||
|
https://github.com/boto/boto/pull/2718
|
||||||
|
https://github.com/boto/boto/pull/2893
|
||||||
|
https://github.com/boto/boto/pull/3699
|
||||||
|
|
||||||
|
From d2cb697b32c297858ecc36701a5a4176818ab36d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Cat Lee Ball <cball@google.com>
|
||||||
|
Date: Mon, 10 Jun 2019 13:31:11 -0700
|
||||||
|
Subject: [PATCH] Ensure binary strings sent to socket
|
||||||
|
|
||||||
|
When running pre-release tests with proxied connections, it appeared a
|
||||||
|
few spots in connection.py would fail under Python 3 since the
|
||||||
|
socket.sendall method expects binary strings rather than unicode.
|
||||||
|
---
|
||||||
|
boto/connection.py | 13 +++++++------
|
||||||
|
1 file changed, 7 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/boto/connection.py b/boto/connection.py
|
||||||
|
index a0d89a51f49c..d084d1f881fb 100644
|
||||||
|
--- a/boto/connection.py
|
||||||
|
+++ b/boto/connection.py
|
||||||
|
@@ -796,17 +796,17 @@ class AWSAuthConnection(object):
|
||||||
|
else:
|
||||||
|
sock = socket.create_connection((self.proxy, int(self.proxy_port)))
|
||||||
|
boto.log.debug("Proxy connection: CONNECT %s HTTP/1.0\r\n", host)
|
||||||
|
- sock.sendall("CONNECT %s HTTP/1.0\r\n" % host)
|
||||||
|
- sock.sendall("User-Agent: %s\r\n" % UserAgent)
|
||||||
|
+ sock.sendall(six.ensure_binary("CONNECT %s HTTP/1.0\r\n" % host))
|
||||||
|
+ sock.sendall(six.ensure_binary("User-Agent: %s\r\n" % UserAgent))
|
||||||
|
if self.proxy_user and self.proxy_pass:
|
||||||
|
for k, v in self.get_proxy_auth_header().items():
|
||||||
|
- sock.sendall("%s: %s\r\n" % (k, v))
|
||||||
|
+ sock.sendall(six.ensure_binary("%s: %s\r\n" % (k, v)))
|
||||||
|
# See discussion about this config option at
|
||||||
|
# https://groups.google.com/forum/?fromgroups#!topic/boto-dev/teenFvOq2Cc
|
||||||
|
if config.getbool('Boto', 'send_crlf_after_proxy_auth_headers', False):
|
||||||
|
- sock.sendall("\r\n")
|
||||||
|
+ sock.sendall(six.ensure_binary("\r\n"))
|
||||||
|
else:
|
||||||
|
- sock.sendall("\r\n")
|
||||||
|
+ sock.sendall(six.ensure_binary("\r\n"))
|
||||||
|
resp = http_client.HTTPResponse(sock, strict=True, debuglevel=self.debug)
|
||||||
|
resp.begin()
|
||||||
|
|
||||||
|
@@ -814,9 +814,10 @@ class AWSAuthConnection(object):
|
||||||
|
# Fake a socket error, use a code that make it obvious it hasn't
|
||||||
|
# been generated by the socket library
|
||||||
|
raise socket.error(-71,
|
||||||
|
+ six.ensure_binary(
|
||||||
|
"Error talking to HTTP proxy %s:%s: %s (%s)" %
|
||||||
|
(self.proxy, self.proxy_port,
|
||||||
|
- resp.status, resp.reason))
|
||||||
|
+ resp.status, resp.reason)))
|
||||||
|
|
||||||
|
# We can safely close the response, it duped the original socket
|
||||||
|
resp.close()
|
||||||
|
--
|
||||||
|
2.28.0
|
||||||
|
|
54
sdk_container/src/third_party/coreos-overlay/dev-python/boto/files/boto-2.49.0-py38.patch
vendored
Normal file
54
sdk_container/src/third_party/coreos-overlay/dev-python/boto/files/boto-2.49.0-py38.patch
vendored
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
diff --git a/boto/ecs/item.py b/boto/ecs/item.py
|
||||||
|
index 79177a31..292b05af 100644
|
||||||
|
--- a/boto/ecs/item.py
|
||||||
|
+++ b/boto/ecs/item.py
|
||||||
|
@@ -21,7 +21,7 @@
|
||||||
|
|
||||||
|
|
||||||
|
import xml.sax
|
||||||
|
-import cgi
|
||||||
|
+import html
|
||||||
|
from boto.compat import six, StringIO
|
||||||
|
|
||||||
|
class ResponseGroup(xml.sax.ContentHandler):
|
||||||
|
@@ -67,7 +67,7 @@ class ResponseGroup(xml.sax.ContentHandler):
|
||||||
|
return None
|
||||||
|
|
||||||
|
def endElement(self, name, value, connection):
|
||||||
|
- self._xml.write("%s</%s>" % (cgi.escape(value).replace("&amp;", "&"), name))
|
||||||
|
+ self._xml.write("%s</%s>" % (html.escape(value).replace("&amp;", "&"), name))
|
||||||
|
if len(self._nodepath) == 0:
|
||||||
|
return
|
||||||
|
obj = None
|
||||||
|
diff --git a/tests/unit/utils/test_utils.py b/tests/unit/utils/test_utils.py
|
||||||
|
index db15b56d..89d1a524 100644
|
||||||
|
--- a/tests/unit/utils/test_utils.py
|
||||||
|
+++ b/tests/unit/utils/test_utils.py
|
||||||
|
@@ -85,7 +85,7 @@ class TestPassword(unittest.TestCase):
|
||||||
|
def hmac_hashfunc(cls, msg):
|
||||||
|
if not isinstance(msg, bytes):
|
||||||
|
msg = msg.encode('utf-8')
|
||||||
|
- return hmac.new(b'mysecretkey', msg)
|
||||||
|
+ return hmac.new(b'mysecretkey', msg, digestmod='MD5')
|
||||||
|
|
||||||
|
class HMACPassword(Password):
|
||||||
|
hashfunc = hmac_hashfunc
|
||||||
|
@@ -95,15 +95,15 @@ class TestPassword(unittest.TestCase):
|
||||||
|
password.set('foo')
|
||||||
|
|
||||||
|
self.assertEquals(str(password),
|
||||||
|
- hmac.new(b'mysecretkey', b'foo').hexdigest())
|
||||||
|
+ hmac.new(b'mysecretkey', b'foo', digestmod='MD5').hexdigest())
|
||||||
|
|
||||||
|
def test_constructor(self):
|
||||||
|
- hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg)
|
||||||
|
+ hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg, digestmod='MD5')
|
||||||
|
|
||||||
|
password = Password(hashfunc=hmac_hashfunc)
|
||||||
|
password.set('foo')
|
||||||
|
self.assertEquals(password.str,
|
||||||
|
- hmac.new(b'mysecretkey', b'foo').hexdigest())
|
||||||
|
+ hmac.new(b'mysecretkey', b'foo', digestmod='MD5').hexdigest())
|
||||||
|
|
||||||
|
|
||||||
|
class TestPythonizeName(unittest.TestCase):
|
@ -0,0 +1,104 @@
|
|||||||
|
From f5e7f6c98b46ff622f60a4661ffc9ce07216d109 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
|
||||||
|
Date: Sat, 29 Sep 2018 21:47:11 +0200
|
||||||
|
Subject: [PATCH] boto: try to add SNI support
|
||||||
|
|
||||||
|
Add SNI support. Newer OpenSSL (with TLS1.3) fail to connect if the
|
||||||
|
hostname is missing.
|
||||||
|
|
||||||
|
Link: https://bugs.debian.org/bug=909545
|
||||||
|
Tested-by: Witold Baryluk <witold.baryluk@gmail.com>
|
||||||
|
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
|
||||||
|
---
|
||||||
|
boto/connection.py | 19 ++++++++++---------
|
||||||
|
boto/https_connection.py | 22 +++++++++++-----------
|
||||||
|
2 files changed, 21 insertions(+), 20 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/boto/connection.py b/boto/connection.py
|
||||||
|
index 34b428f101df7..b4867a7657465 100644
|
||||||
|
--- a/boto/connection.py
|
||||||
|
+++ b/boto/connection.py
|
||||||
|
@@ -778,8 +778,10 @@
|
||||||
|
|
||||||
|
def proxy_ssl(self, host=None, port=None):
|
||||||
|
if host and port:
|
||||||
|
+ cert_host = host
|
||||||
|
host = '%s:%d' % (host, port)
|
||||||
|
else:
|
||||||
|
+ cert_host = self.host
|
||||||
|
host = '%s:%d' % (self.host, self.port)
|
||||||
|
# Seems properly to use timeout for connect too
|
||||||
|
timeout = self.http_connection_kwargs.get("timeout")
|
||||||
|
@@ -824,23 +824,24 @@ DEFAULT_CA_CERTS_FILE = os.path.join(os.path.dirname(os.path.abspath(boto.cacert
|
||||||
|
h = http_client.HTTPConnection(host)
|
||||||
|
|
||||||
|
if self.https_validate_certificates and HAVE_HTTPS_CONNECTION:
|
||||||
|
+ context = ssl.create_default_context()
|
||||||
|
+ context.verify_mode = ssl.CERT_REQUIRED
|
||||||
|
+ context.check_hostname = True
|
||||||
|
+
|
||||||
|
msg = "wrapping ssl socket for proxied connection; "
|
||||||
|
if self.ca_certificates_file:
|
||||||
|
msg += "CA certificate file=%s" % self.ca_certificates_file
|
||||||
|
+ context.load_verify_locations(cafile=self.ca_certificates_file)
|
||||||
|
else:
|
||||||
|
msg += "using system provided SSL certs"
|
||||||
|
+ context.load_default_certs()
|
||||||
|
boto.log.debug(msg)
|
||||||
|
key_file = self.http_connection_kwargs.get('key_file', None)
|
||||||
|
cert_file = self.http_connection_kwargs.get('cert_file', None)
|
||||||
|
- sslSock = ssl.wrap_socket(sock, keyfile=key_file,
|
||||||
|
- certfile=cert_file,
|
||||||
|
- cert_reqs=ssl.CERT_REQUIRED,
|
||||||
|
- ca_certs=self.ca_certificates_file)
|
||||||
|
- cert = sslSock.getpeercert()
|
||||||
|
- hostname = self.host.split(':', 0)[0]
|
||||||
|
- if not https_connection.ValidateCertificateHostname(cert, hostname):
|
||||||
|
- raise https_connection.InvalidCertificateException(
|
||||||
|
- hostname, cert, 'hostname mismatch')
|
||||||
|
+ if key_file:
|
||||||
|
+ context.load_cert_chain(certfile=cert_file, keyfile=key_file)
|
||||||
|
+
|
||||||
|
+ sslSock = context.wrap_socket(sock, server_hostname=cert_host)
|
||||||
|
else:
|
||||||
|
# Fallback for old Python without ssl.wrap_socket
|
||||||
|
if hasattr(http_client, 'ssl'):
|
||||||
|
diff --git a/boto/https_connection.py b/boto/https_connection.py
|
||||||
|
index ddc31a152292e..a5076f6f9b261 100644
|
||||||
|
--- a/boto/https_connection.py
|
||||||
|
+++ b/boto/https_connection.py
|
||||||
|
@@ -119,20 +119,20 @@ from boto.compat import six, http_client
|
||||||
|
sock = socket.create_connection((self.host, self.port), self.timeout)
|
||||||
|
else:
|
||||||
|
sock = socket.create_connection((self.host, self.port))
|
||||||
|
+
|
||||||
|
+ context = ssl.create_default_context()
|
||||||
|
+ context.verify_mode = ssl.CERT_REQUIRED
|
||||||
|
+ context.check_hostname = True
|
||||||
|
+ if self.key_file:
|
||||||
|
+ context.load_cert_chain(certfile=self.cert_file, keyfile=self.key_file)
|
||||||
|
+
|
||||||
|
msg = "wrapping ssl socket; "
|
||||||
|
if self.ca_certs:
|
||||||
|
msg += "CA certificate file=%s" % self.ca_certs
|
||||||
|
+ context.load_verify_locations(cafile=self.ca_certs)
|
||||||
|
else:
|
||||||
|
msg += "using system provided SSL certs"
|
||||||
|
+ context.load_default_certs()
|
||||||
|
boto.log.debug(msg)
|
||||||
|
- self.sock = ssl.wrap_socket(sock, keyfile=self.key_file,
|
||||||
|
- certfile=self.cert_file,
|
||||||
|
- cert_reqs=ssl.CERT_REQUIRED,
|
||||||
|
- ca_certs=self.ca_certs)
|
||||||
|
- cert = self.sock.getpeercert()
|
||||||
|
- hostname = self.host.split(':', 0)[0]
|
||||||
|
- if not ValidateCertificateHostname(cert, hostname):
|
||||||
|
- raise InvalidCertificateException(hostname,
|
||||||
|
- cert,
|
||||||
|
- 'remote hostname "%s" does not match '
|
||||||
|
- 'certificate' % hostname)
|
||||||
|
+
|
||||||
|
+ self.sock = context.wrap_socket(sock, server_hostname=self.host)
|
||||||
|
--
|
||||||
|
2.19.0
|
||||||
|
|
@ -0,0 +1,28 @@
|
|||||||
|
use the system copy of six
|
||||||
|
|
||||||
|
--- a/boto/compat.py
|
||||||
|
+++ b/boto/compat.py
|
||||||
|
@@ -46,16 +46,16 @@ except (AttributeError, ImportError):
|
||||||
|
# This is probably running on App Engine.
|
||||||
|
expanduser = (lambda x: x)
|
||||||
|
|
||||||
|
-from boto.vendored import six
|
||||||
|
+import six
|
||||||
|
|
||||||
|
-from boto.vendored.six import BytesIO, StringIO
|
||||||
|
-from boto.vendored.six.moves import filter, http_client, map, _thread, \
|
||||||
|
+from six import BytesIO, StringIO
|
||||||
|
+from six.moves import filter, http_client, map, _thread, \
|
||||||
|
urllib, zip
|
||||||
|
-from boto.vendored.six.moves.queue import Queue
|
||||||
|
-from boto.vendored.six.moves.urllib.parse import parse_qs, quote, unquote, \
|
||||||
|
+from six.moves.queue import Queue
|
||||||
|
+from six.moves.urllib.parse import parse_qs, quote, unquote, \
|
||||||
|
urlparse, urlsplit
|
||||||
|
-from boto.vendored.six.moves.urllib.parse import unquote_plus
|
||||||
|
-from boto.vendored.six.moves.urllib.request import urlopen
|
||||||
|
+from six.moves.urllib.parse import unquote_plus
|
||||||
|
+from six.moves.urllib.request import urlopen
|
||||||
|
|
||||||
|
if six.PY3:
|
||||||
|
# StandardError was removed, so use the base exception type instead
|
14
sdk_container/src/third_party/coreos-overlay/dev-python/boto/metadata.xml
vendored
Normal file
14
sdk_container/src/third_party/coreos-overlay/dev-python/boto/metadata.xml
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="project">
|
||||||
|
<email>python@gentoo.org</email>
|
||||||
|
<name>Python</name>
|
||||||
|
</maintainer>
|
||||||
|
<stabilize-allarches/>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="google-code">boto</remote-id>
|
||||||
|
<remote-id type="pypi">boto</remote-id>
|
||||||
|
<remote-id type="github">boto/boto</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
@ -16,7 +16,7 @@ KEYWORDS="amd64 arm64"
|
|||||||
# Depending on specific version of python-oem allows us to notice when
|
# Depending on specific version of python-oem allows us to notice when
|
||||||
# we update the major version of python and then to make sure that we
|
# we update the major version of python and then to make sure that we
|
||||||
# install the package in correctly versioned site-packages directory.
|
# install the package in correctly versioned site-packages directory.
|
||||||
DEP_PYVER="3.6"
|
DEP_PYVER="3.9"
|
||||||
|
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
RDEPEND="dev-lang/python-oem:${DEP_PYVER}"
|
RDEPEND="dev-lang/python-oem:${DEP_PYVER}"
|
@ -1 +0,0 @@
|
|||||||
DIST catalyst-3.0.14.tar.bz2 621178 BLAKE2B 3fa87125f14661bb77432267f03c0966eff8f71f4ef334ce0a14218f7557dee270840afb79b6735a149851ed44b1ea2f6cf59d8274d74e049246d89874aa484b SHA512 938a63a83458fa5a26a4b4e62d18086ed813aec5638a9dd363ba553cb7aeb337c3b8ba0768f3b5a658aa54f2f375a7fe067279c739073d2420c3ad3a42830830
|
|
@ -1,6 +0,0 @@
|
|||||||
This is a fork of dev-util/catalyst package. The reasons for having it
|
|
||||||
here are:
|
|
||||||
|
|
||||||
- Add patches that move the scripts to use python3 explicitly, because
|
|
||||||
/usr/bin/python is still pointing to python2, but our portage is now
|
|
||||||
a python3 code.
|
|
@ -1,81 +0,0 @@
|
|||||||
# Copyright 1999-2020 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
# Flatcar: Based on catalyst-3.0.14.ebuild from commit
|
|
||||||
# 78fc35f2e766117caa26928db5a0a09b8af18c3c in Gentoo repo (see
|
|
||||||
# https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-util/catalyst/catalyst-3.0.14.ebuild?id=78fc35f2e766117caa26928db5a0a09b8af18c3c).
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
if [[ ${PV} == *9999* ]]; then
|
|
||||||
SRC_ECLASS="git-r3"
|
|
||||||
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/catalyst.git"
|
|
||||||
EGIT_BRANCH="master"
|
|
||||||
else
|
|
||||||
SRC_URI="https://gitweb.gentoo.org/proj/catalyst.git/snapshot/${P}.tar.bz2"
|
|
||||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86"
|
|
||||||
fi
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
|
||||||
DISTUTILS_USE_SETUPTOOLS=no
|
|
||||||
|
|
||||||
inherit distutils-r1 ${SRC_ECLASS}
|
|
||||||
|
|
||||||
DESCRIPTION="Release metatool used for creating releases based on Gentoo Linux"
|
|
||||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Catalyst"
|
|
||||||
|
|
||||||
LICENSE="GPL-2+"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="ccache doc +iso kernel_linux system-bootloader"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
app-text/asciidoc
|
|
||||||
>=dev-python/snakeoil-0.6.5[${PYTHON_USEDEP}]
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-python/snakeoil-0.6.5[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pydecomp-0.3[${PYTHON_USEDEP}]
|
|
||||||
app-arch/lbzip2
|
|
||||||
app-crypt/shash
|
|
||||||
sys-fs/dosfstools
|
|
||||||
!kernel_FreeBSD? ( || ( app-arch/tar[xattr] app-arch/libarchive[xattr] ) )
|
|
||||||
kernel_FreeBSD? ( app-arch/libarchive[xattr] )
|
|
||||||
amd64? ( >=sys-boot/syslinux-3.72 )
|
|
||||||
x86? ( >=sys-boot/syslinux-3.72 )
|
|
||||||
ccache? ( dev-util/ccache )
|
|
||||||
iso? ( virtual/cdrtools )
|
|
||||||
kernel_linux? ( app-misc/zisofs-tools >=sys-fs/squashfs-tools-2.1 )
|
|
||||||
"
|
|
||||||
PDEPEND="system-bootloader? ( >=sys-apps/memtest86+-5.01-r4
|
|
||||||
sys-boot/grub:2
|
|
||||||
amd64? ( sys-boot/grub[grub_platforms_efi-32,grub_platforms_efi-64] )
|
|
||||||
x86? ( sys-boot/grub[grub_platforms_efi-32] )
|
|
||||||
sys-boot/syslinux
|
|
||||||
sys-boot/shim )"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}/0001-catalyst-Remove-left-over-Id.patch"
|
|
||||||
"${FILESDIR}/0002-catalyst-Remove-Maintained-by-sections.patch"
|
|
||||||
"${FILESDIR}/0003-catalyst-Remove-unnecessary-future-imports.patch"
|
|
||||||
"${FILESDIR}/0004-catalyst-Use-python3-shebangs.patch"
|
|
||||||
"${FILESDIR}/0005-chroot-funcs-use-python3-for-debug-output.patch"
|
|
||||||
)
|
|
||||||
|
|
||||||
python_prepare_all() {
|
|
||||||
python_setup
|
|
||||||
echo VERSION="${PV}" "${PYTHON}" setup.py set_version
|
|
||||||
VERSION="${PV}" "${PYTHON}" setup.py set_version || die
|
|
||||||
distutils-r1_python_prepare_all
|
|
||||||
}
|
|
||||||
|
|
||||||
python_compile_all() {
|
|
||||||
# build the man pages and docs
|
|
||||||
emake
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
if use doc; then
|
|
||||||
dodoc files/HOWTO.html files/docbook-xsl.css
|
|
||||||
fi
|
|
||||||
}
|
|
@ -1,71 +0,0 @@
|
|||||||
From 6aebee1b3adee0c4b3775e69614c36f9e7ba980c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matt Turner <mattst88@gentoo.org>
|
|
||||||
Date: Fri, 27 Mar 2020 23:49:05 -0700
|
|
||||||
Subject: [PATCH 1/4] catalyst: Remove left over $Id$
|
|
||||||
|
|
||||||
Signed-off-by: Matt Turner <mattst88@gentoo.org>
|
|
||||||
---
|
|
||||||
AUTHORS | 2 --
|
|
||||||
README | 2 --
|
|
||||||
TODO | 2 --
|
|
||||||
bin/catalyst | 1 -
|
|
||||||
catalyst/main.py | 1 -
|
|
||||||
5 files changed, 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/AUTHORS b/AUTHORS
|
|
||||||
index 3bf969bd..41366b8c 100644
|
|
||||||
--- a/AUTHORS
|
|
||||||
+++ b/AUTHORS
|
|
||||||
@@ -1,5 +1,3 @@
|
|
||||||
-# $Id: 3bf969bd0798372f72ebdfc74321ac0c81174d68 $
|
|
||||||
-
|
|
||||||
The copyright for catalyst is held by the Gentoo Foundation and by each
|
|
||||||
of the individual contributors.
|
|
||||||
|
|
||||||
diff --git a/README b/README
|
|
||||||
index 530abb35..6dc6a149 100644
|
|
||||||
--- a/README
|
|
||||||
+++ b/README
|
|
||||||
@@ -1,5 +1,3 @@
|
|
||||||
-# $Id: 530abb353ec9c8e52e5bf677fbb628339e78b241 $
|
|
||||||
-
|
|
||||||
Licensing
|
|
||||||
========================
|
|
||||||
|
|
||||||
diff --git a/TODO b/TODO
|
|
||||||
index a2ee05dd..bf397840 100644
|
|
||||||
--- a/TODO
|
|
||||||
+++ b/TODO
|
|
||||||
@@ -1,5 +1,3 @@
|
|
||||||
-# $Id: a2ee05ddd591798b18e2ea570e2f729dd30992f7 $
|
|
||||||
-
|
|
||||||
This file is a rough list of changes that need to be made to catalyst.
|
|
||||||
|
|
||||||
Global:
|
|
||||||
diff --git a/bin/catalyst b/bin/catalyst
|
|
||||||
index 72a4cb4d..d0d3d639 100755
|
|
||||||
--- a/bin/catalyst
|
|
||||||
+++ b/bin/catalyst
|
|
||||||
@@ -5,7 +5,6 @@
|
|
||||||
# Release Engineering Team <releng@gentoo.org>
|
|
||||||
# Andrew Gaffney <agaffney@gentoo.org>
|
|
||||||
# Chris Gianelloni <wolf31o2@wolf31o2.org>
|
|
||||||
-# $Id: 72a4cb4db4d6f247a893e9744ca46f2a97859ba5 $
|
|
||||||
|
|
||||||
|
|
||||||
from __future__ import print_function
|
|
||||||
diff --git a/catalyst/main.py b/catalyst/main.py
|
|
||||||
index 01c456ea..e15d67d9 100644
|
|
||||||
--- a/catalyst/main.py
|
|
||||||
+++ b/catalyst/main.py
|
|
||||||
@@ -4,7 +4,6 @@
|
|
||||||
# Release Engineering Team <releng@gentoo.org>
|
|
||||||
# Andrew Gaffney <agaffney@gentoo.org>
|
|
||||||
# Chris Gianelloni <wolf31o2@wolf31o2.org>
|
|
||||||
-# $Id: 01c456ea99fb8fb3342e3bb0cf2c9b1a56357c65 $
|
|
||||||
|
|
||||||
import argparse
|
|
||||||
import datetime
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
@ -1,108 +0,0 @@
|
|||||||
From 44a1b09c566c05889b71fcdecedf319e162fea8e Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matt Turner <mattst88@gentoo.org>
|
|
||||||
Date: Fri, 27 Mar 2020 23:52:41 -0700
|
|
||||||
Subject: [PATCH 2/4] catalyst: Remove "Maintained by" sections
|
|
||||||
|
|
||||||
They're not useful and out of date to boot.
|
|
||||||
|
|
||||||
Signed-off-by: Matt Turner <mattst88@gentoo.org>
|
|
||||||
---
|
|
||||||
bin/catalyst | 7 -------
|
|
||||||
catalyst/base/resume.py | 5 -----
|
|
||||||
catalyst/fileops.py | 5 -----
|
|
||||||
catalyst/main.py | 7 -------
|
|
||||||
catalyst/version.py | 7 -------
|
|
||||||
doc/catalyst.1.txt | 2 +-
|
|
||||||
6 files changed, 1 insertion(+), 32 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/bin/catalyst b/bin/catalyst
|
|
||||||
index d0d3d639..d3448fd8 100755
|
|
||||||
--- a/bin/catalyst
|
|
||||||
+++ b/bin/catalyst
|
|
||||||
@@ -1,12 +1,5 @@
|
|
||||||
#!/usr/bin/python -OO
|
|
||||||
|
|
||||||
-# Maintained in full by:
|
|
||||||
-# Catalyst Team <catalyst@gentoo.org>
|
|
||||||
-# Release Engineering Team <releng@gentoo.org>
|
|
||||||
-# Andrew Gaffney <agaffney@gentoo.org>
|
|
||||||
-# Chris Gianelloni <wolf31o2@wolf31o2.org>
|
|
||||||
-
|
|
||||||
-
|
|
||||||
from __future__ import print_function
|
|
||||||
|
|
||||||
import sys
|
|
||||||
diff --git a/catalyst/base/resume.py b/catalyst/base/resume.py
|
|
||||||
index b2100735..4234f8b9 100644
|
|
||||||
--- a/catalyst/base/resume.py
|
|
||||||
+++ b/catalyst/base/resume.py
|
|
||||||
@@ -1,10 +1,5 @@
|
|
||||||
#!/usr/bin/python
|
|
||||||
|
|
||||||
-# Maintained in full by:
|
|
||||||
-# Catalyst Team <catalyst@gentoo.org>
|
|
||||||
-# Release Engineering Team <releng@gentoo.org>
|
|
||||||
-# Copyright 2013 Brian Dolbec <dolsen@gentoo.org>
|
|
||||||
-
|
|
||||||
'''resume.py
|
|
||||||
|
|
||||||
Performs autoresume tracking file operations such as
|
|
||||||
diff --git a/catalyst/fileops.py b/catalyst/fileops.py
|
|
||||||
index 878e6303..f7df4a01 100644
|
|
||||||
--- a/catalyst/fileops.py
|
|
||||||
+++ b/catalyst/fileops.py
|
|
||||||
@@ -1,8 +1,3 @@
|
|
||||||
-
|
|
||||||
-# Maintained in full by:
|
|
||||||
-# Catalyst Team <catalyst@gentoo.org>
|
|
||||||
-# Release Engineering Team <releng@gentoo.org>
|
|
||||||
-
|
|
||||||
'''fileops.py
|
|
||||||
|
|
||||||
Performs file operations such as pack/unpack,
|
|
||||||
diff --git a/catalyst/main.py b/catalyst/main.py
|
|
||||||
index e15d67d9..23093e97 100644
|
|
||||||
--- a/catalyst/main.py
|
|
||||||
+++ b/catalyst/main.py
|
|
||||||
@@ -1,10 +1,3 @@
|
|
||||||
-
|
|
||||||
-# Maintained in full by:
|
|
||||||
-# Catalyst Team <catalyst@gentoo.org>
|
|
||||||
-# Release Engineering Team <releng@gentoo.org>
|
|
||||||
-# Andrew Gaffney <agaffney@gentoo.org>
|
|
||||||
-# Chris Gianelloni <wolf31o2@wolf31o2.org>
|
|
||||||
-
|
|
||||||
import argparse
|
|
||||||
import datetime
|
|
||||||
import os
|
|
||||||
diff --git a/catalyst/version.py b/catalyst/version.py
|
|
||||||
index f0268686..fcf46fb0 100644
|
|
||||||
--- a/catalyst/version.py
|
|
||||||
+++ b/catalyst/version.py
|
|
||||||
@@ -1,10 +1,3 @@
|
|
||||||
-# Maintained in full by:
|
|
||||||
-# Catalyst Team <catalyst@gentoo.org>
|
|
||||||
-# Release Engineering Team <releng@gentoo.org>
|
|
||||||
-# Copyright: 2011 Brian Harring <ferringb@gmail.com>
|
|
||||||
-# License: BSD/GPL2
|
|
||||||
-# Copied & edited by: Brian Dolbec <dolsen@gentoo.org>
|
|
||||||
-
|
|
||||||
'''Version information and/or git version information
|
|
||||||
'''
|
|
||||||
|
|
||||||
diff --git a/doc/catalyst.1.txt b/doc/catalyst.1.txt
|
|
||||||
index 5a7a4d64..dc6c7acb 100644
|
|
||||||
--- a/doc/catalyst.1.txt
|
|
||||||
+++ b/doc/catalyst.1.txt
|
|
||||||
@@ -120,7 +120,7 @@ NOTES
|
|
||||||
stager projects, both of which were used to create pre-1.4 Gentoo releases.
|
|
||||||
|
|
||||||
*catalyst* was originally conceived and coded by both Daniel Robbins and
|
|
||||||
-John Davis. It is currently maintained by Chris Gianelloni and Eric Edgar and
|
|
||||||
+John Davis. It is currently maintained by the Catalyst Project Team and
|
|
||||||
has been mostly re-written.
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
@ -1,97 +0,0 @@
|
|||||||
From 45cf8f43116b13c4648fcb532aba93aff18670ae Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matt Turner <mattst88@gentoo.org>
|
|
||||||
Date: Sat, 28 Mar 2020 00:02:37 -0700
|
|
||||||
Subject: [PATCH 3/4] catalyst: Remove unnecessary future imports
|
|
||||||
|
|
||||||
Catalyst has been python 3-only for a while.
|
|
||||||
|
|
||||||
Signed-off-by: Matt Turner <mattst88@gentoo.org>
|
|
||||||
---
|
|
||||||
bin/catalyst | 2 --
|
|
||||||
bin/catalyst.git | 2 --
|
|
||||||
bin/pylint | 2 --
|
|
||||||
catalyst/log.py | 2 --
|
|
||||||
doc/make_target_table.py | 2 --
|
|
||||||
setup.py | 2 --
|
|
||||||
6 files changed, 12 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/bin/catalyst b/bin/catalyst
|
|
||||||
index d3448fd8..228a913e 100755
|
|
||||||
--- a/bin/catalyst
|
|
||||||
+++ b/bin/catalyst
|
|
||||||
@@ -1,7 +1,5 @@
|
|
||||||
#!/usr/bin/python -OO
|
|
||||||
|
|
||||||
-from __future__ import print_function
|
|
||||||
-
|
|
||||||
import sys
|
|
||||||
|
|
||||||
# This block ensures that ^C interrupts are handled quietly.
|
|
||||||
diff --git a/bin/catalyst.git b/bin/catalyst.git
|
|
||||||
index eb6234b9..733ade15 100755
|
|
||||||
--- a/bin/catalyst.git
|
|
||||||
+++ b/bin/catalyst.git
|
|
||||||
@@ -5,8 +5,6 @@
|
|
||||||
|
|
||||||
"""Run catalyst from git using local modules/scripts."""
|
|
||||||
|
|
||||||
-from __future__ import print_function
|
|
||||||
-
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
import tempfile
|
|
||||||
diff --git a/bin/pylint b/bin/pylint
|
|
||||||
index b0018278..6c718134 100755
|
|
||||||
--- a/bin/pylint
|
|
||||||
+++ b/bin/pylint
|
|
||||||
@@ -4,8 +4,6 @@
|
|
||||||
|
|
||||||
"""Run pylint with the right settings."""
|
|
||||||
|
|
||||||
-from __future__ import print_function
|
|
||||||
-
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
|
|
||||||
diff --git a/catalyst/log.py b/catalyst/log.py
|
|
||||||
index d640dece..7956c28f 100644
|
|
||||||
--- a/catalyst/log.py
|
|
||||||
+++ b/catalyst/log.py
|
|
||||||
@@ -8,8 +8,6 @@ another level "notice" between warning & info, and all output goes through
|
|
||||||
the "catalyst" logger.
|
|
||||||
"""
|
|
||||||
|
|
||||||
-from __future__ import print_function
|
|
||||||
-
|
|
||||||
import logging
|
|
||||||
import logging.handlers
|
|
||||||
import os
|
|
||||||
diff --git a/doc/make_target_table.py b/doc/make_target_table.py
|
|
||||||
index c4b49ad9..d1f97c9b 100755
|
|
||||||
--- a/doc/make_target_table.py
|
|
||||||
+++ b/doc/make_target_table.py
|
|
||||||
@@ -8,8 +8,6 @@
|
|
||||||
# source the testpath file then run "doc/make_target_table.py"
|
|
||||||
|
|
||||||
|
|
||||||
-from __future__ import print_function
|
|
||||||
-
|
|
||||||
import glob
|
|
||||||
import locale
|
|
||||||
import os
|
|
||||||
diff --git a/setup.py b/setup.py
|
|
||||||
index c6b52dcf..c6553b5d 100755
|
|
||||||
--- a/setup.py
|
|
||||||
+++ b/setup.py
|
|
||||||
@@ -1,8 +1,6 @@
|
|
||||||
#!/usr/bin/env python
|
|
||||||
"""Catalyst is a release building tool used by Gentoo Linux"""
|
|
||||||
|
|
||||||
-from __future__ import print_function
|
|
||||||
-
|
|
||||||
import codecs as _codecs
|
|
||||||
from distutils.core import setup as _setup, Command as _Command
|
|
||||||
from email.utils import parseaddr as _parseaddr
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
@ -1,67 +0,0 @@
|
|||||||
From 83ce8eb9a11987c93a8c361d745b3a7444d4ad23 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matt Turner <mattst88@gentoo.org>
|
|
||||||
Date: Sat, 28 Mar 2020 00:00:58 -0700
|
|
||||||
Subject: [PATCH 4/4] catalyst: Use python3 shebangs
|
|
||||||
|
|
||||||
Signed-off-by: Matt Turner <mattst88@gentoo.org>
|
|
||||||
---
|
|
||||||
bin/catalyst | 2 +-
|
|
||||||
bin/catalyst.git | 2 +-
|
|
||||||
bin/pylint | 2 +-
|
|
||||||
catalyst/base/resume.py | 2 +-
|
|
||||||
targets/stage1/build.py | 2 +-
|
|
||||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/bin/catalyst b/bin/catalyst
|
|
||||||
index 228a913e..97cbb0f9 100755
|
|
||||||
--- a/bin/catalyst
|
|
||||||
+++ b/bin/catalyst
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-#!/usr/bin/python -OO
|
|
||||||
+#!/usr/bin/python3 -OO
|
|
||||||
|
|
||||||
import sys
|
|
||||||
|
|
||||||
diff --git a/bin/catalyst.git b/bin/catalyst.git
|
|
||||||
index 733ade15..9b3deaa1 100755
|
|
||||||
--- a/bin/catalyst.git
|
|
||||||
+++ b/bin/catalyst.git
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-#!/usr/bin/python
|
|
||||||
+#!/usr/bin/python3
|
|
||||||
# -*- coding: utf-8 -*-
|
|
||||||
# Copyright 1999-2015 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
diff --git a/bin/pylint b/bin/pylint
|
|
||||||
index 6c718134..98108f5f 100755
|
|
||||||
--- a/bin/pylint
|
|
||||||
+++ b/bin/pylint
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-#!/usr/bin/python
|
|
||||||
+#!/usr/bin/python3
|
|
||||||
# Copyright 1999-2015 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
diff --git a/catalyst/base/resume.py b/catalyst/base/resume.py
|
|
||||||
index 4234f8b9..6a4ebdfa 100644
|
|
||||||
--- a/catalyst/base/resume.py
|
|
||||||
+++ b/catalyst/base/resume.py
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-#!/usr/bin/python
|
|
||||||
+#!/usr/bin/python3
|
|
||||||
|
|
||||||
'''resume.py
|
|
||||||
|
|
||||||
diff --git a/targets/stage1/build.py b/targets/stage1/build.py
|
|
||||||
index fa4fd136..4373126b 100755
|
|
||||||
--- a/targets/stage1/build.py
|
|
||||||
+++ b/targets/stage1/build.py
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-#!/usr/bin/python
|
|
||||||
+#!/usr/bin/python3
|
|
||||||
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
|||||||
diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
|
|
||||||
index f3727d0..e1c82c1 100755
|
|
||||||
--- a/targets/support/chroot-functions.sh
|
|
||||||
+++ b/targets/support/chroot-functions.sh
|
|
||||||
@@ -285,13 +285,13 @@ run_merge() {
|
|
||||||
}
|
|
||||||
|
|
||||||
show_debug() {
|
|
||||||
- if [ "${clst_DEBUG}" = "1" ]
|
|
||||||
+ if [ -n "${clst_DEBUG}" ]
|
|
||||||
then
|
|
||||||
unset PACKAGES
|
|
||||||
echo "DEBUG:"
|
|
||||||
echo "Profile/target info:"
|
|
||||||
echo "Profile inheritance:"
|
|
||||||
- python -c 'import portage; print(portage.settings.profiles)'
|
|
||||||
+ python3 -c 'import portage; print(portage.settings.profiles)'
|
|
||||||
echo
|
|
||||||
# TODO: make this work on non-portage
|
|
||||||
emerge --info
|
|
@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="project">
|
|
||||||
<email>catalyst@gentoo.org</email>
|
|
||||||
</maintainer>
|
|
||||||
<maintainer type="project">
|
|
||||||
<email>livecd@gentoo.org</email>
|
|
||||||
<name>Gentoo LiveCD Project</name>
|
|
||||||
</maintainer>
|
|
||||||
<use>
|
|
||||||
<flag name="ccache">Enables ccache support</flag>
|
|
||||||
<flag name="iso">Pulls in the depends for building iso images</flag>
|
|
||||||
<flag name="system-bootloader">Pulls in the depends needed to setup livecd bootloader from the host system rather than using a cdtar</flag>
|
|
||||||
</use>
|
|
||||||
</pkgmetadata>
|
|
@ -1 +0,0 @@
|
|||||||
DIST repo-2.8 39134 BLAKE2B af52a2c06e09de83100cb297d585f89bcbe85d6e9e5c358024a371ee4d47c59992745d1088b164fc670cdd9db7394a5f3521967e3eb80840c53993af8b0172b1 SHA512 6d577fce34eb298035a7b98c24fc21521c8c9efbdf02abc37af8a54552893ecf8cdce2db5efbc5398d7f99226408f6cc9ce2f81c2961d9d5dd21fb0264194431
|
|
@ -1,4 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
</pkgmetadata>
|
|
@ -1,32 +0,0 @@
|
|||||||
# Copyright 1999-2020 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
# NB: The $PV tracks the *repo launcher version*, not the last signed release
|
|
||||||
# of the repo project. The launcher only gets a new update when changes are
|
|
||||||
# made in it.
|
|
||||||
|
|
||||||
EAPI="7"
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{6..7} )
|
|
||||||
|
|
||||||
inherit python-r1
|
|
||||||
|
|
||||||
DESCRIPTION="Google tool for managing git, particularly multiple repos"
|
|
||||||
HOMEPAGE="https://gerrit.googlesource.com/git-repo"
|
|
||||||
SRC_URI="https://storage.googleapis.com/git-repo-downloads/${P}"
|
|
||||||
|
|
||||||
LICENSE="Apache-2.0"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
|
||||||
IUSE=""
|
|
||||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
|
||||||
|
|
||||||
RDEPEND="${PYTHON_DEPS}
|
|
||||||
!app-admin/radmind
|
|
||||||
!dev-util/repo"
|
|
||||||
|
|
||||||
S=${WORKDIR}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
python_foreach_impl python_newscript "${DISTDIR}/${P}" ${PN}
|
|
||||||
}
|
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_7 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit autotools linux-info python-r1 systemd
|
inherit autotools linux-info python-r1 systemd
|
||||||
|
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{6,7} )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
PYTHON_REQ_USE='threads(+),xml(+)'
|
PYTHON_REQ_USE='threads(+),xml(+)'
|
||||||
inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam
|
inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
# Copyright 1999-2016 Gentoo Foundation
|
# Copyright 1999-2016 Gentoo Foundation
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=6
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit bash-completion-r1 python-single-r1
|
inherit bash-completion-r1 python-single-r1
|
||||||
|
|
||||||
@ -15,12 +15,15 @@ LICENSE="Apache-2.0"
|
|||||||
SLOT="0"
|
SLOT="0"
|
||||||
KEYWORDS="amd64"
|
KEYWORDS="amd64"
|
||||||
IUSE=""
|
IUSE=""
|
||||||
|
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||||
|
|
||||||
S="${WORKDIR}/${PN}"
|
S="${WORKDIR}/${PN}"
|
||||||
|
|
||||||
DEPEND="${PYTHON_DEPS}"
|
RDEPEND="${PYTHON_DEPS}
|
||||||
RDEPEND="${DEPEND}
|
$(python_gen_cond_dep '
|
||||||
dev-python/crcmod[${PYTHON_USEDEP}]"
|
dev-python/crcmod[${PYTHON_USEDEP}]
|
||||||
|
')"
|
||||||
|
BDEPEND="${RDEPEND}"
|
||||||
|
|
||||||
src_prepare() {
|
src_prepare() {
|
||||||
# Drop unused python2 code
|
# Drop unused python2 code
|
@ -8,7 +8,6 @@ app-misc/editor-wrapper *
|
|||||||
=app-misc/jq-1.6-r3 ~arm64
|
=app-misc/jq-1.6-r3 ~arm64
|
||||||
~app-arch/pbzip2-1.1.12 ~arm64
|
~app-arch/pbzip2-1.1.12 ~arm64
|
||||||
=app-arch/pigz-2.3.3 ~arm64
|
=app-arch/pigz-2.3.3 ~arm64
|
||||||
=app-text/asciidoc-8.6.9-r3 ~arm64
|
|
||||||
=dev-cpp/gflags-2.2.0 ~arm64
|
=dev-cpp/gflags-2.2.0 ~arm64
|
||||||
=dev-cpp/glog-0.3.4-r1 ~arm64
|
=dev-cpp/glog-0.3.4-r1 ~arm64
|
||||||
=dev-embedded/u-boot-tools-2021.04_rc2 ~arm64
|
=dev-embedded/u-boot-tools-2021.04_rc2 ~arm64
|
||||||
@ -20,7 +19,6 @@ app-misc/editor-wrapper *
|
|||||||
=dev-libs/libassuan-2.5.1 ~arm64
|
=dev-libs/libassuan-2.5.1 ~arm64
|
||||||
=dev-libs/libevent-2.1.8 ~arm64
|
=dev-libs/libevent-2.1.8 ~arm64
|
||||||
=dev-libs/liblinear-210-r1 ~arm64
|
=dev-libs/liblinear-210-r1 ~arm64
|
||||||
=dev-libs/libnl-3.2.27 ~arm64
|
|
||||||
=dev-libs/libusb-1.0.21 ~arm64
|
=dev-libs/libusb-1.0.21 ~arm64
|
||||||
|
|
||||||
# needed to force enable userspace-rcu for arm64
|
# needed to force enable userspace-rcu for arm64
|
||||||
@ -29,32 +27,8 @@ app-misc/editor-wrapper *
|
|||||||
=dev-perl/Text-Unidecode-1.270.0 ~arm64
|
=dev-perl/Text-Unidecode-1.270.0 ~arm64
|
||||||
|
|
||||||
# needed by arm64-native SDK
|
# needed by arm64-native SDK
|
||||||
=dev-python/astroid-1.4.8 *
|
|
||||||
=dev-python/backports-functools-lru-cache-1.3 *
|
|
||||||
=dev-python/configparser-3.5.0 *
|
|
||||||
=dev-python/ctypesgen-0_p72-r1 *
|
|
||||||
|
|
||||||
=dev-python/flake8-2.5.4 ~arm64
|
|
||||||
|
|
||||||
# needed by arm64-native SDK
|
|
||||||
=dev-python/isort-4.2.5 *
|
|
||||||
=dev-python/lazy-object-proxy-1.2.1 *
|
|
||||||
|
|
||||||
=dev-python/mako-1.0.3 ~arm64
|
|
||||||
|
|
||||||
# needed by arm64-native SDK
|
|
||||||
=dev-python/mccabe-0.2.1 *
|
|
||||||
|
|
||||||
dev-python/pep8 ~arm64
|
|
||||||
|
|
||||||
# needed by arm64-native SDK
|
|
||||||
=dev-python/pyflakes-0.8.1 *
|
|
||||||
=dev-python/pylint-1.6.5-r1 *
|
|
||||||
=dev-python/wrapt-1.10.5 *
|
|
||||||
dev-util/checkbashisms *
|
dev-util/checkbashisms *
|
||||||
|
|
||||||
=dev-util/ninja-1.8.2 ~arm64
|
|
||||||
|
|
||||||
# needed by arm64-native SDK
|
# needed by arm64-native SDK
|
||||||
dev-util/patchelf *
|
dev-util/patchelf *
|
||||||
|
|
||||||
@ -85,13 +59,11 @@ sys-apps/dtc ~arm64
|
|||||||
# needed by arm64-native SDK
|
# needed by arm64-native SDK
|
||||||
sys-apps/debianutils *
|
sys-apps/debianutils *
|
||||||
|
|
||||||
=sys-apps/i2c-tools-3.1.1-r1 ~arm64
|
|
||||||
|
|
||||||
# needed to force enable lshw for arm64
|
# needed to force enable lshw for arm64
|
||||||
=sys-apps/lshw-02.17b-r2 **
|
=sys-apps/lshw-02.17b-r2 **
|
||||||
|
|
||||||
=sys-apps/man-db-2.7.6.1-r2 ~arm64
|
=sys-apps/man-db-2.7.6.1-r2 ~arm64
|
||||||
=sys-apps/policycoreutils-3.1-r2 ~arm64
|
=sys-apps/policycoreutils-3.1-r3 ~arm64
|
||||||
=sys-apps/kexec-tools-2.0.17-r1 ~arm64
|
=sys-apps/kexec-tools-2.0.17-r1 ~arm64
|
||||||
|
|
||||||
# needed by arm64-native SDK
|
# needed by arm64-native SDK
|
||||||
@ -119,9 +91,8 @@ sys-apps/debianutils *
|
|||||||
=sys-fs/lsscsi-0.28 ~arm64
|
=sys-fs/lsscsi-0.28 ~arm64
|
||||||
=sys-fs/quota-4.04-r1 ~arm64
|
=sys-fs/quota-4.04-r1 ~arm64
|
||||||
=sys-libs/efivar-31 ~arm64
|
=sys-libs/efivar-31 ~arm64
|
||||||
=sys-libs/libcap-ng-0.7.8 ~arm64
|
=sys-libs/libselinux-3.1-r2 ~arm64
|
||||||
=sys-libs/libselinux-3.1-r1 ~arm64
|
=sys-libs/libsemanage-3.1-r2 ~arm64
|
||||||
=sys-libs/libsemanage-3.1-r1 ~arm64
|
|
||||||
=sys-libs/libsepol-3.1 ~arm64
|
=sys-libs/libsepol-3.1 ~arm64
|
||||||
=sys-power/iasl-20161222 ~arm64
|
=sys-power/iasl-20161222 ~arm64
|
||||||
=sys-process/tini-0.18.0 ~arm64
|
=sys-process/tini-0.18.0 ~arm64
|
||||||
|
@ -1,3 +1 @@
|
|||||||
# arm64 provided
|
# arm64 provided
|
||||||
|
|
||||||
dev-libs/gobject-introspection-1.40.0-r1
|
|
||||||
|
@ -13,13 +13,13 @@ USE_EXPAND="${USE_EXPAND} GO_VERSION"
|
|||||||
# Extra use flags for CoreOS SDK
|
# Extra use flags for CoreOS SDK
|
||||||
USE="${USE} cros_host expat -cracklib -introspection -cups -tcpd -berkdb"
|
USE="${USE} cros_host expat -cracklib -introspection -cups -tcpd -berkdb"
|
||||||
|
|
||||||
# Continue using Python 2 as the default version, but build Python 3 support.
|
# Use Python 3 as the default version
|
||||||
USE="${USE} python_single_target_python2_7 -python_single_target_python3_6"
|
USE="${USE} -python_single_target_python2_7 python_single_target_python3_9"
|
||||||
USE="${USE} python_targets_python2_7 python_targets_python3_6"
|
USE="${USE} -python_targets_python2_7 python_targets_python3_9"
|
||||||
|
|
||||||
# Continue using Python 2 as the default version, but build Python 3 in SDK too.
|
# Use Python 3 as the default version
|
||||||
BOOTSTRAP_USE="${BOOTSTRAP_USE} python_single_target_python2_7 -python_single_target_python3_6"
|
BOOTSTRAP_USE="${BOOTSTRAP_USE} -python_single_target_python2_7 python_single_target_python3_9"
|
||||||
BOOTSTRAP_USE="${BOOTSTRAP_USE} python_targets_python2_7 python_targets_python3_6"
|
BOOTSTRAP_USE="${BOOTSTRAP_USE} -python_targets_python2_7 python_targets_python3_9"
|
||||||
|
|
||||||
# Never install cron or cron jobs
|
# Never install cron or cron jobs
|
||||||
USE="${USE} -cron"
|
USE="${USE} -cron"
|
||||||
|
@ -9,15 +9,12 @@
|
|||||||
=coreos-devel/fero-client-0.1.1 **
|
=coreos-devel/fero-client-0.1.1 **
|
||||||
|
|
||||||
# Accept unstable host Rust compilers
|
# Accept unstable host Rust compilers
|
||||||
=dev-lang/rust-1.57.0 ~amd64 ~arm64
|
=dev-lang/rust-1.57.0-r1 ~amd64 ~arm64
|
||||||
=virtual/rust-1.57.0 ~amd64 ~arm64
|
=virtual/rust-1.57.0 ~amd64 ~arm64
|
||||||
|
|
||||||
# dev-libs/openssl-3.0.0 is still in testing phase at this point
|
# dev-libs/openssl-3.0.0 is still in testing phase at this point
|
||||||
=dev-libs/openssl-3.0.0 ~amd64 ~arm64
|
=dev-libs/openssl-3.0.0 ~amd64 ~arm64
|
||||||
|
|
||||||
# Needed by coreos-oem-gce
|
|
||||||
dev-python/boto ~amd64 ~arm64
|
|
||||||
|
|
||||||
# no version marked stable upstream
|
# no version marked stable upstream
|
||||||
dev-util/checkbashisms
|
dev-util/checkbashisms
|
||||||
|
|
||||||
@ -25,9 +22,8 @@ dev-util/checkbashisms
|
|||||||
|
|
||||||
=dev-libs/libgcrypt-1.9.4 ~amd64 ~arm64
|
=dev-libs/libgcrypt-1.9.4 ~amd64 ~arm64
|
||||||
|
|
||||||
=dev-libs/libxml2-2.9.12-r2 ~amd64 ~arm64
|
# needed for arm64 sdk
|
||||||
|
=dev-util/pahole-1.20 ~arm64
|
||||||
=dev-util/dwarves-1.19 ~amd64
|
|
||||||
|
|
||||||
=net-libs/gnutls-3.7.1 ~amd64 ~arm64
|
=net-libs/gnutls-3.7.1 ~amd64 ~arm64
|
||||||
|
|
||||||
|
@ -14,20 +14,7 @@ dev-vcs/git webdav curl bash-completion
|
|||||||
net-misc/curl kerberos threads telnet
|
net-misc/curl kerberos threads telnet
|
||||||
net-misc/iputils arping tracepath traceroute
|
net-misc/iputils arping tracepath traceroute
|
||||||
sys-devel/gettext -git
|
sys-devel/gettext -git
|
||||||
app-emulation/qemu aio caps curl -doc ncurses png python threads uuid vhost-net virtfs vnc -xkb -slirp -jpeg qemu_softmmu_targets_x86_64 qemu_softmmu_targets_aarch64 python_targets_python3_7 python_single_target_python3_6
|
app-emulation/qemu aio caps curl -doc ncurses png python threads uuid vhost-net virtfs vnc -xkb -slirp -jpeg qemu_softmmu_targets_x86_64 qemu_softmmu_targets_aarch64
|
||||||
|
|
||||||
# python3 problems
|
|
||||||
app-portage/gentoolkit python_single_target_python3_6
|
|
||||||
sys-apps/portage python_single_target_python3_6
|
|
||||||
|
|
||||||
# python3 only
|
|
||||||
dev-util/dwarves python_single_target_python3_6
|
|
||||||
dev-util/gdbus-codegen python_single_target_python3_6
|
|
||||||
dev-util/glib-utils python_single_target_python3_6
|
|
||||||
net-fs/samba python_single_target_python3_6
|
|
||||||
sys-libs/talloc python_single_target_python3_6
|
|
||||||
sys-libs/tdb python_single_target_python3_6
|
|
||||||
sys-libs/tevent python_single_target_python3_6
|
|
||||||
|
|
||||||
sys-apps/gptfdisk -icu
|
sys-apps/gptfdisk -icu
|
||||||
|
|
||||||
@ -36,7 +23,7 @@ sys-libs/gdbm berkdb
|
|||||||
|
|
||||||
dev-vcs/git -pcre-jit -perl -iconv
|
dev-vcs/git -pcre-jit -perl -iconv
|
||||||
|
|
||||||
net-analyzer/nmap ncat -lua
|
net-analyzer/nmap ncat -system-lua
|
||||||
|
|
||||||
# removes mta dependencies
|
# removes mta dependencies
|
||||||
app-admin/sudo -sendmail
|
app-admin/sudo -sendmail
|
||||||
|
@ -4,9 +4,6 @@ app-crypt/gnupg smartcard ssl
|
|||||||
# We don't need integration with cvs, perl, or subversion in git, so we can
|
# We don't need integration with cvs, perl, or subversion in git, so we can
|
||||||
dev-vcs/git cvs perl subversion
|
dev-vcs/git cvs perl subversion
|
||||||
|
|
||||||
# not needed, requires cython
|
|
||||||
dev-lang/yasm python
|
|
||||||
|
|
||||||
# not needed, requires dev-lang/python-exec
|
# not needed, requires dev-lang/python-exec
|
||||||
sys-apps/util-linux python
|
sys-apps/util-linux python
|
||||||
|
|
||||||
|
@ -1,13 +1,15 @@
|
|||||||
# Never enable experimental code
|
# Never enable experimental code
|
||||||
kdbus
|
kdbus
|
||||||
|
|
||||||
# We default to python 3.6 for now
|
# We default to python 3.9 for now
|
||||||
|
python_targets_python2_7
|
||||||
|
python_single_target_python2_7
|
||||||
|
python_targets_python3_6
|
||||||
|
python_single_target_python3_6
|
||||||
python_targets_python3_7
|
python_targets_python3_7
|
||||||
python_single_target_python3_7
|
python_single_target_python3_7
|
||||||
python_targets_python3_8
|
python_targets_python3_8
|
||||||
python_single_target_python3_8
|
python_single_target_python3_8
|
||||||
python_targets_python3_9
|
|
||||||
python_single_target_python3_9
|
|
||||||
python_targets_python3_10
|
python_targets_python3_10
|
||||||
python_single_target_python3_10
|
python_single_target_python3_10
|
||||||
|
|
||||||
|
@ -2,4 +2,4 @@
|
|||||||
sys-auth/sssd-1.13.1
|
sys-auth/sssd-1.13.1
|
||||||
|
|
||||||
# Stick to one version of Python in the ACI.
|
# Stick to one version of Python in the ACI.
|
||||||
dev-lang/python-2.7
|
dev-lang/python-3.9
|
||||||
|
@ -8,7 +8,6 @@ dev-libs/dbus-glib tools
|
|||||||
dev-libs/elfutils -utils
|
dev-libs/elfutils -utils
|
||||||
dev-libs/openssl pkcs11
|
dev-libs/openssl pkcs11
|
||||||
dev-util/perf -doc -demangle -tui -ncurses -perl -python
|
dev-util/perf -doc -demangle -tui -ncurses -perl -python
|
||||||
dev-util/perf-next -doc -demangle -tui -ncurses -perl -python
|
|
||||||
net-analyzer/tcpdump -chroot
|
net-analyzer/tcpdump -chroot
|
||||||
net-misc/dhcp -server
|
net-misc/dhcp -server
|
||||||
net-misc/iperf threads
|
net-misc/iperf threads
|
||||||
|
@ -28,8 +28,5 @@ sys-libs/zlib static-libs
|
|||||||
virtual/jpeg static-libs
|
virtual/jpeg static-libs
|
||||||
x11-libs/pixman static-libs
|
x11-libs/pixman static-libs
|
||||||
|
|
||||||
cross-x86_64-cros-linux-gnu/gdb python_single_target_python3_6 -python_single_target_python3_7
|
|
||||||
cross-aarch64-cros-linux-gnu/gdb python_single_target_python3_6 -python_single_target_python3_7
|
|
||||||
|
|
||||||
# Enable gssapi for SDK
|
# Enable gssapi for SDK
|
||||||
net-dns/bind-tools gssapi
|
net-dns/bind-tools gssapi
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_7 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
inherit autotools flag-o-matic linux-info python-any-r1 readme.gentoo-r1 systemd virtualx multilib-minimal
|
inherit autotools flag-o-matic linux-info python-any-r1 readme.gentoo-r1 systemd virtualx multilib-minimal
|
||||||
|
|
||||||
DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
|
DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="7"
|
EAPI="7"
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
PYTHON_REQ_USE="xml"
|
PYTHON_REQ_USE="xml"
|
||||||
|
|
||||||
inherit multilib python-r1 toolchain-funcs bash-completion-r1
|
inherit multilib python-r1 toolchain-funcs bash-completion-r1
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="7"
|
EAPI="7"
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
PYTHON_REQ_USE="xml"
|
PYTHON_REQ_USE="xml"
|
||||||
|
|
||||||
inherit multilib python-r1 toolchain-funcs bash-completion-r1
|
inherit multilib python-r1 toolchain-funcs bash-completion-r1
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="7"
|
EAPI="7"
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
PYTHON_REQ_USE="xml"
|
PYTHON_REQ_USE="xml"
|
||||||
|
|
||||||
inherit multilib python-r1 toolchain-funcs bash-completion-r1
|
inherit multilib python-r1 toolchain-funcs bash-completion-r1
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
DISTUTILS_USE_SETUPTOOLS=no
|
DISTUTILS_USE_SETUPTOOLS=no
|
||||||
PYTHON_COMPAT=( pypy3 python3_{6..7} )
|
PYTHON_COMPAT=( pypy3 python3_{6..10} )
|
||||||
PYTHON_REQ_USE='bzip2(+),threads(+)'
|
PYTHON_REQ_USE='bzip2(+),threads(+)'
|
||||||
|
|
||||||
inherit distutils-r1 linux-info tmpfiles prefix
|
inherit distutils-r1 linux-info tmpfiles prefix
|
@ -2,8 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
# Flatcar: We still have python 3.6.
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
PYTHON_COMPAT=( python3_{5,6,7} )
|
|
||||||
|
|
||||||
if [[ ${PV} == 9999 ]]; then
|
if [[ ${PV} == 9999 ]]; then
|
||||||
EGIT_REPO_URI="https://github.com/systemd/systemd.git"
|
EGIT_REPO_URI="https://github.com/systemd/systemd.git"
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_7 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit autotools flag-o-matic linux-info multilib-minimal python-single-r1 pam systemd toolchain-funcs
|
inherit autotools flag-o-matic linux-info multilib-minimal python-single-r1 pam systemd toolchain-funcs
|
||||||
|
|
@ -16,7 +16,7 @@ fi
|
|||||||
inherit cros-workon
|
inherit cros-workon
|
||||||
|
|
||||||
if [[ -n ${GRUB_AUTOGEN} ]]; then
|
if [[ -n ${GRUB_AUTOGEN} ]]; then
|
||||||
PYTHON_COMPAT=( python{3_5,3_6,3_7} )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
WANT_LIBTOOL=none
|
WANT_LIBTOOL=none
|
||||||
inherit autotools python-any-r1
|
inherit autotools python-any-r1
|
||||||
fi
|
fi
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=6
|
EAPI=6
|
||||||
PYTHON_COMPAT=( python{3_6,3_7} )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit eutils flag-o-matic python-single-r1 toolchain-funcs
|
inherit eutils flag-o-matic python-single-r1 toolchain-funcs
|
||||||
|
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{6,7} )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
TMPFILES_OPTIONAL=1
|
TMPFILES_OPTIONAL=1
|
||||||
|
|
||||||
inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \
|
inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
PYTHON_REQ_USE="threads(+)"
|
PYTHON_REQ_USE="threads(+)"
|
||||||
inherit python-single-r1 waf-utils multilib-minimal
|
inherit python-single-r1 waf-utils multilib-minimal
|
||||||
|
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="7"
|
EAPI="7"
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
USE_RUBY="ruby25 ruby26 ruby27"
|
USE_RUBY="ruby25 ruby26 ruby27"
|
||||||
|
|
||||||
# No, I am not calling ruby-ng
|
# No, I am not calling ruby-ng
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="7"
|
EAPI="7"
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
USE_RUBY="ruby25 ruby26 ruby27"
|
USE_RUBY="ruby25 ruby26 ruby27"
|
||||||
|
|
||||||
# No, I am not calling ruby-ng
|
# No, I am not calling ruby-ng
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI="7"
|
EAPI="7"
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
USE_RUBY="ruby25 ruby26 ruby27"
|
USE_RUBY="ruby25 ruby26 ruby27"
|
||||||
|
|
||||||
# No, I am not calling ruby-ng
|
# No, I am not calling ruby-ng
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
# flatcar changes
|
# flatcar changes
|
||||||
inherit python-r1 toolchain-funcs multilib-minimal systemd
|
inherit python-r1 toolchain-funcs multilib-minimal systemd
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit python-r1 toolchain-funcs multilib-minimal
|
inherit python-r1 toolchain-funcs multilib-minimal
|
||||||
|
|
@ -2,7 +2,7 @@
|
|||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=7
|
EAPI=7
|
||||||
PYTHON_COMPAT=( python3_6 )
|
PYTHON_COMPAT=( python3_{6..10} )
|
||||||
|
|
||||||
inherit python-r1 toolchain-funcs multilib-minimal
|
inherit python-r1 toolchain-funcs multilib-minimal
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user