mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-26 08:01:14 +02:00
Merge pull request #2167 from flatcar/buildbot/weekly-portage-stable-package-updates-2024-07-29
Weekly portage-stable package updates 2024-07-29
This commit is contained in:
commit
7aa0166ea2
@ -563,6 +563,7 @@ sys-firmware/ipxe
|
||||
sys-firmware/seabios-bin
|
||||
sys-firmware/sgabios
|
||||
|
||||
sys-fs/btrfs-progs
|
||||
sys-fs/cryptsetup
|
||||
sys-fs/dosfstools
|
||||
sys-fs/e2fsprogs
|
||||
|
2
changelog/security/2024-07-29-weekly-updates.md
Normal file
2
changelog/security/2024-07-29-weekly-updates.md
Normal file
@ -0,0 +1,2 @@
|
||||
- curl ([CVE-2024-6197](https://nvd.nist.gov/vuln/detail/CVE-2024-6197), [CVE-2024-6874](https://nvd.nist.gov/vuln/detail/CVE-2024-6874))
|
||||
- podman ([CVE-2024-3727](https://nvd.nist.gov/vuln/detail/CVE-2024-3727))
|
19
changelog/updates/2024-07-29-weekly-updates.md
Normal file
19
changelog/updates/2024-07-29-weekly-updates.md
Normal file
@ -0,0 +1,19 @@
|
||||
- btrfs-progs ([6.9.2](https://github.com/kdave/btrfs-progs/blob/v6.9.2/CHANGES))
|
||||
- c-ares ([1.29.0](https://github.com/c-ares/c-ares/releases/tag/cares-1_29_0))
|
||||
- cryptsetup ([2.7.2](https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.7.2/docs/v2.7.2-ReleaseNotes) (includes [2.7.1](https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.7.1/docs/v2.7.1-ReleaseNotes) and [2.7.0](https://gitlab.com/cryptsetup/cryptsetup/-/blob/v2.7.0/docs/v2.7.0-ReleaseNotes)))
|
||||
- curl ([8.9.0](https://curl.se/ch/8.9.0.html))
|
||||
- e2fsprogs ([1.47.1](https://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.47.1))
|
||||
- ethtool ([6.9](https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/tree/NEWS?h=v6.9))
|
||||
- findutils ([4.10.0](https://git.savannah.gnu.org/cgit/findutils.git/tree/NEWS?h=v4.10.0))
|
||||
- gcc ([13.3.1_p20240614](https://gcc.gnu.org/gcc-13/changes.html))
|
||||
- hwdata ([0.383](https://github.com/vcrhonek/hwdata/compare/v0.382...v0.383))
|
||||
- libksba ([1.6.7](https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libksba.git;a=blob;f=NEWS;h=3d2d5a47688bb6214efaf02f5ab29f6e64433a97;hb=b14e68b97df754b2bb7a90bb904d143d8e896afb))
|
||||
- pciutils ([3.13.0](https://github.com/pciutils/pciutils/blob/v3.13.0/ChangeLog))
|
||||
- sysext-podman: podman ([5.0.3](https://github.com/containers/podman/releases/tag/v5.0.3))
|
||||
- sysext-python: setuptools ([70.3.0](https://github.com/pypa/setuptools/blob/v70.3.0/NEWS.rst))
|
||||
- strace ([6.9](https://github.com/strace/strace/releases/tag/v6.9))
|
||||
- tpm2-tools ([5.7](https://github.com/tpm2-software/tpm2-tools/releases/tag/5.7))
|
||||
- tpm2-tss ([4.1.3](https://github.com/tpm2-software/tpm2-tss/releases/tag/4.1.3))
|
||||
- util-linux ([2.39.4](https://github.com/util-linux/util-linux/blob/v2.39.4/Documentation/releases/v2.39.4-ReleaseNotes))
|
||||
- xfsprogs ([6.8.0](https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/tree/doc/CHANGES?h=v6.8.0))
|
||||
- xz-utils ([5.6.2](https://github.com/tukaani-project/xz/releases/tag/v5.6.2))
|
@ -7,20 +7,19 @@
|
||||
# Gentoo upstream package stabilisation
|
||||
# (the following packages are "unstable" upstream; we're stabilising these)
|
||||
|
||||
# Catalyst 4 is not stable yet, but earlier versions are masked now.
|
||||
dev-util/catalyst ~amd64 ~arm64
|
||||
|
||||
# Handled by automation
|
||||
=app-containers/containerd-1.7.20 ~amd64 ~arm64 # DO NOT EDIT THIS LINE. Added by containerd-apply-patch.sh on 2024-07-19 08:17:43
|
||||
|
||||
# Handled by automation?
|
||||
=app-containers/cri-tools-1.27.0 ~amd64 ~arm64
|
||||
# Keep versions on both arches in sync.
|
||||
=app-containers/cri-tools-1.27.0 ~arm64
|
||||
|
||||
# Needed to address CVE-2024-3727
|
||||
=app-containers/podman-5.0.3 ~amd64 ~arm64
|
||||
|
||||
# These seem to be the versions we initially got, but the
|
||||
# modifications made to the ebuilds were clobbered, so these are here
|
||||
# to keep using the same version. Can be dropped when these or newer
|
||||
# get stabilized in Gentoo.
|
||||
=app-containers/podman-5.0.2 ~amd64 ~arm64
|
||||
=app-containers/runc-1.1.13 ~amd64 ~arm64
|
||||
|
||||
# Seems to be the only available ebuild in portage-stable right now.
|
||||
@ -43,7 +42,7 @@ dev-util/catalyst ~amd64 ~arm64
|
||||
=app-emulation/open-vmdk-1.0 *
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-cpp/abseil-cpp-20230125.3-r3 ~arm64
|
||||
=dev-cpp/abseil-cpp-20230125.3-r4 ~arm64
|
||||
|
||||
# Needed by arm64-native SDK.
|
||||
=dev-embedded/u-boot-tools-2021.04_rc2 ~arm64
|
||||
@ -67,7 +66,6 @@ dev-util/catalyst ~amd64 ~arm64
|
||||
=dev-libs/luksmeta-9-r1 **
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-libs/libp11-0.4.12-r6 ~arm64
|
||||
=dev-libs/protobuf-23.3-r4 ~arm64
|
||||
|
||||
# These seem to be the versions we initially got, but the
|
||||
@ -76,9 +74,8 @@ dev-util/catalyst ~amd64 ~arm64
|
||||
# get stabilized in Gentoo.
|
||||
=dev-libs/yajl-2.1.0-r5 ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-python/lxml-5.2.1 ~arm64
|
||||
=dev-util/pahole-1.26 ~arm64
|
||||
# Catalyst 4 is not stable yet, but earlier versions are masked now.
|
||||
dev-util/catalyst ~amd64 ~arm64
|
||||
|
||||
# Needed for the MIT License
|
||||
=net-analyzer/netperf-2.7.0_p20210121 ~amd64 ~arm64
|
||||
@ -94,10 +91,12 @@ dev-util/catalyst ~amd64 ~arm64
|
||||
=net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64
|
||||
=net-libs/libnetfilter_cttimeout-1.0.1 ~arm64
|
||||
|
||||
# Needed to address CVE-2024-6197 and CVE-2024-6874.
|
||||
=net-misc/curl-8.9.0 ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=sys-apps/kexec-tools-2.0.28 ~arm64
|
||||
|
||||
sys-apps/zram-generator ~amd64 ~arm64
|
||||
=sys-apps/zram-generator-1.1.2 ~arm64
|
||||
|
||||
# Upgrade to latest version for secureboot
|
||||
=sys-boot/mokutil-0.6.0 ~amd64
|
||||
@ -105,9 +104,6 @@ sys-apps/zram-generator ~amd64 ~arm64
|
||||
# Enable ipvsadm for arm64.
|
||||
=sys-cluster/ipvsadm-1.31-r1 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=sys-firmware/edk2-aarch64-18.02 **
|
||||
|
||||
# Accept unstable host Rust compilers.
|
||||
=virtual/rust-1.80.0 ~amd64 ~arm64
|
||||
|
||||
|
@ -73,9 +73,6 @@ sys-apps/portage -xattr -rsync-verify
|
||||
# Enable -M and -Z flags; -M is used by mayday
|
||||
sys-process/lsof rpc selinux
|
||||
|
||||
# Disable zstd to avoid adding it to prod images until something needs it
|
||||
sys-fs/btrfs-progs -zstd
|
||||
|
||||
# Enable SELinux for all targets
|
||||
coreos-base/coreos selinux
|
||||
sys-apps/dbus selinux
|
||||
|
@ -1 +0,0 @@
|
||||
DIST btrfs-progs-v6.0.2.tar.xz 2321220 BLAKE2B 391bd9dcc7ae2d40c339eb9b7fb466624c3f122149af640bc0ca73abfc85ca7bd076976d47ce2d4eab64fb3b9b1309e3446acdd78ba77e5cb583b939710f8b6c SHA512 8e01fa6e3373d95a8e8577003ceb94722e4dfdf24110bfea79191a9862daf5e6580d72e898fdea134b5e86beeda32948eed572072f7906226189c6f1ac8615e3
|
@ -1,8 +0,0 @@
|
||||
We forked this package for the following reasons:
|
||||
|
||||
- We override the udev rules directory. The configure script does not
|
||||
provide a way to override it, so we need to hack it, otherwise the
|
||||
configure script will figure out the wrong path in our builds. We do
|
||||
it by overriding it in Makefile.inc.in. Ideal solution here would be
|
||||
to patch btrfs-progs to allow overriding the udev path and then
|
||||
override it in the ebuild properly, without the sed hacks.
|
@ -1 +1,2 @@
|
||||
DIST lz4-1.10.0.tar.gz 387114 BLAKE2B c87a939b748b0449e4f1869579ebc109704aa89e8699b6029217f6786c351d1b0329580dd3a955fe509efb113f29aecbafc83084d65d153f5d43610f4840a819 SHA512 8c4ceb217e6dc8e7e0beba99adc736aca8963867bcf9f970d621978ba11ce92855912f8b66138037a1d2ae171e8e17beb7be99281fea840106aa60373c455b28
|
||||
DIST lz4-1.9.4.tar.gz 354063 BLAKE2B 2289cdce36acd35283bf2f02ef4d6d8f4805563be6d5a3492f3d6ea7975fb6bd14e1ac2e505df9747776edf8bcf0da7ba4ae7084b150e3ec08a52a9885f92ad5 SHA512 043a9acb2417624019d73db140d83b80f1d7c43a6fd5be839193d68df8fd0b3f610d7ed4d628c2a9184f7cde9a0fd1ba9d075d8251298e3eb4b3a77f52736684
|
||||
|
@ -0,0 +1,42 @@
|
||||
|
||||
From: https://github.com/lz4/lz4/pull/1468
|
||||
|
||||
commit 63267a77d863f63826d8b13ddb8c190d3a4c01c5
|
||||
Author: Holger Hoffstätte <holger@applied-asynchrony.com>
|
||||
Date: Mon Jul 22 22:11:19 2024 +0200
|
||||
|
||||
Fix stack alignment of _start() in freestanding test
|
||||
|
||||
When the freestanding test is built with any kind of optimization
|
||||
that enables vectorized loops, special care must be taken to align
|
||||
the stack for _start() at a 16-byte boundary.
|
||||
|
||||
diff --git a/tests/freestanding.c b/tests/freestanding.c
|
||||
index 6109aa7..96de9d3 100644
|
||||
--- a/tests/freestanding.c
|
||||
+++ b/tests/freestanding.c
|
||||
@@ -225,7 +225,7 @@ EXTERN_C int memcmp(const void *s1, const void *s2, size_t n) {
|
||||
|
||||
|
||||
//
|
||||
-EXTERN_C void _start(void) {
|
||||
+EXTERN_C void __attribute__((force_align_arg_pointer)) _start(void) {
|
||||
test();
|
||||
MY_exit(0);
|
||||
}
|
||||
|
||||
Disable the stack protector to allow building with clang.
|
||||
See https://bugs.gentoo.org/936480
|
||||
|
||||
diff -up lz4-1.10.0/build/meson/meson/tests/meson.build lz4-1.10.0/build/meson/meson/tests/meson.build
|
||||
--- lz4-1.10.0/build/meson/meson/tests/meson.build 2024-07-21 19:29:49.000000000 +0200
|
||||
+++ lz4-1.10.0/build/meson/meson/tests/meson.build 2024-07-23 01:26:40.561113031 +0200
|
||||
@@ -47,7 +47,7 @@ test_exes = {
|
||||
},
|
||||
'freestanding': {
|
||||
'sources': files(lz4_source_root / 'tests/freestanding.c'),
|
||||
- 'c_args': ['-ffreestanding', '-Wno-unused-parameter', '-Wno-declaration-after-statement'],
|
||||
+ 'c_args': ['-ffreestanding', '-fno-stack-protector', '-Wno-unused-parameter', '-Wno-declaration-after-statement'],
|
||||
'link_args': ['-nostdlib'],
|
||||
'build': cc.get_id() in ['gcc', 'clang'] and
|
||||
host_machine.system() == 'linux' and host_machine.cpu_family() == 'x86_64',
|
38
sdk_container/src/third_party/portage-stable/app-arch/lz4/lz4-1.10.0-r1.ebuild
vendored
Normal file
38
sdk_container/src/third_party/portage-stable/app-arch/lz4/lz4-1.10.0-r1.ebuild
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit meson-multilib
|
||||
|
||||
DESCRIPTION="Extremely Fast Compression algorithm"
|
||||
HOMEPAGE="https://github.com/lz4/lz4"
|
||||
SRC_URI="https://github.com/lz4/lz4/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2 GPL-2"
|
||||
SLOT="0/1.10.0-meson"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
EMESON_SOURCE=${S}/build/meson
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PV}-fix-freestanding-test.patch"
|
||||
)
|
||||
|
||||
multilib_src_configure() {
|
||||
local emesonargs=(
|
||||
-Dtests=$(usex test true false)
|
||||
-Ddefault_library=$(usex static-libs both shared)
|
||||
)
|
||||
# with -Dprograms=false, the test suite is only rudimentary,
|
||||
# so build them for testing non-native ABI as well
|
||||
if multilib_is_native_abi || use test; then
|
||||
emesonargs+=(
|
||||
-Dprograms=true
|
||||
)
|
||||
fi
|
||||
|
||||
meson_src_configure
|
||||
}
|
25
sdk_container/src/third_party/portage-stable/app-arch/lz4/lz4-1.10.0.ebuild
vendored
Normal file
25
sdk_container/src/third_party/portage-stable/app-arch/lz4/lz4-1.10.0.ebuild
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake-multilib
|
||||
|
||||
DESCRIPTION="Extremely Fast Compression algorithm"
|
||||
HOMEPAGE="https://github.com/lz4/lz4"
|
||||
SRC_URI="https://github.com/lz4/lz4/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2 GPL-2"
|
||||
SLOT="0/1.10.0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="static-libs"
|
||||
|
||||
CMAKE_USE_DIR=${S}/build/cmake
|
||||
|
||||
multilib_src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_STATIC_LIBS=$(usex static-libs)
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
@ -65,7 +65,7 @@ src_configure() {
|
||||
i?86*-*linux*) TARGET="linux_asm" ;;
|
||||
*linux*) TARGET="linux_noasm" ;;
|
||||
*-darwin*) TARGET="macosx" ;;
|
||||
*-solaris*) TARGET="generic" ;;
|
||||
*-solaris*) TARGET="linux_noasm" ;;
|
||||
*) die "Unknown target; please update the ebuild to handle ${CHOST}" ;;
|
||||
esac
|
||||
|
||||
@ -73,6 +73,7 @@ src_configure() {
|
||||
append-flags -std=gnu89
|
||||
|
||||
[[ ${CHOST} == *linux* ]] && append-cppflags -DNO_LCHMOD
|
||||
[[ ${CHOST} == *-solaris* ]] && append-cppflags -DNO_LCHMOD -DBSD4_4
|
||||
use bzip2 && append-cppflags -DUSE_BZIP2
|
||||
use unicode && append-cppflags -DUNICODE_SUPPORT -DUNICODE_WCHAR -DUTF8_MAYBE_NATIVE -DUSE_ICONV_MAPPING
|
||||
|
||||
|
@ -35,7 +35,7 @@ else
|
||||
"
|
||||
|
||||
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
@ -35,7 +35,7 @@ else
|
||||
"
|
||||
|
||||
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
@ -1 +1,2 @@
|
||||
DIST runc-1.1.12.tar.gz 2522196 BLAKE2B 14fe8d5f82d5b4d7f6b4bb9111c5d258e74f6a44aeb51fc87c69104e95b9bf24a3d503f4cc5dedb40d542fbd4b6e27273f456bda4fcf3bc298eb93ae292d9663 SHA512 92e8ac54a77d7ebcc76b5a9cc08d9a064211f12e9d26f064070cc203a5afb11c3af28d8f556f297513f797a2933d50bf10a8f22e307724041d66aa8c5ca1d9d3
|
||||
DIST runc-1.1.13.tar.gz 2532849 BLAKE2B f3d3171ffce2bb833bfb5cc21d0dc034fd7e38c47ee098cc1fc75c06fd4dfae21dfe25c2e69a1ca93b29d36e8799727ea41725eee8aca3a059c14dab6c8a435f SHA512 644bf9e6359bf49bbdec667c0f7c69ded78c7eacfc2d1b730d52fdcf7348571c6406b8e5790811fe3662a458c878e4225c3559885f0d95f8905273e7e40e55ad
|
||||
|
@ -10,13 +10,14 @@ RUNC_COMMIT=58aa9203c123022138b22cf96540c284876a7910
|
||||
CONFIG_CHECK="~USER_NS"
|
||||
|
||||
DESCRIPTION="runc container cli tools"
|
||||
HOMEPAGE="http://github.com/opencontainers/runc/"
|
||||
HOMEPAGE="https://github.com/opencontainers/runc/"
|
||||
MY_PV="${PV/_/-}"
|
||||
SRC_URI="https://github.com/opencontainers/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
LICENSE="Apache-2.0 BSD-2 BSD MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv ~x86"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
|
||||
IUSE="apparmor hardened +kmem +seccomp selinux test"
|
||||
|
||||
DEPEND="seccomp? ( sys-libs/libseccomp )"
|
||||
@ -38,8 +39,6 @@ BDEPEND="
|
||||
# majority of tests pass
|
||||
RESTRICT+=" test"
|
||||
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
src_compile() {
|
||||
# Taken from app-containers/docker-1.7.0-r1
|
||||
CGO_CFLAGS+=" -I${ESYSROOT}/usr/include"
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools multilib-minimal toolchain-funcs
|
||||
inherit autotools multilib-minimal toolchain-funcs flag-o-matic
|
||||
|
||||
DESCRIPTION="C library providing BLAKE2b, BLAKE2s, BLAKE2bp, BLAKE2sp"
|
||||
HOMEPAGE="https://github.com/BLAKE2/libb2"
|
||||
@ -40,6 +40,8 @@ src_prepare() {
|
||||
sed -i -e 's/ == / = /' configure.ac || die
|
||||
# https://github.com/BLAKE2/libb2/pull/28
|
||||
echo 'libb2_la_LDFLAGS = -no-undefined' >> src/Makefile.am || die
|
||||
# make memset_s available
|
||||
[[ ${CHOST} == *-solaris* ]] && append-cppflags -D__STDC_WANT_LIB_EXT1__=1
|
||||
eautoreconf # upstream doesn't make releases
|
||||
}
|
||||
|
||||
|
@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="caps efl emacs gtk keyring ncurses qt5 qt6 wayland X"
|
||||
|
||||
DEPEND="
|
||||
|
@ -12,7 +12,7 @@ SRC_URI="https://github.com/tpm2-software/tpm2-tools/releases/download/${PV}/${P
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
|
||||
KEYWORDS="amd64 arm arm64 ppc64 x86"
|
||||
IUSE="+fapi test"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
@ -11,7 +11,7 @@ SRC_URI="https://github.com/tpm2-software/${PN}/releases/download/${PV}/${P}.tar
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0/4"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
|
||||
KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
|
||||
IUSE="doc +fapi +openssl mbedtls +policy static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
|
@ -4,7 +4,7 @@ DIST keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6.tar.bz2 27971 BLAKE2B
|
||||
DIST qemu-7.2.0-docs.tar.xz 1984184 BLAKE2B 103900fb7903ed8d75f7f012bf61fa2d6fce345b657c851d0437c3384f5735bd1cfd3129320683ea7846ea0b0940e5af5b2663c9320f12fee74b058523a8ea06 SHA512 a7edd448982865e07533c300d3e44a8b50cefbdde1982b73c24d0b2aa74315439252c59b634c75de312860874c7b06c75aa72629da681b5105f28ee936794585
|
||||
DIST qemu-7.2.11.tar.xz 121877020 BLAKE2B c546773b9ac7809b39a3afa51da5b1c06c3765fadb4df9d8529f8af65c26098676adf8e516620ca1b39201fa859878780edb56a445778e105cbe7db0f52b9f6a SHA512 c77ff1505128c05fe39eaa95cc11e4d2279bff06093acd613e54f71d4a13144f905551eec1d044c3a3fb751d3369c01d131d68c18b15d9a04bcc77370d93c217
|
||||
DIST qemu-7.2.12.tar.xz 124399872 BLAKE2B df0afc8de23f3df7b0ada301584f1d96c7add69ec16755c5b75eced88827ec2719ba79c9191da5c77f00872bf2c492b24b08f310954e5ca97249debd5e520cda SHA512 239623f6f3c15b85ce8da27adb8123886a2b56971742d2a11cde58b0dfac40de1592e1e33591306b830c5cee051d11b00d1bdccf414cc7b111dab79b65b1cf92
|
||||
DIST qemu-7.2.4.tar.xz 121849100 BLAKE2B a9c5ffce9ff0fac4e2d1fa4be1a1dcee2f5d7f793ddf726871c5ae9a68c22f7ba03692a8a5096de3051030d3c2f34e46697d5af2d66c34984b8161ae3bb07b42 SHA512 fa765673833a1f2cbecdb9d47dc7dc29d7613be5a5c8fc63925ae70e1f5aafb4f9f02e45b212a329f17b689351b8a9cdf5f5235ab6adb71bb40e41868898d95b
|
||||
DIST qemu-7.2.13.tar.xz 124399088 BLAKE2B 7d0b86862e663b20e918a211f661aff0bf8eeb480cffef9eba51c819d817368db33989bcc4f1673dd278d1f0f91f7991e22a24fca828559d8da225fdb8a1836b SHA512 be6a1d2efb111c09456be97a431a8881667b0a1d356a9901e6582b9720143826d4719778c228eb342ec865b5a3dc21444ebe296be56e1edafd16ab1b3aef3ae2
|
||||
DIST qemu-8.0.0-docs.tar.xz 3218024 BLAKE2B b764a625024e78a39470048355471e12cfb57ab3c34e764dc4200fdf5c1aea635d26095ec961979bf46f177101c5bd38618bacf7e98e04bd64688ab5e29591aa SHA512 d9dfe191372e105fe16fe8f66f41ed793ade4c89b5ab1d84b39459f3419a1ca61bd49422a83981965cc257c05eca7fd49054703f58f179f5c7b656e9473a1054
|
||||
DIST qemu-8.0.5.tar.xz 126175064 BLAKE2B 1d1f78c185ab64b4ca946a44ad04d0bbb6ea48de058037e4ba18176abeb0f0528754c6e832f742f93227182bbce145544eca5b908a366006e7ee58876aca0bda SHA512 ec9679473dda84a2f56ae8ee0039ec4dafb056414bfc5a3a147b2b6bb45ae3b130dd80f6385e8567b5d18f4be94f3536bc8acc45c61eddf40c9678b46cb8bddc
|
||||
DIST qemu-8.1.0-docs.tar.xz 2129912 BLAKE2B 8aaf7b748538afdb5bcb6da15dbd96572d086824377c4b0e93f1ddc695f9a4775471e360a9616d2d481dbf8113e91d2601c69d92cef565fb90b65ffacfdb304e SHA512 905515742bb56a439fc8117ec48ea668e7b2bf0244587673e4352d9e8e49911eb84ff093596ff566e44787197cf9789ec8950e3d75fb7a670c5546394a322ac9
|
||||
@ -12,6 +12,7 @@ DIST qemu-8.1.5.tar.xz 124007248 BLAKE2B 0d5db3e18c4dc1035fed442116be98b7e7bbfae
|
||||
DIST qemu-8.2.0-docs.tar.xz 2233352 BLAKE2B 22b9499fdf4ff93e72399dab3803f3171c855859dc7fe111612e2f9146db244ca6d2e0aad16aefdf29b231d2b3a2fbc22171fe6bac13b03445d54555ce798d16 SHA512 f57e78c28277c153fff00b25097d0df5c6ad36cb4e9f3acf30382bfb1c99508503c186c1bbecf266810ef24fd618428fdf3e0eee41c715a552918c9e6ef9e8e5
|
||||
DIST qemu-8.2.3.tar.xz 130106716 BLAKE2B 2ec91b5111952434686064bd603880d87c4f56774d2478ee953eb0454e2b14235b1d1cca484e015b96bceae3182f90b856d222ca590059032b4989babf1dffe8 SHA512 28c789d84754b26cd86ded9db8464ec82f07cdc3b1025a988e74b8c5b05df8839a3e9990ff96cfba50e032dd967e9dc18cf75f3525baeadd0fa019cb69108d0a
|
||||
DIST qemu-8.2.5.tar.xz 132743988 BLAKE2B 24da4350cfe5a46771ea257b7baba48f02465c87e819ad3cc0557c06814f24f442ba3b97661af74d5235e31e7883b7c62d108e3180f7ce9e4be524ec966d07d0 SHA512 b95de309d790033452687b488ba869940bc40862ebbc9d91edbeee840e4ffc0b4cae43e1bfcd00f5534da126c62072b7b5309da6d74d30ba537e4c7b430f4255
|
||||
DIST qemu-8.2.6.tar.xz 132750000 BLAKE2B da5fdb03fcb44cf764d2ccaf9011b726e5c152d8659ca91550cd04b3e578e7f9bf2cc050b38a64055103775e64303ae949cf7e2cde5508f8a4b976d1311631c5 SHA512 ba702306df0c2a6744fff6fdca5f251ebc572230ee4674113433c74f74187ba33457ea9716d9023aa48cc1e6887af132a2877c30ea098da9ed23e95d4691b88b
|
||||
DIST qemu-9.0.0-docs.tar.xz 2290196 BLAKE2B 82d22637ff2629bee372550e86651f12051ea6b4a57e314ef83f290425d4973ef01827eaf28a85b635788f22cb7cc1c747438b7525c92c99b90b234fb8f7655c SHA512 7c0ba1f3e7bbaa4e3feebc33a1946a5c190f2c14b9ed78b15c1f642668c8124960f8c85bcf36fe54a10d4edef47d2256e500f06d9173b92b03c599811a15a073
|
||||
DIST qemu-9.0.0.tar.xz 129789856 BLAKE2B d92acb859d9ce5097fee27a4689c71869aa38f65eb0308547956d54bd8caf29efe5389d9009f334f109ad228e0ef1f1fd1444d26360f03fac4320b204b657081 SHA512 1603517cd4c93632ba60ad7261eb67374f12a744bf58f10b0e8686e46d3a02d8b6bf58a0c617f23a1868084aaba6386c24341894f75539e0b816091718721427
|
||||
DIST qemu-9.0.1.tar.xz 132368412 BLAKE2B e96ae5cc3ee935dd31232d38d46bbdc74fd3a2a0dd8517c0e035757f3ded92712dfa68d0068cd8c37f314a92d237e2b4a725b509ba402b7a1ce92df63207a08d SHA512 6c120aaf52f15e79c32d883cc83df8fc83222d538ea6be9c19aaddfba0aef91479b5826bbc03e58688fba639cb24bc6f54e525ccc2404ed5d820766d11735210
|
||||
DIST qemu-9.0.2.tar.xz 132387528 BLAKE2B 6b5301f985919ae53e056410be7486b8150a65016127568bd4d58f596e94960d08eb3fc57cff7ff6a3435d71274adee516f57375d856d61b4fc7a3f24cbf75c4 SHA512 58ed84f6fe6263d279356bc9193f96edf62cf3663fb151daa3f047d52329fe49cb91c2d45e09697e0469f4f5409be96403aec9572d4871ffa40848a786c21599
|
||||
|
@ -41,7 +41,7 @@ else
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
[[ "${PV}" != *_rc* ]] && KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv x86"
|
||||
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
@ -315,7 +315,6 @@ PATCHES=(
|
||||
"${FILESDIR}"/${PN}-7.1.0-also-build-virtfs-proxy-helper.patch
|
||||
"${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch
|
||||
"${FILESDIR}"/${PN}-7.2.0-disable-gmp.patch
|
||||
"${FILESDIR}"/${PN}-7.2.0-linux-headers-6.2-glibc-2.36.patch
|
||||
)
|
||||
|
||||
QA_PREBUILT="
|
992
sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.2.6.ebuild
vendored
Normal file
992
sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.2.6.ebuild
vendored
Normal file
@ -0,0 +1,992 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1}
|
||||
QEMU_DOCS_PREBUILT_DEV=sam
|
||||
QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
# bug #830088
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \
|
||||
pax-utils xdg-utils
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
QEMU_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/"
|
||||
EGIT_SUBMODULES=()
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
declare -A SUBPROJECTS=(
|
||||
[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
|
||||
[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
[berkeley-testfloat-3]="40619cbb3bf32872df8c53cc457039229428a263"
|
||||
)
|
||||
|
||||
for proj in "${!SUBPROJECTS[@]}"; do
|
||||
c=${SUBPROJECTS[${proj}]}
|
||||
SRC_URI+=" https://gitlab.com/qemu-project/${proj}/-/archive/${c}/${proj}-${c}.tar.bz2"
|
||||
done
|
||||
else
|
||||
MY_P="${PN}-${PV/_rc/-rc}"
|
||||
SRC_URI="https://download.qemu.org/${MY_P}.tar.xz"
|
||||
|
||||
if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~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"
|
||||
|
||||
[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc"
|
||||
|
||||
IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG}
|
||||
+fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring
|
||||
jack jemalloc +jpeg keyutils
|
||||
lzo multipath
|
||||
ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs pipewire
|
||||
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
|
||||
+slirp
|
||||
smartcard snappy spice ssh static-user systemtap test udev usb
|
||||
usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen
|
||||
zstd"
|
||||
|
||||
COMMON_TARGETS="
|
||||
aarch64
|
||||
alpha
|
||||
arm
|
||||
cris
|
||||
hppa
|
||||
i386
|
||||
loongarch64
|
||||
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
|
||||
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 )
|
||||
qemu_softmmu_targets_x86_64? ( fdt )
|
||||
sdl-image? ( sdl )
|
||||
static-user? ( !plugins )
|
||||
virgl? ( opengl )
|
||||
virtfs? ( xattr )
|
||||
vnc? ( gnutls )
|
||||
vte? ( gtk )
|
||||
multipath? ( udev )
|
||||
plugins? ( !static-user )
|
||||
"
|
||||
for smname in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( kernel_linux? ( seccomp ) )"
|
||||
done
|
||||
|
||||
# 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[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
systemtap? ( dev-debug/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="
|
||||
>=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:=[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] )
|
||||
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
gnutls? (
|
||||
>=net-libs/gnutls-3.0:=[static-libs(+)]
|
||||
dev-libs/nettle:=[static-libs(+)]
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
vte? ( x11-libs/vte:2.91 )
|
||||
)
|
||||
infiniband? ( sys-cluster/rdma-core[static-libs(+)] )
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
|
||||
jack? ( virtual/jack )
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] )
|
||||
kernel_linux? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
keyutils? ( sys-apps/keyutils[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(+)]
|
||||
)
|
||||
pam? ( sys-libs/pam )
|
||||
pipewire? ( >=media-video/pipewire-0.3.60 )
|
||||
png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] )
|
||||
pulseaudio? ( media-libs/libpulse )
|
||||
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.14.0
|
||||
>=app-emulation/spice-0.14.0[static-libs(+)]
|
||||
)
|
||||
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
|
||||
udev? ( virtual/libudev:= )
|
||||
usb? ( >=virtual/libusb-1-r2:1[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:= )
|
||||
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
|
||||
"
|
||||
|
||||
EDK2_OVMF_VERSION="202202"
|
||||
SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
|
||||
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
)
|
||||
sys-firmware/sgabios
|
||||
)
|
||||
"
|
||||
PPC_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
|
||||
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
)
|
||||
)
|
||||
"
|
||||
|
||||
# See bug #913084 for pip dep
|
||||
BDEPEND="
|
||||
$(python_gen_impl_dep)
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
|
||||
)
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
app-alternatives/bc
|
||||
)
|
||||
"
|
||||
CDEPEND="
|
||||
${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-user? ( ${ALL_DEPEND} )
|
||||
"
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
acct-group/kvm
|
||||
selinux? (
|
||||
sec-policy/selinux-qemu
|
||||
sys-libs/libselinux
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-8.0.0-disable-keymap.patch
|
||||
"${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch
|
||||
"${FILESDIR}"/${PN}-8.1.0-also-build-virtfs-proxy-helper.patch
|
||||
"${FILESDIR}"/${PN}-8.1.0-skip-tests.patch
|
||||
"${FILESDIR}"/${PN}-8.1.0-find-sphinx.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-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_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
for file in ${A}; do
|
||||
unpack "${file}"
|
||||
done
|
||||
cd "${WORKDIR}" || die
|
||||
for proj in "${!SUBPROJECTS[@]}"; do
|
||||
mv "${proj}-${SUBPROJECTS[${proj}]}" "${S}/subprojects/${proj}" || die
|
||||
done
|
||||
cd "${S}" || die
|
||||
meson subprojects packagefiles --apply || die
|
||||
else
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
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 modules
|
||||
rm -r roms/*/ || 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}" || die
|
||||
|
||||
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
|
||||
--disable-download
|
||||
|
||||
# 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
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--objcc="$(tc-getCC)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
|
||||
$(use_enable alsa)
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
$(use_enable jack)
|
||||
$(use_enable nls gettext)
|
||||
$(use_enable oss)
|
||||
$(use_enable pipewire)
|
||||
$(use_enable plugins)
|
||||
$(use_enable pulseaudio pa)
|
||||
$(use_enable selinux)
|
||||
$(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
|
||||
}
|
||||
# Special case for the malloc flag, because the --disable flag does
|
||||
# not exist and trying like above will break configuring.
|
||||
conf_malloc() {
|
||||
if [[ ! ${buildtype} == "user" ]] ; then
|
||||
usex "${1}" "--enable-malloc=${1}" ""
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_notuser accessibility brlapi)
|
||||
$(conf_notuser aio linux-aio)
|
||||
$(conf_softmmu bpf)
|
||||
$(conf_notuser bzip2)
|
||||
$(conf_notuser capstone)
|
||||
$(conf_notuser curl)
|
||||
$(conf_tools doc docs)
|
||||
$(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_malloc jemalloc)
|
||||
$(conf_notuser jpeg vnc-jpeg)
|
||||
$(conf_notuser kernel_linux kvm)
|
||||
$(conf_notuser keyutils libkeyutils)
|
||||
$(conf_notuser lzo)
|
||||
$(conf_notuser multipath mpath)
|
||||
$(conf_notuser ncurses curses)
|
||||
$(conf_notuser nfs libnfs)
|
||||
$(conf_notuser numa)
|
||||
$(conf_notuser opengl)
|
||||
$(conf_notuser pam auth-pam)
|
||||
$(conf_notuser png)
|
||||
$(conf_notuser rbd)
|
||||
$(conf_notuser sasl vnc-sasl)
|
||||
$(conf_notuser sdl)
|
||||
$(conf_softmmu sdl-image)
|
||||
$(conf_notuser seccomp)
|
||||
$(conf_notuser slirp)
|
||||
$(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 virgl virglrenderer)
|
||||
$(conf_softmmu virtfs)
|
||||
$(conf_notuser vnc)
|
||||
$(conf_notuser vte)
|
||||
$(conf_notuser xen)
|
||||
$(conf_notuser xen xen-pci-passthrough)
|
||||
# use prebuilt keymaps, bug #759604
|
||||
--disable-xkbcommon
|
||||
$(conf_notuser zstd)
|
||||
)
|
||||
|
||||
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 pipewire)
|
||||
$(usev jack)
|
||||
$(usev sdl)
|
||||
$(usev alsa)
|
||||
$(usev oss)
|
||||
)
|
||||
conf_opts+=(
|
||||
--audio-drv-list=$(IFS=,; echo "${audio_opts[*]}")
|
||||
)
|
||||
fi
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--disable-tools
|
||||
--disable-cap-ng
|
||||
--disable-seccomp
|
||||
)
|
||||
local static_flag="static-user"
|
||||
;;
|
||||
softmmu)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--disable-tools
|
||||
--enable-cap-ng
|
||||
--enable-seccomp
|
||||
)
|
||||
local static_flag="none"
|
||||
;;
|
||||
tools)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--disable-system
|
||||
--enable-tools
|
||||
--enable-cap-ng
|
||||
)
|
||||
local static_flag="none"
|
||||
;;
|
||||
esac
|
||||
|
||||
local targets="${buildtype}_targets"
|
||||
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backends="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 [[ ${static_flag} != "none" ]] && 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"
|
||||
}
|
||||
|
||||
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" || die
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build" || die
|
||||
default
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build" || die
|
||||
default
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build" || die
|
||||
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" || die
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8]
|
||||
fi
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null || die
|
||||
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
|
||||
popd >/dev/null || die
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
cd "${S}" || die
|
||||
dodoc MAINTAINERS
|
||||
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
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
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
|
||||
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
|
||||
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:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
ewarn " $(best_version sys-firmware/seabios-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/seabios)"
|
||||
fi
|
||||
|
||||
ewarn " $(best_version sys-firmware/ipxe)"
|
||||
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)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
echo " $(best_version sys-firmware/seabios-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
fi
|
||||
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/sgabios)"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
udev_reload
|
||||
}
|
@ -8,7 +8,7 @@ EAPI=8
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1}
|
||||
QEMU_DOCS_PREBUILT_DEV=sam
|
||||
QEMU_DOCS_VERSION=$(ver_cut 1-3)
|
||||
QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
# bug #830088
|
||||
QEMU_DOC_USEFLAG="+doc"
|
@ -1,3 +1,4 @@
|
||||
DIST elt-patches-20240315.tar.xz 45416 BLAKE2B 4a1e33bba89c43cb91d75641d35837aa482e2e119079321b4e1824ee5bd4b0f5c465c4709082daf987dedf423fef5adb9ba8d8d1b9d6dc814c663dda86ac0ee0 SHA512 7c2034713630f8ad40fed5be34f397749e8e1f63d5933656fe3618e97cf59240aaa64468fcb1a46bac111b96603e538b857513ca80d327c0be865868020457ea
|
||||
DIST elt-patches-20240324.tar.xz 45712 BLAKE2B 29a94ad3132ba10f4fc90cde685732b1cb679d693e1b1a1fbdb7fd99fbfc70aa7df9e6753ef6374cd606195829bd9d6a8b9b19126780ffa8f28542fb59d99fb0 SHA512 3878d5d303b372c873859510d6a0f3911657f4b66af8a91833657a13902474d011e30b4d245e5f82df791a9231f0253bb0ddef42bba66acb4241600265fb7925
|
||||
DIST elt-patches-20240512.tar.xz 46176 BLAKE2B 8ca496aae63dd49e7148b7c06e687b3644a58211ec5cf7b82d8ccb7603df6390c7f9ba6f71b4b9b9db7263bf0c7005f9c6098091227c6b34729032f6a6101cd7 SHA512 c33321668b9191d2f8221fb4a1ea365ccce6d0b61bf8bb1b95fc6c2c67ada8b36c44d7423d994678e60e3197bf2721aca9e062e882d2cea05b465ad0d4e8a93c
|
||||
DIST elt-patches-20240721.tar.xz 46392 BLAKE2B 87d2cefebcacbfa447e8981bf16eda3d21bcf4190e91c478280cd81089ab43440a86ff84a5c6b2cda7d772707dad645d4f481d9ec2543f9c14059fe084c2f54d SHA512 a8a8f55e5e1b0a2ea67895e86307a6fd5116593c25a2e3cc6fb2361f21eddc125a91c46ef84c0fd036c1bb25a682a4ff07c581c041a9b853d713d5c8f73d8d5b
|
||||
|
39
sdk_container/src/third_party/portage-stable/app-portage/elt-patches/elt-patches-20240721.ebuild
vendored
Normal file
39
sdk_container/src/third_party/portage-stable/app-portage/elt-patches/elt-patches-20240721.ebuild
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Collection of patches for libtool.eclass"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/elt-patches.git/"
|
||||
|
||||
if [[ ${PV} == *9999* ]] ; then
|
||||
EGIT_REPO_URI="
|
||||
https://anongit.gentoo.org/git/proj/elt-patches.git
|
||||
https://github.com/gentoo/elt-patches
|
||||
"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://dev.gentoo.org/~grobian/distfiles/${P}.tar.xz
|
||||
https://dev.gentoo.org/~vapier/dist/${P}.tar.xz
|
||||
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz
|
||||
"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-linux ~ppc64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# The 'check' target currently wants network access to fetch libtool tarballs.
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="sys-apps/gentoo-functions"
|
||||
BDEPEND="app-arch/xz-utils"
|
||||
|
||||
src_compile() {
|
||||
emake rootprefix="${EPREFIX}" libdirname="$(get_libdir)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" rootprefix="${EPREFIX}" install
|
||||
}
|
@ -28,6 +28,8 @@ DIST bash-5.3-alpha.tar.gz.sig 95 BLAKE2B 69c8b33fe2a40498662ef084967701cff19260
|
||||
DIST bash-5.3_alpha_p20240628-5e28a1813ce7d08628c8df584ea36515091c6d9b.tar.xz 8528432 BLAKE2B d920640b0ba0ae38dbb98b48a9e4dd6635a05d7f86fcf26a4f2c79f6a4338e4f25ff20119f9a1df451d23d9cc381862963dcf9c135050102e8159eccbe5f7314 SHA512 cc60f94083b378ac51fda973f834f10477ac6ebcfc682f934426db3fd6ca4506e5ed1c64311c67d5d9d70b62ab2bf9900ee66f1aa96a7bce7198d69edf9131ca
|
||||
DIST bash-5.3_alpha_p20240706-a91b8b077300b0a2a7daefe02f0363f9116e00d5.tar.xz 8525768 BLAKE2B 07b1b92b15bbd1c4bd01e3c2fbdf65d7dab14976442a2c4ea751c0d6e729d937886495af5402cd4669e84f68e952f3e79a375c649bbda1b4cc948172e3ea2948 SHA512 dfd19e6a4786ff066cb7e13ae328fbc909847fd7f987b59d9c646ab0bbf5abdc8c570bbc75810fe9eb6c9171acb3256b4e3278f565a1f526d9ce030fd423c0f8
|
||||
DIST bash-5.3_alpha_p20240711-d3e86e66ce857a8dc02e3116fd98b6e5b34d6364.tar.xz 8532476 BLAKE2B bae60589e733f29f4dab827c1c68899f4770c4cb2ca58af19e10bb833820644d336ada480be60b4dabb82441ae68f64494074387057d8b56efe8d5b9befd2a13 SHA512 ef677d2641607b75a000bef4b6eb9b359553ae6c3f930285989b97c036bfd1f7ecfa9240af1873af11dda42d1eca68da9c4b7567876e0bca878e8469dde0d0af
|
||||
DIST bash-5.3_alpha_p20240718-6c703092759ace29263ea96374e18412c59acc7f.tar.xz 8535120 BLAKE2B 7dd47829ca71689c138af9acd2657cee732f43abc82506ad76e65eb038e39acd31e208e985714460d76fbfb354517c3597fd85d459969541af950382ae7796c9 SHA512 41e07ed4fa90f8b645faf6c26766048fa51a3e3bd420dc875898fc9a1d674c05fe35f12b1c4d6ac6e6374736e6052e17e235a94c205c4bda80183f8065035182
|
||||
DIST bash-5.3_alpha_p20240726-d5ef283cbdd08217efdc55974a6a8a2c52a7562f.tar.xz 8534860 BLAKE2B 93ced89c621522554bb3f8c2e23ab2a6d8500beedb023064006cbd5777719195c2dbaabe6a04d737cb33d940c8a40ad2b3cdbce43b18e2b074d0d050dac77559 SHA512 d651cf0da9ed62d2e54ac526ef55a2a8eba274b430b627fc9e146bbc1d936363cf248388439dac485b653f6bfedcb21269c4b5f4662646080ecfe07390572450
|
||||
DIST bash205b-001 1132 BLAKE2B 0c5eef29777d54ef05957ea3d63b1556fb380bd20c238dc28993d822b37bc4e78ff4048ad069f6b8cd25da77ccdeb7aecd86c4349cb9d81e5e94c7001eeae5e6 SHA512 5ce4357468821b05e747201f3aa57225ad8f540c9e2c87051720490e039c30b478b9b662a68f14a0800fefe40184e4495e2645665200f9d75e9a115b2ac08071
|
||||
DIST bash205b-002 755 BLAKE2B 6a6ed5679d451f02f8104b345c1722d11718ce3b4043b581c17786d40d8da69a34786fb56d0c363dba277b8e9dd33f12f70c9cc73a9fc39ba4a8319406f0458d SHA512 46947b0229478d5c2cfeff68b8ebc00e4ef0c8b94e336ca12f72b4490ba3622c0240c01c17c1641c3b07adc2c64ec94d6d780365e8990768ec8888f3a9526883
|
||||
DIST bash205b-003 2356 BLAKE2B b7887d00d92fd298cd07a15e1c73b516dabd22ecd74c97091636dd97a0cd55024ed698e5cc924c4311d994dd326b1ad074bea35e7650cf9cf4e25c60d2713fa7 SHA512 74528ca5d165b812d299f1c69b47757bd677c0b22ce4217e155cd641708b02364a93c6709fb57b546b376b36da74429a61493921c7c199563da40ddcf1c1f399
|
||||
|
411
sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_alpha_p20240718.ebuild
vendored
Normal file
411
sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_alpha_p20240718.ebuild
vendored
Normal file
@ -0,0 +1,411 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
|
||||
inherit flag-o-matic toolchain-funcs prefix verify-sig
|
||||
|
||||
# Uncomment if we have a patchset.
|
||||
#GENTOO_PATCH_DEV="sam"
|
||||
#GENTOO_PATCH_VER="${PV}"
|
||||
|
||||
MY_PV=${PV/_p*}
|
||||
MY_PV=${MY_PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
MY_PATCHES=()
|
||||
|
||||
# Determine the patchlevel.
|
||||
case ${PV} in
|
||||
9999|*_alpha*|*_beta*|*_rc*)
|
||||
# Set a negative patchlevel to indicate that it's a pre-release.
|
||||
PLEVEL=-1
|
||||
;;
|
||||
*_p*)
|
||||
PLEVEL=${PV##*_p}
|
||||
;;
|
||||
*)
|
||||
PLEVEL=0
|
||||
esac
|
||||
|
||||
# The version of readline this bash normally ships with. Note that we only use
|
||||
# the bundled copy of readline for pre-releases.
|
||||
READLINE_VER="8.3_alpha"
|
||||
|
||||
DESCRIPTION="The standard GNU Bourne again shell"
|
||||
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git"
|
||||
EGIT_BRANCH=devel
|
||||
inherit git-r3
|
||||
elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
# It can be useful to have snapshots in the pre-release period once
|
||||
# the first alpha is out, as various bugs get reported and fixed from
|
||||
# the alpha, and the next pre-release is usually quite far away.
|
||||
#
|
||||
# i.e. if it's worth packaging the alpha, it's worth packaging a followup.
|
||||
BASH_COMMIT="6c703092759ace29263ea96374e18412c59acc7f"
|
||||
SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.xz -> ${P}-${BASH_COMMIT}.tar.xz"
|
||||
S=${WORKDIR}/${PN}-${BASH_COMMIT}
|
||||
else
|
||||
my_urls=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}.tar.gz" )
|
||||
|
||||
# bash-5.1 -> bash51
|
||||
my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.}
|
||||
|
||||
for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do
|
||||
printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}"
|
||||
my_urls+=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}-patches/${my_patch_ver}" )
|
||||
MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" )
|
||||
done
|
||||
|
||||
SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
unset -v my_urls my_p my_patch_idx my_patch_ver
|
||||
fi
|
||||
|
||||
if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
|
||||
|
||||
DEPEND="
|
||||
>=sys-libs/ncurses-5.2-r2:=
|
||||
nls? ( virtual/libintl )
|
||||
"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )"
|
||||
fi
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011).
|
||||
BDEPEND="
|
||||
pgo? ( dev-util/gperf )
|
||||
verify-sig? ( sec-keys/openpgp-keys-chetramey )
|
||||
"
|
||||
|
||||
# EAPI 8 tries to append it but it doesn't exist here.
|
||||
QA_CONFIGURE_OPTIONS="--disable-static"
|
||||
|
||||
PATCHES=(
|
||||
#"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/
|
||||
|
||||
# Patches to or from Chet, posted to the bug-bash mailing list.
|
||||
"${FILESDIR}/${PN}-5.0-syslog-history-extern.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# bug #7332
|
||||
if is-flag -malign-double; then
|
||||
eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
|
||||
eerror "as it breaks LFS (struct stat64) on x86."
|
||||
die "remove -malign-double from your CFLAGS mr ricer"
|
||||
fi
|
||||
|
||||
if use bashlogger; then
|
||||
ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
|
||||
ewarn "This will log ALL output you enter into the shell, you have been warned."
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local patch
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
git-r3_src_unpack
|
||||
elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
default
|
||||
else
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
|
||||
|
||||
for patch in "${MY_PATCHES[@]}"; do
|
||||
verify-sig_verify_detached "${patch}"{,.sig}
|
||||
done
|
||||
fi
|
||||
|
||||
unpack "${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Include official patches.
|
||||
(( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}"
|
||||
|
||||
# Clean out local libs so we know we use system ones w/releases. The
|
||||
# touch utility is invoked for the benefit of config.status.
|
||||
if (( PLEVEL >= 0 )); then
|
||||
rm -rf lib/{readline,termcap}/* \
|
||||
&& touch lib/{readline,termcap}/Makefile.in \
|
||||
&& sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \
|
||||
|| die
|
||||
fi
|
||||
|
||||
# Prefixify hardcoded path names. No-op for non-prefix.
|
||||
hprefixify pathnames.h.in
|
||||
|
||||
# Avoid regenerating docs after patches, bug #407985.
|
||||
sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \
|
||||
&& touch -r . doc/* \
|
||||
|| die
|
||||
|
||||
# Sometimes hangs (more noticeable w/ pgo), bug #907403.
|
||||
rm tests/run-jobs || die
|
||||
|
||||
eapply -p0 "${PATCHES[@]}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a myconf
|
||||
|
||||
# Upstream only test with Bison and require GNUisms like YYEOF and
|
||||
# YYERRCODE. The former at least may be in POSIX soon:
|
||||
# https://www.austingroupbugs.net/view.php?id=1269.
|
||||
# configure warns on use of non-Bison but doesn't abort. The result
|
||||
# may misbehave at runtime.
|
||||
unset -v YACC
|
||||
|
||||
# wcsnwidth(), substring() issues with -Wlto-type-mismatch, reported
|
||||
# upstream to Chet by email.
|
||||
filter-lto
|
||||
|
||||
myconf=(
|
||||
--disable-profiling
|
||||
|
||||
# Force linking with system curses ... the bundled termcap lib
|
||||
# sucks bad compared to ncurses. For the most part, ncurses
|
||||
# is here because readline needs it. But bash itself calls
|
||||
# ncurses in one or two small places :(.
|
||||
--with-curses
|
||||
|
||||
$(use_enable mem-scramble)
|
||||
$(use_enable net net-redirections)
|
||||
$(use_enable readline)
|
||||
$(use_enable readline bang-history)
|
||||
$(use_enable readline history)
|
||||
$(use_with afs)
|
||||
$(use_with mem-scramble bash-malloc)
|
||||
)
|
||||
|
||||
# For descriptions of these, see config-top.h.
|
||||
# bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
|
||||
append-cppflags \
|
||||
-DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \
|
||||
-DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \
|
||||
-DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \
|
||||
-DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \
|
||||
-DNON_INTERACTIVE_LOGIN_SHELLS \
|
||||
-DSSH_SOURCE_BASHRC \
|
||||
$(use bashlogger && echo -DSYSLOG_HISTORY)
|
||||
|
||||
use nls || myconf+=( --disable-nls )
|
||||
|
||||
if (( PLEVEL >= 0 )); then
|
||||
# Historically, we always used the builtin readline, but since
|
||||
# our handling of SONAME upgrades has gotten much more stable
|
||||
# in the PM (and the readline ebuild itself preserves the old
|
||||
# libs during upgrades), linking against the system copy should
|
||||
# be safe.
|
||||
# Exact cached version here doesn't really matter as long as it
|
||||
# is at least what's in the DEPEND up above.
|
||||
export ac_cv_rl_version=${READLINE_VER%%_*}
|
||||
|
||||
# Use system readline only with released versions.
|
||||
myconf+=( --with-installed-readline=. )
|
||||
fi
|
||||
|
||||
if use plugins; then
|
||||
append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash"
|
||||
else
|
||||
# Disable the plugins logic by hand since bash doesn't provide
|
||||
# a way of doing it.
|
||||
export ac_cv_func_dl{close,open,sym}=no \
|
||||
ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
|
||||
|
||||
sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die
|
||||
fi
|
||||
|
||||
# bug #444070
|
||||
tc-export AR
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local -a pgo_generate_flags pgo_use_flags
|
||||
local flag
|
||||
|
||||
# -fprofile-partial-training because upstream notes the test suite isn't
|
||||
# super comprehensive.
|
||||
# https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
|
||||
if use pgo; then
|
||||
pgo_generate_flags=(
|
||||
-fprofile-update=atomic
|
||||
-fprofile-dir="${T}"/pgo
|
||||
-fprofile-generate="${T}"/pgo
|
||||
)
|
||||
pgo_use_flags=(
|
||||
-fprofile-use="${T}"/pgo
|
||||
-fprofile-dir="${T}"/pgo
|
||||
)
|
||||
if flag=$(test-flags-CC -fprofile-partial-training); then
|
||||
pgo_generate_flags+=( "${flag}" )
|
||||
pgo_use_flags+=( "${flag}" )
|
||||
fi
|
||||
fi
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others
|
||||
|
||||
# Build Bash and run its tests to generate profiles.
|
||||
if (( ${#pgo_generate_flags[@]} )); then
|
||||
# Used in test suite.
|
||||
unset -v A
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check
|
||||
|
||||
if tc-is-clang; then
|
||||
llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die
|
||||
fi
|
||||
|
||||
# Rebuild Bash using the profiling data we just generated.
|
||||
emake clean
|
||||
emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Used in test suite.
|
||||
unset -v A
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local d f
|
||||
|
||||
default
|
||||
|
||||
my_prefixify() {
|
||||
while read -r; do
|
||||
if [[ $REPLY == *$1* ]]; then
|
||||
REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"}
|
||||
fi
|
||||
printf '%s\n' "${REPLY}" || ! break
|
||||
done < "$2" || die
|
||||
}
|
||||
|
||||
dodir /bin
|
||||
mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die
|
||||
dosym bash /bin/rbash
|
||||
|
||||
insinto /etc/bash
|
||||
doins "${FILESDIR}"/bash_logout
|
||||
my_prefixify bashrc.d "${FILESDIR}"/bashrc-r1 | newins - bashrc
|
||||
|
||||
insinto /etc/bash/bashrc.d
|
||||
my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color.bash | newins - 10-gentoo-color.bash
|
||||
newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r1.bash 10-gentoo-title.bash
|
||||
if [[ ! ${EPREFIX} ]]; then
|
||||
doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash
|
||||
fi
|
||||
|
||||
insinto /etc/skel
|
||||
for f in bash{_logout,_profile,rc}; do
|
||||
newins "${FILESDIR}/dot-${f}" ".${f}"
|
||||
done
|
||||
|
||||
if use plugins; then
|
||||
exeinto "/usr/$(get_libdir)/bash"
|
||||
set -- examples/loadables/*.o
|
||||
doexe "${@%.o}"
|
||||
|
||||
insinto /usr/include/bash-plugins
|
||||
doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
for d in examples/{functions,misc,scripts,startup-files}; do
|
||||
exeinto "/usr/share/doc/${PF}/${d}"
|
||||
docinto "${d}"
|
||||
for f in "${d}"/*; do
|
||||
if [[ ${f##*/} != @(PERMISSION|*README) ]]; then
|
||||
doexe "${f}"
|
||||
else
|
||||
dodoc "${f}"
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Install bash_builtins.1 and rbash.1.
|
||||
emake -C doc DESTDIR="${D}" install_builtins
|
||||
sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die
|
||||
doman "${T}"/rbash.1
|
||||
|
||||
newdoc CWRU/changelog ChangeLog
|
||||
dosym bash.info /usr/share/info/bashref.info
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then
|
||||
mkdir -p -- "${EROOT}"/etc/bash \
|
||||
&& mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \
|
||||
|| die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local old_ver
|
||||
|
||||
# If /bin/sh does not exist, provide it.
|
||||
if [[ ! -e ${EROOT}/bin/sh ]]; then
|
||||
ln -sf -- bash "${EROOT}"/bin/sh || die
|
||||
fi
|
||||
|
||||
read -r old_ver <<<"${REPLACING_VERSIONS}"
|
||||
if [[ ! $old_ver ]]; then
|
||||
:
|
||||
elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then
|
||||
return
|
||||
fi
|
||||
|
||||
while read -r; do ewarn "${REPLY}"; done <<'EOF'
|
||||
Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash.
|
||||
|
||||
Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the
|
||||
characteristics of the operating environment, it may contain a command to set
|
||||
the terminal's window title. Those who were already choosing to customise the
|
||||
PROMPT_COMMAND variable are now advised to append their commands like so:
|
||||
|
||||
PROMPT_COMMAND+=('custom command goes here')
|
||||
|
||||
Gentoo no longer defaults to having bash set the window title in the case
|
||||
that the terminal is controlled by sshd(8), unless screen is launched on the
|
||||
remote side or the terminal reliably supports saving and restoring the title
|
||||
(as alacritty, foot and tmux do). Those wanting for the title to be set
|
||||
regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d
|
||||
drop-in - to set PROMPT_COMMMAND like so:
|
||||
|
||||
PROMPT_COMMAND=(genfun_set_win_title)
|
||||
|
||||
Those who would prefer for bash never to interfere with the window title may
|
||||
now opt out of the default title setting behaviour, either with the "unset -v
|
||||
PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired.
|
||||
EOF
|
||||
}
|
411
sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_alpha_p20240726.ebuild
vendored
Normal file
411
sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.3_alpha_p20240726.ebuild
vendored
Normal file
@ -0,0 +1,411 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
|
||||
inherit flag-o-matic toolchain-funcs prefix verify-sig
|
||||
|
||||
# Uncomment if we have a patchset.
|
||||
#GENTOO_PATCH_DEV="sam"
|
||||
#GENTOO_PATCH_VER="${PV}"
|
||||
|
||||
MY_PV=${PV/_p*}
|
||||
MY_PV=${MY_PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
MY_PATCHES=()
|
||||
|
||||
# Determine the patchlevel.
|
||||
case ${PV} in
|
||||
9999|*_alpha*|*_beta*|*_rc*)
|
||||
# Set a negative patchlevel to indicate that it's a pre-release.
|
||||
PLEVEL=-1
|
||||
;;
|
||||
*_p*)
|
||||
PLEVEL=${PV##*_p}
|
||||
;;
|
||||
*)
|
||||
PLEVEL=0
|
||||
esac
|
||||
|
||||
# The version of readline this bash normally ships with. Note that we only use
|
||||
# the bundled copy of readline for pre-releases.
|
||||
READLINE_VER="8.3_alpha"
|
||||
|
||||
DESCRIPTION="The standard GNU Bourne again shell"
|
||||
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git"
|
||||
EGIT_BRANCH=devel
|
||||
inherit git-r3
|
||||
elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
# It can be useful to have snapshots in the pre-release period once
|
||||
# the first alpha is out, as various bugs get reported and fixed from
|
||||
# the alpha, and the next pre-release is usually quite far away.
|
||||
#
|
||||
# i.e. if it's worth packaging the alpha, it's worth packaging a followup.
|
||||
BASH_COMMIT="d5ef283cbdd08217efdc55974a6a8a2c52a7562f"
|
||||
SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.xz -> ${P}-${BASH_COMMIT}.tar.xz"
|
||||
S=${WORKDIR}/${PN}-${BASH_COMMIT}
|
||||
else
|
||||
my_urls=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}.tar.gz" )
|
||||
|
||||
# bash-5.1 -> bash51
|
||||
my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.}
|
||||
|
||||
for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do
|
||||
printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}"
|
||||
my_urls+=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}-patches/${my_patch_ver}" )
|
||||
MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" )
|
||||
done
|
||||
|
||||
SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
unset -v my_urls my_p my_patch_idx my_patch_ver
|
||||
fi
|
||||
|
||||
if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
|
||||
|
||||
DEPEND="
|
||||
>=sys-libs/ncurses-5.2-r2:=
|
||||
nls? ( virtual/libintl )
|
||||
"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )"
|
||||
fi
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011).
|
||||
BDEPEND="
|
||||
pgo? ( dev-util/gperf )
|
||||
verify-sig? ( sec-keys/openpgp-keys-chetramey )
|
||||
"
|
||||
|
||||
# EAPI 8 tries to append it but it doesn't exist here.
|
||||
QA_CONFIGURE_OPTIONS="--disable-static"
|
||||
|
||||
PATCHES=(
|
||||
#"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/
|
||||
|
||||
# Patches to or from Chet, posted to the bug-bash mailing list.
|
||||
"${FILESDIR}/${PN}-5.0-syslog-history-extern.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# bug #7332
|
||||
if is-flag -malign-double; then
|
||||
eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
|
||||
eerror "as it breaks LFS (struct stat64) on x86."
|
||||
die "remove -malign-double from your CFLAGS mr ricer"
|
||||
fi
|
||||
|
||||
if use bashlogger; then
|
||||
ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
|
||||
ewarn "This will log ALL output you enter into the shell, you have been warned."
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local patch
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
git-r3_src_unpack
|
||||
elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
default
|
||||
else
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
|
||||
|
||||
for patch in "${MY_PATCHES[@]}"; do
|
||||
verify-sig_verify_detached "${patch}"{,.sig}
|
||||
done
|
||||
fi
|
||||
|
||||
unpack "${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Include official patches.
|
||||
(( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}"
|
||||
|
||||
# Clean out local libs so we know we use system ones w/releases. The
|
||||
# touch utility is invoked for the benefit of config.status.
|
||||
if (( PLEVEL >= 0 )); then
|
||||
rm -rf lib/{readline,termcap}/* \
|
||||
&& touch lib/{readline,termcap}/Makefile.in \
|
||||
&& sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \
|
||||
|| die
|
||||
fi
|
||||
|
||||
# Prefixify hardcoded path names. No-op for non-prefix.
|
||||
hprefixify pathnames.h.in
|
||||
|
||||
# Avoid regenerating docs after patches, bug #407985.
|
||||
sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \
|
||||
&& touch -r . doc/* \
|
||||
|| die
|
||||
|
||||
# Sometimes hangs (more noticeable w/ pgo), bug #907403.
|
||||
rm tests/run-jobs || die
|
||||
|
||||
eapply -p0 "${PATCHES[@]}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a myconf
|
||||
|
||||
# Upstream only test with Bison and require GNUisms like YYEOF and
|
||||
# YYERRCODE. The former at least may be in POSIX soon:
|
||||
# https://www.austingroupbugs.net/view.php?id=1269.
|
||||
# configure warns on use of non-Bison but doesn't abort. The result
|
||||
# may misbehave at runtime.
|
||||
unset -v YACC
|
||||
|
||||
# wcsnwidth(), substring() issues with -Wlto-type-mismatch, reported
|
||||
# upstream to Chet by email.
|
||||
filter-lto
|
||||
|
||||
myconf=(
|
||||
--disable-profiling
|
||||
|
||||
# Force linking with system curses ... the bundled termcap lib
|
||||
# sucks bad compared to ncurses. For the most part, ncurses
|
||||
# is here because readline needs it. But bash itself calls
|
||||
# ncurses in one or two small places :(.
|
||||
--with-curses
|
||||
|
||||
$(use_enable mem-scramble)
|
||||
$(use_enable net net-redirections)
|
||||
$(use_enable readline)
|
||||
$(use_enable readline bang-history)
|
||||
$(use_enable readline history)
|
||||
$(use_with afs)
|
||||
$(use_with mem-scramble bash-malloc)
|
||||
)
|
||||
|
||||
# For descriptions of these, see config-top.h.
|
||||
# bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
|
||||
append-cppflags \
|
||||
-DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \
|
||||
-DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \
|
||||
-DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \
|
||||
-DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \
|
||||
-DNON_INTERACTIVE_LOGIN_SHELLS \
|
||||
-DSSH_SOURCE_BASHRC \
|
||||
$(use bashlogger && echo -DSYSLOG_HISTORY)
|
||||
|
||||
use nls || myconf+=( --disable-nls )
|
||||
|
||||
if (( PLEVEL >= 0 )); then
|
||||
# Historically, we always used the builtin readline, but since
|
||||
# our handling of SONAME upgrades has gotten much more stable
|
||||
# in the PM (and the readline ebuild itself preserves the old
|
||||
# libs during upgrades), linking against the system copy should
|
||||
# be safe.
|
||||
# Exact cached version here doesn't really matter as long as it
|
||||
# is at least what's in the DEPEND up above.
|
||||
export ac_cv_rl_version=${READLINE_VER%%_*}
|
||||
|
||||
# Use system readline only with released versions.
|
||||
myconf+=( --with-installed-readline=. )
|
||||
fi
|
||||
|
||||
if use plugins; then
|
||||
append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash"
|
||||
else
|
||||
# Disable the plugins logic by hand since bash doesn't provide
|
||||
# a way of doing it.
|
||||
export ac_cv_func_dl{close,open,sym}=no \
|
||||
ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
|
||||
|
||||
sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die
|
||||
fi
|
||||
|
||||
# bug #444070
|
||||
tc-export AR
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local -a pgo_generate_flags pgo_use_flags
|
||||
local flag
|
||||
|
||||
# -fprofile-partial-training because upstream notes the test suite isn't
|
||||
# super comprehensive.
|
||||
# https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
|
||||
if use pgo; then
|
||||
pgo_generate_flags=(
|
||||
-fprofile-update=atomic
|
||||
-fprofile-dir="${T}"/pgo
|
||||
-fprofile-generate="${T}"/pgo
|
||||
)
|
||||
pgo_use_flags=(
|
||||
-fprofile-use="${T}"/pgo
|
||||
-fprofile-dir="${T}"/pgo
|
||||
)
|
||||
if flag=$(test-flags-CC -fprofile-partial-training); then
|
||||
pgo_generate_flags+=( "${flag}" )
|
||||
pgo_use_flags+=( "${flag}" )
|
||||
fi
|
||||
fi
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others
|
||||
|
||||
# Build Bash and run its tests to generate profiles.
|
||||
if (( ${#pgo_generate_flags[@]} )); then
|
||||
# Used in test suite.
|
||||
unset -v A
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check
|
||||
|
||||
if tc-is-clang; then
|
||||
llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die
|
||||
fi
|
||||
|
||||
# Rebuild Bash using the profiling data we just generated.
|
||||
emake clean
|
||||
emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Used in test suite.
|
||||
unset -v A
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local d f
|
||||
|
||||
default
|
||||
|
||||
my_prefixify() {
|
||||
while read -r; do
|
||||
if [[ $REPLY == *$1* ]]; then
|
||||
REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"}
|
||||
fi
|
||||
printf '%s\n' "${REPLY}" || ! break
|
||||
done < "$2" || die
|
||||
}
|
||||
|
||||
dodir /bin
|
||||
mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die
|
||||
dosym bash /bin/rbash
|
||||
|
||||
insinto /etc/bash
|
||||
doins "${FILESDIR}"/bash_logout
|
||||
my_prefixify bashrc.d "${FILESDIR}"/bashrc-r1 | newins - bashrc
|
||||
|
||||
insinto /etc/bash/bashrc.d
|
||||
my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color.bash | newins - 10-gentoo-color.bash
|
||||
newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r1.bash 10-gentoo-title.bash
|
||||
if [[ ! ${EPREFIX} ]]; then
|
||||
doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash
|
||||
fi
|
||||
|
||||
insinto /etc/skel
|
||||
for f in bash{_logout,_profile,rc}; do
|
||||
newins "${FILESDIR}/dot-${f}" ".${f}"
|
||||
done
|
||||
|
||||
if use plugins; then
|
||||
exeinto "/usr/$(get_libdir)/bash"
|
||||
set -- examples/loadables/*.o
|
||||
doexe "${@%.o}"
|
||||
|
||||
insinto /usr/include/bash-plugins
|
||||
doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
for d in examples/{functions,misc,scripts,startup-files}; do
|
||||
exeinto "/usr/share/doc/${PF}/${d}"
|
||||
docinto "${d}"
|
||||
for f in "${d}"/*; do
|
||||
if [[ ${f##*/} != @(PERMISSION|*README) ]]; then
|
||||
doexe "${f}"
|
||||
else
|
||||
dodoc "${f}"
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Install bash_builtins.1 and rbash.1.
|
||||
emake -C doc DESTDIR="${D}" install_builtins
|
||||
sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die
|
||||
doman "${T}"/rbash.1
|
||||
|
||||
newdoc CWRU/changelog ChangeLog
|
||||
dosym bash.info /usr/share/info/bashref.info
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then
|
||||
mkdir -p -- "${EROOT}"/etc/bash \
|
||||
&& mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \
|
||||
|| die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local old_ver
|
||||
|
||||
# If /bin/sh does not exist, provide it.
|
||||
if [[ ! -e ${EROOT}/bin/sh ]]; then
|
||||
ln -sf -- bash "${EROOT}"/bin/sh || die
|
||||
fi
|
||||
|
||||
read -r old_ver <<<"${REPLACING_VERSIONS}"
|
||||
if [[ ! $old_ver ]]; then
|
||||
:
|
||||
elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then
|
||||
return
|
||||
fi
|
||||
|
||||
while read -r; do ewarn "${REPLY}"; done <<'EOF'
|
||||
Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash.
|
||||
|
||||
Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the
|
||||
characteristics of the operating environment, it may contain a command to set
|
||||
the terminal's window title. Those who were already choosing to customise the
|
||||
PROMPT_COMMAND variable are now advised to append their commands like so:
|
||||
|
||||
PROMPT_COMMAND+=('custom command goes here')
|
||||
|
||||
Gentoo no longer defaults to having bash set the window title in the case
|
||||
that the terminal is controlled by sshd(8), unless screen is launched on the
|
||||
remote side or the terminal reliably supports saving and restoring the title
|
||||
(as alacritty, foot and tmux do). Those wanting for the title to be set
|
||||
regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d
|
||||
drop-in - to set PROMPT_COMMMAND like so:
|
||||
|
||||
PROMPT_COMMAND=(genfun_set_win_title)
|
||||
|
||||
Those who would prefer for bash never to interfere with the window title may
|
||||
now opt out of the default title setting behaviour, either with the "unset -v
|
||||
PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired.
|
||||
EOF
|
||||
}
|
@ -20,7 +20,7 @@ else
|
||||
SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz"
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
|
@ -12,7 +12,13 @@ DIST cmake-3.29.3.tar.gz 11247199 BLAKE2B 8d18aca8871a615a4dca8eeb380ad79fdf41a2
|
||||
DIST cmake-3.29.6-SHA-256.txt 1646 BLAKE2B 8d2e11fe0e7ba89e394e51920657deb793e5f45026ebb86c39748410f110568c68021099286901f05fea47bf641d583b4f3715fe315e795cc8041a1fb66d5107 SHA512 1df0e791c3f42e5f96a967b385155b1f2e5214d78df639c81d2632455748f68423ab5de580f7f3e64c06387fd25247660da4b4bda0c9881f7ca25a317b62556f
|
||||
DIST cmake-3.29.6-SHA-256.txt.asc 833 BLAKE2B 25e2588375d353cc3d56480dae7aa3d2376c11cb1d830167f57544429fb0b455aeaceb121ac0fdd3f6f2b235c418bc4f52eafacc436472d9a2f3e80b97b08b18 SHA512 f01fff8b188ddd5aa7501acba3d68f3ba2a6b94d402af1afd716be66fa8f76c2d373cd6851a7fe308761171e2206c60f4f785209c86170037afcf3f416f080de
|
||||
DIST cmake-3.29.6.tar.gz 11248411 BLAKE2B cfd639ce975a4a13221d1fffea97c3bf0599c9af1c8de28e340013ea918bd0fc1eff1d97ca07b2cdd9c34f790950246530ebf1282d400f658fb2d1f4f89a089c SHA512 ecb7b62d2ed133da5c03932d78cc218deddd3c5d7d1116a5ded80b07f6e5f8145928fc15a5c22265995a2b451b1e20aa4dcaa1918060d025485fe8fa7730f3ec
|
||||
DIST cmake-3.29.7-SHA-256.txt 1646 BLAKE2B 8de09802b055a05fe3cddae74f3952173a63dcbfdd2aef36f31c2c362bbd942a37cd2b7dae4cb56e46501be5c0963c21f2273eba55da026887ab0d2b37039958 SHA512 21c6c186a20ec986d6e4df528f68b9946d051e63feb7f94cfe80c9a7b686b933b4bd26242c391475bf3cb52ed2a7bb02fff06fda42688fe4129f05e54945fc0d
|
||||
DIST cmake-3.29.7-SHA-256.txt.asc 833 BLAKE2B 73cb2182d7b10d1e36e08494a2c97607550ddab0048f62362ecc0ec37e08967d0968982d2beb606fc099cea99dec9f1c57f0e84128cbea4b09dcf62b87156bea SHA512 783ea23764ac41a487fd58075eec529ae2b1e1ea5057d61c933245474b84e3a866715c81255ac353578bd272d2a17e54f925aa2238c516f6a4c00ba58336174b
|
||||
DIST cmake-3.29.7.tar.gz 11249246 BLAKE2B ffc1c67e310632d58353c361b0f7a7c3624ab54662829e982adb1ebf3c4ab0479b6ae96d10c3d2273ea460a9836b2f0a43cd769154e2f1a30b77eb3a9f96dad3 SHA512 96e963cd2b5bccd34ed8ec3d2a7f19bd798611cd946adce8ebe142015562b20cb3bae0aa832e8ccb60bb3dc290e41218b4f3ca0361f3e11afecbccf7a182f7d2
|
||||
DIST cmake-3.30.0-SHA-256.txt 1646 BLAKE2B 9ef563e1b7a49a34bd08547483e628de469edf64889e4a82975441eba6ec77f1ae3cafec4bfcc641699f9c5a60a9998960a6a3e0fd2b955678dc3c40729248ed SHA512 7236dba187dcd5c92b5221116fe31931324ffd09f3371eb3d06b10cdcdb45c6822d95646cf4f8a44926210485f68f34c09f78cc4e3939b5f176f84aa818e82cd
|
||||
DIST cmake-3.30.0-SHA-256.txt.asc 833 BLAKE2B 2c2657afba4b9d2b176d82789d634505e1eb9a1f46969a0993aadf52da34a242dc104988bc2d5d24cecbab7f32266aa22ac57c09986e20871321bbab11d2aa92 SHA512 de86b2b88c78bc5db905f0d8cbbb7f3ce736c1905375de93d68a2eea3927a02bc4d93d2f3a49c6cb5b0afbc61f6520c9cb1e8b4a33897670d16caff60aa4cdb3
|
||||
DIST cmake-3.30.0-docs.tar.xz 572276 BLAKE2B 0c258f8dd0a518bb7bf97d35a778d8e406c986e123fc8acafb174a750ad0883d346254d12e8134dd9d030faefddc13b8260e7b43e405272157ada742c75b5fc2 SHA512 9d534b0efc30829f1144fb32c4f10ba25749e238c8ceeb4399b6d1eb8421b9fb1363972a497757ef84689bb987840619cbb4333ae95fd2397eea07eebed112c1
|
||||
DIST cmake-3.30.0.tar.gz 11500060 BLAKE2B 62b3f3d5ed92f7f118991f36ba7098ff20c202dd924ecd1e7af3fedc54345c5db26ce6fa782fe1acb490857b478067c17383f0453dece579482c2e962bd9de12 SHA512 1dd872a3f93cfadb7ac0f93177e7d4d7ded67cf09c71b1b776dc3bc8b7d4e44dd81533a8a4bf2c9eaaed56443060aa27a11250a5e47de316c89db7e146929782
|
||||
DIST cmake-3.30.1-SHA-256.txt 1646 BLAKE2B 39c8a32acb873f3b2b35af543006ef4ebc976f1939f4a857e55048654c60c23ee79cde0f1c625a7388f612d5ad594fa4ddfc89e4bb6e13764ffc78ce2e70f0e4 SHA512 bf3ba7218d504c75474b048b7c8b5db3928994fa269ea3762e68a751905403f87946c3dfdfbf63836d87f5180c905ed57b0d287bec97b04ee0e81f1f420a8c5f
|
||||
DIST cmake-3.30.1-SHA-256.txt.asc 833 BLAKE2B 5232626cc85bbcf0f44a9df4904ede8935c4d028b9604c9749a04b6eb2d51f648c817412b7870ae7f3e635dd88a44143568985d4ed2322d5239c5935e073a92b SHA512 b2a7b344a2d6350e55721860e7579a70c767b94b04a88b73a9fb1e9830658689561f9467d09eed87b2dce00106917543cf69ede5c7ed66a529359a1f6427dbc5
|
||||
DIST cmake-3.30.1.tar.gz 11500521 BLAKE2B 0e604ecc6b7da1c1c1baa81488a033aef6fa39cbddaaf43364193dda3e30d02a072f58a75573723e71653a2d1b34d09a7e1d0cc98280d76801d262bf54ffe77d SHA512 e3b38d309554a4239b8048434d770d3ac4533280a82c1bec65c37c9b0996cdf1753185e38deb4fb5da890ddc3d39c1d5c075e2ab0f7e0c52d61f5d556851fd20
|
||||
|
284
sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.29.7.ebuild
vendored
Normal file
284
sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.29.7.ebuild
vendored
Normal file
@ -0,0 +1,284 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${CMAKE_DOCS_PREBUILT:=1}
|
||||
|
||||
CMAKE_DOCS_PREBUILT_DEV=sam
|
||||
CMAKE_DOCS_VERSION=3.28.0
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
# See bug #784815
|
||||
CMAKE_DOCS_USEFLAG="+doc"
|
||||
|
||||
# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
|
||||
# ... but seems fine as of 3.22.3?
|
||||
# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
|
||||
CMAKE_MAKEFILE_GENERATOR="emake"
|
||||
CMAKE_REMOVE_MODULES_LIST=( none )
|
||||
inherit bash-completion-r1 cmake flag-o-matic multiprocessing \
|
||||
toolchain-funcs xdg-utils
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
|
||||
DESCRIPTION="Cross platform Make"
|
||||
HOMEPAGE="https://cmake.org/"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
CMAKE_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc
|
||||
inherit verify-sig
|
||||
|
||||
SRC_URI+=" verify-sig? (
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
|
||||
)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20230817 )"
|
||||
fi
|
||||
fi
|
||||
|
||||
[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses qt6 test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=app-arch/libarchive-3.3.3:=
|
||||
app-crypt/rhash:0=
|
||||
>=dev-libs/expat-2.0.1
|
||||
>=dev-libs/jsoncpp-1.9.2-r2:0=
|
||||
>=dev-libs/libuv-1.10.0:=
|
||||
>=net-misc/curl-7.21.5[ssl]
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
dap? ( dev-cpp/cppdap )
|
||||
gui? (
|
||||
!qt6? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
)
|
||||
qt6? ( dev-qt/qtbase:6[gui,widgets] )
|
||||
)
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND+="
|
||||
doc? (
|
||||
dev-python/requests
|
||||
dev-python/sphinx
|
||||
)
|
||||
test? ( app-arch/libarchive[zstd] )
|
||||
"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
PATCHES=(
|
||||
# Prefix
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch
|
||||
# Misc
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0003-Prefer-pkgconfig-in-FindBLAS.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0006-Filter-out-distcc-warnings-to-avoid-confusing-CMake.patch
|
||||
|
||||
# Upstream fixes (can usually be removed with a version bump)
|
||||
)
|
||||
|
||||
cmake_src_bootstrap() {
|
||||
# disable running of cmake in bootstrap command
|
||||
sed -i \
|
||||
-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
|
||||
bootstrap || die "sed failed"
|
||||
|
||||
# execinfo.h on Solaris isn't quite what it is on Darwin
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
sed -i -e 's/execinfo\.h/blablabla.h/' \
|
||||
Source/kwsys/CMakeLists.txt || die
|
||||
fi
|
||||
|
||||
# bootstrap script isn't exactly /bin/sh compatible
|
||||
tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
|
||||
--prefix="${T}/cmakestrap/" \
|
||||
--parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
|
||||
|| die "Bootstrap failed"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then
|
||||
default
|
||||
else
|
||||
cd "${DISTDIR}" || die
|
||||
|
||||
# See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
|
||||
verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
|
||||
verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
|
||||
|
||||
cd "${WORKDIR}" || die
|
||||
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# Disable Xcode hooks, bug #652134
|
||||
sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
|
||||
Source/CMakeLists.txt || die
|
||||
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
|
||||
-e '/cmGlobalXCodeGenerator.h/d' \
|
||||
Source/cmake.cxx || die
|
||||
|
||||
# Disable isysroot usage with GCC, we've properly instructed
|
||||
# where things are via GCC configuration and ldwrapper
|
||||
sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
|
||||
Modules/Platform/Apple-GNU-*.cmake || die
|
||||
# Disable isysroot usage with clang as well
|
||||
sed -i -e '/_SYSROOT_FLAG/d' \
|
||||
Modules/Platform/Apple-Clang.cmake || die
|
||||
# Don't set a POSIX standard, system headers don't like that, #757426
|
||||
sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
|
||||
Source/cmLoadCommandCommand.cxx \
|
||||
Source/cmStandardLexer.h \
|
||||
Source/cmSystemTools.cxx \
|
||||
Source/cmTimestamp.cxx
|
||||
sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
|
||||
Source/cmStandardLexer.h
|
||||
fi
|
||||
|
||||
# Add gcc libs to the default link paths
|
||||
sed -i \
|
||||
-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
|
||||
-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
|
||||
-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
|
||||
Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
|
||||
|
||||
## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must*
|
||||
## handle them as part of bootstrapping, sadly.
|
||||
|
||||
# Fix linking on Solaris
|
||||
[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
|
||||
|
||||
# ODR warnings, bug #858335
|
||||
# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
|
||||
filter-lto
|
||||
|
||||
if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
|
||||
CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
|
||||
cmake_src_bootstrap
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_USE_SYSTEM_LIBRARIES=ON
|
||||
-DCMake_ENABLE_DEBUGGER=$(usex dap)
|
||||
-DCMAKE_DOC_DIR=/share/doc/${PF}
|
||||
-DCMAKE_MAN_DIR=/share/man
|
||||
-DCMAKE_DATA_DIR=/share/${PN}
|
||||
-DSPHINX_MAN=$(usex doc)
|
||||
-DSPHINX_HTML=$(usex doc)
|
||||
-DBUILD_CursesDialog="$(usex ncurses)"
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
-DBUILD_QtDialog=$(usex gui)
|
||||
)
|
||||
|
||||
use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=$(usex qt6 6 5) )
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Fix OutDir and SelectLibraryConfigurations tests
|
||||
# these are altered thanks to our eclass
|
||||
sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
|
||||
"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
|
||||
|| die
|
||||
|
||||
unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS
|
||||
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
|
||||
# Excluded tests:
|
||||
# BootstrapTest: we actualy bootstrap it every time so why test it.
|
||||
# BundleUtilities: bundle creation broken
|
||||
# CMakeOnly.AllFindModules: pthread issues
|
||||
# CTest.updatecvs: which fails to commit as root
|
||||
# Fortran: requires fortran
|
||||
# RunCMake.CompilerLauncher: also requires fortran
|
||||
# RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
|
||||
# debugedit binary is not in the expected location
|
||||
# RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
|
||||
# it can't find a deb package that owns libc
|
||||
# TestUpload, which requires network access
|
||||
# RunCMake.CMP0125, known failure reported upstream (bug #829414)
|
||||
local myctestargs=(
|
||||
--output-on-failure
|
||||
-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
|
||||
)
|
||||
|
||||
local -x QT_QPA_PLATFORM=offscreen
|
||||
|
||||
cmake_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins Auxiliary/vim/syntax/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/indent
|
||||
doins Auxiliary/vim/indent/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
doins "${FILESDIR}/${PN}.vim"
|
||||
|
||||
dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use gui; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use gui; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
@ -152,6 +152,14 @@ src_prepare() {
|
||||
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
|
||||
-e '/cmGlobalXCodeGenerator.h/d' \
|
||||
Source/cmake.cxx || die
|
||||
# Disable system integration, bug #933744
|
||||
sed -i -e 's/__APPLE__/__DISABLED__/' \
|
||||
Source/cmFindProgramCommand.cxx \
|
||||
Source/CPack/cmCPackGeneratorFactory.cxx || die
|
||||
sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \
|
||||
Source/cmMachO.cxx || die
|
||||
sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \
|
||||
Source/CMakeLists.txt || die
|
||||
|
||||
# Disable isysroot usage with GCC, we've properly instructed
|
||||
# where things are via GCC configuration and ldwrapper
|
||||
|
291
sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.30.1.ebuild
vendored
Normal file
291
sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.30.1.ebuild
vendored
Normal file
@ -0,0 +1,291 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${CMAKE_DOCS_PREBUILT:=1}
|
||||
|
||||
CMAKE_DOCS_PREBUILT_DEV=sam
|
||||
CMAKE_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
# See bug #784815
|
||||
CMAKE_DOCS_USEFLAG="+doc"
|
||||
|
||||
# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
|
||||
# ... but seems fine as of 3.22.3?
|
||||
# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
|
||||
CMAKE_MAKEFILE_GENERATOR="emake"
|
||||
CMAKE_REMOVE_MODULES_LIST=( none )
|
||||
inherit bash-completion-r1 cmake flag-o-matic multiprocessing \
|
||||
toolchain-funcs xdg-utils
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
|
||||
DESCRIPTION="Cross platform Make"
|
||||
HOMEPAGE="https://cmake.org/"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
CMAKE_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc
|
||||
inherit verify-sig
|
||||
|
||||
SRC_URI+=" verify-sig? (
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
|
||||
)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20230817 )"
|
||||
fi
|
||||
fi
|
||||
|
||||
[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses qt6 test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=app-arch/libarchive-3.3.3:=
|
||||
app-crypt/rhash:0=
|
||||
>=dev-libs/expat-2.0.1
|
||||
>=dev-libs/jsoncpp-1.9.2-r2:0=
|
||||
>=dev-libs/libuv-1.10.0:=
|
||||
>=net-misc/curl-7.21.5[ssl]
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
dap? ( dev-cpp/cppdap )
|
||||
gui? (
|
||||
!qt6? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
)
|
||||
qt6? ( dev-qt/qtbase:6[gui,widgets] )
|
||||
)
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND+="
|
||||
doc? (
|
||||
dev-python/requests
|
||||
dev-python/sphinx
|
||||
)
|
||||
test? ( app-arch/libarchive[zstd] )
|
||||
"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
PATCHES=(
|
||||
# Prefix
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch
|
||||
# Misc
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0003-Prefer-pkgconfig-in-FindBLAS.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
|
||||
|
||||
# Upstream fixes (can usually be removed with a version bump)
|
||||
)
|
||||
|
||||
cmake_src_bootstrap() {
|
||||
# disable running of cmake in bootstrap command
|
||||
sed -i \
|
||||
-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
|
||||
bootstrap || die "sed failed"
|
||||
|
||||
# execinfo.h on Solaris isn't quite what it is on Darwin
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
sed -i -e 's/execinfo\.h/blablabla.h/' \
|
||||
Source/kwsys/CMakeLists.txt || die
|
||||
fi
|
||||
|
||||
# bootstrap script isn't exactly /bin/sh compatible
|
||||
tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
|
||||
--prefix="${T}/cmakestrap/" \
|
||||
--parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
|
||||
|| die "Bootstrap failed"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then
|
||||
default
|
||||
else
|
||||
cd "${DISTDIR}" || die
|
||||
|
||||
# See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
|
||||
verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
|
||||
verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
|
||||
|
||||
cd "${WORKDIR}" || die
|
||||
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# Disable Xcode hooks, bug #652134
|
||||
sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
|
||||
Source/CMakeLists.txt || die
|
||||
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
|
||||
-e '/cmGlobalXCodeGenerator.h/d' \
|
||||
Source/cmake.cxx || die
|
||||
# Disable system integration, bug #933744
|
||||
sed -i -e 's/__APPLE__/__DISABLED__/' \
|
||||
Source/cmFindProgramCommand.cxx \
|
||||
Source/CPack/cmCPackGeneratorFactory.cxx || die
|
||||
sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \
|
||||
Source/cmMachO.cxx || die
|
||||
sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \
|
||||
Source/CMakeLists.txt || die
|
||||
|
||||
# Disable isysroot usage with GCC, we've properly instructed
|
||||
# where things are via GCC configuration and ldwrapper
|
||||
sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
|
||||
Modules/Platform/Apple-GNU-*.cmake || die
|
||||
# Disable isysroot usage with clang as well
|
||||
sed -i -e '/_SYSROOT_FLAG/d' \
|
||||
Modules/Platform/Apple-Clang.cmake || die
|
||||
# Don't set a POSIX standard, system headers don't like that, #757426
|
||||
sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
|
||||
Source/cmLoadCommandCommand.cxx \
|
||||
Source/cmStandardLexer.h \
|
||||
Source/cmSystemTools.cxx \
|
||||
Source/cmTimestamp.cxx
|
||||
sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
|
||||
Source/cmStandardLexer.h
|
||||
fi
|
||||
|
||||
# Add gcc libs to the default link paths
|
||||
sed -i \
|
||||
-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
|
||||
-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
|
||||
-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
|
||||
Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
|
||||
|
||||
## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must*
|
||||
## handle them as part of bootstrapping, sadly.
|
||||
|
||||
# Fix linking on Solaris
|
||||
[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
|
||||
|
||||
# ODR warnings, bug #858335
|
||||
# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
|
||||
filter-lto
|
||||
|
||||
if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
|
||||
CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
|
||||
cmake_src_bootstrap
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_USE_SYSTEM_LIBRARIES=ON
|
||||
-DCMake_ENABLE_DEBUGGER=$(usex dap)
|
||||
-DCMAKE_DOC_DIR=/share/doc/${PF}
|
||||
-DCMAKE_MAN_DIR=/share/man
|
||||
-DCMAKE_DATA_DIR=/share/${PN}
|
||||
-DSPHINX_MAN=$(usex doc)
|
||||
-DSPHINX_HTML=$(usex doc)
|
||||
-DBUILD_CursesDialog="$(usex ncurses)"
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
-DBUILD_QtDialog=$(usex gui)
|
||||
)
|
||||
|
||||
use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=$(usex qt6 6 5) )
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Fix OutDir and SelectLibraryConfigurations tests
|
||||
# these are altered thanks to our eclass
|
||||
sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
|
||||
"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
|
||||
|| die
|
||||
|
||||
unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS
|
||||
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
|
||||
# Excluded tests:
|
||||
# BootstrapTest: we actualy bootstrap it every time so why test it.
|
||||
# BundleUtilities: bundle creation broken
|
||||
# CMakeOnly.AllFindModules: pthread issues
|
||||
# CTest.updatecvs: which fails to commit as root
|
||||
# Fortran: requires fortran
|
||||
# RunCMake.CompilerLauncher: also requires fortran
|
||||
# RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
|
||||
# debugedit binary is not in the expected location
|
||||
# RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
|
||||
# it can't find a deb package that owns libc
|
||||
# TestUpload, which requires network access
|
||||
# RunCMake.CMP0125, known failure reported upstream (bug #829414)
|
||||
local myctestargs=(
|
||||
--output-on-failure
|
||||
-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
|
||||
)
|
||||
|
||||
local -x QT_QPA_PLATFORM=offscreen
|
||||
|
||||
cmake_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins Auxiliary/vim/syntax/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/indent
|
||||
doins Auxiliary/vim/indent/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
doins "${FILESDIR}/${PN}.vim"
|
||||
|
||||
dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use gui; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use gui; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
@ -153,6 +153,14 @@ src_prepare() {
|
||||
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
|
||||
-e '/cmGlobalXCodeGenerator.h/d' \
|
||||
Source/cmake.cxx || die
|
||||
# Disable system integration, bug #933744
|
||||
sed -i -e 's/__APPLE__/__DISABLED__/' \
|
||||
Source/cmFindProgramCommand.cxx \
|
||||
Source/CPack/cmCPackGeneratorFactory.cxx || die
|
||||
sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \
|
||||
Source/cmMachO.cxx || die
|
||||
sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \
|
||||
Source/CMakeLists.txt || die
|
||||
|
||||
# Disable isysroot usage with GCC, we've properly instructed
|
||||
# where things are via GCC configuration and ldwrapper
|
||||
|
@ -6,10 +6,22 @@ import itertools
|
||||
import shlex
|
||||
import sys
|
||||
|
||||
|
||||
def quote(s):
|
||||
""" Surround a value with quotes, escape embedded quotes.
|
||||
>>> quote("foo'bar")
|
||||
"'foo\\\\'bar'"
|
||||
"""
|
||||
|
||||
return "'" + s.replace("\\", "\\\\").replace("'", "\\'") + "'"
|
||||
|
||||
def main(args):
|
||||
|
||||
def format_array(args):
|
||||
""" Format shell-compatible expressions as a meson array.
|
||||
>>> format_array(['-O2 -pipe -DFOO="bar baz"'])
|
||||
"['-O2', '-pipe', '-DFOO=bar baz']"
|
||||
"""
|
||||
|
||||
# Split each argument according to shell rules
|
||||
args = (shlex.split(x) for x in args)
|
||||
|
||||
@ -20,7 +32,12 @@ def main(args):
|
||||
args = (quote(x) for x in args)
|
||||
|
||||
# Format the result
|
||||
print("[" + ", ".join(args) + "]")
|
||||
return "[" + ", ".join(args) + "]"
|
||||
|
||||
|
||||
def main(args):
|
||||
print(format_array(args))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main(sys.argv[1:])
|
@ -4,10 +4,11 @@
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit python-r1
|
||||
inherit edo python-r1
|
||||
|
||||
DESCRIPTION="Format shell expressions into a meson array"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
@ -15,8 +16,14 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
RDEPEND="${PYTHON_DEPS}"
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_test() {
|
||||
run_doctest() {
|
||||
edo ${EPYTHON} -B -m doctest "${FILESDIR}/meson-format-array.py"
|
||||
}
|
||||
python_foreach_impl run_doctest
|
||||
}
|
||||
|
||||
src_install() {
|
||||
python_foreach_impl python_doscript "${FILESDIR}"/meson-format-array
|
||||
python_foreach_impl python_newscript "${FILESDIR}"/meson-format-array.py meson-format-array
|
||||
}
|
||||
|
@ -10,6 +10,9 @@ DIST meson-1.4.2.tar.gz 2227701 BLAKE2B 11d98d8c84545390bd35b393ae02db7876a38dad
|
||||
DIST meson-1.4.2.tar.gz.asc 833 BLAKE2B 64ce1fc0fecdd6aa76bb89d88ff7497548d82afc00805c083a0bca7ce4cee41dc50be50368e333649ae7e863c03ea780fe24a48c525281fbbcab679b540f4254 SHA512 51d3245f9443cb398e2e8f225f00a853848bde1bfba02bae6334d47115e36ad96c8ec03244f6169c89d73162b86a73158a7f8d08d5bd6b3d28e8369ce7b55093
|
||||
DIST meson-1.5.0.tar.gz 2257170 BLAKE2B 5103622831a3581b428f9cdd96950b8544ddfdcbd384ec2ccd344d6b9ffb2cdd7da069963d57b09a22f26938f6a3b34823abe678fb50a0fe8d79c8abc7899605 SHA512 f0a25cf134949739c698eddaea602bf7852866b3fee3d2c11c1e6b6e48c944cf92abc3d171a2e42e21077edc01f1e7079d451f5624e2b6131382e114e814db3e
|
||||
DIST meson-1.5.0.tar.gz.asc 833 BLAKE2B 43c1e0f197520d3151ea4a41e3723666034fbfba0d794a18783ed765e5844776337f8119aed5897f5320922ac8978992f3900756300b54970bf1066f6fcde629 SHA512 35537ebc8c430eb3c011ff75529442e0ab364aa4fbec8176c340b5f466cd7f2217ab7ed6a03c7bdb577b86bb3472faa054e5ce0472edbb690fe76f39845c2dd6
|
||||
DIST meson-1.5.1.tar.gz 2257106 BLAKE2B 3368b209444d0873217bafee2339b395dca9fa43df68adce19029a41ad5c0eca59426ef681d174ef8b6b89d4a6c5b4f189c1ae219deed78334028d44bdb23a95 SHA512 3239d6f3d64dcedddd456dc451278a37aa6c4460708b0efdff1b04b6e8844c20f5f882060de311c59a678bebd51ee09e1906c9384d4b0c85b28015fd1713ab0a
|
||||
DIST meson-1.5.1.tar.gz.asc 833 BLAKE2B c099720b102b8fff581f2043000454f5cb3593352a8b69c681cda73dae7172fb7d892dc0500e29fffe4ba7828cdcba418acea230563dc26a7a89139ab526b231 SHA512 f8210dd309a104b4169bc2eae9ff370f3ced6fe2c5dfc8f3477c9fbbed983dd6636ea05822d9345d7570e88bfe7789c6cc075e5a91d578a8376666d16ad550a3
|
||||
DIST meson-reference-1.4.1.3 339324 BLAKE2B a0ea6a1dd599c0a559dae64772f730ac7cad7df3ea63acc8355ff933152873567803efff012e6ea0a4c75ef9c8be023a8d927411a49e43de20bbfc69b1263488 SHA512 fc94aa95df3cd04af49ab2f27050c3ef206407a2ccb3b61d9c8660deba55eae3fb627d83713de62f3e1216a1a33a88e989bf5b557b7e17adbb73a57d5f2ad11a
|
||||
DIST meson-reference-1.4.2.3 339324 BLAKE2B 1a4fbd8c27a8cfba773777eabd2ebaa0f76ec0c61dcfe1c7b4483737b348ff9528d68f26e68d7d40b2e1875611eed5b9a31c1cf55fed8eabb42fc1e31d9ef14b SHA512 8b8ec43e812599203ec44c08805eb6818485805c45b9c69802261eaa35efc97846a96f6472c6b1ef5f6c703e7153fd957df7b805f173ca3400a2030dfbe002ca
|
||||
DIST meson-reference-1.5.0.3 341110 BLAKE2B c81d1014f93ca3848e03e6a8948190a31e1823b04134ab6861db94d5b9517252bf66fcbbc987ba2051430c54282256d729d3575db83e1e8d09fa344c6ff06dbf SHA512 b45c7b40cbe1abf7416d50c1c7658726d4feda4a30627a6dc70c7b9aab61f72c9c7c1fa915e47f4b50e9d82987e4179db8ab3d5158ec5ef3d7856335b604f603
|
||||
DIST meson-reference-1.5.1.3 341110 BLAKE2B 5267c2eea1b1281f87e63eb08aa928257dd98088b4d5c27c2785d2d8066c2c28536f7f56bf804ffe37d2f51552c91f31ff7e2729f3b2485d594a9e44a0df9ab1 SHA512 2d36e87e9bc2de0b958f4b20544b0bd9f2b0ffb646768e68fefcd5dfb8f09c24db40f27208b5f2d1f6ba02e7465f68a538ea72be118670c76e0959e090a42cf3
|
||||
|
@ -82,12 +82,22 @@ python_prepare_all() {
|
||||
# ASAN is unsupported on some targets
|
||||
# https://bugs.gentoo.org/692822
|
||||
-e 's/test_pch_with_address_sanitizer/_&/'
|
||||
|
||||
# clippy-driver fails, but only when run via portage.
|
||||
#
|
||||
# error[E0463]: can't find crate for `std`
|
||||
# error: requires `sized` lang_item
|
||||
-e 's/test_rust_clippy/_&/'
|
||||
)
|
||||
|
||||
sed -i "${disable_unittests[@]}" unittests/*.py || die
|
||||
|
||||
# Broken due to python2 script created by python_wrapper_setup
|
||||
rm -r "test cases/frameworks/1 boost" || die
|
||||
# nvcc breaks on essentially any LDFLAGS
|
||||
# https://bugs.gentoo.org/936757
|
||||
# https://github.com/mesonbuild/meson/issues/11234
|
||||
rm -r "test cases/cuda"/* || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
@ -94,6 +94,10 @@ python_prepare_all() {
|
||||
|
||||
# Broken due to python2 script created by python_wrapper_setup
|
||||
rm -r "test cases/frameworks/1 boost" || die
|
||||
# nvcc breaks on essentially any LDFLAGS
|
||||
# https://bugs.gentoo.org/936757
|
||||
# https://github.com/mesonbuild/meson/issues/11234
|
||||
rm -r "test cases/cuda"/* || die
|
||||
|
||||
# The 1.4.2 tarball accidentally contains some untracked files from git master:
|
||||
# - subprojects/bar-0.1/Cargo.toml
|
||||
|
@ -94,6 +94,10 @@ python_prepare_all() {
|
||||
|
||||
# Broken due to python2 script created by python_wrapper_setup
|
||||
rm -r "test cases/frameworks/1 boost" || die
|
||||
# nvcc breaks on essentially any LDFLAGS
|
||||
# https://bugs.gentoo.org/936757
|
||||
# https://github.com/mesonbuild/meson/issues/11234
|
||||
rm -r "test cases/cuda"/* || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
190
sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.5.1.ebuild
vendored
Normal file
190
sdk_container/src/third_party/portage-stable/dev-build/meson/meson-1.5.1.ebuild
vendored
Normal file
@ -0,0 +1,190 @@
|
||||
# Copyright 2016-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} pypy3 )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit bash-completion-r1 edo distutils-r1 flag-o-matic toolchain-funcs
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="https://github.com/mesonbuild/meson"
|
||||
inherit ninja-utils git-r3
|
||||
|
||||
BDEPEND="
|
||||
${NINJA_DEPEND}
|
||||
$(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
|
||||
"
|
||||
|
||||
else
|
||||
inherit verify-sig
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
MY_P=${P/_/}
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
SRC_URI="
|
||||
https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz
|
||||
verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc )
|
||||
https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3
|
||||
"
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )"
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
fi
|
||||
|
||||
DESCRIPTION="Open source build system"
|
||||
HOMEPAGE="https://mesonbuild.com/"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
test? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
app-alternatives/ninja
|
||||
dev-vcs/git
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
virtual/pkgconfig
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
!<dev-build/muon-0.2.0-r2[man(-)]
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.2.1-python-path.patch
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
default
|
||||
use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc}
|
||||
fi
|
||||
}
|
||||
|
||||
python_prepare_all() {
|
||||
local disable_unittests=(
|
||||
# ASAN and sandbox both want control over LD_PRELOAD
|
||||
# https://bugs.gentoo.org/673016
|
||||
-e 's/test_generate_gir_with_address_sanitizer/_&/'
|
||||
|
||||
# ASAN is unsupported on some targets
|
||||
# https://bugs.gentoo.org/692822
|
||||
-e 's/test_pch_with_address_sanitizer/_&/'
|
||||
|
||||
# clippy-driver fails, but only when run via portage.
|
||||
#
|
||||
# error[E0463]: can't find crate for `std`
|
||||
# error: requires `sized` lang_item
|
||||
-e 's/test_rust_clippy/_&/'
|
||||
)
|
||||
|
||||
sed -i "${disable_unittests[@]}" unittests/*.py || die
|
||||
|
||||
# Broken due to python2 script created by python_wrapper_setup
|
||||
rm -r "test cases/frameworks/1 boost" || die
|
||||
# nvcc breaks on essentially any LDFLAGS
|
||||
# https://bugs.gentoo.org/936757
|
||||
# https://github.com/mesonbuild/meson/issues/11234
|
||||
rm -r "test cases/cuda"/* || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_check_deps() {
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
|
||||
fi
|
||||
}
|
||||
|
||||
python_configure_all() {
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
# We use the unsafe_yaml loader because strictyaml is not packaged. In
|
||||
# theory they produce the same results, but pyyaml is faster and
|
||||
# without safety checks.
|
||||
edo ./meson.py setup \
|
||||
--prefix "${EPREFIX}/usr" \
|
||||
-Dhtml=false \
|
||||
-Dunsafe_yaml=true \
|
||||
docs/ docs/builddir
|
||||
fi
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
eninja -C docs/builddir
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
tc-export PKG_CONFIG
|
||||
if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then
|
||||
ewarn "Found Qt5Core but not Qt5Gui; skipping tests"
|
||||
else
|
||||
distutils-r1_src_test
|
||||
fi
|
||||
}
|
||||
|
||||
python_test() {
|
||||
(
|
||||
# meson has its own tests for LTO support. We don't need to verify that
|
||||
# all tests work when they happen to use it. And in particular, this
|
||||
# breaks rust.
|
||||
filter-lto
|
||||
|
||||
# remove unwanted python_wrapper_setup contents
|
||||
# We actually do want to non-error if python2 is installed and tested.
|
||||
remove="${T}/${EPYTHON}/bin:"
|
||||
PATH=${PATH/${remove}/}
|
||||
|
||||
# test_meson_installed
|
||||
unset PYTHONDONTWRITEBYTECODE
|
||||
|
||||
# https://bugs.gentoo.org/687792
|
||||
unset PKG_CONFIG
|
||||
|
||||
# test_cross_file_system_paths
|
||||
unset XDG_DATA_HOME
|
||||
|
||||
# 'test cases/unit/73 summary' expects 80 columns
|
||||
export COLUMNS=80
|
||||
|
||||
# If JAVA_HOME is not set, meson looks for javac in PATH.
|
||||
# If javac is in /usr/bin, meson assumes /usr/include is a valid
|
||||
# JDK include path. Setting JAVA_HOME works around this broken
|
||||
# autodetection. If no JDK is installed, we should end up with an empty
|
||||
# value in JAVA_HOME, and the tests should get skipped.
|
||||
export JAVA_HOME=$(java-config -O 2>/dev/null)
|
||||
|
||||
${EPYTHON} -u run_tests.py
|
||||
) || die "Testing failed with ${EPYTHON}"
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax}
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins data/shell-completions/zsh/_meson
|
||||
|
||||
dobashcomp data/shell-completions/bash/meson
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
DESTDIR="${ED}" eninja -C docs/builddir install
|
||||
else
|
||||
newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3
|
||||
fi
|
||||
}
|
@ -94,6 +94,10 @@ python_prepare_all() {
|
||||
|
||||
# Broken due to python2 script created by python_wrapper_setup
|
||||
rm -r "test cases/frameworks/1 boost" || die
|
||||
# nvcc breaks on essentially any LDFLAGS
|
||||
# https://bugs.gentoo.org/936757
|
||||
# https://github.com/mesonbuild/meson/issues/11234
|
||||
rm -r "test cases/cuda"/* || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.g
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0/${PV%%.*}.0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv x86"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND=">=dev-cpp/gtest-1.13.0[${MULTILIB_USEDEP}]"
|
||||
|
@ -74,7 +74,7 @@ LICENSE="GPL-3+ LGPL-2.1+"
|
||||
SLOT="0"
|
||||
IUSE="cet debuginfod guile lzma multitarget nls +python +server sim source-highlight test vanilla xml xxhash zstd"
|
||||
if [[ -n ${REGULAR_RELEASE} ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
@ -131,14 +131,6 @@ src_prepare() {
|
||||
# Avoid using ancient termcap from host on Prefix systems
|
||||
sed -i -e 's/termcap tinfow/tinfow/g' \
|
||||
gdb/configure{.ac,} || die
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
# code relies on C++11, so make sure we get that selected
|
||||
# due to Python 3.11 pymacro.h doing stuff to work around
|
||||
# versioning mess based on the C version, while we're compiling
|
||||
# C++ here, so we need to make it clear we're doing C++11/C11
|
||||
# because Solaris system headers act on these
|
||||
sed -i -e 's/-x c++/-std=c++11/' gdb/Makefile.in || die
|
||||
fi
|
||||
}
|
||||
|
||||
gdb_branding() {
|
||||
|
@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]] ; then
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1+ test? ( GPL-2+ )"
|
||||
|
@ -14,6 +14,8 @@ DIST Python-3.13.0b2.tar.xz 21089692 BLAKE2B 3cc77e9b7abcd8c9797a40b2a1f5ff6562a
|
||||
DIST Python-3.13.0b2.tar.xz.asc 963 BLAKE2B 2acab01cd8b2b5072e87f0c697767e9cec6a73cd6afae38f066a3bfa14798d10e01c03e806a1a90d1db3e5d91dea090d9dd37d1884bef3291783e6163e3d8906 SHA512 17091aba45ebd8c8feb3e9c54854e20dcd44fec4a1c08c9c0c4593166c407c4ad2b245a0e0893afc83a43e8b461a557fa1d6691c87a6a5ebc97ea448a9201c87
|
||||
DIST Python-3.13.0b3.tar.xz 20841504 BLAKE2B 92760124355483da082ac9fdc7a72eb6739e99acd97521a8c9a60bb73a25e26bcb8bdc9e911ee91667244320b742a9572c1e12229eb1c0d97ef5794493abac0f SHA512 1f0ef2d6f5d450664ad4104b92193b5a2dbe9c79add0a79c35ad9508f9fc7f1a5561efd5e4367defddf45457291524d353705d9a60b3550065920e204c77357d
|
||||
DIST Python-3.13.0b3.tar.xz.asc 963 BLAKE2B 784df664961ea36cb570d685c0cf6e8fe7159161c38103f217303bc0264c73a9904021cca297a180c7dd712d4e7fcee161d741919bee49eff962a25d14568d41 SHA512 3d8bdc8c26441a12518940d264e93a8897042e297ccf9cd2ddec725716a58486475be9462582ee489bd189a4d028b43504f979298174c1b008d521b7ab5fbf1b
|
||||
DIST Python-3.13.0b4.tar.xz 20876136 BLAKE2B b3a7b42b03320df618af18844a8b0f1c4b88b9bcd581cacd2d40d3ecec7d0f11aac36e54913f64541a2287d7a5052aa69f8e8d0379d6bbb4fba78600bf484f75 SHA512 e556f7a4e54b688d0424b0bd84f9849b52f4f7e04c68d4d5b877d86b4f9ded92c9efaa2b7ab33f345235f35e8d544833542f7a4cb100d0ff15b7d98b8367b935
|
||||
DIST Python-3.13.0b4.tar.xz.asc 963 BLAKE2B 0d9c7baa1eedce684e73359682f63c2aa6e7abc7cc77ee7fcf6d9658e93221c02412aa55f22d16337b72a680f10c70520742292da1138228f9257f81bc57d328 SHA512 243637efff94965aa4d997fe26c91a7c1aa7dcfdf7f78d35d6f4fc408b654dfa9d075d1c73bc5a90d145f6e5029ee395a86faf7e027c24a55fabfea6ca20fbd4
|
||||
DIST Python-3.8.19.tar.xz 18975156 BLAKE2B 57b241aeb8f99a8c30590dcb9402abbcf573f00d06e807846bc9135c0a8a4af896c4d772d34abc3c292339953f4974a203bff61a78641d91b1826770226cd7e9 SHA512 1d2a57fa15ccdaec8cdca508ba2ffb01e1ae053a3446ac709bc334480f8e913070899f01ed680cce6dc7ddfddcb27ef402fe206562249fa4c4e87be21ece0625
|
||||
DIST Python-3.8.19.tar.xz.asc 833 BLAKE2B a11705011e9ea2bd6cbabc2b4c896ba94675341188eb483b881c2cb25c932e9ff25f9f589f930605b0442ff93a1f54532608b111c8ace715a406ce10809af671 SHA512 efdaae5462badcf4b98625ce8ab0e34756acea9539416e6ec428725b04539f8c38c1978de346510d669e93bbeef3ae20b1534e4c6582f89c7dc56a04c7cae140
|
||||
DIST Python-3.9.19.tar.xz 19682840 BLAKE2B a12256663f0ff3b799c2193c5877aa89a434340dfa01e655f790abea70af0709b54577e1c2590add241308a8581fd6f45a22aed450bd5db2bf9fa35c4a9d619b SHA512 5577830c734e63a70bbc62cd33d263b9aa87c4381b49cb694c3559067c4c682a55506b65ec5514a8e0a5abf6294dc728e909385d449ae1c388e62f83cea9bb89
|
||||
@ -28,5 +30,6 @@ DIST python-gentoo-patches-3.13.0b1_p3.tar.xz 11056 BLAKE2B ef932bac59d2316ee8fe
|
||||
DIST python-gentoo-patches-3.13.0b2_p9.tar.xz 11288 BLAKE2B e46bac845ce54e32446316b8a5e055905f023e88ad7fb9cfed101f0fccf6c0fef2fb9fd5b7dc4b15ec1e6c075ceaa9f07777c3cfede0f88412871beac0a54e47 SHA512 4148342d649acd98cce1f3d3c7bdbf4adad069ba555624882ddb69f00ee0e64641014086b5e60d97eac809ccb1e3e782a112eb58d7bb83bcfa3222811cbb8682
|
||||
DIST python-gentoo-patches-3.13.0b3.tar.xz 5704 BLAKE2B 665f60d0a440c63ca6bbc1615333e01e0b9d3c5cd8c871157866dd70146a9afb71aecdb6f72f75de2fd8c163d011c8df538c8b278ad6a91079f3300bd05fead3 SHA512 959826aaf467235c8a144a2b94137113b273f79febd30fee0556b718132bb89b5ba97bc01a3718771cade099777f131b322682f336dfaabe18cd5838a75318fa
|
||||
DIST python-gentoo-patches-3.13.0b3_p1.tar.xz 8716 BLAKE2B 25b2d9f059c6f31a354b19833a3dfaab446a43ca00bbaa415e38c3ede6c4a738046469ca4ef6e184a5d7df33a8a1c5209271a1eb0728c3791e6630953bcd798f SHA512 57bbe0470e3356cef3b1880cedd18d4e84d6f64d1f398ce3e3e729744ac5f7a4dc4144333e2355f9ecf41c58382ab5708e7dbf7d480dbf797caa460862aee3bd
|
||||
DIST python-gentoo-patches-3.13.0b4.tar.xz 5700 BLAKE2B cc3e6d899dc51dc4a0f4b57fb5a891a61e5ba5a943edd31b55b6540f1d52a61f2a80f8ac1cdbc36ce155a83ab3942b8991fad0e83baab4c0a1080e62b30e16df SHA512 bf236ed221512a032a057f8b89b29a28e84cfaba56f58c2eaacee846db636089b2ae4534dc55ff3389cfbf1a4485e1cc2049a5cdb98ec1cd31eef71de60596c1
|
||||
DIST python-gentoo-patches-3.8.19_p2.tar.xz 35524 BLAKE2B a6b81e6ae907b60eea676cb65a9c693e62453dc44616baaadb294c5782a195c20eff6c2869b38ea110fe06e9e511468f4ab0c3d1811b16e0ab2833f9dc09b25b SHA512 9944c330b6062c2ac6e13fcfbc1c8835dfd078f6744cdfbc03ba787ae97c08bdae559cefadafe9dfe9be9c31f8c15ee895599b266d870f73c06a2f4b15c78dc3
|
||||
DIST python-gentoo-patches-3.9.19_p3.tar.xz 28240 BLAKE2B 35c70b1f9a590abe9a74795f478ab788cd72c96e9d84f2756685e61324dc4203148e71b00a236bb4af8fb8315e3582ecec255b39749a653e0511d4a9f9fef725 SHA512 6b8f4dab4aa7d4d646ee4091b5cf76bbc8896d4299a3623660a2c5fec06c0cf56c0a50ac87604885cd155141bc85e0e80acdbedb7b34a813901aad021b9b8ab2
|
||||
|
@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="
|
||||
bluetooth build debug +ensurepip examples gdbm libedit
|
||||
+ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
|
658
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0_beta4.ebuild
vendored
Normal file
658
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0_beta4.ebuild
vendored
Normal file
@ -0,0 +1,658 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
|
||||
LLVM_COMPAT=( 18 )
|
||||
LLVM_OPTIONAL=1
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools check-reqs flag-o-matic llvm-r1 multiprocessing
|
||||
inherit pax-utils python-utils-r1 toolchain-funcs verify-sig
|
||||
|
||||
MY_PV=${PV/_beta/b}
|
||||
MY_P="Python-${MY_PV%_p*}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="
|
||||
https://www.python.org/
|
||||
https://github.com/python/cpython/
|
||||
"
|
||||
SRC_URI="
|
||||
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
||||
verify-sig? (
|
||||
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
|
||||
)
|
||||
"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="
|
||||
bluetooth build +debug +ensurepip examples gdbm +gil jit
|
||||
libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
"
|
||||
REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="
|
||||
app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
app-crypt/libb2
|
||||
>=dev-libs/expat-2.1:=
|
||||
dev-libs/libffi:=
|
||||
dev-libs/mpdecimal:=
|
||||
dev-python/gentoo-common
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
ensurepip? ( dev-python/ensurepip-pip )
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
kernel_linux? ( sys-apps/util-linux:= )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? (
|
||||
!libedit? ( >=sys-libs/readline-4.1:= )
|
||||
libedit? ( dev-libs/libedit:= )
|
||||
)
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? ( >=dev-libs/openssl-1.1.1:= )
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? (
|
||||
app-arch/xz-utils
|
||||
dev-python/ensurepip-pip
|
||||
dev-python/ensurepip-setuptools
|
||||
dev-python/ensurepip-wheel
|
||||
)
|
||||
valgrind? ( dev-debug/valgrind )
|
||||
"
|
||||
# autoconf-archive needed to eautoreconf
|
||||
BDEPEND="
|
||||
dev-build/autoconf-archive
|
||||
app-alternatives/awk
|
||||
virtual/pkgconfig
|
||||
jit? (
|
||||
$(llvm_gen_dep '
|
||||
sys-devel/clang:${LLVM_SLOT}
|
||||
sys-devel/llvm:${LLVM_SLOT}
|
||||
')
|
||||
)
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
|
||||
"
|
||||
RDEPEND+="
|
||||
!build? ( app-misc/mime-types )
|
||||
"
|
||||
if [[ ${PV} != *_alpha* ]]; then
|
||||
RDEPEND+="
|
||||
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
|
||||
"
|
||||
fi
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
|
||||
|
||||
# large file tests involve a 2.5G file being copied (duplicated)
|
||||
CHECKREQS_DISK_BUILD=5500M
|
||||
|
||||
QA_PKGCONFIG_VERSION=${PYVER}
|
||||
# false positives -- functions specific to *BSD
|
||||
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
|
||||
|
||||
pkg_pretend() {
|
||||
use test && check-reqs_pkg_pretend
|
||||
|
||||
if ! use gil || use jit; then
|
||||
ewarn "USE=-gil and USE=jit flags are considered experimental upstream. Using"
|
||||
ewarn "them could lead to unexpected breakage, including race conditions"
|
||||
ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
|
||||
ewarn "you can reproduce the problem with dev-lang/python[gil,-jit]. Instead,"
|
||||
ewarn "please consider reporting freethreading / JIT problems upstream."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use jit && llvm-r1_pkg_setup
|
||||
use test && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat and libffi are not used.
|
||||
# TODO: Makefile has annoying deps on expat headers
|
||||
#rm -r Modules/expat || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
# force the correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
|
||||
|
||||
# breaks tests when using --with-wheel-pkg-dir
|
||||
rm -r Lib/test/wheeldata || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
build_cbuild_python() {
|
||||
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
|
||||
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
#
|
||||
# -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
|
||||
local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
|
||||
local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
|
||||
local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
|
||||
|
||||
# We need to build our own Python on CBUILD first, and feed it in.
|
||||
# bug #847910
|
||||
local myeconfargs_cbuild=(
|
||||
"${myeconfargs[@]}"
|
||||
|
||||
--prefix="${BROOT}"/usr
|
||||
--libdir="${cbuild_libdir:2}"
|
||||
|
||||
# Avoid needing to load the right libpython.so.
|
||||
--disable-shared
|
||||
|
||||
# As minimal as possible for the mini CBUILD Python
|
||||
# we build just for cross to satisfy --with-build-python.
|
||||
--without-lto
|
||||
--without-readline
|
||||
--disable-optimizations
|
||||
)
|
||||
|
||||
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
|
||||
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
|
||||
|
||||
# Avoid as many dependencies as possible for the cross build.
|
||||
mkdir Modules || die
|
||||
cat > Modules/Setup.local <<-EOF || die
|
||||
*disabled*
|
||||
nis
|
||||
_dbm _gdbm
|
||||
_sqlite3
|
||||
_hashlib _ssl
|
||||
_curses _curses_panel
|
||||
readline
|
||||
_tkinter
|
||||
pyexpat
|
||||
zlib
|
||||
# We disabled these for CBUILD because Python's setup.py can't handle locating
|
||||
# libdir correctly for cross. This should be rechecked for the pure Makefile approach,
|
||||
# and uncommented if needed.
|
||||
#_ctypes _crypt
|
||||
EOF
|
||||
|
||||
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
|
||||
|
||||
# Unfortunately, we do have to build this immediately, and
|
||||
# not in src_compile, because CHOST configure for Python
|
||||
# will check the existence of the --with-build-python value
|
||||
# immediately.
|
||||
emake
|
||||
popd &> /dev/null || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# disable automagic bluetooth headers detection
|
||||
if ! use bluetooth; then
|
||||
local -x ac_cv_header_bluetooth_bluetooth_h=no
|
||||
fi
|
||||
|
||||
append-flags -fwrapv
|
||||
filter-flags -malign-double
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
# PKG_CONFIG needed for cross.
|
||||
tc-export CXX PKG_CONFIG
|
||||
|
||||
local dbmliborder=
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
# Set baseline test skip flags.
|
||||
COMMON_TEST_SKIPS=(
|
||||
# failures
|
||||
-x test_concurrent_futures
|
||||
-x test_gdb
|
||||
# flaky: https://github.com/python/cpython/issues/121973
|
||||
-x test_pyrepl
|
||||
)
|
||||
|
||||
# Arch-specific skips. See #931888 for a collection of these.
|
||||
case ${CHOST} in
|
||||
alpha*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_builtin
|
||||
-x test_capi
|
||||
-x test_cmath
|
||||
-x test_float
|
||||
# timeout
|
||||
-x test_free_threading
|
||||
-x test_math
|
||||
-x test_numeric_tower
|
||||
-x test_random
|
||||
-x test_statistics
|
||||
# bug 653850
|
||||
-x test_resource
|
||||
-x test_strtod
|
||||
)
|
||||
;;
|
||||
ia64*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_ctypes
|
||||
-x test_external_inspection
|
||||
)
|
||||
;;
|
||||
mips*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_ctypes
|
||||
-x test_external_inspection
|
||||
-x test_statistics
|
||||
)
|
||||
;;
|
||||
powerpc64-*) # big endian
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_descr
|
||||
)
|
||||
;;
|
||||
riscv*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_urllib2
|
||||
)
|
||||
;;
|
||||
sparc*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
# bug 788022
|
||||
-x test_multiprocessing_fork
|
||||
-x test_multiprocessing_forkserver
|
||||
|
||||
-x test_ctypes
|
||||
-x test_descr
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
# musl-specific skips
|
||||
use elibc_musl && COMMON_TEST_SKIPS+=(
|
||||
# various musl locale deficiencies
|
||||
-x test__locale
|
||||
-x test_c_locale_coercion
|
||||
-x test_locale
|
||||
-x test_re
|
||||
|
||||
# known issues with find_library on musl
|
||||
# https://bugs.python.org/issue21622
|
||||
-x test_ctypes
|
||||
|
||||
# fpathconf, ttyname errno values
|
||||
-x test_os
|
||||
)
|
||||
|
||||
if use pgo; then
|
||||
local profile_task_flags=(
|
||||
-m test
|
||||
"-j$(makeopts_jobs)"
|
||||
--pgo-extended
|
||||
--verbose3
|
||||
-u-network
|
||||
|
||||
# We use a timeout because of how often we've had hang issues
|
||||
# here. It also matches the default upstream PROFILE_TASK.
|
||||
--timeout 1200
|
||||
|
||||
"${COMMON_TEST_SKIPS[@]}"
|
||||
|
||||
-x test_dtrace
|
||||
|
||||
# All of these seem to occasionally hang for PGO inconsistently
|
||||
# They'll even hang here but be fine in src_test sometimes.
|
||||
# bug #828535 (and related: bug #788022)
|
||||
-x test_asyncio
|
||||
-x test_httpservers
|
||||
-x test_logging
|
||||
-x test_multiprocessing_fork
|
||||
-x test_socket
|
||||
-x test_xmlrpc
|
||||
|
||||
# Hangs (actually runs indefinitely executing itself w/ many cpython builds)
|
||||
# bug #900429
|
||||
-x test_tools
|
||||
|
||||
# Fails in profiling run, passes in src_test().
|
||||
-x test_capi
|
||||
)
|
||||
|
||||
# Arch-specific skips. See #931888 for a collection of these.
|
||||
case ${CHOST} in
|
||||
alpha*)
|
||||
profile_task_flags+=(
|
||||
-x test_os
|
||||
)
|
||||
;;
|
||||
hppa*)
|
||||
profile_task_flags+=(
|
||||
-x test_descr
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
-x test_os
|
||||
)
|
||||
;;
|
||||
ia64*)
|
||||
profile_task_flags+=(
|
||||
-x test_signal
|
||||
)
|
||||
;;
|
||||
powerpc64-*) # big endian
|
||||
profile_task_flags+=(
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
)
|
||||
;;
|
||||
riscv*)
|
||||
profile_task_flags+=(
|
||||
-x test_statistics
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
if has_version "app-arch/rpm" ; then
|
||||
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
|
||||
profile_task_flags+=(
|
||||
-x test_distutils
|
||||
)
|
||||
fi
|
||||
local -x PROFILE_TASK="${profile_task_flags[*]}"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
--without-static-libpython
|
||||
--enable-ipv6
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--without-lto
|
||||
--with-system-expat
|
||||
--with-system-libmpdec
|
||||
--with-platlibdir=lib
|
||||
--with-pkg-config=yes
|
||||
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
|
||||
|
||||
$(use_with debug assertions)
|
||||
$(use_enable gil)
|
||||
$(use_enable jit experimental-jit)
|
||||
$(use_enable pgo optimizations)
|
||||
$(use_with readline readline "$(usex libedit editline readline)")
|
||||
$(use_with valgrind)
|
||||
)
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if tc-is-lto; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
myeconfargs+=(
|
||||
--with-lto
|
||||
)
|
||||
fi
|
||||
|
||||
# Force-disable modules we don't want built.
|
||||
# See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
|
||||
cat > Modules/Setup.local <<-EOF || die
|
||||
*disabled*
|
||||
nis
|
||||
$(usev !gdbm '_gdbm _dbm')
|
||||
$(usev !sqlite '_sqlite3')
|
||||
$(usev !ssl '_hashlib _ssl')
|
||||
$(usev !ncurses '_curses _curses_panel')
|
||||
$(usev !readline 'readline')
|
||||
$(usev !tk '_tkinter')
|
||||
EOF
|
||||
|
||||
# disable implicit optimization/debugging flags
|
||||
local -x OPT=
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
build_cbuild_python
|
||||
myeconfargs+=(
|
||||
# Point the imminent CHOST build to the Python we just
|
||||
# built for CBUILD.
|
||||
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
|
||||
)
|
||||
fi
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
local -x CFLAGS_NODIST=${CFLAGS}
|
||||
local -x LDFLAGS_NODIST=${LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
if use ncurses; then
|
||||
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
|
||||
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
|
||||
# install epython.py as part of stdlib
|
||||
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
export PYTHONSTRICTEXTENSIONBUILD=1
|
||||
|
||||
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
|
||||
# end up writing bytecode & violating sandbox.
|
||||
# bug #831897
|
||||
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Gentoo hack to disable accessing system site-packages
|
||||
export GENTOO_CPYTHON_BUILD=1
|
||||
|
||||
if use pgo ; then
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
# in _sysconfigdata*
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Restore saved value from above.
|
||||
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# this just happens to skip test_support.test_freeze that is broken
|
||||
# without bundled expat
|
||||
# TODO: get a proper skip for it upstream
|
||||
local -x LOGNAME=buildbot
|
||||
|
||||
local test_opts=(
|
||||
--verbose3
|
||||
-u-network
|
||||
-j "$(makeopts_jobs)"
|
||||
"${COMMON_TEST_SKIPS[@]}"
|
||||
)
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local ret=${?}
|
||||
|
||||
[[ ${ret} -eq 0 ]] || die "emake test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
# -j1 hack for now for bug #843458
|
||||
emake -j1 DESTDIR="${D}" altinstall
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
rm -r "${libdir}"/ensurepip/_bundled || die
|
||||
if ! use ensurepip; then
|
||||
rm -r "${libdir}"/ensurepip || die
|
||||
fi
|
||||
if ! use sqlite; then
|
||||
rm -r "${libdir}/"sqlite3 || die
|
||||
fi
|
||||
if ! use tk; then
|
||||
rm -r "${ED}/usr/bin/idle${PYVER}" || die
|
||||
rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||
fi
|
||||
|
||||
ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(
|
||||
printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
|
||||
emake --no-print-directory -s -f - 2>/dev/null
|
||||
)
|
||||
newins Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local EPYTHON=python${PYVER}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
|
||||
# pydoc
|
||||
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local v
|
||||
for v in ${REPLACING_VERSIONS}; do
|
||||
if ver_test "${v}" -lt 3.13.0_beta2; then
|
||||
ewarn "Python 3.13.0b2 has changed its module ABI. The .pyc files"
|
||||
ewarn "installed previously are no longer valid and will be regenerated"
|
||||
ewarn "(or ignored) on the next import. This may cause sandbox failures"
|
||||
ewarn "when installing some packages and checksum mismatches when removing"
|
||||
ewarn "old versions. To actively prevent this, rebuild all packages"
|
||||
ewarn "installing Python 3.13 modules, e.g. using:"
|
||||
ewarn
|
||||
ewarn " emerge -1v /usr/lib/python3.13/site-packages"
|
||||
fi
|
||||
done
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST cyrus-sasl-2.1.28-r3-patches.tar.xz 4244 BLAKE2B 113da9bb58cce3643269fca88ea8d700aa20226d9536427c9068ef7b43499c2b78cbcb233d8db2418d84136c7edd629cc05f52b31cdfddfcb529f9a9fcb4effb SHA512 0cccbb27646dc118fbeea64b0cb688f312df97b31fced8c18d5230764cd5e2f0d48806bd2f5524aeddd02e8933cd835fb6f67dd3fbc1b0abfd1a3e1f0f53cf8a
|
||||
DIST cyrus-sasl-2.1.28-r4-patches.tar.xz 4452 BLAKE2B e75f89f0e4ce829b9b27ce0cf86d04e18e30cd851335a9be22235063b19731e312ab390be7b57f024b40074dc4d9373b520e4e9a22121dab9a5c4297378d8486 SHA512 33850bd3ac80721f2765414b19d1a3adaf92e973293910c0b19ef6fcdc3981a8abb3f4d6f487da71d1a7454375e77e3fafb892eace5aa37335841718fcc4c541
|
||||
DIST cyrus-sasl-2.1.28.tar.gz 4034803 BLAKE2B 6cca8c26cebb9c2ee5d539c43797d30b6309a476ec4233225789978e1d7315c4ea5d2abbc7f5464be0f3c0de5fd9212706b43fbc92f40b76cd0b1013cc00f823 SHA512 db15af9079758a9f385457a79390c8a7cd7ea666573dace8bf4fb01bb4b49037538d67285727d6a70ad799d2e2318f265c9372e2427de9371d626a1959dd6f78
|
||||
|
@ -6,12 +6,12 @@ EAPI=8
|
||||
inherit autotools edos2unix flag-o-matic multilib multilib-minimal pam db-use systemd toolchain-funcs tmpfiles
|
||||
|
||||
SASLAUTHD_CONF_VER="2.1.26"
|
||||
MY_PATCH_VER="${PN}-2.1.28-r3-patches"
|
||||
MY_PATCH_VER="${PN}-2.1.28-r4-patches"
|
||||
DESCRIPTION="The Cyrus SASL (Simple Authentication and Security Layer)"
|
||||
HOMEPAGE="https://www.cyrusimap.org/sasl/"
|
||||
#SRC_URI="ftp://ftp.cyrusimap.org/cyrus-sasl/${P}.tar.gz"
|
||||
SRC_URI="https://github.com/cyrusimap/${PN}/releases/download/${P}/${P}.tar.gz"
|
||||
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${MY_PATCH_VER}.tar.xz"
|
||||
SRC_URI+=" https://dev.gentoo.org/~grobian/distfiles/${MY_PATCH_VER}.tar.xz"
|
||||
|
||||
LICENSE="BSD-with-attribution"
|
||||
SLOT="2"
|
||||
|
@ -11,7 +11,7 @@ SRC_URI="https://github.com/akheron/jansson/releases/download/v${PV}/${P}.tar.bz
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/4"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
|
||||
IUSE="doc static-libs"
|
||||
|
||||
BDEPEND="
|
||||
|
@ -10,7 +10,7 @@ EAPI=8
|
||||
# any subsequent ones linked within so you're covered for a while.)
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit libtool verify-sig
|
||||
inherit verify-sig
|
||||
|
||||
DESCRIPTION="IPC library used by GnuPG and GPGME"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libassuan/index.en.html"
|
||||
@ -26,21 +26,6 @@ RDEPEND=">=dev-libs/libgpg-error-1.33"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gnupg )"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
elibtoolize
|
||||
|
||||
# fix standards conflict
|
||||
sed -i \
|
||||
-e '/_XOPEN_SOURCE/s/500/600/' \
|
||||
-e 's/_XOPEN_SOURCE_EXTENDED/_NO&/' \
|
||||
-e 's/__EXTENSIONS__/_NO&/' \
|
||||
configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
|
@ -10,7 +10,7 @@ EAPI=8
|
||||
# any subsequent ones linked within so you're covered for a while.)
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc
|
||||
inherit libtool verify-sig
|
||||
inherit verify-sig
|
||||
|
||||
DESCRIPTION="IPC library used by GnuPG and GPGME"
|
||||
HOMEPAGE="https://www.gnupg.org/related_software/libassuan/index.en.html"
|
||||
@ -26,21 +26,6 @@ RDEPEND=">=dev-libs/libgpg-error-1.33"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gnupg )"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
elibtoolize
|
||||
|
||||
# fix standards conflict
|
||||
sed -i \
|
||||
-e '/_XOPEN_SOURCE/s/500/600/' \
|
||||
-e 's/_XOPEN_SOURCE_EXTENDED/_NO&/' \
|
||||
-e 's/__EXTENSIONS__/_NO&/' \
|
||||
configure || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
|
@ -142,9 +142,6 @@ multilib_src_configure() {
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
|
@ -140,9 +140,6 @@ multilib_src_configure() {
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
|
@ -94,13 +94,6 @@ src_configure() {
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == powerpc* ]] ; then
|
||||
# ./configure does a lot of automagic, prevent that
|
||||
# generic ppc32+ppc64 altivec
|
||||
@ -146,9 +139,6 @@ multilib_src_configure() {
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
|
||||
$(use asm || echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
|
@ -20,7 +20,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="LGPL-3+ GPL-2+ GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.33"
|
||||
|
@ -1,3 +1,4 @@
|
||||
DIST libnl-3.10.0.tar.gz 1116186 BLAKE2B 13383c4ef49be3bcf89122b24d1d5dc9834353aa7128f04f50993203add14aa7f97a4500164982ddcb82f481f7324a26efc2375036d5a23bfa62b15c4fe07473 SHA512 c95e79fba69308c63a08d0c576503b4398710ea9cd1d0097851500a7fbc5fbe87fb32ac281cf42bbfe57eab07b110055e6bc9b95d82244bba3df8a31fe562962
|
||||
DIST libnl-3.7.0.tar.gz 1000913 BLAKE2B 22c418ea520416d79ee4552ab6bc5ba99239b29e074c840d31b0ec4171a0403ea9d2c1afcbf1b3428564dd371cadd99bc062ae7540e7496f970c4fb98f967e84 SHA512 80fbbc079299c90afd2a5eda62e4d4f98bf4ef23958c3ce5101f4ed4d81d783af733213bb3bab15f218555d8460bc2394898f909f4ac024fc27281faec86a041
|
||||
DIST libnl-3.8.0.tar.gz 1071113 BLAKE2B ff90d52e9b617ad8a53e4d42f43bee065b331ed919a3effc4a0f38c8e15b46f86c1eb153816499ed77dd99063500b1dc52951891034475a5bb81da1ad8004594 SHA512 a8da7e8464c5cab2807cd86f83fca53bc77f7c3bdefe43880db7be9caf5ba6bfca1b7e778b906c12fda1cf7e6f413f88cc7ad1dcc42fe8c050a8d28a6e656c02
|
||||
DIST libnl-3.9.0.tar.gz 1074117 BLAKE2B 56a39aad9aa15992ff02fe35732abbc5ed5d107b814587e02b914631489877899989d49c7aeee1ecb461ad5f525c7cd7c045c9770864d83b0a58490293441193 SHA512 b6f3633d1920e61645c97f4c4c4419444e7fd66aa3b67b0a73bc29df24cf27065542a62a9c2581f90d0c153247922ce5c649b7da51c0fead6afceaf4d0361dce
|
||||
|
133
sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.10.0.ebuild
vendored
Normal file
133
sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.10.0.ebuild
vendored
Normal file
@ -0,0 +1,133 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Make sure to test USE=utils on bumps and update MULTILIB_WRAPPED_HEADERS if needed
|
||||
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_OPTIONAL=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
inherit autotools distutils-r1 multilib-minimal
|
||||
|
||||
LIBNL_P=${P/_/-}
|
||||
LIBNL_DIR=${PV/_/}
|
||||
LIBNL_DIR=${LIBNL_DIR//./_}
|
||||
|
||||
DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces"
|
||||
HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/thom311/libnl"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
S="${WORKDIR}/${LIBNL_P}"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
|
||||
SLOT="3"
|
||||
IUSE="+debug python test utils"
|
||||
# Tests fail w/ sandboxes
|
||||
# https://github.com/thom311/libnl/issues/361
|
||||
RESTRICT="!test? ( test ) test"
|
||||
|
||||
RDEPEND="python? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
${RDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
python? (
|
||||
${DISTUTILS_DEPS}
|
||||
dev-lang/swig
|
||||
)
|
||||
test? ( dev-libs/check )
|
||||
"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
# We do not install CLI stuff for non-native
|
||||
/usr/include/libnl3/netlink/cli/addr.h
|
||||
/usr/include/libnl3/netlink/cli/class.h
|
||||
/usr/include/libnl3/netlink/cli/cls.h
|
||||
/usr/include/libnl3/netlink/cli/ct.h
|
||||
/usr/include/libnl3/netlink/cli/exp.h
|
||||
/usr/include/libnl3/netlink/cli/link.h
|
||||
/usr/include/libnl3/netlink/cli/mdb.h
|
||||
/usr/include/libnl3/netlink/cli/nh.h
|
||||
/usr/include/libnl3/netlink/cli/neigh.h
|
||||
/usr/include/libnl3/netlink/cli/qdisc.h
|
||||
/usr/include/libnl3/netlink/cli/route.h
|
||||
/usr/include/libnl3/netlink/cli/rule.h
|
||||
/usr/include/libnl3/netlink/cli/tc.h
|
||||
/usr/include/libnl3/netlink/cli/utils.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
|
||||
if use python; then
|
||||
pushd "${S}"/python > /dev/null || die
|
||||
distutils-r1_src_prepare
|
||||
popd > /dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# bug #884277
|
||||
export YACC=yacc.bison
|
||||
|
||||
ECONF_SOURCE="${S}" econf \
|
||||
$(multilib_native_use_enable utils cli) \
|
||||
$(use_enable debug)
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
pushd python > /dev/null || die
|
||||
distutils-r1_src_compile
|
||||
popd > /dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
CK_VERBOSITY=verbose emake check VERBOSE=1
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
pushd python > /dev/null || die
|
||||
# TODO: run python/tests/test-create-bridge.py
|
||||
distutils-r1_src_test
|
||||
popd > /dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
# Unset DOCS= since distutils-r1.eclass interferes
|
||||
local DOCS=()
|
||||
|
||||
pushd python > /dev/null || die
|
||||
|
||||
distutils-r1_src_install
|
||||
|
||||
popd > /dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
DOCS=( ChangeLog )
|
||||
|
||||
einstalldocs
|
||||
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
@ -27,7 +27,9 @@ fi
|
||||
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
|
||||
SLOT="3"
|
||||
IUSE="+debug python test utils"
|
||||
RESTRICT="!test? ( test )"
|
||||
# Tests fail w/ sandboxes
|
||||
# https://github.com/thom311/libnl/issues/361
|
||||
RESTRICT="!test? ( test ) test"
|
||||
|
||||
RDEPEND="python? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
@ -22,7 +22,7 @@ if [[ ${PV} == 9999 ]] ; then
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
S="${WORKDIR}/${LIBNL_P}"
|
||||
fi
|
||||
@ -30,7 +30,9 @@ fi
|
||||
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
|
||||
SLOT="3"
|
||||
IUSE="+debug python test utils"
|
||||
RESTRICT="!test? ( test )"
|
||||
# Tests fail w/ sandboxes
|
||||
# https://github.com/thom311/libnl/issues/361
|
||||
RESTRICT="!test? ( test ) test"
|
||||
|
||||
RDEPEND="python? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
@ -30,7 +30,9 @@ fi
|
||||
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
|
||||
SLOT="3"
|
||||
IUSE="+debug python test utils"
|
||||
RESTRICT="!test? ( test )"
|
||||
# Tests fail w/ sandboxes
|
||||
# https://github.com/thom311/libnl/issues/361
|
||||
RESTRICT="!test? ( test ) test"
|
||||
|
||||
RDEPEND="python? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
@ -30,7 +30,9 @@ fi
|
||||
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
|
||||
SLOT="3"
|
||||
IUSE="+debug python test utils"
|
||||
RESTRICT="!test? ( test )"
|
||||
# Tests fail w/ sandboxes
|
||||
# https://github.com/thom311/libnl/issues/361
|
||||
RESTRICT="!test? ( test ) test"
|
||||
|
||||
RDEPEND="python? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
@ -1,10 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>arfrever.fta@gmail.com</email>
|
||||
<name>Arfrever Frehtes Taifersar Arahesis</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>cjk@gentoo.org</email>
|
||||
<name>Cjk</name>
|
||||
|
@ -19,7 +19,7 @@ HOMEPAGE="
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="
|
||||
test? (
|
||||
|
@ -2,3 +2,4 @@ DIST pip-24.0-py3-none-any.whl 2110226 BLAKE2B 6a0c8c9796cd574ef1d709de40a8530a1
|
||||
DIST pip-24.1-py3-none-any.whl 1823006 BLAKE2B ca5282b1100243cc4e391ce30d5ae7d4978987e46323b7e151c87457c4ab762f909c88ae3cb72015d09bf7c1243ddb6ad791e991093713431961962fc6fdde83 SHA512 84e8318896294e5750f30a3fa55833e5e5c802066091802e05ff94fe139c825f3fe0fb5014b899f0afd844ad1129e8d04b9fedd74a7f46a1c248dac546ab16f8
|
||||
DIST pip-24.1.1-py3-none-any.whl 1824282 BLAKE2B dc8b4938002bc8ededf5f3fb5f47492b529cb846f145308d5392c04778417f7e85527064e791c4dec4bfe6fc407bcc4d7ad26ff84e0f4c436dce5db8d9ec1f25 SHA512 591c0862ca7469a00a4a0220ca9acbd4834394abb0abcd44bd071a1b392b46029d618c2219e327cd43bacdd5d62f0f47d88454d60d4028f0ba7cd02ce3e648bf
|
||||
DIST pip-24.1.2-py3-none-any.whl 1824406 BLAKE2B b3e951f444bc93cf64a35acbef5363f7e44607f567f73eff886f5a14bd97fe5b18aa5a8de01b899601847bccee24318843b41c35cd484e758ffb4c11460b458f SHA512 bc8ed36bc9e618b7e299d412d07472b46968ba6485dd1d7eee4e8583996aa29cb268ff5d3114a6e5efeae9f6407c9f9066a0e4f5c2a0be76e6cd234b85cc2bec
|
||||
DIST pip-24.2-py3-none-any.whl 1815170 BLAKE2B 8d93bdfb2f3ae4fafd5433df1f9871ca549029457dd4395cf7c53fff93d235768f042cb2f7b6d5b5af068df1867add1a0aca83d329a6d66ecd64fa51e01f0939 SHA512 5c8c6531a477aa4deb9e880f079c6971318b3b0eae007a45c7d73aff1da050824bb6c44e8b71487c9b937732bca93c29b07ed2272fff118cc11fd27bad3022f5
|
||||
|
@ -12,7 +12,7 @@ S=${DISTDIR}
|
||||
|
||||
LICENSE="Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MIT MPL-2.0 PSF-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
!<dev-python/ensurepip-wheels-100
|
||||
|
24
sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-24.2.ebuild
vendored
Normal file
24
sdk_container/src/third_party/portage-stable/dev-python/ensurepip-pip/ensurepip-pip-24.2.ebuild
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit pypi
|
||||
|
||||
DESCRIPTION="Shared pip wheel for ensurepip Python module"
|
||||
HOMEPAGE="https://pypi.org/project/pip/"
|
||||
SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")"
|
||||
S=${DISTDIR}
|
||||
|
||||
LICENSE="Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MIT MPL-2.0 PSF-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
!<dev-python/ensurepip-wheels-100
|
||||
"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/lib/python/ensurepip
|
||||
doins "${A}"
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST setuptools-70.1.1-py3-none-any.whl 883347 BLAKE2B f0e9c3b3ee278942b72ebf470279841f648e7852d355841dab27d28551ee09fa1ed6a77e02c5c808a820810a134dffdc28038938c0e2003011f966e6d5799428 SHA512 81ebaa3c39d599ae3975ec5848ca03491188de10c62d0a01923ded1cb4d08dbbbb3be9ecee501cfe16d88726ec0899ad8f36f7c7b289f1f90c5bec403b5049c1
|
||||
DIST setuptools-70.2.0-py3-none-any.whl 930834 BLAKE2B 7ef99e6c7c47fd306c4a136504a1d3285faa046da6a4b0be15ec66a2a2eccbe34f203bed794f0a9114ae6970aea163207d22bd4bf5aedf44a92cc2abcac3d881 SHA512 ed6b5199a795c776d653f02e665e560da27e515cf334a2afbbf7f7cb7eb9cd738ca685a2b52d43d68ce6f63486d8da5baa216e58af95e5fad03c6dd95d3d901a
|
||||
DIST setuptools-70.3.0-py3-none-any.whl 931070 BLAKE2B 92c424f7efc52f42bb4e04f3ddcc57eb079e2db3cb2af1a142520f656c05895ed5bde816e37f05d96d4c431fb888bf09d576956313667a029b6f8de9afc867b4 SHA512 085d39ef4426aa5f097fbc484595becc16e61ca23fc7da4d2a8bba540a3b82e789e390b176c7151bdc67d01735cce22b1562cdb2e31273225a2d3e275851a4ad
|
||||
DIST setuptools-71.0.4-py3-none-any.whl 2341127 BLAKE2B 6312511c9981ff41e0f8a7eb3da511c9bf35b52af9fb7cbd826d3fecf342008911d8b13a6a0747a1f3d0a8189fcf701d82b03b7b62c73774845d35dc38fb8743 SHA512 a5909a1bbc46924ac8ee89322ed35fbf5562397fc46f5d20d12f6d63dbd94355c4c9718c07597b6d50c7fe46a771b96c2c25f1f2f53d6ff17c4d7cbd9e6bcb09
|
||||
DIST setuptools-71.1.0-py3-none-any.whl 2341722 BLAKE2B 5d2aa4205b91f619a5c6e9596d9ac77aaef4759a98d4a2ee1cd706b01febadf2b94cc891f92640da185ac565d315b141c66f628a213fa199a3ab282250250d34 SHA512 3c2a49f5a3953b525885635bbd93a503e6bc378914da2a2ff658b5800b27848e91ee268d652176c7034f55b8937db10d7e68f3d4d315ca03124ee3054f58e36c
|
||||
DIST setuptools-72.0.0-py3-none-any.whl 2337262 BLAKE2B 10a0ebe1238248e207f3c6a92b671f23be2590ba1574778b97fb2b169eaee9e3274c466083a401db48076524d006b2ff90084e4645852eec4b4ecfc8b70e5cc8 SHA512 ef89ac76684f646850d59438c9cbe2a3eaf393bee0dc0577ab8dd12514ad7b2945ca027be1fb361d4f81f0b3722bc2fa006dcc321616d2d64f8f76c465f0f18f
|
||||
|
@ -12,7 +12,7 @@ S=${DISTDIR}
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
!<dev-python/ensurepip-wheels-100
|
||||
|
@ -12,7 +12,7 @@ S=${DISTDIR}
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
!<dev-python/ensurepip-wheels-100
|
@ -0,0 +1,24 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit pypi
|
||||
|
||||
DESCRIPTION="Shared setuptools wheel for ensurepip Python module"
|
||||
HOMEPAGE="https://pypi.org/project/setuptools/"
|
||||
SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")"
|
||||
S=${DISTDIR}
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
!<dev-python/ensurepip-wheels-100
|
||||
"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/lib/python/ensurepip
|
||||
doins "${A}"
|
||||
}
|
@ -19,7 +19,7 @@ HOMEPAGE="
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
$(python_gen_cond_dep '
|
||||
|
@ -1,2 +1,3 @@
|
||||
DIST jaraco_text-3.12.1.tar.gz 16580 BLAKE2B 89f11877052e6b7cacbee4ae53ea140ce337a3a8f25657c558e3634378d20ac70206fd188f8492bdc725ebfec94c7f553ec61a9a3be97738918746fab79a9414 SHA512 4a459e497259de8dc37fbe92eec19973f5d1425f23212221885339a9c7b0f432301978c3c918f4cdd4e1cb3e50b465aad07634ab8cf40f86151d08b150d097e4
|
||||
DIST jaraco_text-3.14.0.tar.gz 16824 BLAKE2B 62a4db8fc6e7148d81dacaab08a3dd3478a74e9cb0377a3b9cbce538575542cd99b42f599af04fdfa62be06d3edb7a7f7f4b27883e91608e8d1033c655ee8304 SHA512 3557876c0ab2e1a54c8ce85663b45c9c143a88bb64a5d9c3e2354b2af229b25983b7977c576f83add1b5bae79cceebb01206c756a354eca24681a57a0ee14fb4
|
||||
DIST jaraco_text-4.0.0.tar.gz 17009 BLAKE2B 4aa4381de0988383f4442a1caaab48eae79f2cbe564438b540adfed12d9cfb3680de1e5579029be204024256ba9f3327af225db73f2bd68fed7b2bdd4859a799 SHA512 240c4f6f3df6916e9015479147474a43ea9e858e22821f53263c1ef42c61336c36a34baa9c7384b9d345cf42e10b7499e2efa3c85178a0c2abc47fcd82b63fb3
|
||||
|
56
sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.0.0.ebuild
vendored
Normal file
56
sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-4.0.0.ebuild
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=flit
|
||||
PYPI_PN=${PN/-/.}
|
||||
PYTHON_COMPAT=( python3_{10..13} pypy3 )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Text utilities used by other projects by developer jaraco"
|
||||
HOMEPAGE="
|
||||
https://github.com/jaraco/jaraco.text/
|
||||
https://pypi.org/project/jaraco.text/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/jaraco-context-4.1.1-r1[${PYTHON_USEDEP}]
|
||||
>=dev-python/jaraco-functools-3.5.0-r1[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_configure() {
|
||||
grep -q 'build-backend = "setuptools' pyproject.toml ||
|
||||
die "Upstream changed build-backend, recheck"
|
||||
# write a custom pyproject.toml to ease setuptools bootstrap
|
||||
cat > pyproject.toml <<-EOF || die
|
||||
[build-system]
|
||||
requires = ["flit_core >=3.2,<4"]
|
||||
build-backend = "flit_core.buildapi"
|
||||
|
||||
[project]
|
||||
name = "jaraco.text"
|
||||
version = "${PV}"
|
||||
description = "Module for text manipulation"
|
||||
EOF
|
||||
|
||||
# remove CLI tools, they have annoying deps, no entry points
|
||||
# and since there are dashes in their names, they can't be imported
|
||||
# anyway
|
||||
rm jaraco/text/*-*.py || die
|
||||
}
|
||||
|
||||
python_install() {
|
||||
distutils-r1_python_install
|
||||
# rename to workaround a bug in pkg_resources
|
||||
# https://bugs.gentoo.org/834522
|
||||
mv "${D}$(python_get_sitedir)"/jaraco{_,.}text-${PV}.dist-info || die
|
||||
}
|
@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="HPND"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
|
||||
IUSE="examples imagequant +jpeg jpeg2k lcms test tiff tk truetype webp xcb zlib"
|
||||
REQUIRED_USE="test? ( jpeg jpeg2k lcms tiff truetype )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
@ -1,3 +1,4 @@
|
||||
DIST setuptools-70.1.1.tar.gz 2292324 BLAKE2B 9d489117a80ef9cefab6b730680a614d990f338aa54579928bafbe3c87dbb5e4db8527b8a0b6c1090bcd3504be97cc69a9ce979e593d0634d9b66b66bccb25e5 SHA512 63452aa1e1d1dea6ad622a21fcc9334bc3603e45de9a1485f79776e02a0fb3b0a0a8b3e886af73845c3c373348c7021f2e06a5665676e9015ee9855441512136
|
||||
DIST setuptools-70.2.0.tar.gz 2332711 BLAKE2B d552e3c7fb8bad3829b6c210827af2a3993afa7c534502d08cb7f87df846f9939b75ce181217c673be7a0c71e81ede437b5f44cf9a42ff13133a9f922e426c1d SHA512 a2b0aaf57d012326475ee7637e65ebbc3b1a09b338850e8b0c6a0f169c49651f934c813d6d347ba1ff04894a4d8341bb5fedbea35d45dbc19f317587bbb35094
|
||||
DIST setuptools-70.3.0.tar.gz 2333112 BLAKE2B cffe583c1440e2c6ed049fc0c3da70d6b3f43710cec8eeba9b96906d7d3113c0156ac0398f12355e2c0eeeb73dc351e56eea117361c83a4819e255f2b44d01da SHA512 9f330bd9867631da69ee0886551033a6e8ef3cf52cfe38aad9fcd359cbfc2e0d7ee8c85382b29f8d52568c674893dc07f2b2a896afe5154e6140bb3209ee50a0
|
||||
DIST setuptools-71.0.4.tar.gz 2421868 BLAKE2B 29c63bedd87dd4c79ef86d20b6ab4297ae434a59d412813d0ef136c6239b8c77c7ec81b8384319a0e18617d0f8417da3c28d9f8ece40f4509949611c575c35a2 SHA512 efd1996e2720244b8bb385682258be4b2cd67d18b0910aa3f32c23907fad998144ff47455fb8866298e2b879b714624d09efefdcf1bf1d55047ecd3d1e36548e
|
||||
DIST setuptools-71.1.0.tar.gz 2422233 BLAKE2B b98bc2155cdf5acabd52c942a8b7908dbb48b39a3abbf065e42b089e22c3bba27aeee3492c5ecfc1de8b4bdba3c97259cfc609a31cdc11cdaf23f9a2dbab8685 SHA512 2cb817d3dee790ab1e71739b3980361c6dface44fa9c027a92aa3f96e758c034b0330de5eae48365dfa17933fe050f8418cff23fea192b3c616789215e411c1a
|
||||
DIST setuptools-72.0.0.tar.gz 2419061 BLAKE2B 70c401d2314f246131e730b700fa0de2351d1bb92c8fe3403ee3db8f3a65bfec958b78b91e47b116cf1c0dac2ec81bb79194835f2be2fc8f1a18638393b7b2e0 SHA512 4ccb06eded99bc5b8f7cc932bc77fe46c17826639e2a8646eef96466cfb1f4c5e5d46c0518831b2f361bfb06956df94aa1d1a682fd45d5dfb553db4db8fe3aaf
|
||||
|
@ -21,7 +21,7 @@ HOMEPAGE="
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
|
@ -21,11 +21,10 @@ HOMEPAGE="
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# check */_vendor/vendored.txt
|
||||
RDEPEND="
|
||||
!!<dev-python/setuptools-rust-1.8.0
|
||||
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
|
||||
@ -87,10 +86,7 @@ src_prepare() {
|
||||
# remove bundled dependencies
|
||||
rm -r */_vendor setuptools/_distutils/_vendor || die
|
||||
|
||||
# remove the ugly */extern hack that breaks on unvendored deps
|
||||
rm -r */extern || die
|
||||
find -name '*.py' -exec sed \
|
||||
-e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \
|
||||
-e 's:from [.]_vendor[.]:from :' \
|
||||
-i {} + || die
|
||||
}
|
||||
@ -102,20 +98,14 @@ python_test() {
|
||||
|
||||
local EPYTEST_DESELECT=(
|
||||
# network
|
||||
# TODO: see if PRE_BUILT_SETUPTOOLS_* helps
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg
|
||||
setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist
|
||||
setuptools/tests/test_build_meta.py::test_legacy_editable_install
|
||||
setuptools/tests/test_distutils_adoption.py
|
||||
setuptools/tests/test_editable_install.py
|
||||
setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests
|
||||
setuptools/tests/test_virtualenv.py::test_clean_env_install
|
||||
setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
|
||||
setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
|
||||
# TODO
|
||||
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
|
||||
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
|
||||
setuptools/tests/test_extern.py::test_distribution_picklable
|
||||
# expects bundled deps in virtualenv
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
|
||||
@ -123,22 +113,12 @@ python_test() {
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
|
||||
# TODO, probably some random package
|
||||
setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
|
||||
# Internet, sigh
|
||||
setuptools/tests/test_integration.py
|
||||
# flaky
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep
|
||||
# broken by unbundling
|
||||
setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata
|
||||
)
|
||||
|
||||
case ${EPYTHON} in
|
||||
python3.12)
|
||||
EPYTEST_DESELECT+=(
|
||||
# TODO
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency
|
||||
)
|
||||
esac
|
||||
|
||||
local EPYTEST_XDIST=1
|
||||
epytest -o tmp_path_retention_policy=all setuptools
|
||||
local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH}
|
||||
epytest -o tmp_path_retention_policy=all \
|
||||
-m "not uses_network" setuptools
|
||||
}
|
@ -21,11 +21,10 @@ HOMEPAGE="
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# check */_vendor/vendored.txt
|
||||
RDEPEND="
|
||||
!!<dev-python/setuptools-rust-1.8.0
|
||||
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
|
||||
@ -67,6 +66,7 @@ BDEPEND="
|
||||
# trove-classifiers are optionally used in validation, if they are
|
||||
# installed. Since we really oughtn't block them, let's always enforce
|
||||
# the newest version for the time being to avoid errors.
|
||||
# https://github.com/pypa/setuptools/issues/4459
|
||||
PDEPEND="
|
||||
dev-python/setuptools-scm[${PYTHON_USEDEP}]
|
||||
>=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}]
|
||||
@ -84,12 +84,10 @@ src_prepare() {
|
||||
sed -i -e '/--import-mode/d' pytest.ini || die
|
||||
|
||||
# remove bundled dependencies
|
||||
rm -r */_vendor || die
|
||||
rm -r */_vendor setuptools/_distutils/_vendor || die
|
||||
|
||||
# remove the ugly */extern hack that breaks on unvendored deps
|
||||
rm -r */extern || die
|
||||
find -name '*.py' -exec sed \
|
||||
-e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \
|
||||
-e 's:from [.]_vendor[.]:from :' \
|
||||
-i {} + || die
|
||||
}
|
||||
|
||||
@ -100,20 +98,14 @@ python_test() {
|
||||
|
||||
local EPYTEST_DESELECT=(
|
||||
# network
|
||||
# TODO: see if PRE_BUILT_SETUPTOOLS_* helps
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg
|
||||
setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist
|
||||
setuptools/tests/test_build_meta.py::test_legacy_editable_install
|
||||
setuptools/tests/test_distutils_adoption.py
|
||||
setuptools/tests/test_editable_install.py
|
||||
setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests
|
||||
setuptools/tests/test_virtualenv.py::test_clean_env_install
|
||||
setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
|
||||
setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
|
||||
# TODO
|
||||
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
|
||||
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
|
||||
setuptools/tests/test_extern.py::test_distribution_picklable
|
||||
# expects bundled deps in virtualenv
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
|
||||
@ -121,22 +113,12 @@ python_test() {
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
|
||||
# TODO, probably some random package
|
||||
setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
|
||||
# Internet, sigh
|
||||
setuptools/tests/test_integration.py
|
||||
# flaky
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep
|
||||
# broken by unbundling
|
||||
setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata
|
||||
)
|
||||
|
||||
case ${EPYTHON} in
|
||||
python3.12)
|
||||
EPYTEST_DESELECT+=(
|
||||
# TODO
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency
|
||||
)
|
||||
esac
|
||||
|
||||
local EPYTEST_XDIST=1
|
||||
epytest -o tmp_path_retention_policy=all setuptools
|
||||
local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH}
|
||||
epytest -o tmp_path_retention_policy=all \
|
||||
-m "not uses_network" setuptools
|
||||
}
|
124
sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-72.0.0.ebuild
vendored
Normal file
124
sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-72.0.0.ebuild
vendored
Normal file
@ -0,0 +1,124 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
|
||||
EAPI=8
|
||||
|
||||
# please bump dev-python/ensurepip-setuptools along with this package!
|
||||
|
||||
DISTUTILS_USE_PEP517=standalone
|
||||
PYTHON_TESTED=( python3_{10..13} pypy3 )
|
||||
PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
|
||||
PYTHON_REQ_USE="xml(+)"
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Collection of extensions to Distutils"
|
||||
HOMEPAGE="
|
||||
https://github.com/pypa/setuptools/
|
||||
https://pypi.org/project/setuptools/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
!!<dev-python/setuptools-rust-1.8.0
|
||||
>=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
|
||||
>=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
|
||||
>=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
|
||||
>=dev-python/packaging-24[${PYTHON_USEDEP}]
|
||||
>=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}]
|
||||
>=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
>=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
|
||||
' 3.10)
|
||||
"
|
||||
BDEPEND="
|
||||
${RDEPEND}
|
||||
test? (
|
||||
$(python_gen_cond_dep '
|
||||
>=dev-python/build-1.0.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/ini2toml-0.14[${PYTHON_USEDEP}]
|
||||
>=dev-python/filelock-3.4.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}]
|
||||
dev-python/jaraco-test[${PYTHON_USEDEP}]
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
dev-python/pip-run[${PYTHON_USEDEP}]
|
||||
dev-python/pyproject-hooks[${PYTHON_USEDEP}]
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-home-0.5[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-subprocess[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-timeout[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
>=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/virtualenv-20[${PYTHON_USEDEP}]
|
||||
' "${PYTHON_TESTED[@]}")
|
||||
)
|
||||
"
|
||||
# setuptools-scm is here because installing plugins apparently breaks stuff at
|
||||
# runtime, so let's pull it early. See bug #663324.
|
||||
#
|
||||
# trove-classifiers are optionally used in validation, if they are
|
||||
# installed. Since we really oughtn't block them, let's always enforce
|
||||
# the newest version for the time being to avoid errors.
|
||||
# https://github.com/pypa/setuptools/issues/4459
|
||||
PDEPEND="
|
||||
dev-python/setuptools-scm[${PYTHON_USEDEP}]
|
||||
>=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
local PATCHES=(
|
||||
# TODO: remove this when we're 100% PEP517 mode
|
||||
"${FILESDIR}/setuptools-62.4.0-py-compile.patch"
|
||||
)
|
||||
|
||||
distutils-r1_src_prepare
|
||||
|
||||
# breaks tests
|
||||
sed -i -e '/--import-mode/d' pytest.ini || die
|
||||
|
||||
# remove bundled dependencies
|
||||
rm -r */_vendor setuptools/_distutils/_vendor || die
|
||||
|
||||
find -name '*.py' -exec sed \
|
||||
-e 's:from [.]_vendor[.]:from :' \
|
||||
-i {} + || die
|
||||
}
|
||||
|
||||
python_test() {
|
||||
if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
|
||||
return
|
||||
fi
|
||||
|
||||
local EPYTEST_DESELECT=(
|
||||
# network
|
||||
setuptools/tests/test_build_meta.py::test_legacy_editable_install
|
||||
setuptools/tests/test_distutils_adoption.py
|
||||
setuptools/tests/test_editable_install.py
|
||||
setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
|
||||
setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
|
||||
# TODO
|
||||
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
|
||||
setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
|
||||
# expects bundled deps in virtualenv
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist
|
||||
setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel
|
||||
# fails if python-xlib is installed
|
||||
setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
|
||||
# TODO, probably some random package
|
||||
setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass
|
||||
# broken by unbundling
|
||||
setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata
|
||||
)
|
||||
|
||||
local EPYTEST_XDIST=1
|
||||
local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH}
|
||||
epytest -o tmp_path_retention_policy=all \
|
||||
-m "not uses_network" setuptools
|
||||
}
|
@ -1,4 +1,6 @@
|
||||
DIST linux-6.10.tar.xz 145142812 BLAKE2B bb243ea7493b9d63aa2df2050a3f1ae2b89ee84a20015239cf157e3f4f51c7ac5efedc8a51132b2d7482f9276ac418de6624831c8a3b806130d9c2d2124c539b SHA512 baa2487954044f991d2ae254d77d14a1f0185dd62c9f0fcaff69f586c9f906823017b8db1c4588f27b076dfa3ebb606929fec859f60ea419e7974330b9289cc2
|
||||
DIST linux-6.8.tar.xz 142502100 BLAKE2B c6f17f816cea16e629f63e9379b98888713f57b2c5173306926471f139a9d612a0c74e119341f8075390e55e203d787d9edeb4ad5a064b18870f6f0f7ffaafb2 SHA512 5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068
|
||||
DIST linux-6.9.tar.xz 144034416 BLAKE2B 4cf86c3cfe6e6534745d42dfaeca59b17ea1168c4e8b615c80e6d8aac735f11283cd85fa992b440b5d4452917e94b9f08397a64af0be5894e3df23c68892377e SHA512 fed3b4cd1fbfb4d94618587c1934273d2ecc8b6e42a3d586ff8a5f24980be930f2ef803aa2923ca3bfa5e4e619f967f3af315368f24fa76f610b10443624a579
|
||||
DIST patch-6.10.xz 6489436 BLAKE2B 96ab8c23a804ae0d3dc5834efa19f9f9d8b4cd1e84d7519670e3e5213af0ef016079d4c0624f45d4163af7b250cb5ab30aec28bb62433d7480ab3d3a11e681b6 SHA512 adbc39835028aa67aa949310c9d44d83c6fddf6a12fbc305960d935bd7e2009e1ff813f2388cd59e59bf64efb2e1df51a6d266594fa12e75074d7346c78bb2eb
|
||||
DIST patch-6.8.2.xz 247244 BLAKE2B a85078230548543c38550a5546689d0b44a54208cdad591ab34e10dec9348ce2f74e45bf85f373b14977d40556067e2e2c17ac4b6791fbb8aaba98feccd3cdac SHA512 a8e32b89f7680670c69c62f356846bb65b57614f979114627a9a2f945d7dc97c921d30197dffa993e5b18e499ba8c7196046ffdf0e721528a5378d1ee65a9ba5
|
||||
DIST patch-6.9.2.xz 16184 BLAKE2B 8a37e96c253b55b57c86f1654f2ea8bf65af96b1b38213e90032cb918bb8eea992d6ddbfa6a6774a229ab2e2288ab57bdb6cbad6e7e393c123f24850e06847c9 SHA512 a27af24f0caaa5de3811b6db5acc2d72b96df9ebb5c44bad99a949d871fb06c6ffd2be10cfc35b246d430c7be2291701f802aed47eaa8818ad12b8818a60f3ec
|
||||
|
124
sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-7.5.0.ebuild
vendored
Normal file
124
sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-7.5.0.ebuild
vendored
Normal file
@ -0,0 +1,124 @@
|
||||
# Copyright 2021-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit estack linux-info optfeature python-any-r1 bash-completion-r1 toolchain-funcs
|
||||
|
||||
DESCRIPTION="Tool for inspection and simple manipulation of eBPF programs and maps"
|
||||
HOMEPAGE="https://kernel.org/"
|
||||
|
||||
# Use PV to indicate the full kernel version
|
||||
MY_PV=6.10
|
||||
LINUX_V="${MY_PV:0:1}.x"
|
||||
LINUX_VER=$(ver_cut 1-2 ${MY_PV})
|
||||
|
||||
LINUX_SOURCES="linux-${LINUX_VER}.tar.xz"
|
||||
SRC_URI+="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}"
|
||||
|
||||
LINUX_PATCH=patch-${MY_PV}.xz
|
||||
SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_PATCH}"
|
||||
|
||||
S_K="${WORKDIR}/linux-${LINUX_VER}"
|
||||
S="${S_K}/tools/bpf/bpftool"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
|
||||
IUSE="caps +llvm"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/binutils-libs:=
|
||||
sys-libs/zlib:=
|
||||
virtual/libelf:=
|
||||
caps? ( sys-libs/libcap:= )
|
||||
llvm? ( sys-devel/llvm:= )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=sys-kernel/linux-headers-5.8
|
||||
"
|
||||
BDEPEND="
|
||||
${LINUX_PATCH+dev-util/patchutils}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/tar
|
||||
dev-python/docutils
|
||||
"
|
||||
|
||||
CONFIG_CHECK="~DEBUG_INFO_BTF"
|
||||
|
||||
# src_unpack and src_prepare are copied from dev-util/perf since
|
||||
# it's building from the same tarball, please keep it in sync with perf
|
||||
src_unpack() {
|
||||
local paths=(
|
||||
kernel/bpf tools/{arch,bpf,build,include,lib,perf,scripts}
|
||||
scripts include lib "arch/*/include" "arch/*/lib" "arch/*/tools"
|
||||
)
|
||||
|
||||
# We expect the tar implementation to support the -j and --wildcards option
|
||||
echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}"
|
||||
gtar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \
|
||||
"${paths[@]/#/linux-${LINUX_VER}/}" || die
|
||||
|
||||
if [[ -n ${LINUX_PATCH} ]] ; then
|
||||
eshopts_push -o noglob
|
||||
ebegin "Filtering partial source patch"
|
||||
filterdiff -p1 ${paths[@]/#/-i } -z "${DISTDIR}"/${LINUX_PATCH} \
|
||||
> ${P}.patch
|
||||
eend $? || die "filterdiff failed"
|
||||
eshopts_pop
|
||||
fi
|
||||
|
||||
local a
|
||||
for a in ${A}; do
|
||||
[[ ${a} == ${LINUX_SOURCES} ]] && continue
|
||||
[[ ${a} == ${LINUX_PATCH} ]] && continue
|
||||
unpack ${a}
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ -n ${LINUX_PATCH} ]] ; then
|
||||
pushd "${S_K}" >/dev/null || die
|
||||
eapply "${WORKDIR}"/${P}.patch
|
||||
popd || die
|
||||
fi
|
||||
|
||||
# Use rst2man or rst2man.py depending on which one exists (#930076)
|
||||
type -P rst2man >/dev/null || sed -i -e 's/rst2man/rst2man.py/g' Documentation/Makefile || die
|
||||
|
||||
# remove -Werror (bug 887981)
|
||||
sed -i -e 's/\-Werror//g' ../../lib/bpf/Makefile || die
|
||||
}
|
||||
|
||||
bpftool_make() {
|
||||
local arch=$(tc-arch-kernel)
|
||||
tc-export AR CC LD
|
||||
|
||||
emake V=1 VF=1 \
|
||||
HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)" \
|
||||
EXTRA_CFLAGS="${CFLAGS}" ARCH="${arch}" \
|
||||
prefix="${EPREFIX}"/usr \
|
||||
bash_compdir="$(get_bashcompdir)" \
|
||||
feature-libcap="$(usex caps 1 0)" \
|
||||
feature-llvm="$(usex llvm 1 0)" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
bpftool_make
|
||||
bpftool_make -C Documentation
|
||||
}
|
||||
|
||||
src_install() {
|
||||
bpftool_make DESTDIR="${D}" install
|
||||
bpftool_make mandir="${ED}"/usr/share/man -C Documentation install
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "clang-bpf-co-re support" sys-devel/clang[llvm_targets_BPF]
|
||||
}
|
@ -1,7 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>holger@applied-asynchrony.com</email>
|
||||
<name>Holger Hoffstätte</name>
|
||||
</maintainer>
|
||||
<maintainer type="project" proxied="proxy">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="caps">Use <pkg>sys-libs/libcap</pkg> to enable unprivileged run support</flag>
|
||||
<flag name="llvm">Use <pkg>sys-devel/llvm</pkg></flag>
|
||||
|
@ -0,0 +1,83 @@
|
||||
From 6a2b27c0f512619b0e7a769a18a0fb05bb3789a5 Mon Sep 17 00:00:00 2001
|
||||
From: Arnaldo Carvalho de Melo <acme@redhat.com>
|
||||
Date: Tue, 18 Jun 2024 10:37:30 -0300
|
||||
Subject: [PATCH] core: Initialize cu->node with INIT_LIST_HEAD()
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
In cu__new() zalloc() is used defensively, and that helped catch this
|
||||
problem where we assume that a cu us in the cus list of cu instances,
|
||||
but that is not the case when we use cus__merge_and_process_cu(), for
|
||||
instance when loading files created by clang with LTO, as reported by
|
||||
Peter Jung and narrowed down by Nathan Chancellor.
|
||||
|
||||
If we use INIT_LIST_HEAD() in cu__new() to initialize cu->node, which is
|
||||
what we do with other lists and nodes there, then the unconditional
|
||||
removal using list_del_init() will be a no-op and removing something not
|
||||
on the cus list of cu instances will not cause problems, just keep an
|
||||
unconsistent cus->nr_entries field.
|
||||
|
||||
So lets just have this fix in first, keeping Nathan's Tested-by and then
|
||||
do the a bit more involved fix of either adding that cu to the cus list
|
||||
or checking at removal time if it is there.
|
||||
|
||||
Program received signal SIGSEGV, Segmentation fault.
|
||||
0x00007ffff7f1e13e in __list_del (prev=0x0, next=0x0) at /home/acme/git/pahole/list.h:106
|
||||
106 next->prev = prev;
|
||||
(gdb) bt
|
||||
#0 0x00007ffff7f1e13e in __list_del (prev=0x0, next=0x0) at /home/acme/git/pahole/list.h:106
|
||||
#1 0x00007ffff7f1e176 in list_del_init (entry=0x417980) at /home/acme/git/pahole/list.h:165
|
||||
#2 0x00007ffff7f1f8f9 in __cus__remove (cus=0x4142a0, cu=0x417980) at /home/acme/git/pahole/dwarves.c:527
|
||||
#3 0x00007ffff7f1f92b in cus__remove (cus=0x4142a0, cu=0x417980) at /home/acme/git/pahole/dwarves.c:533
|
||||
#4 0x00007ffff7f3d01c in cus__finalize (cus=0x4142a0, cu=0x417980, conf=0x4133c0 <conf_load>, thr_data=0x0)
|
||||
at /home/acme/git/pahole/dwarf_loader.c:3040
|
||||
#5 0x00007ffff7f3e05c in cus__merge_and_process_cu (cus=0x4142a0, conf=0x4133c0 <conf_load>, mod=0x415cf0, dw=0x416110, elf=0x414380,
|
||||
filename=0x7fffffffe3f7 "cast_common.ko", build_id=0x416680 "\265D\371U\213\373u|\037\250\242\032\271\365⒜]y\023", build_id_len=20,
|
||||
type_dcu=0x0) at /home/acme/git/pahole/dwarf_loader.c:3482
|
||||
#6 0x00007ffff7f3e218 in cus__load_module (cus=0x4142a0, conf=0x4133c0 <conf_load>, mod=0x415cf0, dw=0x416110, elf=0x414380,
|
||||
filename=0x7fffffffe3f7 "cast_common.ko") at /home/acme/git/pahole/dwarf_loader.c:3521
|
||||
#7 0x00007ffff7f3e396 in cus__process_dwflmod (dwflmod=0x415cf0, userdata=0x415d00, name=0x415ea0 "cast_common.ko", base=65536,
|
||||
arg=0x7fffffffde40) at /home/acme/git/pahole/dwarf_loader.c:3581
|
||||
#8 0x00007ffff7eb4609 in dwfl_getmodules (dwfl=0x414300, callback=0x7ffff7f3e2ec <cus__process_dwflmod>, arg=0x7fffffffde40, offset=0)
|
||||
at ../libdwfl/dwfl_getmodules.c:86
|
||||
#9 0x00007ffff7f3e4c5 in cus__process_file (cus=0x4142a0, conf=0x4133c0 <conf_load>, fd=3, filename=0x7fffffffe3f7 "cast_common.ko")
|
||||
at /home/acme/git/pahole/dwarf_loader.c:3647
|
||||
#10 0x00007ffff7f3e5cd in dwarf__load_file (cus=0x4142a0, conf=0x4133c0 <conf_load>, filename=0x7fffffffe3f7 "cast_common.ko")
|
||||
at /home/acme/git/pahole/dwarf_loader.c:3684
|
||||
#11 0x00007ffff7f232df in cus__load_file (cus=0x4142a0, conf=0x4133c0 <conf_load>, filename=0x7fffffffe3f7 "cast_common.ko")
|
||||
at /home/acme/git/pahole/dwarves.c:2134
|
||||
#12 0x00007ffff7f23e8b in cus__load_files (cus=0x4142a0, conf=0x4133c0 <conf_load>, filenames=0x7fffffffe0f0)
|
||||
at /home/acme/git/pahole/dwarves.c:2637
|
||||
#13 0x000000000040aec0 in main (argc=2, argv=0x7fffffffe0e8) at /home/acme/git/pahole/pahole.c:3805
|
||||
(gdb) fr 1
|
||||
#1 0x00007ffff7f1e176 in list_del_init (entry=0x417980) at /home/acme/git/pahole/list.h:165
|
||||
165 __list_del(entry->prev, entry->next);
|
||||
(gdb) p entry
|
||||
$1 = (struct list_head *) 0x417980
|
||||
(gdb) p entry->next
|
||||
$2 = (struct list_head *) 0x0
|
||||
(gdb) p entry->prev
|
||||
$3 = (struct list_head *) 0x0
|
||||
|
||||
Closes: https://github.com/acmel/dwarves/issues/53
|
||||
Closes: https://gitlab.archlinux.org/archlinux/packaging/packages/pahole/-/issues/1
|
||||
Tested-by: Nathan Chancellor <nathan@kernel.org>
|
||||
Link: https://lore.kernel.org/all/20240617210810.GA1877676@thelio-3990X
|
||||
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
|
||||
---
|
||||
dwarves.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/dwarves.c b/dwarves.c
|
||||
index 1ec259f5..823a0152 100644
|
||||
--- a/dwarves.c
|
||||
+++ b/dwarves.c
|
||||
@@ -739,6 +739,7 @@ struct cu *cu__new(const char *name, uint8_t addr_size,
|
||||
cu->dfops = NULL;
|
||||
INIT_LIST_HEAD(&cu->tags);
|
||||
INIT_LIST_HEAD(&cu->tool_list);
|
||||
+ INIT_LIST_HEAD(&cu->node);
|
||||
|
||||
cu->addr_size = addr_size;
|
||||
cu->extra_dbg_info = 0;
|
79
sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-1.27-r1.ebuild
vendored
Normal file
79
sdk_container/src/third_party/portage-stable/dev-util/pahole/pahole-1.27-r1.ebuild
vendored
Normal file
@ -0,0 +1,79 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..12} )
|
||||
inherit cmake python-single-r1
|
||||
|
||||
MY_PN=dwarves
|
||||
MY_P=${MY_PN}-${PV%%_p*}
|
||||
|
||||
DESCRIPTION="pahole (Poke-a-Hole) and other DWARF utilities"
|
||||
HOMEPAGE="https://git.kernel.org/cgit/devel/pahole/pahole.git/"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://git.kernel.org/pub/scm/devel/pahole/pahole.git"
|
||||
inherit git-r3
|
||||
else
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/arnaldocarvalhodemelo.asc
|
||||
inherit verify-sig
|
||||
SRC_URI="http://fedorapeople.org/~acme/${MY_PN}/${MY_P}.tar.xz
|
||||
verify-sig? ( http://fedorapeople.org/~acme/${MY_PN}/${MY_P}.tar.sign )"
|
||||
if [[ ${PV} == *_p* ]] ; then
|
||||
# Patch rollups from git format-patch. Sometimes there are important
|
||||
# fixes in git which haven't been released (and no release in sight).
|
||||
# Patch rollups are a bit better for understanding where changes have
|
||||
# come from for users.
|
||||
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-patches.tar.xz"
|
||||
fi
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-arnaldocarvalhodemelo )"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2" # only
|
||||
SLOT="0"
|
||||
IUSE="debug"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
>=dev-libs/elfutils-0.178
|
||||
sys-libs/zlib"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
DOCS=( README README.ctracer NEWS )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.10-python-import.patch"
|
||||
"${FILESDIR}/${PN}-1.27-r1-fix-clang-btf-generation-bug.patch"
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
return
|
||||
fi
|
||||
|
||||
# Upstream sign the decompressed .tar
|
||||
if use verify-sig; then
|
||||
einfo "Unpacking ${MY_P}.tar.xz ..."
|
||||
verify-sig_verify_detached - "${DISTDIR}"/${MY_P}.tar.sign \
|
||||
< <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee >(tar -x))
|
||||
assert "Unpack failed"
|
||||
else
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
[[ -d "${WORKDIR}"/${P}-patches ]] && PATCHES+=( "${WORKDIR}"/${P}-patches )
|
||||
|
||||
cmake_src_prepare
|
||||
python_fix_shebang ostra/ostra-cg ostra/python/ostra.py
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=( "-D__LIB=$(get_libdir)" )
|
||||
cmake_src_configure
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST linux-6.10.tar.xz 145142812 BLAKE2B bb243ea7493b9d63aa2df2050a3f1ae2b89ee84a20015239cf157e3f4f51c7ac5efedc8a51132b2d7482f9276ac418de6624831c8a3b806130d9c2d2124c539b SHA512 baa2487954044f991d2ae254d77d14a1f0185dd62c9f0fcaff69f586c9f906823017b8db1c4588f27b076dfa3ebb606929fec859f60ea419e7974330b9289cc2
|
||||
DIST linux-6.3.tar.xz 136891752 BLAKE2B f1887c8924efa8d0cb14c4e604affd0b0168bcf20f56a37c027405c7bc11aba822a43fcb38ccb55a81a26f747d00e1ab5a6554818affbf1e1c7ef5220150fc69 SHA512 768979440f4907ba64d4481b383d6101faf208f27a0b897156123aa278c5743fe3c4f61945b2541429c532d45382aaee8899ea9d44a1d2895bfbb79bfd937f65
|
||||
DIST linux-6.7.tar.xz 141406528 BLAKE2B cecdbd19905e43e485ab73b352ced18b37f2a138c97a6956cadcda5d3d271001117dc1cf896b166ff019fc7f405f9539e2ed0d6112b0890efb04d182adf4fd0e SHA512 de06de556191614bd9daf077ae239360352a402bab407748e67f1e5108c92fd933e451707840ab22fe0f9976db3d1e1b60ca9d41cf894f015ca09b3f652b74ad
|
||||
DIST linux-6.8.tar.xz 142502100 BLAKE2B c6f17f816cea16e629f63e9379b98888713f57b2c5173306926471f139a9d612a0c74e119341f8075390e55e203d787d9edeb4ad5a064b18870f6f0f7ffaafb2 SHA512 5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068
|
||||
|
22
sdk_container/src/third_party/portage-stable/dev-util/perf/files/perf-6.10-expr.patch
vendored
Normal file
22
sdk_container/src/third_party/portage-stable/dev-util/perf/files/perf-6.10-expr.patch
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
|
||||
index bc980fd..a7f1e1e 100644
|
||||
--- a/tools/perf/Makefile.config
|
||||
+++ b/tools/perf/Makefile.config
|
||||
@@ -1184,7 +1184,7 @@ ifneq ($(NO_LIBTRACEEVENT),1)
|
||||
CFLAGS += -DHAVE_LIBTRACEEVENT $(LIBTRACEEVENT_CFLAGS)
|
||||
LDFLAGS += $(LIBTRACEEVENT_LDFLAGS)
|
||||
EXTLIBS += ${TRACEEVENTLIBS}
|
||||
- LIBTRACEEVENT_VERSION := $(shell PKG_CONFIG_PATH=$(LIBTRACEEVENT_DIR) $(PKG_CONFIG) --modversion libtraceevent)
|
||||
+ LIBTRACEEVENT_VERSION := $(shell PKG_CONFIG_PATH=$(LIBTRACEEVENT_DIR) $(PKG_CONFIG) --modversion libtraceevent).0
|
||||
LIBTRACEEVENT_VERSION_1 := $(word 1, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
|
||||
LIBTRACEEVENT_VERSION_2 := $(word 2, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
|
||||
LIBTRACEEVENT_VERSION_3 := $(word 3, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
|
||||
@@ -1198,7 +1198,7 @@ ifneq ($(NO_LIBTRACEEVENT),1)
|
||||
$(call feature_check,libtracefs)
|
||||
ifeq ($(feature-libtracefs), 1)
|
||||
EXTLIBS += -ltracefs
|
||||
- LIBTRACEFS_VERSION := $(shell $(PKG_CONFIG) --modversion libtracefs)
|
||||
+ LIBTRACEFS_VERSION := $(shell $(PKG_CONFIG) --modversion libtracefs).0
|
||||
LIBTRACEFS_VERSION_1 := $(word 1, $(subst ., ,$(LIBTRACEFS_VERSION)))
|
||||
LIBTRACEFS_VERSION_2 := $(word 2, $(subst ., ,$(LIBTRACEFS_VERSION)))
|
||||
LIBTRACEFS_VERSION_3 := $(word 3, $(subst ., ,$(LIBTRACEFS_VERSION)))
|
340
sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.10.ebuild
vendored
Normal file
340
sdk_container/src/third_party/portage-stable/dev-util/perf/perf-6.10.ebuild
vendored
Normal file
@ -0,0 +1,340 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
inherit bash-completion-r1 estack flag-o-matic linux-info llvm toolchain-funcs python-r1
|
||||
|
||||
DESCRIPTION="Userland tools for Linux Performance Counters"
|
||||
HOMEPAGE="https://perf.wiki.kernel.org/"
|
||||
|
||||
LINUX_V="${PV:0:1}.x"
|
||||
if [[ ${PV} == *_rc* ]] ; then
|
||||
LINUX_VER=$(ver_cut 1-2).$(($(ver_cut 3)-1))
|
||||
PATCH_VERSION=$(ver_cut 1-3)
|
||||
LINUX_PATCH=patch-${PV//_/-}.xz
|
||||
SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/${LINUX_PATCH}
|
||||
https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/testing/v${PATCH_VERSION}/${LINUX_PATCH}"
|
||||
elif [[ ${PV} == *.*.* ]] ; then
|
||||
# stable-release series
|
||||
LINUX_VER=$(ver_cut 1-2)
|
||||
LINUX_PATCH=patch-${PV}.xz
|
||||
SRC_URI="https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_PATCH}"
|
||||
else
|
||||
LINUX_VER=${PV}
|
||||
fi
|
||||
|
||||
LINUX_SOURCES="linux-${LINUX_VER}.tar.xz"
|
||||
SRC_URI+=" https://www.kernel.org/pub/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}"
|
||||
|
||||
S_K="${WORKDIR}/linux-${LINUX_VER}"
|
||||
S="${S_K}/tools/perf"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 audit babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl python slang systemtap tcmalloc unwind zstd"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
# setuptools (and Python) are always needed even if not building Python bindings
|
||||
BDEPEND="
|
||||
${LINUX_PATCH+dev-util/patchutils}
|
||||
${PYTHON_DEPS}
|
||||
>=app-arch/tar-1.34-r2
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
app-alternatives/yacc
|
||||
app-alternatives/lex
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
app-text/asciidoc
|
||||
app-text/sgml-common
|
||||
app-text/xmlto
|
||||
sys-process/time
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
audit? ( sys-process/audit )
|
||||
babeltrace? ( dev-util/babeltrace:0/1 )
|
||||
bpf? (
|
||||
dev-libs/libbpf
|
||||
dev-util/bpftool
|
||||
dev-util/pahole
|
||||
sys-devel/clang:=
|
||||
sys-devel/llvm:=
|
||||
)
|
||||
caps? ( sys-libs/libcap )
|
||||
capstone? ( dev-libs/capstone )
|
||||
crypt? ( dev-libs/openssl:= )
|
||||
gtk? ( x11-libs/gtk+:2 )
|
||||
java? ( virtual/jre:* )
|
||||
libpfm? ( dev-libs/libpfm:= )
|
||||
libtraceevent? ( dev-libs/libtraceevent )
|
||||
libtracefs? ( dev-libs/libtracefs )
|
||||
lzma? ( app-arch/xz-utils )
|
||||
numa? ( sys-process/numactl )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
slang? ( sys-libs/slang )
|
||||
systemtap? ( dev-debug/systemtap )
|
||||
tcmalloc? ( dev-util/google-perftools )
|
||||
unwind? ( sys-libs/libunwind:= )
|
||||
zstd? ( app-arch/zstd:= )
|
||||
dev-libs/elfutils
|
||||
sys-libs/binutils-libs:=
|
||||
sys-libs/zlib
|
||||
virtual/libcrypt
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-kernel/linux-headers-5.10
|
||||
java? ( virtual/jdk )
|
||||
"
|
||||
|
||||
QA_FLAGS_IGNORED=(
|
||||
'usr/bin/perf-read-vdso32' # not linked with anything except for libc
|
||||
'usr/libexec/perf-core/dlfilters/.*' # plugins
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if ! use doc ; then
|
||||
ewarn "Without the doc USE flag you won't get any documentation nor man pages."
|
||||
ewarn "And without man pages, you won't get any --help output for perf and its"
|
||||
ewarn "sub-tools."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
local CONFIG_CHECK="
|
||||
~DEBUG_INFO
|
||||
~FTRACE
|
||||
~FTRACE_SYSCALLS
|
||||
~FUNCTION_TRACER
|
||||
~KALLSYMS
|
||||
~KALLSYMS_ALL
|
||||
~KPROBES
|
||||
~KPROBE_EVENTS
|
||||
~PERF_EVENTS
|
||||
~UPROBES
|
||||
~UPROBE_EVENTS
|
||||
"
|
||||
|
||||
use bpf && llvm_pkg_setup
|
||||
# We enable python unconditionally as libbpf always generates
|
||||
# API headers using python script
|
||||
python_setup
|
||||
|
||||
if use bpf ; then
|
||||
CONFIG_CHECK+="~BPF ~BPF_EVENTS ~BPF_SYSCALL ~DEBUG_INFO_BTF ~HAVE_EBPF_JIT"
|
||||
fi
|
||||
|
||||
linux-info_pkg_setup
|
||||
}
|
||||
|
||||
# src_unpack and src_prepare are copied to dev-util/bpftool since
|
||||
# it's building from the same tarball, please keep it in sync with bpftool
|
||||
src_unpack() {
|
||||
local paths=(
|
||||
kernel/bpf tools/{arch,bpf,build,include,lib,perf,scripts}
|
||||
scripts include lib "arch/*/include" "arch/*/lib" "arch/*/tools"
|
||||
)
|
||||
|
||||
# We expect the tar implementation to support the -j option (both
|
||||
# GNU tar and libarchive's tar support that).
|
||||
echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}"
|
||||
gtar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \
|
||||
"${paths[@]/#/linux-${LINUX_VER}/}" || die
|
||||
|
||||
if [[ -n ${LINUX_PATCH} ]] ; then
|
||||
eshopts_push -o noglob
|
||||
ebegin "Filtering partial source patch"
|
||||
filterdiff -p1 ${paths[@]/#/-i } -z "${DISTDIR}"/${LINUX_PATCH} \
|
||||
> ${P}.patch
|
||||
eend $? || die "filterdiff failed"
|
||||
eshopts_pop
|
||||
fi
|
||||
|
||||
local a
|
||||
for a in ${A}; do
|
||||
[[ ${a} == ${LINUX_SOURCES} ]] && continue
|
||||
[[ ${a} == ${LINUX_PATCH} ]] && continue
|
||||
unpack ${a}
|
||||
done
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
if [[ -n ${LINUX_PATCH} ]] ; then
|
||||
pushd "${S_K}" >/dev/null || die
|
||||
eapply "${WORKDIR}"/${P}.patch
|
||||
popd || die
|
||||
fi
|
||||
|
||||
pushd "${S_K}" >/dev/null || die
|
||||
eapply "${FILESDIR}"/perf-6.4-libtracefs.patch
|
||||
eapply "${FILESDIR}"/perf-6.10-expr.patch
|
||||
popd || die
|
||||
|
||||
# Drop some upstream too-developer-oriented flags and fix the
|
||||
# Makefile in general
|
||||
sed -i \
|
||||
-e "s@\$(sysconfdir_SQ)/bash_completion.d@$(get_bashcompdir)@" \
|
||||
"${S}"/Makefile.perf || die
|
||||
# A few places still use -Werror w/out $(WERROR) protection.
|
||||
sed -i -e 's@-Werror@@' \
|
||||
"${S}"/Makefile.perf "${S_K}"/tools/lib/bpf/Makefile \
|
||||
"${S_K}"/tools/lib/perf/Makefile || die
|
||||
|
||||
# Avoid the call to make kernelversion
|
||||
sed -i -e '/PERF-VERSION-GEN/d' Makefile.perf || die
|
||||
echo "#define PERF_VERSION \"${PV}\"" > PERF-VERSION-FILE
|
||||
|
||||
# The code likes to compile local assembly files which lack ELF markings.
|
||||
find -name '*.S' -exec sed -i '$a.section .note.GNU-stack,"",%progbits' {} +
|
||||
}
|
||||
|
||||
puse() { usex $1 "" 1; }
|
||||
perf_make() {
|
||||
# The arch parsing is a bit funky. The perf tools package is integrated
|
||||
# into the kernel, so it wants an ARCH that looks like the kernel arch,
|
||||
# but it also wants to know about the split value -- i386/x86_64 vs just
|
||||
# x86. We can get that by telling the func to use an older linux version.
|
||||
# It's kind of a hack, but not that bad ...
|
||||
|
||||
# LIBDIR sets a search path of perf-gtk.so. Bug 515954
|
||||
|
||||
local arch=$(tc-arch-kernel)
|
||||
local java_dir
|
||||
use java && java_dir="${EPREFIX}/etc/java-config-2/current-system-vm"
|
||||
|
||||
# sync this with the whitelist in tools/perf/Makefile.config
|
||||
local disable_libdw
|
||||
if ! use amd64 && ! use x86 && \
|
||||
! use arm && \
|
||||
! use arm64 && \
|
||||
! use ppc && ! use ppc64 \
|
||||
! use s390 && \
|
||||
! use riscv && \
|
||||
! use loong
|
||||
then
|
||||
disable_libdw=1
|
||||
fi
|
||||
|
||||
# perf directly invokes LD for linking without going through CC, on mips
|
||||
# it is required to specify the emulation. port of below buildroot patch
|
||||
# https://patchwork.ozlabs.org/project/buildroot/patch/20170217105905.32151-1-Vincent.Riera@imgtec.com/
|
||||
local linker="$(tc-getLD)"
|
||||
if use mips
|
||||
then
|
||||
if use big-endian
|
||||
then
|
||||
use abi_mips_n64 && linker+=" -m elf64btsmip"
|
||||
use abi_mips_n32 && linker+=" -m elf32btsmipn32"
|
||||
use abi_mips_o32 && linker+=" -m elf32btsmip"
|
||||
else
|
||||
use abi_mips_n64 && linker+=" -m elf64ltsmip"
|
||||
use abi_mips_n32 && linker+=" -m elf32ltsmipn32"
|
||||
use abi_mips_o32 && linker+=" -m elf32ltsmip"
|
||||
fi
|
||||
fi
|
||||
|
||||
# FIXME: NO_CORESIGHT
|
||||
local emakeargs=(
|
||||
V=1 VF=1
|
||||
HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)"
|
||||
CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="${linker}" NM="$(tc-getNM)"
|
||||
PKG_CONFIG="$(tc-getPKG_CONFIG)"
|
||||
prefix="${EPREFIX}/usr" bindir_relative="bin"
|
||||
tipdir="share/doc/${PF}"
|
||||
EXTRA_CFLAGS="${CFLAGS}"
|
||||
EXTRA_LDFLAGS="${LDFLAGS}"
|
||||
ARCH="${arch}"
|
||||
BUILD_BPF_SKEL=$(usex bpf 1 "") \
|
||||
BUILD_NONDISTRO=1
|
||||
JDIR="${java_dir}"
|
||||
CORESIGHT=
|
||||
GTK2=$(usex gtk 1 "")
|
||||
feature-gtk2-infobar=$(usex gtk 1 "")
|
||||
NO_AUXTRACE=
|
||||
NO_BACKTRACE=
|
||||
NO_CAPSTONE=$(puse capstone)
|
||||
NO_DEMANGLE=
|
||||
NO_JEVENTS=$(puse python)
|
||||
NO_JVMTI=$(puse java)
|
||||
NO_LIBAUDIT=$(puse audit)
|
||||
NO_LIBBABELTRACE=$(puse babeltrace)
|
||||
NO_LIBBIONIC=1
|
||||
NO_LIBBPF=$(puse bpf)
|
||||
NO_LIBCAP=$(puse caps)
|
||||
NO_LIBCRYPTO=$(puse crypt)
|
||||
NO_LIBDW_DWARF_UNWIND="${disable_libdw}"
|
||||
NO_LIBELF=
|
||||
NO_LIBNUMA=$(puse numa)
|
||||
NO_LIBPERL=$(puse perl)
|
||||
NO_LIBPFM4=$(puse libpfm)
|
||||
NO_LIBPYTHON=$(puse python)
|
||||
NO_LIBTRACEEVENT=$(puse libtraceevent)
|
||||
NO_LIBUNWIND=$(puse unwind)
|
||||
NO_LIBZSTD=$(puse zstd)
|
||||
NO_SDT=$(puse systemtap)
|
||||
NO_SHELLCHECK=1
|
||||
NO_SLANG=$(puse slang)
|
||||
NO_LZMA=$(puse lzma)
|
||||
NO_ZLIB=
|
||||
TCMALLOC=$(usex tcmalloc 1 "")
|
||||
WERROR=0
|
||||
DEBUG=$(usex debug 1 "")
|
||||
LIBDIR="/usr/libexec/perf-core"
|
||||
libdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins"
|
||||
"$@"
|
||||
)
|
||||
emake "${emakeargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
filter-lto
|
||||
|
||||
perf_make -f Makefile.perf
|
||||
use doc && perf_make -C Documentation man
|
||||
}
|
||||
|
||||
src_test() {
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
_install_python_ext() {
|
||||
perf_make -f Makefile.perf install-python_ext DESTDIR="${D}"
|
||||
}
|
||||
|
||||
perf_make -f Makefile.perf install DESTDIR="${D}"
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl _install_python_ext
|
||||
fi
|
||||
|
||||
if use gtk; then
|
||||
local libdir
|
||||
libdir="$(get_libdir)"
|
||||
# on some arches it ends up in lib even on 64bit, ppc64 for instance.
|
||||
[[ -f "${ED}"/usr/lib/libperf-gtk.so ]] && libdir="lib"
|
||||
mv "${ED}"/usr/${libdir}/libperf-gtk.so \
|
||||
"${ED}"/usr/libexec/perf-core || die
|
||||
fi
|
||||
|
||||
dodoc CREDITS
|
||||
|
||||
dodoc *txt Documentation/*.txt
|
||||
|
||||
# perf needs this decompressed to print out tips for users
|
||||
docompress -x /usr/share/doc/${PF}/tips.txt
|
||||
|
||||
if use doc ; then
|
||||
doman Documentation/*.1
|
||||
fi
|
||||
}
|
@ -195,7 +195,6 @@ esac
|
||||
# @CODE
|
||||
|
||||
# @ECLASS_VARIABLE: DISTUTILS_ALLOW_WHEEL_REUSE
|
||||
# @DEFAULT_UNSET
|
||||
# @USER_VARIABLE
|
||||
# @DESCRIPTION:
|
||||
# If set to a non-empty value, the eclass is allowed to reuse a wheel
|
||||
@ -205,6 +204,7 @@ esac
|
||||
# This is an optimization that can avoid the overhead of calling into
|
||||
# the build system in pure Python packages and packages using the stable
|
||||
# Python ABI.
|
||||
DISTUTILS_ALLOW_WHEEL_REUSE=1
|
||||
|
||||
# @ECLASS_VARIABLE: BUILD_DIR
|
||||
# @OUTPUT_VARIABLE
|
||||
@ -572,6 +572,9 @@ distutils_enable_sphinx() {
|
||||
# with the specified test runner. Also copies the current value
|
||||
# of RDEPEND to test?-BDEPEND. The test-runner argument must be one of:
|
||||
#
|
||||
# - import-check: `pytest --import-check` fallback (for use when there are
|
||||
# no tests to run)
|
||||
#
|
||||
# - pytest: dev-python/pytest
|
||||
#
|
||||
# - setup.py: setup.py test (no deps included)
|
||||
@ -597,9 +600,13 @@ distutils_enable_tests() {
|
||||
[[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: test-runner"
|
||||
|
||||
local test_deps=${RDEPEND}
|
||||
local test_pkgs=
|
||||
case ${1} in
|
||||
import-check)
|
||||
test_pkgs+=' dev-python/pytest-import-check[${PYTHON_USEDEP}]'
|
||||
;&
|
||||
pytest)
|
||||
local test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]'
|
||||
test_pkgs+=' >=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]'
|
||||
if [[ -n ${EPYTEST_TIMEOUT} ]]; then
|
||||
test_pkgs+=' dev-python/pytest-timeout[${PYTHON_USEDEP}]'
|
||||
fi
|
||||
@ -1560,6 +1567,9 @@ distutils-r1_python_test() {
|
||||
_python_check_EPYTHON
|
||||
|
||||
case ${_DISTUTILS_TEST_RUNNER} in
|
||||
import-check)
|
||||
epytest --import-check "${BUILD_DIR}/install$(python_get_sitedir)"
|
||||
;;
|
||||
pytest)
|
||||
epytest
|
||||
;;
|
||||
@ -1933,7 +1943,7 @@ _distutils-r1_compare_installed_files() {
|
||||
# Perform the check only if at least one potentially reusable wheel
|
||||
# has been produced. Nonpure packages (e.g. NumPy) may install
|
||||
# interpreter configuration details into sitedir.
|
||||
if [[ ${!DISTUTILS_WHEELS[*]} != *-none-any.whl* &&
|
||||
if [[ ${!DISTUTILS_WHEELS[*]} != *py3-none-any.whl* &&
|
||||
${!DISTUTILS_WHEELS[*]} != *-abi3-*.whl ]]; then
|
||||
return
|
||||
fi
|
||||
|
@ -1838,7 +1838,7 @@ ejunit_() {
|
||||
local junit=${1}
|
||||
shift 1
|
||||
|
||||
local cp=$(java-pkg_getjars --with-dependencies ${junit}${pkgs})
|
||||
local cp=$(java-pkg_getjars --build-only --with-dependencies ${junit}${pkgs})
|
||||
if [[ ${1} = -cp || ${1} = -classpath ]]; then
|
||||
cp="${2}:${cp}"
|
||||
shift 2
|
||||
@ -2723,7 +2723,13 @@ java-pkg_build-vm-from-handle() {
|
||||
fi
|
||||
|
||||
for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
|
||||
if java-config-2 --select-vm=${vm} 2>/dev/null; then
|
||||
local java_config
|
||||
for java_config in java-config{,-2}; do
|
||||
type -p ${java_config} >/dev/null && break
|
||||
done
|
||||
[[ -z ${java_config} ]] && die "No java-config binary in PATH"
|
||||
|
||||
if ${java_config} --select-vm=${vm} 2>/dev/null; then
|
||||
echo ${vm}
|
||||
return 0
|
||||
fi
|
||||
|
@ -9,6 +9,7 @@
|
||||
# @SUPPORTED_EAPIS: 7 8
|
||||
# @PROVIDES: llvm-utils
|
||||
# @BLURB: Utility functions to build against slotted LLVM
|
||||
# @DEPRECATED: llvm-r1.eclass
|
||||
# @DESCRIPTION:
|
||||
# The llvm.eclass provides utility functions that can be used to build
|
||||
# against specific version of slotted LLVM (with fallback to :0 for old
|
||||
|
@ -1,10 +1,10 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: savedconfig.eclass
|
||||
# @MAINTAINER:
|
||||
# base-system@gentoo.org
|
||||
# @SUPPORTED_EAPIS: 6 7 8
|
||||
# @SUPPORTED_EAPIS: 7 8
|
||||
# @BLURB: common API for saving/restoring complex configuration files
|
||||
# @DESCRIPTION:
|
||||
# It is not uncommon to come across a package which has a very fine
|
||||
@ -31,7 +31,7 @@
|
||||
# build.
|
||||
|
||||
case ${EAPI} in
|
||||
6|7|8) ;;
|
||||
7|8) ;;
|
||||
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
|
||||
esac
|
||||
|
||||
@ -60,12 +60,12 @@ save_config() {
|
||||
if [[ $# -eq 1 && -f $1 ]] ; then
|
||||
# Just one file, so have the ${configfile} be that config file
|
||||
dodir "${configfile%/*}"
|
||||
cp "$@" "${ED%/}/${configfile}" || die "failed to save $*"
|
||||
cp "$@" "${ED}/${configfile}" || die "failed to save $*"
|
||||
else
|
||||
# A dir, or multiple files, so have the ${configfile} be a dir
|
||||
# with all the saved stuff below it
|
||||
dodir "${configfile}"
|
||||
treecopy "$@" "${ED%/}/${configfile}" || die "failed to save $*"
|
||||
treecopy "$@" "${ED}/${configfile}" || die "failed to save $*"
|
||||
fi
|
||||
|
||||
elog "Your configuration for ${CATEGORY}/${PF} has been saved in "
|
||||
@ -150,7 +150,7 @@ savedconfig_pkg_postinst() {
|
||||
# are worse :/.
|
||||
|
||||
if use savedconfig ; then
|
||||
find "${EROOT%/}/etc/portage/savedconfig/${CATEGORY}/${PF}" \
|
||||
find "${EROOT}/etc/portage/savedconfig/${CATEGORY}/${PF}" \
|
||||
-exec touch {} + 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
# @ECLASS: unpacker.eclass
|
||||
# @MAINTAINER:
|
||||
# base-system@gentoo.org
|
||||
# @SUPPORTED_EAPIS: 6 7 8
|
||||
# @SUPPORTED_EAPIS: 7 8
|
||||
# @BLURB: helpers for extraneous file formats and consistent behavior across EAPIs
|
||||
# @DESCRIPTION:
|
||||
# Some extraneous file formats are not part of PMS, or are only in certain
|
||||
@ -16,7 +16,7 @@
|
||||
# - support partial unpacks?
|
||||
|
||||
case ${EAPI} in
|
||||
6|7|8) ;;
|
||||
7|8) ;;
|
||||
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
|
||||
esac
|
||||
|
||||
@ -430,10 +430,7 @@ _unpacker_get_decompressor() {
|
||||
echo "xz -T$(makeopts_jobs) -dc" ;;
|
||||
*.lz)
|
||||
find_lz_unpacker() {
|
||||
local has_version_arg="-b"
|
||||
|
||||
[[ ${EAPI} == 6 ]] && has_version_arg="--host-root"
|
||||
if has_version "${has_version_arg}" ">=app-arch/xz-utils-5.4.0" ; then
|
||||
if has_version -b ">=app-arch/xz-utils-5.4.0" ; then
|
||||
echo xz
|
||||
return
|
||||
fi
|
||||
@ -537,7 +534,7 @@ _unpacker() {
|
||||
esac
|
||||
|
||||
# 7z, rar and lha/lzh are handled by package manager in EAPI < 8
|
||||
if [[ ${EAPI} != [67] ]]; then
|
||||
if [[ ${EAPI} != 7 ]]; then
|
||||
case ${m} in
|
||||
*.7z)
|
||||
arch="unpack_7z" ;;
|
||||
|
@ -1,48 +0,0 @@
|
||||
Blender License 1.0 (the "BL", see http://www.blender.org/BL/ ).
|
||||
|
||||
Copyright (C) 2002 Blender Foundation. All Rights Reserved.
|
||||
|
||||
For teams that don't want to operate under the GPL, we're also offering
|
||||
this "non-GPL" Blender License option. This means that you can download
|
||||
the latest sources and tools via FTP or CVS from our site and sign an
|
||||
additional agreement with the Blender Foundation, so you can keep your
|
||||
source modifications confidential. Contact the Blender Foundation via
|
||||
email at license@blender.org so we can discuss how we handle the
|
||||
practical matters.
|
||||
|
||||
A signed agreement allows you to do business with proprietary code, make
|
||||
special derived versions, sell executables, projects or services,
|
||||
provided that:
|
||||
|
||||
1. The BL-ed code remains copyrighted by the original owners, and cannot
|
||||
be transferred to other parties
|
||||
|
||||
2. The BL-ed code cannot be published or re-distributed in any way, and
|
||||
only be available for the internal staff that works directly on the
|
||||
software itself. Employees of partners with which you co-develop on the
|
||||
projects that include BL-ed code are considered 'internal staff' also.
|
||||
|
||||
3. The BL-ed code can be used (sold, distributed) in parts or in its
|
||||
whole only as an executable or as a compiled library/module and its
|
||||
header files.
|
||||
|
||||
4. The usage of the name Blender or the Blender logo is not included in
|
||||
this license. Instead 'including Blender Foundation release X' (or
|
||||
similar) can be used, with 'X' the version number of the initial Blender
|
||||
Foundation release which you started with.
|
||||
|
||||
5. Note that this BL has no authority over some of the external
|
||||
libraries licenses which Blender links with.
|
||||
|
||||
Additionally you get :
|
||||
|
||||
1. The right to use Blender Foundation source updates for a 1 year
|
||||
period.
|
||||
|
||||
2. Support. Details to be determined by the additional agreement.
|
||||
|
||||
You are invited to donate your proprietary changes back to the open
|
||||
source community after a reasonable time period. You are of course free
|
||||
to choose not to do this.
|
||||
|
||||
End of BL terms and conditions.
|
@ -1,140 +0,0 @@
|
||||
End User License Agreement
|
||||
YOU SHOULD CAREFULLY READ THE FOLLOWING END USER LICENSE AGREEMENT
|
||||
BEFORE INSTALLING THIS SOFTWARE PROGRAM. BY INSTALLING OR OTHERWISE
|
||||
USING THE SOFTWARE PROGRAM, YOU AGREE TO BE BOUND BY THE TERMS OF THIS
|
||||
AGREEMENT.
|
||||
|
||||
This software program (the "Program"), any printed materials, any
|
||||
on-line or electronic documentation (the "Manuals"), and any and all
|
||||
copies and derivative works of such software program are the
|
||||
copyrighted work of Linux Game Publishing LTD and its licensors. All
|
||||
rights reserved, except as expressly stated herein. All use of the
|
||||
Program is governed by the terms of this End User License Agreement
|
||||
("License Agreement"). The Program is solely for use by end users
|
||||
according to the terms of the Licence Agreement. Any use, reproduction
|
||||
or redistribution of the Program not in accordance with the terms of
|
||||
the Licence Agreement is expressly prohibited.
|
||||
|
||||
1. Limited Use License. Linux Game Publishing ("LGP") hereby grants,
|
||||
and by installing the Program you thereby accept, a limited,
|
||||
non-exclusive license and right to install and use one (1) copy of the
|
||||
Program for your use on either a home, business, or portable
|
||||
computer. The Program is licensed not sold. Your license confers no
|
||||
title or ownership in the Program.
|
||||
|
||||
2. Ownership. All title, ownership rights and intellectual property
|
||||
rights in and to the Program and any and all copies thereof (including
|
||||
but not limited to any titles, computer code, themes, objects,
|
||||
characters, character names, stories, dialog, catch phrases,
|
||||
locations, concepts, artwork, animations, sounds, musical
|
||||
compositions, audio-visual effects, methods of operation, moral
|
||||
rights, and any related documentation, and "applets" incorporated into
|
||||
the Program) are owned by LGP and its licensors. The Program is
|
||||
protected by the copyright laws of the United Kingdom, international
|
||||
copyright treaties and conventions and other laws. All rights are
|
||||
reserved. The Program contains certain licensed materials and LGP's
|
||||
licensors may protect their rights in the event of any violation of
|
||||
this Agreement.
|
||||
|
||||
3. Responsibilities of End User.
|
||||
A. Subject to the Grant of License hereinabove, you may not, in whole
|
||||
or in part, copy, photocopy, reproduce, translate, reverse engineer,
|
||||
derive source code, modify, disassemble, decompile, create derivative
|
||||
works based on the Program, or remove any proprietary notices or
|
||||
labels on the Program without the prior written consent of LGP.
|
||||
B. The Program is licensed to you as a single product. Its component
|
||||
parts may not be separated for use on more than one computer.
|
||||
C. You are entitled to use the Program for your own use, but you are
|
||||
not entitled to: (i) sell, grant a security interest in or transfer
|
||||
reproductions of the Program to other parties in any way, nor to rent,
|
||||
lease or license the Program to others without the prior written
|
||||
consent of LGP; or (ii) exploit the Program or any of its parts for
|
||||
any commercial purpose including, but not limited to, use at a cyber
|
||||
cafe, computer gaming center or any other location-based site. LGP may
|
||||
offer a separate Site License Agreement to permit you to make the
|
||||
Program available for commercial use. Contact LGP for details.
|
||||
|
||||
4. Program Transfer. You may transfer all of your rights
|
||||
under this License Agreement, provided the recipient agrees to the
|
||||
terms of this License Agreement.
|
||||
|
||||
5. Termination. The License Agreement is effective until
|
||||
terminated. You may terminate the License Agreement at any time by
|
||||
destroying the Program. LGP may, at its discretion, terminate this
|
||||
License Agreement in the event that you fail to comply with the terms
|
||||
and conditions contained herein. In such event, you must immediately
|
||||
destroy the Program.
|
||||
|
||||
6. Export Controls. The program may not be re-exported, downloaded,
|
||||
otherwise exported into (or to a national or resident of) any country
|
||||
to whom it would be illegal to export the Program under UK law.
|
||||
|
||||
7. Limited Warranty. Except as expressly and unambiguously set forth
|
||||
in this paragraph 7, LGP and its licensors disclaim any warranty for
|
||||
the Program, Editor and Manual(s). The Program, Editor and Manual(s)
|
||||
are provided "as is" without any warranty of any kind, either express
|
||||
or implied, including, without limitation, the implied warranties of
|
||||
merchantability, fitness for a particular purpose, or
|
||||
noninfringement. The entire risk arising out of use or performance of
|
||||
the Program, Editor, and Manual(s) remains with the User, however LGP
|
||||
warrants up to and including 90 days from the date of your purchase of
|
||||
the Program that the media containing the Program shall be free from
|
||||
defects in material and workmanship. In the event that the media
|
||||
proves to be defective during that time period, and upon presentation
|
||||
to LGP of proof of purchase of the defective Program, LGP will at its
|
||||
option: (i) correct any defect; (ii) provide a replacement copy of the
|
||||
same product; or (iii) refund your money.
|
||||
|
||||
8. Limitation of Liability. NEITHER LGP, ITS LICENSORS NOR ANY PARENT,
|
||||
SUBSIDIARY OR AFFILIATE OF THE FOREGOING SHALL BE LIABLE IN ANY WAY
|
||||
FOR LOSS OR DAMAGE OF ANY KIND RESULTING FROM THE USE OF THE PROGRAM,
|
||||
EDITOR, AND MANUAL(S) INCLUDING, WITHOUT LIMITATION, LOSS OF GOODWILL,
|
||||
WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
|
||||
COMMERCIAL DAMAGES OR LOSSES.
|
||||
|
||||
9. Equitable Remedies. You hereby agree that LGP would be irreparably
|
||||
damaged if the terms of this License Agreement were not specifically
|
||||
enforced, and therefore you agree that LGP shall be entitled, without
|
||||
bond, other security, or proof of damages, to appropriate equitable
|
||||
remedies with respect to breaches of this License Agreement, in
|
||||
addition to such other remedies as LGP may otherwise have available to
|
||||
it under applicable laws. In the event that any litigation is brought
|
||||
by either party in connection with this License Agreement, the
|
||||
prevailing party in such litigation shall be entitled to recover from
|
||||
the other party all the costs, attorney's fees and other expenses
|
||||
incurred by such prevailing party in the litigation.
|
||||
|
||||
10. Limitations on License. Nothing in this License Agreement shall
|
||||
preclude you from making or authorizing the making of copies of
|
||||
the Program provided, however, that all copies are complete and exact
|
||||
copies of the original, including this license.
|
||||
|
||||
11. Miscellaneous. This License Agreement shall be deemed to have been
|
||||
made and executed in the United Kingdom and any dispute arising
|
||||
hereunder shall be resolved in accordance with the laws of the UK. You
|
||||
agree that any claim asserted in any legal proceeding by one of the
|
||||
parties against the other shall be commenced and maintained in the
|
||||
appropriate court located in Nottingham, England, having subject
|
||||
matter jurisdiction with respect to the dispute between the
|
||||
parties. This License Agreement may be amended, altered or modified
|
||||
only by an instrument in writing, specifying such amendment,
|
||||
alteration or modification, executed by both parties. In the event
|
||||
that any provision of this License Agreement shall be held by a court
|
||||
or other tribunal of competent jurisdiction shall be unenforceable,
|
||||
such provision will be enforced to the maximum extent permissible and
|
||||
the remaining portions of this License Agreement shall remain in full
|
||||
force and effect. This License Agreement constituted and contains the
|
||||
entire agreement between the parties with respect to the subject
|
||||
matter hereof and supersedes any prior oral or written agreements. You
|
||||
hereby acknowledge that you have read and understand the forgoing
|
||||
License Agreement and agree that the action of installing the Program
|
||||
is an express acknowledgment of your agreement to be bound by the
|
||||
terms and conditions of this License Agreement. You also acknowledge
|
||||
and agree that this License Agreement is the complete and exclusive
|
||||
statement of the agreement between you and LGP and that this License
|
||||
Agreement supersedes any prior or contemporaneous agreement, either
|
||||
oral or written, and any other communications between you and LGP.
|
||||
|
||||
Linux Game Publishing LTD
|
||||
17 Rossington Road
|
||||
Nottingham, NG2 4HX, England
|
166
sdk_container/src/third_party/portage-stable/licenses/PUEL-12
vendored
Normal file
166
sdk_container/src/third_party/portage-stable/licenses/PUEL-12
vendored
Normal file
@ -0,0 +1,166 @@
|
||||
VirtualBox Extension Pack Personal Use and Educational License (PUEL)
|
||||
|
||||
License version 12, 22 July 2024
|
||||
|
||||
PLEASE READ THE FOLLOWING ORACLE VIRTUALBOX EXTENSION PACK PERSONAL USE
|
||||
AND EDUCATIONAL LICENSE CAREFULLY BEFORE DOWNLOADING OR USING THE ORACLE
|
||||
SOFTWARE. THESE TERMS AND CONDITIONS CONSTITUTE A LEGAL AGREEMENT BETWEEN
|
||||
YOU AND ORACLE.
|
||||
|
||||
ORACLE AMERICA, INC. ("ORACLE") IS WILLING TO LICENSE THE PRODUCT DEFINED
|
||||
IN SECTION 1 BELOW ONLY ON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS
|
||||
CONTAINED IN THIS VIRTUALBOX EXTENSION PACK PERSONAL USE AND EDUCATIONAL
|
||||
LICENSE AGREEMENT ("AGREEMENT").
|
||||
|
||||
IF YOU ARE AGREEING TO THIS LICENSE ON BEHALF OF AN ENTITY (RATHER THAN
|
||||
AS AN INDIVIDUAL HUMAN BEING), YOU REPRESENT THAT YOU HAVE THE APPROPRIATE
|
||||
AUTHORITY TO ACCEPT THESE TERMS AND CONDITIONS ON BEHALF OF SUCH ENTITY.
|
||||
|
||||
1 SUBJECT OF AGREEMENT. This Agreement governs your use of the binary
|
||||
software package called "Oracle VirtualBox Extension Pack" (the
|
||||
"Product"), which contains a set of additional features for "Oracle
|
||||
VirtualBox" that enhance the operation of multiple virtual machines
|
||||
("Guest Computers") on a single physical computer ("Host Computer"). The
|
||||
Product consists of executable files in machine code, script files, data
|
||||
files, and all documentation and updates provided to You by Oracle.
|
||||
|
||||
2 GRANT OF LICENSE. Oracle grants you a personal, non-exclusive,
|
||||
non-transferable, limited license without fees to reproduce, install,
|
||||
execute, and use internally the Product on Host Computers for your
|
||||
Personal Use, or Educational Use. "Personal Use" is noncommercial use
|
||||
solely by the person downloading the Product from Oracle on a single Host
|
||||
Computer, provided that no more than one client or remote computer is
|
||||
connected to that Host Computer and that client or remote computer is used
|
||||
solely to remotely view the Guest Computer(s). "Educational Use" is any
|
||||
use by teachers or students in an academic institution (schools, colleges
|
||||
and universities) as part of the institution's educational curriculum.
|
||||
Personal Use and/or Educational Use expressly exclude any use of the
|
||||
Product for commercial purposes or to operate, run, or act on behalf of or
|
||||
for the benefit of a business, organization, governmental organization, or
|
||||
educational institution.
|
||||
|
||||
Oracle reserves all rights not expressly granted in this license.
|
||||
|
||||
3 RESTRICTIONS AND RESERVATION OF RIGHTS.
|
||||
|
||||
(1) The Product and copies thereof provided to you under this Agreement
|
||||
are copyrighted and licensed, not sold, to you by Oracle.
|
||||
|
||||
(2) You may not do any of the following: (a) modify any part of the
|
||||
Product, except to the extent allowed in the documentation accompanying
|
||||
the Product; (b) rent, lease, lend, re-distribute, or encumber the
|
||||
Product; (c) remove or alter any proprietary legends or notices contained
|
||||
in the Product; or (d) decompile, or reverse engineer the Product
|
||||
(except to the extent permitted by applicable law).
|
||||
|
||||
(3) The Product is not designed, licensed or intended for use in the
|
||||
design, construction, operation or maintenance of any nuclear facility
|
||||
and Oracle and its licensors disclaim any express or implied warranty
|
||||
of fitness for such uses.
|
||||
|
||||
(4) No right, title or interest in or to any trademark, service mark, logo
|
||||
or trade name of Oracle or its licensors is granted under this Agreement.
|
||||
|
||||
4 TERMINATION. The Agreement is effective on the date you receive the
|
||||
Product and remains effective until terminated. Your rights under this
|
||||
Agreement will terminate immediately without notice from Oracle if
|
||||
you materially breach it or take any action in derogation of Oracle's
|
||||
and/or its licensors' rights to the Product. Oracle may terminate this
|
||||
Agreement immediately should any part of the Product become or in Oracle's
|
||||
reasonable opinion likely to become the subject of a claim of intellectual
|
||||
property infringement or trade secret misappropriation. Upon termination,
|
||||
you will cease use of and destroy all copies of the Product under your
|
||||
control and confirm compliance in writing to Oracle. Neither termination
|
||||
of this Agreement nor any deletion or removal of the Product shall limit
|
||||
any obligations you may have to Oracle, or any rights and/or remedies that
|
||||
Oracle may have with respect to any past or future infringing use of the
|
||||
Product (including but not limited to any use of the Product outside the
|
||||
scope of the license provided in the Agreement). Sections 3-9, inclusive,
|
||||
will survive termination of the Agreement.
|
||||
|
||||
5 DISCLAIMER OF WARRANTY. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW,
|
||||
ORACLE PROVIDES THE PRODUCT "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
||||
EXPRESS OR IMPLIED. WITHOUT LIMITING THE FOREGOING, ORACLE SPECIFICALLY
|
||||
DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||
PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT. The entire risk as
|
||||
to the quality and performance of the Product is with you. Should it
|
||||
prove defective, you assume the cost of all necessary servicing, repair,
|
||||
or correction.
|
||||
|
||||
6 LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW,
|
||||
IN NO EVENT WILL ORACLE OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE,
|
||||
PROFIT, DATA, OR DATA USE, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL,
|
||||
INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY
|
||||
OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO
|
||||
USE THE PRODUCT, EVEN IF ORACLE HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES. In no event will Oracle's liability to you, whether in
|
||||
contract, tort (including negligence), or otherwise, exceed the amount
|
||||
paid by you for the Product under this Agreement.
|
||||
|
||||
7 SEPARATELY LICENSED THIRD PARTY TECHNOLOGY. The Product may contain
|
||||
or require the use of third party technology that is provided with
|
||||
the Product. Oracle may provide certain notices to you in the Product's
|
||||
documentation, readmes or notice files in connection with such third party
|
||||
technology. Third party technology will be licensed to you either under
|
||||
the terms of this Agreement or, if specified in the documentation, readmes
|
||||
or notice files, under Separate Terms. Your rights to use Separately
|
||||
Licensed Third Party Technology under Separate Terms are not restricted
|
||||
in any way by this Agreement. However, for clarity, notwithstanding the
|
||||
existence of a notice, third party technology that is not Separately
|
||||
Licensed Third Party Technology shall be deemed part of the Product and
|
||||
is licensed to You under the terms of this Agreement. "Separate Terms"
|
||||
refers to separate license terms that are specified in the Product's
|
||||
documentation, readmes or notice files and that apply to Separately
|
||||
Licensed Third Party Technology. "Separately Licensed Third Party
|
||||
Technology" refers to third party technology that is licensed under
|
||||
Separate Terms and not under the terms of this Agreement.
|
||||
|
||||
8 EXPORT. Export laws and regulations of the United States and any other
|
||||
relevant local export laws and regulations apply to the Product. You
|
||||
agree that such export laws govern your use of the Product (including
|
||||
technical data) provided under this Agreement, and you agree to comply
|
||||
with all such export laws and regulations (including "deemed export" and
|
||||
"deemed re-export" regulations). You agree that no data, information,
|
||||
and/or Product (or direct product thereof) will be exported, directly or
|
||||
indirectly, in violation of these laws, or will be used for any purpose
|
||||
prohibited by these laws including, without limitation, nuclear, chemical,
|
||||
or biological weapons proliferation, or development of missile technology.
|
||||
|
||||
9 U.S. GOVERNMENT END USERS. Oracle programs, including the Product,
|
||||
any operating system, integrated software, any programs installed on
|
||||
hardware, and/or documentation, delivered to U.S. Government end users
|
||||
are "commercial computer software" pursuant to the applicable Federal
|
||||
Acquisition Regulation and agency-specific supplemental regulations. As
|
||||
such, use, duplication, disclosure, modification, and adaptation of
|
||||
the programs, including any operating system, integrated software,
|
||||
any programs installed on the hardware, and/or documentation, shall
|
||||
be subject to license terms and license restrictions applicable to the
|
||||
programs. No other rights are granted to the U.S. Government.
|
||||
|
||||
10 MISCELLANEOUS. This Agreement is the entire agreement between you
|
||||
and Oracle relating to its subject matter. It supersedes all prior or
|
||||
contemporaneous oral or written communications, proposals, representations
|
||||
and warranties and prevails over any conflicting or additional terms
|
||||
of any quote, order, acknowledgment, or other communication between
|
||||
the parties relating to its subject matter during the term of this
|
||||
Agreement. No modification of this Agreement will be binding, unless in
|
||||
writing and signed by an authorized representative of each party. If any
|
||||
provision of this Agreement is held to be unenforceable, this Agreement
|
||||
will remain in effect with the provision omitted, unless omission would
|
||||
frustrate the intent of the parties, in which case this Agreement will
|
||||
immediately terminate. This Agreement is governed by the laws of the
|
||||
State of California, USA, and you and Oracle agree to submit to the
|
||||
exclusive jurisdiction of, and venue in, the courts of San Francisco
|
||||
or Santa Clara counties in California in any dispute arising out of or
|
||||
relating to this Agreement. Upon 45 days written notice, Oracle may
|
||||
audit your use of the Product to confirm that you are in compliance
|
||||
with the terms of this Agreement. You agree to cooperate with Oracle's
|
||||
audit and provide reasonable assistance and access to information. Any
|
||||
such audit shall not unreasonably interfere with your normal business
|
||||
operations. You agree to pay within 30 days of written notification
|
||||
any fees applicable to your unlicensed use of the Product. You agree
|
||||
that Oracle shall not be responsible for any of your costs incurred in
|
||||
cooperating with the audit. If a legal action or proceeding is commenced
|
||||
by either party in connection with the enforcement of this Agreement,
|
||||
the prevailing party shall be entitled to its costs and attorneys'
|
||||
fees actually incurred in connection with such action or proceeding.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user