mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-09 14:06:58 +02:00
Merge pull request #1070 from flatcar/buildbot/weekly-portage-stable-package-updates-2023-08-14
Weekly portage-stable package updates 2023-08-14
This commit is contained in:
commit
f17d6774df
1
changelog/security/2023-08-15-weekly-updates.md
Normal file
1
changelog/security/2023-08-15-weekly-updates.md
Normal file
@ -0,0 +1 @@
|
||||
- intel-microcode ([CVE-2022-40982](https://nvd.nist.gov/vuln/detail/CVE-2022-40982), [CVE-2022-41804](https://nvd.nist.gov/vuln/detail/CVE-2022-41804), [CVE-2023-23908](https://nvd.nist.gov/vuln/detail/CVE-2023-23908))
|
4
changelog/updates/2023-08-15-weekly-updates.md
Normal file
4
changelog/updates/2023-08-15-weekly-updates.md
Normal file
@ -0,0 +1,4 @@
|
||||
- vim ([9.0.1678](https://github.com/vim/vim/commits/v9.0.1678))
|
||||
- qemu guest agent ([8.0.3](https://wiki.qemu.org/ChangeLog/8.0#Guest_agent))
|
||||
- cifs-utils ([7.0](https://lists.samba.org/archive/samba-technical/2022-August/137528.html))
|
||||
- intel-microcode ([20230808](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/microcode-20230808))
|
@ -11,8 +11,8 @@
|
||||
=app-crypt/efitools-1.9.2 ~arm64
|
||||
|
||||
# Needed to address CVE-2023-2609 and CVE-2023-2610.
|
||||
=app-editors/vim-9.0.1677 ~amd64 ~arm64
|
||||
=app-editors/vim-core-9.0.1677 ~amd64 ~arm64
|
||||
=app-editors/vim-9.0.1678 ~amd64 ~arm64
|
||||
=app-editors/vim-core-9.0.1678 ~amd64 ~arm64
|
||||
|
||||
# Needed by arm64-native SDK.
|
||||
=app-emulation/open-vmdk-1.0 *
|
||||
|
@ -1,5 +1,5 @@
|
||||
DIST vim-9.0.1403.tar.gz 16976705 BLAKE2B 9664d52de488086308fcbcda0b0a1167161afbf0efbb40dd9ce9e2393f0ada35e0a44d7f0c3f789d26ae1427604a281f689e87885fbb1557dce12a69898ec46d SHA512 bd83feba38a4aa9b3cf910a0b5a2c153abc4c6eaf9abf0ebee389879ff9ddee51c6f9dba5151aab5df3f73594cf8921d0a0e34121c50e65366cdcdd6482fd00f
|
||||
DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e4b82bee371148b19042478d3f974793477c3fc2d9ddff9233fa1ec3c864962880840867544e92464f1a0876f51 SHA512 2f3242ec0f79cf6affc2f7fdaf689c35d8597706ac1689dbbdc01352676199605bb37f22bd901f1e8d59f312237d3fce4bee8b979b28a744ea9e40558621980e
|
||||
DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b
|
||||
DIST vim-9.0.1677.tar.gz 17069398 BLAKE2B c4eb4e6f8bc7367c24191a8b2a6ea992d11a9bcef27659b60e2844bfa06490fe770937d2548187a45d0fbc8d1f0be2374457a0cdba9792137e02bdd1b9cd5dfb SHA512 8c50d8a6f081673023aa0dd607810fb652d25a46c955d0fa744faf557517a465160cf01b39d5ee6d2c93dd172635500ff7315e54565f7f628ee8f0f8dab8c291
|
||||
DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8
|
||||
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a
|
||||
|
@ -1,5 +1,5 @@
|
||||
DIST vim-9.0.1403.tar.gz 16976705 BLAKE2B 9664d52de488086308fcbcda0b0a1167161afbf0efbb40dd9ce9e2393f0ada35e0a44d7f0c3f789d26ae1427604a281f689e87885fbb1557dce12a69898ec46d SHA512 bd83feba38a4aa9b3cf910a0b5a2c153abc4c6eaf9abf0ebee389879ff9ddee51c6f9dba5151aab5df3f73594cf8921d0a0e34121c50e65366cdcdd6482fd00f
|
||||
DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e4b82bee371148b19042478d3f974793477c3fc2d9ddff9233fa1ec3c864962880840867544e92464f1a0876f51 SHA512 2f3242ec0f79cf6affc2f7fdaf689c35d8597706ac1689dbbdc01352676199605bb37f22bd901f1e8d59f312237d3fce4bee8b979b28a744ea9e40558621980e
|
||||
DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b
|
||||
DIST vim-9.0.1677.tar.gz 17069398 BLAKE2B c4eb4e6f8bc7367c24191a8b2a6ea992d11a9bcef27659b60e2844bfa06490fe770937d2548187a45d0fbc8d1f0be2374457a0cdba9792137e02bdd1b9cd5dfb SHA512 8c50d8a6f081673023aa0dd607810fb652d25a46c955d0fa744faf557517a465160cf01b39d5ee6d2c93dd172635500ff7315e54565f7f628ee8f0f8dab8c291
|
||||
DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8
|
||||
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a
|
||||
|
@ -16,7 +16,7 @@ SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
KEYWORDS="amd64 ~ppc ~ppc64 x86"
|
||||
|
||||
RDEPEND="dev-libs/glib"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
@ -7,3 +7,4 @@ DIST qemu-8.0.0-docs.tar.xz 3218024 BLAKE2B b764a625024e78a39470048355471e12cfb5
|
||||
DIST qemu-8.0.0.tar.xz 127835148 BLAKE2B 9b54aae10fe09691a26e68374723ded5fdda6409673b4de9461a25ee060cfd03968a16ddeadc21d48b9262e53aa6d4e5eb645376969f97c65807fad19607b04f SHA512 1f31d1e653dec2d35f1b7a5468ee3f471553b48eca8c8afafffcf9243c6b2260e78a5b73da3fe567f9b85d4133573eebd397747b3aec501fb24076263eb07b27
|
||||
DIST qemu-8.0.2.tar.xz 126707132 BLAKE2B f2b1a63e10c42aabfe39722c7732d0f04818ad367b769b3deb29c5bf9adcabc3aca1706f3c40fafeeb57ac1f7a61ded5066de32134c483e2fd27bc65b4b7d30a SHA512 4e915d33a662bf55b09247fb85150be376c92270d3764e3d6470c452cb70cc558f54e84de5610dd60a9eb3ea02d5d4277b1ec75c9804967d278fa8361c7f9b9a
|
||||
DIST qemu-8.0.3.tar.xz 126710536 BLAKE2B 071cc1a35209a02e8c5dd4f43cb112f110b4655adb0f870a04fdf9a6e2c761699574e8c9426f70f60787a99acf252d7a64d94a8e837cdfeda93d89428d7866f3 SHA512 18b2ccb65f7ec2ae92f0e04406539620c881e2b75f63816588c86043a07464bb99d16a83e792ed9508de393f4b694c46d52f4d07edf52741e85224c8b8d5d5c3
|
||||
DIST qemu-8.0.4.tar.xz 126179324 BLAKE2B dfb98964c629b251f0004b4630ae4500a52465579417d6f5c7dbbb1f672e10d8d7ffb98a4b00e26fb98b3c867208146dbdca026e4d30cbf1752ac733c4d9b915 SHA512 bd5ed682d51f974abd4be93f949701f9b5bfb87fd9929e31df130534da2f2c03b99adc9f924b3efd47d3b254e0e3c0046f4e69fbe9f6d0c4ac1f6babecb29449
|
||||
|
970
sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.0.4.ebuild
vendored
Normal file
970
sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.0.4.ebuild
vendored
Normal file
@ -0,0 +1,970 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-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="8.0.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=(
|
||||
tests/fp/berkeley-softfloat-3
|
||||
tests/fp/berkeley-testfloat-3
|
||||
ui/keycodemapdb
|
||||
)
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
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
|
||||
lzo multipath
|
||||
ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs
|
||||
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-util/systemtap )
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )
|
||||
"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# softmmu targets (qemu-system-*).
|
||||
SOFTMMU_TOOLS_DEPEND="
|
||||
>=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/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libX11
|
||||
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(+)] )
|
||||
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 )
|
||||
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}
|
||||
)
|
||||
)
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
$(python_gen_impl_dep)
|
||||
dev-lang/perl
|
||||
dev-util/meson
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
|
||||
)
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)
|
||||
"
|
||||
CDEPEND="
|
||||
${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}-8.0.0-make.patch
|
||||
"${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}-8.0.0-remove-python-meson-check.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_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"
|
||||
|
||||
# We already force -D_FORTIFY_SOURCE=2 (or 3) in our toolchain, but
|
||||
# this setting (-U then -D..=2) will prevent us from trying out 3, so
|
||||
# drop it. No change to level of protection b/c we patch our toolchain.
|
||||
sed -i -e 's/-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2//' configure || die
|
||||
|
||||
# Remove bundled modules
|
||||
rm -r dtc meson 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
|
||||
--with-git-submodules=ignore
|
||||
|
||||
# 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)"
|
||||
--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 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 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 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 docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
|
||||
# Disallow stripping of prebuilt firmware files.
|
||||
dostrip -x ${QA_PREBUILT}
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
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
|
||||
}
|
@ -9,8 +9,7 @@ DESCRIPTION="Base ISO character entities and utilities for SGML"
|
||||
HOMEPAGE="https://www.iso.org/standard/16387.html"
|
||||
SRC_URI="https://dev.gentoo.org/~floppym/dist/${PN}/${P}-gentoo.tar.gz"
|
||||
|
||||
# install-catalog is GPL
|
||||
LICENSE="FDL-1.1+ GPL-2"
|
||||
LICENSE="FDL-1.1+ 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"
|
||||
IUSE=""
|
||||
|
@ -22,5 +22,6 @@ DIST python-gentoo-patches-3.12.0b4.tar.xz 4660 BLAKE2B 50c8b2d80b33f26a274a8088
|
||||
DIST python-gentoo-patches-3.12.0b4_p1.tar.xz 7772 BLAKE2B 54bc9fa2a39d36e83b4fca11c5f1b19df96777a1abc18a1dbd894d83e1504971e52e861225af44201d0d2c1740559c6fde0a52fe4d97111a5c1acf61efc4b47d SHA512 8bc7d81255f6b8f6b7d6be84af0a778bbb51126154c0ff2f0f5bb1a5ebdaf1055a4e012bbf239a1bbd0c5ca7d98fe8257731d1cf916ba55c10fddd5e75f6f33b
|
||||
DIST python-gentoo-patches-3.12.0b4_p2.tar.xz 8132 BLAKE2B 4c1df7c8e1dda483724d8c3bb8ab7a7739fcdee16eaf1a2a5aeedb6011c13769ee9f2d0b1cf849df12aaf3230c0771b16533496539e1a0fab633e38699c8a75f SHA512 9051311d1e31163d13b8d2b1981d700ad2cf297b30f8d2867df8fe535fdb7da11efcb6fef8a201a76ff05aa8ae91c3679eeee72a729dc7249714796f6af2be9f
|
||||
DIST python-gentoo-patches-3.12.0rc1.tar.xz 5040 BLAKE2B c03e9cc0f5ef0a68ab5d74764a30b8ab336b2b0feb105124fcb6f1ba660db7c27deab412f91b0980b072dcbe6bca06b8f2f9fd11aa11e95196d936fc8ba75bbc SHA512 bc8d67ccff73e3841c9fb591f5b1b4db7156cea0bde4edc2de605d6e921b5998c6f67bf7f1be505bcd50bc55b8f844be2b011720b5a93b04e7bf60df38bd5373
|
||||
DIST python-gentoo-patches-3.12.0rc1_p1.tar.xz 5812 BLAKE2B 41a33aadac1bb563ec55f12794fc48061ef01d2bada0e9f06287410cd235286ed04c6fddb78bbec1d8a9fa54c46861198e03b4d995e715a5e739ac2c915e0941 SHA512 82e45ab804e7e269805b760dc5dae3803a9983765718b975ec2029c82ca45d6cfbd9ba330cf09149ed24cd808a37fb021b0c6a8324b855dce0a92ff01ef42391
|
||||
DIST python-gentoo-patches-3.8.17.tar.xz 32424 BLAKE2B d992f6b1c971583000086175d07198d367e4504dea8829b35742a3daf2279ba1fbade8c37f00018bda97fa9080d1d40087c236486bbcd369c2d1c850de47a976 SHA512 d309da6805a72742cf8d1bb170a777edd7b7aa936d6e9967e96bed4427285180cd9935f202f899f3aa54632a31a5a94c5b7c20a343b1a714d8aa5fc6f8e9f371
|
||||
DIST python-gentoo-patches-3.9.17.tar.xz 25048 BLAKE2B da19105dfa2fda7b422ac368f85c97d7541be74a6f9b9170a19ceac901e026ab39baef83c610172ecba1f70cce6e2832e956c2e4c87387b0e21c79c2c633b116 SHA512 ce9d3c62c675bceccaac21fd467c54322a55a1c8af9be3a6dcfd7a892c03b39b38dc35ba570e3dd9fc984a5f3eeabb3cc564ba2d7f935dbf6df829264cb32b2f
|
||||
|
526
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_rc1_p1.ebuild
vendored
Normal file
526
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_rc1_p1.ebuild
vendored
Normal file
@ -0,0 +1,526 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
|
||||
inherit python-utils-r1 toolchain-funcs verify-sig
|
||||
|
||||
MY_PV=${PV/_rc/rc}
|
||||
MY_P="Python-${MY_PV%_p*}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="
|
||||
https://www.python.org/
|
||||
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 libedit lto
|
||||
+ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
"
|
||||
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-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[extra-filters(+)]
|
||||
dev-python/ensurepip-pip
|
||||
dev-python/ensurepip-setuptools
|
||||
dev-python/ensurepip-wheel
|
||||
)
|
||||
valgrind? ( dev-util/valgrind )
|
||||
"
|
||||
# autoconf-archive needed to eautoreconf
|
||||
BDEPEND="
|
||||
sys-devel/autoconf-archive
|
||||
app-alternatives/awk
|
||||
virtual/pkgconfig
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
|
||||
"
|
||||
RDEPEND+="
|
||||
!build? ( app-misc/mime-types )
|
||||
"
|
||||
if [[ ${PV} != *_alpha* ]]; then
|
||||
RDEPEND+="
|
||||
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
|
||||
"
|
||||
fi
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
|
||||
|
||||
# large file tests involve a 2.5G file being copied (duplicated)
|
||||
CHECKREQS_DISK_BUILD=5500M
|
||||
|
||||
QA_PKGCONFIG_VERSION=${PYVER}
|
||||
# false positives -- functions specific to *BSD
|
||||
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
|
||||
|
||||
pkg_pretend() {
|
||||
use test && check-reqs_pkg_pretend
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use test && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat and libffi are not used.
|
||||
# TODO: Makefile has annoying deps on expat headers
|
||||
#rm -r Modules/expat || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
# force the correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local disable
|
||||
# disable automagic bluetooth headers detection
|
||||
if ! use bluetooth; then
|
||||
local -x ac_cv_header_bluetooth_bluetooth_h=no
|
||||
fi
|
||||
|
||||
append-flags -fwrapv
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if is-flagq -flto || is-flagq '-flto=*'; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
# PKG_CONFIG needed for cross.
|
||||
tc-export CXX PKG_CONFIG
|
||||
|
||||
local dbmliborder=
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
if use pgo; then
|
||||
local profile_task_flags=(
|
||||
-m test
|
||||
"-j$(makeopts_jobs)"
|
||||
--pgo-extended
|
||||
-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
|
||||
|
||||
-x test_gdb
|
||||
-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
|
||||
)
|
||||
|
||||
if has_version "app-arch/rpm" ; then
|
||||
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
|
||||
profile_task_flags+=(
|
||||
-x test_distutils
|
||||
)
|
||||
fi
|
||||
local -x PROFILE_TASK="${profile_task_flags[*]}"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
--without-static-libpython
|
||||
--enable-ipv6
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--with-system-expat
|
||||
--with-platlibdir=lib
|
||||
--with-pkg-config=yes
|
||||
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
|
||||
|
||||
$(use_with debug assertions)
|
||||
$(use_with lto)
|
||||
$(use_enable pgo optimizations)
|
||||
$(use_with readline readline "$(usex libedit editline readline)")
|
||||
$(use_with valgrind)
|
||||
)
|
||||
|
||||
# disable implicit optimization/debugging flags
|
||||
local -x OPT=
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
|
||||
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
|
||||
local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
|
||||
# We need to build our own Python on CBUILD first, and feed it in.
|
||||
# bug #847910
|
||||
local myeconfargs_cbuild=(
|
||||
"${myeconfargs[@]}"
|
||||
|
||||
--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
|
||||
)
|
||||
|
||||
myeconfargs+=(
|
||||
# Point the imminent CHOST build to the Python we just
|
||||
# built for CBUILD.
|
||||
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
|
||||
)
|
||||
|
||||
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
|
||||
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
|
||||
# We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
|
||||
# libdir correctly for cross.
|
||||
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
|
||||
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
|
||||
|
||||
# Avoid as many dependencies as possible for the cross build.
|
||||
cat >> Makefile <<-EOF || die
|
||||
MODULE_NIS_STATE=disabled
|
||||
MODULE__DBM_STATE=disabled
|
||||
MODULE__GDBM_STATE=disabled
|
||||
MODULE__DBM_STATE=disabled
|
||||
MODULE__SQLITE3_STATE=disabled
|
||||
MODULE__HASHLIB_STATE=disabled
|
||||
MODULE__SSL_STATE=disabled
|
||||
MODULE__CURSES_STATE=disabled
|
||||
MODULE__CURSES_PANEL_STATE=disabled
|
||||
MODULE_READLINE_STATE=disabled
|
||||
MODULE__TKINTER_STATE=disabled
|
||||
MODULE_PYEXPAT_STATE=disabled
|
||||
MODULE_ZLIB_STATE=disabled
|
||||
EOF
|
||||
|
||||
# Unfortunately, we do have to build this immediately, and
|
||||
# not in src_compile, because CHOST configure for Python
|
||||
# will check the existence of the --with-build-python value
|
||||
# immediately.
|
||||
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
|
||||
popd &> /dev/null || die
|
||||
fi
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
local -x CFLAGS_NODIST=${CFLAGS}
|
||||
local -x LDFLAGS_NODIST=${LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
if use ncurses; then
|
||||
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
|
||||
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
|
||||
# force-disable modules we don't want built
|
||||
local disable_modules=( NIS )
|
||||
use gdbm || disable_modules+=( _GDBM _DBM )
|
||||
use sqlite || disable_modules+=( _SQLITE3 )
|
||||
use ssl || disable_modules+=( _HASHLIB _SSL )
|
||||
use ncurses || disable_modules+=( _CURSES _CURSES_PANEL )
|
||||
use readline || disable_modules+=( READLINE )
|
||||
use tk || disable_modules+=( _TKINTER )
|
||||
|
||||
local mod
|
||||
for mod in "${disable_modules[@]}"; do
|
||||
echo "MODULE_${mod}_STATE=disabled"
|
||||
done >> Makefile || die
|
||||
|
||||
# install epython.py as part of stdlib
|
||||
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
export PYTHONSTRICTEXTENSIONBUILD=1
|
||||
|
||||
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
|
||||
# end up writing bytecode & violating sandbox.
|
||||
# bug #831897
|
||||
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
if use pgo ; then
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
addpredict "/usr/lib/python${PYVER}/site-packages"
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
# in _sysconfigdata*
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Restore saved value from above.
|
||||
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# this just happens to skip test_support.test_freeze that is broken
|
||||
# without bundled expat
|
||||
# TODO: get a proper skip for it upstream
|
||||
local -x LOGNAME=buildbot
|
||||
|
||||
local test_opts=(
|
||||
-u-network
|
||||
-j "$(makeopts_jobs)"
|
||||
|
||||
# fails
|
||||
-x test_gdb
|
||||
)
|
||||
|
||||
if use sparc ; then
|
||||
# bug #788022
|
||||
test_opts+=(
|
||||
-x test_multiprocessing_fork
|
||||
-x test_multiprocessing_forkserver
|
||||
)
|
||||
fi
|
||||
|
||||
# workaround docutils breaking tests
|
||||
cat > Lib/docutils.py <<-EOF || die
|
||||
raise ImportError("Thou shalt not import!")
|
||||
EOF
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
# workaround https://bugs.gentoo.org/775416
|
||||
addwrite "/usr/lib/python${PYVER}/site-packages"
|
||||
|
||||
nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local ret=${?}
|
||||
|
||||
rm Lib/docutils.py || die
|
||||
|
||||
[[ ${ret} -eq 0 ]] || die "emake test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
# the Makefile rules are broken
|
||||
# https://github.com/python/cpython/issues/100221
|
||||
mkdir -p "${libdir}"/lib-dynload || die
|
||||
|
||||
# -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
|
||||
# 2to3, pydoc
|
||||
ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local v
|
||||
for v in ${REPLACING_VERSIONS}; do
|
||||
if ver_test "${v}" -lt 3.11.0_beta4-r2; then
|
||||
ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files"
|
||||
ewarn "installed previously are no longer valid and will be regenerated"
|
||||
ewarn "(or ignored) on the next import. This may cause sandbox failures"
|
||||
ewarn "when installing some packages and checksum mismatches when removing"
|
||||
ewarn "old versions. To actively prevent this, rebuild all packages"
|
||||
ewarn "installing Python 3.11 modules, e.g. using:"
|
||||
ewarn
|
||||
ewarn " emerge -1v /usr/lib/python3.11/site-packages"
|
||||
fi
|
||||
done
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST boost_1_82_0.tar.bz2 121325129 BLAKE2B 16ee164ce7114d8134c861b3652c842750cec63ab0e79e4386d8cb9c56f7a454f9a9cfa75f25d9132a8d8d9e6f39d32a8e7535f83f52f355bbc40ef530163fa5 SHA512 6fddc452ca67f99f5c181e21c73d96feb7346e10886477c91b4abc2cdf447750599e0d42f935ef591222200ef6c033de078a7ad2bb577c81fa56a249b17420cb
|
||||
DIST boost_1_83_0.tar.bz2 122892751 BLAKE2B c4af1713712da82f964fe08451141ea96905e30b475ee5090bf87ae6e43bcb1f258ab92e16e992fd22405e8cd85a435cef76a22b98788d9960396a4fec8c4c62 SHA512 d133b521bd754dc35a9bd30d8032bd2fd866026d90af2179e43bfd7bd816841f7f3b84303f52c0e54aebc373f4e4edd601a8f5a5e0c47500e0e852e04198a711
|
||||
|
350
sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.83.0-r1.ebuild
vendored
Normal file
350
sdk_container/src/third_party/portage-stable/dev-libs/boost/boost-1.83.0-r1.ebuild
vendored
Normal file
@ -0,0 +1,350 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit flag-o-matic multiprocessing python-r1 toolchain-funcs multilib-minimal
|
||||
|
||||
MY_PV="$(ver_rs 1- _)"
|
||||
|
||||
DESCRIPTION="Boost Libraries for C++"
|
||||
HOMEPAGE="https://www.boost.org/"
|
||||
SRC_URI="https://boostorg.jfrog.io/artifactory/main/release/${PV}/source/boost_${MY_PV}.tar.bz2"
|
||||
S="${WORKDIR}/${PN}_${MY_PV}"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="0/${PV}" # ${PV} instead of the major version due to bug 486122
|
||||
#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="bzip2 +context debug doc icu lzma +nls mpi numpy python +stacktrace tools zlib zstd"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
# the tests will never fail because these are not intended as sanity
|
||||
# tests at all. They are more a way for upstream to check their own code
|
||||
# on new compilers. Since they would either be completely unreliable
|
||||
# (failing for no good reason) or completely useless (never failing)
|
||||
# there is no point in having them in the ebuild to begin with.
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] )
|
||||
icu? ( >=dev-libs/icu-3.6:=[${MULTILIB_USEDEP}] )
|
||||
!icu? ( virtual/libiconv[${MULTILIB_USEDEP}] )
|
||||
lzma? ( app-arch/xz-utils:=[${MULTILIB_USEDEP}] )
|
||||
mpi? ( >=virtual/mpi-2.0-r4[${MULTILIB_USEDEP},cxx,threads] )
|
||||
python? (
|
||||
${PYTHON_DEPS}
|
||||
numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
|
||||
)
|
||||
zlib? ( sys-libs/zlib:=[${MULTILIB_USEDEP}] )
|
||||
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND=">=dev-util/b2-4.9.2"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.81.0-disable_icu_rpath.patch
|
||||
"${FILESDIR}"/${PN}-1.79.0-context-x32.patch
|
||||
"${FILESDIR}"/${PN}-1.79.0-build-auto_index-tool.patch
|
||||
# Boost.MPI's __init__.py doesn't work on Py3
|
||||
"${FILESDIR}"/${PN}-1.79.0-boost-mpi-python-PEP-328.patch
|
||||
"${FILESDIR}"/${PN}-1.81.0-phoenix-multiple-definitions.patch
|
||||
)
|
||||
|
||||
python_bindings_needed() {
|
||||
multilib_is_native_abi && use python
|
||||
}
|
||||
|
||||
tools_needed() {
|
||||
multilib_is_native_abi && use tools
|
||||
}
|
||||
|
||||
create_user-config.jam() {
|
||||
local user_config_jam="${BUILD_DIR}"/user-config.jam
|
||||
if [[ -s ${user_config_jam} ]]; then
|
||||
einfo "${user_config_jam} already exists, skipping configuration"
|
||||
return
|
||||
else
|
||||
einfo "Creating configuration in ${user_config_jam}"
|
||||
fi
|
||||
|
||||
local compiler compiler_version compiler_executable="$(tc-getCXX)"
|
||||
compiler="gcc"
|
||||
compiler_version="$(gcc-version)"
|
||||
|
||||
if use mpi; then
|
||||
local mpi_configuration="using mpi ;"
|
||||
fi
|
||||
|
||||
cat > "${user_config_jam}" <<- __EOF__ || die
|
||||
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CPPFLAGS} ${CFLAGS}" <cxxflags>"${CPPFLAGS} ${CXXFLAGS}" <linkflags>"${LDFLAGS}" <archiver>"$(tc-getAR)" <ranlib>"$(tc-getRANLIB)" ;
|
||||
${mpi_configuration}
|
||||
__EOF__
|
||||
|
||||
if python_bindings_needed; then
|
||||
append_to_user_config() {
|
||||
local py_config
|
||||
if tc-is-cross-compiler; then
|
||||
py_config="using python : ${EPYTHON#python} : : ${ESYSROOT}/usr/include/${EPYTHON} : ${ESYSROOT}/usr/$(get_libdir) ;"
|
||||
else
|
||||
py_config="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) ;"
|
||||
fi
|
||||
echo "${py_config}" >> "${user_config_jam}" || die
|
||||
}
|
||||
python_foreach_impl append_to_user_config
|
||||
fi
|
||||
|
||||
if python_bindings_needed && use numpy; then
|
||||
einfo "Enabling support for NumPy extensions in Boost.Python"
|
||||
else
|
||||
einfo "Disabling support for NumPy extensions in Boost.Python"
|
||||
|
||||
# Boost.Build does not allow for disabling of numpy
|
||||
# extensions, thereby leading to automagic numpy
|
||||
# https://github.com/boostorg/python/issues/111#issuecomment-280447482
|
||||
sed \
|
||||
-e 's/\[ unless \[ python\.numpy \] : <build>no \]/<build>no/g' \
|
||||
-i "${BUILD_DIR}"/libs/python/build/Jamfile || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
# Bail out on unsupported build configuration, bug #456792
|
||||
if [[ -f "${EROOT}"/etc/site-config.jam ]]; then
|
||||
if ! grep -q 'gentoo\(debug\|release\)' "${EROOT}"/etc/site-config.jam; then
|
||||
eerror "You are using custom ${EROOT}/etc/site-config.jam without defined gentoorelease/gentoodebug targets."
|
||||
eerror "Boost can not be built in such configuration."
|
||||
eerror "Please, either remove this file or add targets from ${EROOT}/usr/share/boost-build/site-config.jam to it."
|
||||
die "Unsupported target in ${EROOT}/etc/site-config.jam"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
multilib_copy_sources
|
||||
}
|
||||
|
||||
ejam() {
|
||||
create_user-config.jam
|
||||
|
||||
local b2_opts=( "--user-config=${BUILD_DIR}/user-config.jam" )
|
||||
if python_bindings_needed; then
|
||||
append_to_b2_opts() {
|
||||
b2_opts+=( python="${EPYTHON#python}" )
|
||||
}
|
||||
python_foreach_impl append_to_b2_opts
|
||||
else
|
||||
b2_opts+=( --without-python )
|
||||
fi
|
||||
b2_opts+=( "$@" )
|
||||
|
||||
echo b2 "${b2_opts[@]}" >&2
|
||||
b2 "${b2_opts[@]}"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Workaround for too many parallel processes requested, bug #506064
|
||||
[[ "$(makeopts_jobs)" -gt 64 ]] && MAKEOPTS="${MAKEOPTS} -j64"
|
||||
|
||||
# We don't want to end up with -L/usr/lib on our linker lines
|
||||
# which then gives us lots of
|
||||
# skipping incompatible /usr/lib/libc.a when searching for -lc
|
||||
# warnings
|
||||
[[ -n ${ESYSROOT} ]] && local icuarg="-sICU_PATH=${ESYSROOT}/usr"
|
||||
|
||||
OPTIONS=(
|
||||
$(usex debug gentoodebug gentoorelease)
|
||||
"-j$(makeopts_jobs)"
|
||||
-q
|
||||
-d+2
|
||||
pch=off
|
||||
$(usex icu "${icuarg}" '--disable-icu boost.locale.icu=off')
|
||||
$(usev !mpi --without-mpi)
|
||||
$(usev !nls --without-locale)
|
||||
$(usev !context '--without-context --without-coroutine --without-fiber')
|
||||
$(usev !stacktrace --without-stacktrace)
|
||||
--boost-build="${BROOT}"/usr/share/b2/src
|
||||
--layout=system
|
||||
# building with threading=single is currently not possible
|
||||
# https://svn.boost.org/trac/boost/ticket/7105
|
||||
threading=multi
|
||||
link=shared
|
||||
# this seems to be the only way to disable compression algorithms
|
||||
# https://www.boost.org/doc/libs/1_70_0/libs/iostreams/doc/installation.html#boost-build
|
||||
-sNO_BZIP2=$(usex bzip2 0 1)
|
||||
-sNO_LZMA=$(usex lzma 0 1)
|
||||
-sNO_ZLIB=$(usex zlib 0 1)
|
||||
-sNO_ZSTD=$(usex zstd 0 1)
|
||||
)
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]]; then
|
||||
# We need to add the prefix, and in two cases this exceeds, so prepare
|
||||
# for the largest possible space allocation.
|
||||
append-ldflags -Wl,-headerpad_max_install_names
|
||||
fi
|
||||
|
||||
# Use C++17 globally as of 1.80
|
||||
append-cxxflags -std=c++17
|
||||
|
||||
if [[ ${CHOST} != *-darwin* ]]; then
|
||||
# On modern macOS, file I/O is already 64-bit by default,
|
||||
# there's no support for special options like O_LARGEFILE.
|
||||
# Thus, LFS must be disabled.
|
||||
#
|
||||
# On other systems, we need to enable LFS explicitly for 64-bit
|
||||
# offsets on 32-bit hosts (#894564)
|
||||
append-lfs-flags
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
ejam \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
"${OPTIONS[@]}" || die
|
||||
|
||||
if tools_needed; then
|
||||
pushd tools >/dev/null || die
|
||||
ejam \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
"${OPTIONS[@]}" \
|
||||
|| die "Building of Boost tools failed"
|
||||
popd >/dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
ejam \
|
||||
--prefix="${ED}"/usr \
|
||||
--includedir="${ED}"/usr/include \
|
||||
--libdir="${ED}"/usr/$(get_libdir) \
|
||||
"${OPTIONS[@]}" install || die "Installation of Boost libraries failed"
|
||||
|
||||
if tools_needed; then
|
||||
dobin dist/bin/*
|
||||
|
||||
insinto /usr/share
|
||||
doins -r dist/share/boostbook
|
||||
fi
|
||||
|
||||
# boost's build system truely sucks for not having a destdir. Because for
|
||||
# this reason we are forced to build with a prefix that includes the
|
||||
# DESTROOT, dynamic libraries on Darwin end messed up, referencing the
|
||||
# DESTROOT instread of the actual EPREFIX. There is no way out of here
|
||||
# but to do it the dirty way of manually setting the right install_names.
|
||||
if [[ ${CHOST} == *-darwin* ]]; then
|
||||
einfo "Working around completely broken build-system(tm)"
|
||||
local d
|
||||
for d in "${ED}"/usr/lib/*.dylib; do
|
||||
if [[ -f ${d} ]]; then
|
||||
# fix the "soname"
|
||||
ebegin " correcting install_name of ${d#${ED}}"
|
||||
install_name_tool -id "/${d#${D}}" "${d}"
|
||||
eend $?
|
||||
# fix references to other libs
|
||||
# these paths look like this:
|
||||
# bin.v2/libs/thread/build/gcc-12.1/gentoorelease/pch-off/
|
||||
# threadapi-pthread/threading-multi/visibility-hidden/
|
||||
# libboost_thread.dylib
|
||||
refs=$(otool -XL "${d}" | \
|
||||
sed -e '1d' -e 's/^\t//' | \
|
||||
grep "libboost_" | \
|
||||
cut -f1 -d' ')
|
||||
local r
|
||||
for r in ${refs}; do
|
||||
# strip path prefix from references, so we obtain
|
||||
# something like libboost_thread.dylib.
|
||||
local r_basename=${r##*/}
|
||||
|
||||
ebegin " correcting reference to ${r_basename}"
|
||||
install_name_tool -change \
|
||||
"${r}" \
|
||||
"${EPREFIX}/usr/lib/${r_basename}" \
|
||||
"${d}"
|
||||
eend $?
|
||||
done
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
if ! use numpy; then
|
||||
rm -r "${ED}"/usr/include/boost/python/numpy* || die
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
if use mpi; then
|
||||
move_mpi_py_into_sitedir() {
|
||||
python_moduleinto boost
|
||||
python_domodule "${S}"/libs/mpi/build/__init__.py
|
||||
|
||||
python_domodule "${ED}"/usr/$(get_libdir)/boost-${EPYTHON}/mpi.so
|
||||
rm -r "${ED}"/usr/$(get_libdir)/boost-${EPYTHON} || die
|
||||
|
||||
python_optimize
|
||||
}
|
||||
python_foreach_impl move_mpi_py_into_sitedir
|
||||
else
|
||||
rm -r "${ED}"/usr/include/boost/mpi/python* || die
|
||||
fi
|
||||
else
|
||||
rm -r "${ED}"/usr/include/boost/{python*,mpi/python*,parameter/aux_/python,parameter/python*} || die
|
||||
fi
|
||||
|
||||
if ! use nls; then
|
||||
rm -r "${ED}"/usr/include/boost/locale || die
|
||||
fi
|
||||
|
||||
if ! use context; then
|
||||
rm -r "${ED}"/usr/include/boost/context || die
|
||||
rm -r "${ED}"/usr/include/boost/coroutine{,2} || die
|
||||
rm "${ED}"/usr/include/boost/asio/spawn.hpp || die
|
||||
fi
|
||||
|
||||
if use doc; then
|
||||
# find extraneous files that shouldn't be installed
|
||||
# as part of the documentation and remove them.
|
||||
find libs/*/* \( -iname 'test' -o -iname 'src' \) -exec rm -rf '{}' + || die
|
||||
find doc \( -name 'Jamfile.v2' -o -name 'build' -o -name '*.manifest' \) -exec rm -rf '{}' + || die
|
||||
find tools \( -name 'Jamfile.v2' -o -name 'src' -o -name '*.cpp' -o -name '*.hpp' \) -exec rm -rf '{}' + || die
|
||||
|
||||
docinto html
|
||||
dodoc *.{htm,html,png,css}
|
||||
dodoc -r doc libs more tools
|
||||
|
||||
# To avoid broken links
|
||||
dodoc LICENSE_1_0.txt
|
||||
|
||||
dosym ../../../../include/boost /usr/share/doc/${PF}/html/boost
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Yay for having symlinks that are nigh-impossible to remove without
|
||||
# resorting to dirty hacks like these. Removes lingering symlinks
|
||||
# from the slotted versions.
|
||||
local symlink
|
||||
for symlink in "${EROOT}"/usr/include/boost "${EROOT}"/usr/share/boostbook; do
|
||||
if [[ -L ${symlink} ]]; then
|
||||
rm -f "${symlink}" || die
|
||||
fi
|
||||
done
|
||||
|
||||
# some ancient installs still have boost cruft lying around
|
||||
# for unknown reasons, causing havoc for reverse dependencies
|
||||
# Bug: 607734
|
||||
rm -rf "${EROOT}"/usr/include/boost-1_[3-5]? || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Boost.Regex is *extremely* ABI sensitive. If you get errors such as"
|
||||
elog
|
||||
elog " undefined reference to \`boost::re_detail_$(ver_cut 1)0$(ver_cut 2)00::cpp_regex_traits_implementation"
|
||||
elog " <char>::transform_primary[abi:cxx11](char const*, char const*) const'"
|
||||
elog
|
||||
elog "Then you need to recompile Boost and all its reverse dependencies"
|
||||
elog "using the same toolchain. In general, *every* change of the C++ toolchain"
|
||||
elog "requires a complete rebuild of the Boost-dependent ecosystem."
|
||||
elog
|
||||
elog "See for instance https://bugs.gentoo.org/638138"
|
||||
}
|
@ -15,6 +15,7 @@
|
||||
<flag name="doc">Install the full API documentation documentation. This takes over 200MB of extra disk space.</flag>
|
||||
<flag name="nls">Build libboost_locale. This library requires compatible C library interfaces, which might not be provided by uClibc or other embedded libraries.</flag>
|
||||
<flag name="numpy">Optionally build NumPy extensions when Boost.Python is enabled</flag>
|
||||
<flag name="stacktrace">Build the full Boost.Stacktrace dynamic library instead of relying on the header-only implementation</flag>
|
||||
<flag name="tools">Build and install the boost tools (bcp, quickbook, inspect, wave)</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
|
@ -16,7 +16,7 @@ IUSE="dbus debug +elf gtk-doc +mime selinux static-libs sysprof systemtap test u
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="gtk-doc? ( test )" # Bug #777636
|
||||
|
||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~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"
|
||||
|
||||
# * elfutils (via libelf) does not build on Windows. gresources are not embedded
|
||||
# within ELF binaries on that platform anyway and inspecting ELF binaries from
|
||||
|
@ -11,7 +11,7 @@ HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/li
|
||||
SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
|
||||
SRC_URI+=" verify-sig? ( https://${PN}.freedesktop.org/releases/${P}.tar.xz.asc )"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 ISC"
|
||||
LICENSE="BEER-WARE BSD BSD-2 BSD-4 ISC MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="static-libs"
|
||||
|
@ -14,7 +14,7 @@ if [[ ${PV} != *_rc* ]] ; then
|
||||
# Only the final releases are available here.
|
||||
SRC_URI="https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2
|
||||
https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
|
||||
verify-sig? ( https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2.sig )"
|
||||
verify-sig? ( https://github.com/PCRE2Project/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2.sig )"
|
||||
else
|
||||
SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
|
||||
fi
|
||||
|
@ -26,6 +26,6 @@
|
||||
</slots>
|
||||
<upstream>
|
||||
<remote-id type="cpe">cpe:/a:pcre:pcre</remote-id>
|
||||
<remote-id type="github">PhilipHazel/pcre2</remote-id>
|
||||
<remote-id type="github">PCRE2Project/pcre2</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
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="BSD BSD-2 ISC MIT"
|
||||
|
@ -1,5 +1,6 @@
|
||||
DIST libxml2-2.10.4.tar.xz 2643600 BLAKE2B 5bbb63c6e58accf434513aeb974fed7349e5458de642ef89db77768c8d1383532614254e0e3f1d9471e2274c6b81a04a0a3afcb602707ce79550c2bd8e9028d9 SHA512 792c1dceb098cd353a7eca4c46d31cce6310b2553d97fd3918cf0b94d93b2480759202036511bde36c24166236bd4616f57e79959eea9afe3f60614bdfe13094
|
||||
DIST libxml2-2.11.4.tar.xz 2626756 BLAKE2B 5d7e6388291a8473195131f5cb22aee9a4182f28fd8eed468c449b762d363cfb1713a7466c1f98e96cf819ed8f78e13a6ba930c2fadd8d63869b6efe8e8be8a8 SHA512 c1df7441c729430bdd2de52e9da69b171afc4b776e4a2eb43acbc71ada7a3814a465247fb5fca4c83ecf1c281f7745069ec3d051a7964cb7cc119a3d983f93ba
|
||||
DIST libxml2-2.11.5.tar.xz 2628132 BLAKE2B 4af53ef7c19cfcddcf3de5c694a1b03cf4212f8e4c4cb3d873a897fddd8a89d7a52d049a8b85e96c6cdb471689aa385512d87b9710074e90583bf7ad46319172 SHA512 8f087cdaf61957567f04280facc70211c09ca131a532fd13ed4bfc38ddec50e44b1f842b108e635bd4205232036a3e1097904ac016f1fd135bacd17aebb04272
|
||||
DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733
|
||||
DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288
|
||||
DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe
|
||||
|
196
sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.5.ebuild
vendored
Normal file
196
sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.5.ebuild
vendored
Normal file
@ -0,0 +1,196 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Note: Please bump in sync with dev-libs/libxslt
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="xml(+)"
|
||||
inherit flag-o-matic python-r1 multilib-minimal
|
||||
|
||||
XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite"
|
||||
XSTS_NAME_1="xmlschema2002-01-16"
|
||||
XSTS_NAME_2="xmlschema2004-01-14"
|
||||
XSTS_TARBALL_1="xsts-2002-01-16.tar.gz"
|
||||
XSTS_TARBALL_2="xsts-2004-01-14.tar.gz"
|
||||
XMLCONF_TARBALL="xmlts20130923.tar.gz"
|
||||
|
||||
DESCRIPTION="XML C parser and toolkit"
|
||||
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
|
||||
inherit autotools git-r3
|
||||
else
|
||||
inherit gnome.org libtool
|
||||
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
|
||||
|
||||
SRC_URI+="
|
||||
test? (
|
||||
${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1}
|
||||
${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2}
|
||||
https://www.w3.org/XML/Test/${XMLCONF_TARBALL}
|
||||
)
|
||||
"
|
||||
S="${WORKDIR}/${PN}-${PV%_rc*}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="2"
|
||||
IUSE="debug examples +ftp icu lzma +python readline static-libs test"
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
virtual/libiconv
|
||||
>=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
|
||||
icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
|
||||
lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
BDEPEND+=" dev-util/gtk-doc-am"
|
||||
fi
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/xml2-config
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
local tarname=${P/_rc/-rc}.tar.xz
|
||||
|
||||
# ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR},
|
||||
# as they are needed as tarballs in ${S}/xstc instead and not unpacked
|
||||
unpack ${tarname}
|
||||
|
||||
if [[ -n ${PATCHSET_VERSION} ]] ; then
|
||||
unpack ${PN}-${PATCHSET_VERSION}.tar.bz2
|
||||
fi
|
||||
fi
|
||||
|
||||
cd "${S}" || die
|
||||
|
||||
if use test ; then
|
||||
cp "${DISTDIR}/${XSTS_TARBALL_1}" \
|
||||
"${DISTDIR}/${XSTS_TARBALL_2}" \
|
||||
"${S}"/xstc/ \
|
||||
|| die "Failed to install test tarballs"
|
||||
unpack ${XMLCONF_TARBALL}
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
eautoreconf
|
||||
else
|
||||
# Please do not remove, as else we get references to PORTAGE_TMPDIR
|
||||
# in /usr/lib/python?.?/site-packages/libxml2mod.la among things.
|
||||
elibtoolize
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# Filter seemingly problematic CFLAGS (bug #26320)
|
||||
filter-flags -fprefetch-loop-arrays -funroll-loops
|
||||
|
||||
# Notes:
|
||||
# The meaning of the 'debug' USE flag does not apply to the --with-debug
|
||||
# switch (enabling the libxml2 debug module). See bug #100898.
|
||||
libxml2_configure() {
|
||||
ECONF_SOURCE="${S}" econf \
|
||||
--enable-ipv6 \
|
||||
$(use_with ftp) \
|
||||
$(use_with debug run-debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with lzma) \
|
||||
$(use_enable static-libs static) \
|
||||
$(multilib_native_use_with readline) \
|
||||
$(multilib_native_use_with readline history) \
|
||||
"$@"
|
||||
}
|
||||
|
||||
# Build python bindings separately
|
||||
libxml2_configure --without-python
|
||||
|
||||
multilib_is_native_abi && use python &&
|
||||
python_foreach_impl run_in_build_dir libxml2_configure --with-python
|
||||
}
|
||||
|
||||
libxml2_py_emake() {
|
||||
pushd "${BUILD_DIR}"/python >/dev/null || die
|
||||
|
||||
emake top_builddir="${NATIVE_BUILD_DIR}" "$@"
|
||||
|
||||
popd >/dev/null || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
NATIVE_BUILD_DIR="${BUILD_DIR}"
|
||||
python_foreach_impl run_in_build_dir libxml2_py_emake all
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
ln -s "${S}"/xmlconf || die
|
||||
|
||||
emake check
|
||||
|
||||
multilib_is_native_abi && use python &&
|
||||
python_foreach_impl run_in_build_dir libxml2_py_emake check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
multilib_is_native_abi && use python &&
|
||||
python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install
|
||||
|
||||
# Hack until automake release is made for the optimise fix
|
||||
# https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097
|
||||
multilib_is_native_abi && use python && python_foreach_impl python_optimize
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
if ! use examples ; then
|
||||
rm -rf "${ED}"/usr/share/doc/${PF}/examples || die
|
||||
rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die
|
||||
fi
|
||||
|
||||
rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die
|
||||
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
|
||||
# be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
|
||||
if [[ -n "${ROOT}" ]]; then
|
||||
elog "Skipping XML catalog creation for stage building (bug #208887)."
|
||||
else
|
||||
# Need an XML catalog, so no-one writes to a non-existent one
|
||||
CATALOG="${EROOT}/etc/xml/catalog"
|
||||
|
||||
# We don't want to clobber an existing catalog though,
|
||||
# only ensure that one is there
|
||||
# <obz@gentoo.org>
|
||||
if [[ ! -e "${CATALOG}" ]]; then
|
||||
[[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
|
||||
"${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
|
||||
einfo "Created XML catalog in ${CATALOG}"
|
||||
fi
|
||||
fi
|
||||
}
|
@ -1,4 +1 @@
|
||||
DIST platformdirs-3.10.0.tar.gz 19203 BLAKE2B 951568733e4c3324d5817b3d9451aa5cc1d08afcce690a574357551f4452192cc98d406c6fc5c7d65d0a1f1d6111cb39a0877994e52021652c8c054add54f258 SHA512 39c068dad3fe6ec85247a8957c0fcfb27207e78041686a0231d836eeb431bba82583e2fcb609903bb0f479cd04e4c7866b6126e52a708e7e71eed7631bd121b0
|
||||
DIST platformdirs-3.8.0.tar.gz 18451 BLAKE2B cac717c3968fd20b7bdac464443cedcdc50b04b732ae8a212fcb946170ad1553ffae82cbdca05c2cf01ebbc4383216cd0f0afe84cddc2ce6107f10fd40213542 SHA512 64937f3e9e03a9ec8dc2068777dfe553ec09cef62ce53a753608bd9a73e0afaa4489c98046e7b4b3fdbded237cf2813bfd306a6d5ad5788031b6857d8d4fa430
|
||||
DIST platformdirs-3.8.1.tar.gz 18533 BLAKE2B d1d669fe76e52637f59c32ddb93920988821a1f1720d6b91042f80abedafc1d6dbcd5f744f22f5502121dc0b12285001cbde63e923e8159f139342a9497459e2 SHA512 85d7781e4ef0755bf9a7a4d90b92ea06f497081ec4c5438780f12876a1006b2e591c1b182f6648cad19039d1bd7611cf0c2215015653bafbad2cc529f27d94e7
|
||||
DIST platformdirs-3.9.1.tar.gz 18836 BLAKE2B d673573005e97895e4d665e1539805be7c4355d8de166481625f76fab250779e8efa81d86374fc388b24d8cc8d892f61b6dda113cdbb9419fff3357006c9b7e6 SHA512 c41d8be17c9336b5eba9dc15beb2d6db4b53d2ac06c51439542490019e25c091351c266f11fc4998b8eef00eb91399c464ac59b318bcd1ef14ebbd8350ae2c50
|
||||
|
@ -16,7 +16,7 @@ HOMEPAGE="
|
||||
|
||||
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"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="
|
||||
test? (
|
||||
|
@ -1,49 +0,0 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=flit
|
||||
PYTHON_COMPAT=( python3_{10..12} pypy3 )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="A small Python module for determining appropriate platform-specific dirs"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/platformdirs/
|
||||
https://github.com/platformdirs/platformdirs/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/appdirs[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_configure() {
|
||||
grep -q 'build-backend = "hatchling' pyproject.toml ||
|
||||
die "Upstream changed build-backend, recheck"
|
||||
# write a custom pyproject.toml to ease setuptools bootstrap
|
||||
cat > pyproject.toml <<-EOF || die
|
||||
[build-system]
|
||||
requires = ["flit_core >=3.2,<4"]
|
||||
build-backend = "flit_core.buildapi"
|
||||
|
||||
[project]
|
||||
name = "${PN}"
|
||||
version = "${PV}"
|
||||
description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".'
|
||||
EOF
|
||||
# sigh
|
||||
cat > src/platformdirs/version.py <<-EOF || die
|
||||
__version__ = version = '${PV}'
|
||||
__version_tuple__ = version_tuple = (${PV//./, })
|
||||
EOF
|
||||
}
|
@ -1,49 +0,0 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=flit
|
||||
PYTHON_COMPAT=( python3_{10..12} pypy3 )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="A small Python module for determining appropriate platform-specific dirs"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/platformdirs/
|
||||
https://github.com/platformdirs/platformdirs/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/appdirs[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_configure() {
|
||||
grep -q 'build-backend = "hatchling' pyproject.toml ||
|
||||
die "Upstream changed build-backend, recheck"
|
||||
# write a custom pyproject.toml to ease setuptools bootstrap
|
||||
cat > pyproject.toml <<-EOF || die
|
||||
[build-system]
|
||||
requires = ["flit_core >=3.2,<4"]
|
||||
build-backend = "flit_core.buildapi"
|
||||
|
||||
[project]
|
||||
name = "${PN}"
|
||||
version = "${PV}"
|
||||
description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".'
|
||||
EOF
|
||||
# sigh
|
||||
cat > src/platformdirs/version.py <<-EOF || die
|
||||
__version__ = version = '${PV}'
|
||||
__version_tuple__ = version_tuple = (${PV//./, })
|
||||
EOF
|
||||
}
|
@ -1,49 +0,0 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=flit
|
||||
PYTHON_COMPAT=( python3_{10..12} pypy3 )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="A small Python module for determining appropriate platform-specific dirs"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/platformdirs/
|
||||
https://github.com/platformdirs/platformdirs/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/appdirs[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_configure() {
|
||||
grep -q 'build-backend = "hatchling' pyproject.toml ||
|
||||
die "Upstream changed build-backend, recheck"
|
||||
# write a custom pyproject.toml to ease setuptools bootstrap
|
||||
cat > pyproject.toml <<-EOF || die
|
||||
[build-system]
|
||||
requires = ["flit_core >=3.2,<4"]
|
||||
build-backend = "flit_core.buildapi"
|
||||
|
||||
[project]
|
||||
name = "${PN}"
|
||||
version = "${PV}"
|
||||
description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".'
|
||||
EOF
|
||||
# sigh
|
||||
cat > src/platformdirs/version.py <<-EOF || die
|
||||
__version__ = version = '${PV}'
|
||||
__version_tuple__ = version_tuple = (${PV//./, })
|
||||
EOF
|
||||
}
|
@ -12,3 +12,6 @@ DIST cmake-3.27.0.tar.gz 10977223 BLAKE2B a031002dc662552c7af2da35494b536c359011
|
||||
DIST cmake-3.27.1-SHA-256.txt 1646 BLAKE2B 3437dc50b66a014569e9194c609cdcb6022175f6220685d24f5276af4348ffd93db8a18108e54d00d62e54889181cccc09e722fccdd10475515f91b55859d12d SHA512 b0a48431e333dd0cc2670b630340e39015617f9d49a3c43c6181d8e669f33abc00d4c08fab8d59aecadbbbba031136136897a1f1a4cf5dec849ca868592c7e9f
|
||||
DIST cmake-3.27.1-SHA-256.txt.asc 833 BLAKE2B 17dbb29edcf09501455dffe090f3973083e38134559131572a55b065eae5494541b56589f78d55467cfa1ef1d3e8cba180a7dc3c949531193fc9ef3102feaad5 SHA512 bbe31efe4ffbae5d82483a677dab86586477b0af0e79dd6bfe85ae266b09a1881bf31249d91023f41fdcab066e558e52a1e7eb12dfbbea44f297d3d8eeaaea48
|
||||
DIST cmake-3.27.1.tar.gz 10977868 BLAKE2B dcb998e45d238ba94ff9422a30014b274d1db48f094c7e027717b7b271bb0c63e4f11cae29552683e747f9872ccddbaaefa4d90a0113dc409d556ad0743835f6 SHA512 d8831105fed3772bcb821a2b184fe0ffbff15795a5b0a89f2ad1cb0372a40c8f22f2bab72c671a6d17464521b7337067df929a5c3ece99f84848cc3a2fe6716f
|
||||
DIST cmake-3.27.2-SHA-256.txt 1646 BLAKE2B 89e437e7f6750d81bcc7a207a2c8ea49ac5385e8e5dc3c420d3c7c099d82102d4e7bf9886e86a939c38f07efe413a3ccc7dc63b240204dadc6be7e13896799fe SHA512 50f8d75222d4e767aba90a09eb4bb4cab14dcfe04795f7b4d525f0fd64384c112a64d12a26a2722b086b42a7f3c2176ad1445983f63c6af57771099bbeb3a2b6
|
||||
DIST cmake-3.27.2-SHA-256.txt.asc 833 BLAKE2B ec2994faeb1aab675ec02dd6ce10444e972d3599e48efbba2634a62b628c653c1aa067e461e6d8483628d142a5ba86df987ac8907a8916d47a077f93dad7d8e8 SHA512 b1d527e7481d90346c8a1ed61942f48eecf4089a5768691fdcd9592b8cb24af5496aa56aff0e2101c5533f4d19b727105d9cda5c140b60eabc2984ad91f1600a
|
||||
DIST cmake-3.27.2.tar.gz 10978264 BLAKE2B 709e6c2769365daf1003ce4bb443291286cd236ab3b1f2b52f13b795e680231a0791b677d59c7389966a1f6d3e716a5e528dd87843e8cbd3a674902d2c92aa04 SHA512 a5fee6e97c69c525a5679c77f1615dbfde982fdbebb68b137a3fd2adf94a0a09773cc21fdc55936f039c13ebfc20ef852814158685e821a8545fcb314a6115f9
|
||||
|
288
sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.27.2.ebuild
vendored
Normal file
288
sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.27.2.ebuild
vendored
Normal file
@ -0,0 +1,288 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${CMAKE_DOCS_PREBUILT:=1}
|
||||
|
||||
CMAKE_DOCS_PREBUILT_DEV=sam
|
||||
#CMAKE_DOCS_VERSION=$(ver_cut 1-3)
|
||||
CMAKE_DOCS_VERSION=3.27.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 elisp-common flag-o-matic multiprocessing \
|
||||
toolchain-funcs virtualx xdg-utils
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
|
||||
DESCRIPTION="Cross platform Make"
|
||||
HOMEPAGE="https://cmake.org/"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
CMAKE_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bradking.asc
|
||||
inherit verify-sig
|
||||
|
||||
SRC_URI+=" verify-sig? (
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
|
||||
)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bradking )"
|
||||
fi
|
||||
fi
|
||||
|
||||
[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="CMake"
|
||||
SLOT="0"
|
||||
IUSE="${CMAKE_DOCS_USEFLAG} dap emacs ncurses qt5 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 )
|
||||
emacs? ( >=app-editors/emacs-23.1:* )
|
||||
ncurses? ( sys-libs/ncurses:0= )
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
)
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND+="
|
||||
doc? (
|
||||
dev-python/requests
|
||||
dev-python/sphinx
|
||||
)
|
||||
test? ( app-arch/libarchive[zstd] )
|
||||
"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
PATCHES=(
|
||||
# Prefix
|
||||
"${FILESDIR}"/${PN}-3.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"
|
||||
|
||||
if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
|
||||
CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
|
||||
cmake_src_bootstrap
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Fix linking on Solaris
|
||||
[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
|
||||
|
||||
# ODR warnings, bug #858335
|
||||
# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
|
||||
filter-lto
|
||||
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_USE_SYSTEM_LIBRARIES=ON
|
||||
-DCMake_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)
|
||||
)
|
||||
use qt5 && mycmakeargs+=( -DBUILD_QtDialog=ON )
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
use emacs && elisp-compile Auxiliary/cmake-mode.el
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Fix OutDir and SelectLibraryConfigurations tests
|
||||
# these are altered thanks to our eclass
|
||||
sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
|
||||
"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
|
||||
|| die
|
||||
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
|
||||
# Excluded tests:
|
||||
# BootstrapTest: we actualy bootstrap it every time so why test it.
|
||||
# BundleUtilities: bundle creation broken
|
||||
# CMakeOnly.AllFindModules: pthread issues
|
||||
# CTest.updatecvs: which fails to commit as root
|
||||
# Fortran: requires fortran
|
||||
# RunCMake.CompilerLauncher: also requires fortran
|
||||
# RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
|
||||
# debugedit binary is not in the expected location
|
||||
# RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
|
||||
# it can't find a deb package that owns libc
|
||||
# TestUpload, which requires network access
|
||||
# RunCMake.CMP0125, known failure reported upstream (bug #829414)
|
||||
local myctestargs=(
|
||||
--output-on-failure
|
||||
-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
|
||||
)
|
||||
|
||||
virtx cmake_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
|
||||
if use emacs; then
|
||||
elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc
|
||||
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
|
||||
fi
|
||||
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins Auxiliary/vim/syntax/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/indent
|
||||
doins Auxiliary/vim/indent/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
doins "${FILESDIR}/${PN}.vim"
|
||||
|
||||
dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use emacs && elisp-site-regen
|
||||
|
||||
if use qt5; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use emacs && elisp-site-regen
|
||||
|
||||
if use qt5; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST meson-1.1.1.tar.gz 2125503 BLAKE2B 295b46d19c8a1d64d326a6c826e2abe11d9768902ed2f8816df18677e7f3f58decc0c660925821825ecd9a4955a65bda8b2aa66a7bb1961810d8f78f92a3fd8a SHA512 c6259d73566d2532b87e8a23951363103f7be2aacdf120e50946273a2fed6b1602104a3ffbfda159138ac8f780d2c3e67a6fe2c8c228b73c1266775491797adb
|
||||
DIST meson-1.2.0.tar.gz 2182568 BLAKE2B a8239c41ab5d20c26c057293dc85e5577eb9e6eef7a39acc67a0b5b1e82b1afae341936431d96571ff83e96b7648a80a16cfd8eb581ff29b2ca88615657d5ca3 SHA512 8b5768cf0dab5f88d2f3e3962305910e707ff810cbd21b5997aab0bb6abe1c4d5dbd24ec59ab4072f1faa9b81daa8be993d56679445afa93700676f52e314d23
|
||||
DIST meson-1.2.1.tar.gz 2182126 BLAKE2B b79fa78618cbebfb26ea40e698c495e63d722ba3204d4fed92d087e4a588b49666b476c55916f1435b7ca62f24843c683f1da09751754e928c838c1bf138ce58 SHA512 6221a14a6046aaba2c6eb601a9a5b928308bbd9da813ccec16b8f7578296b27d741e30e9343723770c3c7825c86b53193b41b9672dd17468d06d3b8d743bf52e
|
||||
|
117
sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1.ebuild
vendored
Normal file
117
sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1.ebuild
vendored
Normal file
@ -0,0 +1,117 @@
|
||||
# Copyright 2016-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} pypy3 )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="https://github.com/mesonbuild/meson"
|
||||
inherit git-r3
|
||||
else
|
||||
inherit pypi
|
||||
|
||||
MY_P=${P/_/}
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
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
|
||||
|
||||
inherit bash-completion-r1 distutils-r1 toolchain-funcs
|
||||
|
||||
DESCRIPTION="Open source build system"
|
||||
HOMEPAGE="https://mesonbuild.com/"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
test? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
dev-util/ninja
|
||||
dev-vcs/git
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
virtual/pkgconfig
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
python_prepare_all() {
|
||||
local disable_unittests=(
|
||||
# ASAN and sandbox both want control over LD_PRELOAD
|
||||
# https://bugs.gentoo.org/673016
|
||||
-e 's/test_generate_gir_with_address_sanitizer/_&/'
|
||||
|
||||
# ASAN is unsupported on some targets
|
||||
# https://bugs.gentoo.org/692822
|
||||
-e 's/test_pch_with_address_sanitizer/_&/'
|
||||
|
||||
# https://github.com/mesonbuild/meson/issues/7203
|
||||
-e 's/test_templates/_&/'
|
||||
|
||||
# Broken due to python2 wrapper
|
||||
-e 's/test_python_module/_&/'
|
||||
)
|
||||
|
||||
sed -i "${disable_unittests[@]}" unittests/*.py || die
|
||||
|
||||
# Broken due to python2 script created by python_wrapper_setup
|
||||
rm -r "test cases/frameworks/1 boost" || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
src_test() {
|
||||
tc-export PKG_CONFIG
|
||||
if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then
|
||||
ewarn "Found Qt5Core but not Qt5Gui; skipping tests"
|
||||
else
|
||||
distutils-r1_src_test
|
||||
fi
|
||||
}
|
||||
|
||||
python_test() {
|
||||
(
|
||||
# test_meson_installed
|
||||
unset PYTHONDONTWRITEBYTECODE
|
||||
|
||||
# https://bugs.gentoo.org/687792
|
||||
unset PKG_CONFIG
|
||||
|
||||
# test_cross_file_system_paths
|
||||
unset XDG_DATA_HOME
|
||||
|
||||
# 'test cases/unit/73 summary' expects 80 columns
|
||||
export COLUMNS=80
|
||||
|
||||
# If JAVA_HOME is not set, meson looks for javac in PATH.
|
||||
# If javac is in /usr/bin, meson assumes /usr/include is a valid
|
||||
# JDK include path. Setting JAVA_HOME works around this broken
|
||||
# autodetection. If no JDK is installed, we should end up with an empty
|
||||
# value in JAVA_HOME, and the tests should get skipped.
|
||||
export JAVA_HOME=$(java-config -O 2>/dev/null)
|
||||
|
||||
# Call python3 instead of EPYTHON to satisfy test_meson_uninstalled.
|
||||
python3 run_tests.py
|
||||
) || die "Testing failed with ${EPYTHON}"
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax}
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins data/shell-completions/zsh/_meson
|
||||
|
||||
dobashcomp data/shell-completions/bash/meson
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST pkgconf-1.8.1.tar.xz 302372 BLAKE2B 591961f0b1fd185834fd8e2a672199cffc035139599817b1d56d571300d2aa800a719c9477aac4023dfade597ad3cc3b45360babe57498977568ee57077c7bbe SHA512 7a7d5204c1c9bfb6578bda56f299d1fa0300e69a133a65730b10ad77aefbf26fceb74ae77cecda326b3ed5db5736f27fcce94764b3a56d40f4bb99fecdc80bba
|
||||
DIST pkgconf-2.0.0.tar.xz 310204 BLAKE2B c3c35724fddce349702e86046be5ddf359d8e1278e175ffbe46d6f202ef9cd14d41c76f3eb09de18ec2c67a45d7c45f0ba6e600d5873535aa63eb8361dd5df7e SHA512 6f40201a1e5d400358bb5218647d3160d42881c4a7d1bc3c8a75b306e47dc2ed1204268b2bdac0c14068e66cd3defe211570263274de7fedd0206b7dd343613d
|
||||
DIST pkgconf-2.0.1.tar.xz 310576 BLAKE2B 9cb4a1a2ba9a961f184e8d600e15866b6ca971c84b1f9ce83a9ce528b16ec1f6c425ca0deebe5aa11f54d4daf64afbd59e96289a2e17a4bf62f8a82d48d59248 SHA512 1f6e6e421e6e6228aad5cbd834016c8657a59e3bbb5929de4b62377a79cb4e4a52e339f305378b80e6309701bbc0490179e0ead7bdee9da6d7c78565d7b80bc8
|
||||
|
@ -2,11 +2,14 @@ DIST git-2.39.2.tar.xz 7163224 BLAKE2B bcd9abdaf8ce626de7aec2da666395f80212772aa
|
||||
DIST git-2.39.3.tar.xz 7166100 BLAKE2B 862a5636df681e46797034bf22ca7712d70ead94ac0a911b81e4eeb3c83e67fdc56b839055b3b54bdab0ffceabe9fa2efb9e2870b1c0f40590ddb33e7427cd2a SHA512 ddd9f41df9d59aedaddb3a3cd551c105903b5f8c86455d4d05a8342920d67754b358b6ab0d6c10cca743b8e0e621baea16f71a9d6290f4d37297a9c45e8b3763
|
||||
DIST git-2.40.1.tar.xz 7185260 BLAKE2B 50957227a572db54b931976d4c22edeaf0d5678d05d37f9478e736487d3e0755c1d70775cea9e3ce82e07f228fa809f3b461fb5b7f267117cc5aeffff915c096 SHA512 9ab41c64c6e666c314683bc4925535e037d43f947b8d327ff7d0379ac12899f4effcc2fe4e47b1ce652ad7140aa4f01f3b99f9cc0cf854cfeface1a5d3e1893e
|
||||
DIST git-2.41.0.tar.xz 7273624 BLAKE2B 9119e1d1ff0ff332559a6609707846c2af7c61bea6ea728e834e4bd7f1ff6dd636a081c227b32a88fc5de1ea8987951cc56d0e94c90bbaa211ff415c5020d070 SHA512 a215bc6d89afbddd56adac901c24ea2b7f98a37bf6a6a2756893947012ffaa850e76247a3445a5ab13ab5a462f39986fec33eed086148aba5eb554dc1799fee0
|
||||
DIST git-2.42.0.rc1.tar.xz 7304064 BLAKE2B 488d1377bdff1fff8e952b4f91efa9cf2f6db9ddbe48b00f532e1088c2f48302186f0e7c823a1d447ca883bd926a57494298f22e63fd37e4a36d8b5643c0831b SHA512 3ea7de73ecfbf1ae93bb3554b5666df3eff7c1afe0344c4e55a5a618d311ed45a06f42c74d59f5e95c6e48a6058886026216f56645fab8fa97761518c8f760af
|
||||
DIST git-htmldocs-2.39.2.tar.xz 1505352 BLAKE2B 8b60f9bae9585aab8782f38ff64391a9c8fddeed47d84a989b4f65db87c14e927d1d975fa5239435e921dbc74a75c600d6f0485defa1a235a66355c0f8d9060d SHA512 fe0982e653784285bce7f158956892900ae9c88aa986261de4184e3349e34ee54f92d7280e143031b107872fc1729814489f6e355aa12dc415d724da65ec3716
|
||||
DIST git-htmldocs-2.39.3.tar.xz 1506828 BLAKE2B 732e86ee004a44230d8f10eac16a14fbfb348d4278001011a0d22ba91240fbe65cad341b0547b649db3ce7fc67fc6fb544c896e7ba4bd7f1fa3c9b42371febf9 SHA512 7616c9c6600759f06973d36d5233b3909da72f39318410f5522b890d282a74e7585433c7195fed4792d5b7955292a466abcc2185ffdc23d0e8928ad58d7db1bf
|
||||
DIST git-htmldocs-2.40.1.tar.xz 1517900 BLAKE2B 864edd5b2389362dcf5d0c9f08cbf3bac6303cf6505b2d5446e73aeb591ac9212948b6f68434671e3bfba6f64d6aff02d315848d08647d22177292775411e5b3 SHA512 770c9765bab1f0773615d67f4eb817c42e1a946da205381ac0c208c4b2d4185c351aebbd7294afe66ef794b65cc9123b255a585a3df2990b5dfe779aaacb0800
|
||||
DIST git-htmldocs-2.41.0.tar.xz 1525692 BLAKE2B 4ea74130e21fed3ebbe09b849eddc48654fa7563299d8c2173856741d3c490a1672ac6b2005f716d6ae2d7759f92caafc56ccbf2408ba8ec87266b9c10530d73 SHA512 8a28f330f21e1da901ef8575509b56cede1a8f1d03e49fca802e561095c137c9ef23f3d6bd33d0e8a537bc1f93131ce7aafc92d4a9b0a80ade67249f22ff69d5
|
||||
DIST git-htmldocs-2.42.0.rc1.tar.xz 1536284 BLAKE2B 073e175ad3fad55f34e93a43c3d5c8dcdf96a95f6095803b5f95f6be6fc56866e1497ba1bfd7a1636ecb84074bbab329fdeed5d981d2f705686439049d3b0662 SHA512 f011c30660f76c0d9efd896d11315143bd71d5009fde00de4e3295c3db3755e7a717a6855ce7f9cb51d63ac8e46efbad22d813ea4fa23d5c6dcdad5eb240b8f0
|
||||
DIST git-manpages-2.39.2.tar.xz 557080 BLAKE2B 6b2dbb33f1041ba802582f529638b8b4574309efbf5af94add5c676efed7314743d5b326ec18a95ba85a4fe818e95913069717034a9863879e1d03ee32b839ba SHA512 6326ff43564fc42ca0a424edd17896434e11c09ce21f4bfd4d4975aaaf7f2c0d823da0e89b267557b0b7799c342db88d84685d24f589f53edfe486208c1f15b1
|
||||
DIST git-manpages-2.39.3.tar.xz 557428 BLAKE2B 4eb85035f7056a12c3f1276d26f99b3337b97721f8f4b0b3c74d2a484171bfdf74f566a03e175ba32b389c940ed7be66ce2933442ec77089d5db3aaeb2ed2557 SHA512 06414741667b990ff3a28f7cb29b502df3d4cc757d525438994af005c71d429ca969563a74d1d2b44185e5c40107ac8838b390835a8a947e542ce3636b43f98b
|
||||
DIST git-manpages-2.40.1.tar.xz 562772 BLAKE2B 091c907195b37ed4152698515528d7da27f8dbf2516915ae66ba6f81a64bbd9f2042544889fe655ea7447bd6f32adaf8daec9c02743587a84b090554ad58796b SHA512 4e75f5ae3786658d284ce8eae3133c01115e357cc0bd2c4c5bf4261196411da632f51c87ff6e4c1f4bc7adf7b7b4a33c4debe52bcd9b5d735aa70dd9614ad5bd
|
||||
DIST git-manpages-2.41.0.tar.xz 565060 BLAKE2B 082f2272314981b21606aef22bf18f0fe1d8a29fce0ce29e451cbad986e8f9c398906632b694de1b328accda61e85f25fd8875ee2e104cb9a7da8873d48e1495 SHA512 118afe9af79f2747c1f762b51fa2cdce7b46396ab4321f57826a351575acf30d9a486e2713e558cab6f6b353724cef3f0f1eab587b181f547324e96e3fee0b91
|
||||
DIST git-manpages-2.42.0.rc1.tar.xz 568084 BLAKE2B 9b87b9ee9174c5152139f9ac25cc73c8417ef3d216724668f9c6a78542ec2fc72d76838724a8d51781dfcf9362dae6e09a6c2cb29587bbed11cea58965b58214 SHA512 d36ea33552580040ccac25bed036c50c09f1ef0538248ae525b26cdf8b5b4856f066f37c016993c6cff3d942d0f165879061f795b9dfbe25121e3a4308fcf5bd
|
||||
|
644
sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.42.0_rc1.ebuild
vendored
Normal file
644
sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.42.0_rc1.ebuild
vendored
Normal file
@ -0,0 +1,644 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
GENTOO_DEPEND_ON_PERL=no
|
||||
|
||||
# bug #329479: git-remote-testgit is not multiple-version aware
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit toolchain-funcs perl-module bash-completion-r1 optfeature plocale python-single-r1 systemd
|
||||
|
||||
PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git"
|
||||
|
||||
inherit git-r3
|
||||
# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
|
||||
# See https://git-scm.com/docs/gitworkflows#_graduation
|
||||
# In order of stability:
|
||||
# 9999-r0: maint
|
||||
# 9999-r1: master
|
||||
# 9999-r2: next
|
||||
# 9999-r3: seen
|
||||
case ${PVR} in
|
||||
9999) EGIT_BRANCH=maint ;;
|
||||
9999-r1) EGIT_BRANCH=master ;;
|
||||
9999-r2) EGIT_BRANCH=next;;
|
||||
9999-r3) EGIT_BRANCH=seen ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
MY_PV="${PV/_rc/.rc}"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DOC_VER="${MY_PV}"
|
||||
|
||||
DESCRIPTION="Stupid content tracker: distributed VCS designed for speed and efficiency"
|
||||
HOMEPAGE="https://www.git-scm.com/"
|
||||
|
||||
if [[ ${PV} != *9999 ]]; then
|
||||
SRC_URI_SUFFIX="xz"
|
||||
SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
|
||||
|
||||
[[ ${PV/rc} != ${PV} ]] && SRC_URI_KORG+='/testing'
|
||||
|
||||
SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}"
|
||||
SRC_URI+=" ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}"
|
||||
SRC_URI+=" doc? ( ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} )"
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
fi
|
||||
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="+blksha1 +curl cgi doc keyring +gpg highlight +iconv mediawiki +nls +pcre perforce +perl +safe-directory selinux subversion tk +webdav xinetd cvs test"
|
||||
|
||||
# Common to both DEPEND and RDEPEND
|
||||
DEPEND="
|
||||
dev-libs/openssl:=
|
||||
sys-libs/zlib
|
||||
curl? (
|
||||
net-misc/curl
|
||||
webdav? ( dev-libs/expat )
|
||||
)
|
||||
keyring? (
|
||||
app-crypt/libsecret
|
||||
dev-libs/glib:2
|
||||
)
|
||||
iconv? ( virtual/libiconv )
|
||||
pcre? ( dev-libs/libpcre2:= )
|
||||
perl? ( dev-lang/perl:=[-build(-)] )
|
||||
tk? ( dev-lang/tk:= )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
gpg? ( app-crypt/gnupg )
|
||||
perl? (
|
||||
dev-perl/Error
|
||||
dev-perl/MailTools
|
||||
dev-perl/Authen-SASL
|
||||
>=virtual/perl-libnet-3.110.0-r4[ssl]
|
||||
cgi? (
|
||||
dev-perl/CGI
|
||||
highlight? ( app-text/highlight )
|
||||
)
|
||||
cvs? (
|
||||
>=dev-vcs/cvsps-2.1:0
|
||||
dev-perl/DBI
|
||||
dev-perl/DBD-SQLite
|
||||
)
|
||||
mediawiki? (
|
||||
dev-perl/DateTime-Format-ISO8601
|
||||
dev-perl/HTML-Tree
|
||||
dev-perl/MediaWiki-API
|
||||
)
|
||||
subversion? (
|
||||
dev-vcs/subversion[-dso(-),perl]
|
||||
dev-perl/libwww-perl
|
||||
dev-perl/TermReadKey
|
||||
)
|
||||
)
|
||||
perforce? ( ${PYTHON_DEPS} )
|
||||
selinux? ( sec-policy/selinux-git )
|
||||
"
|
||||
|
||||
# This is how info docs are created with Git:
|
||||
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
|
||||
# .xml/docbook --(docbook2texi.pl)--> .texi
|
||||
# .texi --(makeinfo)---------> .info
|
||||
BDEPEND="
|
||||
doc? (
|
||||
app-text/asciidoc
|
||||
app-text/docbook2X
|
||||
app-text/xmlto
|
||||
sys-apps/texinfo
|
||||
)
|
||||
keyring? ( virtual/pkgconfig )
|
||||
nls? ( sys-devel/gettext )
|
||||
test? ( app-crypt/gnupg )
|
||||
"
|
||||
|
||||
# Live ebuild builds man pages and HTML docs, additionally
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
BDEPEND+=" app-text/asciidoc"
|
||||
fi
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
REQUIRED_USE="
|
||||
cgi? ( perl )
|
||||
cvs? ( perl )
|
||||
mediawiki? ( perl )
|
||||
perforce? ( ${PYTHON_REQUIRED_USE} )
|
||||
subversion? ( perl )
|
||||
webdav? ( curl )
|
||||
"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
PATCHES=(
|
||||
# Avoid automagic CVS, bug #350330
|
||||
"${FILESDIR}"/git-2.37.0_rc1-optional-cvs.patch
|
||||
|
||||
# Make submodule output quiet
|
||||
"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
if use subversion && has_version "dev-vcs/subversion[dso]" ; then
|
||||
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
|
||||
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
|
||||
ewarn "have been warned!"
|
||||
fi
|
||||
|
||||
if use perforce ; then
|
||||
python-single-r1_pkg_setup
|
||||
fi
|
||||
}
|
||||
|
||||
# This is needed because for some obscure reasons future calls to make don't
|
||||
# pick up these exports if we export them in src_unpack()
|
||||
exportmakeopts() {
|
||||
local extlibs myopts
|
||||
|
||||
myopts=(
|
||||
ASCIIDOC_NO_ROFF=YesPlease
|
||||
|
||||
$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
|
||||
|
||||
$(usev elibc_musl NO_REGEX=NeedsStartEnd)
|
||||
$(usev !cvs NO_CVS=YesPlease)
|
||||
$(usev !iconv NO_ICONV=YesPlease)
|
||||
$(usev !nls NO_GETTEXT=YesPlease)
|
||||
$(usev !perforce NO_PYTHON=YesPlease)
|
||||
$(usev !subversion NO_SVN_TESTS=YesPlease)
|
||||
$(usev !tk NO_TCLTK=YesPlease)
|
||||
)
|
||||
|
||||
if use blksha1 ; then
|
||||
myopts+=( BLK_SHA1=YesPlease )
|
||||
fi
|
||||
|
||||
if use curl ; then
|
||||
use webdav || myopts+=( NO_EXPAT=YesPlease )
|
||||
else
|
||||
myopts+=( NO_CURL=YesPlease )
|
||||
fi
|
||||
|
||||
# Broken assumptions because of static build system
|
||||
myopts+=(
|
||||
NO_FINK=YesPlease
|
||||
NO_DARWIN_PORTS=YesPlease
|
||||
INSTALL=install
|
||||
TAR=tar
|
||||
SHELL_PATH="${EPREFIX}/bin/sh"
|
||||
SANE_TOOL_PATH=
|
||||
OLD_ICONV=
|
||||
NO_EXTERNAL_GREP=
|
||||
)
|
||||
|
||||
# Can't define this to null, since the entire makefile depends on it
|
||||
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
|
||||
|
||||
if use pcre; then
|
||||
myopts+=( USE_LIBPCRE2=YesPlease )
|
||||
extlibs+=( -lpcre2-8 )
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]]; then
|
||||
myopts+=(
|
||||
NEEDS_LIBICONV=YesPlease
|
||||
HAVE_CLOCK_MONOTONIC=1
|
||||
)
|
||||
|
||||
if grep -Fq getdelim "${ESYSROOT}"/usr/include/stdio.h ; then
|
||||
myopts+=( HAVE_GETDELIM=1 )
|
||||
fi
|
||||
fi
|
||||
|
||||
myopts+=( ASCIIDOC8=YesPlease )
|
||||
|
||||
export MY_MAKEOPTS="${myopts[@]}"
|
||||
export EXTLIBS="${extlibs[@]}"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} != *9999 ]] ; then
|
||||
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
|
||||
|
||||
cd "${S}" || die
|
||||
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
|
||||
|
||||
if use doc ; then
|
||||
pushd "${S}"/Documentation &>/dev/null || die
|
||||
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
else
|
||||
git-r3_src_unpack
|
||||
#cp "${FILESDIR}"/GIT-VERSION-GEN . || die
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if ! use safe-directory ; then
|
||||
# This patch neuters the "safe directory" detection.
|
||||
# bugs #838271, #838223
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/git-2.37.2-unsafe-directory.patch
|
||||
)
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
if use prefix ; then
|
||||
# bug #757309
|
||||
eapply "${FILESDIR}"/git-2.37.2-darwin-prefix-gettext.patch
|
||||
fi
|
||||
|
||||
sed -i \
|
||||
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
|
||||
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
|
||||
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
|
||||
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
|
||||
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
|
||||
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
|
||||
Makefile || die
|
||||
|
||||
# Fix docbook2texi command
|
||||
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
|
||||
Documentation/Makefile || die
|
||||
}
|
||||
|
||||
git_emake() {
|
||||
# bug #320647: PYTHON_PATH
|
||||
local PYTHON_PATH=""
|
||||
use perforce && PYTHON_PATH="${PYTHON}"
|
||||
|
||||
local mymakeargs=(
|
||||
${MY_MAKEOPTS}
|
||||
|
||||
prefix="${EPREFIX}"/usr
|
||||
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html
|
||||
perllibdir="$(use perl && perl_get_raw_vendorlib)"
|
||||
sysconfdir="${EPREFIX}"/etc
|
||||
|
||||
CC="$(tc-getCC)"
|
||||
CFLAGS="${CFLAGS}"
|
||||
PKG_CONFIG="$(tc-getPKG_CONFIG)"
|
||||
|
||||
# TODO: --verbose?
|
||||
GIT_TEST_OPTS="--no-color"
|
||||
|
||||
OPTAR="$(tc-getAR)"
|
||||
OPTCC="$(tc-getCC)"
|
||||
OPTCFLAGS="${CFLAGS}"
|
||||
OPTLDFLAGS="${LDFLAGS}"
|
||||
|
||||
PERL_PATH="${EPREFIX}/usr/bin/perl"
|
||||
PERL_MM_OPT=""
|
||||
|
||||
PYTHON_PATH="${PYTHON_PATH}"
|
||||
|
||||
V=1
|
||||
"$@"
|
||||
)
|
||||
|
||||
emake "${mymakeargs[@]}"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
exportmakeopts
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
git_emake
|
||||
|
||||
if use perl && use cgi ; then
|
||||
git_emake gitweb
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
|
||||
git_emake -C contrib/credential/osxkeychain
|
||||
fi
|
||||
|
||||
pushd Documentation &>/dev/null || die
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
git_emake man
|
||||
if use doc ; then
|
||||
git_emake info html
|
||||
fi
|
||||
else
|
||||
if use doc ; then
|
||||
git_emake info
|
||||
fi
|
||||
fi
|
||||
popd &>/dev/null || die
|
||||
|
||||
if use keyring ; then
|
||||
git_emake -C contrib/credential/libsecret
|
||||
fi
|
||||
|
||||
pushd contrib/subtree &>/dev/null || die
|
||||
git_emake git-subtree
|
||||
# git-subtree.1 requires the full USE=doc dependency stack
|
||||
use doc && git_emake git-subtree.html git-subtree.1
|
||||
popd &>/dev/null || die
|
||||
|
||||
git_emake -C contrib/diff-highlight
|
||||
|
||||
if use mediawiki ; then
|
||||
git_emake -C contrib/mw-to-git
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local disabled=(
|
||||
# We make safe-directory optional
|
||||
t0033-safe-directory.sh
|
||||
)
|
||||
|
||||
local tests_cvs=(
|
||||
t9200-git-cvsexportcommit.sh
|
||||
t9400-git-cvsserver-server.sh
|
||||
t9401-git-cvsserver-crlf.sh
|
||||
t9402-git-cvsserver-refs.sh
|
||||
t9600-cvsimport.sh
|
||||
t9601-cvsimport-vendor-branch.sh
|
||||
t9602-cvsimport-branches-tags.sh
|
||||
t9603-cvsimport-patchsets.sh
|
||||
t9604-cvsimport-timestamps.sh
|
||||
)
|
||||
|
||||
local tests_perl=(
|
||||
t3701-add-interactive.sh
|
||||
t5502-quickfetch.sh
|
||||
t5512-ls-remote.sh
|
||||
t5520-pull.sh
|
||||
t7106-reset-unborn-branch.sh
|
||||
t7501-commit.sh
|
||||
)
|
||||
# Bug #225601 - t0004 is not suitable for root perm
|
||||
# Bug #219839 - t1004 is not suitable for root perm
|
||||
# t0001-init.sh - check for init notices EPERM* fails
|
||||
local tests_nonroot=(
|
||||
t0001-init.sh
|
||||
t0004-unwritable.sh
|
||||
t0070-fundamental.sh
|
||||
t1004-read-tree-m-u-wf.sh
|
||||
t3700-add.sh
|
||||
t7300-clean.sh
|
||||
)
|
||||
# t9100 still fails with symlinks in SVN 1.7
|
||||
local test_svn=( t9100-git-svn-basic.sh )
|
||||
|
||||
# Unzip is used only for the testcase code, not by any normal parts of Git.
|
||||
if ! has_version app-arch/unzip ; then
|
||||
einfo "Disabling tar-tree tests"
|
||||
disabled+=( t5000-tar-tree.sh )
|
||||
fi
|
||||
|
||||
local cvs=0
|
||||
use cvs && let cvs=${cvs}+1
|
||||
if [[ ${EUID} -eq 0 ]] ; then
|
||||
if [[ ${cvs} -eq 1 ]] ; then
|
||||
ewarn "Skipping CVS tests because CVS does not work as root!"
|
||||
ewarn "You should retest with FEATURES=userpriv!"
|
||||
disabled+=( ${tests_cvs[@]} )
|
||||
fi
|
||||
einfo "Skipping other tests that require being non-root"
|
||||
disabled+=( ${tests_nonroot[@]} )
|
||||
else
|
||||
if [[ ${cvs} -gt 0 ]] && has_version dev-vcs/cvs ; then
|
||||
let cvs=${cvs}+1
|
||||
fi
|
||||
|
||||
if [[ ${cvs} -gt 1 ]] && has_version "dev-vcs/cvs[server]" ; then
|
||||
let cvs=${cvs}+1
|
||||
fi
|
||||
|
||||
if [[ ${cvs} -lt 3 ]] ; then
|
||||
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
|
||||
disabled+=( ${tests_cvs[@]} )
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! use perl ; then
|
||||
einfo "Disabling tests that need Perl"
|
||||
disabled+=( ${tests_perl[@]} )
|
||||
fi
|
||||
|
||||
einfo "Disabling tests that fail with SVN 1.7"
|
||||
disabled+=( ${test_svn[@]} )
|
||||
|
||||
# Reset all previously disabled tests
|
||||
pushd t &>/dev/null || die
|
||||
local i
|
||||
for i in *.sh.DISABLED ; do
|
||||
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
|
||||
done
|
||||
einfo "Disabled tests:"
|
||||
for i in ${disabled[@]} ; do
|
||||
if [[ -f "${i}" ]] ; then
|
||||
mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
|
||||
fi
|
||||
done
|
||||
|
||||
# Avoid the test system removing the results because we want them ourselves
|
||||
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die
|
||||
|
||||
# Clean old results first, must always run
|
||||
nonfatal git_emake clean
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Now run the tests, keep going if we hit an error, and don't terminate on
|
||||
# failure
|
||||
local rc
|
||||
einfo "Start test run"
|
||||
#MAKEOPTS=-j1
|
||||
nonfatal git_emake --keep-going test
|
||||
rc=$?
|
||||
|
||||
# Display nice results, now print the results
|
||||
pushd t &>/dev/null || die
|
||||
nonfatal git_emake aggregate-results
|
||||
|
||||
# And bail if there was a problem
|
||||
[[ ${rc} -eq 0 ]] || die "Tests failed. Please file a bug!"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
git_emake DESTDIR="${D}" install
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then
|
||||
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
|
||||
fi
|
||||
|
||||
# Depending on the tarball and manual rebuild of the documentation, the
|
||||
# manpages may exist in either OR both of these directories.
|
||||
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
|
||||
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
|
||||
dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
|
||||
use doc && dodir /usr/share/doc/${PF}/html
|
||||
local d
|
||||
for d in / /howto/ /technical/ ; do
|
||||
docinto ${d}
|
||||
dodoc Documentation${d}*.txt
|
||||
if use doc ; then
|
||||
docinto ${d}/html
|
||||
dodoc Documentation${d}*.html
|
||||
fi
|
||||
done
|
||||
docinto /
|
||||
# Upstream does not ship this pre-built :-(
|
||||
use doc && doinfo Documentation/{git,gitman}.info
|
||||
|
||||
newbashcomp contrib/completion/git-completion.bash ${PN}
|
||||
bashcomp_alias git gitk
|
||||
# Not really a bash-completion file (bug #477920)
|
||||
# but still needed uncompressed (bug #507480)
|
||||
insinto /usr/share/${PN}
|
||||
doins contrib/completion/git-prompt.sh
|
||||
|
||||
#dobin contrib/fast-import/git-p4 # Moved upstream
|
||||
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
|
||||
newbin contrib/fast-import/import-tars.perl import-tars
|
||||
exeinto /usr/libexec/git-core/
|
||||
newexe contrib/git-resurrect.sh git-resurrect
|
||||
|
||||
# git-subtree
|
||||
pushd contrib/subtree &>/dev/null || die
|
||||
git_emake DESTDIR="${D}" install
|
||||
if use doc ; then
|
||||
# Do not move git subtree install-man outside USE=doc!
|
||||
git_emake DESTDIR="${D}" install-man install-html
|
||||
fi
|
||||
newdoc README README.git-subtree
|
||||
dodoc git-subtree.txt
|
||||
popd &>/dev/null || die
|
||||
|
||||
if use mediawiki ; then
|
||||
git_emake -C contrib/mw-to-git DESTDIR="${D}" install
|
||||
fi
|
||||
|
||||
# diff-highlight
|
||||
dobin contrib/diff-highlight/diff-highlight
|
||||
newdoc contrib/diff-highlight/README README.diff-highlight
|
||||
|
||||
# git-jump
|
||||
exeinto /usr/libexec/git-core/
|
||||
doexe contrib/git-jump/git-jump
|
||||
newdoc contrib/git-jump/README git-jump.txt
|
||||
|
||||
# git-contacts
|
||||
exeinto /usr/libexec/git-core/
|
||||
doexe contrib/contacts/git-contacts
|
||||
dodoc contrib/contacts/git-contacts.txt
|
||||
|
||||
if use keyring ; then
|
||||
pushd contrib/credential/libsecret &>/dev/null || die
|
||||
dobin git-credential-libsecret
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
dodir /usr/share/${PN}/contrib
|
||||
# The following are excluded:
|
||||
# completion - installed above
|
||||
# diff-highlight - done above
|
||||
# emacs - removed upstream
|
||||
# examples - these are stuff that is not used in Git anymore actually
|
||||
# git-jump - done above
|
||||
# gitview - installed above
|
||||
# p4import - excluded because fast-import has a better one
|
||||
# patches - stuff the Git guys made to go upstream to other places
|
||||
# persistent-https - TODO
|
||||
# mw-to-git - TODO
|
||||
# subtree - build seperately
|
||||
# svnimport - use git-svn
|
||||
# thunderbird-patch-inline - fixes thunderbird
|
||||
local contrib_objects=(
|
||||
buildsystems
|
||||
fast-import
|
||||
hg-to-git
|
||||
hooks
|
||||
remotes2config.sh
|
||||
rerere-train.sh
|
||||
stats
|
||||
workdir
|
||||
)
|
||||
local i
|
||||
for i in "${contrib_objects[@]}" ; do
|
||||
cp -rf "${S}"/contrib/${i} "${ED}"/usr/share/${PN}/contrib || die "Failed contrib ${i}"
|
||||
done
|
||||
|
||||
if use perl && use cgi ; then
|
||||
# We used to install in /usr/share/${PN}/gitweb
|
||||
# but upstream installs in /usr/share/gitweb
|
||||
# so we will install a symlink and use their location for compat with other
|
||||
# distros
|
||||
dosym ../gitweb /usr/share/${PN}/gitweb
|
||||
|
||||
# INSTALL discusses configuration issues, not just installation
|
||||
docinto /
|
||||
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
|
||||
newdoc "${S}"/gitweb/README README.gitweb
|
||||
|
||||
for d in "${ED}"/usr/lib{,64}/perl5/ ; do
|
||||
if [[ -d "${d}" ]] ; then
|
||||
find "${d}" -name .packlist -delete || die
|
||||
fi
|
||||
done
|
||||
else
|
||||
rm -rf "${ED}"/usr/share/gitweb
|
||||
fi
|
||||
|
||||
if ! use subversion ; then
|
||||
rm -f "${ED}"/usr/libexec/git-core/git-svn \
|
||||
"${ED}"/usr/share/man/man1/git-svn.1*
|
||||
fi
|
||||
|
||||
if use xinetd ; then
|
||||
insinto /etc/xinetd.d
|
||||
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
|
||||
fi
|
||||
|
||||
if ! use prefix ; then
|
||||
newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon
|
||||
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
|
||||
systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
|
||||
systemd_dounit "${FILESDIR}/git-daemon.socket"
|
||||
fi
|
||||
|
||||
perl_delete_localpod
|
||||
|
||||
# Remove disabled linguas
|
||||
# we could remove sources in src_prepare, but install does not
|
||||
# handle missing locale dir well
|
||||
rm_loc() {
|
||||
if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then
|
||||
rm -r "${ED}/usr/share/locale/${1}" || die
|
||||
fi
|
||||
}
|
||||
plocale_for_each_disabled_locale rm_loc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z ${REPLACING_VERSIONS} ]] ; then
|
||||
elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
|
||||
elog "completion."
|
||||
elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
|
||||
elog "Note that the prompt bash code is now in that separate script"
|
||||
fi
|
||||
|
||||
optfeature_header "Some scripts require additional dependencies:"
|
||||
optfeature git-quiltimport dev-util/quilt
|
||||
optfeature git-instaweb www-servers/lighttpd www-servers/apache www-servers/nginx
|
||||
}
|
@ -338,7 +338,9 @@ _python_export() {
|
||||
debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
|
||||
;;
|
||||
PYTHON)
|
||||
export PYTHON=${BROOT}/usr/bin/${impl}
|
||||
# Under EAPI 7+, this should just use ${BROOT}, but Portage
|
||||
# <3.0.50 was buggy, and prefix users need this to update.
|
||||
export PYTHON=${BROOT-${EPREFIX}}/usr/bin/${impl}
|
||||
debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
|
||||
;;
|
||||
PYTHON_SITEDIR)
|
||||
@ -1244,14 +1246,13 @@ _python_check_occluded_packages() {
|
||||
# positives before filing bugs.
|
||||
[[ ! ${PYTHON_EXPERIMENTAL_QA} ]] && return
|
||||
|
||||
type -P diff &>/dev/null || return
|
||||
[[ -z ${BUILD_DIR} || ! -d ${BUILD_DIR}/install ]] && return
|
||||
|
||||
local sitedir="${BUILD_DIR}/install$(python_get_sitedir)"
|
||||
# avoid unnecessarily checking if we are inside install dir
|
||||
[[ ${sitedir} -ef . ]] && return
|
||||
|
||||
local f fn diff
|
||||
local f fn diff l
|
||||
for f in "${sitedir}"/*/; do
|
||||
f=${f%/}
|
||||
fn=${f##*/}
|
||||
@ -1260,17 +1261,29 @@ _python_check_occluded_packages() {
|
||||
[[ ${fn} == *.dist-info || ${fn} == *.egg-info ]] && continue
|
||||
|
||||
if [[ -d ${fn} ]]; then
|
||||
diff=$(diff -dupr -x "__pycache__" "${fn}" "${sitedir}/${fn}")
|
||||
diff=$(
|
||||
comm -1 -3 <(
|
||||
find "${fn}" -type f -not -path '*/__pycache__/*' |
|
||||
sort
|
||||
assert
|
||||
) <(
|
||||
cd "${sitedir}" &&
|
||||
find "${fn}" -type f -not -path '*/__pycache__/*' |
|
||||
sort
|
||||
assert
|
||||
)
|
||||
)
|
||||
|
||||
if [[ -n ${diff} ]]; then
|
||||
eqawarn "The directory ${fn} occludes package installed for ${EPYTHON}."
|
||||
echo
|
||||
echo ">>> Diff:"
|
||||
echo "${diff}"
|
||||
echo "<<< End-of-diff"
|
||||
echo
|
||||
eqawarn "The installed package includes additional files:"
|
||||
eqawarn
|
||||
while IFS= read -r l; do
|
||||
eqawarn " ${l}"
|
||||
done <<<"${diff}"
|
||||
eqawarn
|
||||
|
||||
if [[ ! ${_PYTHON_WARNED_OCCLUDED_PACKAGES} ]]; then
|
||||
eqawarn "The complete build log includes diffs."
|
||||
eqawarn "For more information on occluded packages, please see:"
|
||||
eqawarn "https://projects.gentoo.org/python/guide/test.html#importerrors-for-c-extensions"
|
||||
_PYTHON_WARNED_OCCLUDED_PACKAGES=1
|
||||
|
@ -1,150 +0,0 @@
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Business Source License 1.1
|
||||
|
||||
License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved.
|
||||
"Business Source License" is a trademark of MariaDB Corporation Ab.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Parameters
|
||||
|
||||
Licensor: ZeroTier, Inc.
|
||||
Licensed Work: ZeroTier Network Virtualization Engine 1.4.4
|
||||
The Licensed Work is (c)2019 ZeroTier, Inc.
|
||||
Additional Use Grant: You may make use of the Licensed Work, provided you
|
||||
do not use it in any of the following ways:
|
||||
|
||||
* Sell hosted ZeroTier services as a "SaaS" Product
|
||||
|
||||
(1) Operate or sell access to ZeroTier root servers,
|
||||
network controllers, or authorization key or certificate
|
||||
generation components of the Licensed Work as a
|
||||
for-profit service, regardless of whether the use of
|
||||
these components is sold alone or is bundled with other
|
||||
services. Note that this does not apply to the use of
|
||||
ZeroTier behind the scenes to operate a service not
|
||||
related to ZeroTier network administration.
|
||||
|
||||
* Create Non-Open-Source Commercial Derviative Works
|
||||
|
||||
(2) Link or directly include the Licensed Work in a
|
||||
commercial or for-profit application or other product
|
||||
not distributed under an Open Source Initiative (OSI)
|
||||
compliant license. See: https://opensource.org/licenses
|
||||
|
||||
(3) Remove the name, logo, copyright, or other branding
|
||||
material from the Licensed Work to create a "rebranded"
|
||||
or "white labeled" version to distribute as part of
|
||||
any commercial or for-profit product or service.
|
||||
|
||||
* Certain Government Uses
|
||||
|
||||
(4) Use or deploy the Licensed Work in a government
|
||||
setting in support of any active government function
|
||||
or operation with the exception of the following:
|
||||
physical or mental health care, family and social
|
||||
services, social welfare, senior care, child care, and
|
||||
the care of persons with disabilities.
|
||||
|
||||
Change Date: 2023-01-01
|
||||
|
||||
Change License: Apache License version 2.0 as published by the Apache
|
||||
Software Foundation
|
||||
https://www.apache.org/licenses/
|
||||
|
||||
Alternative Licensing
|
||||
|
||||
If you would like to use the Licensed Work in any way that conflicts with
|
||||
the stipulations of the Additional Use Grant, contact ZeroTier, Inc. to
|
||||
obtain an alternative commercial license.
|
||||
|
||||
Visit us on the web at: https://www.zerotier.com/
|
||||
|
||||
Notice
|
||||
|
||||
The Business Source License (this document, or the "License") is not an Open
|
||||
Source license. However, the Licensed Work will eventually be made available
|
||||
under an Open Source License, as stated in this License.
|
||||
|
||||
For more information on the use of the Business Source License for ZeroTier
|
||||
products, please visit our pricing page which contains license details and
|
||||
and license FAQ: https://zerotier.com/pricing
|
||||
|
||||
For more information on the use of the Business Source License generally,
|
||||
please visit the Adopting and Developing Business Source License FAQ at
|
||||
https://mariadb.com/bsl-faq-adopting.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Business Source License 1.1
|
||||
|
||||
Terms
|
||||
|
||||
The Licensor hereby grants you the right to copy, modify, create derivative
|
||||
works, redistribute, and make non-production use of the Licensed Work. The
|
||||
Licensor may make an Additional Use Grant, above, permitting limited
|
||||
production use.
|
||||
|
||||
Effective on the Change Date, or the fourth anniversary of the first publicly
|
||||
available distribution of a specific version of the Licensed Work under this
|
||||
License, whichever comes first, the Licensor hereby grants you rights under
|
||||
the terms of the Change License, and the rights granted in the paragraph
|
||||
above terminate.
|
||||
|
||||
If your use of the Licensed Work does not comply with the requirements
|
||||
currently in effect as described in this License, you must purchase a
|
||||
commercial license from the Licensor, its affiliated entities, or authorized
|
||||
resellers, or you must refrain from using the Licensed Work.
|
||||
|
||||
All copies of the original and modified Licensed Work, and derivative works
|
||||
of the Licensed Work, are subject to this License. This License applies
|
||||
separately for each version of the Licensed Work and the Change Date may vary
|
||||
for each version of the Licensed Work released by Licensor.
|
||||
|
||||
You must conspicuously display this License on each original or modified copy
|
||||
of the Licensed Work. If you receive the Licensed Work in original or
|
||||
modified form from a third party, the terms and conditions set forth in this
|
||||
License apply to your use of that work.
|
||||
|
||||
Any use of the Licensed Work in violation of this License will automatically
|
||||
terminate your rights under this License for the current and all other
|
||||
versions of the Licensed Work.
|
||||
|
||||
This License does not grant you any right in any trademark or logo of
|
||||
Licensor or its affiliates (provided that you may use a trademark or logo of
|
||||
Licensor as expressly required by this License).
|
||||
|
||||
TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON
|
||||
AN "AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS,
|
||||
EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND
|
||||
TITLE.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
MariaDB hereby grants you permission to use this License’s text to license
|
||||
your works, and to refer to it using the trademark "Business Source License",
|
||||
as long as you comply with the Covenants of Licensor below.
|
||||
|
||||
Covenants of Licensor
|
||||
|
||||
In consideration of the right to use this License’s text and the "Business
|
||||
Source License" name and trademark, Licensor covenants to MariaDB, and to all
|
||||
other recipients of the licensed work to be provided by Licensor:
|
||||
|
||||
1. To specify as the Change License the GPL Version 2.0 or any later version,
|
||||
or a license that is compatible with GPL Version 2.0 or a later version,
|
||||
where "compatible" means that software provided under the Change License can
|
||||
be included in a program with software provided under GPL Version 2.0 or a
|
||||
later version. Licensor may specify additional Change Licenses without
|
||||
limitation.
|
||||
|
||||
2. To either: (a) specify an additional grant of rights to use that does not
|
||||
impose any additional restriction on the right granted in this License, as
|
||||
the Additional Use Grant; or (b) insert the text "None".
|
||||
|
||||
3. To specify a Change Date.
|
||||
|
||||
4. Not to modify this License in any other way.
|
||||
|
76
sdk_container/src/third_party/portage-stable/licenses/BUSL-1.1
vendored
Normal file
76
sdk_container/src/third_party/portage-stable/licenses/BUSL-1.1
vendored
Normal file
@ -0,0 +1,76 @@
|
||||
Business Source License 1.1
|
||||
|
||||
License text copyright © 2017 MariaDB Corporation Ab, All Rights
|
||||
Reserved. "Business Source License" is a trademark of MariaDB
|
||||
Corporation Ab.
|
||||
|
||||
Terms
|
||||
|
||||
The Licensor hereby grants you the right to copy, modify, create
|
||||
derivative works, redistribute, and make non-production use of the
|
||||
Licensed Work. The Licensor may make an Additional Use Grant, above,
|
||||
permitting limited production use.
|
||||
|
||||
Effective on the Change Date, or the fourth anniversary of the first
|
||||
publicly available distribution of a specific version of the Licensed
|
||||
Work under this License, whichever comes first, the Licensor hereby
|
||||
grants you rights under the terms of the Change License, and the rights
|
||||
granted in the paragraph above terminate.
|
||||
|
||||
If your use of the Licensed Work does not comply with the requirements
|
||||
currently in effect as described in this License, you must purchase a
|
||||
commercial license from the Licensor, its affiliated entities, or
|
||||
authorized resellers, or you must refrain from using the Licensed Work.
|
||||
|
||||
All copies of the original and modified Licensed Work, and derivative
|
||||
works of the Licensed Work, are subject to this License. This License
|
||||
applies separately for each version of the Licensed Work and the Change
|
||||
Date may vary for each version of the Licensed Work released by Licensor.
|
||||
|
||||
You must conspicuously display this License on each original or modified
|
||||
copy of the Licensed Work. If you receive the Licensed Work in original
|
||||
or modified form from a third party, the terms and conditions set forth
|
||||
in this License apply to your use of that work.
|
||||
|
||||
Any use of the Licensed Work in violation of this License will
|
||||
automatically terminate your rights under this License for the current
|
||||
and all other versions of the Licensed Work.
|
||||
|
||||
This License does not grant you any right in any trademark or logo of
|
||||
Licensor or its affiliates (provided that you may use a trademark or
|
||||
logo of Licensor as expressly required by this License).
|
||||
|
||||
TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED
|
||||
ON AN "AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND
|
||||
CONDITIONS, EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION)
|
||||
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
|
||||
NON-INFRINGEMENT, AND TITLE.
|
||||
|
||||
|
||||
MariaDB hereby grants you permission to use this License's text to
|
||||
license your works, and to refer to it using the trademark "Business
|
||||
Source License", as long as you comply with the Covenants of Licensor
|
||||
below.
|
||||
|
||||
Covenants of Licensor
|
||||
|
||||
In consideration of the right to use this License's text and the
|
||||
"Business Source License" name and trademark, Licensor covenants to
|
||||
MariaDB, and to all other recipients of the licensed work to be provided
|
||||
by Licensor:
|
||||
|
||||
1. To specify as the Change License the GPL Version 2.0 or any later
|
||||
version, or a license that is compatible with GPL Version 2.0 or a
|
||||
later version, where "compatible" means that software provided under
|
||||
the Change License can be included in a program with software
|
||||
provided under GPL Version 2.0 or a later version. Licensor may
|
||||
specify additional Change Licenses without limitation.
|
||||
|
||||
2. To either: (a) specify an additional grant of rights to use that
|
||||
does not impose any additional restriction on the right granted in
|
||||
this License, as the Additional Use Grant; or (b) insert the text
|
||||
"None".
|
||||
|
||||
3. To specify a Change Date.
|
||||
|
||||
4. Not to modify this License in any other way.
|
@ -13,7 +13,7 @@ SRC_URI="https://ftp.samba.org/pub/linux-cifs/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~x86-linux"
|
||||
IUSE="+acl +ads +caps creds pam +python systemd"
|
||||
|
||||
RDEPEND="
|
||||
|
@ -0,0 +1,46 @@
|
||||
https://bugs.gentoo.org/911872
|
||||
https://gitlab.com/gnutls/gnutls/-/commit/abfa8634db940115a11a07596ce53c8f9c4f87d2
|
||||
|
||||
From abfa8634db940115a11a07596ce53c8f9c4f87d2 Mon Sep 17 00:00:00 2001
|
||||
From: Adrian Bunk <bunk@debian.org>
|
||||
Date: Sun, 6 Aug 2023 22:46:22 +0300
|
||||
Subject: [PATCH] Move the GNUTLS_NO_EXTENSIONS compatibility #define to
|
||||
gnutls.h
|
||||
|
||||
Signed-off-by: Adrian Bunk <bunk@debian.org>
|
||||
--- a/lib/ext/ext_master_secret.h
|
||||
+++ b/lib/ext/ext_master_secret.h
|
||||
@@ -23,9 +23,6 @@
|
||||
#ifndef GNUTLS_LIB_EXT_EXT_MASTER_SECRET_H
|
||||
#define GNUTLS_LIB_EXT_EXT_MASTER_SECRET_H
|
||||
|
||||
-/* Keep backward compatibility */
|
||||
-#define GNUTLS_NO_EXTENSIONS GNUTLS_NO_DEFAULT_EXTENSIONS
|
||||
-
|
||||
#include <hello_ext.h>
|
||||
|
||||
extern const hello_ext_entry_st ext_mod_ext_master_secret;
|
||||
--- a/lib/includes/gnutls/gnutls.h.in
|
||||
+++ b/lib/includes/gnutls/gnutls.h.in
|
||||
@@ -542,6 +542,9 @@ typedef enum {
|
||||
#define GNUTLS_ENABLE_CERT_TYPE_NEG 0
|
||||
// Here for compatibility reasons
|
||||
|
||||
+/* Keep backward compatibility */
|
||||
+#define GNUTLS_NO_EXTENSIONS GNUTLS_NO_DEFAULT_EXTENSIONS
|
||||
+
|
||||
/**
|
||||
* gnutls_alert_level_t:
|
||||
* @GNUTLS_AL_WARNING: Alert of warning severity.
|
||||
--- a/lib/state.h
|
||||
+++ b/lib/state.h
|
||||
@@ -110,7 +110,4 @@ inline static int _gnutls_PRF(gnutls_session_t session, const uint8_t *secret,
|
||||
|
||||
#define DEFAULT_CERT_TYPE GNUTLS_CRT_X509
|
||||
|
||||
-/* Keep backward compatibility */
|
||||
-#define GNUTLS_NO_EXTENSIONS GNUTLS_NO_DEFAULT_EXTENSIONS
|
||||
-
|
||||
#endif /* GNUTLS_LIB_STATE_H */
|
||||
--
|
||||
GitLab
|
@ -60,6 +60,10 @@ DOCS=( README.md doc/certtool.cfg )
|
||||
|
||||
HTML_DOCS=()
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-fix-gnutls-header.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
@ -17,7 +17,7 @@ else
|
||||
https://curl.se/download/${P}.tar.xz
|
||||
verify-sig? ( https://curl.se/download/${P}.tar.xz.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"
|
||||
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="curl"
|
||||
|
@ -54,7 +54,7 @@ RDEPEND="
|
||||
http2? ( >=net-libs/nghttp2-1.15.0:=[${MULTILIB_USEDEP}] )
|
||||
idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] )
|
||||
kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[static-libs?,${MULTILIB_USEDEP}] )
|
||||
nghttp3? (
|
||||
net-libs/nghttp3[${MULTILIB_USEDEP}]
|
||||
net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}]
|
||||
|
@ -54,7 +54,7 @@ RDEPEND="
|
||||
http2? ( >=net-libs/nghttp2-1.15.0:=[${MULTILIB_USEDEP}] )
|
||||
idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] )
|
||||
kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[static-libs?,${MULTILIB_USEDEP}] )
|
||||
nghttp3? (
|
||||
net-libs/nghttp3[${MULTILIB_USEDEP}]
|
||||
net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}]
|
||||
|
@ -1,127 +0,0 @@
|
||||
Patch-Source: https://github.com/curl/curl/pull/11492
|
||||
--
|
||||
From 0470577eb4524f09d245e9e6afd42ba8677a5a19 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stenberg <daniel@haxx.se>
|
||||
Date: Thu, 20 Jul 2023 23:20:50 +0200
|
||||
Subject: [PATCH 1/2] test979: test -u with redirect to (the same) absolute
|
||||
host
|
||||
|
||||
---
|
||||
tests/data/Makefile.inc | 1 +
|
||||
tests/data/test979 | 64 +++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 65 insertions(+)
|
||||
create mode 100644 tests/data/test979
|
||||
|
||||
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc
|
||||
index 8ee1394d4e562..12aefb14c0d1b 100644
|
||||
--- a/tests/data/Makefile.inc
|
||||
+++ b/tests/data/Makefile.inc
|
||||
@@ -122,6 +122,7 @@ test943 test944 test945 test946 test947 test948 test949 test950 test951 \
|
||||
test952 test953 test954 test955 test956 test957 test958 test959 test960 \
|
||||
test961 test962 test963 test964 test965 test966 test967 test968 test969 \
|
||||
test970 test971 test972 test973 test974 test975 test976 test977 test978 \
|
||||
+test979 \
|
||||
\
|
||||
test980 test981 test982 test983 test984 test985 test986 test987 test988 \
|
||||
test989 \
|
||||
diff --git a/tests/data/test979 b/tests/data/test979
|
||||
new file mode 100644
|
||||
index 0000000000000..40cc35044d9f6
|
||||
--- /dev/null
|
||||
+++ b/tests/data/test979
|
||||
@@ -0,0 +1,64 @@
|
||||
+<testcase>
|
||||
+<info>
|
||||
+<keywords>
|
||||
+HTTP
|
||||
+HTTP GET
|
||||
+Basic
|
||||
+</keywords>
|
||||
+</info>
|
||||
+
|
||||
+#
|
||||
+# Server-side
|
||||
+<reply>
|
||||
+<data crlf="yes" nocheck="yes">
|
||||
+HTTP/1.1 302 go go go
|
||||
+Content-Length: 8
|
||||
+Location: http://%HOSTIP:%HTTPPORT/user/%TESTNUMBER0002
|
||||
+Content-Type: text/html
|
||||
+Funny-head: yesyes
|
||||
+
|
||||
+notreal
|
||||
+</data>
|
||||
+<data2 crlf="yes">
|
||||
+HTTP/1.1 200 OK
|
||||
+Content-Length: 6
|
||||
+Content-Type: text/html
|
||||
+Funny-head: yesyes
|
||||
+
|
||||
+final
|
||||
+</data2>
|
||||
+</reply>
|
||||
+
|
||||
+#
|
||||
+# Client-side
|
||||
+<client>
|
||||
+<server>
|
||||
+http
|
||||
+</server>
|
||||
+<name>
|
||||
+-u with redirect to absolute URL using same origin and auth
|
||||
+</name>
|
||||
+<command>
|
||||
+http://first:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER -L -u smith:doggie
|
||||
+</command>
|
||||
+</client>
|
||||
+
|
||||
+#
|
||||
+# Verify data after the test has been "shot"
|
||||
+<verify>
|
||||
+<protocol crlf="yes">
|
||||
+GET /%TESTNUMBER HTTP/1.1
|
||||
+Host: %HOSTIP:%HTTPPORT
|
||||
+Authorization: Basic c21pdGg6ZG9nZ2ll
|
||||
+User-Agent: curl/%VERSION
|
||||
+Accept: */*
|
||||
+
|
||||
+GET /user/%TESTNUMBER0002 HTTP/1.1
|
||||
+Host: %HOSTIP:%HTTPPORT
|
||||
+Authorization: Basic c21pdGg6ZG9nZ2ll
|
||||
+User-Agent: curl/%VERSION
|
||||
+Accept: */*
|
||||
+
|
||||
+</protocol>
|
||||
+</verify>
|
||||
+</testcase>
|
||||
|
||||
From c1effdfe658ae505e8ea65e5f46d810c4b8d81cb Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stenberg <daniel@haxx.se>
|
||||
Date: Thu, 20 Jul 2023 23:28:19 +0200
|
||||
Subject: [PATCH 2/2] transfer: do not clear the credentials on redirect to
|
||||
absolute URL
|
||||
|
||||
Makes test 979 work. Regression shipped in 8.2.0 from commit
|
||||
dd4d1a26959f63a2c
|
||||
|
||||
Fixes #11486
|
||||
Reported-by: Cloudogu Siebels
|
||||
---
|
||||
lib/transfer.c | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/lib/transfer.c b/lib/transfer.c
|
||||
index 52cd6a0153673..b678004b95ad2 100644
|
||||
--- a/lib/transfer.c
|
||||
+++ b/lib/transfer.c
|
||||
@@ -1558,10 +1558,6 @@ CURLcode Curl_follow(struct Curl_easy *data,
|
||||
/* If this is not redirect due to a 401 or 407 response and an absolute
|
||||
URL: don't allow a custom port number */
|
||||
disallowport = TRUE;
|
||||
- if(!data->set.allow_auth_to_other_hosts) {
|
||||
- Curl_safefree(data->state.aptr.user);
|
||||
- Curl_safefree(data->state.aptr.passwd);
|
||||
- }
|
||||
}
|
||||
|
||||
DEBUGASSERT(data->state.uh);
|
@ -1,32 +0,0 @@
|
||||
Patch-Source: https://github.com/curl/curl/commit/f9314f317f017e19e1802ce04ceeae620ca2cd71
|
||||
--
|
||||
From: Stefan Eissing <stefan@eissing.org>
|
||||
Date: Thu, 20 Jul 2023 13:08:00 +0200
|
||||
Subject: [PATCH] http2: fix regression on upload EOF handling
|
||||
|
||||
- a regression introduced by c9ec85121110d7cbbbed2990024222c8f5b8afe5
|
||||
where optimization of small POST bodies leads to a new code path
|
||||
for such uploads that did not trigger the "done sending" event
|
||||
- add triggering this event for early "upload_done" situations
|
||||
|
||||
Fixes #11485
|
||||
Closes #11487
|
||||
Reported-by: Aleksander Mazur
|
||||
---
|
||||
lib/http.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/lib/http.c b/lib/http.c
|
||||
index f851bcd4a3443..e04028b3fec54 100644
|
||||
--- a/lib/http.c
|
||||
+++ b/lib/http.c
|
||||
@@ -3380,6 +3380,9 @@ CURLcode Curl_http(struct Curl_easy *data, bool *done)
|
||||
}
|
||||
}
|
||||
|
||||
+ if(data->req.upload_done)
|
||||
+ Curl_conn_ev_data_done_send(data);
|
||||
+
|
||||
if((conn->httpversion >= 20) && data->req.upload_chunky)
|
||||
/* upload_chunky was set above to set up the request in a chunky fashion,
|
||||
but is disabled here again to avoid that the chunked encoded version is
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# James Le Cuirot <chewi@gentoo.org> (2021-09-04)
|
||||
@ -41,8 +41,6 @@ games-action/beathazardultra
|
||||
games-action/brutal-legend-gog
|
||||
games-action/brutal-legend-hb
|
||||
games-action/crimsonland
|
||||
games-action/descent3
|
||||
games-action/descent3-demo
|
||||
games-action/guacamelee
|
||||
games-action/heretic2
|
||||
games-action/heretic2-demo
|
||||
|
8
sdk_container/src/third_party/portage-stable/profiles/arch/amd64/no-multilib/package.use
vendored
Normal file
8
sdk_container/src/third_party/portage-stable/profiles/arch/amd64/no-multilib/package.use
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Ionen Wolkens <ionen@gentoo.org> (2023-08-10)
|
||||
# Multilib profiles (currently) prefer USE=abi_x86_32 over experimental
|
||||
# USE=wow64, but experimental is better than no support for no-multilib.
|
||||
app-emulation/wine-staging wow64
|
||||
app-emulation/wine-vanilla wow64
|
@ -1,6 +1,16 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Ionen Wolkens <ionen@gentoo.org> (2023-08-10)
|
||||
# These use 32bit PE libraries (mingw) and are usable on no-multilib.
|
||||
# TODO?: this profile hides this USE, as such it is difficult to tell
|
||||
# if it is enabled or not outside build logs and may ideally need to
|
||||
# be renamed (they are however all enabled by default)
|
||||
app-emulation/dxvk -abi_x86_32
|
||||
app-emulation/vkd3d-proton -abi_x86_32
|
||||
app-emulation/wine-gecko -abi_x86_32
|
||||
dev-util/mingw64-toolchain -abi_x86_32
|
||||
|
||||
# James Le Cuirot <chewi@gentoo.org> (2022-06-25)
|
||||
# This flag concerns a 32-bit x86-specific problem.
|
||||
sys-libs/glibc stack-realign
|
||||
|
@ -1,6 +1,11 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Ionen Wolkens <ionen@gentoo.org> (2023-08-10)
|
||||
# Requires 64bit support.
|
||||
app-emulation/wine-staging wow64
|
||||
app-emulation/wine-vanilla wow64
|
||||
|
||||
# Guilherme Amadio <amadio@gentoo.org> (2023-06-30)
|
||||
# sys-cluster/ceph not keyworded on x86
|
||||
>=net-libs/xrootd-5.6.0 ceph
|
||||
|
@ -6,6 +6,18 @@
|
||||
# This file is only for generic masks. For arch-specific masks (i.e.
|
||||
# mask everywhere, unmask on arch/*) use arch/base.
|
||||
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-08-12)
|
||||
# php-7.x is End-of-Life (EOL) and masked, but these packages don't
|
||||
# support any newer versions with USE=php. Bugs 912183, 912184,
|
||||
# and 912185.
|
||||
dev-libs/redland-bindings php
|
||||
media-gfx/exact-image php
|
||||
sci-geosciences/mapserver php
|
||||
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-08-11)
|
||||
# php-7.x is End-of-Life (EOL) and masked.
|
||||
www-servers/nginx-unit php7-4
|
||||
|
||||
# Ionen Wolkens <ionen@gentoo.org> (2023-07-26)
|
||||
# MPV currently[1] has no plans to support >=lua5-3 making luajit
|
||||
# the only choice for maintained lua. Apply mask/force to override
|
||||
@ -466,18 +478,44 @@ www-client/seamonkey lto
|
||||
# http://httpd.apache.org/docs/current/mod/mod_lua.html
|
||||
www-servers/apache apache2_modules_lua
|
||||
|
||||
# Brian Evans <grknight@gentoo.org> (2021-01-07)
|
||||
# Block test deps on packages until they can be updated
|
||||
# Old phpunit does not work with new PHP and last is vulnerable
|
||||
<dev-php/PEAR-Crypt_GPG-1.6.4 test
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-08-11)
|
||||
# Our PHPUnit (or at least one of its dependencies) doesn't work with
|
||||
# modern versions of PHP itself.
|
||||
dev-php/PEAR-Console_Getargs test
|
||||
dev-php/PEAR-Crypt_GPG test
|
||||
dev-php/PEAR-Crypt_HMAC2 test
|
||||
dev-php/PEAR-Exception test
|
||||
dev-php/PEAR-File_Fortune test
|
||||
dev-php/PEAR-HTML_CSS test
|
||||
dev-php/PEAR-HTML_Template_Sigma test
|
||||
dev-php/PEAR-HTTP_Request2 test
|
||||
dev-php/PEAR-Image_Color2 test
|
||||
dev-php/PEAR-Image_Text test
|
||||
dev-php/PEAR-Net_IPv6 test
|
||||
dev-php/PEAR-Net_LDAP2 test
|
||||
dev-php/PEAR-Numbers_Words test
|
||||
dev-php/PEAR-Text_Password test
|
||||
dev-php/PEAR-Text_Wiki test
|
||||
dev-php/PEAR-Text_Wiki_Mediawiki test
|
||||
dev-php/PEAR-XML_RSS test
|
||||
dev-php/PHP_CodeCoverage test
|
||||
dev-php/PHP_CodeSniffer test
|
||||
dev-php/php-redmine-api test
|
||||
dev-php/PHP_TokenStream test
|
||||
dev-php/awl test
|
||||
dev-php/fedora-autoloader test
|
||||
dev-php/json-schema test
|
||||
dev-php/jsonlint test
|
||||
dev-php/recaptcha test
|
||||
dev-php/symfony-config test
|
||||
dev-php/symfony-dependency-injection test
|
||||
dev-php/symfony-event-dispatcher test
|
||||
dev-php/symfony-filesystem test
|
||||
dev-php/symfony-finder test
|
||||
dev-php/symfony-process test
|
||||
dev-php/symfony-yaml test
|
||||
dev-php/theseer-Autoload test
|
||||
dev-php/twig test
|
||||
|
||||
|
||||
# Sam James <sam@gentoo.org> (2021-01-04)
|
||||
# Doc generation is broken, needs gtkdoc-mktmpl (gone from gtk-doc)
|
||||
|
@ -4,6 +4,11 @@
|
||||
# This file is only for generic masks. For arch-specific masks (i.e.
|
||||
# mask everywhere, unmask on arch/*) use arch/base.
|
||||
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-08-11)
|
||||
# PHP 7.x is end-of-life. Please upgrade to a newer slot.
|
||||
php_targets_php7-3
|
||||
php_targets_php7-4
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-04-10)
|
||||
# Ruby 2.7 is masked for removal.
|
||||
ruby_targets_ruby27
|
||||
@ -19,11 +24,6 @@ pyside6
|
||||
# dev-util/sysprof not keyworded on most arches yet
|
||||
sysprof
|
||||
|
||||
# Brian Evans <grknight@gentoo.org> (2022-01-21)
|
||||
# PHP 7.3 is end-of-life
|
||||
# Please upgrade to a newer slot
|
||||
php_targets_php7-3
|
||||
|
||||
# Sam James <sam@gentoo.org> (2022-01-12)
|
||||
# PCH has proven itself to be unreliable and lead to spurious build
|
||||
# failures. Masking so users aren't exposed to such failures without opting-in.
|
||||
|
@ -1,5 +1,10 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Ionen Wolkens <ionen@gentoo.org> (2023-08-11)
|
||||
# Currently required to build with clang due to bug #912237.
|
||||
app-emulation/wine-staging mingw
|
||||
app-emulation/wine-vanilla mingw
|
||||
|
||||
# Sam James <sam@gentoo.org> (2023-03-03)
|
||||
# Force the toolchain environment we expect on the LLVM profiles.
|
||||
|
@ -161,8 +161,6 @@ games-action/a-story-about-my-uncle
|
||||
games-action/badland
|
||||
games-action/brutal-legend-gog
|
||||
games-action/brutal-legend-hb
|
||||
games-action/descent3
|
||||
games-action/descent3-demo
|
||||
games-action/minecraft-launcher
|
||||
games-action/psychonauts-gog
|
||||
games-action/psychonauts-hb
|
||||
|
@ -34,7 +34,7 @@ dev-python/jsonschema-specifications
|
||||
dev-python/jupyterlab-server
|
||||
dev-python/jupyterlab
|
||||
dev-python/keyring
|
||||
dev-python/libcloud
|
||||
dev-python/apache-libcloud
|
||||
dev-python/moto
|
||||
dev-python/mkdocs-redirects
|
||||
dev-python/mkdocs-material
|
||||
|
@ -33,9 +33,48 @@
|
||||
|
||||
#--- END OF EXAMPLES ---
|
||||
|
||||
# Sam James <sam@gentoo.org> (2023-07-07)
|
||||
# Fails to boostrap: https://gcc.gnu.org/PR110926
|
||||
=sys-devel/gcc-14.0.0_pre20230806
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-08-12)
|
||||
# More php:7.4 casualties that I missed the first time around.
|
||||
# They'll be removed whenever php:7.4 is removed.
|
||||
#
|
||||
# * pecl-apcu_bc dead since 2019
|
||||
# * pecl-http:7 is the old slot
|
||||
# * pecl-ncurses dead since 2012
|
||||
# * pecl-propro dead since 2020
|
||||
# * pecl-taint dead in 2021
|
||||
#
|
||||
dev-php/pecl-apcu_bc
|
||||
dev-php/pecl-http:7
|
||||
dev-php/pecl-ncurses
|
||||
dev-php/pecl-propro
|
||||
dev-php/pecl-taint
|
||||
|
||||
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-08-11)
|
||||
# php-7.x is End Of Life (EOL) upstream and no longer receives security
|
||||
# fixes. We lose phpunit because it depends on CodeCoverage which
|
||||
# depends on TokenStream, and TokenStream is limited to 7.x. Bug 887739
|
||||
# to upgrade moodle is seven months old, which I think is long enough to
|
||||
# have waited. Selfoss has a newer version. Removal after 2023-09-11.
|
||||
dev-lang/php:7.4
|
||||
dev-php/PHP_TokenStream
|
||||
dev-php/PHP_CodeCoverage
|
||||
dev-php/phpspec-prophecy
|
||||
dev-php/phpunit
|
||||
dev-php/phpunit-mock-objects
|
||||
dev-php/sebastian-comparator
|
||||
dev-php/sebastian-exporter
|
||||
dev-php/sebastian-global-state
|
||||
dev-php/sebastian-object-enumerator
|
||||
dev-php/sebastian-object-reflector
|
||||
dev-php/sebastian-recursion-context
|
||||
=mail-client/roundcube-1.4.11
|
||||
=virtual/httpd-php-7.4
|
||||
=www-apps/moodle-3.11.15
|
||||
=www-apps/moodle-4.0.9
|
||||
=www-apps/moodle-4.1.4
|
||||
=www-apps/moodle-4.2.1
|
||||
=www-apps/selfoss-2.19
|
||||
|
||||
# Volkmar W. Pogatzki <gentoo@pogatzki.net> (2023-07-05)
|
||||
# Library without consumers. Bug #906882
|
||||
@ -103,12 +142,6 @@ sys-apps/gcp
|
||||
# removal on 2023-08-22.
|
||||
dev-ruby/fast_xs
|
||||
|
||||
# Arthur Zamarin <arthurzam@gentoo.org> (2023-07-21)
|
||||
# Broken runtime with ncurses version since last 2 years (unusable at
|
||||
# all), no upstream activity of any sort since 2016.
|
||||
# Removal on 2023-08-20. Bug #910649.
|
||||
app-cdr/cdw
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-21)
|
||||
# Obsolete slot for a package that should not have been slotted. Please
|
||||
# use the newer 1.2.3 slot instead. Masked for removal on 2023-08-21.
|
||||
@ -288,37 +321,13 @@ dev-util/cucumber-html-formatter:17
|
||||
# https://github.com/scikit-build/scikit-build-core/issues/426
|
||||
=dev-python/scikit-build-core-0.4.7-r1
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-08)
|
||||
# Obsolete component for dev-util/cucumber. Discontinued upstream.
|
||||
# No reverse dependencies. Masked for removal on 2023-08-08.
|
||||
dev-util/cucumber-wire
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-08)
|
||||
# Last release in 2010. Upstream is gone. No reverse dependencies.
|
||||
# Masked for removal on 2023-08-08
|
||||
dev-ruby/annoy
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-08)
|
||||
# Obsolete component for dev-util/cucumber. Discontinued upstream.
|
||||
# No reverse dependencies. Masked for removal on 2023-08-08.
|
||||
dev-ruby/c21e
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-06)
|
||||
# Last release in 2012. Upstream is gone. No reverse dependencies.
|
||||
# Masked for removal on 2023-08-06.
|
||||
dev-ruby/deprecated
|
||||
|
||||
# Matt Turner <mattst88@gentoo.org> (2023-07-06)
|
||||
# Dead package. No reverse dependencies.
|
||||
# Removal on 2023-08-06.
|
||||
dev-perl/Gtk2-Notify
|
||||
|
||||
# Matt Turner <mattst88@gentoo.org> (2023-07-06)
|
||||
# GNOME 45 mask
|
||||
>=app-editors/gnome-text-editor-45_alpha
|
||||
>=app-misc/gnote-45_alpha
|
||||
>=app-misc/tracker-3.6_alpha
|
||||
>=app-misc/tracker-miners-3.6_alpha
|
||||
>=dev-cpp/gtkmm-4.11
|
||||
>=dev-libs/gjs-1.77
|
||||
>=dev-libs/libdex-0.3.0
|
||||
>=games-puzzle/gnome-sudoku-45_alpha
|
||||
@ -328,6 +337,7 @@ dev-perl/Gtk2-Notify
|
||||
>=gnome-base/nautilus-45_alpha
|
||||
>=gnome-extra/gnome-calculator-45_alpha
|
||||
>=gnome-extra/gnome-characters-45_alpha
|
||||
>=gnome-extra/gnome-logs-45_alpha
|
||||
>=gnome-extra/gnome-shell-extensions-45_alpha
|
||||
>=gnome-extra/gnome-software-45_alpha
|
||||
>=gnome-extra/gnome-system-monitor-45_alpha
|
||||
@ -336,74 +346,28 @@ dev-perl/Gtk2-Notify
|
||||
>=gui-apps/gnome-console-45_alpha
|
||||
>=gui-libs/gtk-4.11
|
||||
>=gui-libs/libadwaita-1.4_alpha
|
||||
>=media-gfx/eog-45_alpha
|
||||
>=media-gfx/gnome-font-viewer-45_alpha
|
||||
>=net-misc/gnome-connections-45_alpha
|
||||
>=net-misc/gnome-remote-desktop-45_alpha
|
||||
>=sci-geosciences/gnome-maps-45_alpha
|
||||
>=sys-apps/baobab-45_alpha
|
||||
>=sys-apps/xdg-desktop-portal-gnome-45_alpha
|
||||
>=x11-libs/pango-1.51.0
|
||||
>=x11-themes/gnome-backgrounds-45_alpha
|
||||
>=x11-wm/mutter-45_alpha
|
||||
|
||||
# Michael Orlitzky <mjo@gentoo.org> (2023-07-05)
|
||||
# I suspect I was its only user, and I'm not a user any more. Upstream
|
||||
# has deleted its autoloader for the second time, making an update more
|
||||
# trouble than removal, so: removal on or after 2023-08-05.
|
||||
dev-php/php-redmine-api
|
||||
|
||||
# Michał Górny <mgorny@gentoo.org> (2023-07-05)
|
||||
# Discontinued in favor of built-in `ast` module on all supported
|
||||
# versions of Python. No revdeps left.
|
||||
# Removal on 2023-08-04.
|
||||
dev-python/typed-ast
|
||||
|
||||
# Sam James <sam@gentoo.org> (2023-07-05)
|
||||
# Doesn't install all needed files by e.g. kernelshark.
|
||||
# Need to either split into libtracecmd for the libraries or revert to Makefiles.
|
||||
# See bug #909439.
|
||||
=dev-util/trace-cmd-3.2
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-04)
|
||||
# Discontinued by upstream. No reverse dependencies. Upstream recommends
|
||||
# using dry-inflector. Please file a bug if you would like us to package
|
||||
# this. Masked for removal on 2023-08-04.
|
||||
dev-ruby/inflecto
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-04)
|
||||
# Archived by upstream. No reverse dependencies. Does not work with
|
||||
# ruby32. Masked for removal on 2023-08-04.
|
||||
dev-ruby/instantiator
|
||||
|
||||
# Holger Hoffstätte <holger@applied-asynchrony.com> (2023-07-04)
|
||||
# Obsolete package, replaced by dev-util/scap-driver.
|
||||
# https://bugs.gentoo.org/907486
|
||||
# Masked for removal on 2023-08-04.
|
||||
dev-util/sysdig-kmod
|
||||
|
||||
# Sam James <sam@gentoo.org> (2023-06-03)
|
||||
# Breaks dev-perl/Spreadsheet-ParseExcel, see bug #909564.
|
||||
# Please upgrade to >=dev-perl/dev-perl/OLE-StorageLite-0.220.0.
|
||||
=dev-perl/OLE-StorageLite-0.210.0
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-02)
|
||||
# Unmaintained and obsolete package. Last release 10 years ago. Upstream
|
||||
# advises to use dev-ruby/memoizable or dev-ruby/memoist instead.
|
||||
# Masked for removal on 2023-08-02.
|
||||
dev-ruby/memoize
|
||||
|
||||
# Hans de Graaff <graaff@gentoo.org> (2023-07-02)
|
||||
# Obsolete slot only used by dev-util/cucumber. Use the newer slot
|
||||
# instead. Masked for removal on 2023-08-02.
|
||||
dev-ruby/multi_test:0
|
||||
|
||||
# James Le Cuirot <chewi@gentoo.org> (2023-06-25)
|
||||
# Impossible to legally obtain the original native full game now. It freezes on
|
||||
# keyboard input, is incompatible with PipeWire, and requires gamescope to work
|
||||
# under Wayland. In short, it's a lost cause. Removal in 30 days. Bug #436140.
|
||||
# There is a modern SDL2-based port, but it is only available from Steam.
|
||||
games-action/descent3
|
||||
games-action/descent3-demo
|
||||
|
||||
# Sam James <sam@gentoo.org> (2023-06-23)
|
||||
# Segfaults with non-bison yacc.
|
||||
=app-shells/bash-5.2_p15-r4
|
||||
@ -497,26 +461,6 @@ app-portage/layman
|
||||
# reverse dependencies are fixed. Tracker bug is bug #906077.
|
||||
=dev-libs/libfmt-10*
|
||||
|
||||
# Michał Górny <mgorny@gentoo.org> (2023-05-05)
|
||||
# The Gentoo packages are severely out of date, and they haven't been
|
||||
# ported to Python 3.11. They are hard to keep working, and there
|
||||
# are better alternatives available. The suggested replacements are:
|
||||
# media-gfx/prusaslicer, media-gfx/superslicer and orcaslicer
|
||||
# (not packaged).
|
||||
# Removal on 2023-08-04. Bug #905769.
|
||||
media-gfx/cura
|
||||
acct-group/ultimaker
|
||||
acct-user/ultimaker
|
||||
dev-libs/libarcus
|
||||
dev-libs/clipper
|
||||
dev-libs/libcharon
|
||||
dev-libs/libnest2d
|
||||
dev-libs/libsavitar
|
||||
dev-python/pynest2d
|
||||
dev-python/uranium
|
||||
media-gfx/fdm-materials
|
||||
media-gfx/curaengine
|
||||
|
||||
# Sam James <sam@gentoo.org> (2023-05-03)
|
||||
# Broken pkgconfig file, please upgrade to -r1.
|
||||
# bug #704348, bug #905632, bug #905822
|
||||
|
@ -8,3 +8,6 @@ move dev-python/indexed_gzip dev-python/indexed-gzip
|
||||
move dev-python/signature_dispatch dev-python/signature-dispatch
|
||||
move dev-python/mdx_gh_links dev-python/mdx-gh-links
|
||||
move dev-python/nest_asyncio dev-python/nest-asyncio
|
||||
move dev-python/libcloud dev-python/apache-libcloud
|
||||
move dev-python/uri_template dev-python/uri-template
|
||||
move dev-python/pykerberos dev-python/kerberos
|
||||
|
@ -1,3 +1,4 @@
|
||||
DIST less-608.tar.gz 362346 BLAKE2B 988940745fef1222c43b0bf4edec7cc7206ded0ac5d89d3faf4dab706a249913581c2fe7aa6063cf3d717176ed07b69299d3e791ba8a60358483fe9d1bf7f7c6 SHA512 7945b7f88921832ebb1b45fba8cbb449ee0133342796b654a52c146dfff3d84db18724ee84e53349eeea6017a0ebe2d8eb5366210275981dde7bb7190118fa66
|
||||
DIST less-632.tar.gz 375440 BLAKE2B 26c27a2e25882a4ce34e5e6e83bc0af784c8d4e8ac20691e0e31f1021bfb30f96e07024a6ff1ad634f7812875e0d920bd52394ccdba47a2a944ba7de92aa4c97 SHA512 5104f1fd76cdd59dfa957a61f8ccffe7c6e79345b94a5961abbd30f2d059f2b6d4b359a27dd5528993e5e1248c655439c1e4a39fd92234e4af23c7167f69f066
|
||||
DIST less-633.tar.gz 375733 BLAKE2B e9df180794af365f86734c6b8fde766c1bba42b111717ee5e1cf11001fc7ec3d78910db9bb7c51a76816086f599808b1b60f514011ec40e37650d6bc4f8b3d5c SHA512 a29aaf72abca07fb29d12f218bbd422a39e3898b3d53e8dbd5265ae47ecf68b88c3381aa3a9bf7caa8db1e2d8e2c138b333f0d69fddd4cf014e39118c53f7fb1
|
||||
DIST less-643.tar.gz 592291 BLAKE2B 6dc60dc2e8db05afdae466877a1d26a3008ff5378bbbf2fbdf9efc4f87c0fcfde5703d44a24d4355c98d3a5f438bdb51173150f2a69f801d9c8e4a7401d71b53 SHA512 6a324ac54e22429ac652dc303bc1fe48933555d1cbf8ad7ecf345940910c014fef9551a3219743cfb7115e356b5841ae97d6ce62e7a1ba1e3300d243efca34d9
|
||||
|
@ -0,0 +1,34 @@
|
||||
https://github.com/gwsw/less/pull/412
|
||||
|
||||
From 5d884b29fb11c2686b804428f483f4607334eb68 Mon Sep 17 00:00:00 2001
|
||||
From: Sam James <sam@gentoo.org>
|
||||
Date: Sun, 13 Aug 2023 03:57:25 +0100
|
||||
Subject: [PATCH] lesstest: use pkg-config to find ncurses libraries
|
||||
|
||||
Fails to build with split tinfo otherwise like:
|
||||
```
|
||||
|
||||
x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -fdiagnostics-color=always -frecord-gcc-switches -Wreturn-type -ggdb3 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 -Wl,-z,pack-relative-relocs -ggdb3 -o lesstest display.o env.o lesstest.o parse.o pipeline.o log.o run.o term.o wchar.o -lncurses
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: display.o: in function `display_screen':
|
||||
/var/tmp/portage/sys-apps/less-643/work/less-643/lesstest/display.c:86:(.text+0x2e0): undefined reference to `tgoto'
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: term.o: in function `setup_mode':
|
||||
/var/tmp/portage/sys-apps/less-643/work/less-643/lesstest/term.c:83:(.text+0x18): undefined reference to `tgetstr'
|
||||
[...]
|
||||
```
|
||||
|
||||
Going forward, we may want to just add a Makefile.in which configure handles
|
||||
to the lesstest subdir.
|
||||
|
||||
Signed-off-by: Sam James <sam@gentoo.org>
|
||||
--- a/lesstest/Makefile
|
||||
+++ b/lesstest/Makefile
|
||||
@@ -1,7 +1,8 @@
|
||||
CC ?= gcc
|
||||
CFLAGS ?= -Wall -O2
|
||||
LDFLAGS ?=
|
||||
-TERMLIB = -lncurses
|
||||
+PKG_CONFIG ?= pkg-config
|
||||
+TERMLIB ?= $(shell ${PKG_CONFIG} --libs ncurses)
|
||||
srcdir ?= .
|
||||
|
||||
all: lesstest lt_screen
|
93
sdk_container/src/third_party/portage-stable/sys-apps/less/less-643.ebuild
vendored
Normal file
93
sdk_container/src/third_party/portage-stable/sys-apps/less/less-643.ebuild
vendored
Normal file
@ -0,0 +1,93 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Releases are usually first a beta then promoted to stable if no
|
||||
# issues were found. Upstream explicitly ask "to not generally distribute"
|
||||
# the beta versions. It's okay to keyword beta versions if they fix
|
||||
# a serious bug, but otherwise try to avoid it.
|
||||
|
||||
WANT_AUTOMAKE=none
|
||||
WANT_LIBTOOL=none
|
||||
inherit autotools flag-o-matic optfeature toolchain-funcs
|
||||
|
||||
DESCRIPTION="Excellent text file viewer"
|
||||
HOMEPAGE="https://www.greenwoodsoftware.com/less/"
|
||||
|
||||
MY_PV=${PV/_beta/-beta}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://github.com/gwsw/less"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${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"
|
||||
fi
|
||||
fi
|
||||
|
||||
S="${WORKDIR}"/${MY_P/?beta}
|
||||
|
||||
LICENSE="|| ( GPL-3 BSD-2 )"
|
||||
SLOT="0"
|
||||
IUSE="pcre test"
|
||||
# chinese1, utf8-2
|
||||
RESTRICT="test !test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
>=app-misc/editor-wrapper-3
|
||||
>=sys-libs/ncurses-5.2:=
|
||||
pcre? ( dev-libs/libpcre2 )
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND="test? ( virtual/pkgconfig )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Per upstream README to prepare live build
|
||||
[[ ${PV} == 9999 ]] && emake -f Makefile.aut distfiles
|
||||
# Upstream uses unpatched autoconf-2.69, which breaks with clang-16.
|
||||
# https://bugs.gentoo.org/870412
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
append-lfs-flags # bug #896316
|
||||
|
||||
local myeconfargs=(
|
||||
--with-regex=$(usex pcre pcre2 posix)
|
||||
--with-editor="${EPREFIX}"/usr/libexec/editor
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
newbin "${FILESDIR}"/lesspipe-r2.sh lesspipe
|
||||
newenvd "${FILESDIR}"/less.envd 70less
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
optfeature "Colorized output supprt" dev-python/pygments
|
||||
|
||||
if has_version "<${CATEGORY}/${PN}-483-r1" ; then
|
||||
elog "The lesspipe.sh symlink has been dropped. If you are still setting"
|
||||
elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
|
||||
fi
|
||||
|
||||
if has_version "<${CATEGORY}/${PN}-643" ; then
|
||||
elog "less now colorizes by default. To disable this, set LESSCOLOR=no."
|
||||
fi
|
||||
}
|
@ -3,34 +3,39 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
WANT_AUTOMAKE=none
|
||||
WANT_LIBTOOL=none
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://github.com/gwsw/less"
|
||||
inherit git-r3
|
||||
fi
|
||||
|
||||
inherit autotools flag-o-matic optfeature
|
||||
|
||||
# Releases are usually first a beta then promoted to stable if no
|
||||
# issues were found. Upstream explicitly ask "to not generally distribute"
|
||||
# the beta versions. It's okay to keyword beta versions if they fix
|
||||
# a serious bug, but otherwise try to avoid it.
|
||||
|
||||
MY_PV=${PV/_beta/-beta}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
WANT_AUTOMAKE=none
|
||||
WANT_LIBTOOL=none
|
||||
inherit autotools flag-o-matic optfeature toolchain-funcs
|
||||
|
||||
DESCRIPTION="Excellent text file viewer"
|
||||
HOMEPAGE="https://www.greenwoodsoftware.com/less/"
|
||||
[[ ${PV} != 9999 ]] && SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
|
||||
|
||||
MY_PV=${PV/_beta/-beta}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://github.com/gwsw/less"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://www.greenwoodsoftware.com/less/${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${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"
|
||||
fi
|
||||
fi
|
||||
|
||||
S="${WORKDIR}"/${MY_P/?beta}
|
||||
|
||||
LICENSE="|| ( GPL-3 BSD-2 )"
|
||||
SLOT="0"
|
||||
if [[ ${PV} != 9999 && ${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"
|
||||
fi
|
||||
IUSE="pcre"
|
||||
IUSE="pcre test"
|
||||
# chinese1, utf8-2
|
||||
RESTRICT="test !test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
>=app-misc/editor-wrapper-3
|
||||
@ -38,9 +43,10 @@ DEPEND="
|
||||
pcre? ( dev-libs/libpcre2 )
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND="test? ( virtual/pkgconfig )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-633-tinfow.patch
|
||||
"${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
@ -63,7 +69,7 @@ src_configure() {
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake check VERBOSE=1
|
||||
emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
@ -80,4 +86,8 @@ pkg_preinst() {
|
||||
elog "The lesspipe.sh symlink has been dropped. If you are still setting"
|
||||
elog "LESSOPEN to that, you will need to update it to '|lesspipe %s'."
|
||||
fi
|
||||
|
||||
if has_version "<${CATEGORY}/${PN}-643" ; then
|
||||
elog "less now colorizes by default. To disable this, set LESSCOLOR=no."
|
||||
fi
|
||||
}
|
||||
|
@ -4,3 +4,4 @@ DIST portage-3.0.46.tar.bz2 1148375 BLAKE2B d97698eb3341a8d04980e021e5be8650193b
|
||||
DIST portage-3.0.47.tar.bz2 1148789 BLAKE2B 268589c37a6bdc36377f3e407b16bebfb9876adc1d89ee7576f3ebbee42bc0799f5a225dfd53ffedeeded91ca4403383d4811b4f104448c1b2fc6c277ca94ef1 SHA512 abbd2446d0da0b5d298a235c2cc7d2d4e001e9f012b6e22149fed4514b52dc938b0377b2551f45e3505b9dddeedd7170951ff967310708ec3b93610b775a7c02
|
||||
DIST portage-3.0.48.1.tar.bz2 1150967 BLAKE2B ed8822306ef55a776163df3464f67cfe0942a0a2aa55c324921da106019f9f8f19db772d4bee75f49ef6f9b1823b95b2239ef4fe1457fc5c22956fc83419f9c5 SHA512 c20cd0557d885329910fade4d5a0b701bb411f179779d96b22c5dc4e1b504d4ed3dbfbd8c28157782a297d794ce3a0021f3c6aaedc7299f3df858294c14f7945
|
||||
DIST portage-3.0.49.tar.bz2 1152449 BLAKE2B a47f951a35828ba9c8fc88c2eab5222c98ed20240c736c366d8f2e4f4aef773a140bf0e150448cc3796a7adb7471ce006aae4de1816bbbaae6dd83dcf28f52b0 SHA512 f07950d10c01bda0915aa30c5c0b6ce2864754fe7dea38b5341336cd7665dcabfdc219969f1a3d2803db59bc23fc4284bc96b4087a596cb27a5d9eb075735469
|
||||
DIST portage-3.0.50.tar.bz2 1153508 BLAKE2B b90d93f8922acdb5486a52c1354c6c9829fac608971078a641b604b57240065eec4e82cc9cb2fb8b4ba485a7f2d52473c0a90295b29eb578638ad11cd3cf2943 SHA512 355841af862077f9203d6f8cbe904f4966516597444f38ef535fc06d0fe5c21d9c1da139a44407fdd69b56eb9c49c286187d856ef4e9b9bc6b21bab5b772a88f
|
||||
|
@ -22,7 +22,7 @@ if [[ ${PV} == 9999 ]] ; then
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
|
||||
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"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
|
229
sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.50.ebuild
vendored
Normal file
229
sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.50.ebuild
vendored
Normal file
@ -0,0 +1,229 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( pypy3 python3_{10..12} )
|
||||
PYTHON_REQ_USE='bzip2(+),threads(+)'
|
||||
TMPFILES_OPTIONAL=1
|
||||
|
||||
inherit meson linux-info python-r1 tmpfiles
|
||||
|
||||
DESCRIPTION="The package management and distribution system for Gentoo"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="
|
||||
https://anongit.gentoo.org/git/proj/portage.git
|
||||
https://github.com/gentoo/portage.git
|
||||
"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# setuptools is still needed as a workaround for Python 3.12+ for now.
|
||||
# https://github.com/mesonbuild/meson/issues/7702
|
||||
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
' python3_12)
|
||||
test? ( dev-vcs/git )
|
||||
"
|
||||
DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
>=app-arch/tar-1.27
|
||||
dev-lang/python-exec:2
|
||||
>=sys-apps/sed-4.0.5 sys-devel/patch
|
||||
!build? ( $(python_gen_impl_dep 'ssl(+)') )
|
||||
apidoc? (
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx-epytext[${PYTHON_USEDEP}]
|
||||
)
|
||||
doc? (
|
||||
app-text/xmlto
|
||||
~app-text/docbook-xml-dtd-4.4
|
||||
)
|
||||
"
|
||||
# Require sandbox-2.2 for bug #288863.
|
||||
# For whirlpool hash, require python[ssl] (bug #425046).
|
||||
RDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
acct-user/portage
|
||||
app-arch/zstd
|
||||
>=app-arch/tar-1.27
|
||||
dev-lang/python-exec:2
|
||||
>=sys-apps/baselayout-2.9
|
||||
>=sys-apps/findutils-4.4
|
||||
!build? (
|
||||
>=app-admin/eselect-1.2
|
||||
>=app-shells/bash-5.0:0
|
||||
>=sys-apps/sed-4.0.5
|
||||
>=sec-keys/openpgp-keys-gentoo-release-20230329
|
||||
rsync-verify? (
|
||||
>=app-portage/gemato-14.5[${PYTHON_USEDEP}]
|
||||
>=app-crypt/gnupg-2.2.4-r2[ssl(-)]
|
||||
)
|
||||
)
|
||||
elibc_glibc? ( >=sys-apps/sandbox-2.2 )
|
||||
elibc_musl? ( >=sys-apps/sandbox-2.2 )
|
||||
kernel_linux? ( sys-apps/util-linux )
|
||||
>=app-misc/pax-utils-0.1.17
|
||||
selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
|
||||
xattr? ( kernel_linux? (
|
||||
>=sys-apps/install-xattr-0.3
|
||||
) )
|
||||
!<app-admin/logrotate-3.8.0
|
||||
!<app-portage/gentoolkit-0.4.6
|
||||
!<app-portage/repoman-2.3.10
|
||||
!~app-portage/repoman-3.0.0
|
||||
"
|
||||
# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
|
||||
# NOTE: FEATURES=installsources requires debugedit and rsync
|
||||
PDEPEND="
|
||||
!build? (
|
||||
>=net-misc/rsync-2.6.4
|
||||
>=sys-apps/coreutils-6.4
|
||||
>=sys-apps/file-5.44-r3
|
||||
)
|
||||
"
|
||||
|
||||
pkg_pretend() {
|
||||
local CONFIG_CHECK="~IPC_NS ~PID_NS ~NET_NS ~UTS_NS"
|
||||
|
||||
check_extra_config
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if use prefix-guest; then
|
||||
sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
|
||||
-e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
|
||||
-e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
|
||||
-i cnf/repos.conf || die "sed failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local code_only=false
|
||||
python_foreach_impl my_src_configure
|
||||
}
|
||||
|
||||
my_src_configure() {
|
||||
local emesonargs=(
|
||||
-Dcode-only=${code_only}
|
||||
-Deprefix="${EPREFIX}"
|
||||
-Dportage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}"
|
||||
-Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
|
||||
$(meson_use doc)
|
||||
$(meson_use apidoc)
|
||||
$(meson_use gentoo-dev)
|
||||
$(meson_use ipc)
|
||||
$(meson_use xattr)
|
||||
)
|
||||
|
||||
if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
|
||||
emesonargs+=( -Dnative-extensions=true )
|
||||
else
|
||||
emesonargs+=( -Dnative-extensions=false )
|
||||
fi
|
||||
|
||||
if use build; then
|
||||
emesonargs+=( -Drsync-verify=false )
|
||||
else
|
||||
emesonargs+=( $(meson_use rsync-verify) )
|
||||
fi
|
||||
|
||||
meson_src_configure
|
||||
code_only=true
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
python_foreach_impl meson_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
python_foreach_impl my_src_install
|
||||
dotmpfiles "${FILESDIR}"/portage-{ccache,tmpdir}.conf
|
||||
|
||||
local scripts
|
||||
mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/{bin,sbin}/* || die)
|
||||
python_replicate_script "${scripts[@]}"
|
||||
}
|
||||
|
||||
my_src_install() {
|
||||
local pydirs=(
|
||||
"${D}$(python_get_sitedir)"
|
||||
"${ED}/usr/lib/portage/${EPYTHON}"
|
||||
)
|
||||
|
||||
meson_src_install
|
||||
python_optimize "${pydirs[@]}"
|
||||
python_fix_shebang "${pydirs[@]}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
python_foreach_impl meson_src_test --no-rebuild --verbose
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if ! use build; then
|
||||
python_setup
|
||||
local sitedir=$(python_get_sitedir)
|
||||
[[ -d ${D}${sitedir} ]] || die "${D}${sitedir}: No such directory"
|
||||
env -u DISTDIR \
|
||||
-u PORTAGE_OVERRIDE_EPREFIX \
|
||||
-u PORTAGE_REPOSITORIES \
|
||||
-u PORTDIR \
|
||||
-u PORTDIR_OVERLAY \
|
||||
PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
|
||||
"${PYTHON}" -m portage._compat_upgrade.default_locations || die
|
||||
|
||||
env -u BINPKG_COMPRESS -u PORTAGE_REPOSITORIES \
|
||||
PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
|
||||
"${PYTHON}" -m portage._compat_upgrade.binpkg_compression || die
|
||||
|
||||
env -u FEATURES -u PORTAGE_REPOSITORIES \
|
||||
PYTHONPATH="${D}${sitedir}${PYTHONPATH:+:${PYTHONPATH}}" \
|
||||
"${PYTHON}" -m portage._compat_upgrade.binpkg_multi_instance || die
|
||||
fi
|
||||
|
||||
# elog dir must exist to avoid logrotate error for bug #415911.
|
||||
# This code runs in preinst in order to bypass the mapping of
|
||||
# portage:portage to root:root which happens after src_install.
|
||||
keepdir /var/log/portage/elog
|
||||
# This is allowed to fail if the user/group are invalid for prefix users.
|
||||
if chown portage:portage "${ED}"/var/log/portage{,/elog} 2>/dev/null ; then
|
||||
chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog}
|
||||
fi
|
||||
|
||||
if has_version "<${CATEGORY}/${PN}-2.3.77"; then
|
||||
elog "The emerge --autounmask option is now disabled by default, except for"
|
||||
elog "portions of behavior which are controlled by the --autounmask-use and"
|
||||
elog "--autounmask-license options. For backward compatibility, previous"
|
||||
elog "behavior of --autounmask=y and --autounmask=n is entirely preserved."
|
||||
elog "Users can get the old behavior simply by adding --autounmask to the"
|
||||
elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this"
|
||||
elog "change, see https://bugs.gentoo.org/658648."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Warn about obsolete "enotice" script, bug #867010
|
||||
local bashrc=${EROOT}/etc/portage/profile/profile.bashrc
|
||||
if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then
|
||||
eerror "Obsolete 'enotice' script detected!"
|
||||
eerror "Please remove this from ${bashrc} to avoid problems."
|
||||
eerror "See bug 867010 for more details."
|
||||
fi
|
||||
}
|
@ -127,12 +127,17 @@ my_src_configure() {
|
||||
-Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
|
||||
$(meson_use doc)
|
||||
$(meson_use apidoc)
|
||||
$(meson_use native-extensions)
|
||||
$(meson_use gentoo-dev)
|
||||
$(meson_use ipc)
|
||||
$(meson_use xattr)
|
||||
)
|
||||
|
||||
if use native-extensions && [[ "${EPYTHON}" != "pypy3" ]] ; then
|
||||
emesonargs+=( -Dnative-extensions=true )
|
||||
else
|
||||
emesonargs+=( -Dnative-extensions=false )
|
||||
fi
|
||||
|
||||
if use build; then
|
||||
emesonargs+=( -Drsync-verify=false )
|
||||
else
|
||||
@ -159,7 +164,7 @@ src_install() {
|
||||
my_src_install() {
|
||||
local pydirs=(
|
||||
"${D}$(python_get_sitedir)"
|
||||
"${D}/usr/lib/portage/${EPYTHON}"
|
||||
"${ED}/usr/lib/portage/${EPYTHON}"
|
||||
)
|
||||
|
||||
meson_src_install
|
||||
|
@ -32,7 +32,7 @@ else
|
||||
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
|
||||
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
|
||||
SLOT=$(ver_cut 1-2)
|
||||
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"
|
||||
fi
|
||||
|
||||
#
|
||||
|
@ -32,7 +32,7 @@ else
|
||||
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
|
||||
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
|
||||
SLOT=$(ver_cut 1-2)
|
||||
#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"
|
||||
fi
|
||||
|
||||
#
|
||||
@ -250,6 +250,11 @@ src_configure() {
|
||||
--libdir="${EPREFIX}"${LIBPATH}
|
||||
--libexecdir="${EPREFIX}"${LIBPATH}
|
||||
--includedir="${EPREFIX}"${INCPATH}
|
||||
# portage's econf() does not detect presence of --d-d-t
|
||||
# because it greps only top-level ./configure. But not
|
||||
# libiberty's or bfd's configure.
|
||||
--disable-dependency-tracking
|
||||
--disable-silent-rules
|
||||
--enable-obsolete
|
||||
--enable-shared
|
||||
--enable-threads
|
||||
@ -331,11 +336,11 @@ src_compile() {
|
||||
cd "${MY_BUILDDIR}" || die
|
||||
|
||||
# see Note [tooldir hack for ldscripts]
|
||||
emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
|
||||
emake tooldir="${EPREFIX}${TOOLPATH}" all
|
||||
|
||||
# only build info pages if the user wants them
|
||||
if use doc ; then
|
||||
emake V=1 info
|
||||
emake info
|
||||
fi
|
||||
|
||||
# we nuke the manpages when we're left with junk
|
||||
@ -349,7 +354,7 @@ src_test() {
|
||||
# bug #637066
|
||||
filter-flags -Wall -Wreturn-type
|
||||
|
||||
emake -k V=1 check
|
||||
emake -k check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
@ -358,7 +363,7 @@ src_install() {
|
||||
cd "${MY_BUILDDIR}" || die
|
||||
|
||||
# see Note [tooldir hack for ldscripts]
|
||||
emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
|
||||
emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
|
||||
rm -rf "${ED}"/${LIBPATH}/bin || die
|
||||
use static-libs || find "${ED}" -name '*.la' -delete
|
||||
|
||||
|
@ -7,6 +7,7 @@ DIST gcc-11-20230427.tar.xz 76165128 BLAKE2B dd896b418c1fce35a61005d5b5c90cfd124
|
||||
DIST gcc-11-20230622.tar.xz 76199316 BLAKE2B a769dc6be63eabca3bc33944b471d727bf230e506773c85977156b187f12664f2cd3e0992a1faefda8ec88ff85d1a8d12795121baadc7e8b9653d69a8025e46e SHA512 8dbc5a4b54f2bc52458914705af40a00b33e46061dd5b335b4b4a6e96d17206fe480d3fec564dd11ebcca6168f054984d706b1b26b7e694e8b327692a13ae7d1
|
||||
DIST gcc-11-20230727.tar.xz 76213292 BLAKE2B 8d15efab47a39695997b15d606c27929794c3b8a96da0243f336c78076daad4b322d37ddfca3d928b73ca7a68c25b05a7834596a27ac79d11d2c77777573f118 SHA512 e64b10ab59548695d538d0ca471efb7bb29dd751e719a8e7c1434182a8cf7433e28348fb08c3babe90bda952ee2e739a9fd055ac8b9ed883417066c836d2ffd3
|
||||
DIST gcc-11-20230803.tar.xz 76202192 BLAKE2B e268c236873635c7059a4f0c88f192eb3634eeba9d8f4d1cf974a2ceae60237024097f4b7a2015694144509492dc3a412c8f77af6f20e0611f2f73f25ce48e36 SHA512 df25cff801f93a858a8326baf74e0d3060208cfde85bce2c1ac1ed38860de04ca1c2c509ca1d43b413bcb4b12cb429cd7aa193bc38fb8a42128e31f0ac92ac21
|
||||
DIST gcc-11-20230810.tar.xz 76213220 BLAKE2B a58fc332238352bb5d30201451c1cd2505243f6c5f8c16c8a3373dba304fbbbc60cfccbac030783b3831d8c329c1e58b5014fc6304bee80c8d0b8689761b9805 SHA512 90ee5db43f978fba60231d0c2e0c8c1e9d4bff3f486226ccbf765e9b38fcf11e039bc1dd23f3fde1ff1ce22e9d9e5765b5198da41f61de47da1ab434abc4f1d8
|
||||
DIST gcc-11.4.0-musl-patches-2.tar.xz 4308 BLAKE2B a2335e155fc57816fed822a648e0eaefafcba9d04e1ad0fd7baeea5a694ab6f5e3c1678cb406f2a1bd17bab25cb01699d032713a1ccf337948dfda2093844607 SHA512 17b84f907cb1bd763873655e6f35fd3ed55a40b602b70a626f04f83b4cc89c6261db1661de78d4d969187a8c56e9f6305b742515a3836b962248a21df0df5d0c
|
||||
DIST gcc-11.4.0-patches-10.tar.xz 13852 BLAKE2B 54937d13e30e2a5303c7e197fae09eeed35ca0b9783625e02578fcee829b5503fb22d664366322b304df7d01ae807d00af7c93db3e3ceebe4851e15647724f87 SHA512 31b4d7a2e7cc589e92e12c3583d13d41c523cafbd309bc0532df9b68ea2473c89daef4c0edd3ce2917b5823d81a7792f145b9449f16277d0d64c22ceff50bbb9
|
||||
DIST gcc-11.4.0-patches-9.tar.xz 14704 BLAKE2B 9aa2ecbac493d3040694e9930738e57d59a764b90ab92b91709c319b883f28ad108767e5d11e8b62af40bf1e583d5ff83a03e8c895f904bc6f41315ce9ab4f0a SHA512 ac8b7c6c382ffacc4e9d08299440fc237fa366ec36fb8eb7a8d426b64a4186384a262e6380dc83ed7f7240125ce26a8435c8a4e0e13976ef2652067a7129bd17
|
||||
@ -16,19 +17,23 @@ DIST gcc-12-20230526.tar.xz 79780444 BLAKE2B 6f6eca272ab506e16a231003c399e285725
|
||||
DIST gcc-12-20230623.tar.xz 79782948 BLAKE2B 6eeabdd1495482b8bc5a6f2f90cd7d7967b66664d277c5f755f1ee98ac2c99db1552ab13b1c69f4c47d1d0b8de584e6a5f024b45e3c5934f49179cf65ca30acc SHA512 09aa0304a8a916aea7a4714eb3a7541b2015e3bdb8ae9bd40bc289553c4ec86f91b054925d2af45f33af9d20a7422949e691c0f552d68ee1d5206b4007310a88
|
||||
DIST gcc-12-20230728.tar.xz 79813460 BLAKE2B 89db12fbdc7d75d298335fdd61b15439c161090deb94e224d13592d25fa64fd21c289f75fbe77e5c0d10f90e18019a12c343014e73ef446281ac8c471a39b937 SHA512 20c8bbe3918ed41b05b00cc3fa90e1ee59faf9ece876faf3e93ab01b2a79e6b83b55812e41d662ad1b9a420ca3f891f46cd70aa9f7f6bcf292dda0f57b56681e
|
||||
DIST gcc-12-20230804.tar.xz 79785996 BLAKE2B 6af25c245bed3affa42a265e56afc59afe7001603572223226b236efb67c804697a53b8f31ad68a5ddcaee1533212de87725bbad4acbb67a75e9b007e69fc071 SHA512 44b0c202f913913c586313a0f76bd721566e4519824a18b5569339e3996d556c866e7b980c341aa1d433f56fc8f18d2a11fc47e5bc91b693a3ecfdce37b9082b
|
||||
DIST gcc-12-20230811.tar.xz 79789344 BLAKE2B eac77a22bf93524e60320db7aeb7ecbfceb0f2e84596ed81b0e8f8ea985fbf412a88c42bf2d58f1aa42698e4cf2037d24fa5457ba4a7d18a5c14fde509b56399 SHA512 e9de50607ae2f8b1800346c1e7f85a042f363c5da00497fc7355d3e89f2e2196df8e04ee1514153cae4bbcc8c8dba187558f062a30ff977f7725576b624f5e42
|
||||
DIST gcc-12.3.0-musl-patches-1.tar.xz 3572 BLAKE2B c7bf65f7c9ea8023ddaac821ee2b778622fa310ac72a72b2f7032494a8f304eac86217f9204622e6c21aaef9952bece0d09bc126facd4f42b602927909815ab5 SHA512 babc279fea2c1fd4c018815f2f5630214fd46015ce9f365c28af242681d51818eaca30ce298eddcab1eed5ac5f2759e2b47b2335afab9d722b4469a6d4fec326
|
||||
DIST gcc-12.3.0-patches-2.tar.xz 14236 BLAKE2B 06c43662c9abb0fa3cf90d5e2273c69aecb9158e6cf6f23c04754ed5d686be2616e81e2502eb16f4298ddd50518ca7677e13249da9e9b091162d3931ff65e4fe SHA512 b0d4b85dbf1a54aaaa1997203b872e3106906b4ad49cde57e1428bc22b2f8e2d73b8cb10ae0d0b792aebaf664594da4d1dea04c44ddc34e59047410766db04d1
|
||||
DIST gcc-13-20230527.tar.xz 83956360 BLAKE2B 86a2131b88144817673a6300c73b29c2dbb8559a7057609601029aaf60aeb4c4926fa4b99c4e1768726cde09f994159685768b62b3ca73d7b606847788301e82 SHA512 87566c74258f9981742eae77f552361c220f79fa6f17c36d5b5a9e73f41c50d8a2cab16b9ffb17f07829005f0d42b4b1d524150d3dcba9710091532cbfad7152
|
||||
DIST gcc-13-20230729.tar.xz 84264252 BLAKE2B 85e0b8af941c6d57317bf68503ea278ecd9e0927e994e73b65b2a674610daa83d3081c9aa87326034b22e694e841d714734187a69ffc80d63d1f5e48d9514772 SHA512 46a42d79de118a16dc195605fd461034e9b41856fb11fee3bcce962517e713094935704aa88e1ca05f896176bee9eecfef835ee8858ea584421b924390fe3812
|
||||
DIST gcc-13-20230805.tar.xz 84271272 BLAKE2B a8898131c3d597417cd349a91d9015d27a7dcbd9bcdbf75c96da45b07fd48b0a2bb240e5e90cb138ebbe7ac9df7c43fc7ca768e88fc1ffe388ab38c4c07cd219 SHA512 386cf5ae6948f7dff45d82910bb52418e0e040a8d2802a658c05cc0bb0be16c880878a18af4fba7a5025132b77657c50b20e84e3ea77c1520a7a135013879750
|
||||
DIST gcc-13-20230812.tar.xz 84291228 BLAKE2B 5210e6d2dfc3250efb924ddd8ece283a568669878adc278bb38b7859085109a09881b610a85ecdaac144e5f600e1cf9ebcbbc9e8cb0ae2acb1805e89b0b62868 SHA512 31ff4b3f7b30c1313918c3d492c3a83e321159864b85ac266fa027baf90e41e5cb88208cffa94a482bb898000d6f199556e34e93961a7b6f92566d62cc818613
|
||||
DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69
|
||||
DIST gcc-13.2.0-patches-3.tar.xz 30956 BLAKE2B 29ce043b46645640ca1e983397af3e158588ad87575f0bc59451ea4a7dd5e3bb5b190ed031de6a22cd790d423ba111e95d222187dd09985dceb12db9f0a2d907 SHA512 4ffecae7be320124ad0c4e71e39e142b7aa8db0e70b5f486f491d7a33ea31efc6464c6abeea77df02a8bd5cf81f08225d625c8af5c27f9afa32c0d7d989f7a3c
|
||||
DIST gcc-13.2.0-patches-4.tar.xz 35284 BLAKE2B 230932b5df961518dc0c1aea219e65bd49a64bfcbe0621f90012d8fa18c099fbaa9ce865fb7b95e403e9b227d4cc86bf701668837519a3962a76769f49cd1356 SHA512 5464a6de67ed16a5b3200d513069e8ea10d57d0c78eb84523d30f7abfcaa2611c5462e83f9bbdb079e42b4f702e5f2ecd1db0f370fdf0fe6c0216a08cf2801d7
|
||||
DIST gcc-13.2.0-patches-5.tar.xz 34672 BLAKE2B f675575477aab22b1ef4105ecbf636b53dde1fc463e8fc79645f0828ff57417a028100ce48eb8ac0b6ca6e8bae91072f3ed2878b9c00fb49397ffcf736606160 SHA512 15b7db29cc03dcdc023551a3cf01f3756724b7caf8fe0d5ed7831ca78f02d9f0a72fb96326cad79bcd9cb358005676d3cb4217dc1b8fccdcd7906ae1a4bee851
|
||||
DIST gcc-13.2.0-patches-7.tar.xz 37064 BLAKE2B 4a8700a8d44bfaa84926f8bfd0da4c5b0c0377f47fc0679456e909f7c9029b9cf1b72c0ba0bc505d9035d5c38e27f7e5b029727eaf2bc7aca417a6be966b2f43 SHA512 f440c97e6782ecb8581d41608e31a648ac426e2d870bc1d171da7794cdeff2fd0546cae0c7214e72fd3a00ead8a5c66f3f633b670b74553a2f3a40378b51f20c
|
||||
DIST gcc-13.2.0.tar.xz 87858592 BLAKE2B 0034b29d3d6cc05821f0c4253ce077805943aff7b370729dd203bda57d89c107edd657eeddc2fb1e69ea15c7b0323b961f46516c7f4af89a3ccf7fea84701be2 SHA512 d99e4826a70db04504467e349e9fbaedaa5870766cda7c5cab50cdebedc4be755ebca5b789e1232a34a20be1a0b60097de9280efe47bdb71c73251e30b0862a2
|
||||
DIST gcc-14-20230723.tar.xz 84677324 BLAKE2B d9bc3aeaac971984178eedc70bc4b1b1314a3c299c17a60992fe843e01c35aee63fd0742d97449f2bd14e1b2adda3c8a2095cc26b4e4eb3a8d1620af9706ea43 SHA512 53490f78fcebf3e795ad012fe7462390f0e40fc541e3ee6d9edcedba78d645029a35d74e5d16aa0d1ee487c43f7de10f5911043f875e8a5787603c37e1708a7c
|
||||
DIST gcc-14-20230730.tar.xz 85008220 BLAKE2B 93a253408aec27af68f98d00f63d0498445385bab2f324b615aba0f488cdbc55ea4d91a3a8934ba46e275aa7ebf3439ee76cfa0571948cbc9dbd6618760abfa2 SHA512 0314fbd44e359f9d183e8027c3f2c70cc6aff07b7a3f7d55b62718e5ec72a70698c30464460a5e3cebabc4bfb369ebde327fc1c13d7dd8667f597f1c4e143656
|
||||
DIST gcc-14-20230806.tar.xz 85043088 BLAKE2B 1026c65f39cb9930e996c865b80db9b7d3ba24ad7a56566a8a3fa49bf468d8ab1610d8235ff14ba469fb33448cca43cb997eb06692847515db3f6a773b799bbd SHA512 09fb47b3e7d2072095696e68e87f864cb1f14ef3027d904202bbc34a16df93a0c4805185fa0a8572155b11c40bc107074655c4dae078fe371593048f9318e1ab
|
||||
DIST gcc-14-20230813.tar.xz 85109912 BLAKE2B 7c1f05a377697925776f9166271c0bf4f5f41fc298f3dc39342d37f8f7d2aa6ebbe288fc48f16bfc8081a5aae09228cc41cd34764f71f622f1bcd519dd5d4ce7 SHA512 bdb27b503281d1196cd1d4ffbb043f67758e0018127dfba9c7f1aa19501f03add388c7223ae32098c4fa9d1f6839673b4e7cf0ac283a9940e24f1416047beb7a
|
||||
DIST gcc-14.0.0-musl-patches-1.tar.xz 3576 BLAKE2B 692baee8a7709905d53aeb150d73a3721c4ba47ee5f397cfb1b5be905cf003ca02b60c94ee294d90ac39645cd5cdf186c7a3aa950c47d8cf680c128ed705b807 SHA512 0592ab98a7142e404623a6511c67dff61e9ade32c3fb2c0e75b456306e0af3799ad13252b50b3d2fdd31e5815d7f0b16b0ad63ab8386fe4d78729fc9c182d617
|
||||
DIST gcc-14.0.0-patches-2.tar.xz 11484 BLAKE2B 6ff968051d286f21eb7f4ec80303b232530c153cca8d9e61ddfdf3675ef8c5740223a8b720ec9d5c4561b505993c675cc6fc7a9bab659ee1db99e1d97911eb74 SHA512 b255338d6110d9bfe211ba14da7b186f69b81503dba6e4ec19ee6fa37d44c0690e713c763abe27ce934ff7f9e5d0c8788a54c30587f07f65858b1e817cbf7247
|
||||
DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6
|
||||
|
@ -0,0 +1,105 @@
|
||||
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=af6cfd7b663909688c6ca55b6e9f859cdde4310f
|
||||
https://gcc.gnu.org/PR110926
|
||||
|
||||
From af6cfd7b663909688c6ca55b6e9f859cdde4310f Mon Sep 17 00:00:00 2001
|
||||
From: liuhongt <hongtao.liu@intel.com>
|
||||
Date: Mon, 7 Aug 2023 11:10:52 +0800
|
||||
Subject: [PATCH] Fix ICE in rtl check when bootstrap.
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=utf8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/libgfortran/generated/matmul_i1.c: In function âmatmul_i1_avx512fâ:
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/libgfortran/generated/matmul_i1.c:1781:1: internal compiler error: RTL check: expected elt 0 type 'i' or 'n', have 'w' (rtx const_int) in vpternlog_redundant_operand_mask, at config/i386/i386.cc:19460
|
||||
1781 | }
|
||||
| ^
|
||||
0x5559de26dc2d rtl_check_failed_type2(rtx_def const*, int, int, int, char const*, int, char const*)
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/rtl.cc:761
|
||||
0x5559de340bfe vpternlog_redundant_operand_mask(rtx_def**)
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/config/i386/i386.cc:19460
|
||||
0x5559dfec67a6 split_44
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/config/i386/sse.md:12730
|
||||
0x5559dfec67a6 split_63
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/config/i386/sse.md:28428
|
||||
0x5559deb8a682 try_split(rtx_def*, rtx_insn*, int)
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/emit-rtl.cc:3800
|
||||
0x5559deb8adf2 try_split(rtx_def*, rtx_insn*, int)
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/emit-rtl.cc:3972
|
||||
0x5559def69194 split_insn
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/recog.cc:3385
|
||||
0x5559def70c57 split_all_insns()
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/recog.cc:3489
|
||||
0x5559def70d0c execute
|
||||
/var/tmp/portage/sys-devel/gcc-14.0.0_pre20230806/work/gcc-14-20230806/gcc/recog.cc:4413
|
||||
|
||||
Use INTVAL (imm_op) instead of XINT (imm_op, 0).
|
||||
|
||||
gcc/ChangeLog:
|
||||
|
||||
PR target/110926
|
||||
* config/i386/i386-protos.h
|
||||
(vpternlog_redundant_operand_mask): Adjust parameter type.
|
||||
* config/i386/i386.cc (vpternlog_redundant_operand_mask): Use
|
||||
INTVAL instead of XINT, also adjust parameter type from rtx*
|
||||
to rtx since the function only needs operands[4] in vpternlog
|
||||
pattern.
|
||||
(substitute_vpternlog_operands): Pass operands[4] instead of
|
||||
operands to vpternlog_redundant_operand_mask.
|
||||
* config/i386/sse.md: Ditto.
|
||||
--- a/gcc/config/i386/i386-protos.h
|
||||
+++ b/gcc/config/i386/i386-protos.h
|
||||
@@ -70,7 +70,7 @@ extern machine_mode ix86_cc_mode (enum rtx_code, rtx, rtx);
|
||||
extern int avx_vpermilp_parallel (rtx par, machine_mode mode);
|
||||
extern int avx_vperm2f128_parallel (rtx par, machine_mode mode);
|
||||
|
||||
-extern int vpternlog_redundant_operand_mask (rtx[]);
|
||||
+extern int vpternlog_redundant_operand_mask (rtx);
|
||||
extern void substitute_vpternlog_operands (rtx[]);
|
||||
|
||||
extern bool ix86_expand_strlen (rtx, rtx, rtx, rtx);
|
||||
--- a/gcc/config/i386/i386.cc
|
||||
+++ b/gcc/config/i386/i386.cc
|
||||
@@ -19454,10 +19454,10 @@ avx_vperm2f128_parallel (rtx par, machine_mode mode)
|
||||
/* Return a mask of VPTERNLOG operands that do not affect output. */
|
||||
|
||||
int
|
||||
-vpternlog_redundant_operand_mask (rtx *operands)
|
||||
+vpternlog_redundant_operand_mask (rtx pternlog_imm)
|
||||
{
|
||||
int mask = 0;
|
||||
- int imm8 = XINT (operands[4], 0);
|
||||
+ int imm8 = INTVAL (pternlog_imm);
|
||||
|
||||
if (((imm8 >> 4) & 0x0F) == (imm8 & 0x0F))
|
||||
mask |= 1;
|
||||
@@ -19475,7 +19475,7 @@ vpternlog_redundant_operand_mask (rtx *operands)
|
||||
void
|
||||
substitute_vpternlog_operands (rtx *operands)
|
||||
{
|
||||
- int mask = vpternlog_redundant_operand_mask (operands);
|
||||
+ int mask = vpternlog_redundant_operand_mask (operands[4]);
|
||||
|
||||
if (mask & 1) /* The first operand is redundant. */
|
||||
operands[1] = operands[2];
|
||||
--- a/gcc/config/i386/sse.md
|
||||
+++ b/gcc/config/i386/sse.md
|
||||
@@ -12751,7 +12751,7 @@
|
||||
(match_operand:V 3 "memory_operand")
|
||||
(match_operand:SI 4 "const_0_to_255_operand")]
|
||||
UNSPEC_VTERNLOG))]
|
||||
- "!reload_completed && vpternlog_redundant_operand_mask (operands) == 3"
|
||||
+ "!reload_completed && vpternlog_redundant_operand_mask (operands[4]) == 3"
|
||||
[(set (match_dup 0)
|
||||
(match_dup 3))
|
||||
(set (match_dup 0)
|
||||
@@ -12772,7 +12772,7 @@
|
||||
(match_operand:V 3 "nonimmediate_operand")
|
||||
(match_operand:SI 4 "const_0_to_255_operand")]
|
||||
UNSPEC_VTERNLOG))]
|
||||
- "!reload_completed && vpternlog_redundant_operand_mask (operands) != 0"
|
||||
+ "!reload_completed && vpternlog_redundant_operand_mask (operands[4]) != 0"
|
||||
[(set (match_dup 0)
|
||||
(unspec:V
|
||||
[(match_dup 1)
|
||||
--
|
||||
2.39.3
|
@ -37,7 +37,7 @@ if tc_is_live ; then
|
||||
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
|
||||
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
|
||||
# Don't keyword live ebuilds
|
||||
KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
|
||||
:;
|
||||
fi
|
||||
|
||||
|
@ -37,7 +37,7 @@ if tc_is_live ; then
|
||||
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
|
||||
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
|
||||
# Don't keyword live ebuilds
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
|
||||
:;
|
||||
fi
|
||||
|
||||
|
64
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20230810.ebuild
vendored
Normal file
64
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20230810.ebuild
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
TOOLCHAIN_PATCH_DEV="sam"
|
||||
PATCH_GCC_VER="11.4.0"
|
||||
PATCH_VER="10"
|
||||
MUSL_VER="2"
|
||||
MUSL_GCC_VER="11.4.0"
|
||||
|
||||
if [[ ${PV} == *.9999 ]] ; then
|
||||
MY_PV_2=$(ver_cut 2)
|
||||
MY_PV_3=1
|
||||
if [[ ${MY_PV_2} == 0 ]] ; then
|
||||
MY_PV_2=0
|
||||
MY_PV_3=0
|
||||
else
|
||||
MY_PV_2=$((${MY_PV_2} - 1))
|
||||
fi
|
||||
|
||||
# e.g. 12.2.9999 -> 12.1.1
|
||||
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
|
||||
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
|
||||
# Cheesy hack for RCs
|
||||
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
|
||||
MY_P=${PN}-${MY_PV}
|
||||
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
|
||||
TOOLCHAIN_SET_S=no
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
fi
|
||||
|
||||
inherit toolchain
|
||||
|
||||
if tc_is_live ; then
|
||||
# Needs to be after inherit (for now?), bug #830908
|
||||
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
|
||||
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
|
||||
# Don't keyword live ebuilds
|
||||
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
:;
|
||||
fi
|
||||
|
||||
if [[ ${CATEGORY} != cross-* ]] ; then
|
||||
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
|
||||
# If GCC is enabling CET by default, we need glibc to be built with support for it.
|
||||
# bug #830454
|
||||
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
|
||||
fi
|
||||
|
||||
src_prepare() {
|
||||
local p upstreamed_patches=(
|
||||
# add them here
|
||||
)
|
||||
for p in "${upstreamed_patches[@]}"; do
|
||||
rm -v "${WORKDIR}/patch/${p}" || die
|
||||
done
|
||||
|
||||
toolchain_src_prepare
|
||||
|
||||
eapply_user
|
||||
}
|
64
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20230811.ebuild
vendored
Normal file
64
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20230811.ebuild
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
TOOLCHAIN_PATCH_DEV="sam"
|
||||
PATCH_GCC_VER="12.3.0"
|
||||
PATCH_VER="2"
|
||||
MUSL_VER="1"
|
||||
MUSL_GCC_VER="12.3.0"
|
||||
|
||||
if [[ ${PV} == *.9999 ]] ; then
|
||||
MY_PV_2=$(ver_cut 2)
|
||||
MY_PV_3=1
|
||||
if [[ ${MY_PV_2} == 0 ]] ; then
|
||||
MY_PV_2=0
|
||||
MY_PV_3=0
|
||||
else
|
||||
MY_PV_2=$((${MY_PV_2} - 1))
|
||||
fi
|
||||
|
||||
# e.g. 12.2.9999 -> 12.1.1
|
||||
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
|
||||
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
|
||||
# Cheesy hack for RCs
|
||||
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
|
||||
MY_P=${PN}-${MY_PV}
|
||||
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
|
||||
TOOLCHAIN_SET_S=no
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
fi
|
||||
|
||||
inherit toolchain
|
||||
|
||||
if tc_is_live ; then
|
||||
# Needs to be after inherit (for now?), bug #830908
|
||||
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
|
||||
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
|
||||
# Don't keyword live ebuilds
|
||||
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
:;
|
||||
fi
|
||||
|
||||
if [[ ${CATEGORY} != cross-* ]] ; then
|
||||
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
|
||||
# If GCC is enabling CET by default, we need glibc to be built with support for it.
|
||||
# bug #830454
|
||||
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
|
||||
fi
|
||||
|
||||
src_prepare() {
|
||||
local p upstreamed_patches=(
|
||||
# add them here
|
||||
)
|
||||
for p in "${upstreamed_patches[@]}"; do
|
||||
rm -v "${WORKDIR}/patch/${p}" || die
|
||||
done
|
||||
|
||||
toolchain_src_prepare
|
||||
|
||||
eapply_user
|
||||
}
|
65
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20230812.ebuild
vendored
Normal file
65
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20230812.ebuild
vendored
Normal file
@ -0,0 +1,65 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
TOOLCHAIN_PATCH_DEV="sam"
|
||||
PATCH_GCC_VER="13.2.0"
|
||||
PATCH_VER="7"
|
||||
MUSL_VER="2"
|
||||
MUSL_GCC_VER="13.2.0"
|
||||
|
||||
if [[ ${PV} == *.9999 ]] ; then
|
||||
MY_PV_2=$(ver_cut 2)
|
||||
MY_PV_3=1
|
||||
if [[ ${MY_PV_2} == 0 ]] ; then
|
||||
MY_PV_2=0
|
||||
MY_PV_3=0
|
||||
else
|
||||
MY_PV_2=$((${MY_PV_2} - 1))
|
||||
fi
|
||||
|
||||
# e.g. 12.2.9999 -> 12.1.1
|
||||
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
|
||||
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
|
||||
# Cheesy hack for RCs
|
||||
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
|
||||
MY_P=${PN}-${MY_PV}
|
||||
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
|
||||
TOOLCHAIN_SET_S=no
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
fi
|
||||
|
||||
inherit toolchain
|
||||
|
||||
if tc_is_live ; then
|
||||
# Needs to be after inherit (for now?), bug #830908
|
||||
EGIT_BRANCH=releases/gcc-$(ver_cut 1)
|
||||
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
|
||||
# Don't keyword live ebuilds
|
||||
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
:;
|
||||
fi
|
||||
|
||||
if [[ ${CATEGORY} != cross-* ]] ; then
|
||||
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
|
||||
# If GCC is enabling CET by default, we need glibc to be built with support for it.
|
||||
# bug #830454
|
||||
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
|
||||
fi
|
||||
|
||||
src_prepare() {
|
||||
local p upstreamed_patches=(
|
||||
# add them here
|
||||
)
|
||||
for p in "${upstreamed_patches[@]}"; do
|
||||
rm -v "${WORKDIR}/patch/${p}" || die
|
||||
done
|
||||
|
||||
toolchain_src_prepare
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
|
||||
eapply_user
|
||||
}
|
65
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20230806-r1.ebuild
vendored
Normal file
65
sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20230806-r1.ebuild
vendored
Normal file
@ -0,0 +1,65 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
TOOLCHAIN_PATCH_DEV="sam"
|
||||
PATCH_GCC_VER="14.0.0"
|
||||
PATCH_VER="2"
|
||||
MUSL_VER="1"
|
||||
MUSL_GCC_VER="14.0.0"
|
||||
|
||||
if [[ ${PV} == *.9999 ]] ; then
|
||||
MY_PV_2=$(ver_cut 2)
|
||||
MY_PV_3=1
|
||||
if [[ ${MY_PV_2} == 0 ]] ; then
|
||||
MY_PV_2=0
|
||||
MY_PV_3=0
|
||||
else
|
||||
MY_PV_2=$((${MY_PV_2} - 1))
|
||||
fi
|
||||
|
||||
# e.g. 12.2.9999 -> 12.1.1
|
||||
TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
|
||||
elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
|
||||
# Cheesy hack for RCs
|
||||
MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
|
||||
MY_P=${PN}-${MY_PV}
|
||||
GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
|
||||
TOOLCHAIN_SET_S=no
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
fi
|
||||
|
||||
inherit toolchain
|
||||
|
||||
if tc_is_live ; then
|
||||
# Needs to be after inherit (for now?), bug #830908
|
||||
EGIT_BRANCH=master
|
||||
elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
|
||||
# Don't keyword live ebuilds
|
||||
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
:;
|
||||
fi
|
||||
|
||||
if [[ ${CATEGORY} != cross-* ]] ; then
|
||||
# Technically only if USE=hardened *too* right now, but no point in complicating it further.
|
||||
# If GCC is enabling CET by default, we need glibc to be built with support for it.
|
||||
# bug #830454
|
||||
RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
|
||||
fi
|
||||
|
||||
src_prepare() {
|
||||
local p upstreamed_patches=(
|
||||
# add them here
|
||||
)
|
||||
for p in "${upstreamed_patches[@]}"; do
|
||||
rm -v "${WORKDIR}/patch/${p}" || die
|
||||
done
|
||||
|
||||
toolchain_src_prepare
|
||||
|
||||
eapply "${FILESDIR}"/${P}-fix-bootstrap.patch
|
||||
eapply_user
|
||||
}
|
@ -145,6 +145,9 @@ gdb_branding() {
|
||||
src_configure() {
|
||||
strip-unsupported-flags
|
||||
|
||||
# https://sourceware.org/PR22395, bug #853898
|
||||
filter-lto
|
||||
|
||||
# See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
|
||||
# Avoid really confusing logs from subconfigure spam, makes logs far
|
||||
# more legible.
|
||||
|
@ -144,6 +144,9 @@ gdb_branding() {
|
||||
src_configure() {
|
||||
strip-unsupported-flags
|
||||
|
||||
# https://sourceware.org/PR22395, bug #853898
|
||||
filter-lto
|
||||
|
||||
# See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
|
||||
# Avoid really confusing logs from subconfigure spam, makes logs far
|
||||
# more legible.
|
||||
|
@ -2,8 +2,10 @@ DIST intel-microcode-collection-20221102.tar.xz 11125112 BLAKE2B 6054a3278b694ee
|
||||
DIST intel-microcode-collection-20230212.tar.xz 13213352 BLAKE2B b2548908632cc65e997186e7af60a35ba4a44edb88263f5018c1cc9619299816c6184352653076413b95fb914f799b765e4fa6a5c46513d1425bde353e4dcde2 SHA512 27f2aacbf409acb005f83f0f486b59128ebac4c8d6b1b329cff7e33b237a8d47e579c6afb064d7a9ff634ad652ae0c2b9bc9302e6269007e12bd4aa391075430
|
||||
DIST intel-microcode-collection-20230512.tar.xz 12924124 BLAKE2B 3593d9dd9d46281471e1ef335bb8e3fccee99cf484256b9f3b1f2fd0af1d1266c0237bf7cf97314e229f0e3ae622de68bdbe2cf3d9ed4b74ca9189f2aa7bf226 SHA512 9d65406898a8e82e66ab9ff684166eaf61a2b42c765d6f55603985176cdf7600b1f95626da0f1fc25d781212ce2c80ac108d0174371390e0e2c2ab7dd48c7b0d
|
||||
DIST intel-microcode-collection-20230520.tar.xz 12720520 BLAKE2B 804579eb05c5b8835565dec3560d059f909d13da853d37c79ddbaa049b94f96e811a2240ab043dfdbf59074e683383f5c17e76ceb0e7f6cccffdaad330bf7de1 SHA512 6302866edf5a5209f8dfc80817fe306fc11376ac7d70450f32e38483902c428365fb553c57e989a6ca6e1cf07573352c9b500764250a815c4aff6b9f6b6d47fb
|
||||
DIST intel-microcode-collection-20230804.tar.xz 12972872 BLAKE2B b2d04ad679b537fbcff7327e4eb9de5d989a3bc6057f4ef339908921fb71275f8374d1db1234f36dd8b07587133c4d2e59f1910f854038253d4cd36d5e6d2dcf SHA512 9e47ee898b5ea1da3fc115de6e8f9e5e6b2eeb74a178c3226cb2bbdf0b1677ac95c40f5d4d874c7e054bf8293e4c2457e32c953a371ab34dd16c43841412f71e
|
||||
DIST intel-ucode-sig_0x406e3-rev_0xd6.bin 101376 BLAKE2B 66d55867954d69dda1425febd93bb8c89f7aa836d504f8b5fee127f8505bcf2246f4fcc55cc245bc5e532528d60cca2eee278de7ab5174dc2862db7982a2b36f SHA512 248066b521bf512b5d8e4a8c7e921464ce52169c954d6e4ca580d8c172cd789519e22b4cf56c212e452b4191741f0202019f7061d322c9433b5af9ce5413b567
|
||||
DIST microcode-20221108.tar.gz 6436305 BLAKE2B e149e001656f45e8da9a83817a6f83fc6663edbfc8a98b27ab4f9d326f0999921aea03f1ea3628d35978ad5534e017f2d394d1d00d0c992aee54a539a582abf2 SHA512 d86bee1269d31d3028f0d2b7d4886795b96d8f1f9d5dbd5149c2dd4cec3b0319fd869f8138f283e2135ecb0bb6387cfd3c2ef1f597b4194a250ac4f2df7f15a4
|
||||
DIST microcode-20230214.tar.gz 12088391 BLAKE2B d98d054a8cfd66e3d0549d1e8f4a4745cad342d45f36a82d2f2f51fedc29635125fdad95ee4970069e134facc1ab3092b97837c6f8744ffedf220a5d3d022dd5 SHA512 6456cd6719923eeacb1f9d6d7372efd2bcd0de9e04350c722543ff41e45c7715ba52a2d330ad5818fbf44ea9df6b2ac482d6f8bd420b191427881dcfe3bd81e2
|
||||
DIST microcode-20230512.tar.gz 12654272 BLAKE2B 302aedf0b57719d1009be0dea513da7290b41842117951a0081f866024d5380c65850638ee3d2e87c8d9efcac4da58650463b0c31373d661fe74b8a3a380e099 SHA512 e21c82846f7f5e2c8d9559931e90389a7d21f8a59fbdec4c5b11fe43f010a21d3e9f27d67be12fe98b3dbdf26558a8ed74dc149bedd93f4b7728795dc6e86d48
|
||||
DIST microcode-20230613.tar.gz 12338446 BLAKE2B 56bffb26687fd3a20b79b4540ae10c98b2875e3edb84583b679ddc75e339193db4bddece25c7e5cb26b79f5e6ce2d10fcc318c55e13c05d8611198e4c571354b SHA512 460e46d20f71df1247affa2ca397b961ce3d77e3456144c6b7358e48c3239e9c077ff4c512b0c4b7d9a86f33fed094db8b3ac65b1a4047bb853212848d929639
|
||||
DIST microcode-20230808.tar.gz 13011561 BLAKE2B 400ba9b91a7048c780377d49ff6cb00458c60a9d53c2e5cef1eb99170ca8f0cad66336841d14869bd42d182f7d8df27a2fa9cb982b0df0c5fc9f62325b6acb69 SHA512 8316eb9d35b315e630c6c9fab1ba601b91e72cc42926ef14e7c2b77e7025d276ae06c143060f44cd1a873d3879c067d11ad82e1886c796e6be6bf466243ad85b
|
||||
|
@ -0,0 +1,287 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-info mount-boot
|
||||
|
||||
# Find updates by searching and clicking the first link (hopefully it's the one):
|
||||
# https://www.intel.com/content/www/us/en/search.html?keyword=Processor+Microcode+Data+File
|
||||
#
|
||||
#
|
||||
# Package Maintenance instructions:
|
||||
# 1. The ebuild is in the form of intel-microcode-<INTEL_SNAPSHOT>_p<COLLECTION_SNAPSHOT>.ebuild
|
||||
# 2. The INTEL_SNAPSHOT upstream is located at: https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files
|
||||
# 3. The COLLECTION_SNAPSHOT is created manually using the following steps:
|
||||
# a. Clone the repository https://github.com/platomav/CPUMicrocodes
|
||||
# b. Rename the Intel directory to intel-microcode-collection-<YYYYMMDD>
|
||||
# c. From the CPUMicrocodes directory tar and xz compress the contents of intel-microcode-collection-<YYYYMMDD>:
|
||||
# tar -cJf intel-microcode-collection-<YYYYMMDD>.tar.xz intel-microcode-collection-<YYYYMMDD>/
|
||||
# d. This file can go in your devspace, add the URL to SRC_URI if it's not there
|
||||
# https://dev.gentoo.org/~<dev nick>/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz
|
||||
#
|
||||
# PV:
|
||||
# * the first date is upstream
|
||||
# * the second date is snapshot (use last commit date in repo) from intel-microcode-collection
|
||||
|
||||
COLLECTION_SNAPSHOT="${PV##*_p}"
|
||||
INTEL_SNAPSHOT="${PV/_p*}"
|
||||
#NUM="28087"
|
||||
|
||||
#https://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=${NUM}
|
||||
#https://downloadmirror.intel.com/${NUM}/eng/microcode-${INTEL_SNAPSHOT}.tgz
|
||||
|
||||
DESCRIPTION="Intel IA32/IA64 microcode update data"
|
||||
HOMEPAGE="https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files https://github.com/platomav/CPUMicrocodes http://inertiawar.com/microcode/"
|
||||
SRC_URI="
|
||||
https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/archive/microcode-${INTEL_SNAPSHOT}.tar.gz
|
||||
https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/raw/437f382b1be4412b9d03e2bbdcda46d83d581242/intel-ucode/06-4e-03 -> intel-ucode-sig_0x406e3-rev_0xd6.bin
|
||||
https://dev.gentoo.org/~mpagano/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz
|
||||
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz
|
||||
"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="intel-ucode"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
IUSE="hostonly initramfs +split-ucode vanilla"
|
||||
REQUIRED_USE="|| ( initramfs split-ucode )"
|
||||
RESTRICT="binchecks strip"
|
||||
|
||||
BDEPEND=">=sys-apps/iucode_tool-2.3"
|
||||
# !<sys-apps/microcode-ctl-1.17-r2 due to bug #268586
|
||||
RDEPEND="hostonly? ( sys-apps/iucode_tool )"
|
||||
|
||||
# Blacklist bad microcode here.
|
||||
# 0x000406f1 aka 06-4f-01 aka CPUID 406F1 require newer microcode loader
|
||||
MICROCODE_BLACKLIST_DEFAULT="-s !0x000406f1"
|
||||
|
||||
# https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/issues/31
|
||||
MICROCODE_BLACKLIST_DEFAULT+=" -s !0x000406e3,0xc0,eq:0x00dc"
|
||||
|
||||
# https://bugs.gentoo.org/722768
|
||||
MICROCODE_BLACKLIST_DEFAULT+=" -s !0x000406e3,0xc0,eq:0x00da"
|
||||
|
||||
# https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/commit/49bb67f32a2e3e631ba1a9a73da1c52e1cac7fd9
|
||||
MICROCODE_BLACKLIST_DEFAULT+=" -s !0x000806c1,0x80,eq:0x0068"
|
||||
|
||||
# In case we want to set some defaults ...
|
||||
MICROCODE_SIGNATURES_DEFAULT=""
|
||||
|
||||
# Advanced users only!
|
||||
# Set MIRCOCODE_SIGNATURES to merge with:
|
||||
# only current CPU: MICROCODE_SIGNATURES="-S"
|
||||
# only specific CPU: MICROCODE_SIGNATURES="-s 0x00000f4a -s 0x00010676"
|
||||
# exclude specific CPU: MICROCODE_SIGNATURES="-s !0x00000686"
|
||||
|
||||
pkg_pretend() {
|
||||
use initramfs && mount-boot_pkg_pretend
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if cd Intel-Linux-Processor-Microcode-Data* &>/dev/null; then
|
||||
# new tarball format from GitHub
|
||||
mv * ../ || die "Failed to move Intel-Linux-Processor-Microcode-Data*"
|
||||
cd .. || die
|
||||
rm -r Intel-Linux-Processor-Microcode-Data* || die
|
||||
fi
|
||||
|
||||
mkdir intel-ucode-old || die
|
||||
cp "${DISTDIR}"/intel-ucode-sig_0x406e3-rev_0xd6.bin "${S}"/intel-ucode-old/ || die
|
||||
|
||||
# Prevent "invalid file format" errors from iucode_tool
|
||||
rm -f "${S}"/intel-ucod*/list || die
|
||||
|
||||
# https://gitlab.com/iucode-tool/iucode-tool/-/issues/4
|
||||
rm "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/cpu106C0_plat01_ver00000007_2007-08-24_PRD_923CDFA3.bin || die
|
||||
|
||||
# Remove non-microcode file from list
|
||||
rm -f "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/LICENSE || die
|
||||
rm -f "${S}"/intel-ucode*/LICENSE || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# This will take ALL of the upstream microcode sources:
|
||||
# - microcode.dat
|
||||
# - intel-ucode/
|
||||
# In some cases, they have not contained the same content (eg the directory has newer stuff).
|
||||
MICROCODE_SRC=(
|
||||
"${S}"/intel-ucode/
|
||||
"${S}"/intel-ucode-with-caveats/
|
||||
"${S}"/intel-ucode-old/
|
||||
)
|
||||
|
||||
# Allow users who are scared about microcode updates not included in Intel's official
|
||||
# microcode tarball to opt-out and comply with Intel marketing
|
||||
if ! use vanilla; then
|
||||
MICROCODE_SRC+=( "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT} )
|
||||
fi
|
||||
|
||||
# These will carry into pkg_preinst via env saving.
|
||||
: ${MICROCODE_BLACKLIST=${MICROCODE_BLACKLIST_DEFAULT}}
|
||||
: ${MICROCODE_SIGNATURES=${MICROCODE_SIGNATUES_DEFAULT}}
|
||||
|
||||
opts=(
|
||||
${MICROCODE_BLACKLIST}
|
||||
${MICROCODE_SIGNATURES}
|
||||
# be strict about what we are doing
|
||||
--overwrite
|
||||
--strict-checks
|
||||
--no-ignore-broken
|
||||
# we want to install latest version
|
||||
--no-downgrade
|
||||
# show everything we find
|
||||
--list-all
|
||||
# show what we selected
|
||||
--list
|
||||
)
|
||||
|
||||
# The earlyfw cpio needs to be in /boot because it must be loaded before
|
||||
# rootfs is mounted.
|
||||
use initramfs && dodir /boot && opts+=( --write-earlyfw="${ED}/boot/intel-uc.img" )
|
||||
|
||||
keepdir /lib/firmware/intel-ucode
|
||||
opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" )
|
||||
|
||||
iucode_tool \
|
||||
"${opts[@]}" \
|
||||
"${MICROCODE_SRC[@]}" \
|
||||
|| die "iucode_tool ${opts[@]} ${MICROCODE_SRC[@]}"
|
||||
|
||||
dodoc releasenote.md
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if [[ ${MICROCODE_BLACKLIST} != ${MICROCODE_BLACKLIST_DEFAULT} ]]; then
|
||||
ewarn "MICROCODE_BLACKLIST is set to \"${MICROCODE_BLACKLIST}\" instead of default \"${MICROCODE_BLACKLIST_DEFAULT}\". You are on your own!"
|
||||
fi
|
||||
|
||||
if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then
|
||||
ewarn "Package was created using advanced options:"
|
||||
ewarn "MICROCODE_SIGNATURES is set to \"${MICROCODE_SIGNATURES}\" instead of default \"${MICROCODE_SIGNATURES_DEFAULT}\"!"
|
||||
fi
|
||||
|
||||
# Make sure /boot is available if needed.
|
||||
use initramfs && mount-boot_pkg_preinst
|
||||
|
||||
local _initramfs_file="${ED}/boot/intel-uc.img"
|
||||
|
||||
if use hostonly; then
|
||||
# While this output looks redundant we do this check to detect
|
||||
# rare cases where iucode_tool was unable to detect system's processor(s).
|
||||
local _detected_processors=$(iucode_tool --scan-system 2>&1)
|
||||
if [[ -z "${_detected_processors}" ]]; then
|
||||
ewarn "Looks like iucode_tool was unable to detect any processor!"
|
||||
else
|
||||
einfo "Only installing ucode(s) for ${_detected_processors#iucode_tool: system has } due to USE=hostonly ..."
|
||||
fi
|
||||
|
||||
opts=(
|
||||
--scan-system
|
||||
# be strict about what we are doing
|
||||
--overwrite
|
||||
--strict-checks
|
||||
--no-ignore-broken
|
||||
# we want to install latest version
|
||||
--no-downgrade
|
||||
# show everything we find
|
||||
--list-all
|
||||
# show what we selected
|
||||
--list
|
||||
)
|
||||
|
||||
# The earlyfw cpio needs to be in /boot because it must be loaded before
|
||||
# rootfs is mounted.
|
||||
use initramfs && opts+=( --write-earlyfw=${_initramfs_file} )
|
||||
|
||||
if use split-ucode; then
|
||||
opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" )
|
||||
fi
|
||||
|
||||
opts+=( "${ED}/lib/firmware/intel-ucode-temp" )
|
||||
|
||||
mv "${ED}"/lib/firmware/intel-ucode{,-temp} || die
|
||||
keepdir /lib/firmware/intel-ucode
|
||||
|
||||
iucode_tool "${opts[@]}" || die "iucode_tool ${opts[@]}"
|
||||
|
||||
rm -r "${ED}"/lib/firmware/intel-ucode-temp || die
|
||||
|
||||
elif ! use split-ucode; then # hostonly disabled
|
||||
rm -r "${ED}"/lib/firmware/intel-ucode || die
|
||||
fi
|
||||
|
||||
# Because it is possible that this package will install not one single file
|
||||
# due to user selection which is still somehow unexpected we add the following
|
||||
# check to inform user so that the user has at least a chance to detect
|
||||
# a problem/invalid select.
|
||||
local _has_installed_something=
|
||||
if use initramfs && [[ -s "${_initramfs_file}" ]]; then
|
||||
_has_installed_something="yes"
|
||||
elif use split-ucode; then
|
||||
_has_installed_something=$(find "${ED}/lib/firmware/intel-ucode" -maxdepth 0 -not -empty -exec echo yes \;)
|
||||
fi
|
||||
|
||||
if use hostonly && [[ -n "${_has_installed_something}" ]]; then
|
||||
elog "You only installed ucode(s) for all currently available (=online)"
|
||||
elog "processor(s). Remember to re-emerge this package whenever you"
|
||||
elog "change the system's processor model."
|
||||
elog ""
|
||||
elif [[ -z "${_has_installed_something}" ]]; then
|
||||
ewarn "WARNING:"
|
||||
if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then
|
||||
ewarn "No ucode was installed! Because you have created this package"
|
||||
ewarn "using MICROCODE_SIGNATURES variable please double check if you"
|
||||
ewarn "have an invalid select."
|
||||
ewarn "It's rare but it is also possible that just no ucode update"
|
||||
ewarn "is available for your processor(s). In this case it is safe"
|
||||
ewarn "to ignore this warning."
|
||||
else
|
||||
ewarn "No ucode was installed! It's rare but it is also possible"
|
||||
ewarn "that just no ucode update is available for your processor(s)."
|
||||
ewarn "In this case it is safe to ignore this warning."
|
||||
fi
|
||||
|
||||
ewarn ""
|
||||
|
||||
if use hostonly; then
|
||||
ewarn "Unset \"hostonly\" USE flag to install all available ucodes."
|
||||
ewarn ""
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
# Make sure /boot is mounted so that we can remove /boot/intel-uc.img!
|
||||
use initramfs && mount-boot_pkg_prerm
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Don't forget to umount /boot if it was previously mounted by us.
|
||||
use initramfs && mount-boot_pkg_postrm
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Don't forget to umount /boot if it was previously mounted by us.
|
||||
use initramfs && mount-boot_pkg_postinst
|
||||
|
||||
# We cannot give detailed information if user is affected or not:
|
||||
# If MICROCODE_BLACKLIST wasn't modified, user can still use MICROCODE_SIGNATURES
|
||||
# to to force a specific, otherwise blacklisted, microcode. So we
|
||||
# only show a generic warning based on running kernel version:
|
||||
if kernel_is -lt 4 14 34; then
|
||||
ewarn "${P} contains microcode updates which require"
|
||||
ewarn "additional kernel patches which aren't yet included in kernel <4.14.34."
|
||||
ewarn "Loading such a microcode through kernel interface from an unpatched kernel"
|
||||
ewarn "can crash your system!"
|
||||
ewarn ""
|
||||
ewarn "Those microcodes are blacklisted per default. However, if you have altered"
|
||||
ewarn "MICROCODE_BLACKLIST or MICROCODE_SIGNATURES, you maybe have unintentionally"
|
||||
ewarn "re-enabled those microcodes...!"
|
||||
ewarn ""
|
||||
ewarn "Check \"${EROOT}/usr/share/doc/${PN}-*/releasenot*\" if your microcode update"
|
||||
ewarn "requires additional kernel patches or not."
|
||||
fi
|
||||
}
|
@ -22,7 +22,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
|
||||
LICENSE="|| ( GPL-3 LGPL-3 )"
|
||||
SLOT="0/${PV%_p?}"
|
||||
IUSE="64-bit-bfd cet multitarget nls static-libs test"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos ~x64-solaris"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
|
@ -20,7 +20,7 @@ HOMEPAGE="https://gitlab.freedesktop.org/xorg/proto/xorgproto"
|
||||
if [[ ${PV} = 9999* ]]; then
|
||||
SRC_URI=""
|
||||
else
|
||||
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"
|
||||
SRC_URI="https://xorg.freedesktop.org/archive/individual/proto/${MY_P}.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user