aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md1
-rw-r--r--app-crypt/chntpw/chntpw-140201.ebuild7
-rw-r--r--app-emulation/qemu/Manifest2
-rw-r--r--app-emulation/qemu/files/65-kvm.rules-r12
-rw-r--r--app-emulation/qemu/files/musl-patches/guest-agent-shutdown.patch34
-rw-r--r--app-emulation/qemu/files/qemu-4.0.0-mkdir_systemtap.patch12
-rw-r--r--app-emulation/qemu/files/qemu-4.2.0-cflags.patch16
-rw-r--r--app-emulation/qemu/files/qemu-5.1.0-pixman-for-vhost-user-gpu.patch62
-rw-r--r--app-emulation/qemu/files/qemu-5.1.0-usb-host-workaround-libusb-bug.patch82
-rw-r--r--app-emulation/qemu/files/qemu-5.1.0-usb-oob-CVE-2020-14364.patch90
-rw-r--r--app-emulation/qemu/files/qemu-5.2.0-dce-locks.patch18
-rw-r--r--app-emulation/qemu/files/qemu-5.2.0-fix-firmware-path.patch16
-rw-r--r--app-emulation/qemu/files/qemu-5.2.0-no-pie-ld.patch73
-rw-r--r--app-emulation/qemu/files/qemu-9999-fix-firmware-path.patch17
-rw-r--r--app-emulation/qemu/qemu-5.2.0-r2.ebuild878
-rw-r--r--app-emulation/qemu/qemu-6.0.0.ebuild (renamed from app-emulation/qemu/qemu-5.2.0-r3.ebuild)93
-rw-r--r--app-office/libreoffice/Manifest4
-rw-r--r--app-office/libreoffice/files/libreoffice-7.1.3.2-bashism.patch33
-rw-r--r--app-office/libreoffice/libreoffice-7.1.3.2.ebuild670
-rw-r--r--app-office/libreoffice/metadata.xml2
-rw-r--r--dev-java/icedtea/icedtea-3.18.0.ebuild7
-rw-r--r--dev-lang/rust/Manifest9
-rw-r--r--dev-lang/rust/files/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch26
-rw-r--r--dev-lang/rust/files/0002-Fix-LLVM-build.patch25
-rw-r--r--dev-lang/rust/files/0003-Fix-linking-to-zlib-when-cross-compiling.patch34
-rw-r--r--dev-lang/rust/files/0004-Fix-rustdoc-when-cross-compiling-on-musl.patch45
-rw-r--r--dev-lang/rust/files/0005-Use-static-native-libraries-when-linking-static-exec.patch55
-rw-r--r--dev-lang/rust/files/0007-Prefer-libgcc_eh-over-libunwind-for-musl.patch38
-rw-r--r--dev-lang/rust/files/0008-Link-libssp_nonshared.a-on-all-musl-targets.patch29
-rw-r--r--dev-lang/rust/files/0009-test-failed-doctest-output-Fix-normalization.patch36
-rw-r--r--dev-lang/rust/files/0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch25
-rw-r--r--dev-lang/rust/files/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch30
-rw-r--r--dev-lang/rust/files/0012-Ignore-broken-and-non-applicable-tests.patch75
-rw-r--r--dev-lang/rust/files/0013-Link-stage-2-tools-dynamically-to-libstd.patch25
-rw-r--r--dev-lang/rust/files/0014-Move-debugger-scripts-to-usr-share-rust.patch69
-rw-r--r--dev-lang/rust/files/0015-Add-gentoo-target-specs.patch175
-rw-r--r--dev-lang/rust/files/0040-rls-atomics.patch58
-rw-r--r--dev-lang/rust/files/0050-llvm.patch18
-rw-r--r--dev-lang/rust/files/0051-llvm-powerpc-elfv2.patch12
-rw-r--r--dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch31
-rw-r--r--dev-lang/rust/files/1.47.0-libressl.patch44
-rw-r--r--dev-lang/rust/metadata.xml19
-rw-r--r--dev-lang/rust/rust-1.47.0-r1.ebuild533
-rw-r--r--media-libs/mesa/Manifest3
-rw-r--r--media-libs/mesa/files/mesa-20.1.7-add-disable-tls-support.patch45
-rw-r--r--media-libs/mesa/files/mesa-20.2.0-add-disable-tls-support.patch44
-rw-r--r--media-libs/mesa/files/mesa-20.3.4-missing-git_sha1.patch57
-rw-r--r--media-libs/mesa/files/mesa-21.0.3-add-disable-tls-support.patch41
-rw-r--r--media-libs/mesa/mesa-20.1.10.ebuild552
-rw-r--r--media-libs/mesa/mesa-21.0.3.ebuild (renamed from media-libs/mesa/mesa-20.3.5.ebuild)22
-rw-r--r--media-tv/kodi/Manifest2
-rw-r--r--media-tv/kodi/kodi-19.0.ebuild363
-rw-r--r--media-tv/kodi/kodi-19.1.ebuild5
-rw-r--r--metadata/.gitignore1
-rw-r--r--net-fs/nfs-utils/Manifest4
-rw-r--r--net-fs/nfs-utils/files/musl-getservbyport.patch18
-rw-r--r--net-fs/nfs-utils/files/musl-svcgssd-sysconf.patch144
-rw-r--r--net-fs/nfs-utils/files/musl-time64.patch51
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch39
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-1.2.8-cross-build.patch48
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-2.3.1-svcgssd_undefined_reference.patch40
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-2.3.2-junction_libs.patch45
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-2.4.2-Ensure-consistent-struct-stat.patch115
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch (renamed from net-fs/nfs-utils/files/nfs-utils-2.3.2-no-werror.patch)29
-rw-r--r--net-fs/nfs-utils/files/nfs-utils-musl.patch147
-rw-r--r--net-fs/nfs-utils/files/nfs-utils.conf3
-rw-r--r--net-fs/nfs-utils/files/nfs.initd12
-rw-r--r--net-fs/nfs-utils/files/nfsmount.confd7
-rw-r--r--net-fs/nfs-utils/files/nfsmount.initd47
-rw-r--r--net-fs/nfs-utils/metadata.xml1
-rw-r--r--net-fs/nfs-utils/nfs-utils-1.3.4-r1.ebuild182
-rw-r--r--net-fs/nfs-utils/nfs-utils-2.3.1-r3.ebuild187
-rw-r--r--net-fs/nfs-utils/nfs-utils-2.5.3-r1.ebuild (renamed from net-fs/nfs-utils/nfs-utils-2.3.3.ebuild)91
-rw-r--r--net-fs/samba/Manifest6
-rw-r--r--net-fs/samba/samba-4.12.12.ebuild338
-rw-r--r--net-fs/samba/samba-4.12.9-r1.ebuild339
-rw-r--r--net-fs/samba/samba-4.13.9.ebuild (renamed from net-fs/samba/samba-4.13.5.ebuild)7
-rw-r--r--net-fs/samba/samba-4.14.4.ebuild (renamed from net-fs/samba/samba-4.14.0.ebuild)11
-rw-r--r--net-libs/webkit-gtk/Manifest1
-rw-r--r--net-libs/webkit-gtk/files/2.28.2-non-jumbo-fix.patch34
-rw-r--r--net-libs/webkit-gtk/files/2.28.2-opengl-without-X-fixes.patch53
-rw-r--r--net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch31
-rw-r--r--net-libs/webkit-gtk/files/2.30.3-fix-noGL-build.patch27
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-2.24.4-eglmesaext-include.patch10
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-2.28.1-musl.patch68
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-2.28.4-lower-stack-usage.patch17
-rw-r--r--net-libs/webkit-gtk/metadata.xml15
-rw-r--r--net-libs/webkit-gtk/webkit-gtk-2.30.5.ebuild309
-rw-r--r--net-misc/networkmanager/Manifest2
-rw-r--r--net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules7
-rw-r--r--net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch60
-rw-r--r--net-misc/networkmanager/files/1.28.0/0002-network-support.patch62
-rw-r--r--net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch110
-rw-r--r--net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch54
-rw-r--r--net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch30
-rw-r--r--net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch43
-rw-r--r--net-misc/networkmanager/files/10-openrc-status-r435
-rw-r--r--net-misc/networkmanager/files/conf.d.NetworkManager4
-rw-r--r--net-misc/networkmanager/files/init.d.NetworkManager-r262
-rw-r--r--net-misc/networkmanager/files/musl-basic.patch46
-rw-r--r--net-misc/networkmanager/files/musl-compar.patch18
-rw-r--r--net-misc/networkmanager/files/musl-fix-includes.patch90
-rw-r--r--net-misc/networkmanager/files/musl-network-support.patch42
-rw-r--r--net-misc/networkmanager/files/musl-no-drand.patch58
-rw-r--r--net-misc/networkmanager/files/musl-process-util.patch40
-rw-r--r--net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch169
-rw-r--r--net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch265
-rw-r--r--net-misc/networkmanager/files/reallocarray-1.patch43
-rw-r--r--net-misc/networkmanager/metadata.xml37
-rw-r--r--net-misc/networkmanager/networkmanager-1.26.4.ebuild357
-rw-r--r--net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild356
-rw-r--r--net-misc/rsync/rsync-3.2.3-r2.ebuild7
-rw-r--r--net-vpn/ipsec-tools/ipsec-tools-0.8.2-r5.ebuild7
-rw-r--r--sys-apps/tcp-wrappers/tcp-wrappers-7.6.28-r1.ebuild (renamed from sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild)11
-rw-r--r--sys-auth/polkit/Manifest3
-rw-r--r--sys-auth/polkit/polkit-0.117.ebuild134
-rw-r--r--sys-auth/polkit/polkit-0.118.ebuild134
-rw-r--r--sys-auth/polkit/polkit-0.119.ebuild (renamed from sys-auth/polkit/polkit-0.116-r1.ebuild)29
-rw-r--r--sys-devel/gcc/gcc-10.2.0-r5.ebuild2
-rw-r--r--sys-libs/tevent/tevent-0.10.2.ebuild32
-rw-r--r--sys-process/procps/procps-3.3.17.ebuild2
-rw-r--r--sys-process/psmisc/Manifest2
-rw-r--r--sys-process/psmisc/files/include_limits.patch45
-rw-r--r--sys-process/psmisc/files/musl_ptregs.patch19
-rw-r--r--sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch45
-rw-r--r--sys-process/psmisc/metadata.xml11
-rw-r--r--sys-process/psmisc/psmisc-23.3-r1.ebuild56
-rw-r--r--sys-process/psmisc/psmisc-23.4-r1.ebuild62
-rw-r--r--virtual/rust/metadata.xml8
-rw-r--r--virtual/rust/rust-1.47.0.ebuild15
-rw-r--r--x11-base/xorg-server/xorg-server-1.20.11.ebuild5
-rw-r--r--x11-libs/vte/Manifest6
-rw-r--r--x11-libs/vte/files/vte-0.54.2-musl-remove-W_EXITCODE.patch23
-rw-r--r--x11-libs/vte/files/vte-0.64.1-meson-Find-python-explicitly-to-honor-downstream-pyt.patch48
-rw-r--r--x11-libs/vte/vte-0.60.3.ebuild82
-rw-r--r--x11-libs/vte/vte-0.64.1.ebuild (renamed from x11-libs/vte/vte-0.62.3.ebuild)17
136 files changed, 1397 insertions, 8539 deletions
diff --git a/README.md b/README.md
index 1c67f0d..c95a89e 100644
--- a/README.md
+++ b/README.md
@@ -9,6 +9,7 @@ http://www.musl-libc.org/
* Jory A. Pratt <anarchy@gentoo.org>
* Aric Belsito <lluixhi@gmail.com>
* Felix Janda <felix.janda@posteo.de>
+* Georgy Yakovlev <gyakovlev@gentoo.org>
## pkgcheck status
![pkgcheck](https://github.com/gentoo/musl/actions/workflows/main.yml/badge.svg)
diff --git a/app-crypt/chntpw/chntpw-140201.ebuild b/app-crypt/chntpw/chntpw-140201.ebuild
index 5f5ecfe..1daf1b0 100644
--- a/app-crypt/chntpw/chntpw-140201.ebuild
+++ b/app-crypt/chntpw/chntpw-140201.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -12,10 +12,9 @@ SRC_URI="http://pogostick.net/~pnh/ntpasswd/${PN}-source-${PV}.zip"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="libressl static"
+IUSE="static"
-RDEPEND="!libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )"
+RDEPEND="dev-libs/openssl:0="
DEPEND="${RDEPEND}
app-arch/unzip
static? ( dev-libs/openssl:0[static-libs] )"
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest
index 2157b27..4e6705f 100644
--- a/app-emulation/qemu/Manifest
+++ b/app-emulation/qemu/Manifest
@@ -1 +1 @@
-DIST qemu-5.2.0.tar.xz 106902800 BLAKE2B 4413d5591cbabf80faba5b0b7347ee7749ff0a71af44bdf7f64b1995e17ecf1f3df539fa8e63959e0d50cd0502a41a2921e60cc6d078ed8ab5b09ab4b86d4ed7 SHA512 bddd633ce111471ebc651e03080251515178808556b49a308a724909e55dac0be0cc0c79c536ac12d239678ae94c60100dc124be9b9d9538340c03a2f27177f3
+DIST qemu-6.0.0.tar.xz 107333232 BLAKE2B 7746329d3e13782b7c346ce4052cc517cfc65cd9b2d514d199e4d5b8570ca79566ec04b0c114db2e97c84e68eb551e0d4cdce1b14b91a88fe08d2a5f682c1418 SHA512 ee3ff00aebec4d8891d2ff6dabe4e667e510b2a4fe3f6190aa34673a91ea32dcd2db2e9bf94c2f1bf05aa79788f17cfbbedc6027c0988ea08a92587b79ee05e4
diff --git a/app-emulation/qemu/files/65-kvm.rules-r1 b/app-emulation/qemu/files/65-kvm.rules-r1
deleted file mode 100644
index ab3776a..0000000
--- a/app-emulation/qemu/files/65-kvm.rules-r1
+++ /dev/null
@@ -1,2 +0,0 @@
-KERNEL=="kvm", GROUP="kvm", MODE="0660"
-KERNEL=="vhost-net", GROUP="kvm", MODE="0660", OPTIONS+="static_node=vhost-net"
diff --git a/app-emulation/qemu/files/musl-patches/guest-agent-shutdown.patch b/app-emulation/qemu/files/musl-patches/guest-agent-shutdown.patch
deleted file mode 100644
index 742f281..0000000
--- a/app-emulation/qemu/files/musl-patches/guest-agent-shutdown.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/qga/commands-posix.c b/qga/commands-posix.c
-index 1877976..7915aab 100644
---- a/qga/commands-posix.c
-+++ b/qga/commands-posix.c
-@@ -82,6 +82,7 @@ static void ga_wait_child(pid_t pid, int *status, Error **errp)
- void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
- {
- const char *shutdown_flag;
-+ const char *fallback_cmd = NULL;
- Error *local_err = NULL;
- pid_t pid;
- int status;
-@@ -89,10 +90,13 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
- slog("guest-shutdown called, mode: %s", mode);
- if (!has_mode || strcmp(mode, "powerdown") == 0) {
- shutdown_flag = "-P";
-+ fallback_cmd = "/sbin/poweroff";
- } else if (strcmp(mode, "halt") == 0) {
- shutdown_flag = "-H";
-+ fallback_cmd = "/sbin/halt";
- } else if (strcmp(mode, "reboot") == 0) {
- shutdown_flag = "-r";
-+ fallback_cmd = "/sbin/reboot";
- } else {
- error_setg(errp,
- "mode is invalid (valid values are: halt|powerdown|reboot");
-@@ -109,6 +113,7 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
-
- execle("/sbin/shutdown", "shutdown", "-h", shutdown_flag, "+0",
- "hypervisor initiated shutdown", (char*)NULL, environ);
-+ execle(fallback_cmd, fallback_cmd, (char*)NULL, environ);
- _exit(EXIT_FAILURE);
- } else if (pid < 0) {
- error_setg_errno(errp, errno, "failed to create child process");
diff --git a/app-emulation/qemu/files/qemu-4.0.0-mkdir_systemtap.patch b/app-emulation/qemu/files/qemu-4.0.0-mkdir_systemtap.patch
deleted file mode 100644
index 95ccdd7..0000000
--- a/app-emulation/qemu/files/qemu-4.0.0-mkdir_systemtap.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 04a0d450..e0013a59 100644
---- a/Makefile
-+++ b/Makefile
-@@ -803,6 +802,7 @@
- $(call install-prog,$(HELPERS-y),$(DESTDIR)$(libexecdir))
- endif
- ifdef CONFIG_TRACE_SYSTEMTAP
-+ mkdir -p $(DESTDIR)$(bindir)
- $(INSTALL_PROG) "scripts/qemu-trace-stap" $(DESTDIR)$(bindir)
- endif
- ifneq ($(BLOBS),)
diff --git a/app-emulation/qemu/files/qemu-4.2.0-cflags.patch b/app-emulation/qemu/files/qemu-4.2.0-cflags.patch
deleted file mode 100644
index 1019265..0000000
--- a/app-emulation/qemu/files/qemu-4.2.0-cflags.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git i/configure w/configure
-index a72a5def57..546d757603 100755
---- i/configure
-+++ w/configure
-@@ -6093,10 +6093,6 @@ write_c_skeleton
- if test "$gcov" = "yes" ; then
- QEMU_CFLAGS="-fprofile-arcs -ftest-coverage -g $QEMU_CFLAGS"
- QEMU_LDFLAGS="-fprofile-arcs -ftest-coverage $QEMU_LDFLAGS"
--elif test "$fortify_source" = "yes" ; then
-- CFLAGS="-O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $CFLAGS"
--elif test "$debug" = "no"; then
-- CFLAGS="-O2 $CFLAGS"
- fi
-
- if test "$have_asan" = "yes"; then
-
diff --git a/app-emulation/qemu/files/qemu-5.1.0-pixman-for-vhost-user-gpu.patch b/app-emulation/qemu/files/qemu-5.1.0-pixman-for-vhost-user-gpu.patch
deleted file mode 100644
index 4eb644f..0000000
--- a/app-emulation/qemu/files/qemu-5.1.0-pixman-for-vhost-user-gpu.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-https://bugs.gentoo.org/735146
-
-From 4fd46e6cdd976f4aecdc3fbbad728e00a7bc4ee0 Mon Sep 17 00:00:00 2001
-From: Rafael Kitover <rkitover@gmail.com>
-Date: Thu, 13 Aug 2020 20:19:24 +0000
-Subject: [PATCH] configure: Require pixman for vhost-user-gpu.
-
-Use the test from Makefile to check if vhost-user-gpu is being built,
-and if so require pixman.
-
-Signed-off-by: Rafael Kitover <rkitover@gmail.com>
----
- configure | 28 ++++++++++++++--------------
- 1 file changed, 14 insertions(+), 14 deletions(-)
-
---- a/configure
-+++ b/configure
-@@ -4062,20 +4062,6 @@ if test "$modules" = yes; then
- fi
- fi
-
--##########################################
--# pixman support probe
--
--if test "$softmmu" = "no"; then
-- pixman_cflags=
-- pixman_libs=
--elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
-- pixman_cflags=$($pkg_config --cflags pixman-1)
-- pixman_libs=$($pkg_config --libs pixman-1)
--else
-- error_exit "pixman >= 0.21.8 not present." \
-- "Please install the pixman devel package."
--fi
--
- ##########################################
- # libmpathpersist probe
-
-@@ -4491,6 +4477,20 @@ if test "$opengl" = "yes" && test "$have_x11" = "yes"; then
- done
- fi
-
-+##########################################
-+# pixman support probe
-+
-+if test "$softmmu" = "no" && ! test "${linux} ${virglrenderer} ${gbm} ${want_tools}" = "yes yes yes yes"; then
-+ pixman_cflags=
-+ pixman_libs=
-+elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
-+ pixman_cflags=$($pkg_config --cflags pixman-1)
-+ pixman_libs=$($pkg_config --libs pixman-1)
-+else
-+ error_exit "pixman >= 0.21.8 not present." \
-+ "Please install the pixman devel package."
-+fi
-+
- ##########################################
- # libxml2 probe
- if test "$libxml2" != "no" ; then
---
-2.28.0
-
diff --git a/app-emulation/qemu/files/qemu-5.1.0-usb-host-workaround-libusb-bug.patch b/app-emulation/qemu/files/qemu-5.1.0-usb-host-workaround-libusb-bug.patch
deleted file mode 100644
index 34a50a9..0000000
--- a/app-emulation/qemu/files/qemu-5.1.0-usb-host-workaround-libusb-bug.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 202d69a715a4b1824dcd7ec1683d027ed2bae6d3 Mon Sep 17 00:00:00 2001
-Message-Id: <202d69a715a4b1824dcd7ec1683d027ed2bae6d3.1606202550.git.mprivozn@redhat.com>
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Mon, 24 Aug 2020 13:00:57 +0200
-Subject: [PATCH] usb-host: workaround libusb bug
-
-libusb_get_device_speed() does not work for
-libusb_wrap_sys_device() devices in v1.0.23.
-
-Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1871090
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-Message-id: 20200824110057.32089-1-kraxel@redhat.com
-Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
----
- hw/usb/host-libusb.c | 37 ++++++++++++++++++++++++++++++++++++-
- 1 file changed, 36 insertions(+), 1 deletion(-)
-
-diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c
-index c474551d84..08604f787f 100644
---- a/hw/usb/host-libusb.c
-+++ b/hw/usb/host-libusb.c
-@@ -39,6 +39,11 @@
- #endif
- #include <libusb.h>
-
-+#ifdef CONFIG_LINUX
-+#include <sys/ioctl.h>
-+#include <linux/usbdevice_fs.h>
-+#endif
-+
- #include "qapi/error.h"
- #include "migration/vmstate.h"
- #include "monitor/monitor.h"
-@@ -885,6 +890,7 @@ static void usb_host_ep_update(USBHostDevice *s)
- static int usb_host_open(USBHostDevice *s, libusb_device *dev, int hostfd)
- {
- USBDevice *udev = USB_DEVICE(s);
-+ int libusb_speed;
- int bus_num = 0;
- int addr = 0;
- int rc;
-@@ -935,7 +941,36 @@ static int usb_host_open(USBHostDevice *s, libusb_device *dev, int hostfd)
- usb_ep_init(udev);
- usb_host_ep_update(s);
-
-- udev->speed = speed_map[libusb_get_device_speed(dev)];
-+ libusb_speed = libusb_get_device_speed(dev);
-+#ifdef CONFIG_LINUX
-+ if (hostfd && libusb_speed == 0) {
-+ /*
-+ * Workaround libusb bug: libusb_get_device_speed() does not
-+ * work for libusb_wrap_sys_device() devices in v1.0.23.
-+ *
-+ * Speeds are defined in linux/usb/ch9.h, file not included
-+ * due to name conflicts.
-+ */
-+ int rc = ioctl(hostfd, USBDEVFS_GET_SPEED, NULL);
-+ switch (rc) {
-+ case 1: /* low */
-+ libusb_speed = LIBUSB_SPEED_LOW;
-+ break;
-+ case 2: /* full */
-+ libusb_speed = LIBUSB_SPEED_FULL;
-+ break;
-+ case 3: /* high */
-+ case 4: /* wireless */
-+ libusb_speed = LIBUSB_SPEED_HIGH;
-+ break;
-+ case 5: /* super */
-+ case 6: /* super plus */
-+ libusb_speed = LIBUSB_SPEED_SUPER;
-+ break;
-+ }
-+ }
-+#endif
-+ udev->speed = speed_map[libusb_speed];
- usb_host_speed_compat(s);
-
- if (s->ddesc.iProduct) {
---
-2.26.2
-
diff --git a/app-emulation/qemu/files/qemu-5.1.0-usb-oob-CVE-2020-14364.patch b/app-emulation/qemu/files/qemu-5.1.0-usb-oob-CVE-2020-14364.patch
deleted file mode 100644
index d1d23ec..0000000
--- a/app-emulation/qemu/files/qemu-5.1.0-usb-oob-CVE-2020-14364.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-https://bugs.gentoo.org/743649
-
-From b946434f2659a182afc17e155be6791ebfb302eb Mon Sep 17 00:00:00 2001
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Tue, 25 Aug 2020 07:36:36 +0200
-Subject: [PATCH] usb: fix setup_len init (CVE-2020-14364)
-
-Store calculated setup_len in a local variable, verify it, and only
-write it to the struct (USBDevice->setup_len) in case it passed the
-sanity checks.
-
-This prevents other code (do_token_{in,out} functions specifically)
-from working with invalid USBDevice->setup_len values and overrunning
-the USBDevice->setup_buf[] buffer.
-
-Fixes: CVE-2020-14364
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-Tested-by: Gonglei <arei.gonglei@huawei.com>
-Reviewed-by: Li Qiang <liq3ea@gmail.com>
-Message-id: 20200825053636.29648-1-kraxel@redhat.com
----
- hw/usb/core.c | 16 ++++++++++------
- 1 file changed, 10 insertions(+), 6 deletions(-)
-
-diff --git a/hw/usb/core.c b/hw/usb/core.c
-index 5abd128b6b..5234dcc73f 100644
---- a/hw/usb/core.c
-+++ b/hw/usb/core.c
-@@ -129,6 +129,7 @@ void usb_wakeup(USBEndpoint *ep, unsigned int stream)
- static void do_token_setup(USBDevice *s, USBPacket *p)
- {
- int request, value, index;
-+ unsigned int setup_len;
-
- if (p->iov.size != 8) {
- p->status = USB_RET_STALL;
-@@ -138,14 +139,15 @@ static void do_token_setup(USBDevice *s, USBPacket *p)
- usb_packet_copy(p, s->setup_buf, p->iov.size);
- s->setup_index = 0;
- p->actual_length = 0;
-- s->setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
-- if (s->setup_len > sizeof(s->data_buf)) {
-+ setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
-+ if (setup_len > sizeof(s->data_buf)) {
- fprintf(stderr,
- "usb_generic_handle_packet: ctrl buffer too small (%d > %zu)\n",
-- s->setup_len, sizeof(s->data_buf));
-+ setup_len, sizeof(s->data_buf));
- p->status = USB_RET_STALL;
- return;
- }
-+ s->setup_len = setup_len;
-
- request = (s->setup_buf[0] << 8) | s->setup_buf[1];
- value = (s->setup_buf[3] << 8) | s->setup_buf[2];
-@@ -259,26 +261,28 @@ static void do_token_out(USBDevice *s, USBPacket *p)
- static void do_parameter(USBDevice *s, USBPacket *p)
- {
- int i, request, value, index;
-+ unsigned int setup_len;
-
- for (i = 0; i < 8; i++) {
- s->setup_buf[i] = p->parameter >> (i*8);
- }
-
- s->setup_state = SETUP_STATE_PARAM;
-- s->setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
- s->setup_index = 0;
-
- request = (s->setup_buf[0] << 8) | s->setup_buf[1];
- value = (s->setup_buf[3] << 8) | s->setup_buf[2];
- index = (s->setup_buf[5] << 8) | s->setup_buf[4];
-
-- if (s->setup_len > sizeof(s->data_buf)) {
-+ setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
-+ if (setup_len > sizeof(s->data_buf)) {
- fprintf(stderr,
- "usb_generic_handle_packet: ctrl buffer too small (%d > %zu)\n",
-- s->setup_len, sizeof(s->data_buf));
-+ setup_len, sizeof(s->data_buf));
- p->status = USB_RET_STALL;
- return;
- }
-+ s->setup_len = setup_len;
-
- if (p->pid == USB_TOKEN_OUT) {
- usb_packet_copy(p, s->data_buf, s->setup_len);
---
-2.28.0
-
diff --git a/app-emulation/qemu/files/qemu-5.2.0-dce-locks.patch b/app-emulation/qemu/files/qemu-5.2.0-dce-locks.patch
new file mode 100644
index 0000000..679a9f3
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-5.2.0-dce-locks.patch
@@ -0,0 +1,18 @@
+Fix CFLAGS=-Og build break. -Og fails because gcc does not enable dead
+code elimination (but does set __OPTIMIZE__ define).
+
+The fix avoids DCE reliance downstream entirely.
+
+Reported-by: Luke-Jr
+Bug: https://bugs.gentoo.org/782364
+--- a/include/qemu/lockable.h
++++ b/include/qemu/lockable.h
+@@ -28,7 +28,7 @@ struct QemuLockable {
+ * to QEMU_MAKE_LOCKABLE. For optimized builds, we can rely on dead-code elimination
+ * from the compiler, and give the errors already at link time.
+ */
+-#if defined(__OPTIMIZE__) && !defined(__SANITIZE_ADDRESS__)
++#if defined(__OPTIMIZE__) && !defined(__SANITIZE_ADDRESS__) && defined(VALIDATE_LOCKS_VIA_DCE)
+ void unknown_lock_type(void *);
+ #else
+ static inline void unknown_lock_type(void *unused)
diff --git a/app-emulation/qemu/files/qemu-5.2.0-fix-firmware-path.patch b/app-emulation/qemu/files/qemu-5.2.0-fix-firmware-path.patch
deleted file mode 100644
index 5396983..0000000
--- a/app-emulation/qemu/files/qemu-5.2.0-fix-firmware-path.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Se absolute filename in files like
- /usr/share/qemu/firmware/50-edk2-x86_64-secure.json
-
-Bug: https://bugs.gentoo.org/766743
-Patch-by: Jannik Glückert
---- a/pc-bios/descriptors/meson.build
-+++ b/pc-bios/descriptors/meson.build
-@@ -8,7 +8,7 @@ foreach f: [
- ]
- configure_file(input: files(f),
- output: f,
-- configuration: {'DATADIR': qemu_datadir},
-+ configuration: {'DATADIR': get_option('prefix') / qemu_datadir},
- install: get_option('install_blobs'),
- install_dir: qemu_datadir / 'firmware')
- endforeach
diff --git a/app-emulation/qemu/files/qemu-5.2.0-no-pie-ld.patch b/app-emulation/qemu/files/qemu-5.2.0-no-pie-ld.patch
deleted file mode 100644
index f47a587..0000000
--- a/app-emulation/qemu/files/qemu-5.2.0-no-pie-ld.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From bbd2d5a8120771ec59b86a80a1f51884e0a26e53 Mon Sep 17 00:00:00 2001
-From: Christian Ehrhardt <christian.ehrhardt@canonical.com>
-Date: Mon, 14 Dec 2020 16:09:38 +0100
-Subject: [PATCH] build: -no-pie is no functional linker flag
-
-Recent binutils changes dropping unsupported options [1] caused a build
-issue in regard to the optionroms.
-
- ld -m elf_i386 -T /<<PKGBUILDDIR>>/pc-bios/optionrom//flat.lds -no-pie \
- -s -o multiboot.img multiboot.o
- ld.bfd: Error: unable to disambiguate: -no-pie (did you mean --no-pie ?)
-
-This isn't really a regression in ld.bfd, filing the bug upstream
-revealed that this never worked as a ld flag [2] - in fact it seems we
-were by accident setting --nmagic).
-
-Since it never had the wanted effect this usage of LDFLAGS_NOPIE, should be
-droppable without any effect. This also is the only use-case of LDFLAGS_NOPIE
-in .mak, therefore we can also remove it from being added there.
-
-[1]: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=983d925d
-[2]: https://sourceware.org/bugzilla/show_bug.cgi?id=27050#c5
-
-Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
-Message-Id: <20201214150938.1297512-1-christian.ehrhardt@canonical.com>
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
----
- configure | 3 ---
- pc-bios/optionrom/Makefile | 1 -
- 2 files changed, 4 deletions(-)
-
---- a/configure
-+++ b/configure
-@@ -2137,7 +2137,6 @@ EOF
- # Check we support --no-pie first; we will need this for building ROMs.
- if compile_prog "-Werror -fno-pie" "-no-pie"; then
- CFLAGS_NOPIE="-fno-pie"
-- LDFLAGS_NOPIE="-no-pie"
- fi
-
- if test "$static" = "yes"; then
-@@ -2153,7 +2152,6 @@ if test "$static" = "yes"; then
- fi
- elif test "$pie" = "no"; then
- CONFIGURE_CFLAGS="$CFLAGS_NOPIE $CONFIGURE_CFLAGS"
-- CONFIGURE_LDFLAGS="$LDFLAGS_NOPIE $CONFIGURE_LDFLAGS"
- elif compile_prog "-Werror -fPIE -DPIE" "-pie"; then
- CONFIGURE_CFLAGS="-fPIE -DPIE $CONFIGURE_CFLAGS"
- CONFIGURE_LDFLAGS="-pie $CONFIGURE_LDFLAGS"
-@@ -6714,7 +6712,6 @@ echo "QEMU_CXXFLAGS=$QEMU_CXXFLAGS" >> $config_host_mak
- echo "GLIB_CFLAGS=$glib_cflags" >> $config_host_mak
- echo "GLIB_LIBS=$glib_libs" >> $config_host_mak
- echo "QEMU_LDFLAGS=$QEMU_LDFLAGS" >> $config_host_mak
--echo "LDFLAGS_NOPIE=$LDFLAGS_NOPIE" >> $config_host_mak
- echo "LD_I386_EMULATION=$ld_i386_emulation" >> $config_host_mak
- echo "EXESUF=$EXESUF" >> $config_host_mak
- echo "HOST_DSOSUF=$HOST_DSOSUF" >> $config_host_mak
-diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
-index 084fc10f05..30771f8d17 100644
---- a/pc-bios/optionrom/Makefile
-+++ b/pc-bios/optionrom/Makefile
-@@ -41,7 +41,6 @@ override CFLAGS += $(call cc-option, $(Wa)-32)
-
- LD_I386_EMULATION ?= elf_i386
- override LDFLAGS = -m $(LD_I386_EMULATION) -T $(SRC_DIR)/flat.lds
--override LDFLAGS += $(LDFLAGS_NOPIE)
-
- all: multiboot.bin linuxboot.bin linuxboot_dma.bin kvmvapic.bin pvh.bin
-
---
-2.30.0
-
diff --git a/app-emulation/qemu/files/qemu-9999-fix-firmware-path.patch b/app-emulation/qemu/files/qemu-9999-fix-firmware-path.patch
deleted file mode 100644
index ffff314..0000000
--- a/app-emulation/qemu/files/qemu-9999-fix-firmware-path.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Set absolute filename in files like
- /usr/share/qemu/firmware/50-edk2-x86_64-secure.json
-
-Bug: https://bugs.gentoo.org/766743
-Bug: https://bugs.launchpad.net/qemu/+bug/1913012
-Patch-by: Jannik Glückert
---- a/pc-bios/descriptors/meson.build
-+++ b/pc-bios/descriptors/meson.build
-@@ -9,7 +9,7 @@ if install_edk2_blobs
- ]
- configure_file(input: files(f),
- output: f,
-- configuration: {'DATADIR': qemu_datadir},
-+ configuration: {'DATADIR': get_option('prefix') / qemu_datadir},
- install: get_option('install_blobs'),
- install_dir: qemu_datadir / 'firmware')
- endforeach
diff --git a/app-emulation/qemu/qemu-5.2.0-r2.ebuild b/app-emulation/qemu/qemu-5.2.0-r2.ebuild
deleted file mode 100644
index 549e0c7..0000000
--- a/app-emulation/qemu/qemu-5.2.0-r2.ebuild
+++ /dev/null
@@ -1,878 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-PYTHON_REQ_USE="ncurses,readline"
-
-FIRMWARE_ABI_VERSION="4.0.0-r50"
-
-inherit eutils linux-info toolchain-funcs multilib python-r1 \
- udev fcaps readme.gentoo-r1 pax-utils l10n xdg-utils
-
-if [[ ${PV} = *9999* ]]; then
- EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
- EGIT_SUBMODULES=(
- meson
- tests/fp/berkeley-softfloat-3
- tests/fp/berkeley-testfloat-3
- ui/keycodemapdb
- )
- inherit git-r3
- SRC_URI=""
-else
- SRC_URI="https://download.qemu.org/${P}.tar.xz"
- KEYWORDS="amd64 arm64 ~ppc ~ppc64 x86"
-fi
-
-DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
-HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
-
-LICENSE="GPL-2 LGPL-2 BSD-2"
-SLOT="0"
-
-IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc
- +fdt glusterfs gnutls gtk infiniband iscsi io-uring
- jack jemalloc +jpeg kernel_linux
- kernel_FreeBSD lzo multipath
- ncurses nfs nls numa opengl +oss +pin-upstream-blobs
- plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
- +slirp
- smartcard snappy spice ssh static static-user systemtap test udev usb
- usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
- xfs zstd"
-
-COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
- mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
- sh4 sh4eb sparc sparc64 x86_64 xtensa xtensaeb"
-IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS}
- avr lm32 moxie rx tricore unicore32"
-IUSE_USER_TARGETS="${COMMON_TARGETS}
- aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus
- tilegx"
-
-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 )
- static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy )
- static-user? ( !plugins )
- vhost-user-fs? ( caps seccomp )
- virtfs? ( caps xattr )
- vte? ( gtk )
- multipath? ( udev )
- plugins? ( !static !static-user )
-"
-
-# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
-# and user/softmmu targets (qemu-*, qemu-system-*).
-#
-# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
-#
-# The attr lib isn't always linked in (although the USE flag is always
-# respected). This is because qemu supports using the C library's API
-# when available rather than always using the external library.
-ALL_DEPEND="
- >=dev-libs/glib-2.0[static-libs(+)]
- sys-libs/zlib[static-libs(+)]
- python? ( ${PYTHON_DEPS} )
- systemtap? ( dev-util/systemtap )
- xattr? ( sys-apps/attr[static-libs(+)] )"
-
-# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
-# softmmu targets (qemu-system-*).
-SOFTMMU_TOOLS_DEPEND="
- dev-libs/libxml2[static-libs(+)]
- >=x11-libs/pixman-0.28.0[static-libs(+)]
- accessibility? (
- app-accessibility/brltty[api]
- app-accessibility/brltty[static-libs(+)]
- )
- aio? ( dev-libs/libaio[static-libs(+)] )
- alsa? ( >=media-libs/alsa-lib-1.0.13 )
- bzip2? ( app-arch/bzip2[static-libs(+)] )
- capstone? ( dev-libs/capstone:= )
- caps? ( sys-libs/libcap-ng[static-libs(+)] )
- curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
- fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
- glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
- gnutls? (
- dev-libs/nettle:=[static-libs(+)]
- >=net-libs/gnutls-3.0:=[static-libs(+)]
- )
- gtk? (
- x11-libs/gtk+:3
- vte? ( x11-libs/vte:2.91 )
- )
- infiniband? (
- sys-fabric/libibumad:=[static-libs(+)]
- sys-fabric/libibverbs:=[static-libs(+)]
- sys-fabric/librdmacm:=[static-libs(+)]
- )
- iscsi? ( net-libs/libiscsi )
- io-uring? ( sys-libs/liburing:=[static-libs(+)] )
- jack? ( virtual/jack )
- jemalloc? ( dev-libs/jemalloc )
- jpeg? ( virtual/jpeg:0=[static-libs(+)] )
- lzo? ( dev-libs/lzo:2[static-libs(+)] )
- multipath? ( sys-fs/multipath-tools )
- ncurses? (
- sys-libs/ncurses:0=[unicode]
- sys-libs/ncurses:0=[static-libs(+)]
- )
- nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
- numa? ( sys-process/numactl[static-libs(+)] )
- opengl? (
- virtual/opengl
- media-libs/libepoxy[static-libs(+)]
- media-libs/mesa[static-libs(+)]
- media-libs/mesa[egl,gbm]
- )
- png? ( media-libs/libpng:0=[static-libs(+)] )
- pulseaudio? ( media-sound/pulseaudio )
- rbd? ( sys-cluster/ceph )
- sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
- sdl? (
- media-libs/libsdl2[video]
- media-libs/libsdl2[static-libs(+)]
- )
- sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
- seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- slirp? ( net-libs/libslirp[static-libs(+)] )
- smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
- snappy? ( app-arch/snappy:= )
- spice? (
- >=app-emulation/spice-protocol-0.12.3
- >=app-emulation/spice-0.12.0[static-libs(+)]
- )
- ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
- udev? ( virtual/libudev[static-libs(+)] )
- usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
- usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
- vde? ( net-misc/vde[static-libs(+)] )
- virgl? ( media-libs/virglrenderer[static-libs(+)] )
- virtfs? ( sys-libs/libcap )
- xen? ( app-emulation/xen-tools:= )
- xfs? ( sys-fs/xfsprogs[static-libs(+)] )
- zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
-"
-
-X86_FIRMWARE_DEPEND="
- pin-upstream-blobs? (
- ~sys-firmware/edk2-ovmf-201905[binary]
- ~sys-firmware/ipxe-1.0.0_p20190728[binary,qemu]
- ~sys-firmware/seabios-1.12.0[binary,seavgabios]
- ~sys-firmware/sgabios-0.1_pre8[binary]
- )
- !pin-upstream-blobs? (
- sys-firmware/edk2-ovmf
- sys-firmware/ipxe[qemu]
- >=sys-firmware/seabios-1.10.2[seavgabios]
- sys-firmware/sgabios
- )"
-PPC_FIRMWARE_DEPEND="
- pin-upstream-blobs? (
- ~sys-firmware/seabios-1.12.0[binary,seavgabios]
- )
- !pin-upstream-blobs? (
- >=sys-firmware/seabios-1.10.2[seavgabios]
- )
-"
-
-BDEPEND="
- $(python_gen_impl_dep)
- dev-lang/perl
- sys-apps/texinfo
- virtual/pkgconfig
- doc? ( dev-python/sphinx )
- gtk? ( nls? ( sys-devel/gettext ) )
- test? (
- dev-libs/glib[utils]
- sys-devel/bc
- )
-"
-CDEPEND="
- !static? (
- ${ALL_DEPEND//\[static-libs(+)]}
- ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
- )
- qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
- qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
- qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
- qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
-"
-DEPEND="${CDEPEND}
- kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
- static? (
- ${ALL_DEPEND}
- ${SOFTMMU_TOOLS_DEPEND}
- )
- static-user? ( ${ALL_DEPEND} )"
-RDEPEND="${CDEPEND}
- acct-group/kvm
- selinux? ( sec-policy/selinux-qemu )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
- "${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
- "${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
- "${FILESDIR}"/${PN}-5.2.0-strings.patch
- "${FILESDIR}"/${PN}-5.2.0-fix-firmware-path.patch
- "${FILESDIR}"/${PN}-5.2.0-no-pie-ld.patch
-)
-
-QA_PREBUILT="
- usr/share/qemu/hppa-firmware.img
- usr/share/qemu/openbios-ppc
- usr/share/qemu/openbios-sparc64
- usr/share/qemu/openbios-sparc32
- usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
- usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
- usr/share/qemu/palcode-clipper
- usr/share/qemu/s390-ccw.img
- usr/share/qemu/s390-netboot.img
- usr/share/qemu/u-boot.e500
-"
-
-QA_WX_LOAD="usr/bin/qemu-i386
- usr/bin/qemu-x86_64
- usr/bin/qemu-alpha
- usr/bin/qemu-arm
- usr/bin/qemu-cris
- usr/bin/qemu-m68k
- usr/bin/qemu-microblaze
- usr/bin/qemu-microblazeel
- usr/bin/qemu-mips
- usr/bin/qemu-mipsel
- usr/bin/qemu-or1k
- usr/bin/qemu-ppc
- usr/bin/qemu-ppc64
- usr/bin/qemu-ppc64abi32
- usr/bin/qemu-sh4
- usr/bin/qemu-sh4eb
- usr/bin/qemu-sparc
- usr/bin/qemu-sparc64
- usr/bin/qemu-armeb
- usr/bin/qemu-sparc32plus
- usr/bin/qemu-s390x
- usr/bin/qemu-unicore32
-"
-
-DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
-kernel module loaded before running kvm. The easiest way to ensure that the
-kernel module is loaded is to load it on boot.
- For AMD CPUs the module is called 'kvm-amd'.
- For Intel CPUs the module is called 'kvm-intel'.
-Please review /etc/conf.d/modules for how to load these.
-
-Make sure your user is in the 'kvm' group. Just run
- $ gpasswd -a <USER> kvm
-then have <USER> re-login.
-
-For brand new installs, the default permissions on /dev/kvm might not let
-you access it. You can tell udev to reset ownership/perms:
- $ udevadm trigger -c add /dev/kvm
-
-If you want to register binfmt handlers for qemu user targets:
-For openrc:
- # rc-update add qemu-binfmt
-For systemd:
- # ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
-
-pkg_pretend() {
- if use kernel_linux && kernel_is lt 2 6 25; then
- eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
- elif use kernel_linux; then
- if ! linux_config_exists; then
- eerror "Unable to check your kernel for KVM support"
- else
- CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
- ERROR_KVM="You must enable KVM in your kernel to continue"
- ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
- ERROR_KVM_AMD+=" your kernel configuration."
- ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
- ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
- ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
- ERROR_TUN+=" into your kernel or loaded as a module to use the"
- ERROR_TUN+=" virtual network device if using -net tap."
- ERROR_BRIDGE="You will also need support for 802.1d"
- ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
- use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
- ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
- ERROR_VHOST_NET+=" support"
-
- if use amd64 || use x86 || use amd64-linux || use x86-linux; then
- if grep -q AuthenticAMD /proc/cpuinfo; then
- CONFIG_CHECK+=" ~KVM_AMD"
- elif grep -q GenuineIntel /proc/cpuinfo; then
- CONFIG_CHECK+=" ~KVM_INTEL"
- fi
- fi
-
- use python && CONFIG_CHECK+=" ~DEBUG_FS"
- ERROR_DEBUG_FS="debugFS support required for kvm_stat"
-
- # Now do the actual checks setup above
- check_extra_config
- fi
- fi
-
- if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
- eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
- eerror "instances are still pointing to it. Please update your"
- eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
- eerror "and the right system binary (e.g. qemu-system-x86_64)."
- die "update your virt configs to not use qemu-kvm"
- fi
-}
-
-# Sanity check to make sure target lists are kept up-to-date.
-check_targets() {
- local var=$1 mak=$2
- local detected sorted
-
- pushd "${S}"/default-configs/targets/ >/dev/null || die
-
- # Force C locale until glibc is updated. #564936
- detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
- sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
- if [[ ${sorted} != "${detected}" ]] ; then
- eerror "The ebuild needs to be kept in sync."
- eerror "${var}: ${sorted}"
- eerror "$(printf '%-*s' ${#var} configure): ${detected}"
- die "sync ${var} to the list of targets"
- fi
-
- popd >/dev/null
-}
-
-src_prepare() {
- check_targets IUSE_SOFTMMU_TARGETS softmmu
- check_targets IUSE_USER_TARGETS linux-user
-
- default
-
- # Use correct toolchain to fix cross-compiling
- tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
- export WINDRES=${CHOST}-windres
-
- # Verbose builds
- MAKEOPTS+=" V=1"
-
- # Remove bundled copy of libfdt
- rm -r dtc || die
-
- # conditionally apply patches for musl support
- if use elibc_musl ; then
- eapply "${FILESDIR}"/musl-patches/0001-linux-user-fix-build-with-musl-on-aarch64.patch
- eapply "${FILESDIR}"/musl-patches/0001-linux-user-fix-build-with-musl-on-ppc64le.patch
- eapply "${FILESDIR}"/musl-patches/0001-virtio-host-input-use-safe-64-bit-time-accessors-for.patch
- eapply "${FILESDIR}"/musl-patches/0002-virtio-user-input-use-safe-64-bit-time-accessors-for.patch
- eapply "${FILESDIR}"/musl-patches/0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch
- eapply "${FILESDIR}"/musl-patches/MAP_SYNC-fix.patch
- eapply "${FILESDIR}"/musl-patches/fix-segevent-and-sigval_t.patch
- eapply "${FILESDIR}"/musl-patches/fix-sendmsg.patch
- eapply "${FILESDIR}"/musl-patches/fix-sockios-header.patch
- eapply "${FILESDIR}"/musl-patches/guest-agent-shutdown.patch
- eapply "${FILESDIR}"/musl-patches/ignore-signals-33-and-64-to-allow-golang-emulation.patch
- eapply "${FILESDIR}"/musl-patches/mips-softfloat.patch
- eapply "${FILESDIR}"/musl-patches/musl-F_SHLCK-and-F_EXLCK.patch
- eapply "${FILESDIR}"/musl-patches/xattr_size_max.patch
- fi
-}
-
-##
-# configures qemu based on the build directory and the build type
-# we are using.
-#
-qemu_src_configure() {
- debug-print-function ${FUNCNAME} "$@"
-
- local buildtype=$1
- local builddir="${S}/${buildtype}-build"
-
- mkdir "${builddir}"
-
- local conf_opts=(
- --prefix=/usr
- --sysconfdir=/etc
- --bindir=/usr/bin
- --libdir=/usr/$(get_libdir)
- --datadir=/usr/share
- --docdir=/usr/share/doc/${PF}/html
- --mandir=/usr/share/man
- --localstatedir=/var
- --disable-bsd-user
- --disable-containers # bug #732972
- --disable-guest-agent
- --disable-strip
-
- # bug #746752: TCG interpreter has a few limitations:
- # - it does not support FPU
- # - it's generally slower on non-self-modifying code
- # It's advantage is support for host architectures
- # where native codegeneration is not implemented.
- # Gentoo has qemu keyworded only on targets with
- # native code generation available. Avoid the interpreter.
- --disable-tcg-interpreter
-
- --disable-werror
- # We support gnutls/nettle for crypto operations. It is possible
- # to use gcrypt when gnutls/nettle are disabled (but not when they
- # are enabled), but it's not really worth the hassle. Disable it
- # all the time to avoid automatically detecting it. #568856
- --disable-gcrypt
- --python="${PYTHON}"
- --cc="$(tc-getCC)"
- --cxx="$(tc-getCXX)"
- --host-cc="$(tc-getBUILD_CC)"
- $(use_enable debug debug-info)
- $(use_enable debug debug-tcg)
- $(use_enable doc docs)
- $(use_enable nls gettext)
- $(use_enable plugins)
- $(use_enable xattr attr)
- )
-
- # Disable options not used by user targets. This simplifies building
- # static user targets (USE=static-user) considerably.
- conf_notuser() {
- if [[ ${buildtype} == "user" ]] ; then
- echo "--disable-${2:-$1}"
- else
- use_enable "$@"
- fi
- }
- # Enable option only for softmmu build, but not 'user' or 'tools'
- conf_softmmu() {
- if [[ ${buildtype} == "softmmu" ]] ; then
- use_enable "$@"
- else
- echo "--disable-${2:-$1}"
- fi
- }
- # Enable option only for tools build, but not 'user' or 'softmmu'
- conf_tools() {
- if [[ ${buildtype} == "tools" ]] ; then
- use_enable "$@"
- else
- echo "--disable-${2:-$1}"
- fi
- }
- conf_opts+=(
- $(conf_notuser accessibility brlapi)
- $(conf_notuser aio linux-aio)
- $(conf_notuser bzip2)
- $(conf_notuser capstone)
- $(conf_notuser caps cap-ng)
- $(conf_notuser curl)
- $(conf_notuser fdt)
- $(conf_notuser glusterfs)
- $(conf_notuser gnutls)
- $(conf_notuser gnutls nettle)
- $(conf_notuser gtk)
- $(conf_notuser infiniband rdma)
- $(conf_notuser iscsi libiscsi)
- $(conf_notuser io-uring linux-io-uring)
- $(conf_notuser jemalloc jemalloc)
- $(conf_notuser jpeg vnc-jpeg)
- $(conf_notuser kernel_linux kvm)
- $(conf_notuser lzo)
- $(conf_notuser multipath mpath)
- $(conf_notuser ncurses curses)
- $(conf_notuser nfs libnfs)
- $(conf_notuser numa)
- $(conf_notuser opengl)
- $(conf_notuser png vnc-png)
- $(conf_notuser rbd)
- $(conf_notuser sasl vnc-sasl)
- $(conf_notuser sdl)
- $(conf_softmmu sdl-image)
- $(conf_notuser seccomp)
- $(conf_notuser slirp slirp system)
- $(conf_notuser smartcard)
- $(conf_notuser snappy)
- $(conf_notuser spice)
- $(conf_notuser ssh libssh)
- $(conf_notuser udev libudev)
- $(conf_notuser usb libusb)
- $(conf_notuser usbredir usb-redir)
- $(conf_notuser vde)
- $(conf_notuser vhost-net)
- $(conf_notuser vhost-user-fs)
- $(conf_tools vhost-user-fs virtiofsd)
- $(conf_notuser virgl virglrenderer)
- $(conf_notuser virtfs)
- $(conf_notuser vnc)
- $(conf_notuser vte)
- $(conf_notuser xen)
- $(conf_notuser xen xen-pci-passthrough)
- $(conf_notuser xfs xfsctl)
- # use prebuilt keymaps, bug #759604
- --disable-xkbcommon
- $(conf_notuser zstd)
- )
-
- if [[ ${buildtype} == "user" ]] ; then
- conf_opts+=( --disable-libxml2 )
- else
- conf_opts+=( --enable-libxml2 )
- fi
-
- if [[ ! ${buildtype} == "user" ]] ; then
- # audio options
- local audio_opts=(
- # Note: backend order matters here: #716202
- # We iterate from higher-level to lower level.
- $(usex pulseaudio pa "")
- $(usev jack)
- $(usev sdl)
- $(usev alsa)
- $(usev oss)
- )
- conf_opts+=(
- --audio-drv-list=$(printf "%s," "${audio_opts[@]}")
- )
- fi
-
- case ${buildtype} in
- user)
- conf_opts+=(
- --enable-linux-user
- --disable-system
- --disable-blobs
- --disable-tools
- )
- local static_flag="static-user"
- ;;
- softmmu)
- conf_opts+=(
- --disable-linux-user
- --enable-system
- --disable-tools
- )
- local static_flag="static"
- ;;
- tools)
- conf_opts+=(
- --disable-linux-user
- --disable-system
- --disable-blobs
- --enable-tools
- )
- local static_flag="static"
- ;;
- esac
-
- local targets="${buildtype}_targets"
- [[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
-
- # Add support for SystemTAP
- use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
-
- # We always want to attempt to build with PIE support as it results
- # in a more secure binary. But it doesn't work with static or if
- # the current GCC doesn't have PIE support.
- if use ${static_flag}; then
- conf_opts+=( --static --disable-pie )
- else
- tc-enables-pie && conf_opts+=( --enable-pie )
- fi
-
- # Plumb through equivalent of EXTRA_ECONF to allow experiments
- # like bug #747928.
- conf_opts+=( ${EXTRA_CONF_QEMU} )
-
- echo "../configure ${conf_opts[*]}"
- cd "${builddir}"
- ../configure "${conf_opts[@]}" || die "configure failed"
-
- # FreeBSD's kernel does not support QEMU assigning/grabbing
- # host USB devices yet
- use kernel_FreeBSD && \
- sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
-}
-
-src_configure() {
- local target
-
- python_setup
-
- softmmu_targets= softmmu_bins=()
- user_targets= user_bins=()
-
- for target in ${IUSE_SOFTMMU_TARGETS} ; do
- if use "qemu_softmmu_targets_${target}"; then
- softmmu_targets+=",${target}-softmmu"
- softmmu_bins+=( "qemu-system-${target}" )
- fi
- done
-
- for target in ${IUSE_USER_TARGETS} ; do
- if use "qemu_user_targets_${target}"; then
- user_targets+=",${target}-linux-user"
- user_bins+=( "qemu-${target}" )
- fi
- done
-
- softmmu_targets=${softmmu_targets#,}
- user_targets=${user_targets#,}
-
- [[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
- [[ -n ${user_targets} ]] && qemu_src_configure "user"
- qemu_src_configure "tools"
-}
-
-src_compile() {
- if [[ -n ${user_targets} ]]; then
- cd "${S}/user-build"
- default
- fi
-
- if [[ -n ${softmmu_targets} ]]; then
- cd "${S}/softmmu-build"
- default
- fi
-
- cd "${S}/tools-build"
- default
-}
-
-src_test() {
- if [[ -n ${softmmu_targets} ]]; then
- cd "${S}/softmmu-build"
- pax-mark m */qemu-system-* #515550
- emake check
- fi
-}
-
-qemu_python_install() {
- python_domodule "${S}/python/qemu"
-
- python_doscript "${S}/scripts/kvm/vmxcap"
- python_doscript "${S}/scripts/qmp/qmp-shell"
- python_doscript "${S}/scripts/qmp/qemu-ga-client"
-}
-
-# Generate binfmt support files.
-# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
-# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
-generate_initd() {
- local out="${T}/qemu-binfmt"
- local out_systemd="${T}/qemu.conf"
- local d="${T}/binfmt.d"
-
- einfo "Generating qemu binfmt scripts and configuration files"
-
- # Generate the debian fragments first.
- mkdir -p "${d}"
- "${S}"/scripts/qemu-binfmt-conf.sh \
- --debian \
- --exportdir "${d}" \
- --qemu-path "${EPREFIX}/usr/bin" \
- || die
- # Then turn the fragments into a shell script we can source.
- sed -E -i \
- -e 's:^([^ ]+) (.*)$:\1="\2":' \
- "${d}"/* || die
-
- # Generate the init.d script by assembling the fragments from above.
- local f qcpu package interpreter magic mask
- cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
- for f in "${d}"/qemu-* ; do
- source "${f}"
-
- # Normalize the cpu logic like we do in the init.d for the native cpu.
- qcpu=${package#qemu-}
- case ${qcpu} in
- arm*) qcpu="arm";;
- mips*) qcpu="mips";;
- ppc*) qcpu="ppc";;
- s390*) qcpu="s390";;
- sh*) qcpu="sh";;
- sparc*) qcpu="sparc";;
- esac
-
- # we use 'printf' here to be portable across 'sh'
- # implementations: #679168
- cat <<EOF >>"${out}"
- if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
- printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
- fi
-EOF
-
- echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
-
- done
- cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
-}
-
-src_install() {
- if [[ -n ${user_targets} ]]; then
- cd "${S}/user-build"
- emake DESTDIR="${ED}" install
-
- # Install binfmt handler init script for user targets.
- generate_initd
- doinitd "${T}/qemu-binfmt"
-
- # Install binfmt/qemu.conf.
- insinto "/usr/share/qemu/binfmt.d"
- doins "${T}/qemu.conf"
- fi
-
- if [[ -n ${softmmu_targets} ]]; then
- cd "${S}/softmmu-build"
- emake DESTDIR="${ED}" install
-
- # This might not exist if the test failed. #512010
- [[ -e check-report.html ]] && dodoc check-report.html
-
- if use kernel_linux; then
- udev_newrules "${FILESDIR}"/65-kvm.rules-r1 65-kvm.rules
- fi
-
- if use python; then
- python_foreach_impl qemu_python_install
- fi
- fi
-
- cd "${S}/tools-build"
- emake DESTDIR="${ED}" install
-
- # Disable mprotect on the qemu binaries as they use JITs to be fast #459348
- pushd "${ED}"/usr/bin >/dev/null
- pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
- popd >/dev/null
-
- # Install config file example for qemu-bridge-helper
- insinto "/etc/qemu"
- doins "${FILESDIR}/bridge.conf"
-
- cd "${S}"
- dodoc MAINTAINERS docs/specs/pci-ids.txt
- newdoc pc-bios/README README.pc-bios
-
- # Disallow stripping of prebuilt firmware files.
- dostrip -x ${QA_PREBUILT}
-
- if [[ -n ${softmmu_targets} ]]; then
- # Remove SeaBIOS since we're using the SeaBIOS packaged one
- rm "${ED}/usr/share/qemu/bios.bin"
- rm "${ED}/usr/share/qemu/bios-256k.bin"
- if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
- dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
- dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
- fi
-
- # Remove vgabios since we're using the seavgabios packaged one
- rm "${ED}/usr/share/qemu/vgabios.bin"
- rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
- rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
- rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
- rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
- rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
- # PPC/PPC64 loads vgabios-stdvga
- if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
- dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
- dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
- dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
- dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
- dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
- dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
- fi
-
- # Remove sgabios since we're using the sgabios packaged one
- rm "${ED}/usr/share/qemu/sgabios.bin"
- if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
- dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
- fi
-
- # Remove iPXE since we're using the iPXE packaged one
- rm "${ED}"/usr/share/qemu/pxe-*.rom
- if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
- dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
- dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
- dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
- dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
- dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
- dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
- fi
- fi
-
- DISABLE_AUTOFORMATTING=true
- readme.gentoo_create_doc
-}
-
-firmware_abi_change() {
- local pv
- for pv in ${REPLACING_VERSIONS}; do
- if ver_test $pv -lt ${FIRMWARE_ABI_VERSION}; then
- return 0
- fi
- done
- return 1
-}
-
-pkg_postinst() {
- if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
- udev_reload
- fi
-
- xdg_icon_cache_update
-
- [[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
- fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
-
- DISABLE_AUTOFORMATTING=true
- readme.gentoo_print_elog
-
- if use pin-upstream-blobs && firmware_abi_change; then
- ewarn "This version of qemu pins new versions of firmware blobs:"
- ewarn " $(best_version sys-firmware/edk2-ovmf)"
- ewarn " $(best_version sys-firmware/ipxe)"
- ewarn " $(best_version sys-firmware/seabios)"
- ewarn " $(best_version sys-firmware/sgabios)"
- ewarn "This might break resume of hibernated guests (started with a different"
- ewarn "firmware version) and live migration to/from qemu versions with different"
- ewarn "firmware. Please (cold) restart all running guests. For functional"
- ewarn "guest migration ensure that all"
- ewarn "hosts run at least"
- ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
- fi
-}
-
-pkg_info() {
- echo "Using:"
- echo " $(best_version app-emulation/spice-protocol)"
- echo " $(best_version sys-firmware/edk2-ovmf)"
- if has_version 'sys-firmware/edk2-ovmf[binary]'; then
- echo " USE=binary"
- else
- echo " USE=''"
- fi
- echo " $(best_version sys-firmware/ipxe)"
- echo " $(best_version sys-firmware/seabios)"
- if has_version 'sys-firmware/seabios[binary]'; then
- echo " USE=binary"
- else
- echo " USE=''"
- fi
- echo " $(best_version sys-firmware/sgabios)"
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
-}
diff --git a/app-emulation/qemu/qemu-5.2.0-r3.ebuild b/app-emulation/qemu/qemu-6.0.0.ebuild
index 8234a3c..5c2c7c2 100644
--- a/app-emulation/qemu/qemu-5.2.0-r3.ebuild
+++ b/app-emulation/qemu/qemu-6.0.0.ebuild
@@ -3,14 +3,13 @@
EAPI="7"
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
PYTHON_REQ_USE="ncurses,readline"
-FIRMWARE_ABI_VERSION="4.0.0-r50"
+FIRMWARE_ABI_VERSION="5.2.0-r50"
inherit eutils linux-info toolchain-funcs multilib python-r1
inherit udev fcaps readme.gentoo-r1 pax-utils l10n xdg-utils
-inherit flag-o-matic
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
@@ -24,7 +23,7 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
else
SRC_URI="https://download.qemu.org/${P}.tar.xz"
- KEYWORDS="amd64 arm64 ~ppc ~ppc64 ~x86"
+ KEYWORDS="amd64 arm64 ~ppc ppc64 ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
@@ -44,14 +43,55 @@ IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug +doc
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
xfs zstd"
-COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
- mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
- sh4 sh4eb sparc sparc64 x86_64 xtensa xtensaeb"
-IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS}
- avr lm32 moxie rx tricore unicore32"
-IUSE_USER_TARGETS="${COMMON_TARGETS}
- aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus
- tilegx"
+COMMON_TARGETS="
+ aarch64
+ alpha
+ arm
+ cris
+ hppa
+ i386
+ m68k
+ microblaze
+ microblazeel
+ mips
+ mips64
+ mips64el
+ mipsel
+ nios2
+ or1k
+ ppc
+ ppc64
+ riscv32
+ riscv64
+ s390x
+ sh4
+ sh4eb
+ sparc
+ sparc64
+ x86_64
+ xtensa
+ xtensaeb
+"
+IUSE_SOFTMMU_TARGETS="
+ ${COMMON_TARGETS}
+ avr
+ lm32
+ moxie
+ rx
+ tricore
+ unicore32
+"
+IUSE_USER_TARGETS="
+ ${COMMON_TARGETS}
+ aarch64_be
+ armeb
+ hexagon
+ mipsn32
+ mipsn32el
+ ppc64abi32
+ ppc64le
+ sparc32plus
+"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
@@ -71,6 +111,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy )
static-user? ( !plugins )
vhost-user-fs? ( caps seccomp )
+ virgl? ( opengl )
virtfs? ( caps xattr )
vte? ( gtk )
multipath? ( udev )
@@ -170,25 +211,27 @@ SOFTMMU_TOOLS_DEPEND="
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
+SEABIOS_VERSION="1.14.0"
+
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
- ~sys-firmware/edk2-ovmf-201905[binary]
- ~sys-firmware/ipxe-1.0.0_p20190728[binary,qemu]
- ~sys-firmware/seabios-1.12.0[binary,seavgabios]
- ~sys-firmware/sgabios-0.1_pre8[binary]
+ ~sys-firmware/edk2-ovmf-202008[binary]
+ ~sys-firmware/ipxe-1.21.1[binary,qemu]
+ ~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
+ ~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
sys-firmware/edk2-ovmf
sys-firmware/ipxe[qemu]
- >=sys-firmware/seabios-1.10.2[seavgabios]
+ >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
sys-firmware/sgabios
)"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
- ~sys-firmware/seabios-1.12.0[binary,seavgabios]
+ ~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
)
!pin-upstream-blobs? (
- >=sys-firmware/seabios-1.10.2[seavgabios]
+ >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
)
"
@@ -227,11 +270,10 @@ RDEPEND="${CDEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
+ "${FILESDIR}"/${PN}-5.2.0-strings.patch
"${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
- "${FILESDIR}"/${PN}-5.2.0-strings.patch
- "${FILESDIR}"/${PN}-5.2.0-fix-firmware-path.patch
- "${FILESDIR}"/${PN}-5.2.0-no-pie-ld.patch
+ "${FILESDIR}"/${PN}-5.2.0-dce-locks.patch
)
QA_PREBUILT="
@@ -360,10 +402,6 @@ check_targets() {
}
src_prepare() {
- # workaround -fcommon breakage: bug #726560
- [[ ${PV} == 5.2.0 ]] || die "Check if -fcommon hack is needed"
- filter-flags -fcommon
-
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
@@ -390,7 +428,6 @@ src_prepare() {
eapply "${FILESDIR}"/musl-patches/fix-segevent-and-sigval_t.patch
eapply "${FILESDIR}"/musl-patches/fix-sendmsg.patch
eapply "${FILESDIR}"/musl-patches/fix-sockios-header.patch
- eapply "${FILESDIR}"/musl-patches/guest-agent-shutdown.patch
eapply "${FILESDIR}"/musl-patches/ignore-signals-33-and-64-to-allow-golang-emulation.patch
eapply "${FILESDIR}"/musl-patches/mips-softfloat.patch
eapply "${FILESDIR}"/musl-patches/musl-F_SHLCK-and-F_EXLCK.patch
@@ -519,7 +556,7 @@ qemu_src_configure() {
$(conf_notuser vhost-user-fs)
$(conf_tools vhost-user-fs virtiofsd)
$(conf_notuser virgl virglrenderer)
- $(conf_notuser virtfs)
+ $(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
diff --git a/app-office/libreoffice/Manifest b/app-office/libreoffice/Manifest
index 45f5c50..bec1203 100644
--- a/app-office/libreoffice/Manifest
+++ b/app-office/libreoffice/Manifest
@@ -14,8 +14,12 @@ DIST ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip 743031 BLAKE2B 85ddb
DIST commons-logging-1.2-src.tar.gz 188536 BLAKE2B 80613b78619f7b3429f60df4fb9b66dd4836e8b89fcf93a3a1bcd5cb7e410d474be010da16b325143e028a40ff4dd971753962c9d9145f85b1738f5dda13ba99 SHA512 9f3761184950f2f13e85d8bc447709ab8be631dfd231b4f053f8147468db1bf71fb116ddba95e39f4afc4cf28c742e07d40c7a637f28004a60dc13935f9609f9
DIST d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip 207563 BLAKE2B 0b7bb7b801a553950644ea1cdd522b43744ed6e2f5c71df0360e6e93f3f04eb33d9585c977783b0572a63f47017ba12becc5255a8aba9255c3e64ff7ae7eaef7 SHA512 71164f5e052db4fc16d1eb6ceb66d2b483d4912d874e371399047761e1d82e95d14288be5a7952c40f0ce39366f0706e726720e6e7171a00ce7bb55632cbf10c
DIST db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip 1396007 BLAKE2B 8012d5c740b74b589f435d59934397111b9e645e965b2c6fd5c12bdc20fd6a9dc93410b40e61fd1dfd058747803bc113cfd6c73fc9e777e5f074cb6b750f93c0 SHA512 4476024e7f307617719714fbf0999409aa11d730bc316f833bb6627d1b83abb42460417be588c193ecb49d6b926dd1f411934d8a8abebe00a3e85c0047dad0a6
+DIST dtoa-20180411.tgz 48893 BLAKE2B 4a03dc67e44353ae1c0653c8305d2df9bcfef16b48dff6df5c857a6bd0510a92aa6d9b9660ad63b2344d5195fef072e526f8d7900791b15442923b63196dda3f SHA512 722aa814c33a34bfffe6c0201b0035cc3b65854a0ba9ae2f51620a89d68019353e2c306651b35bca337186b22b2e9865ef3c5e3df8e9328006f882e4577f8c85
DIST eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip 427800 BLAKE2B d3ac085a39ee9798182b70ba650fa954234b964e33278ac4fe3f84f8c3218ad49f12d139079328036b4f9d80cde967888c0a66393c34dedf27af69dac02c5aff SHA512 9091d3628d9c75c068507537afc9e10bfb79c1abfd36ad697af3d592a1cc049ba6640f665bfc53cc520b6a26c21d70b0275106843444b441484c2178f2784743
DIST f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip 211919 BLAKE2B 2c72493e44d3ad1714d294fb7baaa85d33fef2eb4ce75bf507b65f78f1d9d399bb5eb72cee188a8abc4b234eb2845a26755791fb3ac104ffe6e55013ab41ca8b SHA512 c1a15ebbfe817ec79d4b3f1c97d096bf8511737d7d35d97302856ccfb3de14a1cd16bd31000415d9ab24bbd9ef770d37855cee4b819ff0e8fca2f2766920a114
DIST libreoffice-6.4.7.2.tar.xz 232364676 BLAKE2B 1df8f2a3aa00bd057dd1d6d9665a541330ceeabb2bb5d46351449cf9b916a5649f38dc0e0175cf3733123f9247157f5fd0f2c34c8dad1d676da6c31d8346927b SHA512 ba6ff5948624d7a76025406c38728d643be656091d79320a1c5ddba10000411662951a0b02de7a9e796e76d8185b6e9113882406bb0c1452b4c988ac3095afa8
+DIST libreoffice-7.1.3.2.tar.xz 244104432 BLAKE2B f73bd448f94bc88a1dc775d032ce849ee1dd610c4077c709ffbe40d8c99527c7775cfe2309a636093182ac988ecf44a4b61df0e0a83b332fcc77a05edb602791 SHA512 d7329475cad5bece9358b29bc590da1841c3c0b4aef511508d9398519c514fa176c90675857f1830925818f2dcc8b9c0986e5d34d3a33cce617e4ada23c60a72
DIST libreoffice-branding-gentoo-0.8.tar.xz 151568 BLAKE2B f03c7ddeb53c5ca3fd23401679601fcf2c4037ba17be4eb7b784c7ce7ebb71a24b8ab4aac8b7da8c6b1f14dd23bc1294ba85ff4f70ad271fb4ee3c5372e10883 SHA512 785031a699b1d1895ce4b50ffc3ddf645f3a0ef9acdf37facfd18cf75db9484cb8f53a50abb63d6006ead76a80b6ff5aa99661063245ebb84bd64013d713de7f
DIST libreoffice-help-6.4.7.2.tar.xz 88296892 BLAKE2B 9ee12ec6aa6d5539408e0206e313901540533e28686585fa0bb4edbeaa482bb0ad1cd4ae37ac18dab66bb3e2ea32d52d9960236cbf3e0f8fb5ca07c007f38794 SHA512 a5381a8cca9988998dc01d3815869e47193c1da814b714cbedb51a2099f7dc5444315c657e32defab2eb0b9a9e2a922bc4c5fbc36b7a2b60e7c551887a9cdbb3
+DIST libreoffice-help-7.1.3.2.tar.xz 111785416 BLAKE2B 12d97764976ae0e4736638e9b758c5920d38d608e66fc3343d74178a935632396e1e07fbb98b6f380fd103c3f5e2edf917726a760420f6dfd3d2e42aaa215096 SHA512 576dbea391777a907275b630ed704dd3d9ad0627f8a18da1cbd23fe28df04c3a509583c2404f810df3aaac15ef0881e2c1e0a55c9f31618715586628873367eb
+DIST skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz 10420480 BLAKE2B 83bcc9ff3a3a916ccb92f49ef69f99386e89b636d37679ab17735625c56c4bb31ca89a7034d9282c905b405e0b31215de5fd3734061d323d48db440e4ad52643 SHA512 8e5c37b895d7f5fe15f491005ac46b39efe3bfb3af5dc805bf1226b2112496bdb9e433cc3b313f8fc185fe1f898d126b8a557d23485615cdbe917f0b76855f3d
diff --git a/app-office/libreoffice/files/libreoffice-7.1.3.2-bashism.patch b/app-office/libreoffice/files/libreoffice-7.1.3.2-bashism.patch
new file mode 100644
index 0000000..36d43f2
--- /dev/null
+++ b/app-office/libreoffice/files/libreoffice-7.1.3.2-bashism.patch
@@ -0,0 +1,33 @@
+From 2c4dd73c4c9f471fa2083f9f99dd27a7148f3175 Mon Sep 17 00:00:00 2001
+From: Julien Nabet <serval2412@yahoo.fr>
+Date: Mon, 17 May 2021 18:43:48 +0200
+Subject: tdf#142335: fix bashism in configure.ac
+
+Thanks to Matt Whitlock!
+
+(also reported in https://bugs.gentoo.org/show_bug.cgi?id=780432)
+
+Change-Id: I38fec6faf9a929adf1f300b8c369ec6c16a91ed8
+Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115716
+Tested-by: Jenkins
+Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index d7b831435713..3d14c5e4258c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2682,7 +2682,7 @@ AC_SUBST(ENABLE_RELEASE_BUILD)
+ AC_SUBST(GET_TASK_ALLOW_ENTITLEMENT)
+
+ AC_MSG_CHECKING([whether to build a Community flavor])
+-if test -z "$enable_community_flavor" -o "$enable_community_flavor" == "yes"; then
++if test -z "$enable_community_flavor" -o "$enable_community_flavor" = "yes"; then
+ AC_DEFINE(HAVE_FEATURE_COMMUNITY_FLAVOR)
+ AC_MSG_RESULT([yes])
+ else
+--
+cgit v1.2.1
+
diff --git a/app-office/libreoffice/libreoffice-7.1.3.2.ebuild b/app-office/libreoffice/libreoffice-7.1.3.2.ebuild
new file mode 100644
index 0000000..f45e96d
--- /dev/null
+++ b/app-office/libreoffice/libreoffice-7.1.3.2.ebuild
@@ -0,0 +1,670 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_REQ_USE="threads(+),xml"
+
+MY_PV="${PV/_alpha/.alpha}"
+MY_PV="${MY_PV/_beta/.beta}"
+# experimental ; release ; old
+# Usually the tarballs are moved a lot so this should make everyone happy.
+DEV_URI="
+ https://dev-builds.libreoffice.org/pre-releases/src
+ https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/
+ https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src
+"
+ADDONS_URI="https://dev-www.libreoffice.org/src/"
+
+BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
+# PATCHSET="${P}-patchset-01.tar.xz"
+
+[[ ${MY_PV} == *9999* ]] && inherit git-r3
+inherit autotools bash-completion-r1 check-reqs eapi8-dosym flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils
+
+DESCRIPTION="A full office productivity suite"
+HOMEPAGE="https://www.libreoffice.org"
+SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
+[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}"
+
+# Split modules following git/tarballs; Core MUST be first!
+# Help is used for the image generator
+# Only release has the tarballs
+if [[ ${MY_PV} != *9999* ]]; then
+ for i in ${DEV_URI}; do
+ SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz"
+ SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz"
+ done
+ unset i
+fi
+unset DEV_URI
+
+# Really required addons
+# These are bundles that can't be removed for now due to huge patchsets.
+# If you want them gone, patches are welcome.
+ADDONS_SRC=(
+ # not packaged in Gentoo, https://www.netlib.org/fp/dtoa.c
+ "${ADDONS_URI}/dtoa-20180411.tgz"
+ # not packaged in Gentoo, https://skia.org/
+ "${ADDONS_URI}/skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz"
+ # QR code generating library for >=libreoffice-6.4, bug #691740
+ "${ADDONS_URI}/QR-Code-generator-1.4.0.tar.gz"
+ "base? (
+ ${ADDONS_URI}/commons-logging-1.2-src.tar.gz
+ ${ADDONS_URI}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
+ ${ADDONS_URI}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
+ ${ADDONS_URI}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip
+ ${ADDONS_URI}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip
+ ${ADDONS_URI}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip
+ ${ADDONS_URI}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip
+ ${ADDONS_URI}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip
+ ${ADDONS_URI}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip
+ ${ADDONS_URI}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip
+ ${ADDONS_URI}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip
+ ${ADDONS_URI}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip
+ )"
+ "java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
+ # no release for 8 years, should we package it?
+ "libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )"
+ # Does not build with 1.6 rhino at all
+ "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )"
+ # requirement of rhino
+ "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )"
+ # not packageable
+ "odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )"
+)
+SRC_URI+=" ${ADDONS_SRC[*]}"
+
+unset ADDONS_URI
+unset ADDONS_SRC
+
+# Extensions that need extra work:
+LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
+
+IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags +dbus debug eds firebird
+googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test vulkan
+$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ base? ( firebird java )
+ bluetooth? ( dbus )
+ gtk? ( dbus )
+ libreoffice_extensions_nlpsolver? ( java )
+ libreoffice_extensions_scripting-beanshell? ( java )
+ libreoffice_extensions_scripting-javascript? ( java )
+ libreoffice_extensions_wiki-publisher? ( java )
+"
+
+RESTRICT="!test? ( test )"
+
+LICENSE="|| ( LGPL-3 MPL-1.1 )"
+SLOT="0"
+
+[[ ${MY_PV} == *9999* ]] || \
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+
+BDEPEND="
+ dev-util/intltool
+ sys-devel/bison
+ sys-devel/flex
+ sys-devel/gettext
+ virtual/pkgconfig
+ odk? ( >=app-doc/doxygen-1.8.4 )
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ app-arch/unzip
+ app-arch/zip
+ app-crypt/gpgme[cxx]
+ app-text/hunspell:=
+ >=app-text/libabw-0.1.0
+ >=app-text/libebook-0.1
+ app-text/libepubgen
+ >=app-text/libetonyek-0.1
+ app-text/libexttextcat
+ app-text/liblangtag
+ >=app-text/libmspub-0.1.0
+ >=app-text/libmwaw-0.3.1
+ >=app-text/libnumbertext-1.0.6
+ >=app-text/libodfgen-0.1.0
+ app-text/libqxp
+ app-text/libstaroffice
+ app-text/libwpd:0.10[tools]
+ app-text/libwpg:0.3
+ >=app-text/libwps-0.4
+ app-text/mythes
+ >=dev-cpp/clucene-2.3.3.4-r2
+ >=dev-cpp/libcmis-0.5.2
+ dev-db/unixODBC
+ >=games-engines/box2d-2.4.1:0
+ dev-lang/perl
+ >=dev-libs/boost-1.72.0:=[nls]
+ dev-libs/expat
+ dev-libs/hyphen
+ dev-libs/icu:=
+ dev-libs/libassuan
+ dev-libs/libgpg-error
+ dev-libs/liborcus:0/0.16
+ dev-libs/librevenge
+ dev-libs/libxml2
+ dev-libs/libxslt
+ dev-libs/nspr
+ dev-libs/nss
+ >=dev-libs/redland-1.0.16
+ >=dev-libs/xmlsec-1.2.28[nss]
+ media-gfx/fontforge
+ media-gfx/graphite2
+ media-libs/fontconfig
+ media-libs/freetype:2
+ >=media-libs/harfbuzz-0.9.42:=[graphite,icu]
+ media-libs/lcms:2
+ >=media-libs/libcdr-0.1.0
+ >=media-libs/libepoxy-1.3.1[X]
+ >=media-libs/libfreehand-0.1.0
+ media-libs/libpagemaker
+ >=media-libs/libpng-1.4:0=
+ >=media-libs/libvisio-0.1.0
+ media-libs/libzmf
+ >=net-libs/neon-0.31.1:=
+ net-misc/curl
+ sci-mathematics/lpsolve
+ sys-libs/zlib
+ virtual/glu
+ virtual/jpeg:0
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ accessibility? (
+ $(python_gen_cond_dep 'dev-python/lxml[${PYTHON_MULTI_USEDEP}]')
+ )
+ bluetooth? (
+ dev-libs/glib:2
+ net-wireless/bluez
+ )
+ clang? (
+ || (
+ ( sys-devel/clang:12
+ sys-devel/llvm:12
+ =sys-devel/lld-12* )
+ ( sys-devel/clang:11
+ sys-devel/llvm:11
+ =sys-devel/lld-11* )
+ ( sys-devel/clang:10
+ sys-devel/llvm:10
+ =sys-devel/lld-10* )
+ )
+ )
+ coinmp? ( sci-libs/coinor-mp )
+ cups? ( net-print/cups )
+ dbus? ( sys-apps/dbus[X] )
+ eds? (
+ dev-libs/glib:2
+ gnome-base/dconf
+ gnome-extra/evolution-data-server
+ )
+ firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ )
+ gtk? (
+ dev-libs/glib:2
+ dev-libs/gobject-introspection
+ gnome-base/dconf
+ media-libs/mesa[egl]
+ x11-libs/gtk+:3[X]
+ x11-libs/pango
+ )
+ kde? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ kde-frameworks/kconfig:5
+ kde-frameworks/kcoreaddons:5
+ kde-frameworks/ki18n:5
+ kde-frameworks/kio:5
+ kde-frameworks/kwindowsystem:5
+ )
+ ldap? ( net-nds/openldap )
+ libreoffice_extensions_scripting-beanshell? ( dev-java/bsh )
+ libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
+ mariadb? ( dev-db/mariadb-connector-c )
+ !mariadb? ( dev-db/mysql-connector-c )
+ pdfimport? ( app-text/poppler:=[cxx] )
+ postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
+"
+# FIXME: cppunit should be moved to test conditional
+# after everything upstream is under gbuild
+# as dmake execute tests right away
+# tests apparently also need google-carlito-fonts (not packaged)
+DEPEND="${COMMON_DEPEND}
+ >=dev-libs/libatomic_ops-7.2d
+ dev-perl/Archive-Zip
+ >=dev-util/cppunit-1.14.0
+ >=dev-util/gperf-3.1
+ dev-util/mdds:1/1.5
+ media-libs/glm
+ sys-devel/ucpp
+ x11-base/xorg-proto
+ x11-libs/libXt
+ x11-libs/libXtst
+ java? (
+ dev-java/ant-core
+ || (
+ dev-java/openjdk:11
+ dev-java/openjdk-bin:11
+ )
+ )
+ test? (
+ app-crypt/gnupg
+ dev-util/cppunit
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !app-office/libreoffice-bin
+ !app-office/libreoffice-bin-debug
+ media-fonts/liberation-fonts
+ || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
+ java? ( || (
+ dev-java/openjdk:11
+ dev-java/openjdk-jre-bin:11
+ >=virtual/jre-1.8
+ ) )
+ kde? ( kde-frameworks/breeze-icons:* )
+"
+if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then
+ PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*"
+else
+ # Translations are not reliable on live ebuilds
+ # rather force people to use english only.
+ PDEPEND="!app-office/libreoffice-l10n"
+fi
+
+PATCHES=(
+ # "${WORKDIR}"/${PATCHSET/.tar.xz/}
+
+ # not upstreamable stuff
+ "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
+ "${FILESDIR}/${PN}-6.1-nomancompress.patch"
+ "${FILESDIR}/${PN}-7.0.3.1-qt5detect.patch"
+
+ # master branch
+ "${FILESDIR}/${P}-bashism.patch" # bug 780432
+
+ # musl compatibility by AlpineLinux
+ "${FILESDIR}/${PN}-6.4.4.2-linux-musl.patch"
+ "${FILESDIR}/${PN}-6.1.4.2-musl-fix-execinfo.patch"
+ "${FILESDIR}/${PN}-6.1.4.2-disable-liborcus-unittest.patch"
+ "${FILESDIR}/${PN}-6.1.4.2-musl-stacksize.patch"
+)
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+_check_reqs() {
+ CHECKREQS_MEMORY="512M"
+ if is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ CHECKREQS_DISK_BUILD="22G"
+ else
+ CHECKREQS_DISK_BUILD="6G"
+ fi
+ check-reqs_$1
+}
+
+pkg_pretend() {
+ if use x86; then
+ elog "Unfortunately for packaging reasons on x86, various Java-based wizards,"
+ elog "most notably Report Builder in LibreOffice Base, will not be available."
+ elog "See also: https://bugs.gentoo.org/785640"
+ else
+ use base ||
+ ewarn "If you plan to use Base application you must enable USE base."
+ use java ||
+ ewarn "Without USE java, several wizards are not going to be available."
+ fi
+
+ [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend
+}
+
+pkg_setup() {
+ java-pkg-opt-2_pkg_setup
+ python-single-r1_pkg_setup
+ xdg_environment_reset
+
+ [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup
+}
+
+src_unpack() {
+ default
+
+ if [[ ${MY_PV} = *9999* ]]; then
+ local base_uri branch mypv
+ base_uri="https://anongit.freedesktop.org/git"
+ branch="master"
+ mypv=${MY_PV/.9999}
+ [[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}"
+ git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}"
+ git-r3_checkout "${base_uri}/${PN}/core"
+ LOCOREGIT_VERSION=${EGIT_VERSION}
+
+ git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master"
+ git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help
+ fi
+}
+
+src_prepare() {
+ default
+
+ # sandbox violations on many systems, we don't need it. Bug #646406
+ sed -i \
+ -e "/KF5_CONFIG/s/kf5-config/no/" \
+ configure.ac || die "Failed to disable kf5-config"
+
+ AT_M4DIR="m4" eautoreconf
+ # hack in the autogen.sh
+ touch autogen.lastrun
+
+ # sed in the tests
+ sed -i \
+ -e "s#all : build unitcheck#all : build#g" \
+ solenv/gbuild/Module.mk || die
+ sed -i \
+ -e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \
+ -e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \
+ Makefile.in || die
+
+ sed -i \
+ -e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \
+ -e "s,\$INSTALLDIRNAME.sh,${PN}," \
+ bin/distro-install-desktop-integration || die
+
+ if use branding; then
+ # hack...
+ mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die
+ fi
+
+ # Don't list pdfimport support in desktop when built with none, bug # 605464
+ if ! use pdfimport; then
+ sed -i \
+ -e ":MimeType: s:application/pdf;::" \
+ -e ":Keywords: s:pdf;::" \
+ sysui/desktop/menus/draw.desktop || die
+ fi
+}
+
+src_configure() {
+ # Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys
+ # Note: these are for Gentoo use ONLY. For your own distribution, please get
+ # your own set of keys. Feel free to contact chromium@gentoo.org for more info.
+ local google_default_client_id="329227923882.apps.googleusercontent.com"
+ local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
+
+ # Show flags set at the beginning
+ einfo "Preset CFLAGS: ${CFLAGS}"
+ einfo "Preset LDFLAGS: ${LDFLAGS}"
+
+ if use clang ; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+ AR=llvm-ar
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ LDFLAGS+=" -fuse-ld=lld"
+ else
+ # Force gcc
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if use custom-cflags ; then
+ elog "USE=custom-cflags has been selected. You are on your own to make sure that"
+ elog "the build succeeds. Good luck!"
+ else
+ strip-flags
+ fi
+
+ export LO_CLANG_CC=${CC}
+ export LO_CLANG_CXX=${CXX}
+
+ # Show flags set at the end
+ einfo " Used CFLAGS: ${CFLAGS}"
+ einfo " Used LDFLAGS: ${LDFLAGS}"
+
+ # Ensure we use correct toolchain
+ tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+ if use vulkan && ! use clang ; then
+ ewarn "Building skia with gcc may lead to performance issues. Disable vulkan or enable clang."
+ fi
+
+ # optimization flags
+ export GMAKE_OPTIONS="${MAKEOPTS}"
+ # System python enablement:
+ export PYTHON_CFLAGS=$(python_get_CFLAGS)
+ export PYTHON_LIBS=$(python_get_LIBS)
+
+ use kde && export QT5DIR="$(qt5_get_bindir)/.."
+
+ local gentoo_buildid="Gentoo official package"
+ if [[ -n ${LOCOREGIT_VERSION} ]]; then
+ gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})"
+ fi
+
+ # system headers/libs/...: enforce using system packages
+ # --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad
+ # --enable-cairo: ensure that cairo is always required
+ # --enable-*-link: link to the library rather than just dlopen on runtime
+ # --enable-release-build: build the libreoffice as release
+ # --disable-fetch-external: prevent dowloading during compile phase
+ # --enable-extension-integration: enable any extension integration support
+ # --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
+ # --disable-report-builder: too much java packages pulled in without pkgs
+ # --without-system-sane: just sane.h header that is used for scan in writer,
+ # not linked or anything else, worthless to depend on
+ # --disable-pdfium: not yet packaged
+ # --without-system-qrcodegen: has no real build system and LO is the only user
+ local myeconfargs=(
+ --with-system-dicts
+ --with-system-epoxy
+ --with-system-headers
+ --with-system-jars
+ --with-system-libs
+ --enable-build-opensymbol
+ --enable-cairo-canvas
+ --enable-largefile
+ --enable-mergelibs
+ --enable-neon
+ --enable-python=system
+ --enable-randr
+ --enable-release-build
+ --disable-breakpad
+ --disable-bundle-mariadb
+ --disable-ccache
+ --disable-epm
+ --disable-fetch-external
+ --disable-gtk3-kde5
+ --disable-online-update
+ --disable-openssl
+ --disable-pdfium
+ --disable-vlc
+ --with-extra-buildid="${gentoo_buildid}"
+ --enable-extension-integration
+ --with-external-dict-dir="${EPREFIX}/usr/share/myspell"
+ --with-external-hyph-dir="${EPREFIX}/usr/share/myspell"
+ --with-external-thes-dir="${EPREFIX}/usr/share/myspell"
+ --with-external-tar="${DISTDIR}"
+ --with-lang=""
+ --with-parallelism=$(makeopts_jobs)
+ --with-system-ucpp
+ --with-tls=nss
+ --with-vendor="Gentoo Foundation"
+ --with-x
+ --without-fonts
+ --without-myspell-dicts
+ --with-help="html"
+ --without-helppack-integration
+ --with-system-gpgmepp
+ --without-system-jfreereport
+ --without-system_apache_commons
+ --without-system-sane
+ --without-system-qrcodegen
+ $(use_enable base report-builder)
+ $(use_enable bluetooth sdremote-bluetooth)
+ $(use_enable coinmp)
+ $(use_enable cups)
+ $(use_enable dbus)
+ $(use_enable debug)
+ $(use_enable eds evolution2)
+ $(use_enable firebird firebird-sdbc)
+ $(use_enable gstreamer gstreamer-1-0)
+ $(use_enable gtk gtk3)
+ $(use_enable kde kf5)
+ $(use_enable kde qt5)
+ $(use_enable ldap)
+ $(use_enable odk)
+ $(use_enable pdfimport)
+ $(use_enable postgres postgresql-sdbc)
+ $(use_enable vulkan skia)
+ $(use_with accessibility lxml)
+ $(use_with coinmp system-coinmp)
+ $(use_with googledrive gdrive-client-id ${google_default_client_id})
+ $(use_with googledrive gdrive-client-secret ${google_default_client_secret})
+ $(use_with java)
+ $(use_with odk doxygen)
+ )
+
+ if use eds || use gtk; then
+ myeconfargs+=( --enable-dconf --enable-gio )
+ else
+ myeconfargs+=( --disable-dconf --disable-gio )
+ fi
+
+ # libreoffice extensions handling
+ for lo_xt in ${LO_EXTS}; do
+ if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
+ myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) )
+ else
+ myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) )
+ fi
+ done
+
+ if use java; then
+ # hsqldb: system one is too new
+ myeconfargs+=(
+ --without-junit
+ --without-system-hsqldb
+ --with-ant-home="${ANT_HOME}"
+ )
+ if has_version "dev-java/openjdk:11"; then
+ myeconfargs+=( -with-jdk-home="${EPREFIX}/usr/$(get_libdir)/openjdk-11" )
+ elif has_version "dev-java/openjdk-bin:11"; then
+ myeconfargs+=( --with-jdk-home="/opt/openjdk-bin-11" )
+ fi
+
+ use libreoffice_extensions_scripting-beanshell && \
+ myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) )
+
+ use libreoffice_extensions_scripting-javascript && \
+ myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar) )
+ fi
+
+ is-flagq "-flto*" && myeconfargs+=( --enable-lto )
+
+ MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # more and more LO stuff tries to use OpenGL, including tests during build
+ # bug 501508, bug 540624, bug 545974 and probably more
+ addpredict /dev/dri
+ addpredict /dev/ati
+ addpredict /dev/nvidiactl
+
+ local target
+ use test && target="build" || target="build-nocheck"
+
+ # this is not a proper make script
+ make ${target} || die
+}
+
+src_test() {
+ make unitcheck || die
+ make slowcheck || die
+}
+
+src_install() {
+ # This is not Makefile so no buildserver
+ emake DESTDIR="${D}" distro-pack-install -o build -o check
+
+ # bug 593514
+ if use gtk; then
+ dosym libreoffice/program/liblibreofficekitgtk.so \
+ /usr/$(get_libdir)/liblibreofficekitgtk.so
+ fi
+
+ # bash completion aliases
+ bashcomp_alias \
+ libreoffice \
+ unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
+
+ if use branding; then
+ insinto /usr/$(get_libdir)/${PN}/program
+ newins "${WORKDIR}/branding-sofficerc" sofficerc
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die
+ fi
+
+ # bug 703474
+ insinto /usr/include
+ doins -r include/LibreOfficeKit
+
+ local lodir=/usr/$(get_libdir)/libreoffice
+ # patching this would break tests
+ cat <<-EOF > "${T}"/uno.py
+import sys, os
+sys.path.append('${EPREFIX}${lodir}/program')
+os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc')
+EOF
+ sed -e "/^import sys/d" -e "/^import os/d" \
+ -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed"
+ cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die
+ cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die
+
+ # more system pyuno mess
+ sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \
+ -i "${D}"${lodir}/program/officehelper.py || die
+
+ python_optimize "${D}"${lodir}/program
+ # link python bridge in site-packages, bug 667802
+ local py pyc loprogdir=/usr/$(get_libdir)/libreoffice/program
+ for py in uno.py unohelper.py officehelper.py; do
+ dosym8 -r ${loprogdir}/${py} $(python_get_sitedir)/${py}
+ while IFS="" read -d $'\0' -r pyc; do
+ pyc=${pyc//*\/}
+ dosym8 -r ${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc}
+ done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0)
+ done
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}
diff --git a/app-office/libreoffice/metadata.xml b/app-office/libreoffice/metadata.xml
index 3afed22..4ac9743 100644
--- a/app-office/libreoffice/metadata.xml
+++ b/app-office/libreoffice/metadata.xml
@@ -12,10 +12,12 @@ computer. It will however make a snappier LibreOffice than the binary
version</longdescription>
<use>
<flag name="base">Enable full support for LibreOffice Base databases (involves additional bundled libs)</flag>
+ <flag name="clang">Use Clang compiler instead of GCC</flag>
<flag name="coinmp">Use sci-libs/coinor-mp as alternative solver</flag>
<flag name="googledrive">Enable support for remote files on Google Drive</flag>
<flag name="mariadb">Prefer mariadb connector over mysql connector</flag>
<flag name="odk">Build the Office Development Kit</flag>
<flag name="pdfimport">Enable PDF import via the Poppler library</flag>
+ <flag name="vulkan">Enable Vulkan usage via the skia library (clang recommended)</flag>
</use>
</pkgmetadata>
diff --git a/dev-java/icedtea/icedtea-3.18.0.ebuild b/dev-java/icedtea/icedtea-3.18.0.ebuild
index 2a6a298..7ed2f1f 100644
--- a/dev-java/icedtea/icedtea-3.18.0.ebuild
+++ b/dev-java/icedtea/icedtea-3.18.0.ebuild
@@ -69,8 +69,8 @@ LICENSE="Apache-1.1 Apache-2.0 GPL-1 GPL-2 GPL-2-with-linking-exception LGPL-2 M
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE="+alsa cacao +cups doc examples +gtk headless-awt
- jamvm +jbootstrap kerberos libressl pax_kernel +pch
- pulseaudio sctp selinux shenandoah smartcard +source +system-lcms test zero"
+ jamvm +jbootstrap kerberos pax_kernel +pch pulseaudio
+ sctp selinux shenandoah smartcard +source +system-lcms test zero"
RESTRICT="!test? ( test )"
REQUIRED_USE="gtk? ( !headless-awt )"
@@ -147,8 +147,7 @@ DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_
app-arch/zip
app-misc/ca-certificates
dev-lang/perl
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl:0 )
+ dev-libs/openssl:0
sys-apps/attr
sys-apps/lsb-release
x11-libs/libXt
diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest
deleted file mode 100644
index a958eb9..0000000
--- a/dev-lang/rust/Manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-DIST 0006-Remove-musl_root-and-CRT-fallback-from-musl-targets.patch 21313 BLAKE2B 0b73d172d01507cc30f29766c605dc2b771f4bd555c337e11a99ba78abd912d9dc4179f5ca07f5346e97dead7b39964832a2c33610ee1735315141bf6f0e0004 SHA512 001d0b99507cd6c25713f0a6ea6bc4b9fb762083b84085f4abb8c3544f1c2d153a1d2c35e03969d2d789f4b6b84d6dae92dd0b5d9d73fea5eb75aa266c31a05b
-DIST 0030-libc-linkage.patch 37284 BLAKE2B b1e9f36bea6c6bba46b65967e49d3f0e0084da3a02a3a253d425a6e1534e7362b91a04bb975f08d347a57e16f4fef4662cb8c0cbe0821e1cdb90ab442276ef77 SHA512 8818c4ef45ddc537ba6930f83d503beffad8d80e6f51d3d1742ac4c5943f12b91951182aa06fd90cdbf8cb52b43c4fa35ed8ec3176f7ab94261b655b27fcb789
-DIST rust-1.46.0-aarch64-gentoo-linux-musl.tar.xz 101117048 BLAKE2B ef9fafab60b24d5896f1d2c66718945946c0178c3434b1993add6056e3c88fab7d51923942d398bf2d0fbc0a1a9220dcef37ac289a421c3a1f6bcc6b7c755a46 SHA512 764f909849f91d3cbd071d96d6947b08b45f08b3bbd523fcea4310abc807957b0bb3b696e955182ab888c400b6c830442610d3bc510583afe0c910141514d438
-DIST rust-1.46.0-armv7a-unknown-linux-musleabihf.tar.xz 100547468 BLAKE2B 798183dee50e9e35ed2be6d21d89e49265a0764dde904409a5a52a6b0f9856b8ae566daf7651b2071c996930ca9079e39fe246cdce80eea7dc5bee5ce0b3802e SHA512 ad164673320c33a49abfd9e571291beb2394f35b03d913ab70d9da27d38427440efe87a17e0d15b4021c4355be812ab5fe5c02f9ab8f8d6d3d799a872a02ac0f
-DIST rust-1.46.0-i686-gentoo-linux-musl.tar.xz 113552128 BLAKE2B 994911aa66c8f4e6e36b3037febdf2fe1586f478a127604988858fb6bead13da2e46e6d4e2d91496ca399402db00c153fe0e77a788a7f13847ba0ebfd90dff86 SHA512 c00c7992914c4a02827e3011cad59e454f5778f2fc6224928fb1fdf5f39752474473a41273700350b54de6d940ba0964a77a341a435e8ea8f7b9750f64454dd0
-DIST rust-1.46.0-powerpc-gentoo-linux-musl.tar.xz 110418132 BLAKE2B a661d32c68f6b51ab4d023799b4d6b5246062fc34f09967b53354b765f41f3f8c354df616d9085fe1f8e29610feb676fe19570b01e2d8f34a6603fd254cbfb1b SHA512 45c76e6fd031e76d49c479d37bf5a3c691bc338f169b702645978a7eb21b912314e7e448004abc49c07068dec8d6a4933370258ded7653622190df15d34899db
-DIST rust-1.46.0-powerpc64-gentoo-linux-musl.tar.xz 94308552 BLAKE2B 1efc31c94e956180e4ad450e1d9f30996941b2754a163c57b35b1de9eda4abae80a3e90565c8170a3127fb7a95e91d08f6559c1e13e29b4cb14101dc457621ea SHA512 ed798d1d3c4353e469d3a94b25e057849ebd9bc03a8857478f6daa0b9b52dc4b026f07d637d60f9df67a12f06ee1f80c846c10871a16477a6b8ab94a93d2c3e8
-DIST rust-1.46.0-x86_64-gentoo-linux-musl.tar.xz 109962300 BLAKE2B d39f304b23e2d0c1c3729e9019608a283116db3199c8c1cc7610269c0b31de0fde782d7a3ea0f05a2be4676815556902b98627ddf57a18783f291a489ad1aa47 SHA512 2efbfbf33e1f5ef85e449eeac4a57cb6b4cc54eec33809ab211fdb84be3c03bcd5838d0ff5669c1991564e2a553c73aec0f2e7eca8912b59050f92a913eefd2c
-DIST rustc-1.47.0-src.tar.xz 104143736 BLAKE2B 0454094dde35275488046826da87655e51bf0795481d6d08fd70d644bfc12481bca8641166106ef32f20494906025244715b16ff21a1c023f4bd2818aab42521 SHA512 6ba83c0158f8130ddeae7e070417a2121d8a548c8fe97e28bce116d84048636c75aaee78e0c92cd43a50f5679a1223fc226cc8c5ba9bbd1465e84c5c6034d5c9
diff --git a/dev-lang/rust/files/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch b/dev-lang/rust/files/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch
deleted file mode 100644
index 40bf4dc..0000000
--- a/dev-lang/rust/files/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From ba948554d0241f52fdc762abf21c101445d1fdc4 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Wed, 10 Jan 2018 13:36:41 -0600
-Subject: [PATCH 01/15] Don't pass CFLAGS to the C++ compiler
-
----
- src/bootstrap/builder.rs | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 6446fa7550d..29fec3a5717 100644
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -1244,8 +1244,7 @@ impl<'a> Builder<'a> {
- if let Ok(cxx) = self.cxx(target) {
- let cxx = ccacheify(&cxx);
- cargo
-- .env(format!("CXX_{}", target.triple), &cxx)
-- .env(format!("CXXFLAGS_{}", target.triple), cflags);
-+ .env(format!("CXX_{}", target.triple), &cxx);
- }
- }
-
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0002-Fix-LLVM-build.patch b/dev-lang/rust/files/0002-Fix-LLVM-build.patch
deleted file mode 100644
index c04d445..0000000
--- a/dev-lang/rust/files/0002-Fix-LLVM-build.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From def3b8596d3d0bccff07f2524b96d2f490b9aa82 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Fri, 8 Sep 2017 00:04:29 -0500
-Subject: [PATCH 02/15] Fix LLVM build
-
----
- src/bootstrap/lib.rs | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs
-index a42ee11bd6f..77316c734b8 100644
---- a/src/bootstrap/lib.rs
-+++ b/src/bootstrap/lib.rs
-@@ -798,7 +798,7 @@ impl Build {
- .args()
- .iter()
- .map(|s| s.to_string_lossy().into_owned())
-- .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
-+ .filter(|s| !s.starts_with("-O") && !s.starts_with("/O") && !s.starts_with("-static"))
- .collect::<Vec<String>>();
-
- // If we're compiling on macOS then we add a few unconditional flags
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0003-Fix-linking-to-zlib-when-cross-compiling.patch b/dev-lang/rust/files/0003-Fix-linking-to-zlib-when-cross-compiling.patch
deleted file mode 100644
index 4c9f06c..0000000
--- a/dev-lang/rust/files/0003-Fix-linking-to-zlib-when-cross-compiling.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 466ffdcb0b132ce135242180e66097ba178122b9 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sun, 1 Nov 2020 20:13:23 -0600
-Subject: [PATCH 03/15] Fix linking to zlib when cross-compiling
-
----
- src/librustc_llvm/build.rs | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/librustc_llvm/build.rs b/src/librustc_llvm/build.rs
-index 25c0b40c495..485cd05ad63 100644
---- a/src/librustc_llvm/build.rs
-+++ b/src/librustc_llvm/build.rs
-@@ -192,14 +192,13 @@ fn main() {
- // of llvm-config, not the target that we're attempting to link.
- let mut cmd = Command::new(&llvm_config);
- cmd.arg(llvm_link_arg).arg("--libs");
-+ cmd.arg("--system-libs");
-+ cmd.args(&components);
-
-- if !is_crossed {
-- cmd.arg("--system-libs");
-- } else if target.contains("windows-gnu") {
-+ if target.contains("windows-gnu") {
- println!("cargo:rustc-link-lib=shell32");
- println!("cargo:rustc-link-lib=uuid");
- }
-- cmd.args(&components);
-
- for lib in output(&mut cmd).split_whitespace() {
- let name = if lib.starts_with("-l") {
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0004-Fix-rustdoc-when-cross-compiling-on-musl.patch b/dev-lang/rust/files/0004-Fix-rustdoc-when-cross-compiling-on-musl.patch
deleted file mode 100644
index c6a7d79..0000000
--- a/dev-lang/rust/files/0004-Fix-rustdoc-when-cross-compiling-on-musl.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From db1328ce566169bf174beb82648eb9b3f075adee Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 2 Dec 2017 17:25:44 -0600
-Subject: [PATCH 04/15] Fix rustdoc when cross-compiling on musl
-
-musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH.
----
- src/bootstrap/bin/rustdoc.rs | 7 ++-----
- 1 file changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs
-index ab846adf942..bb4cbb038f3 100644
---- a/src/bootstrap/bin/rustdoc.rs
-+++ b/src/bootstrap/bin/rustdoc.rs
-@@ -21,9 +21,6 @@ fn main() {
- Err(_) => 0,
- };
-
-- let mut dylib_path = bootstrap::util::dylib_path();
-- dylib_path.insert(0, PathBuf::from(libdir.clone()));
--
- //FIXME(misdreavus): once stdsimd uses cfg(doc) instead of cfg(dox), remove the `--cfg dox`
- //arguments here
- let mut cmd = Command::new(rustdoc);
-@@ -34,7 +31,7 @@ fn main() {
- .arg("dox")
- .arg("--sysroot")
- .arg(&sysroot)
-- .env(bootstrap::util::dylib_path_var(), env::join_paths(&dylib_path).unwrap());
-+ .env(bootstrap::util::dylib_path_var(), PathBuf::from(libdir.clone()));
-
- // Force all crates compiled by this compiler to (a) be unstable and (b)
- // allow the `rustc_private` feature to link to other unstable crates
-@@ -59,7 +56,7 @@ fn main() {
- eprintln!(
- "rustdoc command: {:?}={:?} {:?}",
- bootstrap::util::dylib_path_var(),
-- env::join_paths(&dylib_path).unwrap(),
-+ PathBuf::from(libdir.clone()),
- cmd,
- );
- eprintln!("sysroot: {:?}", sysroot);
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0005-Use-static-native-libraries-when-linking-static-exec.patch b/dev-lang/rust/files/0005-Use-static-native-libraries-when-linking-static-exec.patch
deleted file mode 100644
index 5d1836d..0000000
--- a/dev-lang/rust/files/0005-Use-static-native-libraries-when-linking-static-exec.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From f108b83c877724fd9f94f087fc529765c9bbdb14 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Fri, 8 Sep 2017 00:05:18 -0500
-Subject: [PATCH 05/15] Use static native libraries when linking static
- executables
-
-On ELF targets like Linux, gcc/ld will create a dynamically-linked
-executable without warning, even when passed `-static`, when asked to
-link to a `.so`. Avoid this confusing and unintended behavior by always
-using the static version of libraries when trying to link static
-executables.
----
- src/librustc_codegen_ssa/back/link.rs | 19 +++++++++++++++----
- 1 file changed, 15 insertions(+), 4 deletions(-)
-
-diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs
-index bfcf979d125..70bc9d5e980 100644
---- a/src/librustc_codegen_ssa/back/link.rs
-+++ b/src/librustc_codegen_ssa/back/link.rs
-@@ -2057,9 +2057,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(
- }
- }
-
--// Link in all of our upstream crates' native dependencies. Remember that
--// all of these upstream native dependencies are all non-static
--// dependencies. We've got two cases then:
-+// Link in all of our upstream crates' native dependencies. We have two cases:
- //
- // 1. The upstream crate is an rlib. In this case we *must* link in the
- // native dependency because the rlib is just an archive.
-@@ -2108,7 +2106,20 @@ fn add_upstream_native_libraries(
- continue;
- }
- match lib.kind {
-- NativeLibKind::Dylib | NativeLibKind::Unspecified => cmd.link_dylib(name),
-+ NativeLibKind::Unspecified => {
-+ // On some targets, like Linux, linking a static executable inhibits using
-+ // dylibs at all. Force native libraries to be static, even if for example
-+ // an upstream rlib was originally linked against a native shared library.
-+ if crate_type == config::CrateType::Executable
-+ && sess.crt_static(Some(crate_type))
-+ && !sess.target.target.options.crt_static_allows_dylibs
-+ {
-+ cmd.link_staticlib(name)
-+ } else {
-+ cmd.link_dylib(name)
-+ }
-+ },
-+ NativeLibKind::Dylib => cmd.link_dylib(name),
- NativeLibKind::Framework => cmd.link_framework(name),
- NativeLibKind::StaticNoBundle => {
- // Link "static-nobundle" native libs only if the crate they originate from
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0007-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/dev-lang/rust/files/0007-Prefer-libgcc_eh-over-libunwind-for-musl.patch
deleted file mode 100644
index 3472588..0000000
--- a/dev-lang/rust/files/0007-Prefer-libgcc_eh-over-libunwind-for-musl.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 5944a594d6cd422e3ed3a83857b8f84f6920456a Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 9 Sep 2017 00:14:16 -0500
-Subject: [PATCH 07/15] Prefer libgcc_eh over libunwind for musl
-
----
- library/unwind/build.rs | 1 -
- library/unwind/src/lib.rs | 2 +-
- 2 files changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/library/unwind/build.rs b/library/unwind/build.rs
-index ab09a6e324d..2f71e45f95a 100644
---- a/library/unwind/build.rs
-+++ b/library/unwind/build.rs
-@@ -14,7 +14,6 @@ fn main() {
- } else if target.contains("linux") {
- if target.contains("musl") {
- // linking for musl is handled in lib.rs
-- llvm_libunwind::compile();
- } else if !target.contains("android") {
- println!("cargo:rustc-link-lib=gcc_s");
- }
-diff --git a/library/unwind/src/lib.rs b/library/unwind/src/lib.rs
-index 20a2ca98405..401d2ad9a1c 100644
---- a/library/unwind/src/lib.rs
-+++ b/library/unwind/src/lib.rs
-@@ -38,7 +38,7 @@ cfg_if::cfg_if! {
- }
-
- #[cfg(target_env = "musl")]
--#[link(name = "unwind", kind = "static", cfg(target_feature = "crt-static"))]
-+#[link(name = "gcc_eh", kind = "static-nobundle", cfg(target_feature = "crt-static"))]
- #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))]
- extern "C" {}
-
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0008-Link-libssp_nonshared.a-on-all-musl-targets.patch b/dev-lang/rust/files/0008-Link-libssp_nonshared.a-on-all-musl-targets.patch
deleted file mode 100644
index 969d4c5..0000000
--- a/dev-lang/rust/files/0008-Link-libssp_nonshared.a-on-all-musl-targets.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From d3114d5d4fa3595b9f7158f24807620571951be8 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sun, 3 Nov 2019 17:01:32 -0600
-Subject: [PATCH 08/15] Link libssp_nonshared.a on all musl targets
-
----
- src/librustc_target/spec/linux_musl_base.rs | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/librustc_target/spec/linux_musl_base.rs b/src/librustc_target/spec/linux_musl_base.rs
-index c5f5f99a96d..a3f763147fa 100644
---- a/src/librustc_target/spec/linux_musl_base.rs
-+++ b/src/librustc_target/spec/linux_musl_base.rs
-@@ -1,8 +1,11 @@
--use crate::spec::TargetOptions;
-+use crate::spec::{LinkerFlavor, TargetOptions};
-
- pub fn opts() -> TargetOptions {
- let mut base = super::linux_base::opts();
-
-+ // libssp_nonshared.a is needed for __stack_chk_fail_local when using libc.so
-+ base.post_link_args.insert(LinkerFlavor::Gcc, vec!["-lssp_nonshared".to_string()]);
-+
- // These targets statically link libc by default
- base.crt_static_default = true;
- // These targets allow the user to choose between static and dynamic linking.
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0009-test-failed-doctest-output-Fix-normalization.patch b/dev-lang/rust/files/0009-test-failed-doctest-output-Fix-normalization.patch
deleted file mode 100644
index 8639b2b..0000000
--- a/dev-lang/rust/files/0009-test-failed-doctest-output-Fix-normalization.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7fd97298080acbe6f69e49a3d5df9eca423b5fe1 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Mon, 7 Oct 2019 18:36:28 -0500
-Subject: [PATCH 09/15] test/failed-doctest-output: Fix normalization
-
-Otherwise we get:
-
-1
-2 running 2 tests
-- test $DIR/failed-doctest-output.rs - OtherStruct (line 20) ... FAILED
-- test $DIR/failed-doctest-output.rs - SomeStruct (line 10) ... FAILED
-+ test src/rustc-1.38.0-src/$DIR/failed-doctest-output.rs - OtherStruct (line 20) ... FAILED
-+ test src/rustc-1.38.0-src/$DIR/failed-doctest-output.rs - SomeStruct (line 10) ... FAILED
-5
-6 failures:
-7
----
- src/test/rustdoc-ui/failed-doctest-output.rs | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/test/rustdoc-ui/failed-doctest-output.rs b/src/test/rustdoc-ui/failed-doctest-output.rs
-index fcbd7cabc69..7d19ace7487 100644
---- a/src/test/rustdoc-ui/failed-doctest-output.rs
-+++ b/src/test/rustdoc-ui/failed-doctest-output.rs
-@@ -4,7 +4,7 @@
-
- // compile-flags:--test
- // rustc-env:RUST_BACKTRACE=0
--// normalize-stdout-test: "src/test/rustdoc-ui" -> "$$DIR"
-+// normalize-stdout-test: "[[:graph:]]*src/test/rustdoc-ui" -> "$$DIR"
- // failure-status: 101
-
- // doctest fails at runtime
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/dev-lang/rust/files/0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
deleted file mode 100644
index 82772a1..0000000
--- a/dev-lang/rust/files/0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 415814d100e85eb031254af528246e44d3f04128 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Mon, 17 Sep 2018 01:32:20 +0000
-Subject: [PATCH 10/15] test/sysroot-crates-are-unstable: Fix test when rpath
- is disabled
-
-Without this environment var, the test can't run rustc to find
-the sysroot path.
----
- .../run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile
-index 1e267fb9576..30c33c5c13d 100644
---- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile
-+++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile
-@@ -1,2 +1,4 @@
-+-include ../tools.mk
-+
- all:
-- '$(PYTHON)' test.py
-+ env '$(HOST_RPATH_ENV)' '$(PYTHON)' test.py
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/dev-lang/rust/files/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch
deleted file mode 100644
index 6f5fa8b..0000000
--- a/dev-lang/rust/files/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 815936fbf7f721ddfc35e6048457dbc84132f87a Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sat, 6 Oct 2018 04:01:48 +0000
-Subject: [PATCH 11/15] test/use-extern-for-plugins: Don't assume multilib
-
----
- src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------
- 1 file changed, 1 insertion(+), 6 deletions(-)
-
-diff --git a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile
-index 838b1a2719b..94fa9f6d067 100644
---- a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile
-+++ b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile
-@@ -4,12 +4,7 @@
- # ignore-openbsd
- # ignore-sunos
-
--HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //')
--ifeq ($(findstring i686,$(HOST)),i686)
--TARGET := $(subst i686,x86_64,$(HOST))
--else
--TARGET := $(subst x86_64,i686,$(HOST))
--endif
-+TARGET := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //')
-
- all:
- $(RUSTC) foo.rs -C extra-filename=-host
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0012-Ignore-broken-and-non-applicable-tests.patch b/dev-lang/rust/files/0012-Ignore-broken-and-non-applicable-tests.patch
deleted file mode 100644
index 8569293..0000000
--- a/dev-lang/rust/files/0012-Ignore-broken-and-non-applicable-tests.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 8db9fc72afc7864cb7e5a8ff99f9e4dd04ea82ca Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Sun, 16 Sep 2018 16:38:48 +0000
-Subject: [PATCH 12/15] Ignore broken and non-applicable tests
-
-c-link-to-rust-va-list-fn: unstable feature, broken on aarch64, #56475
-env-funky-keys: can't handle LD_PRELOAD (e.g. sandbox)
-long-linker-command-lines: takes >10 minutes to run (but still passes)
-sparc-struct-abi: no sparc target
-sysroot-crates-are-unstable: can't run rustc without RPATH
----
- src/test/codegen/sparc-struct-abi.rs | 1 +
- src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile | 2 ++
- src/test/run-make-fulldeps/long-linker-command-lines/Makefile | 2 ++
- src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 2 ++
- src/test/ui/env-funky-keys.rs | 1 +
- 5 files changed, 8 insertions(+)
-
-diff --git a/src/test/codegen/sparc-struct-abi.rs b/src/test/codegen/sparc-struct-abi.rs
-index 78e5b14a212..6f93e93286b 100644
---- a/src/test/codegen/sparc-struct-abi.rs
-+++ b/src/test/codegen/sparc-struct-abi.rs
-@@ -4,6 +4,7 @@
-
- // only-sparc64
- // compile-flags: -O --target=sparc64-unknown-linux-gnu --crate-type=rlib
-+// ignore-test
- #![feature(no_core, lang_items)]
- #![no_core]
-
-diff --git a/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile b/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile
-index f124ca2ab61..363b18f0985 100644
---- a/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile
-+++ b/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile
-@@ -1,3 +1,5 @@
-+# ignore-aarch64
-+
- -include ../tools.mk
-
- all:
-diff --git a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile
-index 5876fbc94bc..5f167ece1a2 100644
---- a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile
-+++ b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile
-@@ -1,3 +1,5 @@
-+# ignore-test
-+
- -include ../tools.mk
-
- all:
-diff --git a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile
-index 30c33c5c13d..d733bb1c557 100644
---- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile
-+++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile
-@@ -1,3 +1,5 @@
-+# ignore-test
-+
- -include ../tools.mk
-
- all:
-diff --git a/src/test/ui/env-funky-keys.rs b/src/test/ui/env-funky-keys.rs
-index c5c824ac58d..f3fe047a79c 100644
---- a/src/test/ui/env-funky-keys.rs
-+++ b/src/test/ui/env-funky-keys.rs
-@@ -1,6 +1,7 @@
- // run-pass
- // Ignore this test on Android, because it segfaults there.
-
-+// ignore-test
- // ignore-android
- // ignore-windows
- // ignore-cloudabi no execve
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0013-Link-stage-2-tools-dynamically-to-libstd.patch b/dev-lang/rust/files/0013-Link-stage-2-tools-dynamically-to-libstd.patch
deleted file mode 100644
index bd16e6c..0000000
--- a/dev-lang/rust/files/0013-Link-stage-2-tools-dynamically-to-libstd.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From b9369ec42bc76e451dfb44e157e81166abcb3c10 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Mon, 24 Sep 2018 23:42:23 +0000
-Subject: [PATCH 13/15] Link stage 2 tools dynamically to libstd
-
----
- src/bootstrap/builder.rs | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 29fec3a5717..15c7729b4c2 100644
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -1357,7 +1357,7 @@ impl<'a> Builder<'a> {
- // When we build Rust dylibs they're all intended for intermediate
- // usage, so make sure we pass the -Cprefer-dynamic flag instead of
- // linking all deps statically into the dylib.
-- if let Mode::Std | Mode::Rustc | Mode::Codegen = mode {
-+ if let Mode::Std | Mode::Rustc | Mode::Codegen | Mode::ToolRustc | Mode::ToolStd = mode {
- rustflags.arg("-Cprefer-dynamic");
- }
-
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0014-Move-debugger-scripts-to-usr-share-rust.patch b/dev-lang/rust/files/0014-Move-debugger-scripts-to-usr-share-rust.patch
deleted file mode 100644
index ca1a1b4..0000000
--- a/dev-lang/rust/files/0014-Move-debugger-scripts-to-usr-share-rust.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 22b25a4088a3d09bb569b23dc282edb77df11ab4 Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Mon, 17 Sep 2018 02:09:10 +0000
-Subject: [PATCH 14/15] Move debugger scripts to /usr/share/rust
-
----
- src/bootstrap/dist.rs | 2 +-
- src/etc/rust-gdb | 2 +-
- src/etc/rust-gdbgui | 2 +-
- src/etc/rust-lldb | 4 ++--
- 4 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
-index d021feafbe4..f0f5cb8169a 100644
---- a/src/bootstrap/dist.rs
-+++ b/src/bootstrap/dist.rs
-@@ -614,7 +614,7 @@ impl Step for DebuggerScripts {
- fn run(self, builder: &Builder<'_>) {
- let host = self.host;
- let sysroot = self.sysroot;
-- let dst = sysroot.join("lib/rustlib/etc");
-+ let dst = sysroot.join("share/rust");
- t!(fs::create_dir_all(&dst));
- let cp_debugger_script = |file: &str| {
- builder.install(&builder.src.join("src/etc/").join(file), &dst, 0o644);
-diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb
-index b950cea79ed..559bfe3f1f9 100755
---- a/src/etc/rust-gdb
-+++ b/src/etc/rust-gdb
-@@ -12,7 +12,7 @@ fi
-
- # Find out where the pretty printer Python module is
- RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)"
--GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc"
-+GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust"
-
- # Run GDB with the additional arguments that load the pretty printers
- # Set the environment variable `RUST_GDB` to overwrite the call to a
-diff --git a/src/etc/rust-gdbgui b/src/etc/rust-gdbgui
-index 9744913b686..8722acdcc52 100755
---- a/src/etc/rust-gdbgui
-+++ b/src/etc/rust-gdbgui
-@@ -41,7 +41,7 @@ fi
-
- # Find out where the pretty printer Python module is
- RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)"
--GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc"
-+GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust"
-
- # Set the environment variable `RUST_GDB` to overwrite the call to a
- # different/specific command (defaults to `gdb`).
-diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb
-index bce72f1bad6..8abb0124527 100755
---- a/src/etc/rust-lldb
-+++ b/src/etc/rust-lldb
-@@ -30,8 +30,8 @@ EOF
- fi
- fi
-
--script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_lookup.py\""
--commands_file="$RUSTC_SYSROOT/lib/rustlib/etc/lldb_commands"
-+script_import="command script import \"$RUSTC_SYSROOT/share/rust/lldb_lookup.py\""
-+commands_file="$RUSTC_SYSROOT/share/rust/lldb_commands"
-
- # Call LLDB with the commands added to the argument list
- exec "$lldb" --one-line-before-file "$script_import" --source-before-file "$commands_file" "$@"
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0015-Add-gentoo-target-specs.patch b/dev-lang/rust/files/0015-Add-gentoo-target-specs.patch
deleted file mode 100644
index 61a19b9..0000000
--- a/dev-lang/rust/files/0015-Add-gentoo-target-specs.patch
+++ /dev/null
@@ -1,175 +0,0 @@
-From 037c877646effd72dbf82f3eb8e5ed41e9f5e89d Mon Sep 17 00:00:00 2001
-From: Samuel Holland <samuel@sholland.org>
-Date: Mon, 17 Sep 2018 02:29:06 +0000
-Subject: [PATCH 15/15] Add gentoo target specs
-
----
- src/librustc_target/spec/aarch64_gentoo_linux_musl.rs | 11 +++++++++++
- src/librustc_target/spec/arm_gentoo_linux_musleabi.rs | 11 +++++++++++
- .../spec/armv7a_gentoo_linux_musleabihf.rs | 11 +++++++++++
- src/librustc_target/spec/i686_gentoo_linux_musl.rs | 11 +++++++++++
- src/librustc_target/spec/mod.rs | 11 ++++++++++-
- .../spec/powerpc64_gentoo_linux_musl.rs | 11 +++++++++++
- src/librustc_target/spec/powerpc_gentoo_linux_musl.rs | 11 +++++++++++
- src/librustc_target/spec/x86_64_gentoo_linux_musl.rs | 11 +++++++++++
- 8 files changed, 87 insertions(+), 1 deletion(-)
- create mode 100644 src/librustc_target/spec/aarch64_gentoo_linux_musl.rs
- create mode 100644 src/librustc_target/spec/arm_gentoo_linux_musleabi.rs
- create mode 100644 src/librustc_target/spec/armv7a_gentoo_linux_musleabihf.rs
- create mode 100644 src/librustc_target/spec/i686_gentoo_linux_musl.rs
- create mode 100644 src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs
- create mode 100644 src/librustc_target/spec/powerpc_gentoo_linux_musl.rs
- create mode 100644 src/librustc_target/spec/x86_64_gentoo_linux_musl.rs
-
-diff --git a/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs b/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs
-new file mode 100644
-index 00000000000..420fe7cde70
---- /dev/null
-+++ b/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::aarch64_unknown_linux_musl::target()?;
-+
-+ base.llvm_target = "aarch64-gentoo-linux-musl".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
-diff --git a/src/librustc_target/spec/arm_gentoo_linux_musleabi.rs b/src/librustc_target/spec/arm_gentoo_linux_musleabi.rs
-new file mode 100644
-index 00000000000..d47ca841647
---- /dev/null
-+++ b/src/librustc_target/spec/arm_gentoo_linux_musleabi.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::arm_unknown_linux_musleabi::target()?;
-+
-+ base.llvm_target = "arm-gentoo-linux-musleabi".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
-diff --git a/src/librustc_target/spec/armv7a_gentoo_linux_musleabihf.rs b/src/librustc_target/spec/armv7a_gentoo_linux_musleabihf.rs
-new file mode 100644
-index 00000000000..f5c85855c18
---- /dev/null
-+++ b/src/librustc_target/spec/armv7a_gentoo_linux_musleabihf.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::armv7_unknown_linux_musleabihf::target()?;
-+
-+ base.llvm_target = "armv7a-gentoo-linux-musleabihf".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
-diff --git a/src/librustc_target/spec/i686_gentoo_linux_musl.rs b/src/librustc_target/spec/i686_gentoo_linux_musl.rs
-new file mode 100644
-index 00000000000..1cd39cd76af
---- /dev/null
-+++ b/src/librustc_target/spec/i686_gentoo_linux_musl.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::i686_unknown_linux_musl::target()?;
-+
-+ base.llvm_target = "i686-gentoo-linux-musl".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
-diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs
-index fa29ff3f8d8..a711417e7c1 100644
---- a/src/librustc_target/spec/mod.rs
-+++ b/src/librustc_target/spec/mod.rs
-@@ -489,7 +489,17 @@ macro_rules! supported_targets {
- };
- }
-
-+mod arm_unknown_linux_musleabi;
-+
- supported_targets! {
-+ ("aarch64-gentoo-linux-musl", aarch64_gentoo_linux_musl),
-+ ("arm-unknown-linux-musleabi", arm_gentoo_linux_musleabi),
-+ ("armv7a-unknown-linux-musleabihf", armv7a_gentoo_linux_musleabihf),
-+ ("i686-gentoo-linux-musl", i686_gentoo_linux_musl),
-+ ("powerpc-gentoo-linux-musl", powerpc_gentoo_linux_musl),
-+ ("powerpc64-gentoo-linux-musl", powerpc64_gentoo_linux_musl),
-+ ("x86_64-gentoo-linux-musl", x86_64_gentoo_linux_musl),
-+
- ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu),
- ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32),
- ("i686-unknown-linux-gnu", i686_unknown_linux_gnu),
-@@ -514,7 +524,6 @@ supported_targets! {
- ("sparc64-unknown-linux-gnu", sparc64_unknown_linux_gnu),
- ("arm-unknown-linux-gnueabi", arm_unknown_linux_gnueabi),
- ("arm-unknown-linux-gnueabihf", arm_unknown_linux_gnueabihf),
-- ("arm-unknown-linux-musleabi", arm_unknown_linux_musleabi),
- ("arm-unknown-linux-musleabihf", arm_unknown_linux_musleabihf),
- ("armv4t-unknown-linux-gnueabi", armv4t_unknown_linux_gnueabi),
- ("armv5te-unknown-linux-gnueabi", armv5te_unknown_linux_gnueabi),
-diff --git a/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs
-new file mode 100644
-index 00000000000..e840bb27bbf
---- /dev/null
-+++ b/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::powerpc64_unknown_linux_musl::target()?;
-+
-+ base.llvm_target = "powerpc64-gentoo-linux-musl".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
-diff --git a/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs
-new file mode 100644
-index 00000000000..a623ffed53a
---- /dev/null
-+++ b/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::powerpc_unknown_linux_musl::target()?;
-+
-+ base.llvm_target = "powerpc-gentoo-linux-musl".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
-diff --git a/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs b/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs
-new file mode 100644
-index 00000000000..f33047358b5
---- /dev/null
-+++ b/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs
-@@ -0,0 +1,11 @@
-+use crate::spec::TargetResult;
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::x86_64_unknown_linux_musl::target()?;
-+
-+ base.llvm_target = "x86_64-gentoo-linux-musl".to_string();
-+ base.target_vendor = "gentoo".to_string();
-+ base.options.crt_static_default = false;
-+
-+ Ok(base)
-+}
---
-2.26.2
-
diff --git a/dev-lang/rust/files/0040-rls-atomics.patch b/dev-lang/rust/files/0040-rls-atomics.patch
deleted file mode 100644
index d9aedb9..0000000
--- a/dev-lang/rust/files/0040-rls-atomics.patch
+++ /dev/null
@@ -1,58 +0,0 @@
---- rustc-1.35.0-src/src/tools/rls/rls/src/cmd.rs
-+++ rustc-1.35.0-src/src/tools/rls/rls/src/cmd.rs
-@@ -7,7 +7,7 @@ use crate::config::Config;
- use crate::server::{self, LsService, Notification, Request, RequestId};
- use rls_analysis::{AnalysisHost, Target};
- use rls_vfs::Vfs;
--use std::sync::atomic::{AtomicU64, Ordering};
-+use std::sync::atomic::{AtomicU32, Ordering};
-
- use lsp_types::{
- ClientCapabilities, CodeActionContext, CodeActionParams, CompletionItem,
-@@ -313,8 +313,8 @@ fn url(file_name: &str) -> Url {
- }
-
- fn next_id() -> RequestId {
-- static ID: AtomicU64 = AtomicU64::new(1);
-- RequestId::Num(ID.fetch_add(1, Ordering::SeqCst))
-+ static ID: AtomicU32 = AtomicU32::new(1);
-+ RequestId::Num(ID.fetch_add(1, Ordering::SeqCst).into())
- }
-
- // Custom reader and output for the RLS server.
---- rustc-1.35.0-src/src/tools/rls/rls/src/server/io.rs
-+++ rustc-1.35.0-src/src/tools/rls/rls/src/server/io.rs
-@@ -7,7 +7,7 @@ use crate::lsp_data::{LSPNotification, LSPRequest};
-
- use std::fmt;
- use std::io::{self, BufRead, Write};
--use std::sync::atomic::{AtomicU64, Ordering};
-+use std::sync::atomic::{AtomicU32, Ordering};
- use std::sync::Arc;
-
- use jsonrpc_core::{self as jsonrpc, response, version, Id};
-@@ -171,13 +171,13 @@ pub trait Output: Sync + Send + Clone + 'static {
- /// An output that sends notifications and responses on `stdout`.
- #[derive(Clone)]
- pub(super) struct StdioOutput {
-- next_id: Arc<AtomicU64>,
-+ next_id: Arc<AtomicU32>,
- }
-
- impl StdioOutput {
- /// Constructs a new `stdout` output.
- pub(crate) fn new() -> StdioOutput {
-- StdioOutput { next_id: Arc::new(AtomicU64::new(1)) }
-+ StdioOutput { next_id: Arc::new(AtomicU32::new(1).into()) }
- }
- }
-
-@@ -194,7 +194,7 @@ impl Output for StdioOutput {
- }
-
- fn provide_id(&self) -> RequestId {
-- RequestId::Num(self.next_id.fetch_add(1, Ordering::SeqCst))
-+ RequestId::Num(self.next_id.fetch_add(1, Ordering::SeqCst).into())
- }
- }
-
diff --git a/dev-lang/rust/files/0050-llvm.patch b/dev-lang/rust/files/0050-llvm.patch
deleted file mode 100644
index f1899f7..0000000
--- a/dev-lang/rust/files/0050-llvm.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- rustc-1.38.0-src/src/llvm-project/llvm/include/llvm/Analysis/TargetLibraryInfo.def
-+++ rustc-1.38.0-src/src/llvm-project/llvm/include/llvm/Analysis/TargetLibraryInfo.def
-@@ -27,6 +27,15 @@
- #define TLI_DEFINE_STRING_INTERNAL(string_repr) string_repr,
- #endif
-
-+// avoid name conflicts with musl-libc
-+#undef fopen64
-+#undef fseeko64
-+#undef ftello64
-+#undef fstat64
-+#undef lstat64
-+#undef stat64
-+#undef tmpfile64
-+
- /// void *new(unsigned int);
- TLI_DEFINE_ENUM_INTERNAL(msvc_new_int)
- TLI_DEFINE_STRING_INTERNAL("??2@YAPAXI@Z")
diff --git a/dev-lang/rust/files/0051-llvm-powerpc-elfv2.patch b/dev-lang/rust/files/0051-llvm-powerpc-elfv2.patch
deleted file mode 100644
index b5ee930..0000000
--- a/dev-lang/rust/files/0051-llvm-powerpc-elfv2.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- rustc-1.46.0-src/src/llvm-project/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
-+++ rustc-1.46.0-src/src/llvm-project/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
-@@ -215,6 +215,9 @@ static PPCTargetMachine::PPCABI computeTargetABI(const Triple &TT,
- case Triple::ppc64le:
- return PPCTargetMachine::PPC_ABI_ELFv2;
- case Triple::ppc64:
-+ // musl uses the ELFv2 ABI on both endians.
-+ if (TT.isMusl())
-+ return PPCTargetMachine::PPC_ABI_ELFv2;
- return PPCTargetMachine::PPC_ABI_ELFv1;
- default:
- return PPCTargetMachine::PPC_ABI_UNKNOWN;
diff --git a/dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch b/dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch
deleted file mode 100644
index 9064a52..0000000
--- a/dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 6b31232a9d32529e30765108f30365ac48587ce6 Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Thu, 8 Oct 2020 15:48:33 -0700
-Subject: [PATCH] don't create prefix at time of check
-
----
- src/bootstrap/install.rs | 8 ++------
- 1 file changed, 2 insertions(+), 6 deletions(-)
-
-diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs
-index d9ee3bc..c5da9ce 100644
---- a/src/bootstrap/install.rs
-+++ b/src/bootstrap/install.rs
-@@ -73,12 +73,8 @@ fn install_sh(
- let docdir_default = datadir_default.join("doc/rust");
- let libdir_default = PathBuf::from("lib");
- let mandir_default = datadir_default.join("man");
-- let prefix = builder.config.prefix.as_ref().map_or(prefix_default, |p| {
-- fs::create_dir_all(p)
-- .unwrap_or_else(|err| panic!("could not create {}: {}", p.display(), err));
-- fs::canonicalize(p)
-- .unwrap_or_else(|err| panic!("could not canonicalize {}: {}", p.display(), err))
-- });
-+
-+ let prefix = builder.config.prefix.as_ref().unwrap_or(&prefix_default);
- let sysconfdir = builder.config.sysconfdir.as_ref().unwrap_or(&sysconfdir_default);
- let datadir = builder.config.datadir.as_ref().unwrap_or(&datadir_default);
- let docdir = builder.config.docdir.as_ref().unwrap_or(&docdir_default);
---
-2.28.0
-
diff --git a/dev-lang/rust/files/1.47.0-libressl.patch b/dev-lang/rust/files/1.47.0-libressl.patch
deleted file mode 100644
index 07ad0eb..0000000
--- a/dev-lang/rust/files/1.47.0-libressl.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 0493f57a9878fd4d92fc419358173fd31b95bda8 Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Sun, 11 Oct 2020 22:09:39 -0700
-Subject: [PATCH] Support LibreSSL 3.2.x
-
-Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
----
- vendor/openssl-sys/.cargo-checksum.json | 2 +-
- vendor/openssl-sys/build/main.rs | 4 ++--
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/vendor/openssl-sys/.cargo-checksum.json b/vendor/openssl-sys/.cargo-checksum.json
-index 4c079f5..11beb6e 100644
---- a/vendor/openssl-sys/.cargo-checksum.json
-+++ b/vendor/openssl-sys/.cargo-checksum.json
-@@ -1 +1 @@
--{"files":{"CHANGELOG.md":"17531e8bd93e3bd9ada0d3b4e4d07508d316985a2cbe4df73186ba70d5971923","Cargo.toml":"b71de20a64dc4704f77b8cc8ea9f63e47f2d39f06696900077eefd93a17d16ec","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"949fb3913ec7f94229242978dfeee5e19261b6d7506fc91dcd153bb0d2a84895","build/cfgs.rs":"2b49fbdb045c40bd46bf7e7adfde8c45508e4b51af0080fb934eb1131863d75a","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0742487bd3faa681232e812c5c96f0e5b83b485ba236a4efda1cd8f5a260b5eb","build/find_vendored.rs":"7bf0e59c5646d72ee5a4392ad970fdf5c20288ddaf54dd86a8caff49583b38f5","build/main.rs":"0d8b960ab71be4e2a08e3ff7e9615a17f7dddcd601b7fdd885bb6f6c5a6fe5f5","src/aes.rs":"822bf666db351fe6ef9607c918081d6ad378fc1cedb05290bb746f86980c6088","src/asn1.rs":"254025cb408dbeff73bee6d06325acba9042cb11db30bdad04eedfb789be84b3","src/bio.rs":"1f38a3ec4029511fecd7a51548965a265f3e7772891b5514e22bfb1d061b3a90","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"f21a403fea95e7b7efe0539a429831cfa51c8818adb79c7ebf73ae2a6f2dc87e","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"a1279719ade9704be3d9af55ff679abbe918d525f332ca15810146d45e9080cf","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"81372dfe497db2fc90457a470a3b8ccb249828b3ce2bf4fd2da8ec42afd6a6b3","src/err.rs":"3edf1379b3277df32e047a52553d243d4a4001111a277cf4b12f7297f2fe2bf0","src/evp.rs":"ae748b7d7a0f74eb21c2750bf571c09f99bb835f23436c247493a66c28fb5c6b","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"846f03332238caace3dade00a6c15b5ed1773edd601cc72dca2f1339d58b2b7f","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"7203d356f7654c5805600b823eccf8e1d9d9cbce9a01859938612a3f0aae4cdc","src/object.rs":"3e45fb025ccbd6a556aae9738ef8a3b11cc2655ffa9d8422be21699b2e45d6c4","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"f00c3f88f7947f5d13698a2fc796c68eb1bd65b2686f661d29482021170db71f","src/pem.rs":"d3ae2748c53597c91aa1896f18844ccd9ce2dca1627662b8974330e5f1b3f36c","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"1a6b028a63654d2419417a9a8af790cd22409a4643682a0686ecdb9441264eba","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"bb9bcb4a3b96ce6919236f48dfc5e0ad66f1cef1dce7d989c778d6f28ee6403b","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"31ad553ece8fbb1fda6d8cf43ea0895863f961b6e1171ed05063134d3892f5cc","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"}
-\ No newline at end of file
-+{"files":{"CHANGELOG.md":"17531e8bd93e3bd9ada0d3b4e4d07508d316985a2cbe4df73186ba70d5971923","Cargo.toml":"b71de20a64dc4704f77b8cc8ea9f63e47f2d39f06696900077eefd93a17d16ec","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"949fb3913ec7f94229242978dfeee5e19261b6d7506fc91dcd153bb0d2a84895","build/cfgs.rs":"2b49fbdb045c40bd46bf7e7adfde8c45508e4b51af0080fb934eb1131863d75a","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0742487bd3faa681232e812c5c96f0e5b83b485ba236a4efda1cd8f5a260b5eb","build/find_vendored.rs":"7bf0e59c5646d72ee5a4392ad970fdf5c20288ddaf54dd86a8caff49583b38f5","build/main.rs":"16dadcb59a2e9f7b4c7f4d6731530533f52df6af9dcc1877bcdad52a5d403385","src/aes.rs":"822bf666db351fe6ef9607c918081d6ad378fc1cedb05290bb746f86980c6088","src/asn1.rs":"254025cb408dbeff73bee6d06325acba9042cb11db30bdad04eedfb789be84b3","src/bio.rs":"1f38a3ec4029511fecd7a51548965a265f3e7772891b5514e22bfb1d061b3a90","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"f21a403fea95e7b7efe0539a429831cfa51c8818adb79c7ebf73ae2a6f2dc87e","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"a1279719ade9704be3d9af55ff679abbe918d525f332ca15810146d45e9080cf","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"81372dfe497db2fc90457a470a3b8ccb249828b3ce2bf4fd2da8ec42afd6a6b3","src/err.rs":"3edf1379b3277df32e047a52553d243d4a4001111a277cf4b12f7297f2fe2bf0","src/evp.rs":"ae748b7d7a0f74eb21c2750bf571c09f99bb835f23436c247493a66c28fb5c6b","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"846f03332238caace3dade00a6c15b5ed1773edd601cc72dca2f1339d58b2b7f","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"7203d356f7654c5805600b823eccf8e1d9d9cbce9a01859938612a3f0aae4cdc","src/object.rs":"3e45fb025ccbd6a556aae9738ef8a3b11cc2655ffa9d8422be21699b2e45d6c4","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"f00c3f88f7947f5d13698a2fc796c68eb1bd65b2686f661d29482021170db71f","src/pem.rs":"d3ae2748c53597c91aa1896f18844ccd9ce2dca1627662b8974330e5f1b3f36c","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"1a6b028a63654d2419417a9a8af790cd22409a4643682a0686ecdb9441264eba","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"bb9bcb4a3b96ce6919236f48dfc5e0ad66f1cef1dce7d989c778d6f28ee6403b","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"31ad553ece8fbb1fda6d8cf43ea0895863f961b6e1171ed05063134d3892f5cc","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"}
-diff --git a/vendor/openssl-sys/build/main.rs b/vendor/openssl-sys/build/main.rs
-index 49f26d2..2de8ea5 100644
---- a/vendor/openssl-sys/build/main.rs
-+++ b/vendor/openssl-sys/build/main.rs
-@@ -220,7 +220,7 @@ See rust-openssl README for more information:
- (3, 0, _) => ('3', '0', 'x'),
- (3, 1, 0) => ('3', '1', '0'),
- (3, 1, _) => ('3', '1', 'x'),
-- (3, 2, 0) => ('3', '2', '0'),
-+ (3, 2, _) => ('3', '2', 'x'),
- _ => version_error(),
- };
-
-@@ -261,7 +261,7 @@ fn version_error() -> ! {
- "
-
- This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5
--through 3.2.0, but a different version of OpenSSL was found. The build is now aborting
-+through 3.2.x, but a different version of OpenSSL was found. The build is now aborting
- due to this version mismatch.
-
- "
---
-2.28.0
-
diff --git a/dev-lang/rust/metadata.xml b/dev-lang/rust/metadata.xml
deleted file mode 100644
index 98798d4..0000000
--- a/dev-lang/rust/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>rust@gentoo.org</email>
- <name>Rust Project</name>
- </maintainer>
- <use>
- <flag name="clippy">Install clippy, Rust code linter</flag>
- <flag name="miri">Install miri, an interpreter for Rust's mid-level intermediate representation (requires USE=nightly)</flag>
- <flag name="nightly">Enable nightly (UNSTABLE) features</flag>
- <flag name="parallel-compiler">Build a multi-threaded rustc</flag>
- <flag name="rls">Install rls, Rust Language Server (used with IDEs supporting RLS protocol)</flag>
- <flag name="rustfmt">Install rustfmt, Rust code formatter</flag>
- <flag name="system-bootstrap">Bootstrap using installed rust compiler</flag>
- <flag name="system-llvm">Use the system LLVM install</flag>
- <flag name="wasm">Build support for the wasm32-unknown-unknown target</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-lang/rust/rust-1.47.0-r1.ebuild b/dev-lang/rust/rust-1.47.0-r1.ebuild
deleted file mode 100644
index 760db0d..0000000
--- a/dev-lang/rust/rust-1.47.0-r1.ebuild
+++ /dev/null
@@ -1,533 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
-
-ABI_VER="$(ver_cut 1-2)"
-SLOT="stable/${ABI_VER}"
-MY_P="rustc-${PV}"
-SRC="${MY_P}-src.tar.xz"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
-RUST_TOOLCHAIN_BASEURL="https://portage.smaeul.xyz/distfiles/"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-
-SRC_URI="
- https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz
- !system-bootstrap? (
- amd64? ( $(rust_arch_uri x86_64-gentoo-linux-musl rust-${RUST_STAGE0_VERSION} ) )
- arm? ( $(rust_arch_uri armv7a-unknown-linux-musleabihf rust-${RUST_STAGE0_VERSION} ) )
- arm64? ( $(rust_arch_uri aarch64-gentoo-linux-musl rust-${RUST_STAGE0_VERSION} ) )
- ppc? ( $(rust_arch_uri powerpc-gentoo-linux-musl rust-${RUST_STAGE0_VERSION} ) )
- ppc64? ( $(rust_arch_uri powerpc64-gentoo-linux-musl rust-${RUST_STAGE0_VERSION} ) )
- x86? ( $(rust_arch_uri i686-gentoo-linux-musl rust-${RUST_STAGE0_VERSION} ) )
- )
- https://dev.gentoo.org/~anarchy/dist/0006-Remove-musl_root-and-CRT-fallback-from-musl-targets.patch
- https://dev.gentoo.org/~anarchy/dist/0030-libc-linkage.patch
-"
-
-# keep in sync with llvm ebuild of the same version as bundled one.
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430
- NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-IUSE="clippy cpu_flags_arm_neon cpu_flags_arm_thumb2 cpu_flags_x86_sse2 debug doc libressl miri nightly parallel-compiler rls rustfmt +system-bootstrap system-llvm test wasm ${ALL_LLVM_TARGETS[*]}"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling more than one slot
-# simultaneously.
-
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 12.
-# 3. Specify LLVM_MAX_SLOT, e.g. 11.
-LLVM_DEPEND="
- || (
- sys-devel/llvm:11[${LLVM_TARGET_USEDEPS// /,}]
- )
- <sys-devel/llvm-12:=
-"
-LLVM_MAX_SLOT=11
-
-BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )"
-
-BDEPEND="
- ${PYTHON_DEPS}
- app-eselect/eselect-rust
- || (
- >=sys-devel/gcc-4.7
- >=sys-devel/clang-3.5
- )
- system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
- !system-llvm? (
- dev-util/cmake
- dev-util/ninja
- )
-"
-
-# libgit2 should be at least same as bundled into libgit-sys #707746
-DEPEND="
- >=dev-libs/libgit2-0.99:=
- net-libs/libssh2:=
- net-libs/http-parser:=
- net-misc/curl:=[http2,ssl]
- elibc_musl? ( >=sys-libs/musl-1.2.1-r2 )
- sys-libs/zlib:=
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- system-llvm? (
- ${LLVM_DEPEND}
- wasm? ( sys-devel/lld )
- )
-"
-
-RDEPEND="${DEPEND}
- app-eselect/eselect-rust
-"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
- miri? ( nightly )
- parallel-compiler? ( nightly )
- test? ( ${ALL_LLVM_TARGETS[*]} )
- wasm? ( llvm_targets_WebAssembly )
- x86? ( cpu_flags_x86_sse2 )
-"
-
-# we don't use cmake.eclass, but can get a warnings
-CMAKE_WARN_UNUSED_CLI=no
-
-QA_FLAGS_IGNORED="
- usr/lib/${PN}/${PV}/bin/.*
- usr/lib/${PN}/${PV}/lib/lib.*.so
- usr/lib/${PN}/${PV}/lib/rustlib/.*/bin/.*
- usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/lib.*.so
-"
-
-QA_SONAME="
- usr/lib/${PN}/${PV}/lib/lib.*.so.*
- usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/lib.*.so
-"
-
-# causes double bootstrap
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}"/1.46.0-don-t-create-prefix-at-time-of-check.patch
- "${FILESDIR}"/1.47.0-libressl.patch
- "${FILESDIR}"/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch
- "${FILESDIR}"/0002-Fix-LLVM-build.patch
- "${FILESDIR}"/0003-Fix-linking-to-zlib-when-cross-compiling.patch
- "${FILESDIR}"/0004-Fix-rustdoc-when-cross-compiling-on-musl.patch
- "${FILESDIR}"/0005-Use-static-native-libraries-when-linking-static-exec.patch
- "${DISTDIR}"/0006-Remove-musl_root-and-CRT-fallback-from-musl-targets.patch
- "${FILESDIR}"/0007-Prefer-libgcc_eh-over-libunwind-for-musl.patch
- "${FILESDIR}"/0008-Link-libssp_nonshared.a-on-all-musl-targets.patch
- "${FILESDIR}"/0009-test-failed-doctest-output-Fix-normalization.patch
- "${FILESDIR}"/0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
- "${FILESDIR}"/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch
- "${FILESDIR}"/0012-Ignore-broken-and-non-applicable-tests.patch
- "${FILESDIR}"/0013-Link-stage-2-tools-dynamically-to-libstd.patch
- "${FILESDIR}"/0014-Move-debugger-scripts-to-usr-share-rust.patch
- "${FILESDIR}"/0015-Add-gentoo-target-specs.patch
- "${DISTDIR}"/0030-libc-linkage.patch
- "${FILESDIR}"/0040-rls-atomics.patch
- "${FILESDIR}"/0050-llvm.patch
- "${FILESDIR}"/0051-llvm-powerpc-elfv2.patch
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-toml_usex() {
- usex "$1" true false
-}
-
-pre_build_checks() {
- local M=6144
- M=$(( $(usex clippy 128 0) + ${M} ))
- M=$(( $(usex miri 128 0) + ${M} ))
- M=$(( $(usex rls 512 0) + ${M} ))
- M=$(( $(usex rustfmt 256 0) + ${M} ))
- M=$(( $(usex system-llvm 0 2048) + ${M} ))
- M=$(( $(usex wasm 256 0) + ${M} ))
- M=$(( $(usex debug 15 10) * ${M} / 10 ))
- eshopts_push -s extglob
- if is-flagq '-g?(gdb)?([1-9])'; then
- M=$(( 15 * ${M} / 10 ))
- fi
- eshopts_pop
- M=$(( $(usex system-bootstrap 0 1024) + ${M} ))
- M=$(( $(usex doc 256 0) + ${M} ))
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
- python-any-r1_pkg_setup
-
- # required to link agains system libs, otherwise
- # crates use bundled sources and compile own static version
- export LIBGIT2_SYS_USE_PKG_CONFIG=1
- export LIBSSH2_SYS_USE_PKG_CONFIG=1
- export PKG_CONFIG_ALLOW_CROSS=1
-
- if use system-llvm; then
- llvm_pkg_setup
-
- local llvm_config="$(get_llvm_prefix "$LLVM_MAX_SLOT")/bin/llvm-config"
-
- export LLVM_LINK_SHARED=1
- export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)"
- fi
-}
-
-src_prepare() {
- if ! use system-bootstrap; then
- local rust_stage0_root="${WORKDIR}"/rust-stage0
- local rust_stage0="rust-${RUST_STAGE0_VERSION}-${CHOST}"
-
- "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \
- --components=rust-std-${CHOST},rustc,cargo \
- --destdir="${rust_stage0_root}" --prefix=/ || die
- fi
-
- default
-}
-
-src_configure() {
- local arch_cflags rust_target="" rust_targets="\"$CHOST\"" tools="\"cargo\""
-
- # Collect rust target names to compile standard libs for all ABIs.
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}) | sed s/gnu/musl/)
- rust_targets="${rust_targets},\"${rust_target}\""
-
- if [ "$rust_target" = "armv7-unknown-linux-musleabihf" ] &&
- use cpu_flags_arm_neon && use cpu_flags_arm_thumb2; then
- rust_targets="${rust_targets},\"thumbv7neon-unknown-linux-musleabihf\""
- fi
- done
- if use wasm; then
- rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
- if use system-llvm; then
- # un-hardcode rust-lld linker for this target
- # https://bugs.gentoo.org/715348
- sed -i '/linker:/ s/rust-lld/wasm-ld/' src/librustc_target/spec/wasm32_base.rs || die
- fi
- fi
-
- if use clippy; then
- tools="\"clippy\",$tools"
- fi
- if use miri; then
- tools="\"miri\",$tools"
- fi
- if use rls; then
- tools="\"rls\",\"analysis\",\"src\",$tools"
- fi
- if use rustfmt; then
- tools="\"rustfmt\",$tools"
- fi
-
- local rust_stage0_root
- if use system-bootstrap; then
- rust_stage0_root="$(rustc --print sysroot)"
- else
- rust_stage0_root="${WORKDIR}"/rust-stage0
- fi
-
- rust_target="${CHOST}"
-
- cat <<- _EOF_ > "${S}"/config.toml
- [llvm]
- optimize = $(toml_usex !debug)
- release-debuginfo = $(toml_usex debug)
- assertions = $(toml_usex debug)
- ninja = true
- targets = "${LLVM_TARGETS// /;}"
- experimental-targets = ""
- link-shared = $(toml_usex system-llvm)
- [build]
- build = "${rust_target}"
- host = ["${rust_target}"]
- target = [${rust_targets}]
- cargo = "${rust_stage0_root}/bin/cargo"
- rustc = "${rust_stage0_root}/bin/rustc"
- docs = $(toml_usex doc)
- compiler-docs = $(toml_usex doc)
- submodules = false
- python = "${EPYTHON}"
- locked-deps = true
- vendor = true
- extended = true
- tools = [${tools}]
- verbose = 2
- sanitizers = false
- profiler = false
- cargo-native-static = false
- [install]
- prefix = "${EPREFIX}/usr/lib/${PN}/${PV}"
- sysconfdir = "etc"
- docdir = "share/doc/rust"
- bindir = "bin"
- libdir = "lib"
- mandir = "share/man"
- [rust]
- # https://github.com/rust-lang/rust/issues/54872
- codegen-units-std = 1
- optimize = true
- debug = $(toml_usex debug)
- debug-assertions = $(toml_usex debug)
- debuginfo-level-rustc = 0
- backtrace = true
- incremental = false
- default-linker = "$(tc-getCC)"
- parallel-compiler = $(toml_usex parallel-compiler)
- channel = "$(usex nightly nightly stable)"
- rpath = false
- verbose-tests = true
- optimize-tests = $(toml_usex !debug)
- codegen-tests = true
- dist-src = false
- remap-debuginfo = true
- lld = $(usex system-llvm false $(toml_usex wasm))
- backtrace-on-ice = true
- jemalloc = false
- [dist]
- src-tarball = false
- [target.${rust_target}]
- cc = "$(tc-getCC)"
- cxx = "$(tc-getCXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- crt-static = false
- _EOF_
- if use system-llvm; then
- cat <<- EOF >> "${S}"/config.toml
- llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
- EOF
- fi
-
- for v in $(multilib_get_enabled_abi_pairs); do
- rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}) | sed s/gnu/musl/)
- arch_cflags="$(get_abi_CFLAGS ${v##*.})"
-
- export "CFLAGS_${rust_target//-/_}"="$CFLAGS ${arch_cflags}"
-
- cat <<- _EOF_ >> "${S}"/config.toml
- [target.${rust_target}]
- cc = "$(tc-getCC)"
- cxx = "$(tc-getCXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- crt-static = false
- _EOF_
-
- if [ "$rust_target" = "armv7-unknown-linux-musleabihf" ] &&
- use cpu_flags_arm_neon && use cpu_flags_arm_thumb2; then
- rust_target=thumbv7neon-unknown-linux-musleabihf
-
- export "CFLAGS_${rust_target//-/_}"="$CFLAGS ${arch_cflags}"
-
- cat <<- _EOF_ >> "${S}"/config.toml
- [target.${rust_target}]
- cc = "$(tc-getCC)"
- cxx = "$(tc-getCXX)"
- linker = "$(tc-getCC)"
- ar = "$(tc-getAR)"
- crt-static = false
- _EOF_
- fi
- done
-
- if use wasm; then
- cat <<- _EOF_ >> "${S}"/config.toml
- [target.wasm32-unknown-unknown]
- linker = "$(usex system-llvm lld rust-lld)"
- _EOF_
- fi
-
- einfo "Rust configured with the following settings:"
- cat "${S}"/config.toml || die
-}
-
-src_compile() {
- RUST_BACKTRACE=1 \
- "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
-}
-
-src_test() {
- # https://rustc-dev-guide.rust-lang.org/tests/intro.html
-
- # those are basic and codegen tests.
- local tests=(
- codegen
- codegen-units
- compile-fail
- incremental
- mir-opt
- pretty
- run-make
- )
-
- # fails if llvm is not built with ALL targets.
- # and known to fail with system llvm sometimes.
- use system-llvm || tests+=( assembly )
-
- # fragile/expensive/less important tests
- # or tests that require extra builds
- # TODO: instead of skipping, just make some nonfatal.
- if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then
- tests+=(
- rustdoc
- rustdoc-js
- rustdoc-js-std
- rustdoc-ui
- run-make-fulldeps
- ui
- ui-fulldeps
- )
- fi
-
- local i failed=()
- einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}"
- for i in "${tests[@]}"; do
- local t="src/test/${i}"
- einfo "rust_src_test: running ${t}"
- if ! RUST_BACKTRACE=1 \
- "${EPYTHON}" ./x.py test -vv --config="${S}"/config.toml \
- -j$(makeopts_jobs) --no-doc --no-fail-fast "${t}"
- then
- failed+=( "${t}" )
- eerror "rust_src_test: ${t} failed"
- fi
- done
-
- if [[ ${#failed[@]} -ne 0 ]]; then
- eerror "rust_src_test: failure summary: ${failed[@]}"
- die "aborting due to test failures"
- fi
-}
-
-src_install() {
- DESTDIR="${D}" \
- "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml || die
-
- # bug #689562, #689160
- rm -v "${D}/usr/lib/${PN}/${PV}/etc/bash_completion.d/cargo" || die
- rmdir -v "${D}/usr/lib/${PN}/${PV}"/etc{/bash_completion.d,} || die
- dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo
-
- # Move public shared libs to abi specific libdir
- mv "${ED}/usr/lib/${PN}/${PV}/lib"/*.so "${ED}/usr/lib/${PN}/${PV}/lib/rustlib/${CHOST}/lib" || die
-
- rm "${ED}/usr/lib/${PN}/${PV}/lib/rustlib/components" || die
- rm "${ED}/usr/lib/${PN}/${PV}/lib/rustlib/install.log" || die
- rm "${ED}/usr/lib/${PN}/${PV}/lib/rustlib"/manifest-* || die
- rm "${ED}/usr/lib/${PN}/${PV}/lib/rustlib/rust-installer-version" || die
- rm "${ED}/usr/lib/${PN}/${PV}/lib/rustlib/uninstall.sh" || die
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use miri && symlinks+=( miri cargo-miri )
- use rls && symlinks+=( rls )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return version-appended binary path.
- # so /usr/bin/rustc should point to /usr/lib/rust/<ver>/bin/rustc-<ver>
- # need to fix eselect-rust to remove this hack.
- local ver_i="${i}-${PV}"
- mv -v "${ED}/usr/lib/${PN}/${PV}/bin/${i}" "${ED}/usr/lib/${PN}/${PV}/bin/${ver_i}" || die
- ln -v "${ED}/usr/lib/${PN}/${PV}/bin/${ver_i}" "${ED}/usr/lib/${PN}/${PV}/bin/${i}" || die
- dosym "../lib/${PN}/${PV}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "${PV}/lib" "/usr/lib/${PN}/lib-${PV}"
- dosym "${PV}/share/man" "/usr/lib/${PN}/man-${PV}"
- dosym "${PN}/${PV}/lib/rustlib" "/usr/lib/rustlib-${PV}"
- dosym "../../lib/${PN}/${PV}/share/doc" "/usr/share/doc/${P}"
-
- newenvd - "50${P}" <<-_EOF_
- LDPATH="${EPREFIX}/usr/lib/${PN}/${PV}/lib/rustlib/${CHOST}/lib"
- MANPATH="${EPREFIX}/usr/lib/rust/man"
- _EOF_
-
- rm -rf "${ED}/usr/lib/${PN}/${PV}"/*.old || die
- rm -rf "${ED}/usr/lib/${PN}/${PV}/doc"/*.old || die
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use miri; then
- echo /usr/bin/miri >> "${T}/provider-${P}"
- echo /usr/bin/cargo-miri >> "${T}/provider-${P}"
- fi
- if use rls; then
- echo /usr/bin/rls >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
-}
-
-pkg_postinst() {
- eselect rust update --if-unset
-
- elog "Rust installs a helper script for calling GDB and LLDB,"
- elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest
index 36782df..0583fc1 100644
--- a/media-libs/mesa/Manifest
+++ b/media-libs/mesa/Manifest
@@ -1,2 +1 @@
-DIST mesa-20.1.10.tar.xz 12918420 BLAKE2B 408f4bc6eb0dc11199cd161d6914b77cb57313bca94f26794cbfd05332922c45dc216a64e33df9fad64cd41e1ad8b2de6c2e5f99cad234870f7a5b970a62dcbd SHA512 0d4016abfcc733c853d7b6c3c997ddc554a44088c0a4d9a7edb51ab5ad7d9e1234728b61ffcb9c82a6c5fee1429091a1c31cbeabcb1b50411337b99ee550d28a
-DIST mesa-20.3.5.tar.xz 14367412 BLAKE2B 7bad876ce702158e727a752eda6722e7165b497fd3a485dae4e989f22b13288a93f51bcd5e6a69b979f0bbe41599fa237c08f3bbb81cb9c6dc4c06827f8ad5f4 SHA512 481e710ed80d8f215a8d541cfe51b960862c2403c2b9e7e6932c8236b8decb5d478871d6c73559d6d795ada143803764f3a93b2329588c80f62e2e5ec98c78a9
+DIST mesa-21.0.3.tar.xz 14710004 BLAKE2B f2165da4487824931d8ff90e4f13624546a297b0d3577d69b7cfd6078a965282b4a732cb720cbb08ea83a3a987603cfe67876fb18022fa444b011fcc9b7df352 SHA512 4a8aee48a8ea7f32e8aa3bbbd91db26c6053b9a43e62ff88256929e6bc147884f0fef988726b5a3d59d7008663f017c746a0352fd3fcc1c476b8190af4a2531f
diff --git a/media-libs/mesa/files/mesa-20.1.7-add-disable-tls-support.patch b/media-libs/mesa/files/mesa-20.1.7-add-disable-tls-support.patch
deleted file mode 100644
index b64b429..0000000
--- a/media-libs/mesa/files/mesa-20.1.7-add-disable-tls-support.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 6be4bac8f5a7c8c0ae0f95582e9905f485095988 Mon Sep 17 00:00:00 2001
-From: Jory Pratt <anarchy@gentoo.org>
-Date: Wed, 6 Nov 2019 13:26:34 -0600
-Subject: [PATCH] Add option to control elf-tls
-
-Signed-off-by: Jory Pratt <anarchy@gentoo.org>
----
- meson.build | 2 +-
- meson_options.txt | 6 ++++++
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 4eda551..87fe071 100644
---- a/meson.build
-+++ b/meson.build
-@@ -427,7 +427,7 @@ else
- endif
-
- # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS.
--if not ['windows', 'freebsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29)
-+if get_option('elf-tls')
- pre_args += '-DUSE_ELF_TLS'
- endif
-
-diff --git a/meson_options.txt b/meson_options.txt
-index 626baf3..d30a238 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -293,6 +293,12 @@ option(
- value : false,
- description : 'Build an SELinux-aware Mesa'
- )
-+option(
-+ 'elf-tls',
-+ type : 'boolean',
-+ value : true,
-+ description : 'Enable thread-local storage in GLX and EGL'
-+)
- option(
- 'osmesa',
- type : 'combo',
---
-2.24.0
-
-
diff --git a/media-libs/mesa/files/mesa-20.2.0-add-disable-tls-support.patch b/media-libs/mesa/files/mesa-20.2.0-add-disable-tls-support.patch
deleted file mode 100644
index bc4f5e9..0000000
--- a/media-libs/mesa/files/mesa-20.2.0-add-disable-tls-support.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 97365c36582ad77db40e957931f29f958074edec Mon Sep 17 00:00:00 2001
-From: Jory Pratt <anarchy@gentoo.org>
-Date: Tue, 1 Sep 2020 18:04:56 -0500
-Subject: [PATCH] Allow to disable glx_tls for musl users
-
-Signed-off-by: Jory Pratt <anarchy@gentoo.org>
----
- meson.build | 2 +-
- meson_options.txt | 6 ++++++
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 4f9c589..2c388e7 100644
---- a/meson.build
-+++ b/meson.build
-@@ -424,7 +424,7 @@ endif
-
- # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS.
- use_elf_tls = false
--if not ['windows', 'freebsd', 'openbsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29)
-+if get_option('elf-tls')
- pre_args += '-DUSE_ELF_TLS'
- use_elf_tls = true
- endif
-diff --git a/meson_options.txt b/meson_options.txt
-index 2d39d13..a3d1de5 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -313,6 +313,12 @@ option(
- value : false,
- description : 'Build an SELinux-aware Mesa'
- )
-+option(
-+ 'elf-tls',
-+ type : 'boolean',
-+ value : true,
-+ description : 'Enable thread-local storage in GLX and EGL'
-+)
- option(
- 'osmesa',
- type : 'combo',
---
-2.28.0
-
diff --git a/media-libs/mesa/files/mesa-20.3.4-missing-git_sha1.patch b/media-libs/mesa/files/mesa-20.3.4-missing-git_sha1.patch
deleted file mode 100644
index c994a7a..0000000
--- a/media-libs/mesa/files/mesa-20.3.4-missing-git_sha1.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 434da21a7c81acbe03f0e1621e80904313c0b05c Mon Sep 17 00:00:00 2001
-From: Michael Forney <mforney@mforney.org>
-Date: Wed, 16 Dec 2020 00:48:25 -0800
-Subject: [PATCH] meson: add missing dependency on generated git_sha1.h
-
-Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
-Reviewed-by: Eric Anholt <eric@anholt.net>
-Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8121>
----
- src/freedreno/common/meson.build | 1 +
- src/gallium/frontends/lavapipe/meson.build | 2 +-
- src/intel/common/meson.build | 4 ++--
- 3 files changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/src/freedreno/common/meson.build b/src/freedreno/common/meson.build
-index 2da6c1eacf8..30ef23043a7 100644
---- a/src/freedreno/common/meson.build
-+++ b/src/freedreno/common/meson.build
-@@ -27,6 +27,7 @@ libfreedreno_common = static_library(
- 'freedreno_uuid.c',
- 'freedreno_uuid.h',
- 'freedreno_guardband.h',
-+ sha1_h,
- ],
- include_directories : [inc_freedreno, inc_include, inc_src, inc_gallium],
- c_args : [no_override_init_args],
-diff --git a/src/gallium/frontends/lavapipe/meson.build b/src/gallium/frontends/lavapipe/meson.build
-index 972735fcff9..94c68d14d23 100644
---- a/src/gallium/frontends/lavapipe/meson.build
-+++ b/src/gallium/frontends/lavapipe/meson.build
-@@ -57,7 +57,7 @@ endif
-
- liblavapipe_st = static_library(
- 'lavapipe_st',
-- [liblvp_files, lvp_entrypoints, lvp_extensions_c ],
-+ [liblvp_files, lvp_entrypoints, lvp_extensions_c, sha1_h],
- link_with : [ libvulkan_wsi ],
- c_args : [ lvp_flags ],
- gnu_symbol_visibility : 'hidden',
-diff --git a/src/intel/common/meson.build b/src/intel/common/meson.build
-index 2586b4cf956..53c458f447d 100644
---- a/src/intel/common/meson.build
-+++ b/src/intel/common/meson.build
-@@ -42,8 +42,8 @@ files_libintel_common = files(
- )
-
- libintel_common = static_library(
-- ['intel_common', genX_xml_h],
-- files_libintel_common,
-+ 'intel_common',
-+ [files_libintel_common, genX_xml_h, sha1_h],
- include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_intel],
- c_args : [no_override_init_args],
- gnu_symbol_visibility : 'hidden',
---
-GitLab
-
diff --git a/media-libs/mesa/files/mesa-21.0.3-add-disable-tls-support.patch b/media-libs/mesa/files/mesa-21.0.3-add-disable-tls-support.patch
new file mode 100644
index 0000000..e6f9e18
--- /dev/null
+++ b/media-libs/mesa/files/mesa-21.0.3-add-disable-tls-support.patch
@@ -0,0 +1,41 @@
+From 7af845bca9eafb67b32c2f5e2de7bc2a56772aa4 Mon Sep 17 00:00:00 2001
+From:
+Date: Fri, 28 May 2021 11:48:26 -0500
+Subject: [PATCH] Allow to disable glx_tls for musl users
+
+---
+ meson.build | 3 ++-
+ meson_options.txt | 6 ++++++
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 26cfd01..38d4802 100644
+--- a/meson.build
++++ b/meson.build
+@@ -448,7 +448,8 @@ endif
+
+ # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS.
+ use_elf_tls = false
+-if not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29)
++with_use_elf_tls = get_option('use-elf-tls')
++if with_use_elf_tls and not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29)
+ pre_args += '-DUSE_ELF_TLS'
+ use_elf_tls = true
+ endif
+diff --git a/meson_options.txt b/meson_options.txt
+index fc73f6e..edd3886 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -464,3 +464,9 @@ option(
+ value : true,
+ description : 'use msse2 flag for mingw x86. Default: true',
+ )
++option(
++ 'use-elf-tls',
++ type : 'boolean',
++ value : false,
++ description : 'Build support for initial-exec TLS model'
++)
+--
+2.31.1
+
diff --git a/media-libs/mesa/mesa-20.1.10.ebuild b/media-libs/mesa/mesa-20.1.10.ebuild
deleted file mode 100644
index a0615fe..0000000
--- a/media-libs/mesa/mesa-20.1.10.ebuild
+++ /dev/null
@@ -1,552 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit llvm meson multilib-minimal python-any-r1 linux-info
-
-OPENGL_DIR="xorg-x11"
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="
- !test? ( test )
-"
-
-RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} freedreno i915 i965 intel iris lima nouveau panfrost vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- +classic d3d9 debug +dri3 +egl +gallium +gbm gles1 +gles2 +llvm
- lm-sensors opencl osmesa selinux test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa xvmc +zstd"
-
-REQUIRED_USE="
- d3d9? ( dri3 || ( video_cards_iris video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) )
- gles1? ( egl )
- gles2? ( egl )
- vulkan? ( dri3
- video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- wayland? ( egl gbm )
- video_cards_freedreno? ( gallium )
- video_cards_intel? ( classic )
- video_cards_i915? ( || ( classic gallium ) )
- video_cards_i965? ( classic )
- video_cards_iris? ( gallium )
- video_cards_lima? ( gallium )
- video_cards_nouveau? ( || ( classic gallium ) )
- video_cards_panfrost? ( gallium )
- video_cards_radeon? ( || ( classic gallium )
- gallium? ( x86? ( llvm ) amd64? ( llvm ) ) )
- video_cards_r100? ( classic )
- video_cards_r200? ( classic )
- video_cards_r300? ( gallium x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r600? ( gallium )
- video_cards_radeonsi? ( gallium llvm )
- video_cards_vc4? ( gallium )
- video_cards_virgl? ( gallium )
- video_cards_vivante? ( gallium gbm )
- video_cards_vmware? ( gallium )
- xa? ( X )
- xvmc? ( X )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.100"
-RDEPEND="
- !app-eselect/eselect-mesa
- >=dev-libs/expat-2.1.0-r3:=[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- gallium? (
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3[${MULTILIB_USEDEP}]
- dev-libs/libclc
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- vaapi? (
- >=x11-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- xvmc? ( >=x11-libs/libXvMC-1.0.8:=[${MULTILIB_USEDEP}] )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? (
- >=dev-libs/wayland-1.15.0:=[${MULTILIB_USEDEP}]
- >=dev-libs/wayland-protocols-1.8
- )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- video_cards_intel? (
- !video_cards_i965? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
- )
- video_cards_i915? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
- vulkan-overlay? ( dev-util/glslang:0=[${MULTILIB_USEDEP}] )
- X? (
- >=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXdamage-1.1.4-r1:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes:=[${MULTILIB_USEDEP}]
- )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_MAX_SLOT="10"
-LLVM_DEPSTR="
- || (
- sys-devel/llvm:10[${MULTILIB_USEDEP}]
- sys-devel/llvm:9[${MULTILIB_USEDEP}]
- )
- <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${MULTILIB_USEDEP}]
-"
-LLVM_DEPSTR_AMDGPU=${LLVM_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-CLANG_DEPSTR=${LLVM_DEPSTR//llvm/clang}
-CLANG_DEPSTR_AMDGPU=${CLANG_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-RDEPEND="${RDEPEND}
- gallium? (
- llvm? (
- opencl? (
- video_cards_r600? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${CLANG_DEPSTR}
- )
- )
- )
- )
- !opencl? (
- video_cards_r600? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${LLVM_DEPSTR}
- )
- )
- )
- )
- )
- )
-"
-unset {LLVM,CLANG}_DEPSTR{,_AMDGPU}
-
-DEPEND="${RDEPEND}
- valgrind? ( dev-util/valgrind )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- opencl? (
- >=sys-devel/gcc-4.6
- )
- sys-devel/bison
- sys-devel/flex
- sys-devel/gettext
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib*/libglapi.so.0.0.0
- usr/lib*/libGLESv1_CM.so.1.1.0
- usr/lib*/libGLESv2.so.2.0.0
- usr/lib*/libGL.so.1.2.0
- usr/lib*/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-20.1.7-add-disable-tls-support.patch
-)
-
-llvm_check_deps() {
- local flags=${MULTILIB_USEDEP}
- if use video_cards_r600 || use video_cards_radeon || use video_cards_radeonsi
- then
- flags+=",llvm_targets_AMDGPU(-)"
- fi
-
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${flags}]" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${flags}]"
-}
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_i965 &&
- ! use video_cards_iris &&
- ! use video_cards_radeonsi; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain i965, iris, or radeonsi"
- fi
- fi
-
- if use opencl; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi; then
- ewarn "Ignoring USE=opencl since VIDEO_CARDS does not contain r600 or radeonsi"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if use xvmc; then
- if ! use video_cards_r600 &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=xvmc since VIDEO_CARDS does not contain r600 or nouveau"
- fi
- fi
-
- if ! use gallium; then
- use lm-sensors && ewarn "Ignoring USE=lm-sensors since USE does not contain gallium"
- use llvm && ewarn "Ignoring USE=llvm since USE does not contain gallium"
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain gallium"
- use vaapi && ewarn "Ignoring USE=vaapi since USE does not contain gallium"
- use vdpau && ewarn "Ignoring USE=vdpau since USE does not contain gallium"
- use unwind && ewarn "Ignoring USE=unwind since USE does not contain gallium"
- use xa && ewarn "Ignoring USE=xa since USE does not contain gallium"
- use xvmc && ewarn "Ignoring USE=xvmc since USE does not contain gallium"
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-}
-
-python_check_deps() {
- has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_i965 ||
- use video_cards_iris ||
- use video_cards_radeonsi; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- linux-info_pkg_setup
- fi
-
- if use gallium && use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- if use classic; then
- # Intel code
- dri_driver_enable video_cards_i915 i915
- dri_driver_enable video_cards_i965 i965
- if ! use video_cards_i915 && \
- ! use video_cards_i965; then
- dri_driver_enable video_cards_intel i915 i965
- fi
-
- # Nouveau code
- dri_driver_enable video_cards_nouveau nouveau
-
- # ATI code
- dri_driver_enable video_cards_r100 r100
- dri_driver_enable video_cards_r200 r200
- if ! use video_cards_r100 && \
- ! use video_cards_r200; then
- dri_driver_enable video_cards_radeon r100 r200
- fi
- fi
-
- emesonargs+=( -Dplatforms=$(use X && echo "x11,")$(use wayland && echo "wayland,")$(use gbm && echo "drm,")surfaceless )
-
- if use gallium; then
- emesonargs+=(
- $(meson_use llvm)
- $(meson_use lm-sensors lmsensors)
- $(meson_use unwind libunwind)
- )
-
- if use video_cards_iris ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_use vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=false)
- fi
-
- if use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_use vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=false)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=false)
- fi
-
- if use video_cards_r600 ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_use xvmc gallium-xvmc))
- else
- emesonargs+=(-Dgallium-xvmc=false)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable video_cards_nouveau nouveau
-
- # Only one i915 driver (classic vs gallium). Default to classic.
- if ! use classic; then
- gallium_enable video_cards_i915 i915
- if ! use video_cards_i915 && \
- ! use video_cards_i965; then
- gallium_enable video_cards_intel i915
- fi
- fi
-
- gallium_enable video_cards_iris iris
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_virgl virgl
-
- # opencl stuff
- emesonargs+=(
- -Dgallium-opencl="$(usex opencl icd disabled)"
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_i965 intel
- vulkan_enable video_cards_iris intel
- vulkan_enable video_cards_radeonsi amd
- fi
-
- # Disable glx tls support on musl
- if use elibc_musl; then
- emesonargs+=( -Delf-tls=false )
- fi
-
- if use gallium; then
- gallium_enable -- swrast
- emesonargs+=( -Dosmesa=$(usex osmesa gallium none) )
- else
- dri_driver_enable -- swrast
- emesonargs+=( -Dosmesa=$(usex osmesa classic none) )
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dglvnd=true
- -Dshared-glapi=true
- $(meson_use dri3)
- $(meson_use egl)
- $(meson_use gbm)
- $(meson_use gles1)
- $(meson_use gles2)
- $(meson_use selinux)
- $(meson_use zstd)
- -Dvalgrind=$(usex valgrind auto false)
- -Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- $(meson_use vulkan vulkan-device-select-layer)
- $(meson_use vulkan-overlay vulkan-overlay-layer)
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_compile() {
- meson_src_compile
-}
-
-multilib_src_install() {
- meson_src_install
-}
-
-multilib_src_install_all() {
- einstalldocs
-}
-
-multilib_src_test() {
- meson test -v -C "${BUILD_DIR}" -t 100 || die "tests failed"
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- DRI_DRIVERS+=("$@")
- fi
-}
-
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-20.3.5.ebuild b/media-libs/mesa/mesa-21.0.3.ebuild
index 469b19e..fdca704 100644
--- a/media-libs/mesa/mesa-20.3.5.ebuild
+++ b/media-libs/mesa/mesa-21.0.3.ebuild
@@ -43,6 +43,7 @@ REQUIRED_USE="
d3d9? ( dri3 || ( video_cards_iris video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) )
gles1? ( egl )
gles2? ( egl )
+ osmesa? ( gallium )
vulkan? ( dri3
video_cards_radeonsi? ( llvm ) )
vulkan-overlay? ( vulkan )
@@ -104,7 +105,7 @@ RDEPEND="
)
selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
wayland? (
- >=dev-libs/wayland-1.15.0:=[${MULTILIB_USEDEP}]
+ >=dev-libs/wayland-1.18.0:=[${MULTILIB_USEDEP}]
>=dev-libs/wayland-protocols-1.8
)
${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
@@ -116,7 +117,6 @@ RDEPEND="
X? (
>=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
>=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXdamage-1.1.4-r1:=[${MULTILIB_USEDEP}]
>=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
>=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
>=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
@@ -225,6 +225,7 @@ BDEPEND="
sys-devel/flex
virtual/pkgconfig
$(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
+ wayland? ( dev-util/wayland-scanner[${MULTILIB_USEDEP}] )
"
S="${WORKDIR}/${MY_P}"
@@ -241,8 +242,7 @@ x86? (
)"
PATCHES=(
- "${FILESDIR}"/${PN}-20.2.0-add-disable-tls-support.patch
- "${FILESDIR}"/${PN}-20.3.4-missing-git_sha1.patch
+ "${FILESDIR}"/${PN}-21.0.3-add-disable-tls-support.patch
)
llvm_check_deps() {
@@ -321,6 +321,10 @@ pkg_pretend() {
if ! use llvm; then
use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
fi
+
+ if use osmesa && ! use llvm; then
+ ewarn "OSMesa will be slow without enabling USE=llvm"
+ fi
}
python_check_deps() {
@@ -455,6 +459,7 @@ multilib_src_configure() {
gallium_enable -- kmsro
fi
+ gallium_enable -- swrast
gallium_enable video_cards_lima lima
gallium_enable video_cards_panfrost panfrost
gallium_enable video_cards_v3d v3d
@@ -499,14 +504,6 @@ multilib_src_configure() {
vulkan_enable video_cards_v3d broadcom
fi
- if use gallium; then
- gallium_enable -- swrast
- emesonargs+=( -Dosmesa=$(usex osmesa gallium none) )
- else
- dri_driver_enable -- swrast
- emesonargs+=( -Dosmesa=$(usex osmesa classic none) )
- fi
-
driver_list() {
local drivers="$(sort -u <<< "${1// /$'\n'}")"
echo "${drivers//$'\n'/,}"
@@ -521,6 +518,7 @@ multilib_src_configure() {
$(meson_feature gbm)
$(meson_feature gles1)
$(meson_feature gles2)
+ $(meson_use osmesa)
$(meson_use selinux)
$(meson_feature zstd)
-Dvalgrind=$(usex valgrind auto false)
diff --git a/media-tv/kodi/Manifest b/media-tv/kodi/Manifest
index cdf4761..f63a724 100644
--- a/media-tv/kodi/Manifest
+++ b/media-tv/kodi/Manifest
@@ -1,6 +1,4 @@
-DIST ffmpeg-kodi-4.3.1-Matrix-Beta1.tar.gz 13477440 BLAKE2B 49415f76fd2a888b0efadb19597bd89db65c3d9e1224ab529ff0d73ab5734a23982b4d4905ddeb105ce59a816c4642cdb9f5568b0c39c29f5fb9431f9623d4ec SHA512 ce43390e816dabeed4ca231f5f7adade6c721c38e17996a57810fb6025ea49b812133c2a6e29aac7c674d4e4af3a21dbd7e605d85fb966935a01bda983b884ac
DIST ffmpeg-kodi-4.3.2-Matrix-19.1.tar.gz 13490949 BLAKE2B 90007f2c4bac0e0a52b419d9333cf75b00e291f1ea7447cbdc579ee2f860de7c436c924253600f3fbd6e3faaabe97aaf46db083a5bbd2f5f03badcca5d643e89 SHA512 d3719253d674b16638b873545583b82fba3176803c81ba8bcb37e90456dd956f1c2ee8996493840cff2d61c6399f06ed0524a759f46e4ce174bce23e9c6eda4a
-DIST kodi-19.0.tar.gz 52311355 BLAKE2B 543936b8fb607d1d629a8f2abd9cd0cb3bf6114aa93647c7e8ccee2f99ff1f84a2740bb57f0cbf675b3efa5914e98c57effb28ecd8e9df83a39d67ee708280a2 SHA512 d6c9fe7414b64d33d919d6c3de1ddb4800e36b786a460d2d2f5c1e5346cd4819487e54f212c37778103d44dd051f7df6c74e0a98a0b21d1e4dc9bedaa8570422
DIST kodi-19.1.tar.gz 52323919 BLAKE2B 6aa82632d2d70e5f84340c572b586e903e7dbc50c4f99fc5118761d495bd13dcbbcd70462e6288147dd4a305952d1e07f08daf45bbc402b59e3ef785391e1fe7 SHA512 725cbc270259ef5d3b79f9bc271b789dc8ef6616a6d4038e0cd449755ca4ed25198ad6e854b304aedc1fb911ecb98a0aad1b3e469857f8aed54fc4634193eb75
DIST libdvdcss-1.4.2-Leia-Beta-5.tar.gz 101068 BLAKE2B 283aa2cec0a2200d3569bc280cb9659e9224a6b3a77db8a35b269cd8caf1337ac9d8b92b806df66f63ef7458a46bd6261f0b8b14678b10e26644a79dcbeea5da SHA512 5185dbdbeb1bd13ea9d8723f1f4ab599d6f3102f5ba1096cd085aa1cda252c045f327c719227bba8e1b742352ade5e335106c8d0c1637a5a6b93ce661620dd7e
DIST libdvdnav-6.0.0-Leia-Alpha-3.tar.gz 137942 BLAKE2B 7573434a0ae8e8ccabf48173f81fcde29074eb138e119a2ae9156cde3c3d8bfd716f5d0e605b97f2dcac21f570781137c8533c5ae306b51e3905822fda318355 SHA512 11c93eaacd156f8fd7dec7c43d366438b201f31ad55b2870463a9e286912b6ada08882319a021fb7992190f87b909a49f2b83e0321cc17aedc29f7fe5898fa72
diff --git a/media-tv/kodi/kodi-19.0.ebuild b/media-tv/kodi/kodi-19.0.ebuild
deleted file mode 100644
index 44952aa..0000000
--- a/media-tv/kodi/kodi-19.0.ebuild
+++ /dev/null
@@ -1,363 +0,0 @@
- # Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_REQ_USE="sqlite,ssl"
-LIBDVDCSS_VERSION="1.4.2-Leia-Beta-5"
-LIBDVDREAD_VERSION="6.0.0-Leia-Alpha-3"
-LIBDVDNAV_VERSION="6.0.0-Leia-Alpha-3"
-FFMPEG_VERSION="4.3.1"
-CODENAME="Matrix"
-FFMPEG_KODI_VERSION="Beta1"
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-SRC_URI="https://github.com/xbmc/libdvdcss/archive/${LIBDVDCSS_VERSION}.tar.gz -> libdvdcss-${LIBDVDCSS_VERSION}.tar.gz
- https://github.com/xbmc/libdvdread/archive/${LIBDVDREAD_VERSION}.tar.gz -> libdvdread-${LIBDVDREAD_VERSION}.tar.gz
- https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_VERSION}.tar.gz -> libdvdnav-${LIBDVDNAV_VERSION}.tar.gz
- !system-ffmpeg? ( https://github.com/xbmc/FFmpeg/archive/${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz -> ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz )"
-if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/xbmc/xbmc.git"
- EGIT_BRANCH="Matrix"
- inherit git-r3
-else
- MY_PV=${PV/_p/_r}
- MY_PV=${MY_PV/_alpha/a}
- MY_PV=${MY_PV/_beta/b}
- MY_PV=${MY_PV/_rc/RC}
- MY_P="${PN}-${MY_PV}"
- SRC_URI+=" https://github.com/xbmc/xbmc/archive/${MY_PV}-${CODENAME}.tar.gz -> ${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm arm64 ~x86"
- S=${WORKDIR}/xbmc-${MY_PV}-${CODENAME}
-fi
-
-inherit autotools cmake desktop linux-info pax-utils python-single-r1 xdg
-
-DESCRIPTION="A free and open source media-player and entertainment hub"
-HOMEPAGE="https://kodi.tv/ https://kodi.wiki/"
-
-LICENSE="GPL-2+"
-SLOT="0"
-# use flag is called libusb so that it doesn't fool people in thinking that
-# it is _required_ for USB support. Otherwise they'll disable udev and
-# that's going to be worse.
-IUSE="airplay alsa bluetooth bluray caps cec +css dav1d dbus eventclients gbm gles lcms libusb lirc mariadb mysql nfs +optical power-control pulseaudio raspberry-pi samba +system-ffmpeg test udf udev udisks upnp upower vaapi vdpau wayland webserver +X +xslt zeroconf"
-IUSE="${IUSE} cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_arm_neon"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}
- || ( gbm wayland X )
- ?? ( mariadb mysql )
- bluray? ( udf )
- udev? ( !libusb )
- udisks? ( dbus )
- upower? ( dbus )
- power-control? ( dbus )
- vdpau? (
- X
- !gles
- !gbm
- )
- zeroconf? ( dbus )
-"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- >=dev-libs/lzo-2.04
- >=dev-libs/flatbuffers-1.11.0
- >=media-libs/libjpeg-turbo-2.0.4:=
- >=media-libs/libpng-1.6.26:0=
-"
-COMMON_TARGET_DEPEND="${PYTHON_DEPS}
- airplay? (
- >=app-pda/libplist-2.0.0
- net-libs/shairplay
- )
- alsa? ( >=media-libs/alsa-lib-1.1.4.1 )
- bluetooth? ( net-wireless/bluez )
- bluray? ( >=media-libs/libbluray-1.1.2 )
- caps? ( sys-libs/libcap )
- dbus? ( sys-apps/dbus )
- dev-db/sqlite
- dev-libs/crossguid
- >=dev-libs/fribidi-1.0.5
- cec? ( >=dev-libs/libcec-4.0[raspberry-pi?] )
- dev-libs/libpcre[cxx]
- >=dev-libs/spdlog-1.5.0:=
- dev-libs/tinyxml[stl]
- $(python_gen_cond_dep '
- dev-python/pillow[${PYTHON_MULTI_USEDEP}]
- dev-python/pycryptodome[${PYTHON_MULTI_USEDEP}]
- ')
- >=dev-libs/libcdio-2.1.0[cxx]
- >=dev-libs/libfmt-6.1.2
- dev-libs/libfstrcmp
- gbm? (
- >=dev-libs/libinput-1.10.5
- media-libs/mesa[gbm]
- x11-libs/libxkbcommon
- )
- gles? (
- !raspberry-pi? ( media-libs/mesa[gles2] )
- )
- lcms? ( media-libs/lcms:2 )
- libusb? ( virtual/libusb:1 )
- virtual/ttf-fonts
- media-fonts/roboto
- >=media-libs/freetype-2.10.1
- >=media-libs/libass-0.13.4
- !raspberry-pi? ( media-libs/mesa[egl] )
- >=media-libs/taglib-1.11.1
- system-ffmpeg? (
- >=media-video/ffmpeg-${FFMPEG_VERSION}:=[dav1d?,encode,postproc]
- media-video/ffmpeg[openssl]
- )
- !system-ffmpeg? (
- app-arch/bzip2
- dav1d? ( media-libs/dav1d )
- )
- mysql? ( dev-db/mysql-connector-c:= )
- mariadb? ( dev-db/mariadb-connector-c:= )
- >=net-misc/curl-7.68.0[http2]
- nfs? ( >=net-fs/libnfs-2.0.0:= )
- !gles? ( media-libs/glu )
- >=dev-libs/openssl-1.0.2l:0=
- raspberry-pi? (
- || ( media-libs/raspberrypi-userland media-libs/raspberrypi-userland-bin media-libs/mesa[egl,gles2,video_cards_vc4] )
- )
- pulseaudio? ( media-sound/pulseaudio )
- samba? ( >=net-fs/samba-3.4.6[smbclient(+)] )
- >=sys-libs/zlib-1.2.11
- udf? ( >=dev-libs/libudfread-1.0.0 )
- udev? ( virtual/udev )
- vaapi? (
- x11-libs/libva:=
- !gles? ( x11-libs/libva[opengl] )
- system-ffmpeg? ( media-video/ffmpeg[vaapi] )
- vdpau? ( x11-libs/libva[vdpau] )
- wayland? ( x11-libs/libva[wayland] )
- X? ( x11-libs/libva[X] )
- )
- virtual/libiconv
- vdpau? (
- || ( >=x11-libs/libvdpau-1.1 >=x11-drivers/nvidia-drivers-180.51 )
- system-ffmpeg? ( media-video/ffmpeg[vdpau] )
- )
- wayland? (
- >=dev-cpp/waylandpp-0.2.3:=
- media-libs/mesa[wayland]
- >=dev-libs/wayland-protocols-1.7
- >=x11-libs/libxkbcommon-0.4.1
- )
- webserver? ( >=net-libs/libmicrohttpd-0.9.55[messages(+)] )
- X? (
- media-libs/mesa[X]
- !gles? ( media-libs/libglvnd[X] )
- x11-libs/libX11
- x11-libs/libXrandr
- x11-libs/libXrender
- system-ffmpeg? ( media-video/ffmpeg[X] )
- )
- x11-libs/libdrm
- xslt? (
- dev-libs/libxslt
- >=dev-libs/libxml2-2.9.4
- )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-RDEPEND="${COMMON_DEPEND} ${COMMON_TARGET_DEPEND}
- lirc? ( app-misc/lirc )
- power-control? ( || ( sys-apps/systemd sys-auth/elogind ) )
- udisks? ( sys-fs/udisks:2 )
- upower? ( sys-power/upower )
-"
-DEPEND="${COMMON_DEPEND} ${COMMON_TARGET_DEPEND}
- dev-libs/rapidjson
- test? ( >=dev-cpp/gtest-1.10.0 )
-"
-BDEPEND="${COMMON_DEPEND}
- dev-lang/swig
- dev-util/cmake
- media-libs/giflib
- >=dev-libs/flatbuffers-1.11.0
- >=media-libs/libjpeg-turbo-2.0.4:=
- >=media-libs/libpng-1.6.26:0=
- virtual/pkgconfig
- virtual/jre
-"
-
-CONFIG_CHECK="~IP_MULTICAST"
-ERROR_IP_MULTICAST="
-In some cases Kodi needs to access multicast addresses.
-Please consider enabling IP_MULTICAST under Networking options.
-"
-
-PATCHES=(
- "${FILESDIR}/musl/19.0/0001-add-missing-stdint.h.patch"
- "${FILESDIR}/musl/19.0/0002-fix-fileemu.patch"
- "${FILESDIR}/musl/19.0/0003-Use-stdint.h-defined-types-uint8_t-uint16_t-uint32_t.patch"
- "${FILESDIR}/musl/19.0/0004-Fix-ldt-for-musl.patch"
- "${FILESDIR}/musl/19.0/0005-Fix-fortify-sources.patch"
-)
-
-pkg_setup() {
- check_extra_config
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- if [[ ${PV} == *9999 ]] ; then
- git-r3_src_unpack
- else
- default
- fi
-}
-
-src_prepare() {
- cmake_src_prepare
-
- # avoid long delays when powerkit isn't running #348580
- sed -i \
- -e '/dbus_connection_send_with_reply_and_block/s:-1:3000:' \
- xbmc/platform/linux/*.cpp || die
-
- # Prepare tools and libs witch are configured with autotools during compile time
- AUTOTOOLS_DIRS=(
- "${S}"/tools/depends/native/TexturePacker/src
- "${S}"/tools/depends/native/JsonSchemaBuilder/src
- )
-
- local d
- for d in "${AUTOTOOLS_DIRS[@]}" ; do
- pushd ${d} >/dev/null || die
- AT_NOELIBTOOLIZE="yes" AT_TOPLEVEL_EAUTORECONF="yes" eautoreconf
- popd >/dev/null || die
- done
- elibtoolize
-
- # Prevent autoreconf rerun
- sed -e 's/autoreconf -vif/echo "autoreconf already done in src_prepare()"/' -i \
- "${S}"/tools/depends/native/TexturePacker/src/autogen.sh \
- "${S}"/tools/depends/native/JsonSchemaBuilder/src/autogen.sh \
- || die
-}
-
-src_configure() {
- local platform=()
- use gbm && platform+=( gbm )
- use wayland && platform+=( wayland )
- use X && platform+=( x11 )
- local core_platform_name="${platform[@]}"
- local mycmakeargs=(
- -DENABLE_SSE=$(usex cpu_flags_x86_sse)
- -DENABLE_SSE2=$(usex cpu_flags_x86_sse2)
- -DENABLE_SSE3=$(usex cpu_flags_x86_sse3)
- -DENABLE_SSE4_1=$(usex cpu_flags_x86_sse4_1)
- -DENABLE_SSE4_2=$(usex cpu_flags_x86_sse4_2)
- -DENABLE_AVX=$(usex cpu_flags_x86_avx)
- -DENABLE_AVX2=$(usex cpu_flags_x86_avx2)
- -DENABLE_NEON=$(usex cpu_flags_arm_neon)
- -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
- -DVERBOSE=ON
- -DENABLE_LDGOLD=OFF # https://bugs.gentoo.org/show_bug.cgi?id=606124
- -DENABLE_ALSA=$(usex alsa)
- -DENABLE_AIRTUNES=$(usex airplay)
- -DENABLE_AVAHI=$(usex zeroconf)
- -DENABLE_BLUETOOTH=$(usex bluetooth)
- -DENABLE_BLURAY=$(usex bluray)
- -DENABLE_CCACHE=OFF
- -DENABLE_CLANGFORMAT=OFF
- -DENABLE_CLANGTIDY=OFF
- -DENABLE_CPPCHECK=OFF
- -DENABLE_ISO9660PP=$(usex optical)
- -DENABLE_CEC=$(usex cec)
- -DENABLE_DBUS=$(usex dbus)
- -DENABLE_DVDCSS=$(usex css)
- -DENABLE_EVENTCLIENTS=ON # alway enable to have 'kodi-send' and filter extra staff in 'src_install()'
- -DENABLE_INTERNAL_CROSSGUID=OFF
- -DENABLE_INTERNAL_RapidJSON=OFF
- -DENABLE_INTERNAL_FMT=OFF
- -DENABLE_INTERNAL_FFMPEG="$(usex !system-ffmpeg)"
- -DENABLE_INTERNAL_FSTRCMP=OFF
- -DENABLE_INTERNAL_FLATBUFFERS=OFF
- -DENABLE_INTERNAL_DAV1D=OFF
- -DENABLE_INTERNAL_GTEST=OFF
- -DENABLE_INTERNAL_UDFREAD=OFF
- -DENABLE_INTERNAL_SPDLOG=OFF
- -DENABLE_CAP=$(usex caps)
- -DENABLE_LCMS2=$(usex lcms)
- -DENABLE_LIRCCLIENT=$(usex lirc)
- -DENABLE_MARIADBCLIENT=$(usex mariadb)
- -DENABLE_MDNS=OFF # used only on Android
- -DENABLE_MICROHTTPD=$(usex webserver)
- -DENABLE_MYSQLCLIENT=$(usex mysql)
- -DENABLE_NFS=$(usex nfs)
- -DENABLE_OPENGLES=$(usex gles)
- -DENABLE_OPENGL=$(usex !gles)
- -DENABLE_OPTICAL=$(usex optical)
- -DENABLE_PLIST=$(usex airplay)
- -DENABLE_PULSEAUDIO=$(usex pulseaudio)
- -DENABLE_SMBCLIENT=$(usex samba)
- -DENABLE_SNDIO=OFF
- -DENABLE_TESTING=$(usex test)
- -DENABLE_UDEV=$(usex udev)
- -DENABLE_UDFREAD=$(usex udf)
- -DENABLE_UPNP=$(usex upnp)
- -DENABLE_VAAPI=$(usex vaapi)
- -DENABLE_VDPAU=$(usex vdpau)
- -DENABLE_XSLT=$(usex xslt)
- -Dlibdvdread_URL="${DISTDIR}/libdvdread-${LIBDVDREAD_VERSION}.tar.gz"
- -Dlibdvdnav_URL="${DISTDIR}/libdvdnav-${LIBDVDNAV_VERSION}.tar.gz"
- -Dlibdvdcss_URL="${DISTDIR}/libdvdcss-${LIBDVDCSS_VERSION}.tar.gz"
- -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
- -DPYTHON_LIBRARY="$(python_get_library_path)"
- -DAPP_RENDER_SYSTEM="$(usex gles gles gl)"
- -DCORE_PLATFORM_NAME="${core_platform_name}"
- )
-
- use !udev && mycmakeargs+=( -DENABLE_LIBUSB=$(usex libusb) )
-
- use X && use !gles && mycmakeargs+=( -DENABLE_GLX=ON )
-
- if use system-ffmpeg; then
- mycmakeargs+=( -DWITH_FFMPEG="yes" )
- else
- mycmakeargs+=( -DFFMPEG_URL="${DISTDIR}/ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz" )
- fi
-
- if ! echo "${CFLAGS}" | grep -Fwqe '-DNDEBUG' - && ! echo "${CFLAGS}" | grep -Fwqe '-D_DEBUG' - ; then
- CFLAGS+=' -DNDEBUG' # Kodi requires one of the 'NDEBUG' or '_DEBUG' defines
- CXXFLAGS+=' -DNDEBUG'
- fi
-
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile all
-}
-
-src_test() {
- # see https://github.com/xbmc/xbmc/issues/17860#issuecomment-630120213
- KODI_HOME="${BUILD_DIR}" cmake_build check
-}
-
-src_install() {
- cmake_src_install
-
- pax-mark Em "${ED}"/usr/$(get_libdir)/${PN}/${PN}.bin
-
- newicon media/icon48x48.png kodi.png
-
- rm "${ED}"/usr/share/kodi/addons/skin.estuary/fonts/Roboto-Thin.ttf || die
- dosym ../../../../fonts/roboto/Roboto-Thin.ttf \
- usr/share/kodi/addons/skin.estuary/fonts/Roboto-Thin.ttf
-
- if use !eventclients ; then
- rm -f "${ED}"/usr/bin/kodi-ps3remote || die
- rm -f "${D}"$(python_get_sitedir)/kodi/ps3_remote.py || die
- rm -rf "${D}"$(python_get_sitedir)/kodi/ps3 || die
- rm -rf "${D}"$(python_get_sitedir)/kodi/bt || die
- rm -rf "${ED}"/usr/share/doc/${PF}/kodi-eventclients-dev || die
- fi
-
- python_optimize "${D}$(python_get_sitedir)"
-}
diff --git a/media-tv/kodi/kodi-19.1.ebuild b/media-tv/kodi/kodi-19.1.ebuild
index 870b01b..9cbf604 100644
--- a/media-tv/kodi/kodi-19.1.ebuild
+++ b/media-tv/kodi/kodi-19.1.ebuild
@@ -30,7 +30,7 @@ else
S=${WORKDIR}/xbmc-${MY_PV}
fi
-inherit autotools cmake desktop linux-info pax-utils python-single-r1 xdg
+inherit autotools cmake desktop flag-o-matic linux-info pax-utils python-single-r1 xdg
DESCRIPTION="A free and open source media-player and entertainment hub"
HOMEPAGE="https://kodi.tv/ https://kodi.wiki/"
@@ -238,6 +238,9 @@ src_prepare() {
"${S}"/tools/depends/native/TexturePacker/src/autogen.sh \
"${S}"/tools/depends/native/JsonSchemaBuilder/src/autogen.sh \
|| die
+
+ # Required to prevent addons from crashing
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=1048576
}
src_configure() {
diff --git a/metadata/.gitignore b/metadata/.gitignore
new file mode 100644
index 0000000..f87bf8b
--- /dev/null
+++ b/metadata/.gitignore
@@ -0,0 +1 @@
+/md5-cache
diff --git a/net-fs/nfs-utils/Manifest b/net-fs/nfs-utils/Manifest
index 3196928..0ae2ec8 100644
--- a/net-fs/nfs-utils/Manifest
+++ b/net-fs/nfs-utils/Manifest
@@ -1,3 +1 @@
-DIST nfs-utils-1.3.4.tar.bz2 814545 BLAKE2B 4b8c5fa4c1c21858e19d05f973c6d94185cf6a15c88348dda5e47c6714f9dba00dfa05237d908479970440b2ea57287600e92cb4d49872127b3801e075d6bf1a SHA512 765c0bc55a9a0bdb2c25d8fb7189a9054fb9f2dd51726eda29f44e5d5c423e245b02307dfcfab9239276d8f44869a72732416f6e9ef5a1f80753d9243ba1b38c
-DIST nfs-utils-2.3.1.tar.bz2 854899 BLAKE2B f9541b9dc103d978f21d57d8ba0c14a3b30f6ba874b112239d014076c1c72b6654e8e02b4bfea686e658dac84d1e896b872bc2054591275ef1713ae4e7b7d005 SHA512 de3e70f8656bc5b5aa98262685a9e80929c6314234d9bbb74d4c7efcb7a8b2640d48d2100850b403157ebefc8f0eb48598b48238fae795f64c7a0e9a8bff93e3
-DIST nfs-utils-2.3.3.tar.bz2 888947 BLAKE2B 7c913f0c5061807d4af162fb392c8f466abb97c88960853b52298f61056bcad08f67a16e577036dec9afa737d88268d5a766b67c4b30a014b666dfbf3db81031 SHA512 266b86ef5041a7ecd144c6f2570e8a6eb00ebb4e547fa4b8c8c3e60a4af117c2690ff9effb0d4113a7b7ef57164583c8a6ada9cb1bb8f7b748524c826eaf1cba
+DIST nfs-utils-2.5.3.tar.bz2 937544 BLAKE2B 817af2c302cf110519e64353a507645137ffd3b93b46eb94e71d45a1869c9e831e344f0baa33b1b39514962798cca542cf56a2830520c67e96e78995f2bf901f SHA512 3be82f42c5da2bbbca4429459c858c58ae7333725749213c824d0c01b78f0beb7384455f314fc1cc1799968f9f40fd616297c7baf3514ca0e31d4686e9d6e732
diff --git a/net-fs/nfs-utils/files/musl-getservbyport.patch b/net-fs/nfs-utils/files/musl-getservbyport.patch
new file mode 100644
index 0000000..6fa589c
--- /dev/null
+++ b/net-fs/nfs-utils/files/musl-getservbyport.patch
@@ -0,0 +1,18 @@
+Musl will always return something with getservbyport so we cannot skip
+ports that returns non-null.
+
+diff --git a/utils/statd/rmtcall.c b/utils/statd/rmtcall.c
+index fd576d9..d72a0bf 100644
+--- a/utils/statd/rmtcall.c
++++ b/utils/statd/rmtcall.c
+@@ -93,8 +93,10 @@
+ __func__);
+ break;
+ }
++#if 0
+ se = getservbyport(sin.sin_port, "udp");
+ if (se == NULL)
++#endif
+ break;
+
+ if (retries == MAX_BRP_RETRIES) {
diff --git a/net-fs/nfs-utils/files/musl-svcgssd-sysconf.patch b/net-fs/nfs-utils/files/musl-svcgssd-sysconf.patch
new file mode 100644
index 0000000..ec280cc
--- /dev/null
+++ b/net-fs/nfs-utils/files/musl-svcgssd-sysconf.patch
@@ -0,0 +1,144 @@
+--- a/support/nfsidmap/libnfsidmap.c
++++ b/support/nfsidmap/libnfsidmap.c
+@@ -432,11 +432,17 @@ int nfs4_init_name_mapping(char *conffil
+
+ nobody_user = conf_get_str("Mapping", "Nobody-User");
+ if (nobody_user) {
+- size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ size_t buflen = 1024; /*value on my gentoo glibc system that has _SC_GETPW_R_SIZE_MAX*/
+ struct passwd *buf;
+ struct passwd *pw = NULL;
+ int err;
+
++ /*sysconf can return -1 when _SC_GETPW_R_SIZE_MAX is not defined, like on musl systems, if cast to size_t this will lead
++ to an integer overflow, which leads to a buffer overflow and crashes svcgssd */
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
++
+ buf = malloc(sizeof(*buf) + buflen);
+ if (buf) {
+ err = getpwnam_r(nobody_user, buf, ((char *)buf) + sizeof(*buf), buflen, &pw);
+@@ -453,11 +459,17 @@ int nfs4_init_name_mapping(char *conffil
+
+ nobody_group = conf_get_str("Mapping", "Nobody-Group");
+ if (nobody_group) {
+- size_t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ size_t buflen = 1024; /*value on my gentoo glibc system that has _SC_GETGR_R_SIZE_MAX*/
+ struct group *buf;
+ struct group *gr = NULL;
+ int err;
+
++ /*sysconf can return -1 when _SC_GETGR_R_SIZE_MAX is not defined, like on musl systems, if cast to size_t this will lead
++ to an integer overflow, which leads to a buffer overflow and crashes svcgssd */
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
++
+ buf = malloc(sizeof(*buf) + buflen);
+ if (buf) {
+ err = getgrnam_r(nobody_group, buf, ((char *)buf) + sizeof(*buf), buflen, &gr);
+--- a/support/nfsidmap/static.c
++++ b/support/nfsidmap/static.c
+@@ -98,10 +98,14 @@ static struct passwd *static_getpwnam(co
+ {
+ struct passwd *pw;
+ struct pwbuf *buf;
+- size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ size_t buflen = 1024;
+ char *localname;
+ int err;
+
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
++
+ buf = malloc(sizeof(*buf) + buflen);
+ if (!buf) {
+ err = ENOMEM;
+@@ -149,10 +153,14 @@ static struct group *static_getgrnam(con
+ {
+ struct group *gr;
+ struct grbuf *buf;
+- size_t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ size_t buflen = 1024;
+ char *localgroup;
+ int err;
+
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
++
+ buf = malloc(sizeof(*buf) + buflen);
+ if (!buf) {
+ err = ENOMEM;
+--- a/support/nfsidmap/nss.c
++++ b/support/nfsidmap/nss.c
+@@ -91,9 +91,13 @@ static int nss_uid_to_name(uid_t uid, ch
+ struct passwd *pw = NULL;
+ struct passwd pwbuf;
+ char *buf;
+- size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ size_t buflen = 1024;
+ int err = -ENOMEM;
+
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
++
+ buf = malloc(buflen);
+ if (!buf)
+ goto out;
+@@ -119,9 +123,13 @@ static int nss_gid_to_name(gid_t gid, ch
+ struct group *gr = NULL;
+ struct group grbuf;
+ char *buf;
+- size_t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ size_t buflen = 1024;
+ int err;
+
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
++
+ if (domain == NULL)
+ domain = get_default_domain();
+
+@@ -192,12 +200,13 @@ static struct passwd *nss_getpwnam(const
+ {
+ struct passwd *pw;
+ struct pwbuf *buf;
+- size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++ size_t buflen = 1024;
+ char *localname;
+ int err = ENOMEM;
+
+- if (buflen > UINT_MAX)
+- goto err;
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
+
+ buf = malloc(sizeof(*buf) + buflen);
+ if (buf == NULL)
+@@ -301,7 +310,8 @@ static int _nss_name_to_gid(char *name,
+ struct group *gr = NULL;
+ struct group grbuf;
+ char *buf, *domain;
+- size_t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ long scbuflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++ size_t buflen = 1024;
+ int err = -EINVAL;
+ char *localname = NULL;
+ char *ref_name = NULL;
+@@ -327,8 +337,8 @@ static int _nss_name_to_gid(char *name,
+ }
+
+ err = -ENOMEM;
+- if (buflen > UINT_MAX)
+- goto out_name;
++ if (scbuflen > 0)
++ buflen = (size_t)scbuflen;
+
+ do {
+ buf = malloc(buflen);
diff --git a/net-fs/nfs-utils/files/musl-time64.patch b/net-fs/nfs-utils/files/musl-time64.patch
new file mode 100644
index 0000000..62a1d1e
--- /dev/null
+++ b/net-fs/nfs-utils/files/musl-time64.patch
@@ -0,0 +1,51 @@
+diff --git a/utils/nfsdcltrack/nfsdcltrack.c b/utils/nfsdcltrack/nfsdcltrack.c
+index b45a904..6b1049f 100644
+--- a/utils/nfsdcltrack/nfsdcltrack.c
++++ b/utils/nfsdcltrack/nfsdcltrack.c
+@@ -25,9 +25,11 @@
+
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <ctype.h>
+ #include <errno.h>
+ #include <stdbool.h>
++#include <stdint.h>
++#include <inttypes.h>
++#include <ctype.h>
+ #include <getopt.h>
+ #include <string.h>
+ #include <sys/stat.h>
+@@ -525,7 +527,8 @@ cltrack_gracedone(const char *timestr)
+ if (*tail)
+ return -EINVAL;
+
+- xlog(D_GENERAL, "%s: grace done. gracetime=%ld", __func__, gracetime);
++ xlog(D_GENERAL, "%s: grace done. gracetime=%" PRId64, __func__,
++ (int64_t)gracetime);
+
+ ret = sqlite_remove_unreclaimed(gracetime);
+
+diff --git a/utils/nfsdcltrack/sqlite.c b/utils/nfsdcltrack/sqlite.c
+index 2801201..c4e0cdf 100644
+--- a/utils/nfsdcltrack/sqlite.c
++++ b/utils/nfsdcltrack/sqlite.c
+@@ -42,6 +42,8 @@
+ #include <errno.h>
+ #include <event.h>
+ #include <stdbool.h>
++#include <stdint.h>
++#include <inttypes.h>
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
+@@ -544,8 +546,8 @@ sqlite_remove_unreclaimed(time_t grace_start)
+ int ret;
+ char *err = NULL;
+
+- ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %ld",
+- grace_start);
++ ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %" PRId64,
++ (int64_t)grace_start);
+ if (ret < 0) {
+ return ret;
+ } else if ((size_t)ret >= sizeof(buf)) {
diff --git a/net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch b/net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch
deleted file mode 100644
index c9e60af..0000000
--- a/net-fs/nfs-utils/files/nfs-utils-1.1.4-mtab-sym.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-ripped from Debian
-
---- nfs-utils-1.1.4/utils/mount/fstab.c
-+++ nfs-utils-1.1.4/utils/mount/fstab.c
-@@ -57,7 +57,7 @@ mtab_does_not_exist(void) {
- return var_mtab_does_not_exist;
- }
-
--static int
-+int
- mtab_is_a_symlink(void) {
- get_mtab_info();
- return var_mtab_is_a_symlink;
---- nfs-utils-1.1.4/utils/mount/fstab.h
-+++ nfs-utils-1.1.4/utils/mount/fstab.h
-@@ -7,6 +7,7 @@
- #define _PATH_FSTAB "/etc/fstab"
- #endif
-
-+int mtab_is_a_symlink(void);
- int mtab_is_writable(void);
- int mtab_does_not_exist(void);
- void reset_mtab_info(void);
---- nfs-utils-1.1.4/utils/mount/mount.c
-+++ nfs-utils-1.1.4/utils/mount/mount.c
-@@ -230,6 +230,13 @@ create_mtab (void) {
- int flags;
- mntFILE *mfp;
-
-+ /* Avoid writing if the mtab is a symlink to /proc/mounts, since
-+ that would create a file /proc/mounts in case the proc filesystem
-+ is not mounted, and the fchmod below would also fail. */
-+ if (mtab_is_a_symlink()) {
-+ return EX_SUCCESS;
-+ }
-+
- lock_mtab();
-
- mfp = nfs_setmntent (MOUNTED, "a+");
diff --git a/net-fs/nfs-utils/files/nfs-utils-1.2.8-cross-build.patch b/net-fs/nfs-utils/files/nfs-utils-1.2.8-cross-build.patch
deleted file mode 100644
index 7317115..0000000
--- a/net-fs/nfs-utils/files/nfs-utils-1.2.8-cross-build.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-this is kind of hacky, but automake doesn't make this easy
-for us atm, so hack away :(
-
-(recent autotools will always add $(CFLAGS)/etc... to the compile)
-
---- a/tools/locktest/Makefile.am
-+++ b/tools/locktest/Makefile.am
-@@ -1,12 +1,11 @@
- ## Process this file with automake to produce Makefile.in
-
- CC=$(CC_FOR_BUILD)
--LIBTOOL = @LIBTOOL@ --tag=CC
-+CFLAGS=$(CFLAGS_FOR_BUILD)
-+CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
-+LDFLAGS=$(LDFLAGS_FOR_BUILD)
-
- noinst_PROGRAMS = testlk
- testlk_SOURCES = testlk.c
--testlk_CFLAGS=$(CFLAGS_FOR_BUILD)
--testlk_CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
--testlk_LDFLAGS=$(LDFLAGS_FOR_BUILD)
-
- MAINTAINERCLEANFILES = Makefile.in
---- a/tools/rpcgen/Makefile.am
-+++ b/tools/rpcgen/Makefile.am
-@@ -1,7 +1,9 @@
- ## Process this file with automake to produce Makefile.in
-
- CC=$(CC_FOR_BUILD)
--LIBTOOL = @LIBTOOL@ --tag=CC
-+CFLAGS=$(CFLAGS_FOR_BUILD)
-+CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
-+LDFLAGS=$(LDFLAGS_FOR_BUILD)
-
- noinst_PROGRAMS = rpcgen
- rpcgen_SOURCES = rpc_clntout.c rpc_cout.c rpc_hout.c rpc_main.c \
-@@ -9,10 +11,6 @@
- rpc_util.c rpc_sample.c rpc_output.h rpc_parse.h \
- rpc_scan.h rpc_util.h
-
--rpcgen_CFLAGS=$(CFLAGS_FOR_BUILD)
--rpcgen_CPPLAGS=$(CPPFLAGS_FOR_BUILD)
--rpcgen_LDFLAGS=$(LDFLAGS_FOR_BUILD)
--rpcgen_LDADD=$(LIBTIRPC)
-
- MAINTAINERCLEANFILES = Makefile.in
-
- EXTRA_DIST = rpcgen.new.1
diff --git a/net-fs/nfs-utils/files/nfs-utils-2.3.1-svcgssd_undefined_reference.patch b/net-fs/nfs-utils/files/nfs-utils-2.3.1-svcgssd_undefined_reference.patch
deleted file mode 100644
index 77c902f..0000000
--- a/net-fs/nfs-utils/files/nfs-utils-2.3.1-svcgssd_undefined_reference.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 1451d7585bf1c622658ccc04abac7e79ffe40263 Mon Sep 17 00:00:00 2001
-From: Justin Mitchell <jumitche@redhat.com>
-Date: Mon, 8 Jan 2018 09:14:11 -0500
-Subject: [PATCH] svcgssd: Update svcgssd so that it builds
-
-Since a15bd948 the --enable-svcgss option no longer builds
-as svcgssd references functions which were changed at that time.
-Fix those, and other function changes since then.
-
-Signed-off-by: Justin Mitchell <jumitche@redhat.com>
-Signed-off-by: Steve Dickson <steved@redhat.com>
----
- utils/gssd/svcgssd.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/utils/gssd/svcgssd.c b/utils/gssd/svcgssd.c
-index 3514ae1..23f0c0b 100644
---- a/utils/gssd/svcgssd.c
-+++ b/utils/gssd/svcgssd.c
-@@ -63,6 +63,8 @@
- #include "err_util.h"
- #include "conffile.h"
-
-+struct state_paths etab;
-+
- void
- sig_die(int signal)
- {
-@@ -101,7 +103,7 @@ main(int argc, char *argv[])
- char *principal = NULL;
- char *s;
-
-- conf_init(NFS_CONFFILE);
-+ conf_init_file(NFS_CONFFILE);
-
- s = conf_get_str("svcgssd", "principal");
- if (!s)
---
-1.8.3.1
-
diff --git a/net-fs/nfs-utils/files/nfs-utils-2.3.2-junction_libs.patch b/net-fs/nfs-utils/files/nfs-utils-2.3.2-junction_libs.patch
deleted file mode 100644
index f13f07a..0000000
--- a/net-fs/nfs-utils/files/nfs-utils-2.3.2-junction_libs.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 8f3e4f4d6df9f813572051e12e974b35c26a1743 Mon Sep 17 00:00:00 2001
-From: Lars Wendler <polynomial-c@gentoo.org>
-Date: Mon, 28 May 2018 12:13:10 +0200
-Subject: [PATCH] Fix undefined references and bad include when build with
- junction support
-
----
- support/junction/Makefile.am | 2 +-
- utils/nfsref/Makefile.am | 6 +++---
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/support/junction/Makefile.am b/support/junction/Makefile.am
-index 97e7426..89cb532 100644
---- a/support/junction/Makefile.am
-+++ b/support/junction/Makefile.am
-@@ -31,4 +31,4 @@ libjunction_la_SOURCES = display.c export-cache.c junction.c \
-
- MAINTAINERCLEANFILES = Makefile.in
-
--AM_CPPFLAGS = -I. -I../include -I/usr/include/libxml2
-+AM_CPPFLAGS = -I. -I../include -I/usr/include/libxml2 @TIRPC_CFLAGS@
-diff --git a/utils/nfsref/Makefile.am b/utils/nfsref/Makefile.am
-index 2b2bb53..a652b03 100644
---- a/utils/nfsref/Makefile.am
-+++ b/utils/nfsref/Makefile.am
-@@ -27,13 +27,13 @@ noinst_HEADERS = nfsref.h
-
- sbin_PROGRAMS = nfsref
- nfsref_SOURCES = add.c lookup.c nfsref.c remove.c
--LDADD = $(LIBXML2) $(LIBCAP) \
-- ../../support/nfs/libnfs.la \
-+LIBS += $(LIBXML2) $(LIBCAP)
-+LDADD = ../../support/nfs/libnfs.la \
- ../../support/junction/libjunction.la
-
- man8_MANS = nfsref.man
-
- MAINTAINERCLEANFILES = Makefile.in
-
--AM_CPPFLAGS = -I. -I../../support/include
-+AM_CPPFLAGS = -I. -I../../support/include @TIRPC_CFLAGS@
- ##AM_LDFLAGS = -Wl,--as-needed
---
-2.17.0
-
diff --git a/net-fs/nfs-utils/files/nfs-utils-2.4.2-Ensure-consistent-struct-stat.patch b/net-fs/nfs-utils/files/nfs-utils-2.4.2-Ensure-consistent-struct-stat.patch
new file mode 100644
index 0000000..8541a98
--- /dev/null
+++ b/net-fs/nfs-utils/files/nfs-utils-2.4.2-Ensure-consistent-struct-stat.patch
@@ -0,0 +1,115 @@
+From 1378280398ef9f5cd45f5542ae2945b9a360b132 Mon Sep 17 00:00:00 2001
+From: Doug Nazar <nazard@nazar.ca>
+Date: Sun, 17 Nov 2019 14:31:33 -0500
+Subject: [PATCH] Ensure consistent struct stat definition
+
+Although 2fbc62e2a13fc ("Fix include order between config.h and stat.h")
+reorganized those files that were already including config.h, not all
+files were including config.h.
+
+Fixes at least stack smashing crashes in mountd on 32-bit systems.
+
+Signed-off-by: Doug Nazar <nazard@nazar.ca>
+Signed-off-by: Steve Dickson <steved@redhat.com>
+---
+ support/junction/junction.c | 4 ++++
+ support/misc/file.c | 4 ++++
+ support/misc/mountpoint.c | 4 ++++
+ support/nfs/cacheio.c | 4 ++++
+ utils/mount/fstab.c | 4 ++++
+ utils/nfsdcld/legacy.c | 4 ++++
+ 6 files changed, 24 insertions(+)
+
+diff --git a/support/junction/junction.c b/support/junction/junction.c
+index ab6caa6..41cce26 100644
+--- a/support/junction/junction.c
++++ b/support/junction/junction.c
+@@ -27,6 +27,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
+ #include <sys/types.h>
+ #include <sys/stat.h>
+
+diff --git a/support/misc/file.c b/support/misc/file.c
+index e7c3819..06f6bb2 100644
+--- a/support/misc/file.c
++++ b/support/misc/file.c
+@@ -22,6 +22,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
+ #include <sys/stat.h>
+
+ #include <string.h>
+diff --git a/support/misc/mountpoint.c b/support/misc/mountpoint.c
+index c6217f2..14d6731 100644
+--- a/support/misc/mountpoint.c
++++ b/support/misc/mountpoint.c
+@@ -7,6 +7,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
+ #include <string.h>
+ #include "xcommon.h"
+ #include <sys/stat.h>
+diff --git a/support/nfs/cacheio.c b/support/nfs/cacheio.c
+index 9dc4cf1..7c4cf37 100644
+--- a/support/nfs/cacheio.c
++++ b/support/nfs/cacheio.c
+@@ -19,6 +19,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
+ #include <nfslib.h>
+ #include <inttypes.h>
+ #include <stdio.h>
+diff --git a/utils/mount/fstab.c b/utils/mount/fstab.c
+index eedbdda..8b0aaf1 100644
+--- a/utils/mount/fstab.c
++++ b/utils/mount/fstab.c
+@@ -11,6 +11,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
+ #include <errno.h>
+ #include <stdio.h>
+ #include <fcntl.h>
+diff --git a/utils/nfsdcld/legacy.c b/utils/nfsdcld/legacy.c
+index 07f477a..3c6bea6 100644
+--- a/utils/nfsdcld/legacy.c
++++ b/utils/nfsdcld/legacy.c
+@@ -19,6 +19,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif
++
+ #include <stdio.h>
+ #include <dirent.h>
+ #include <string.h>
+--
+1.8.3.1
+
diff --git a/net-fs/nfs-utils/files/nfs-utils-2.3.2-no-werror.patch b/net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch
index d06fc4c..a7226db 100644
--- a/net-fs/nfs-utils/files/nfs-utils-2.3.2-no-werror.patch
+++ b/net-fs/nfs-utils/files/nfs-utils-2.5.2-no-werror.patch
@@ -1,17 +1,27 @@
+From 6ab8c7c186bd4a547a0ca435ecabe10ee50039c5 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Thu, 22 Oct 2020 19:44:34 +0200
+Subject: [PATCH] Don't build with -Werror flags
+
https://bugs.gentoo.org/656984
-Don't build with -Werror flags.
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ configure.ac | 34 +---------------------------------
+ 1 file changed, 1 insertion(+), 33 deletions(-)
+diff --git a/configure.ac b/configure.ac
+index 50847d8a..6bc18e93 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -544,45 +544,11 @@
+@@ -631,47 +631,15 @@ AC_SUBST(CPPFLAGS_FOR_BUILD)
AC_SUBST(LDFLAGS_FOR_BUILD)
my_am_cflags="\
- -pipe \
-Wall \
-Wextra \
-- -Werror=strict-prototypes \
+ $rpcgen_cflags \
- -Werror=missing-prototypes \
- -Werror=missing-declarations \
- -Werror=format=2 \
@@ -28,10 +38,10 @@ Don't build with -Werror flags.
- -Werror=unused-result \
-fno-strict-aliasing \
"
--
+
-AC_DEFUN([CHECK_CCSUPPORT], [
- my_save_cflags="$CFLAGS"
-- CFLAGS=$1
+- CFLAGS="-Werror $1"
- AC_MSG_CHECKING([whether CC supports $1])
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
- [AC_MSG_RESULT([yes])]
@@ -45,9 +55,14 @@ Don't build with -Werror flags.
-CHECK_CCSUPPORT([-Werror=int-conversion], [flg2])
-CHECK_CCSUPPORT([-Werror=incompatible-pointer-types], [flg3])
-CHECK_CCSUPPORT([-Werror=misleading-indentation], [flg4])
--
--AC_SUBST([AM_CFLAGS], ["$my_am_cflags $flg1 $flg2 $flg3 $flg4"])
+-CHECK_CCSUPPORT([-Wno-cast-function-type], [flg5])
+ AX_GCC_FUNC_ATTRIBUTE([format])
+
+-AC_SUBST([AM_CFLAGS], ["$my_am_cflags $flg1 $flg2 $flg3 $flg4 $flg5"])
+AC_SUBST([AM_CFLAGS], ["$my_am_cflags"])
# Make sure that $ACLOCAL_FLAGS are used during a rebuild
AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \$(ACLOCAL_FLAGS)"])
+--
+2.29.0
+
diff --git a/net-fs/nfs-utils/files/nfs-utils-musl.patch b/net-fs/nfs-utils/files/nfs-utils-musl.patch
deleted file mode 100644
index e880072..0000000
--- a/net-fs/nfs-utils/files/nfs-utils-musl.patch
+++ /dev/null
@@ -1,147 +0,0 @@
---- nfs-utils-2.3.1/configure.ac.orig 2018-05-21 11:05:01.939912918 -0700
-+++ nfs-utils-2.3.1/configure.ac 2018-05-21 11:05:10.531968707 -0700
-@@ -401,7 +401,7 @@
- fi
-
- dnl libdnsidmap specific checks
--AC_CHECK_LIB([resolv], [__res_querydomain], , AC_MSG_ERROR(res_querydomain needed))
-+AC_CHECK_LIB([resolv], [res_querydomain], , AC_MSG_ERROR(res_querydomain needed))
-
- AC_ARG_ENABLE([ldap],
- [AS_HELP_STRING([--disable-ldap],[Disable support for LDAP @<:default=detect@:>@])])
---- nfs-utils-2.3.1/support/misc/file.c.orig 2018-05-21 18:15:37.572007979 +0000
-+++ nfs-utils-2.3.1/support/misc/file.c 2018-05-21 18:15:43.668047008 +0000
-@@ -27,6 +27,7 @@
- #include <dirent.h>
- #include <stdlib.h>
- #include <stdbool.h>
-+#include <limits.h> /* PATH_MAX */
-
- #include "xlog.h"
- #include "misc.h"
-diff -Naur nfs-utils-2.3.3-orig/support/export/client.c nfs-utils-2.3.3/support/export/client.c
---- nfs-utils-2.3.3-orig/support/export/client.c 2018-09-06 13:09:08.000000000 -0500
-+++ nfs-utils-2.3.3/support/export/client.c 2019-04-21 02:48:45.676838188 -0500
-@@ -309,7 +309,8 @@
- init_addrlist(clp, ai);
-
- out:
-- freeaddrinfo(ai);
-+ if (ai != NULL)
-+ freeaddrinfo(ai);
- return clp;
- }
-
-diff -Naur nfs-utils-2.3.3-orig/tests/nsm_client/nsm_client.c nfs-utils-2.3.3/tests/nsm_client/nsm_client.c
---- nfs-utils-2.3.3-orig/tests/nsm_client/nsm_client.c 2018-09-06 13:09:08.000000000 -0500
-+++ nfs-utils-2.3.3/tests/nsm_client/nsm_client.c 2019-04-21 02:35:53.139552780 -0500
-@@ -243,7 +243,8 @@
- printf("RPC client creation failed\n");
- }
- out:
-- freeaddrinfo(ai);
-+ if (ai != NULL)
-+ freeaddrinfo(ai);
- return client;
- }
-
-diff -Naur nfs-utils-2.3.3-orig/utils/exportfs/exportfs.c nfs-utils-2.3.3/utils/exportfs/exportfs.c
---- nfs-utils-2.3.3-orig/utils/exportfs/exportfs.c 2018-09-06 13:09:08.000000000 -0500
-+++ nfs-utils-2.3.3/utils/exportfs/exportfs.c 2019-04-21 02:40:07.432327005 -0500
-@@ -282,7 +282,8 @@
- validate_export(exp);
-
- out:
-- freeaddrinfo(ai);
-+ if (ai != NULL)
-+ freeaddrinfo(ai);
- }
-
- static int exportfs_generic(char *arg, char *options, int verbose)
-@@ -395,7 +396,8 @@
- if (!success)
- xlog(L_ERROR, "Could not find '%s:%s' to unexport.", hname, path);
-
-- freeaddrinfo(ai);
-+ if (ai != NULL)
-+ freeaddrinfo(ai);
- }
-
- static int unexportfs_generic(char *arg, int verbose)
-@@ -639,8 +641,10 @@
- }
-
- out:
-- freeaddrinfo(results1);
-- freeaddrinfo(results2);
-+ if (results1 != NULL)
-+ freeaddrinfo(results1);
-+ if (results2 != NULL)
-+ freeaddrinfo(results2);
- return result;
- }
-
-diff -Naur nfs-utils-2.3.3-orig/utils/mount/stropts.c nfs-utils-2.3.3/utils/mount/stropts.c
---- nfs-utils-2.3.3-orig/utils/mount/stropts.c 2018-09-06 13:09:08.000000000 -0500
-+++ nfs-utils-2.3.3/utils/mount/stropts.c 2019-04-21 02:43:18.451874403 -0500
-@@ -1263,7 +1263,8 @@
- } else
- nfs_error(_("%s: internal option parsing error"), progname);
-
-- freeaddrinfo(mi.address);
-+ if (mi.address != NULL)
-+ freeaddrinfo(mi.address);
- free(mi.hostname);
- return retval;
- }
-diff -Naur nfs-utils-2.3.3-orig/utils/mountd/cache.c nfs-utils-2.3.3/utils/mountd/cache.c
---- nfs-utils-2.3.3-orig/utils/mountd/cache.c 2019-04-21 02:33:43.603417171 -0500
-+++ nfs-utils-2.3.3/utils/mountd/cache.c 2019-04-21 02:45:11.289792765 -0500
-@@ -834,7 +834,8 @@
- out:
- if (found_path)
- free(found_path);
-- freeaddrinfo(ai);
-+ if (ai != NULL)
-+ freeaddrinfo(ai);
- free(dom);
- xlog(D_CALL, "nfsd_fh: found %p path %s", found, found ? found->e_path : NULL);
- }
-@@ -1355,7 +1356,7 @@
- xlog(D_CALL, "nfsd_export: found %p path %s", found, path ? path : NULL);
- if (dom) free(dom);
- if (path) free(path);
-- freeaddrinfo(ai);
-+ if (ai) freeaddrinfo(ai);
- }
-
-
-diff -Naur nfs-utils-2.3.3-orig/utils/mountd/mountd.c nfs-utils-2.3.3/utils/mountd/mountd.c
---- nfs-utils-2.3.3-orig/utils/mountd/mountd.c 2018-09-06 13:09:08.000000000 -0500
-+++ nfs-utils-2.3.3/utils/mountd/mountd.c 2019-04-21 02:45:41.796526387 -0500
-@@ -581,7 +581,8 @@
- freeaddrinfo(ai);
- continue;
- }
-- freeaddrinfo(ai);
-+ if (ai != NULL)
-+ freeaddrinfo(ai);
- }
- cp = &(c->gr_next);
- }
-diff -Naur nfs-utils-2.3.3-orig/utils/statd/hostname.c nfs-utils-2.3.3/utils/statd/hostname.c
---- nfs-utils-2.3.3-orig/utils/statd/hostname.c 2018-09-06 13:09:08.000000000 -0500
-+++ nfs-utils-2.3.3/utils/statd/hostname.c 2019-04-21 02:41:39.712446505 -0500
-@@ -308,8 +308,10 @@
- }
-
- out:
-- freeaddrinfo(results2);
-- freeaddrinfo(results1);
-+ if (results2 != NULL)
-+ freeaddrinfo(results2);
-+ if (results1 != NULL)
-+ freeaddrinfo(results1);
-
- xlog(D_CALL, "%s: hostnames %s and %s %s", __func__,
- hostname1, hostname2,
diff --git a/net-fs/nfs-utils/files/nfs-utils.conf b/net-fs/nfs-utils/files/nfs-utils.conf
deleted file mode 100644
index b9b586c..0000000
--- a/net-fs/nfs-utils/files/nfs-utils.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-d /var/lib/nfs/rpc_pipefs
-d /var/lib/nfs/v4recovery
-d /var/lib/nfs/v4root
diff --git a/net-fs/nfs-utils/files/nfs.initd b/net-fs/nfs-utils/files/nfs.initd
index 4b572fc..9b4f8a4 100644
--- a/net-fs/nfs-utils/files/nfs.initd
+++ b/net-fs/nfs-utils/files/nfs.initd
@@ -1,13 +1,9 @@
#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
extra_started_commands="reload"
-# This variable is used for controlling whether or not to run exportfs -ua;
-# see stop() for more information
-restarting=no
-
# The binary locations
exportfs=/usr/sbin/exportfs
mountd=/usr/sbin/rpc.mountd
@@ -88,7 +84,7 @@ start() {
# Exportfs likes to hang if networking isn't working.
# If that's the case, then try to kill it so the
# bootup process can continue.
- if grep -qs '^[[:space:]]*/' /etc/exports /etc/exports.d/*.exports ; then
+ if grep -qs '^[[:space:]]*"\?/' /etc/exports /etc/exports.d/*.exports ; then
ebegin "Exporting NFS directories"
${exportfs} -r &
waitfor_exportfs $!
@@ -131,7 +127,7 @@ stop() {
# then "exportfs -r" will reread the xtab, and all the current
# clients will be able to resume NFS activity, *without* needing
# to umount/(re)mount the filesystem.
- if [ "${restarting}" = no -o "${RC_CMD}" = "restart" ] ; then
+ if [ "${RC_CMD}" != "restart" ] ; then
ebegin "Unexporting NFS directories"
# Exportfs likes to hang if networking isn't working.
# If that's the case, then try to kill it so the
@@ -155,8 +151,6 @@ reload() {
}
restart() {
- # See long comment in stop() regarding "restarting" and exportfs -ua
- restarting=yes
svc_stop
svc_start
}
diff --git a/net-fs/nfs-utils/files/nfsmount.confd b/net-fs/nfs-utils/files/nfsmount.confd
deleted file mode 100644
index 4183536..0000000
--- a/net-fs/nfs-utils/files/nfsmount.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-# You will need to set the dependencies in the nfsmount script to match
-# the network configuration tools you are using. This should be done in
-# this file by following the examples below, and not by changing the
-# service script itself. See /etc/conf.d/netmount for more examples.
-#
-# This is a safe default.
-rc_after="net"
diff --git a/net-fs/nfs-utils/files/nfsmount.initd b/net-fs/nfs-utils/files/nfsmount.initd
deleted file mode 100644
index 12c7d78..0000000
--- a/net-fs/nfs-utils/files/nfsmount.initd
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs
-
-depend() {
- local myneed=""
- if [ -e /etc/fstab ] ; then
- myneed="${myneed} $(
- awk '!/^[[:space:]]*#/ && ($3 == "nfs" || $3 == "nfs4") {
- if ($3 == "nfs4")
- idmapd = "rpc.idmapd"
- if ($4 ~ /sec=(krb|spkm)/)
- gssd = "rpc.gssd"
- }
- END { print idmapd " " gssd }
- ' /etc/fstab
- )"
- fi
- config /etc/fstab
- need portmap rpc.statd ${myneed}
- use ypbind dns rpc.idmapd rpc.gssd
-}
-
-start() {
- if [ -x /usr/sbin/sm-notify ] ; then
- ebegin "Starting NFS sm-notify"
- /usr/sbin/sm-notify ${OPTS_SMNOTIFY}
- eend $?
- fi
-
- # Make sure nfs support is loaded in the kernel #64709
- if [ -e /proc/modules ] && ! grep -qs 'nfs$' /proc/filesystems ; then
- modprobe -q nfs
- fi
-
- ebegin "Mounting NFS filesystems"
- mount -a -t nfs,nfs4
- eend $?
-}
-
-stop() {
- ebegin "Unmounting NFS filesystems"
- umount -a -t nfs,nfs4
- eend $?
-}
diff --git a/net-fs/nfs-utils/metadata.xml b/net-fs/nfs-utils/metadata.xml
index 45351e4..159356c 100644
--- a/net-fs/nfs-utils/metadata.xml
+++ b/net-fs/nfs-utils/metadata.xml
@@ -5,7 +5,6 @@
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
- <longdescription>NFS client and server daemons</longdescription>
<use>
<flag name="junction">Enable NFS junction support in nfsref</flag>
<flag name="ldap">Add ldap support</flag>
diff --git a/net-fs/nfs-utils/nfs-utils-1.3.4-r1.ebuild b/net-fs/nfs-utils/nfs-utils-1.3.4-r1.ebuild
deleted file mode 100644
index 7f48d44..0000000
--- a/net-fs/nfs-utils/nfs-utils-1.3.4-r1.ebuild
+++ /dev/null
@@ -1,182 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils flag-o-matic multilib autotools systemd
-
-DESCRIPTION="NFS client and server daemons"
-HOMEPAGE="http://linux-nfs.org/"
-SRC_URI="mirror://sourceforge/nfs/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
-IUSE="caps ipv6 kerberos +libmount nfsdcld +nfsidmap +nfsv4 nfsv41 selinux tcpd +uuid"
-REQUIRED_USE="kerberos? ( nfsv4 )"
-RESTRICT="test" #315573
-
-# kth-krb doesn't provide the right include
-# files, and nfs-utils doesn't build against heimdal either,
-# so don't depend on virtual/krb.
-# (04 Feb 2005 agriffis)
-DEPEND_COMMON="tcpd? ( sys-apps/tcp-wrappers )
- caps? ( sys-libs/libcap )
- sys-libs/e2fsprogs-libs
- >=net-nds/rpcbind-0.2.4
- net-libs/libtirpc:=
- libmount? ( sys-apps/util-linux )
- nfsdcld? ( >=dev-db/sqlite-3.3 )
- nfsv4? (
- dev-libs/libevent:=
- >=net-libs/libnfsidmap-0.21-r1
- kerberos? (
- >=net-libs/libtirpc-0.2.4-r1[kerberos]
- app-crypt/mit-krb5
- )
- nfsidmap? (
- >=net-libs/libnfsidmap-0.24
- >=sys-apps/keyutils-1.5.9
- )
- )
- nfsv41? (
- sys-fs/lvm2
- )
- uuid? ( sys-apps/util-linux )"
-RDEPEND="${DEPEND_COMMON}
- !net-nds/portmap
- !<sys-apps/openrc-0.13.9
- selinux? (
- sec-policy/selinux-rpc
- sec-policy/selinux-rpcbind
- )
-"
-DEPEND="${DEPEND_COMMON}
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-musl.patch
-)
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.1.4-mtab-sym.patch
- epatch "${FILESDIR}"/${PN}-1.2.8-cross-build.patch
-
- sed \
- -e "/^sbindir/s:= := \"${EPREFIX}\":g" \
- -i utils/*/Makefile.am || die
-
- epatch_user
- eautoreconf
-}
-
-src_configure() {
- export libsqlite3_cv_is_recent=yes # Our DEPEND forces this.
- export ac_cv_header_keyutils_h=$(usex nfsidmap)
- econf \
- --with-statedir="${EPREFIX}"/var/lib/nfs \
- --enable-tirpc \
- --with-tirpcinclude="${EPREFIX}"/usr/include/tirpc/ \
- $(use_enable libmount libmount-mount) \
- $(use_with tcpd tcp-wrappers) \
- $(use_enable nfsdcld nfsdcltrack) \
- $(use_enable nfsv4) \
- $(use_enable nfsv41) \
- $(use_enable ipv6) \
- $(use_enable caps) \
- $(use_enable uuid) \
- $(use_enable kerberos gss) \
- $(use_enable kerberos svcgss) \
- --without-gssglue
-}
-
-src_compile(){
- # remove compiled files bundled in the tarball
- emake clean
- default
-}
-
-src_install() {
- default
- rm linux-nfs/Makefile* || die
- dodoc -r linux-nfs README
-
- # Don't overwrite existing xtab/etab, install the original
- # versions somewhere safe... more info in pkg_postinst
- keepdir /var/lib/nfs/{,sm,sm.bak}
- mv "${ED}"/var/lib "${ED}"/usr/$(get_libdir) || die
-
- # Install some client-side binaries in /sbin
- dodir /sbin
- mv "${ED}"/usr/sbin/rpc.statd "${ED}"/sbin/ || die
-
- if use nfsv4 && use nfsidmap ; then
- # Install a config file for idmappers in newer kernels. #415625
- insinto /etc/request-key.d
- echo 'create id_resolver * * /usr/sbin/nfsidmap -t 600 %k %d' > id_resolver.conf
- doins id_resolver.conf
- fi
-
- insinto /etc
- doins "${FILESDIR}"/exports
- keepdir /etc/exports.d
-
- local f list=() opt_need=""
- if use nfsv4 ; then
- opt_need="rpc.idmapd"
- list+=( rpc.idmapd rpc.pipefs )
- use kerberos && list+=( rpc.gssd rpc.svcgssd )
- fi
- for f in nfs nfsclient rpc.statd "${list[@]}" ; do
- newinitd "${FILESDIR}"/${f}.initd ${f}
- done
- newinitd "${FILESDIR}"/nfsmount.initd-1.3.1 nfsmount # Nuke after 2015/08/01
- for f in nfs nfsclient ; do
- newconfd "${FILESDIR}"/${f}.confd ${f}
- done
- sed -i \
- -e "/^NFS_NEEDED_SERVICES=/s:=.*:=\"${opt_need}\":" \
- "${ED}"/etc/conf.d/nfs || die #234132
-
- systemd_dounit systemd/*.{mount,service,target}
- if ! use nfsv4 || ! use kerberos ; then
- rm "${D}$(systemd_get_unitdir)"/rpc-{gssd,svcgssd}.service || die
- fi
- if ! use nfsv41 ; then
- rm "${D}$(systemd_get_unitdir)"/nfs-blkmap.* || die
- fi
- rm "${D}$(systemd_get_unitdir)"/nfs-config.service || die
- sed -i -r \
- -e "/^EnvironmentFile=/s:=.*:=${EPREFIX}/etc/conf.d/nfs:" \
- -e '/^(After|Wants)=nfs-config.service$/d' \
- -e 's:/usr/sbin/rpc.statd:/sbin/rpc.statd:' \
- "${D}$(systemd_get_unitdir)"/* || die
-
- keepdir /var/lib/nfs #368505
- keepdir /var/lib/nfs/v4recovery #603628
-}
-
-pkg_postinst() {
- # Install default xtab and friends if there's none existing. In
- # src_install we put them in /usr/lib/nfs for safe-keeping, but
- # the daemons actually use the files in /var/lib/nfs. #30486
- local f
- for f in "${EROOT}"/usr/$(get_libdir)/nfs/*; do
- [[ -e ${EROOT}/var/lib/nfs/${f##*/} ]] && continue
- einfo "Copying default ${f##*/} from ${EPREFIX}/usr/$(get_libdir)/nfs to ${EPREFIX}/var/lib/nfs"
- cp -pPR "${f}" "${EROOT}"/var/lib/nfs/
- done
-
- if systemd_is_booted; then
- if [[ ${REPLACING_VERSIONS} < 1.3.0 ]]; then
- ewarn "We have switched to upstream systemd unit files. Since"
- ewarn "they got renamed, you should probably enable the new ones."
- ewarn "You can run 'equery files nfs-utils | grep systemd'"
- ewarn "to know what services you need to enable now."
- fi
- else
- ewarn "If you use OpenRC, the nfsmount service has been replaced with nfsclient."
- ewarn "If you were using nfsmount, please add nfsclient and netmount to the"
- ewarn "same runlevel as nfsmount."
- fi
-}
diff --git a/net-fs/nfs-utils/nfs-utils-2.3.1-r3.ebuild b/net-fs/nfs-utils/nfs-utils-2.3.1-r3.ebuild
deleted file mode 100644
index 432515c..0000000
--- a/net-fs/nfs-utils/nfs-utils-2.3.1-r3.ebuild
+++ /dev/null
@@ -1,187 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic multilib systemd
-
-DESCRIPTION="NFS client and server daemons"
-HOMEPAGE="http://linux-nfs.org/"
-
-if [[ "${PV}" = *_rc* ]] ; then
- inherit versionator
- MY_PV="$(replace_all_version_separators -)"
- SRC_URI="http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=snapshot;h=refs/tags/${PN}-${MY_PV};sf=tgz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-${PN}-${MY_PV}"
-else
- SRC_URI="mirror://sourceforge/nfs/${P}.tar.bz2"
- KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="caps ipv6 kerberos ldap +libmount nfsdcld +nfsidmap +nfsv4 nfsv41 selinux tcpd +uuid"
-REQUIRED_USE="kerberos? ( nfsv4 )"
-RESTRICT="test" #315573
-
-# kth-krb doesn't provide the right include
-# files, and nfs-utils doesn't build against heimdal either,
-# so don't depend on virtual/krb.
-# (04 Feb 2005 agriffis)
-DEPEND_COMMON="
- net-libs/libtirpc:=
- >=net-nds/rpcbind-0.2.4
- sys-libs/e2fsprogs-libs
- caps? ( sys-libs/libcap )
- ldap? ( net-nds/openldap )
- libmount? ( sys-apps/util-linux )
- nfsdcld? ( >=dev-db/sqlite-3.3 )
- nfsv4? (
- dev-libs/libevent:=
- >=sys-apps/keyutils-1.5.9
- kerberos? (
- >=net-libs/libtirpc-0.2.4-r1[kerberos]
- app-crypt/mit-krb5
- )
- )
- nfsv41? (
- sys-fs/lvm2
- )
- tcpd? ( sys-apps/tcp-wrappers )
- uuid? ( sys-apps/util-linux )"
-RDEPEND="${DEPEND_COMMON}
- !net-libs/libnfsidmap
- !net-nds/portmap
- !<sys-apps/openrc-0.13.9
- selinux? (
- sec-policy/selinux-rpc
- sec-policy/selinux-rpcbind
- )
-"
-DEPEND="${DEPEND_COMMON}
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.1.4-mtab-sym.patch
- "${FILESDIR}"/${PN}-1.2.8-cross-build.patch
- "${FILESDIR}"/${P}-svcgssd_undefined_reference.patch #641912
- "${FILESDIR}"/${PN}-musl.patch
-)
-
-src_prepare() {
- default
-
- sed \
- -e "/^sbindir/s:= := \"${EPREFIX}\":g" \
- -i utils/*/Makefile.am || die
-
- eautoreconf
-}
-
-src_configure() {
- export libsqlite3_cv_is_recent=yes # Our DEPEND forces this.
- export ac_cv_header_keyutils_h=$(usex nfsidmap)
- local myeconfargs=(
- --with-statedir="${EPREFIX%/}"/var/lib/nfs
- --enable-tirpc
- --with-tirpcinclude="${EPREFIX%/}"/usr/include/tirpc/
- --with-pluginpath="${EPREFIX%/}"/usr/$(get_libdir)/libnfsidmap
- --with-systemd="$(systemd_get_systemunitdir)"
- --without-gssglue
- $(use_enable caps)
- $(use_enable ipv6)
- $(use_enable kerberos gss)
- $(use_enable kerberos svcgss)
- $(use_enable ldap)
- $(use_enable libmount libmount-mount)
- $(use_enable nfsdcld nfsdcltrack)
- $(use_enable nfsv4)
- $(use_enable nfsv41)
- $(use_enable uuid)
- $(use_with tcpd tcp-wrappers)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile(){
- # remove compiled files bundled in the tarball
- emake clean
- default
-}
-
-src_install() {
- default
- rm linux-nfs/Makefile* || die
- dodoc -r linux-nfs README
-
- # Don't overwrite existing xtab/etab, install the original
- # versions somewhere safe... more info in pkg_postinst
- keepdir /var/lib/nfs/{,sm,sm.bak}
- mv "${ED%/}"/var/lib/nfs "${ED%/}"/usr/$(get_libdir)/ || die
-
- # Install some client-side binaries in /sbin
- dodir /sbin
- mv "${ED%/}"/usr/sbin/rpc.statd "${ED%/}"/sbin/ || die
-
- if use nfsv4 && use nfsidmap ; then
- # Install a config file for idmappers in newer kernels. #415625
- insinto /etc/request-key.d
- echo 'create id_resolver * * /usr/sbin/nfsidmap -t 600 %k %d' > id_resolver.conf
- doins id_resolver.conf
- fi
-
- insinto /etc
- doins "${FILESDIR}"/exports
- keepdir /etc/exports.d
-
- local f list=() opt_need=""
- if use nfsv4 ; then
- opt_need="rpc.idmapd"
- list+=( rpc.idmapd rpc.pipefs )
- use kerberos && list+=( rpc.gssd rpc.svcgssd )
- fi
- for f in nfs nfsclient rpc.statd "${list[@]}" ; do
- newinitd "${FILESDIR}"/${f}.initd ${f}
- done
- newinitd "${FILESDIR}"/nfsmount.initd-1.3.1 nfsmount # Nuke after 2015/08/01
- for f in nfs nfsclient ; do
- newconfd "${FILESDIR}"/${f}.confd ${f}
- done
- sed -i \
- -e "/^NFS_NEEDED_SERVICES=/s:=.*:=\"${opt_need}\":" \
- "${ED%/}"/etc/conf.d/nfs || die #234132
-
- local systemd_systemunitdir="$(systemd_get_systemunitdir)"
- sed -i \
- -e 's:/usr/sbin/rpc.statd:/sbin/rpc.statd:' \
- "${ED%/}${systemd_systemunitdir}"/* || die
-
- keepdir /var/lib/nfs #368505
- keepdir /var/lib/nfs/v4recovery #603628
-
-}
-
-pkg_postinst() {
- # Install default xtab and friends if there's none existing. In
- # src_install we put them in /usr/lib/nfs for safe-keeping, but
- # the daemons actually use the files in /var/lib/nfs. #30486
- local f
- for f in "${EROOT%/}"/usr/$(get_libdir)/nfs/*; do
- [[ -e ${EROOT%/}/var/lib/nfs/${f##*/} ]] && continue
- einfo "Copying default ${f##*/} from ${EPREFIX}/usr/$(get_libdir)/nfs to ${EPREFIX}/var/lib/nfs"
- cp -pPR "${f}" "${EROOT%/}"/var/lib/nfs/
- done
-
- if systemd_is_booted; then
- if [[ ${REPLACING_VERSIONS} < 1.3.0 ]]; then
- ewarn "We have switched to upstream systemd unit files. Since"
- ewarn "they got renamed, you should probably enable the new ones."
- ewarn "You can run 'equery files nfs-utils | grep systemd'"
- ewarn "to know what services you need to enable now."
- fi
- else
- ewarn "If you use OpenRC, the nfsmount service has been replaced with nfsclient."
- ewarn "If you were using nfsmount, please add nfsclient and netmount to the"
- ewarn "same runlevel as nfsmount."
- fi
-}
diff --git a/net-fs/nfs-utils/nfs-utils-2.3.3.ebuild b/net-fs/nfs-utils/nfs-utils-2.5.3-r1.ebuild
index 82f23c9..60ec533 100644
--- a/net-fs/nfs-utils/nfs-utils-2.3.3.ebuild
+++ b/net-fs/nfs-utils/nfs-utils-2.5.3-r1.ebuild
@@ -1,21 +1,20 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit autotools flag-o-matic multilib systemd
+inherit autotools linux-info systemd
DESCRIPTION="NFS client and server daemons"
HOMEPAGE="http://linux-nfs.org/"
if [[ "${PV}" = *_rc* ]] ; then
- inherit versionator
- MY_PV="$(replace_all_version_separators -)"
+ MY_PV="$(ver_rs 1- -)"
SRC_URI="http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=snapshot;h=refs/tags/${PN}-${MY_PV};sf=tgz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${PN}-${MY_PV}"
else
SRC_URI="mirror://sourceforge/nfs/${P}.tar.bz2"
- KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
LICENSE="GPL-2"
@@ -28,17 +27,18 @@ RESTRICT="test" #315573
# files, and nfs-utils doesn't build against heimdal either,
# so don't depend on virtual/krb.
# (04 Feb 2005 agriffis)
-DEPEND_COMMON="
+DEPEND="
+ >=dev-db/sqlite-3.3
+ dev-libs/libxml2
net-libs/libtirpc:=
>=net-nds/rpcbind-0.2.4
sys-libs/e2fsprogs-libs
caps? ( sys-libs/libcap )
ldap? ( net-nds/openldap )
libmount? ( sys-apps/util-linux )
- nfsdcld? ( >=dev-db/sqlite-3.3 )
nfsv4? (
dev-libs/libevent:=
- >=sys-apps/keyutils-1.5.9
+ >=sys-apps/keyutils-1.5.9:=
kerberos? (
>=net-libs/libtirpc-0.2.4-r1[kerberos]
app-crypt/mit-krb5
@@ -49,7 +49,7 @@ DEPEND_COMMON="
)
tcpd? ( sys-apps/tcp-wrappers )
uuid? ( sys-apps/util-linux )"
-RDEPEND="${DEPEND_COMMON}
+RDEPEND="${DEPEND}
!net-libs/libnfsidmap
!net-nds/portmap
!<sys-apps/openrc-0.13.9
@@ -58,22 +58,35 @@ RDEPEND="${DEPEND_COMMON}
sec-policy/selinux-rpcbind
)
"
-DEPEND="${DEPEND_COMMON}
- dev-libs/libxml2
+BDEPEND="
net-libs/rpcsvc-proto
- virtual/pkgconfig"
+ virtual/pkgconfig
+"
PATCHES=(
- "${FILESDIR}"/${PN}-1.1.4-mtab-sym.patch
- "${FILESDIR}"/${PN}-1.2.8-cross-build.patch
- "${FILESDIR}"/${PN}-2.3.2-junction_libs.patch
- "${FILESDIR}"/${PN}-2.3.2-no-werror.patch
- "${FILESDIR}"/${PN}-musl.patch
+ "${FILESDIR}"/${PN}-2.5.2-no-werror.patch
+ "${FILESDIR}"/${PN}-2.4.2-Ensure-consistent-struct-stat.patch
)
+pkg_setup() {
+ linux-info_pkg_setup
+ if use nfsv4 && ! use nfsdcld && linux_config_exists && ! linux_chkconfig_present CRYPTO_MD5 ; then
+ ewarn "Your NFS server will be unable to track clients across server restarts!"
+ ewarn "Please enable the \"${HILITE}nfsdcld${NORMAL}\" USE flag to install the nfsdcltrack usermode"
+ ewarn "helper upcall program, or enable ${HILITE}CONFIG_CRYPTO_MD5${NORMAL} in your kernel to"
+ ewarn "support the legacy, in-kernel client tracker."
+ fi
+}
+
src_prepare() {
default
+ if use elibc_musl; then
+ eapply "${FILESDIR}/musl-time64.patch"
+ eapply "${FILESDIR}/musl-getservbyport.patch"
+ eapply "${FILESDIR}/musl-svcgssd-sysconf.patch"
+ fi
+
sed \
-e "/^sbindir/s:= := \"${EPREFIX}\":g" \
-i utils/*/Makefile.am || die
@@ -85,10 +98,11 @@ src_configure() {
export libsqlite3_cv_is_recent=yes # Our DEPEND forces this.
export ac_cv_header_keyutils_h=$(usex nfsidmap)
local myeconfargs=(
- --with-statedir="${EPREFIX%/}"/var/lib/nfs
+ --disable-static
+ --with-statedir="${EPREFIX}"/var/lib/nfs
--enable-tirpc
- --with-tirpcinclude="${EPREFIX%/}"/usr/include/tirpc/
- --with-pluginpath="${EPREFIX%/}"/usr/$(get_libdir)/libnfsidmap
+ --with-tirpcinclude="${ESYSROOT}"/usr/include/tirpc/
+ --with-pluginpath="${EPREFIX}"/usr/$(get_libdir)/libnfsidmap
--with-rpcgen
--with-systemd="$(systemd_get_systemunitdir)"
--without-gssglue
@@ -108,7 +122,7 @@ src_configure() {
econf "${myeconfargs[@]}"
}
-src_compile(){
+src_compile() {
# remove compiled files bundled in the tarball
emake clean
default
@@ -122,13 +136,16 @@ src_install() {
# Don't overwrite existing xtab/etab, install the original
# versions somewhere safe... more info in pkg_postinst
keepdir /var/lib/nfs/{,sm,sm.bak}
- mv "${ED%/}"/var/lib/nfs "${ED%/}"/usr/$(get_libdir)/ || die
+ mv "${ED}"/var/lib/nfs "${ED}"/usr/$(get_libdir)/ || die
# Install some client-side binaries in /sbin
dodir /sbin
- mv "${ED%/}"/usr/sbin/rpc.statd "${ED%/}"/sbin/ || die
+ mv "${ED}"/usr/sbin/rpc.statd "${ED}"/sbin/ || die
if use nfsv4 && use nfsidmap ; then
+ insinto /etc
+ doins support/nfsidmap/idmapd.conf
+
# Install a config file for idmappers in newer kernels. #415625
insinto /etc/request-key.d
echo 'create id_resolver * * /usr/sbin/nfsidmap -t 600 %k %d' > id_resolver.conf
@@ -154,16 +171,18 @@ src_install() {
done
sed -i \
-e "/^NFS_NEEDED_SERVICES=/s:=.*:=\"${opt_need}\":" \
- "${ED%/}"/etc/conf.d/nfs || die #234132
+ "${ED}"/etc/conf.d/nfs || die #234132
local systemd_systemunitdir="$(systemd_get_systemunitdir)"
sed -i \
-e 's:/usr/sbin/rpc.statd:/sbin/rpc.statd:' \
- "${ED%/}${systemd_systemunitdir}"/* || die
+ "${ED}${systemd_systemunitdir}"/* || die
keepdir /var/lib/nfs #368505
keepdir /var/lib/nfs/v4recovery #603628
+ # no static archives
+ find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
@@ -171,19 +190,21 @@ pkg_postinst() {
# src_install we put them in /usr/lib/nfs for safe-keeping, but
# the daemons actually use the files in /var/lib/nfs. #30486
local f
- for f in "${EROOT%/}"/usr/$(get_libdir)/nfs/*; do
- [[ -e ${EROOT%/}/var/lib/nfs/${f##*/} ]] && continue
+ for f in "${EROOT}"/usr/$(get_libdir)/nfs/*; do
+ [[ -e ${EROOT}/var/lib/nfs/${f##*/} ]] && continue
einfo "Copying default ${f##*/} from ${EPREFIX}/usr/$(get_libdir)/nfs to ${EPREFIX}/var/lib/nfs"
- cp -pPR "${f}" "${EROOT%/}"/var/lib/nfs/
+ cp -pPR "${f}" "${EROOT}"/var/lib/nfs/
done
if systemd_is_booted; then
- if [[ ${REPLACING_VERSIONS} < 1.3.0 ]]; then
- ewarn "We have switched to upstream systemd unit files. Since"
- ewarn "they got renamed, you should probably enable the new ones."
- ewarn "You can run 'equery files nfs-utils | grep systemd'"
- ewarn "to know what services you need to enable now."
- fi
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 1.3.0; then
+ ewarn "We have switched to upstream systemd unit files. Since"
+ ewarn "they got renamed, you should probably enable the new ones."
+ ewarn "You can run 'equery files nfs-utils | grep systemd'"
+ ewarn "to know what services you need to enable now."
+ fi
+ done
else
ewarn "If you use OpenRC, the nfsmount service has been replaced with nfsclient."
ewarn "If you were using nfsmount, please add nfsclient and netmount to the"
diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest
index dd0f270..edeccfb 100644
--- a/net-fs/samba/Manifest
+++ b/net-fs/samba/Manifest
@@ -1,4 +1,2 @@
-DIST samba-4.12.12.tar.gz 18252232 BLAKE2B 4e5fabdbbcbf1df5e4a8966fbd55923c7fe97c4449574f0c17864dd9376197539ea29f59e00fc4fbb58ce18d4c7fcd8ab24e8f892edc9b32c646215287fc4bb7 SHA512 45ebed4cc73990993e800605391715afa2aa044e92bf89a62eb3ccbff97be2c9c4bf4a1f840a5d5d1d0c02704435c074e4ae386ca1729066b706c236c898c08f
-DIST samba-4.12.9.tar.gz 18236198 BLAKE2B e19cbbbb8416626ca2fe769bf26f3645e94f23781538b3c5e1f94ce618efb807d0732e5591525ec066a31cc0211463b9b66105d1d499989012d624edaa2a132c SHA512 8bd3122bcaab2f5a16a73902a9b628384063a8116a08f0254541e05c148016839b3215c60ff0d3291a332e7884708950ad64137204b0ac19801012d3b6684fa6
-DIST samba-4.13.5.tar.gz 18426722 BLAKE2B d84b71cd8a925270670b7d302b527ee116cecf9d603baf1fc69c8527c657d5e2430e1b51e951476525fd95dc3392e5642a829a646c0eb254ccd7530bd393f1a4 SHA512 4187337fecf60fa133c6e81e894634f36028d34ccc521e5e856a5736a4f58fc2ad2cd136a206d141f17f7bc519a6168a27e83705fb2d38559667a60b24ad1c1f
-DIST samba-4.14.0.tar.gz 18635518 BLAKE2B ad1d091886b5da536a73bdbd4075f7ddc247e13a514e26c9bf993e8da5a3d737662ddd859c60d47a9a597e1326b96d7e8d083d5b15074f5875495cf68db58a24 SHA512 cf5767fc49b8c5832dd9711765e0b395a07964c3a618de10ae491123de7141eb4f083194b6120f302f5c4a196837a14070b8a8324412e8957af3706a5bbc6f11
+DIST samba-4.13.9.tar.gz 18443813 BLAKE2B 24046586f666e9db02e1dd71d7eb854691f39e6b575b9652a8b7c1aa5569c856dfd48911e3f221de74f9deec5808152fa2836d03bb9810d55d4f526f1567574b SHA512 35c98979c1141fe4bd700e3c8f2439ec08876697faeaced6668ea6a9fea1d8303ca34e82123499aa4a41054b9ed6e1260ae779ea8d59978ba6de6b5861f21948
+DIST samba-4.14.4.tar.gz 18645552 BLAKE2B 4fbf4b000496b66c7c464a4b522108fde12df30dda90d0a86143c2a9ffa9d8907bbeab1bbad8974f87d4851f0afc31315ab52f27b23d19131934e89659c4e270 SHA512 200b2b2b08b369915e045f22ee993d5deea7a2533c6c582d4b88c614adcad5529109d449e843a2a1f292e5cfb1877d66421b5b0801ad988896cbe5413717e4dc
diff --git a/net-fs/samba/samba-4.12.12.ebuild b/net-fs/samba/samba-4.12.12.ebuild
deleted file mode 100644
index 43e2eab..0000000
--- a/net-fs/samba/samba-4.12.12.ebuild
+++ /dev/null
@@ -1,338 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{7,8} )
-PYTHON_REQ_USE='threads(+),xml(+)'
-inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles
-
-MY_PV="${PV/_rc/rc}"
-MY_P="${PN}-${MY_PV}"
-
-SRC_PATH="stable"
-[[ ${PV} = *_rc* ]] && SRC_PATH="rc"
-
-SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz"
-[[ ${PV} = *_rc* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-
-DESCRIPTION="Samba Suite Version 4"
-HOMEPAGE="https://www.samba.org/"
-LICENSE="GPL-3"
-
-SLOT="0"
-
-IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam glusterfs
-gpg iprint json ldap ntvfs pam profiling-data python quota +regedit selinux
-snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind
-zeroconf"
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/samba-4.0/policy.h
- /usr/include/samba-4.0/dcerpc_server.h
- /usr/include/samba-4.0/ctdb.h
- /usr/include/samba-4.0/ctdb_client.h
- /usr/include/samba-4.0/ctdb_protocol.h
- /usr/include/samba-4.0/ctdb_private.h
- /usr/include/samba-4.0/ctdb_typesafe_cb.h
- /usr/include/samba-4.0/ctdb_version.h
-)
-
-CDEPEND="
- >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}]
- dev-lang/perl:=
- dev-libs/icu:=[${MULTILIB_USEDEP}]
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/libtasn1[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- dev-perl/Parse-Yapp
- >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
- net-libs/libnsl:=[${MULTILIB_USEDEP}]
- sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.1.4[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.2.0[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:0=
- sys-libs/readline:0=
- >=sys-libs/talloc-2.3.1[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.3[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.10.2[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- sys-libs/zlib[${MULTILIB_USEDEP}]
- virtual/libiconv
- pam? ( sys-libs/pam )
- acl? ( virtual/acl )
- $(python_gen_cond_dep "
- dev-python/subunit[\${PYTHON_MULTI_USEDEP},${MULTILIB_USEDEP}]
- addns? (
- net-dns/bind-tools[gssapi]
- dev-python/dnspython:=[\${PYTHON_MULTI_USEDEP}]
- )
- ")
- ceph? ( sys-cluster/ceph )
- cluster? (
- net-libs/rpcsvc-proto
- !dev-db/ctdb
- )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- dmapi? ( sys-apps/dmapi )
- fam? ( virtual/fam )
- gpg? ( app-crypt/gpgme )
- json? ( dev-libs/jansson )
- ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
- snapper? ( sys-apps/dbus )
- system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] )
- system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:0= )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${CDEPEND}
- ${PYTHON_DEPS}
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- virtual/pkgconfig
- || (
- net-libs/rpcsvc-proto
- <sys-libs/glibc-2.26[rpc(+)]
- )
- spotlight? ( dev-libs/glib )
- test? (
- !system-mitkrb5? (
- >=sys-libs/nss_wrapper-1.1.3
- >=net-dns/resolv_wrapper-1.1.4
- >=net-libs/socket_wrapper-1.1.9
- >=sys-libs/uid_wrapper-1.2.1
- )
- )"
-RDEPEND="${CDEPEND}
- python? ( ${PYTHON_DEPS} )
- client? ( net-fs/cifs-utils[ads?] )
- selinux? ( sec-policy/selinux-samba )
-"
-
-BDEPEND="
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
-"
-
-REQUIRED_USE="
- addc? ( python json winbind )
- addns? ( python )
- ads? ( acl ldap winbind )
- cluster? ( ads )
- gpg? ( addc )
- ntvfs? ( addc )
- spotlight? ( json )
- test? ( python )
- ?? ( system-heimdal system-mitkrb5 )
- ${PYTHON_REQUIRED_USE}
-"
-
-# the test suite is messed, it uses system-installed samba
-# bits instead of what was built, tests things disabled via use
-# flags, and generally just fails to work in a way ebuilds could
-# rely on in its current state
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.4.0-pam.patch"
- "${FILESDIR}/${PN}-4.9.2-timespec.patch"
- "${FILESDIR}/${PN}-4.13-vfs_snapper_configure_option.patch"
-)
-
-#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)"
-CONFDIR="${FILESDIR}/4.4"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
-
- python-single-r1_pkg_setup
- if use cluster ; then
- SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS="idmap_ad"
- fi
-}
-
-src_prepare() {
- default
-
- # un-bundle dnspython
- sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die
-
- # unbundle iso8601 unless tests are enabled
- if ! use test ; then
- sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die
- fi
-
- ## ugly hackaround for bug #592502
- #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die
-
- sed -e 's:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- if use elibc_musl ; then
- eapply "${FILESDIR}"/add_missing___compar_fn_t.patch
- eapply "${FILESDIR}"/fix-musl-lib-without-innetgr.patch
- eapply "${FILESDIR}"/getpwent_r.patch
- eapply "${FILESDIR}"/missing-headers.patch
- eapply "${FILESDIR}"/musl_rm_unistd_incl.patch
- eapply "${FILESDIR}"/musl_uintptr.patch
- eapply "${FILESDIR}"/netdb-defines.patch
- fi
-
- # Friggin' WAF shit
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- # when specifying libs for samba build you must append NONE to the end to
- # stop it automatically including things
- local bundled_libs="NONE"
- if ! use system-heimdal && ! use system-mitkrb5 ; then
- bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE"
- fi
-
- local myconf=(
- --enable-fhs
- --sysconfdir="${EPREFIX}/etc"
- --localstatedir="${EPREFIX}/var"
- --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba"
- --with-piddir="${EPREFIX}/run/${PN}"
- --bundled-libraries="${bundled_libs}"
- --builtin-libraries=NONE
- --disable-rpath
- --disable-rpath-install
- --nopyc
- --nopyo
- --without-winexe
- $(multilib_native_use_with acl acl-support)
- $(multilib_native_usex addc '' '--without-ad-dc')
- $(multilib_native_use_with addns dnsupdate)
- $(multilib_native_use_with ads)
- $(multilib_native_use_enable ceph cephfs)
- $(multilib_native_use_with cluster cluster-support)
- $(multilib_native_use_enable cups)
- $(multilib_native_use_with dmapi)
- $(multilib_native_use_with fam)
- $(multilib_native_use_enable glusterfs)
- $(multilib_native_use_with gpg gpgme)
- $(multilib_native_use_with json)
- $(multilib_native_use_enable iprint)
- $(multilib_native_use_with ntvfs ntvfs-fileserver)
- $(multilib_native_use_with pam)
- $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '')
- $(multilib_native_use_with quota quotas)
- $(multilib_native_use_with regedit)
- $(multilib_native_use_enable snapper)
- $(multilib_native_use_enable spotlight)
- $(multilib_native_use_with syslog)
- $(multilib_native_use_with systemd)
- --systemd-install-services
- --with-systemddir="$(systemd_get_systemunitdir)"
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usex system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')" '')
- $(use_with debug lttng)
- $(use_with ldap)
- $(use_with profiling-data)
- # bug #683148
- --jobs 1
- )
-
- multilib_is_native_abi && myconf+=( --with-shared-modules=${SHAREDMODS} )
-
- CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
-
- if multilib_is_native_abi ; then
- # install ldap schema for server (bug #491002)
- if use ldap ; then
- insinto /etc/openldap/schema
- doins examples/LDAP/samba.schema
- fi
-
- # create symlink for cups (bug #552310)
- if use cups ; then
- dosym ../../../bin/smbspool /usr/libexec/cups/backend/smb
- fi
-
- # install example config file
- insinto /etc/samba
- doins examples/smb.conf.default
-
- # Fix paths in example file (#603964)
- sed \
- -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \
- -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \
- -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \
- -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \
- -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \
- -i "${ED%/}"/etc/samba/smb.conf.default || die
-
- # Install init script and conf.d file
- newinitd "${CONFDIR}/samba4.initd-r1" samba
- newconfd "${CONFDIR}/samba4.confd" samba
-
- dotmpfiles "${FILESDIR}"/samba.conf
- use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die
-
- # Preserve functionality for old gentoo-specific unit names
- dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service"
- dosym smb.service "$(systemd_get_systemunitdir)/smbd.service"
- dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service"
- fi
-
- if use pam && use winbind ; then
- newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind
- # bugs #376853 and #590374
- insinto /etc/security
- doins examples/pam_winbind/pam_winbind.conf
- fi
-
- keepdir /var/cache/samba
- keepdir /var/lib/ctdb
- keepdir /var/lib/samba/{bind-dns,private}
- keepdir /var/lock/samba
- keepdir /var/log/samba
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "test failed"
- fi
-}
-
-pkg_postinst() {
- ewarn "Be aware that this release contains the best of all of Samba's"
- ewarn "technology parts, both a file server (that you can reasonably expect"
- ewarn "to upgrade existing Samba 3.x releases to) and the AD domain"
- ewarn "controller work previously known as 'samba4'."
-
- elog "For further information and migration steps make sure to read "
- elog "https://samba.org/samba/history/${P}.html "
- elog "https://wiki.samba.org/index.php/Samba4/HOWTO "
-}
diff --git a/net-fs/samba/samba-4.12.9-r1.ebuild b/net-fs/samba/samba-4.12.9-r1.ebuild
deleted file mode 100644
index a1377ff..0000000
--- a/net-fs/samba/samba-4.12.9-r1.ebuild
+++ /dev/null
@@ -1,339 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python3_{7,8} )
-PYTHON_REQ_USE='threads(+),xml(+)'
-inherit python-single-r1 waf-utils multilib-minimal linux-info systemd pam tmpfiles
-
-MY_PV="${PV/_rc/rc}"
-MY_P="${PN}-${MY_PV}"
-
-SRC_PATH="stable"
-[[ ${PV} = *_rc* ]] && SRC_PATH="rc"
-
-SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz"
-[[ ${PV} = *_rc* ]] || \
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-
-DESCRIPTION="Samba Suite Version 4"
-HOMEPAGE="https://www.samba.org/"
-LICENSE="GPL-3"
-
-SLOT="0"
-
-IUSE="acl addc addns ads ceph client cluster cups debug dmapi fam glusterfs
-gpg iprint json ldap ntvfs pam profiling-data python quota +regedit selinux
-snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test winbind
-zeroconf"
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/samba-4.0/policy.h
- /usr/include/samba-4.0/dcerpc_server.h
- /usr/include/samba-4.0/ctdb.h
- /usr/include/samba-4.0/ctdb_client.h
- /usr/include/samba-4.0/ctdb_protocol.h
- /usr/include/samba-4.0/ctdb_private.h
- /usr/include/samba-4.0/ctdb_typesafe_cb.h
- /usr/include/samba-4.0/ctdb_version.h
-)
-
-CDEPEND="
- >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}]
- dev-lang/perl:=
- dev-libs/icu:=[${MULTILIB_USEDEP}]
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/libtasn1[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- dev-perl/Parse-Yapp
- >=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
- net-libs/libnsl:=[${MULTILIB_USEDEP}]
- sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.1.4[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.2.0[ldap(+)?,python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- sys-libs/libcap[${MULTILIB_USEDEP}]
- sys-libs/liburing:=[${MULTILIB_USEDEP}]
- sys-libs/ncurses:0=
- sys-libs/readline:0=
- >=sys-libs/talloc-2.3.1[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.3[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.10.2[python?,${PYTHON_SINGLE_USEDEP},${MULTILIB_USEDEP}]
- sys-libs/zlib[${MULTILIB_USEDEP}]
- virtual/libiconv
- pam? ( sys-libs/pam )
- acl? ( virtual/acl )
- $(python_gen_cond_dep "
- dev-python/subunit[\${PYTHON_MULTI_USEDEP},${MULTILIB_USEDEP}]
- addns? (
- net-dns/bind-tools[gssapi]
- dev-python/dnspython:=[\${PYTHON_MULTI_USEDEP}]
- )
- ")
- ceph? ( sys-cluster/ceph )
- cluster? (
- net-libs/rpcsvc-proto
- !dev-db/ctdb
- )
- cups? ( net-print/cups )
- debug? ( dev-util/lttng-ust )
- dmapi? ( sys-apps/dmapi )
- fam? ( virtual/fam )
- gpg? ( app-crypt/gpgme )
- json? ( dev-libs/jansson )
- ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
- snapper? ( sys-apps/dbus )
- system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] )
- system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] )
- systemd? ( sys-apps/systemd:0= )
- zeroconf? ( net-dns/avahi[dbus] )
-"
-DEPEND="${CDEPEND}
- ${PYTHON_DEPS}
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- virtual/pkgconfig
- || (
- net-libs/rpcsvc-proto
- <sys-libs/glibc-2.26[rpc(+)]
- )
- spotlight? ( dev-libs/glib )
- test? (
- !system-mitkrb5? (
- >=sys-libs/nss_wrapper-1.1.3
- >=net-dns/resolv_wrapper-1.1.4
- >=net-libs/socket_wrapper-1.1.9
- >=sys-libs/uid_wrapper-1.2.1
- )
- )"
-RDEPEND="${CDEPEND}
- python? ( ${PYTHON_DEPS} )
- client? ( net-fs/cifs-utils[ads?] )
- selinux? ( sec-policy/selinux-samba )
-"
-
-BDEPEND="
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
-"
-
-REQUIRED_USE="
- addc? ( python json winbind )
- addns? ( python )
- ads? ( acl ldap winbind )
- cluster? ( ads )
- gpg? ( addc )
- ntvfs? ( addc )
- spotlight? ( json )
- test? ( python )
- ?? ( system-heimdal system-mitkrb5 )
- ${PYTHON_REQUIRED_USE}
-"
-
-# the test suite is messed, it uses system-installed samba
-# bits instead of what was built, tests things disabled via use
-# flags, and generally just fails to work in a way ebuilds could
-# rely on in its current state
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.4.0-pam.patch"
- "${FILESDIR}/${PN}-4.9.2-timespec.patch"
- "${FILESDIR}/${PN}-4.13-winexe_option.patch"
- "${FILESDIR}/${PN}-4.13-vfs_snapper_configure_option.patch"
-)
-
-#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)"
-CONFDIR="${FILESDIR}/4.4"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-SHAREDMODS=""
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
-
- python-single-r1_pkg_setup
- if use cluster ; then
- SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad"
- elif use ads ; then
- SHAREDMODS="idmap_ad"
- fi
-}
-
-src_prepare() {
- default
-
- # un-bundle dnspython
- sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die
-
- # unbundle iso8601 unless tests are enabled
- if ! use test ; then
- sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die
- fi
-
- ## ugly hackaround for bug #592502
- #cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die
-
- sed -e 's:<gpgme\.h>:<gpgme/gpgme.h>:' \
- -i source4/dsdb/samdb/ldb_modules/password_hash.c \
- || die
-
- if use elibc_musl ; then
- eapply "${FILESDIR}"/add_missing___compar_fn_t.patch
- eapply "${FILESDIR}"/fix-musl-lib-without-innetgr.patch
- eapply "${FILESDIR}"/getpwent_r.patch
- eapply "${FILESDIR}"/missing-headers.patch
- eapply "${FILESDIR}"/musl_rm_unistd_incl.patch
- eapply "${FILESDIR}"/musl_uintptr.patch
- eapply "${FILESDIR}"/netdb-defines.patch
- fi
-
- # Friggin' WAF shit
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- # when specifying libs for samba build you must append NONE to the end to
- # stop it automatically including things
- local bundled_libs="NONE"
- if ! use system-heimdal && ! use system-mitkrb5 ; then
- bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE"
- fi
-
- local myconf=(
- --enable-fhs
- --sysconfdir="${EPREFIX}/etc"
- --localstatedir="${EPREFIX}/var"
- --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba"
- --with-piddir="${EPREFIX}/run/${PN}"
- --bundled-libraries="${bundled_libs}"
- --builtin-libraries=NONE
- --disable-rpath
- --disable-rpath-install
- --nopyc
- --nopyo
- --without-winexe
- $(multilib_native_use_with acl acl-support)
- $(multilib_native_usex addc '' '--without-ad-dc')
- $(multilib_native_use_with addns dnsupdate)
- $(multilib_native_use_with ads)
- $(multilib_native_use_enable ceph cephfs)
- $(multilib_native_use_with cluster cluster-support)
- $(multilib_native_use_enable cups)
- $(multilib_native_use_with dmapi)
- $(multilib_native_use_with fam)
- $(multilib_native_use_enable glusterfs)
- $(multilib_native_use_with gpg gpgme)
- $(multilib_native_use_with json)
- $(multilib_native_use_enable iprint)
- $(multilib_native_use_with ntvfs ntvfs-fileserver)
- $(multilib_native_use_with pam)
- $(multilib_native_usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '')
- $(multilib_native_use_with quota quotas)
- $(multilib_native_use_with regedit)
- $(multilib_native_use_enable snapper)
- $(multilib_native_use_enable spotlight)
- $(multilib_native_use_with syslog)
- $(multilib_native_use_with systemd)
- --systemd-install-services
- --with-systemddir="$(systemd_get_systemunitdir)"
- $(multilib_native_use_with winbind)
- $(multilib_native_usex python '' '--disable-python')
- $(multilib_native_use_enable zeroconf avahi)
- $(multilib_native_usex test '--enable-selftest' '')
- $(usex system-mitkrb5 "--with-system-mitkrb5 $(multilib_native_usex addc --with-experimental-mit-ad-dc '')" '')
- $(use_with debug lttng)
- $(use_with ldap)
- $(use_with profiling-data)
- # bug #683148
- --jobs 1
- )
-
- multilib_is_native_abi && myconf+=( --with-shared-modules=${SHAREDMODS} )
-
- CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \
- waf-utils_src_configure ${myconf[@]}
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- # Make all .so files executable
- find "${ED}" -type f -name "*.so" -exec chmod +x {} + || die
-
- if multilib_is_native_abi ; then
- # install ldap schema for server (bug #491002)
- if use ldap ; then
- insinto /etc/openldap/schema
- doins examples/LDAP/samba.schema
- fi
-
- # create symlink for cups (bug #552310)
- if use cups ; then
- dosym ../../../bin/smbspool /usr/libexec/cups/backend/smb
- fi
-
- # install example config file
- insinto /etc/samba
- doins examples/smb.conf.default
-
- # Fix paths in example file (#603964)
- sed \
- -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \
- -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \
- -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \
- -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \
- -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \
- -i "${ED%/}"/etc/samba/smb.conf.default || die
-
- # Install init script and conf.d file
- newinitd "${CONFDIR}/samba4.initd-r1" samba
- newconfd "${CONFDIR}/samba4.confd" samba
-
- dotmpfiles "${FILESDIR}"/samba.conf
- use addc || rm "${D}/$(systemd_get_systemunitdir)/samba.service" || die
-
- # Preserve functionality for old gentoo-specific unit names
- dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service"
- dosym smb.service "$(systemd_get_systemunitdir)/smbd.service"
- dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service"
- fi
-
- if use pam && use winbind ; then
- newpamd "${CONFDIR}/system-auth-winbind.pam" system-auth-winbind
- # bugs #376853 and #590374
- insinto /etc/security
- doins examples/pam_winbind/pam_winbind.conf
- fi
-
- keepdir /var/cache/samba
- keepdir /var/lib/ctdb
- keepdir /var/lib/samba/{bind-dns,private}
- keepdir /var/lock/samba
- keepdir /var/log/samba
-}
-
-multilib_src_test() {
- if multilib_is_native_abi ; then
- "${WAF_BINARY}" test || die "test failed"
- fi
-}
-
-pkg_postinst() {
- ewarn "Be aware that this release contains the best of all of Samba's"
- ewarn "technology parts, both a file server (that you can reasonably expect"
- ewarn "to upgrade existing Samba 3.x releases to) and the AD domain"
- ewarn "controller work previously known as 'samba4'."
-
- elog "For further information and migration steps make sure to read "
- elog "https://samba.org/samba/history/${P}.html "
- elog "https://wiki.samba.org/index.php/Samba4/HOWTO "
-}
diff --git a/net-fs/samba/samba-4.13.5.ebuild b/net-fs/samba/samba-4.13.9.ebuild
index c1ba9da..5816567 100644
--- a/net-fs/samba/samba-4.13.5.ebuild
+++ b/net-fs/samba/samba-4.13.9.ebuild
@@ -16,7 +16,7 @@ if [[ ${PV} = *_rc* ]]; then
SRC_URI="mirror://samba/rc/${MY_P}.tar.gz"
else
SRC_URI="mirror://samba/stable/${MY_P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
fi
S="${WORKDIR}/${MY_P}"
@@ -68,7 +68,7 @@ COMMON_DEPEND="
>=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
net-libs/libnsl:=[${MULTILIB_USEDEP}]
sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.2.0[ldap(+)?,${MULTILIB_USEDEP}]
+ >=sys-libs/ldb-2.2.1[ldap(+)?,${MULTILIB_USEDEP}]
<sys-libs/ldb-2.3.0[ldap(+)?,${MULTILIB_USEDEP}]
sys-libs/libcap[${MULTILIB_USEDEP}]
sys-libs/liburing:=[${MULTILIB_USEDEP}]
@@ -79,7 +79,6 @@ COMMON_DEPEND="
>=sys-libs/tevent-0.10.2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
virtual/libiconv
- acl? ( virtual/acl )
$(python_gen_cond_dep "
dev-python/subunit[\${PYTHON_MULTI_USEDEP},${MULTILIB_USEDEP}]
addns? (
@@ -87,6 +86,8 @@ COMMON_DEPEND="
net-dns/bind-tools[gssapi]
)
")
+ !alpha? ( !sparc? ( sys-libs/libunwind:= ) )
+ acl? ( virtual/acl )
ceph? ( sys-cluster/ceph )
cluster? ( net-libs/rpcsvc-proto )
cups? ( net-print/cups )
diff --git a/net-fs/samba/samba-4.14.0.ebuild b/net-fs/samba/samba-4.14.4.ebuild
index 6a7cfe0..5191a31 100644
--- a/net-fs/samba/samba-4.14.0.ebuild
+++ b/net-fs/samba/samba-4.14.4.ebuild
@@ -68,8 +68,8 @@ COMMON_DEPEND="
>=net-libs/gnutls-3.4.7[${MULTILIB_USEDEP}]
net-libs/libnsl:=[${MULTILIB_USEDEP}]
sys-libs/e2fsprogs-libs[${MULTILIB_USEDEP}]
- >=sys-libs/ldb-2.2.0[ldap(+)?,${MULTILIB_USEDEP}]
- <sys-libs/ldb-2.3.0[ldap(+)?,${MULTILIB_USEDEP}]
+ >=sys-libs/ldb-2.3.0[ldap(+)?,${MULTILIB_USEDEP}]
+ <sys-libs/ldb-2.4.0[ldap(+)?,${MULTILIB_USEDEP}]
sys-libs/libcap[${MULTILIB_USEDEP}]
sys-libs/liburing:=[${MULTILIB_USEDEP}]
sys-libs/ncurses:0=
@@ -79,14 +79,19 @@ COMMON_DEPEND="
>=sys-libs/tevent-0.10.2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
virtual/libiconv
- acl? ( virtual/acl )
$(python_gen_cond_dep "
dev-python/subunit[\${PYTHON_MULTI_USEDEP},${MULTILIB_USEDEP}]
+ addc? (
+ dev-python/dnspython:=[\${PYTHON_MULTI_USEDEP}]
+ dev-python/markdown[\${PYTHON_MULTI_USEDEP}]
+ )
addns? (
dev-python/dnspython:=[\${PYTHON_MULTI_USEDEP}]
net-dns/bind-tools[gssapi]
)
")
+ !alpha? ( !sparc? ( sys-libs/libunwind:= ) )
+ acl? ( virtual/acl )
ceph? ( sys-cluster/ceph )
cluster? ( net-libs/rpcsvc-proto )
cups? ( net-print/cups )
diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
deleted file mode 100644
index 58a92b6..0000000
--- a/net-libs/webkit-gtk/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST webkitgtk-2.30.5.tar.xz 22311832 BLAKE2B b00e889d59883e62bcf179df8a766e20a7cd7ee2db462c4eb4279686aac5ea1cad7903189b14031088ab23b8dfd89c1f09f90e2deb5d208281d55c262cc0cb3c SHA512 406fc767a806bb2af446c73e7079720a4d82d592a95a20f30f468c31cdc2efd25e082a5ecfbe00c27f62236e1e56a729c48191451d130188419967975378235d
diff --git a/net-libs/webkit-gtk/files/2.28.2-non-jumbo-fix.patch b/net-libs/webkit-gtk/files/2.28.2-non-jumbo-fix.patch
deleted file mode 100644
index da9f1d3..0000000
--- a/net-libs/webkit-gtk/files/2.28.2-non-jumbo-fix.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From d553de92ed238278f51b93a2c90af7d3ff7a2da2 Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Tue, 12 May 2020 15:28:45 +0300
-Subject: [PATCH] Try to fix an apparent non-unified build error
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp: In member function ‘WTF::RefPtr<WebKit::InjectedBundleNodeHandle>
-WebKit::InjectedBundleHitTestResult::urlElementHandle() const’:
-Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:57:78: error: no matching function for call to
-‘WebKit::InjectedBundleNodeHandle::getOrCreate(WebCore::Element*)’
- 57 | return InjectedBundleNodeHandle::getOrCreate(m_hitTestResult.URLElement());
- | ^
-In file included from Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:29
----
- .../WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
-index df8e55df1f0..26f045bd3fc 100644
---- a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
-+++ b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
-@@ -32,6 +32,7 @@
- #include "WebImage.h"
- #include <WebCore/BitmapImage.h>
- #include <WebCore/Document.h>
-+#include <WebCore/Element.h>
- #include <WebCore/Frame.h>
- #include <WebCore/FrameLoader.h>
- #include <WebCore/FrameView.h>
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.28.2-opengl-without-X-fixes.patch b/net-libs/webkit-gtk/files/2.28.2-opengl-without-X-fixes.patch
deleted file mode 100644
index 6976c3c..0000000
--- a/net-libs/webkit-gtk/files/2.28.2-opengl-without-X-fixes.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From c67efa2bbe2094b40b4e104bb26497c2aff5ce68 Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Sat, 9 May 2020 23:11:52 +0300
-Subject: [PATCH] Clean up OpenGLShims.h conditionals in a few places to fix
- some build configurations
-
----
- Source/WebCore/platform/graphics/GLContext.cpp | 5 ++++-
- Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp | 5 ++++-
- 2 files changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/Source/WebCore/platform/graphics/GLContext.cpp b/Source/WebCore/platform/graphics/GLContext.cpp
-index b217988b990..1ba0eb8a482 100644
---- a/Source/WebCore/platform/graphics/GLContext.cpp
-+++ b/Source/WebCore/platform/graphics/GLContext.cpp
-@@ -28,6 +28,9 @@
-
- #if USE(GLX)
- #include "GLContextGLX.h"
-+#endif
-+
-+#if !USE(OPENGL_ES) && !USE(LIBEPOXY) && !USE(ANGLE)
- #include "OpenGLShims.h"
- #endif
-
-@@ -57,7 +60,7 @@ inline ThreadGlobalGLContext* currentContext()
-
- static bool initializeOpenGLShimsIfNeeded()
- {
--#if USE(OPENGL_ES) || USE(LIBEPOXY)
-+#if USE(OPENGL_ES) || USE(LIBEPOXY) || USE(ANGLE)
- return true;
- #else
- static bool initialized = false;
-diff --git a/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp b/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
-index 3515be452b2..82cce70f14b 100644
---- a/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
-+++ b/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
-@@ -64,7 +64,10 @@
-
- #if USE(GLX)
- #include <GL/glx.h>
--#include <WebCore/OpenGLShims.h>
-+#endif
-+
-+#if !USE(OPENGL_ES) && !USE(LIBEPOXY) && !USE(ANGLE)
-+#include "WebCore/OpenGLShims.h"
- #endif
-
- #if USE(GSTREAMER)
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch b/net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch
deleted file mode 100644
index d7bc379..0000000
--- a/net-libs/webkit-gtk/files/2.28.4-non-jumbo-fix2.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From f6b0ae5334eb9de1858b5f3b0edc2f7245087cab Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Sat, 11 Jul 2020 15:28:05 +0300
-Subject: [PATCH] Try to fix another apparent non-unified build error
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Source/WebCore/rendering/svg/RenderSVGResourceClipper.h:70:42: required from here
-/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/unique_ptr.h:79:16: error: invalid application of ‘sizeof’ to incomplete type ‘WebCore::ImageBuffer’
- 79 | static_assert(sizeof(_Tp)>0,
- | ^~~~~~~~~~~
----
- Source/WebCore/rendering/svg/RenderSVGResourceClipper.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
-index 55d9e34df61..12a7a83cc61 100644
---- a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
-+++ b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
-@@ -19,6 +19,7 @@
-
- #pragma once
-
-+#include "ImageBuffer.h"
- #include "RenderSVGResourceContainer.h"
- #include "SVGClipPathElement.h"
- #include "SVGUnitTypes.h"
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/2.30.3-fix-noGL-build.patch b/net-libs/webkit-gtk/files/2.30.3-fix-noGL-build.patch
deleted file mode 100644
index 5e9f426..0000000
--- a/net-libs/webkit-gtk/files/2.30.3-fix-noGL-build.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 25cf4db5575192fd306b7a74d496d1e10d8cfd3e Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Fri, 27 Nov 2020 22:47:30 +0200
-Subject: [PATCH] [X11] Fix build with disabled OpenGL
-
-The added PlatformDisplayX11::visual() method requires symbols from
-X11/Xutil.h, which wasn't added as an explicit include with only
-EGL headers indirectly pulled it in with standard build options.
----
- Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp b/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
-index 8fe3d3e92c88..2b2805446aad 100644
---- a/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
-+++ b/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
-@@ -30,6 +30,7 @@
-
- #if PLATFORM(X11)
- #include <X11/Xlib.h>
-+#include <X11/Xutil.h>
- #include <X11/extensions/Xcomposite.h>
- #if PLATFORM(GTK)
- #include <X11/extensions/Xdamage.h>
---
-2.20.1
-
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.24.4-eglmesaext-include.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.24.4-eglmesaext-include.patch
deleted file mode 100644
index 9c277e7..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.24.4-eglmesaext-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- webkitgtk-2.24.4.orig/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp 2019-08-26 17:55:46.000000000 +0300
-+++ webkitgtk-2.24.4.orig/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp 2019-11-04 23:33:44.146933810 +0300
-@@ -31,6 +31,7 @@
- #include "WebKitWaylandServerProtocol.h"
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <WebCore/GLContext.h>
- #include <WebCore/PlatformDisplayWayland.h>
- #include <WebCore/Region.h>
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.28.1-musl.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.28.1-musl.patch
deleted file mode 100644
index e28d9a5..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.28.1-musl.patch
+++ /dev/null
@@ -1,68 +0,0 @@
---- a/Source/JavaScriptCore/runtime/MachineContext.h
-+++ b/Source/JavaScriptCore/runtime/MachineContext.h
-@@ -188,7 +188,7 @@ static inline void*& stackPointerImpl(mcontext_t& machineContext)
- #error Unknown Architecture
- #endif
-
--#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__)
-+#elif OS(FUCHSIA) || defined(__linux__)
-
- #if CPU(X86)
- return reinterpret_cast<void*&>((uintptr_t&) machineContext.gregs[REG_ESP]);
-@@ -335,7 +335,7 @@ static inline void*& framePointerImpl(mcontext_t& machineContext)
- #error Unknown Architecture
- #endif
-
--#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__)
-+#elif OS(FUCHSIA) || defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-@@ -482,7 +482,7 @@ static inline void*& instructionPointerImpl(mcontext_t& machineContext)
- #error Unknown Architecture
- #endif
-
--#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__)
-+#elif OS(FUCHSIA) || defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-@@ -639,7 +639,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext)
- #error Unknown Architecture
- #endif
-
--#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__)
-+#elif OS(FUCHSIA) || defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-@@ -756,7 +756,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext)
- #error Unknown Architecture
- #endif
-
--#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__)
-+#elif OS(FUCHSIA) || defined(__linux__)
-
- // The following sequence depends on glibc's sys/ucontext.h.
- #if CPU(X86)
-
---- a/Source/WebCore/xml/XPathGrammar.cpp
-+++ b/Source/WebCore/xml/XPathGrammar.cpp
-@@ -966,7 +966,7 @@ int yydebug;
- #if YYERROR_VERBOSE
-
- # ifndef yystrlen
--# if defined __GLIBC__ && defined _STRING_H
-+# if defined __linux__ && defined _STRING_H
- # define yystrlen strlen
- # else
- /* Return the length of YYSTR. */
-@@ -989,7 +989,7 @@ yystrlen (yystr)
- # endif
-
- # ifndef yystpcpy
--# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
-+# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE
- # define yystpcpy stpcpy
- # else
- /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.28.4-lower-stack-usage.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.28.4-lower-stack-usage.patch
deleted file mode 100644
index a7af804..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.28.4-lower-stack-usage.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/Source/JavaScriptCore/runtime/OptionsList.h b/Source/JavaScriptCore/runtime/OptionsList.h
-index 41cab118..2ac66c7a 100644
---- a/Source/JavaScriptCore/runtime/OptionsList.h
-+++ b/Source/JavaScriptCore/runtime/OptionsList.h
-@@ -90,9 +90,9 @@ constexpr bool enableWebAssemblyStreamingApi = false;
- \
- v(Bool, reportMustSucceedExecutableAllocations, false, Normal, nullptr) \
- \
-- v(Unsigned, maxPerThreadStackUsage, 5 * MB, Normal, "Max allowed stack usage by the VM") \
-- v(Unsigned, softReservedZoneSize, 128 * KB, Normal, "A buffer greater than reservedZoneSize that reserves space for stringifying exceptions.") \
-- v(Unsigned, reservedZoneSize, 64 * KB, Normal, "The amount of stack space we guarantee to our clients (and to interal VM code that does not call out to clients).") \
-+ v(Unsigned, maxPerThreadStackUsage, 128 * KB , Normal, "Max allowed stack usage by the VM") \
-+ v(Unsigned, softReservedZoneSize, 48 * KB, Normal, "A buffer greater than reservedZoneSize that reserves space for stringifying exceptions.") \
-+ v(Unsigned, reservedZoneSize, 32 * KB, Normal, "The amount of stack space we guarantee to our clients (and to interal VM code that does not call out to clients).") \
- \
- v(Bool, crashIfCantAllocateJITMemory, false, Normal, nullptr) \
- v(Unsigned, jitMemoryReservationSize, 0, Normal, "Set this number to change the executable allocation size in ExecutableAllocatorFixedVMPool. (In bytes.)") \
diff --git a/net-libs/webkit-gtk/metadata.xml b/net-libs/webkit-gtk/metadata.xml
deleted file mode 100644
index ab36b12..0000000
--- a/net-libs/webkit-gtk/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
-</maintainer>
-<use>
- <flag name="egl">Enable EGL support</flag>
- <flag name="examples">Install the MiniBrowser example application</flag>
- <flag name="gamepad">Enable gamepad input support via <pkg>dev-libs/libmanette</pkg></flag>
- <flag name="geolocation">Enable geolocation support through <pkg>app-misc/geoclue</pkg></flag>
- <flag name="jumbo-build">Combine source files to speed up build process</flag>
-</use>
-</pkgmetadata>
diff --git a/net-libs/webkit-gtk/webkit-gtk-2.30.5.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.30.5.ebuild
deleted file mode 100644
index d5295d1..0000000
--- a/net-libs/webkit-gtk/webkit-gtk-2.30.5.ebuild
+++ /dev/null
@@ -1,309 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7..8} )
-USE_RUBY="ruby24 ruby25 ruby26 ruby27 ruby30"
-
-inherit check-reqs cmake flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
-
-MY_P="webkitgtk-${PV}"
-DESCRIPTION="Open source web browser engine"
-HOMEPAGE="https://www.webkitgtk.org"
-SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
-
-LICENSE="LGPL-2+ BSD"
-SLOT="4/37" # soname version of libwebkit2gtk-4.0
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-IUSE="aqua +egl examples gamepad +geolocation gles2-only gnome-keyring +gstreamer gtk-doc +introspection +jpeg2k +jumbo-build libnotify +opengl seccomp spell systemd wayland +X"
-
-# gstreamer with opengl/gles2 needs egl
-REQUIRED_USE="
- gles2-only? ( egl !opengl )
- gstreamer? ( opengl? ( egl ) )
- wayland? ( egl )
- || ( aqua wayland X )
-"
-
-# Tests fail to link for inexplicable reasons
-# https://bugs.webkit.org/show_bug.cgi?id=148210
-RESTRICT="test"
-
-# Aqua support in gtk3 is untested
-# Dependencies found at Source/cmake/OptionsGTK.cmake
-# Various compile-time optionals for gtk+-3.22.0 - ensure it
-# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
-# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
-wpe_depend="
- >=gui-libs/libwpe-1.5.0:1.0
- >=gui-libs/wpebackend-fdo-1.7.0:1.0
-"
-# TODO: gst-plugins-base[X] is only needed when build configuration ends up with GLX set, but that's a bit automagic too to fix
-RDEPEND="
- >=x11-libs/cairo-1.16.0:=[X?]
- >=media-libs/fontconfig-2.13.0:1.0
- >=media-libs/freetype-2.9.0:2
- >=dev-libs/libgcrypt-1.7.0:0=
- >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
- >=media-libs/harfbuzz-1.4.2:=[icu(+)]
- >=dev-libs/icu-60.2:=
- virtual/jpeg:0=
- >=net-libs/libsoup-2.54:2.4[introspection?]
- >=dev-libs/libxml2-2.8.0:2
- >=media-libs/libpng-1.4:0=
- dev-db/sqlite:3=
- sys-libs/zlib:0
- >=dev-libs/atk-2.16.0
- media-libs/libwebp:=
-
- >=dev-libs/glib-2.44.0:2
- >=dev-libs/libxslt-1.1.7
- media-libs/woff2
- gnome-keyring? ( app-crypt/libsecret )
- introspection? ( >=dev-libs/gobject-introspection-1.59.1:= )
- dev-libs/libtasn1:=
- spell? ( >=app-text/enchant-0.22:2 )
- gstreamer? (
- >=media-libs/gstreamer-1.14:1.0
- >=media-libs/gst-plugins-base-1.14:1.0[egl?,opengl?,X?]
- gles2-only? ( media-libs/gst-plugins-base:1.0[gles2] )
- >=media-plugins/gst-plugins-opus-1.14.4-r1:1.0
- >=media-libs/gst-plugins-bad-1.14:1.0 )
-
- X? (
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXrender
- x11-libs/libXt )
-
- libnotify? ( x11-libs/libnotify )
- dev-libs/hyphen
- jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
-
- egl? ( media-libs/mesa[egl] )
- gles2-only? ( media-libs/mesa[gles2] )
- opengl? ( virtual/opengl )
- wayland? (
- dev-libs/wayland
- >=dev-libs/wayland-protocols-1.12
- opengl? ( ${wpe_depend} )
- gles2-only? ( ${wpe_depend} )
- )
-
- seccomp? (
- >=sys-apps/bubblewrap-0.3.1
- sys-libs/libseccomp
- sys-apps/xdg-dbus-proxy
- )
-
- systemd? ( sys-apps/systemd:= )
- gamepad? ( >=dev-libs/libmanette-0.2.4 )
-"
-unset wpe_depend
-DEPEND="${RDEPEND}"
-# paxctl needed for bug #407085
-# Need real bison, not yacc
-BDEPEND="
- ${PYTHON_DEPS}
- ${RUBY_DEPS}
- >=app-accessibility/at-spi2-core-2.5.3
- dev-util/glib-utils
- >=dev-util/gperf-3.0.1
- >=sys-devel/bison-2.4.3
- || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
- sys-devel/gettext
- virtual/pkgconfig
-
- >=dev-lang/perl-5.10
- virtual/perl-Data-Dumper
- virtual/perl-Carp
- virtual/perl-JSON-PP
-
- gtk-doc? ( >=dev-util/gtk-doc-1.32 )
- geolocation? ( dev-util/gdbus-codegen )
- >=dev-util/cmake-3.10
-"
-# test? (
-# dev-python/pygobject:3[python_targets_python2_7]
-# x11-themes/hicolor-icon-theme
-# jit? ( sys-apps/paxctl ) )
-RDEPEND="${RDEPEND}
- geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != "binary" ]] ; then
- if is-flagq "-g*" && ! is-flagq "-g*0" ; then
- einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
- check-reqs_pkg_pretend
- fi
-
- if ! test-flag-CXX -std=c++17 ; then
- die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
- fi
- fi
-
- if ! use opengl && ! use gles2-only; then
- ewarn
- ewarn "You are disabling OpenGL usage (USE=opengl or USE=gles2-only) completely."
- ewarn "This is an unsupported configuration meant for very specific embedded"
- ewarn "use cases, where there truly is no GL possible (and even that use case"
- ewarn "is very unlikely to come by). If you have GL (even software-only), you"
- ewarn "really really should be enabling OpenGL!"
- ewarn
- fi
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
- check-reqs_pkg_setup
- fi
-
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- eapply "${FILESDIR}"/${PN}-2.24.4-eglmesaext-include.patch # bug 699054 # https://bugs.webkit.org/show_bug.cgi?id=204108
- eapply "${FILESDIR}"/2.28.2-opengl-without-X-fixes.patch
- eapply "${FILESDIR}"/2.28.2-non-jumbo-fix.patch
- eapply "${FILESDIR}"/2.28.4-non-jumbo-fix2.patch
- eapply "${FILESDIR}"/2.30.3-fix-noGL-build.patch
- if use elibc_musl ; then
- # Taken from https://git.alpinelinux.org/aports/tree/community/webkit2gtk/musl-fixes.patch?id=be463923b10a7268117c27c7e5515fc32457918c
- eapply "${FILESDIR}/${PN}-2.28.1-musl.patch"
- eapply "${FILESDIR}/${PN}-2.28.4-lower-stack-usage.patch"
- fi
- cmake_src_prepare
- gnome2_src_prepare
-}
-
-src_configure() {
- # Respect CC, otherwise fails on prefix #395875
- tc-export CC
-
- # It does not compile on alpha without this in LDFLAGS
- # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
- use alpha && append-ldflags "-Wl,--no-relax"
-
- # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
- use ia64 && append-ldflags "-Wl,--no-as-needed"
-
- # Sigbuses on SPARC with mcpu and co., bug #???
- use sparc && filter-flags "-mvis"
-
- # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
- use ppc64 && append-flags "-mminimal-toc"
-
- # Try to use less memory, bug #469942 (see Fedora .spec for reference)
- # --no-keep-memory doesn't work on ia64, bug #502492
- if ! use ia64; then
- append-ldflags "-Wl,--no-keep-memory"
- fi
-
- # We try to use gold when possible for this package
-# if ! tc-ld-is-gold ; then
-# append-ldflags "-Wl,--reduce-memory-overheads"
-# fi
-
- # Ruby situation is a bit complicated. See bug 513888
- local rubyimpl
- local ruby_interpreter=""
- for rubyimpl in ${USE_RUBY}; do
- if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
- ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
- fi
- done
- # This will rarely occur. Only a couple of corner cases could lead us to
- # that failure. See bug 513888
- [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
-
- # TODO: Check Web Audio support
- # should somehow let user select between them?
- #
- # opengl needs to be explicetly handled, bug #576634
-
- local use_wpe_renderer=OFF
- local opengl_enabled
- if use opengl || use gles2-only; then
- opengl_enabled=ON
- use wayland && use_wpe_renderer=ON
- else
- opengl_enabled=OFF
- fi
-
- local mycmakeargs=(
- -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
- -DENABLE_QUARTZ_TARGET=$(usex aqua)
- -DENABLE_API_TESTS=$(usex test)
- -DENABLE_GTKDOC=$(usex gtk-doc)
- -DENABLE_GEOLOCATION=$(usex geolocation) # Runtime optional (talks over dbus service)
- $(cmake_use_find_package gles2-only OpenGLES2)
- -DENABLE_GLES2=$(usex gles2-only)
- -DENABLE_MINIBROWSER=$(usex examples)
- -DENABLE_VIDEO=$(usex gstreamer)
- -DENABLE_WEB_AUDIO=$(usex gstreamer)
- -DENABLE_INTROSPECTION=$(usex introspection)
- -DUSE_LIBNOTIFY=$(usex libnotify)
- -DUSE_LIBSECRET=$(usex gnome-keyring)
- -DUSE_OPENJPEG=$(usex jpeg2k)
- -DUSE_WOFF2=ON
- -DENABLE_SPELLCHECK=$(usex spell)
- -DUSE_SYSTEMD=$(usex systemd) # Whether to enable journald logging
- -DENABLE_GAMEPAD=$(usex gamepad)
- -DENABLE_WAYLAND_TARGET=$(usex wayland)
- -DUSE_WPE_RENDERER=${use_wpe_renderer} # WPE renderer is used to implement accelerated compositing under wayland
- $(cmake_use_find_package egl EGL)
- $(cmake_use_find_package opengl OpenGL)
- -DENABLE_X11_TARGET=$(usex X)
- -DENABLE_GRAPHICS_CONTEXT_GL=${opengl_enabled}
- -DENABLE_WEBGL=${opengl_enabled}
- -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
- -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
- -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
- -DPORT=GTK
- ${ruby_interpreter}
- )
-
- if use elibc_musl ; then
- mycmakeargs+=( -DENABLE_SAMPLING_PROFILER=OFF )
- fi
-
- # Allow it to use GOLD when possible as it has all the magic to
- # detect when to use it and using gold for this concrete package has
- # multiple advantages and is also the upstream default, bug #585788
-# if tc-ld-is-gold ; then
-# mycmakeargs+=( -DUSE_LD_GOLD=ON )
-# else
-# mycmakeargs+=( -DUSE_LD_GOLD=OFF )
-# fi
-
- # https://bugs.gentoo.org/761238
- append-cppflags -DNDEBUG
-
- WK_USE_CCACHE=NO cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
-}
-
-src_test() {
- # Prevents test failures on PaX systems
- pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
-
- cmake_src_test
-}
-
-src_install() {
- cmake_src_install
-
- # Prevents crashes on PaX systems, bug #522808
- pax-mark m "${ED}/usr/libexec/webkit2gtk-4.0/jsc" "${ED}/usr/libexec/webkit2gtk-4.0/WebKitWebProcess"
- pax-mark m "${ED}/usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"
-}
diff --git a/net-misc/networkmanager/Manifest b/net-misc/networkmanager/Manifest
deleted file mode 100644
index e16febc..0000000
--- a/net-misc/networkmanager/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST NetworkManager-1.26.4.tar.xz 5051424 BLAKE2B 53a8fd9f9a061b9ac6b117f431e72b1967cfd2fffb539e0dc9335c37a3a59dc33562e81f7887019c3460f403a95b96e8105b1ae41b00c8488ae12a370a3d82ff SHA512 91e865c83a6ae694c9f6aa50e7f938dfa55bfddac32a6dfb73e6edb34b2539068ff9f83bf662bb2d689bd3c66cf53d7fa015930940cf7bda2d4a16561cf02328
-DIST NetworkManager-1.28.0.tar.xz 5129848 BLAKE2B 37dc9cda283dad29a70c85ed41a77844b4f60a9815be4b6780fbefecfeffb644fd67ea65373a1895fd2102f2beec9ad141b6e9a92a1a32de646d64acd4250b62 SHA512 ab0bc39626dc55df4e122ad6e1a8086e1467f44bdd41c4491c752dca3ffb549796e0ac888041f12f661f2f6cf4142d0fce59b5135549e48a0076fafcdc45ca06
diff --git a/net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules b/net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules
deleted file mode 100644
index d00b268..0000000
--- a/net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules
+++ /dev/null
@@ -1,7 +0,0 @@
-// Let users in plugdev group modify NetworkManager
-polkit.addRule(function(action, subject) {
- if (action.id == "org.freedesktop.NetworkManager.settings.modify.system" &&
- subject.isInGroup("plugdev") && subject.active) {
- return "yes";
- }
-});
diff --git a/net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch b/net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch
deleted file mode 100644
index 59f524f..0000000
--- a/net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 839343b02e59cb36e58f7e3def8bb39bf4ee3d5b Mon Sep 17 00:00:00 2001
-From: Jory Pratt <anarchy@gentoo.org>
-Date: Thu, 11 Mar 2021 07:59:56 -0600
-Subject: [PATCH] uncouple glibc functions and headers
-
----
- shared/nm-glib-aux/nm-json-aux.c | 4 ++++
- shared/systemd/src/basic/stdio-util.h | 2 ++
- shared/systemd/src/basic/util.h | 6 ++++++
- 3 files changed, 12 insertions(+)
-
-diff --git a/shared/nm-glib-aux/nm-json-aux.c b/shared/nm-glib-aux/nm-json-aux.c
-index 4212e62..83114c7 100644
---- a/shared/nm-glib-aux/nm-json-aux.c
-+++ b/shared/nm-glib-aux/nm-json-aux.c
-@@ -9,6 +9,10 @@
-
- #include <dlfcn.h>
-
-+#ifndef RTLD_DEEPBIND
-+#define RTLD_DEEPBIND 0
-+#endif
-+
- /*****************************************************************************/
-
- static void
-diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
-index c3b9448..e80a938 100644
---- a/shared/systemd/src/basic/stdio-util.h
-+++ b/shared/systemd/src/basic/stdio-util.h
-@@ -1,7 +1,9 @@
- /* SPDX-License-Identifier: LGPL-2.1+ */
- #pragma once
-
-+#if defined(__GLIBC__)
- #include <printf.h>
-+#endif
- #include <stdarg.h>
- #include <stdio.h>
- #include <sys/types.h>
-diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
-index 6fc7480..fab72e5 100644
---- a/shared/systemd/src/basic/util.h
-+++ b/shared/systemd/src/basic/util.h
-@@ -30,6 +30,12 @@ static inline unsigned u64log2(uint64_t n) {
- #endif
- }
-
-+#if !defined(__GLIBC__)
-+typedef int (*__compar_fn_t) (const void*, const void*);
-+typedef __compar_fn_t comparison_fn_t;
-+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
-+#endif
-+
- static inline unsigned u32ctz(uint32_t n) {
- #if __SIZEOF_INT__ == 4
- return n != 0 ? __builtin_ctz(n) : 32;
---
-2.26.2
-
diff --git a/net-misc/networkmanager/files/1.28.0/0002-network-support.patch b/net-misc/networkmanager/files/1.28.0/0002-network-support.patch
deleted file mode 100644
index 4915ffb..0000000
--- a/net-misc/networkmanager/files/1.28.0/0002-network-support.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 08d889a2bcaaad17a92303277b331a515bf40fb8 Mon Sep 17 00:00:00 2001
-From:
-Date: Thu, 11 Mar 2021 07:42:39 -0600
-Subject: [PATCH 2/6] network support
-
----
- libnm-core/nm-utils.h | 4 ++++
- shared/systemd/src/basic/socket-util.h | 5 +++++
- src/platform/wifi/nm-wifi-utils.h | 4 ++++
- 3 files changed, 13 insertions(+)
-
-diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
-index 9589c51..6b42883 100644
---- a/libnm-core/nm-utils.h
-+++ b/libnm-core/nm-utils.h
-@@ -15,7 +15,11 @@
- #include <netinet/in.h>
-
- /* For ETH_ALEN and INFINIBAND_ALEN */
-+#if defined(__GLIBC__)
- #include <linux/if_ether.h>
-+#else
-+#define ETH_ALEN 6 /* Octets in one ethernet addr */
-+#endif
- #include <linux/if_infiniband.h>
-
- #include "nm-core-enum-types.h"
-diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
-index 1ece911..c6d5a60 100644
---- a/shared/systemd/src/basic/socket-util.h
-+++ b/shared/systemd/src/basic/socket-util.h
-@@ -13,6 +13,11 @@
- #include <sys/socket.h>
- #include <sys/types.h>
- #include <sys/un.h>
-+#if !defined(__GLIBC__)
-+/* SIOCGSTAMPNS from linux/asm-generic.h
-+ * for src/systemd/src/libsystemd-network/sd-lldp.c */
-+#include <linux/sockios.h>
-+#endif
-
- #include "macro.h"
- #include "missing_socket.h"
-diff --git a/src/platform/wifi/nm-wifi-utils.h b/src/platform/wifi/nm-wifi-utils.h
-index d1df2fb..792f4ab 100644
---- a/src/platform/wifi/nm-wifi-utils.h
-+++ b/src/platform/wifi/nm-wifi-utils.h
-@@ -7,7 +7,11 @@
- #ifndef __WIFI_UTILS_H__
- #define __WIFI_UTILS_H__
-
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#else /* musl libc */
-+#define ETH_ALEN 6 /* Octets in one ethernet addr */
-+#endif
-
- #include "nm-dbus-interface.h"
- #include "nm-setting-wireless.h"
---
-2.26.2
-
diff --git a/net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch b/net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch
deleted file mode 100644
index cdf9d53..0000000
--- a/net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From a089fdec09fe8893ee8cff79ce2027d3ea2fa5bb Mon Sep 17 00:00:00 2001
-From:
-Date: Thu, 11 Mar 2021 07:42:59 -0600
-Subject: [PATCH 3/6] Fix includes to support musl
-
----
- src/NetworkManagerUtils.c | 1 +
- src/devices/nm-device-bridge.c | 2 ++
- src/devices/nm-device.c | 4 ++++
- src/nm-manager.c | 1 +
- src/platform/nm-linux-platform.c | 5 +++++
- src/systemd/src/libsystemd-network/sd-dhcp6-client.c | 4 ++++
- 6 files changed, 17 insertions(+)
-
-diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c
-index 4739e9d..ceadb50 100644
---- a/src/NetworkManagerUtils.c
-+++ b/src/NetworkManagerUtils.c
-@@ -4,6 +4,7 @@
- * Copyright (C) 2005 - 2008 Novell, Inc.
- */
-
-+#include <netinet/if_ether.h>
- #include "nm-default.h"
-
- #include "NetworkManagerUtils.h"
-diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c
-index 48dcec1..e78eab5 100644
---- a/src/devices/nm-device-bridge.c
-+++ b/src/devices/nm-device-bridge.c
-@@ -15,6 +15,8 @@
- #include "nm-device-factory.h"
- #include "nm-core-internal.h"
-
-+#include <linux/if_ether.h>
-+
- #include "nm-device-logging.h"
- _LOG_DECLARE_SELF(NMDeviceBridge);
-
-diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
-index 0be05f2..ebf233b 100644
---- a/src/devices/nm-device.c
-+++ b/src/devices/nm-device.c
-@@ -17,7 +17,11 @@
- #include <arpa/inet.h>
- #include <fcntl.h>
- #include <linux/if_addr.h>
-+#if defined(__GLIBC__)
- #include <linux/if_arp.h>
-+#else
-+#include <linux/if.h>
-+#endif
- #include <linux/rtnetlink.h>
-
- #include "nm-std-aux/unaligned.h"
-diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 46f81c7..090916e 100644
---- a/src/nm-manager.c
-+++ b/src/nm-manager.c
-@@ -15,6 +15,7 @@
- #include <sys/stat.h>
- #include <sys/sendfile.h>
- #include <limits.h>
-+#include <asm/types.h>
-
- #include "nm-glib-aux/nm-c-list.h"
-
-diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
-index b377c85..7e32eea 100644
---- a/src/platform/nm-linux-platform.c
-+++ b/src/platform/nm-linux-platform.c
-@@ -6,6 +6,7 @@
- #include "nm-default.h"
-
- #include "nm-linux-platform.h"
-+#include "wpan/nm-wpan-utils.h"
-
- #include <arpa/inet.h>
- #include <dlfcn.h>
-@@ -14,7 +15,11 @@
- #include <libudev.h>
- #include <linux/fib_rules.h>
- #include <linux/ip.h>
-+#if defined(__GLIBC__)
- #include <linux/if_arp.h>
-+#else
-+#include <linux/if.h>
-+#endif
- #include <linux/if_bridge.h>
- #include <linux/if_link.h>
- #include <linux/if_tun.h>
-diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-index ec7f1be..ae63a86 100644
---- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-+++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-@@ -7,7 +7,11 @@
-
- #include <errno.h>
- #include <sys/ioctl.h>
-+#if defined(__GLIBC__)
- #include <linux/if_arp.h>
-+#else
-+#include <linux/if.h>
-+#endif
- #include <linux/if_infiniband.h>
-
- #include "sd-dhcp6-client.h"
---
-2.26.2
-
diff --git a/net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch b/net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch
deleted file mode 100644
index 6ac79be..0000000
--- a/net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From edd98123a8aa41c799331d6ab844d026ecff2c46 Mon Sep 17 00:00:00 2001
-From:
-Date: Thu, 11 Mar 2021 07:43:23 -0600
-Subject: [PATCH 4/6] Fix pthread support for non glibc users
-
----
- shared/systemd/src/basic/process-util.c | 12 +++++++++++-
- 1 file changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
-index 03ca04e..1e97688 100644
---- a/shared/systemd/src/basic/process-util.c
-+++ b/shared/systemd/src/basic/process-util.c
-@@ -17,6 +17,9 @@
- #include <sys/wait.h>
- #include <syslog.h>
- #include <unistd.h>
-+#ifndef __GLIBC__
-+#include <pthread.h>
-+#endif
- #if 0 /* NM_IGNORED */
- #if HAVE_VALGRIND_VALGRIND_H
- #include <valgrind/valgrind.h>
-@@ -1152,11 +1155,13 @@ void reset_cached_pid(void) {
- cached_pid = CACHED_PID_UNSET;
- }
-
-+#ifdef __GLIBC__
- /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
- * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
- * libpthread, as it is part of glibc anyway. */
- extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
- extern void* __dso_handle _weak_;
-+#endif
-
- pid_t getpid_cached(void) {
- static bool installed = false;
-@@ -1185,7 +1190,12 @@ pid_t getpid_cached(void) {
- * only half-documented (glibc doesn't document it but LSB does — though only superficially)
- * we'll check for errors only in the most generic fashion possible. */
-
-- if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
-+ #ifdef __GLIBC__
-+ if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
-+ #else
-+ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
-+ #endif
-+
- /* OOM? Let's try again later */
- cached_pid = CACHED_PID_UNSET;
- return new_pid;
---
-2.26.2
-
diff --git a/net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch b/net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch
deleted file mode 100644
index e2720d7..0000000
--- a/net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 062717e43db51cad0528415f619300e8f5a282cf Mon Sep 17 00:00:00 2001
-From:
-Date: Thu, 11 Mar 2021 07:45:17 -0600
-Subject: [PATCH 5/6] define compare for non glibc users
-
----
- shared/systemd/src/basic/sort-util.h | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
-index a8dc3bb..d619a54 100644
---- a/shared/systemd/src/basic/sort-util.h
-+++ b/shared/systemd/src/basic/sort-util.h
-@@ -5,6 +5,13 @@
-
- #include "macro.h"
-
-+#ifndef __COMPAR_FN_T
-+# define __COMPAR_FN_T
-+typedef int (*__compar_fn_t) (const void *, const void *);
-+typedef __compar_fn_t comparison_fn_t;
-+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
-+#endif
-+
- void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
- __compar_d_fn_t compar, void *arg);
-
---
-2.26.2
-
diff --git a/net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch b/net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch
deleted file mode 100644
index 3c1a391..0000000
--- a/net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94820f35e5559d610cd2a5bf967932d97df6fed9 Mon Sep 17 00:00:00 2001
-From: Jory Pratt <anarchy@gentoo.org>
-Date: Thu, 11 Mar 2021 07:46:00 -0600
-Subject: [PATCH 6/6] musl [added support for reallocarray](0), but the
- function prototype is declared in `stdlib.h` instead of `malloc.h`.
-
-Update the check for reallocarray to check both in `malloc.h` and
-`stdlib.h`.
-
-[0]:https://git.musl-libc.org/cgit/musl/commit/?id=821083ac7b54eaa040d5a8ddc67c6206a175e0ca
----
- configure | 2 +-
- configure.ac | 1 +
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index ec42b54..8e87c92 100755
---- a/configure
-+++ b/configure
-@@ -18250,7 +18250,7 @@ _ACEOF
-
- ac_fn_c_check_decl "$LINENO" "reallocarray" "ac_cv_have_decl_reallocarray" "
- #include <malloc.h>
--
-+#include <stdlib.h>
- "
- if test "x$ac_cv_have_decl_reallocarray" = xyes; then :
- ac_have_decl=1
-diff --git a/configure.ac b/configure.ac
-index 8483dd7..d32bd46 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -83,6 +83,7 @@ AC_CHECK_DECLS([
- reallocarray],
- [], [], [[
- #include <malloc.h>
-+#include <stdlib.h>
- ]])
-
- AC_CHECK_DECLS([
---
-2.26.2
-
diff --git a/net-misc/networkmanager/files/10-openrc-status-r4 b/net-misc/networkmanager/files/10-openrc-status-r4
deleted file mode 100644
index e195ccc..0000000
--- a/net-misc/networkmanager/files/10-openrc-status-r4
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/sh
-# Copyright (c) 2012 Alexandre Rostovtsev
-# Released under the 2-clause BSD license.
-
-# Ensures that the NetworkManager OpenRC service is marked as started and
-# providing net only when it has a successful connection.
-
-if [ ! -e "/run/openrc/softlevel" ]; then
- # OpenRC is not running
- exit 0
-fi
-
-# Ensure rc-service is in PATH
-PATH="${PATH}:@EPREFIX@/sbin:@EPREFIX@/usr/sbin"
-
-# Exit if the NetworkManager OpenRC service is not running
-rc-service NetworkManager status 2>&1 | grep -Eq "status: (starting|started|inactive|stopping)" || exit 0
-
-# Call rc-service in background mode so that the start/stop functions update
-# NetworkManager service status to started or inactive instead of actually
-# starting or stopping the daemon
-export IN_BACKGROUND=YES
-
-case "$2" in
- up) nm-online -t 0 -x &&
- ! rc-service NetworkManager status 2>&1 | grep -q started &&
- exec rc-service NetworkManager start ;;
- down) nm-online -t 0 -x ||
- rc-service NetworkManager status 2>&1 | grep -q stopped ||
- exec rc-service NetworkManager stop ;;
- pre-sleep) rc-service NetworkManager status 2>&1 | grep -q stopped ||
- exec rc-service NetworkManager stop ;;
-esac
-exit 0
-# vim: set ts=4:
diff --git a/net-misc/networkmanager/files/conf.d.NetworkManager b/net-misc/networkmanager/files/conf.d.NetworkManager
deleted file mode 100644
index 4a99229..0000000
--- a/net-misc/networkmanager/files/conf.d.NetworkManager
+++ /dev/null
@@ -1,4 +0,0 @@
-# If NetworkManager does not establish a connection within $INACTIVE_TIMEOUT
-# seconds after starting, the service will be marked as inactive, and it will
-# continue to wait for a connection in background mode.
-INACTIVE_TIMEOUT=1
diff --git a/net-misc/networkmanager/files/init.d.NetworkManager-r2 b/net-misc/networkmanager/files/init.d.NetworkManager-r2
deleted file mode 100644
index f7b95c0..0000000
--- a/net-misc/networkmanager/files/init.d.NetworkManager-r2
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/sbin/openrc-run
-# Copyright (c) 2008 Saleem Abdulrasool <compnerd@compnerd.org>
-# Copyright 2013-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-description="NetworkManager daemon. The service is marked as started only \
-when a network connection is established."
-
-depend() {
- need dbus
- use consolekit
- provide net
-}
-
-start_pre() {
- checkpath -q -d -m 0755 /run/NetworkManager
-}
-
-start() {
- # If we are re-called by a dispatcher event, we want to mark the service
- # as started without starting the daemon again
- yesno "${IN_BACKGROUND}" && return 0
-
- [ -z "${INACTIVE_TIMEOUT}" ] && INACTIVE_TIMEOUT="1"
-
- ebegin "Starting NetworkManager"
- start-stop-daemon --start --quiet --pidfile /run/NetworkManager/NetworkManager.pid \
- --exec /usr/sbin/NetworkManager -- --pid-file /run/NetworkManager/NetworkManager.pid
- local _retval=$?
- eend "${_retval}"
- if [ "x${_retval}" = 'x0' ] && ! nm-online -t "${INACTIVE_TIMEOUT}"; then
- einfo "Marking NetworkManager as inactive. It will automatically be marked"
- einfo "as started after a network connection has been established."
- mark_service_inactive
- fi
- return "${_retval}"
-}
-
-stop() {
- # If we are re-called by a dispatcher event, we want to mark the service
- # as inactive without stopping the daemon
- if yesno "${IN_BACKGROUND}"; then
- mark_service_inactive "${SVCNAME}"
- return 0
- fi
-
- ebegin "Stopping NetworkManager"
- local pidfile=/run/NetworkManager/NetworkManager.pid
- if [ ! -e "${pidfile}" ] && [ -e /var/run/NetworkManager.pid ]; then
- # Try stopping the pid file used by <0.9.7
- pidfile=/var/run/NetworkManager.pid
- start-stop-daemon --stop --quiet --pidfile "${pidfile}"
- ret=$?
- [ ${ret} = 0 ] && [ -e "${pidfile}" ] && rm "${pidfile}"
- eend ${ret}
- else
- start-stop-daemon --stop --quiet --pidfile "${pidfile}"
- eend $?
- fi
-}
-
-# vim: set ft=gentoo-init-d ts=4 :
diff --git a/net-misc/networkmanager/files/musl-basic.patch b/net-misc/networkmanager/files/musl-basic.patch
deleted file mode 100644
index 2e0d562..0000000
--- a/net-misc/networkmanager/files/musl-basic.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git a/libnm-core/nm-json.c b/libnm-core/nm-json.c
-index aa181a4..98c39fc 100644
---- a/libnm-core/nm-json.c
-+++ b/libnm-core/nm-json.c
-@@ -23,6 +23,10 @@
-
- #include <dlfcn.h>
-
-+#ifndef RTLD_DEEPBIND
-+#define RTLD_DEEPBIND 0
-+#endif
-+
- void *_nm_jansson_json_object_iter_value;
- void *_nm_jansson_json_object_key_to_iter;
- void *_nm_jansson_json_integer;
-diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
-index c3b9448..e80a938 100644
---- a/shared/systemd/src/basic/stdio-util.h
-+++ b/shared/systemd/src/basic/stdio-util.h
-@@ -1,7 +1,9 @@
- /* SPDX-License-Identifier: LGPL-2.1+ */
- #pragma once
-
-+#if defined(__GLIBC__)
- #include <printf.h>
-+#endif
- #include <stdarg.h>
- #include <stdio.h>
- #include <sys/types.h>
-diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
-index 25e6ab8..7967e8a 100644
---- a/shared/systemd/src/basic/util.h
-+++ b/shared/systemd/src/basic/util.h
-@@ -46,6 +46,12 @@ static inline unsigned u64log2(uint64_t n) {
- #endif
- }
-
-+#if !defined(__GLIBC__)
-+typedef int (*__compar_fn_t) (const void*, const void*);
-+typedef __compar_fn_t comparison_fn_t;
-+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
-+#endif
-+
- static inline unsigned u32ctz(uint32_t n) {
- #if __SIZEOF_INT__ == 4
- return n != 0 ? __builtin_ctz(n) : 32;
diff --git a/net-misc/networkmanager/files/musl-compar.patch b/net-misc/networkmanager/files/musl-compar.patch
deleted file mode 100644
index 1b1de2f..0000000
--- a/net-misc/networkmanager/files/musl-compar.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
-index e029f86..935f136 100644
---- a/shared/systemd/src/basic/sort-util.h
-+++ b/shared/systemd/src/basic/sort-util.h
-@@ -5,6 +5,13 @@
-
- #include "macro.h"
-
-+#ifndef __COMPAR_FN_T
-+# define __COMPAR_FN_T
-+typedef int (*__compar_fn_t) (const void *, const void *);
-+typedef __compar_fn_t comparison_fn_t;
-+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
-+#endif
-+
- void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
- __compar_d_fn_t compar, void *arg);
-
diff --git a/net-misc/networkmanager/files/musl-fix-includes.patch b/net-misc/networkmanager/files/musl-fix-includes.patch
deleted file mode 100644
index 98f8bc2..0000000
--- a/net-misc/networkmanager/files/musl-fix-includes.patch
+++ /dev/null
@@ -1,90 +0,0 @@
---- a/src/NetworkManagerUtils.c 2020-07-17 20:05:45.382005791 +0200
-+++ b/src/NetworkManagerUtils.c 2020-07-17 20:05:39.721463542 +0200
-@@ -4,6 +4,7 @@
- * Copyright (C) 2005 - 2008 Novell, Inc.
- */
-
-+#include <netinet/if_ether.h>
- #include "nm-default.h"
-
- #include "NetworkManagerUtils.h"
-diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
-index e7a4a05..7578abf 100644
---- a/src/devices/nm-device.c
-+++ b/src/devices/nm-device.c
-@@ -17,7 +17,11 @@
- #include <arpa/inet.h>
- #include <fcntl.h>
- #include <linux/if_addr.h>
-+#if defined(__GLIBC__)
- #include <linux/if_arp.h>
-+#else
-+#include <linux/if.h>
-+#endif
- #include <linux/rtnetlink.h>
- #include <linux/pkt_sched.h>
-
-diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 132cf5a..0dd71dd 100644
---- a/src/nm-manager.c
-+++ b/src/nm-manager.c
-@@ -15,6 +15,7 @@
- #include <sys/stat.h>
- #include <sys/sendfile.h>
- #include <limits.h>
-+#include <asm/types.h>
-
- #include "nm-glib-aux/nm-c-list.h"
-
-diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
-index 305ae52..10cfec6 100644
---- a/src/platform/nm-linux-platform.c
-+++ b/src/platform/nm-linux-platform.c
-@@ -6,6 +6,7 @@
- #include "nm-default.h"
-
- #include "nm-linux-platform.h"
-+#include "wpan/nm-wpan-utils.h"
-
- #include <arpa/inet.h>
- #include <dlfcn.h>
-@@ -14,7 +15,11 @@
- #include <libudev.h>
- #include <linux/fib_rules.h>
- #include <linux/ip.h>
-+#if defined(__GLIBC__)
- #include <linux/if_arp.h>
-+#else
-+#include <linux/if.h>
-+#endif
- #include <linux/if_bridge.h>
- #include <linux/if_link.h>
- #include <linux/if_tun.h>
-diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-index e1150f9..3cb8390 100644
---- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-+++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-@@ -7,7 +7,11 @@
-
- #include <errno.h>
- #include <sys/ioctl.h>
-+#if defined(__GLIBC__)
- #include <linux/if_arp.h>
-+#else
-+#include <linux/if.h>
-+#endif
- #include <linux/if_infiniband.h>
-
- #include "sd-dhcp6-client.h"
-diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c
-index c93c6a5..66d2532 100644
---- a/src/devices/nm-device-bridge.c
-+++ b/src/devices/nm-device-bridge.c
-@@ -15,6 +15,8 @@
- #include "nm-device-factory.h"
- #include "nm-core-internal.h"
-
-+#include <linux/if_ether.h>
-+
- #include "nm-device-logging.h"
- _LOG_DECLARE_SELF(NMDeviceBridge);
diff --git a/net-misc/networkmanager/files/musl-network-support.patch b/net-misc/networkmanager/files/musl-network-support.patch
deleted file mode 100644
index 36536df..0000000
--- a/net-misc/networkmanager/files/musl-network-support.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- a/libnm-core/nm-utils.h
-+++ b/libnm-core/nm-utils.h
-@@ -30,7 +30,11 @@
- #include <netinet/in.h>
-
- /* For ETH_ALEN and INFINIBAND_ALEN */
-+#if defined(__GLIBC__)
- #include <linux/if_ether.h>
-+#else
-+#define ETH_ALEN 6 /* Octets in one ethernet addr */
-+#endif
- #include <linux/if_infiniband.h>
-
- #include "nm-core-enum-types.h"
---- a/src/platform/wifi/nm-wifi-utils.h
-+++ b/src/platform/wifi/nm-wifi-utils.h
-@@ -22,7 +22,11 @@
- #ifndef __WIFI_UTILS_H__
- #define __WIFI_UTILS_H__
-
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#else /* musl libc */
-+#define ETH_ALEN 6 /* Octets in one ethernet addr */
-+#endif
-
- #include "nm-dbus-interface.h"
-
---- a/shared/systemd/src/basic/socket-util.h 2019-03-16 15:41:33.287235649 +0100
-+++ b/shared/systemd/src/basic/socket-util.h 2019-03-16 15:42:24.273912106 +0100
-@@ -12,6 +12,11 @@
- #include <sys/socket.h>
- #include <sys/types.h>
- #include <sys/un.h>
-+#if !defined(__GLIBC__)
-+/* SIOCGSTAMPNS from linux/asm-generic.h
-+ * for src/systemd/src/libsystemd-network/sd-lldp.c */
-+#include <linux/sockios.h>
-+#endif
-
- #include "macro.h"
- #include "missing_socket.h"
diff --git a/net-misc/networkmanager/files/musl-no-drand.patch b/net-misc/networkmanager/files/musl-no-drand.patch
deleted file mode 100644
index 46e3a79..0000000
--- a/net-misc/networkmanager/files/musl-no-drand.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From ec471e66ee14d7da06d4d0a22bc3cdb5f615fd6f Mon Sep 17 00:00:00 2001
-From: Enno Boland <g@s01.de>
-Date: Wed, 7 Aug 2019 16:51:16 +0200
-Subject: [PATCH] use jrand48 instead of mrand48_r on non glibc platforms
-
----
- shared/n-dhcp4/src/n-dhcp4-c-probe.c | 8 ++++++++
- shared/n-dhcp4/src/n-dhcp4-private.h | 4 ++++
- 2 files changed, 12 insertions(+)
-
-diff --git a/shared/n-dhcp4/src/n-dhcp4-c-probe.c b/shared/n-dhcp4/src/n-dhcp4-c-probe.c
-index 308cff8307..9463528b1f 100644
---- a/shared/n-dhcp4/src/n-dhcp4-c-probe.c
-+++ b/shared/n-dhcp4/src/n-dhcp4-c-probe.c
-@@ -362,8 +362,12 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe
- seed16v[1] = (u64 >> 16) ^ (u64 >> 0);
- seed16v[2] = (u64 >> 32) ^ (u64 >> 16);
-
-+#ifdef __GLIBC__
- r = seed48_r(seed16v, &config->entropy);
- c_assert(!r);
-+#else
-+ memcpy(config->entropy, seed16v, sizeof seed16v);
-+#endif
- }
-
- /**
-@@ -377,10 +381,14 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe
- */
- uint32_t n_dhcp4_client_probe_config_get_random(NDhcp4ClientProbeConfig *config) {
- long int result;
-+#ifdef __GLIBC__
- int r;
-
- r = mrand48_r(&config->entropy, &result);
- c_assert(!r);
-+#else
-+ result = jrand48(config->entropy);
-+#endif
-
- return result;
- };
-diff --git a/shared/n-dhcp4/src/n-dhcp4-private.h b/shared/n-dhcp4/src/n-dhcp4-private.h
-index c38ddbfc80..fb48807712 100644
---- a/shared/n-dhcp4/src/n-dhcp4-private.h
-+++ b/shared/n-dhcp4/src/n-dhcp4-private.h
-@@ -259,7 +259,11 @@ struct NDhcp4ClientProbeConfig {
- bool inform_only;
- bool init_reboot;
- struct in_addr requested_ip;
-+#ifdef __GLIBC__
- struct drand48_data entropy; /* entropy pool */
-+#else
-+ unsigned short entropy[3]; /* entropy pool */
-+#endif
- uint64_t ms_start_delay; /* max ms to wait before starting probe */
- NDhcp4ClientProbeOption *options[UINT8_MAX + 1];
- int8_t request_parameters[UINT8_MAX + 1];
diff --git a/net-misc/networkmanager/files/musl-process-util.patch b/net-misc/networkmanager/files/musl-process-util.patch
deleted file mode 100644
index 0eb0057..0000000
--- a/net-misc/networkmanager/files/musl-process-util.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- a/shared/systemd/src/basic/process-util.c
-+++ b/shared/systemd/src/basic/process-util.c
-@@ -21,6 +21,9 @@
- #include <sys/wait.h>
- #include <syslog.h>
- #include <unistd.h>
-+#ifndef __GLIBC__
-+#include <pthread.h>
-+#endif
- #if 0 /* NM_IGNORED */
- #if HAVE_VALGRIND_VALGRIND_H
- #include <valgrind/valgrind.h>
-@@ -1168,11 +1171,13 @@ void reset_cached_pid(void) {
- cached_pid = CACHED_PID_UNSET;
- }
-
-+#ifdef __GLIBC__
- /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
- * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
- * libpthread, as it is part of glibc anyway. */
- extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
- extern void* __dso_handle _weak_;
-+#endif
-
- pid_t getpid_cached(void) {
- static bool installed = false;
-@@ -1201,7 +1206,12 @@ pid_t getpid_cached(void) {
- * only half-documented (glibc doesn't document it but LSB does — though only superficially)
- * we'll check for errors only in the most generic fashion possible. */
-
-- if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
-+ #ifdef __GLIBC__
-+ if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
-+ #else
-+ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
-+ #endif
-+
- /* OOM? Let's try again later */
- cached_pid = CACHED_PID_UNSET;
- return new_pid;
diff --git a/net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch b/net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch
deleted file mode 100644
index b3b6375..0000000
--- a/net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch
+++ /dev/null
@@ -1,169 +0,0 @@
-Backport of https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/640
-
---- a/src/devices/wifi/nm-device-iwd.c
-+++ b/src/devices/wifi/nm-device-iwd.c
-@@ -1905,38 +1905,39 @@ schedule_periodic_scan (NMDeviceIwd *self, gboolean initial_scan)
- {
- NMDeviceIwdPrivate *priv = NM_DEVICE_IWD_GET_PRIVATE (self);
- GVariant *value;
-- gboolean disconnected;
-+ gboolean disconnected = TRUE;
- guint interval;
-
-- if (!priv->can_scan || priv->scan_requested)
-- return;
--
-- value = g_dbus_proxy_get_cached_property (priv->dbus_station_proxy, "State");
-- disconnected = nm_streq0 (get_variant_state (value), "disconnected");
-- g_variant_unref (value);
-+ if (priv->can_scan) {
-+ value = g_dbus_proxy_get_cached_property (priv->dbus_station_proxy, "State");
-+ disconnected = nm_streq0 (get_variant_state (value), "disconnected");
-+ g_variant_unref (value);
-+ }
-
- /* Start scan immediately after a disconnect, mode change or
-- * device UP, otherwise wait a period dependent on the current
-- * state.
-+ * device UP, otherwise wait 10 seconds. When connected, update
-+ * AP list mainly on UI requests.
- *
- * (initial_scan && disconnected) override priv->scanning below
- * because of an IWD quirk where a device will often be in the
- * autoconnect state and scanning at the time of our initial_scan,
-- * but our logic will the send it a Disconnect() causeing IWD to
-+ * but our logic will then send it a Disconnect() causing IWD to
- * exit autoconnect and interrupt the ongoing scan, meaning that
- * we still want a new scan ASAP.
- */
-- if (initial_scan && disconnected)
-+ if (!priv->can_scan || !disconnected || priv->scan_requested || priv->scanning)
-+ interval = -1;
-+ else if (initial_scan)
- interval = 0;
-- else if (!priv->periodic_scan_id && !priv->scanning)
-- interval = disconnected ? 10 : 20;
-+ else if (!priv->periodic_scan_id)
-+ interval = 10;
- else
- return;
-
- nm_clear_g_source (&priv->periodic_scan_id);
-- priv->periodic_scan_id = g_timeout_add_seconds (interval,
-- periodic_scan_timeout_cb,
-- self);
-+
-+ if (interval != (guint) -1)
-+ priv->periodic_scan_id = g_timeout_add_seconds (interval, periodic_scan_timeout_cb, self);
- }
-
- static void
-@@ -2331,7 +2332,6 @@ powered_changed (NMDeviceIwd *self, gboolean new_powered)
- update_aps (self);
- } else {
- set_can_scan (self, FALSE);
-- nm_clear_g_source (&priv->periodic_scan_id);
- priv->scanning = FALSE;
- priv->scan_requested = FALSE;
- priv->can_connect = FALSE;
-@@ -2537,17 +2537,7 @@ dispose (GObject *object)
-
- nm_clear_g_cancellable (&priv->cancellable);
-
-- nm_clear_g_source (&priv->periodic_scan_id);
--
-- cleanup_association_attempt (self, TRUE);
--
-- g_clear_object (&priv->dbus_device_proxy);
-- g_clear_object (&priv->dbus_station_proxy);
-- g_clear_object (&priv->dbus_ap_proxy);
-- g_clear_object (&priv->dbus_adhoc_proxy);
-- g_clear_object (&priv->dbus_obj);
--
-- remove_all_aps (self);
-+ nm_device_iwd_set_dbus_object(self, NULL);
-
- G_OBJECT_CLASS (nm_device_iwd_parent_class)->dispose (object);
-
---- a/src/devices/wifi/nm-iwd-manager.c
-+++ b/src/devices/wifi/nm-iwd-manager.c
-@@ -622,6 +622,38 @@ interface_removed (GDBusObjectManager *object_manager, GDBusObject *object,
- }
- }
-
-+static void
-+object_added(GDBusObjectManager *object_manager, GDBusObject *object, gpointer user_data)
-+{
-+ GList *interfaces, *iter;
-+
-+ interfaces = g_dbus_object_get_interfaces(object);
-+
-+ for (iter = interfaces; iter; iter = iter->next) {
-+ GDBusInterface *interface = G_DBUS_INTERFACE(iter->data);
-+
-+ interface_added(NULL, object, interface, user_data);
-+ }
-+
-+ g_list_free_full(interfaces, g_object_unref);
-+}
-+
-+static void
-+object_removed(GDBusObjectManager *object_manager, GDBusObject *object, gpointer user_data)
-+{
-+ GList *interfaces, *iter;
-+
-+ interfaces = g_dbus_object_get_interfaces(object);
-+
-+ for (iter = interfaces; iter; iter = iter->next) {
-+ GDBusInterface *interface = G_DBUS_INTERFACE(iter->data);
-+
-+ interface_removed(NULL, object, interface, user_data);
-+ }
-+
-+ g_list_free_full(interfaces, g_object_unref);
-+}
-+
- static void
- connection_removed (NMSettings *settings,
- NMSettingsConnection *sett_conn,
-@@ -682,22 +714,6 @@ _om_has_name_owner (GDBusObjectManager *object_manager)
- return !!name_owner;
- }
-
--static void
--object_added (NMIwdManager *self, GDBusObject *object)
--{
-- GList *interfaces, *iter;
--
-- interfaces = g_dbus_object_get_interfaces (object);
--
-- for (iter = interfaces; iter; iter = iter->next) {
-- GDBusInterface *interface = G_DBUS_INTERFACE (iter->data);
--
-- interface_added (NULL, object, interface, self);
-- }
--
-- g_list_free_full (interfaces, g_object_unref);
--}
--
- static void
- release_object_manager (NMIwdManager *self)
- {
-@@ -836,12 +852,16 @@ got_object_manager (GObject *object, GAsyncResult *result, gpointer user_data)
- G_CALLBACK (interface_added), self);
- g_signal_connect (priv->object_manager, "interface-removed",
- G_CALLBACK (interface_removed), self);
-+ g_signal_connect (priv->object_manager, "object-added",
-+ G_CALLBACK(object_added), self);
-+ g_signal_connect (priv->object_manager, "object-removed",
-+ G_CALLBACK(object_removed), self);
-
- g_hash_table_remove_all (priv->known_networks);
-
- objects = g_dbus_object_manager_get_objects (object_manager);
- for (iter = objects; iter; iter = iter->next)
-- object_added (self, G_DBUS_OBJECT (iter->data));
-+ object_added (NULL, G_DBUS_OBJECT(iter->data), self);
-
- g_list_free_full (objects, g_object_unref);
-
diff --git a/net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch b/net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch
deleted file mode 100644
index cfa642d..0000000
--- a/net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch
+++ /dev/null
@@ -1,265 +0,0 @@
-From a58a89213bf4d0cefb155fef1ec9425f7a6ca5c8 Mon Sep 17 00:00:00 2001
-From: Roy Marples <roy@marples.name>
-Date: Tue, 19 Jan 2021 05:04:31 +0000
-Subject: [PATCH] DHCP: Support dhcpcd-9.x
-
-This locks NM into dhcpcd-9.3.3 as that is the first version to support
-the --noconfigure option. Older versions are no longer supported by NM
-because they do modify the host which is undesirable.
-
-Due to the way dhcpcd-9 uses privilege separation and that it re-parents
-itself to PID 1, the main process cannot be reaped or waited for.
-So we rely on dhcpcd correctly cleaning up after itself.
-A new function nm_dhcp_client_stop_watch_child() has been added
-so that dhcpcd can perform similar cleanup to the equivalent stop call.
-
-As part of this change, the STOP and STOPPED reasons are mapped to
-NM_DHCP_STATE_DONE and PREINIT is mapped to a new state NM_DHCP_STATE_NOOP
-which means NM should just ignore this state.
-
-https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/668
----
- NEWS | 3 ++
- src/dhcp/nm-dhcp-client.c | 20 +++++++++-
- src/dhcp/nm-dhcp-client.h | 3 ++
- src/dhcp/nm-dhcp-dhcpcd.c | 82 ++++++++++++++++++++-------------------
- 4 files changed, 67 insertions(+), 41 deletions(-)
-
-diff --git a/NEWS b/NEWS
-index 8a48587e5..958bbe91c 100644
---- a/NEWS
-+++ b/NEWS
-@@ -45,6 +45,9 @@ USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE!
- cmdline argument actually generates a connection which disables both
- ipv4 and ipv6. Previously the generated connection would disable ipv4
- but ipv6 would be set to the 'auto' method.
-+* The dhcpcd plugin now requires a minimum version of dhcpcd-9.3.3 with
-+ the --noconfigure option. Using an older version will cause dhcpcd to
-+ exit with a status code of 1.
-
- =============================================
- NetworkManager-1.26
-diff --git a/src/dhcp/nm-dhcp-client.c b/src/dhcp/nm-dhcp-client.c
-index 46ab48959..56f599abf 100644
---- a/src/dhcp/nm-dhcp-client.c
-+++ b/src/dhcp/nm-dhcp-client.c
-@@ -367,10 +367,13 @@ reason_to_state(NMDhcpClient *self, const char *iface, const char *reason)
- else if (g_ascii_strcasecmp(reason, "nak") == 0 || g_ascii_strcasecmp(reason, "expire") == 0
- || g_ascii_strcasecmp(reason, "expire6") == 0)
- return NM_DHCP_STATE_EXPIRE;
-- else if (g_ascii_strcasecmp(reason, "end") == 0)
-+ else if (g_ascii_strcasecmp(reason, "end") == 0 || g_ascii_strcasecmp(reason, "stop") == 0
-+ || g_ascii_strcasecmp(reason, "stopped") == 0)
- return NM_DHCP_STATE_DONE;
- else if (g_ascii_strcasecmp(reason, "fail") == 0 || g_ascii_strcasecmp(reason, "abend") == 0)
- return NM_DHCP_STATE_FAIL;
-+ else if (g_ascii_strcasecmp(reason, "preinit") == 0)
-+ return NM_DHCP_STATE_NOOP;
-
- _LOGD("unmapped DHCP state '%s'", reason);
- return NM_DHCP_STATE_UNKNOWN;
-@@ -547,6 +550,18 @@ nm_dhcp_client_watch_child(NMDhcpClient *self, pid_t pid)
- priv->watch_id = g_child_watch_add(pid, daemon_watch_cb, self);
- }
-
-+void
-+nm_dhcp_client_stop_watch_child(NMDhcpClient *self, pid_t pid)
-+{
-+ NMDhcpClientPrivate *priv = NM_DHCP_CLIENT_GET_PRIVATE(self);
-+
-+ g_return_if_fail(priv->pid == pid);
-+ priv->pid = -1;
-+
-+ watch_cleanup(self);
-+ timeout_cleanup(self);
-+}
-+
- gboolean
- nm_dhcp_client_start_ip4(NMDhcpClient *self,
- GBytes * client_id,
-@@ -874,6 +889,9 @@ nm_dhcp_client_handle_event(gpointer unused,
- state_to_string(new_state),
- reason);
-
-+ if (new_state == NM_DHCP_STATE_NOOP)
-+ return TRUE;
-+
- if (NM_IN_SET(new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED)) {
- GVariantIter iter;
- const char * name;
-diff --git a/src/dhcp/nm-dhcp-client.h b/src/dhcp/nm-dhcp-client.h
-index 05faa9ea5..46446849a 100644
---- a/src/dhcp/nm-dhcp-client.h
-+++ b/src/dhcp/nm-dhcp-client.h
-@@ -55,6 +55,7 @@ typedef enum {
- NM_DHCP_STATE_EXPIRE, /* lease expired or NAKed */
- NM_DHCP_STATE_FAIL, /* failed for some reason */
- NM_DHCP_STATE_TERMINATED, /* client is no longer running */
-+ NM_DHCP_STATE_NOOP, /* state is a non operation for NetworkManager */
- __NM_DHCP_STATE_MAX,
- NM_DHCP_STATE_MAX = __NM_DHCP_STATE_MAX - 1,
- } NMDhcpState;
-@@ -183,6 +184,8 @@ void nm_dhcp_client_start_timeout(NMDhcpClient *self);
-
- void nm_dhcp_client_watch_child(NMDhcpClient *self, pid_t pid);
-
-+void nm_dhcp_client_stop_watch_child(NMDhcpClient *self, pid_t pid);
-+
- void nm_dhcp_client_set_state(NMDhcpClient *self,
- NMDhcpState new_state,
- NMIPConfig * ip_config,
-diff --git a/src/dhcp/nm-dhcp-dhcpcd.c b/src/dhcp/nm-dhcp-dhcpcd.c
-index b2b5d28bd..7cb003859 100644
---- a/src/dhcp/nm-dhcp-dhcpcd.c
-+++ b/src/dhcp/nm-dhcp-dhcpcd.c
-@@ -1,6 +1,6 @@
- /* SPDX-License-Identifier: GPL-2.0+ */
- /*
-- * Copyright (C) 2008 Roy Marples
-+ * Copyright (C) 2008,2020 Roy Marples <roy@marples.name>
- * Copyright (C) 2010 Dan Williams <dcbw@redhat.com>
- */
-
-@@ -40,7 +40,6 @@ static GType nm_dhcp_dhcpcd_get_type(void);
- /*****************************************************************************/
-
- typedef struct {
-- char * pid_file;
- NMDhcpListener *dhcp_listener;
- } NMDhcpDhcpcdPrivate;
-
-@@ -71,39 +70,37 @@ ip4_start(NMDhcpClient *client,
- const char * last_ip4_address,
- GError ** error)
- {
-- NMDhcpDhcpcd * self = NM_DHCP_DHCPCD(client);
-- NMDhcpDhcpcdPrivate *priv = NM_DHCP_DHCPCD_GET_PRIVATE(self);
-- gs_unref_ptrarray GPtrArray *argv = NULL;
-- pid_t pid = -1;
-- GError * local = NULL;
-- gs_free char * cmd_str = NULL;
-- gs_free char * binary_name = NULL;
-+ NMDhcpDhcpcd * self = NM_DHCP_DHCPCD(client);
-+ gs_unref_ptrarray GPtrArray *argv = NULL;
-+ pid_t pid;
-+ GError * local;
-+ gs_free char * cmd_str = NULL;
- const char * iface;
- const char * dhcpcd_path;
- const char * hostname;
-
-- g_return_val_if_fail(priv->pid_file == NULL, FALSE);
-+ pid = nm_dhcp_client_get_pid(client);
-+ g_return_val_if_fail(pid == -1, FALSE);
-
- iface = nm_dhcp_client_get_iface(client);
-
-- /* dhcpcd does not allow custom pidfiles; the pidfile is always
-- * RUNSTATEDIR "dhcpcd-<ifname>.pid".
-- */
-- priv->pid_file = g_strdup_printf(RUNSTATEDIR "/dhcpcd-%s.pid", iface);
--
- dhcpcd_path = nm_dhcp_dhcpcd_get_path();
- if (!dhcpcd_path) {
- nm_utils_error_set_literal(error, NM_UTILS_ERROR_UNKNOWN, "dhcpcd binary not found");
- return FALSE;
- }
-
-- /* Kill any existing dhcpcd from the pidfile */
-- binary_name = g_path_get_basename(dhcpcd_path);
-- nm_dhcp_client_stop_existing(priv->pid_file, binary_name);
--
- argv = g_ptr_array_new();
- g_ptr_array_add(argv, (gpointer) dhcpcd_path);
-
-+ /* Don't configure anything, we will do that instead.
-+ * This requires dhcpcd-9.3.3 or newer.
-+ * Older versions only had an option not to install a default route,
-+ * dhcpcd still added addresses and other routes so we no longer support that
-+ * as it doesn't fit how NetworkManager wants to work.
-+ */
-+ g_ptr_array_add(argv, (gpointer) "--noconfigure");
-+
- g_ptr_array_add(argv, (gpointer) "-B"); /* Don't background on lease (disable fork()) */
-
- g_ptr_array_add(argv, (gpointer) "-K"); /* Disable built-in carrier detection */
-@@ -113,8 +110,6 @@ ip4_start(NMDhcpClient *client,
- /* --noarp. Don't request or claim the address by ARP; this also disables IPv4LL. */
- g_ptr_array_add(argv, (gpointer) "-A");
-
-- g_ptr_array_add(argv, (gpointer) "-G"); /* Let NM handle routing */
--
- g_ptr_array_add(argv, (gpointer) "-c"); /* Set script file */
- g_ptr_array_add(argv, (gpointer) nm_dhcp_helper_path);
-
-@@ -146,8 +141,8 @@ ip4_start(NMDhcpClient *client,
- if (!g_spawn_async(NULL,
- (char **) argv->pdata,
- NULL,
-- G_SPAWN_DO_NOT_REAP_CHILD | G_SPAWN_STDOUT_TO_DEV_NULL
-- | G_SPAWN_STDERR_TO_DEV_NULL,
-+ G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL
-+ | G_SPAWN_DO_NOT_REAP_CHILD,
- nm_utils_setpgid,
- NULL,
- &pid,
-@@ -169,23 +164,32 @@ ip4_start(NMDhcpClient *client,
- static void
- stop(NMDhcpClient *client, gboolean release)
- {
-- NMDhcpDhcpcd * self = NM_DHCP_DHCPCD(client);
-- NMDhcpDhcpcdPrivate *priv = NM_DHCP_DHCPCD_GET_PRIVATE(self);
-- int errsv;
--
-- NM_DHCP_CLIENT_CLASS(nm_dhcp_dhcpcd_parent_class)->stop(client, release);
--
-- if (priv->pid_file) {
-- if (remove(priv->pid_file) == -1) {
-- errsv = errno;
-- _LOGD("could not remove dhcp pid file \"%s\": %d (%s)",
-- priv->pid_file,
-- errsv,
-- nm_strerror_native(errsv));
-- }
-+ NMDhcpDhcpcd *self = NM_DHCP_DHCPCD(client);
-+ pid_t pid;
-+ int sig, errsv;
-+
-+ pid = nm_dhcp_client_get_pid(client);
-+ sig = release ? SIGALRM : SIGTERM;
-+ _LOGD("sending %s to dhcpcd pid %d", sig == SIGALRM ? "SIGALRM" : "SIGTERM", pid);
-+
-+ /* dhcpcd-9.x features privilege separation.
-+ * It's not our job to track all these processes so we rely on dhcpcd
-+ * to always cleanup after itself.
-+ * Because it also re-parents itself to PID 1, the process cannot be
-+ * reaped or waited for.
-+ * As such, just send the correct signal.
-+ */
-+ if (kill(pid, sig) == -1) {
-+ errsv = errno;
-+ _LOGE("failed to kill dhcpcd %d:%s", errsv, strerror(errsv));
- }
-
-- /* FIXME: implement release... */
-+ /* When this function exits NM expects the PID to be -1.
-+ * This means we also need to stop watching the pid.
-+ * If we need to know the exit status then we need to refactor NM
-+ * to allow a non -1 to mean we're waiting to exit still.
-+ */
-+ nm_dhcp_client_stop_watch_child(client, pid);
- }
-
- /*****************************************************************************/
-@@ -214,8 +218,6 @@ dispose(GObject *object)
- g_clear_object(&priv->dhcp_listener);
- }
-
-- nm_clear_g_free(&priv->pid_file);
--
- G_OBJECT_CLASS(nm_dhcp_dhcpcd_parent_class)->dispose(object);
- }
-
---
-2.30.0
-
diff --git a/net-misc/networkmanager/files/reallocarray-1.patch b/net-misc/networkmanager/files/reallocarray-1.patch
deleted file mode 100644
index 2cc703f..0000000
--- a/net-misc/networkmanager/files/reallocarray-1.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 6f6c844ab880d5535a05dd341643a28f7afeb6ec Mon Sep 17 00:00:00 2001
-From: Jory Pratt <anarchy@gentoo.org>
-Date: Wed, 3 Feb 2021 09:58:22 -0600
-Subject: [PATCH] musl [added support for reallocarray](0), but the function
- prototype is declared in `stdlib.h` instead of `malloc.h`.
-
-Update the check for reallocarray to check both in `malloc.h` and
-`stdlib.h`.
-
-[0]:https://git.musl-libc.org/cgit/musl/commit/?id=821083ac7b54eaa040d5a8ddc67c6206a175e0ca
----
- configure | 2 +-
- configure.ac | 1 +
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 40eed6c..4d12779 100755
---- a/configure
-+++ b/configure
-@@ -18252,7 +18252,7 @@ _ACEOF
-
- ac_fn_c_check_decl "$LINENO" "reallocarray" "ac_cv_have_decl_reallocarray" "
- #include <malloc.h>
--
-+#include <stdlib.h>
- "
- if test "x$ac_cv_have_decl_reallocarray" = xyes; then :
- ac_have_decl=1
-diff --git a/configure.ac b/configure.ac
-index 0d448f3..bfc1972 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -83,6 +83,7 @@ AC_CHECK_DECLS([
- reallocarray],
- [], [], [[
- #include <malloc.h>
-+#include <stdlib.h>
- ]])
-
- AC_CHECK_DECLS([
---
-2.26.2
-
diff --git a/net-misc/networkmanager/metadata.xml b/net-misc/networkmanager/metadata.xml
deleted file mode 100644
index 855614f..0000000
--- a/net-misc/networkmanager/metadata.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>gnome@gentoo.org</email>
- <name>Gentoo GNOME Desktop</name>
- </maintainer>
- <use>
- <flag name="connection-sharing">Use <pkg>net-dns/dnsmasq</pkg> and
- <pkg>net-firewall/iptables</pkg> for connection sharing</flag>
- <flag name="dhclient">Use dhclient from <pkg>net-misc/dhcp</pkg> for
- getting ip</flag>
- <flag name="dhcpcd">Use <pkg>net-misc/dhcpcd</pkg> for getting ip</flag>
- <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking</flag>
- <flag name="iwd">Use <pkg>net-wireless/iwd</pkg> instead of
- <pkg>net-wireless/wpa_supplicant</pkg> for wifi support by default</flag>
- <flag name="json">Enable JSON validation via <pkg>dev-libs/jansson</pkg>
- in libnm.</flag>
- <flag name="modemmanager">Enable support for mobile broadband devices
- using <pkg>net-misc/modemmanager</pkg></flag>
- <flag name="nss">Use <pkg>dev-libs/nss</pkg> for cryptography</flag>
- <flag name="ofono">Use <pkg>net-misc/ofono</pkg> for telephony support.</flag>
- <flag name="ovs">Enable OpenVSwitch support</flag>
- <flag name="ppp">Enable support for mobile broadband and PPPoE
- connections using <pkg>net-dialup/ppp</pkg></flag>
- <flag name="resolvconf">Use <pkg>net-dns/openresolv</pkg> for managing
- DNS information in /etc/resolv.conf. Generally, a symlink to
- /run/NetworkManager/resolv.conf is simpler. On systems running
- systemd-resolved, disable this flag and create a symlink to
- /run/systemd/resolve/stub-resolv.conf.</flag>
- <flag name="teamd">Enable Teamd control support</flag>
- <flag name="wifi">Enable support for wifi and 802.1x security</flag>
- <flag name="wext">Enable support for the deprecated Wext (Wireless
- Extensions) API; needed for some older drivers (e.g. ipw2200,
- ndiswrapper)</flag>
- </use>
-</pkgmetadata>
diff --git a/net-misc/networkmanager/networkmanager-1.26.4.ebuild b/net-misc/networkmanager/networkmanager-1.26.4.ebuild
deleted file mode 100644
index ffc63ee..0000000
--- a/net-misc/networkmanager/networkmanager-1.26.4.ebuild
+++ /dev/null
@@ -1,357 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME_ORG_MODULE="NetworkManager"
-GNOME2_LA_PUNT="yes"
-VALA_USE_DEPEND="vapigen"
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit bash-completion-r1 gnome2 linux-info multilib python-any-r1 systemd readme.gentoo-r1 vala virtualx udev multilib-minimal
-
-DESCRIPTION="A set of co-operative tools that make networking simple and straightforward"
-HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-IUSE="audit bluetooth connection-sharing dhclient dhcpcd elogind gnutls +introspection iwd json kernel_linux +nss +modemmanager ncurses ofono ovs policykit +ppp resolvconf selinux systemd teamd test vala +wext +wifi"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="
- bluetooth? ( modemmanager )
- iwd? ( wifi )
- vala? ( introspection )
- wext? ( wifi )
- || ( nss gnutls )
- ?? ( elogind systemd )
-"
-
-KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
-
-# gobject-introspection-0.10.3 is needed due to gnome bug 642300
-# wpa_supplicant-0.7.3-r3 is needed due to bug 359271
-COMMON_DEPEND="
- >=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}]
- policykit? ( >=sys-auth/polkit-0.106 )
- net-libs/libndp[${MULTILIB_USEDEP}]
- >=net-misc/curl-7.24
- net-misc/iputils
- sys-apps/util-linux[${MULTILIB_USEDEP}]
- sys-libs/readline:0=
- >=virtual/libudev-175:=[${MULTILIB_USEDEP}]
- audit? ( sys-process/audit )
- bluetooth? ( >=net-wireless/bluez-5 )
- connection-sharing? (
- net-dns/dnsmasq[dbus,dhcp]
- net-firewall/iptables )
- dhclient? ( >=net-misc/dhcp-4[client] )
- dhcpcd? ( net-misc/dhcpcd )
- elogind? ( >=sys-auth/elogind-219 )
- introspection? ( >=dev-libs/gobject-introspection-0.10.3:= )
- json? ( >=dev-libs/jansson-2.5[${MULTILIB_USEDEP}] )
- modemmanager? ( >=net-misc/modemmanager-0.7.991:0=
- net-misc/mobile-broadband-provider-info )
- ncurses? ( >=dev-libs/newt-0.52.15 )
- nss? ( >=dev-libs/nss-3.11:=[${MULTILIB_USEDEP}] )
- !nss? ( gnutls? (
- dev-libs/libgcrypt:0=[${MULTILIB_USEDEP}]
- >=net-libs/gnutls-2.12:=[${MULTILIB_USEDEP}] ) )
- ofono? ( net-misc/ofono )
- ovs? ( dev-libs/jansson )
- ppp? ( >=net-dialup/ppp-2.4.5:=[ipv6] )
- resolvconf? ( net-dns/openresolv )
- selinux? ( sys-libs/libselinux )
- systemd? ( >=sys-apps/systemd-209:0= )
- teamd? (
- dev-libs/jansson
- >=net-misc/libteam-1.9
- )
-"
-RDEPEND="${COMMON_DEPEND}
- acct-group/plugdev
- || (
- net-misc/iputils[arping(+)]
- net-analyzer/arping
- )
- wifi? (
- !iwd? ( >=net-wireless/wpa_supplicant-0.7.3-r3[dbus] )
- iwd? ( net-wireless/iwd )
- )
-"
-DEPEND="${COMMON_DEPEND}
- dev-util/gdbus-codegen
- dev-util/glib-utils
- dev-util/gtk-doc-am
- >=dev-util/intltool-0.40
- >=sys-devel/gettext-0.17
- >=sys-kernel/linux-headers-3.18
- virtual/pkgconfig
- introspection? (
- $(python_gen_any_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]')
- dev-lang/perl
- dev-libs/libxslt
- )
- vala? ( $(vala_depend) )
- test? (
- $(python_gen_any_dep '
- dev-python/dbus-python[${PYTHON_USEDEP}]
- dev-python/pygobject:3[${PYTHON_USEDEP}]')
- )
-"
-
-PATCHES=( "${FILESDIR}"/${PN}-1.26.4-iwd-fixes-pr640.patch
- # Required to build on musl
- "${FILESDIR}"/musl-basic.patch
- "${FILESDIR}"/musl-network-support.patch
- "${FILESDIR}"/musl-fix-includes.patch
- "${FILESDIR}"/musl-process-util.patch
- "${FILESDIR}"/musl-compar.patch
- "${FILESDIR}"/musl-no-drand.patch
- "${FILESDIR}"/reallocarray-1.patch
-)
-
-python_check_deps() {
- if use introspection; then
- has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return
- fi
- if use test; then
- has_version "dev-python/dbus-python[${PYTHON_USEDEP}]" &&
- has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]"
- fi
-}
-
-sysfs_deprecated_check() {
- ebegin "Checking for SYSFS_DEPRECATED support"
-
- if { linux_chkconfig_present SYSFS_DEPRECATED_V2; }; then
- eerror "Please disable SYSFS_DEPRECATED_V2 support in your kernel config and recompile your kernel"
- eerror "or NetworkManager will not work correctly."
- eerror "See https://bugs.gentoo.org/333639 for more info."
- die "CONFIG_SYSFS_DEPRECATED_V2 support detected!"
- fi
- eend $?
-}
-
-pkg_pretend() {
- if use kernel_linux; then
- get_version
- if linux_config_exists; then
- sysfs_deprecated_check
- else
- ewarn "Was unable to determine your kernel .config"
- ewarn "Please note that if CONFIG_SYSFS_DEPRECATED_V2 is set in your kernel .config, NetworkManager will not work correctly."
- ewarn "See https://bugs.gentoo.org/333639 for more info."
- fi
-
- fi
-}
-
-pkg_setup() {
- if use connection-sharing; then
- if kernel_is lt 5 1; then
- CONFIG_CHECK="~NF_NAT_IPV4 ~NF_NAT_MASQUERADE_IPV4"
- else
- CONFIG_CHECK="~NF_NAT ~NF_NAT_MASQUERADE"
- fi
- linux-info_pkg_setup
- fi
- if use introspection || use test; then
- python-any-r1_pkg_setup
- fi
-}
-
-src_prepare() {
- DOC_CONTENTS="To modify system network connections without needing to enter the
- root password, add your user account to the 'plugdev' group."
-
- use vala && vala_src_prepare
- gnome2_src_prepare
-
- sed -i \
- -e 's#/usr/bin/sed#/bin/sed#' \
- data/84-nm-drivers.rules \
- || die
-}
-
-multilib_src_configure() {
- local myconf=(
- --disable-more-warnings
- --disable-static
- --localstatedir=/var
- --with-runstatedir=/run
- --disable-lto
- --disable-qt
- --without-netconfig
- --with-dbus-sys-dir=/etc/dbus-1/system.d
- $(multilib_native_with nmcli)
- --with-udev-dir="$(get_udevdir)"
- --with-config-plugins-default=keyfile
- --with-iptables=/sbin/iptables
- --with-ebpf=yes
- $(multilib_native_enable concheck)
- --with-nm-cloud-setup=$(multilib_is_native_abi && echo yes || echo no)
- --with-crypto=$(usex nss nss gnutls)
- # elogind lacks multilib for now, and consolekit doesn't require linking against, so we use it as a fake option
- # This SHOULD be removable once elogind has that. We abuse the fact that 'consolekit' does nothing at buildtime.
- # (There is no off switch, and we do not support upower.)
- # bug #747358
- --with-session-tracking=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
- --with-suspend-resume=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
- $(multilib_native_use_with audit libaudit)
- $(multilib_native_use_enable bluetooth bluez5-dun)
- --without-dhcpcanon
- $(use_with dhclient)
- $(use_with dhcpcd)
- --with-config-dhcp-default=internal
- $(multilib_native_use_enable introspection)
- $(use_enable json json-validation)
- $(multilib_native_use_enable ppp)
- --without-libpsl
- $(multilib_native_use_with modemmanager modem-manager-1)
- $(multilib_native_use_with ncurses nmtui)
- $(multilib_native_use_with ofono)
- $(multilib_native_use_enable ovs)
- $(multilib_native_use_enable policykit polkit)
- $(multilib_native_use_with resolvconf)
- $(multilib_native_use_with selinux)
- $(multilib_native_use_with systemd systemd-journal)
- $(multilib_native_use_enable teamd teamdctl)
- $(multilib_native_use_enable test tests)
- $(multilib_native_use_enable vala)
- --without-valgrind
- $(multilib_native_use_with wifi iwd)
- $(multilib_native_use_with wext)
- $(multilib_native_use_enable wifi)
- )
-
- # Same hack as net-dialup/pptpd to get proper plugin dir for ppp, bug #519986
- if use ppp; then
- local PPPD_VER=`best_version net-dialup/ppp`
- PPPD_VER=${PPPD_VER#*/*-} #reduce it to ${PV}-${PR}
- PPPD_VER=${PPPD_VER%%[_-]*} # main version without beta/pre/patch/revision
- myconf+=( --with-pppd-plugin-dir=/usr/$(get_libdir)/pppd/${PPPD_VER} )
- fi
-
- # unit files directory needs to be passed only when systemd is enabled,
- # otherwise systemd support is not disabled completely, bug #524534
- use systemd && myconf+=( --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" )
-
- if multilib_is_native_abi; then
- # work-around man out-of-source brokenness, must be done before configure
- ln -s "${S}/docs" docs || die
- ln -s "${S}/man" man || die
- fi
-
- ECONF_SOURCE=${S} gnome2_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi; then
- emake
- else
- local targets=(
- libnm/libnm.la
- )
- emake "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- if use test && multilib_is_native_abi; then
- python_setup
- virtx emake check
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- # Install completions at proper place, bug #465100
- gnome2_src_install completiondir="$(get_bashcompdir)"
- insinto /usr/lib/NetworkManager/conf.d #702476
- doins "${S}"/examples/nm-conf.d/31-mac-addr-change.conf
- else
- local targets=(
- install-libLTLIBRARIES
- install-libnmincludeHEADERS
- install-nodist_libnmincludeHEADERS
- install-pkgconfigDATA
- )
- emake DESTDIR="${D}" "${targets[@]}"
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- ! use systemd && readme.gentoo_create_doc
-
- newinitd "${FILESDIR}/init.d.NetworkManager-r2" NetworkManager
- newconfd "${FILESDIR}/conf.d.NetworkManager" NetworkManager
-
- # Need to keep the /etc/NetworkManager/dispatched.d for dispatcher scripts
- keepdir /etc/NetworkManager/dispatcher.d
-
- # Provide openrc net dependency only when nm is connected
- exeinto /etc/NetworkManager/dispatcher.d
- newexe "${FILESDIR}/10-openrc-status-r4" 10-openrc-status
- sed -e "s:@EPREFIX@:${EPREFIX}:g" \
- -i "${ED}/etc/NetworkManager/dispatcher.d/10-openrc-status" || die
-
- keepdir /etc/NetworkManager/system-connections
- chmod 0600 "${ED}"/etc/NetworkManager/system-connections/.keep* # bug #383765, upstream bug #754594
-
- # Allow users in plugdev group to modify system connections
- insinto /usr/share/polkit-1/rules.d/
- doins "${FILESDIR}/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
-
- if use iwd; then
- # This goes to $nmlibdir/conf.d/ and $nmlibdir is '${prefix}'/lib/$PACKAGE, thus always lib, not get_libdir
- cat <<-EOF > "${ED%/}"/usr/lib/NetworkManager/conf.d/iwd.conf
- [device]
- wifi.backend=iwd
- EOF
- fi
-
- # Empty
- rmdir "${ED%/}"/var{/lib{/NetworkManager,},} || die
-}
-
-pkg_postinst() {
- gnome2_pkg_postinst
- systemd_reenable NetworkManager.service
- ! use systemd && readme.gentoo_print_elog
-
- if [[ -e "${EROOT}etc/NetworkManager/nm-system-settings.conf" ]]; then
- ewarn "The ${PN} system configuration file has moved to a new location."
- ewarn "You must migrate your settings from ${EROOT}/etc/NetworkManager/nm-system-settings.conf"
- ewarn "to ${EROOT}etc/NetworkManager/NetworkManager.conf"
- ewarn
- ewarn "After doing so, you can remove ${EROOT}etc/NetworkManager/nm-system-settings.conf"
- fi
-
- # NM fallbacks to plugin specified at compile time (upstream bug #738611)
- # but still show a warning to remember people to have cleaner config file
- if [[ -e "${EROOT}etc/NetworkManager/NetworkManager.conf" ]]; then
- if grep plugins "${EROOT}etc/NetworkManager/NetworkManager.conf" | grep -q ifnet; then
- ewarn
- ewarn "You seem to use 'ifnet' plugin in ${EROOT}etc/NetworkManager/NetworkManager.conf"
- ewarn "Since it won't be used, you will need to stop setting ifnet plugin there."
- ewarn
- fi
- fi
-
- # NM shows lots of errors making nmcli almost unusable, bug #528748 upstream bug #690457
- if grep -r "psk-flags=1" "${EROOT}"/etc/NetworkManager/; then
- ewarn "You have psk-flags=1 setting in above files, you will need to"
- ewarn "either reconfigure affected networks or, at least, set the flag"
- ewarn "value to '0'."
- fi
-
- if use dhclient || use dhcpcd; then
- ewarn "You have enabled USE=dhclient and/or USE=dhcpcd, but NetworkManager since"
- ewarn "version 1.20 defaults to the internal DHCP client. If the internal client"
- ewarn "works for you, and you're happy with, the alternative USE flags can be"
- ewarn "disabled. If you want to use dhclient or dhcpcd, then you need to tweak"
- ewarn "the main.dhcp configuration option to use one of them instead of internal."
- fi
-}
diff --git a/net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild b/net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild
deleted file mode 100644
index b093a19..0000000
--- a/net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild
+++ /dev/null
@@ -1,356 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-GNOME_ORG_MODULE="NetworkManager"
-VALA_USE_DEPEND="vapigen"
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit bash-completion-r1 gnome2 linux-info multilib python-any-r1 systemd readme.gentoo-r1 vala virtualx udev multilib-minimal
-
-DESCRIPTION="A set of co-operative tools that make networking simple and straightforward"
-HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-IUSE="audit bluetooth connection-sharing dhclient dhcpcd elogind gnutls +introspection iwd kernel_linux +nss +modemmanager ncurses ofono ovs policykit +ppp resolvconf selinux systemd teamd test vala +wext +wifi"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="
- bluetooth? ( modemmanager )
- iwd? ( wifi )
- vala? ( introspection )
- wext? ( wifi )
- || ( nss gnutls )
- ?? ( elogind systemd )
-"
-
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-
-# gobject-introspection-0.10.3 is needed due to gnome bug 642300
-# wpa_supplicant-0.7.3-r3 is needed due to bug 359271
-COMMON_DEPEND="
- >=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}]
- policykit? ( >=sys-auth/polkit-0.106 )
- net-libs/libndp[${MULTILIB_USEDEP}]
- >=net-misc/curl-7.24
- net-misc/iputils
- sys-apps/util-linux[${MULTILIB_USEDEP}]
- sys-libs/readline:0=
- >=virtual/libudev-175:=[${MULTILIB_USEDEP}]
- audit? ( sys-process/audit )
- bluetooth? ( >=net-wireless/bluez-5 )
- connection-sharing? (
- net-dns/dnsmasq[dbus,dhcp]
- net-firewall/iptables )
- dhclient? ( >=net-misc/dhcp-4[client] )
- dhcpcd? ( >=net-misc/dhcpcd-9.3.3 )
- elogind? ( >=sys-auth/elogind-219 )
- introspection? ( >=dev-libs/gobject-introspection-0.10.3:= )
- modemmanager? ( >=net-misc/modemmanager-0.7.991:0=
- net-misc/mobile-broadband-provider-info )
- ncurses? ( >=dev-libs/newt-0.52.15 )
- nss? ( >=dev-libs/nss-3.11:=[${MULTILIB_USEDEP}] )
- !nss? ( gnutls? (
- dev-libs/libgcrypt:0=[${MULTILIB_USEDEP}]
- >=net-libs/gnutls-2.12:=[${MULTILIB_USEDEP}] ) )
- ofono? ( net-misc/ofono )
- ovs? ( dev-libs/jansson )
- ppp? ( >=net-dialup/ppp-2.4.5:=[ipv6] )
- resolvconf? ( net-dns/openresolv )
- selinux? ( sys-libs/libselinux )
- systemd? ( >=sys-apps/systemd-209:0= )
- teamd? (
- dev-libs/jansson
- >=net-misc/libteam-1.9
- )
-"
-RDEPEND="${COMMON_DEPEND}
- acct-group/plugdev
- || (
- net-misc/iputils[arping(+)]
- net-analyzer/arping
- )
- wifi? (
- !iwd? ( >=net-wireless/wpa_supplicant-0.7.3-r3[dbus] )
- iwd? ( net-wireless/iwd )
- )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-3.18
- "
-BDEPEND="
- dev-util/gdbus-codegen
- dev-util/glib-utils
- dev-util/gtk-doc-am
- >=dev-util/intltool-0.40
- >=sys-devel/gettext-0.17
- virtual/pkgconfig
- introspection? (
- $(python_gen_any_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]')
- dev-lang/perl
- dev-libs/libxslt
- )
- vala? ( $(vala_depend) )
- test? (
- $(python_gen_any_dep '
- dev-python/dbus-python[${PYTHON_USEDEP}]
- dev-python/pygobject:3[${PYTHON_USEDEP}]')
- )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.28.0-dhcpcd9.patch"
- # Required to build on musl
- "${FILESDIR}/1.28.0/"0001-uncouple-glibc-functions-and-headers.patch
- "${FILESDIR}/1.28.0/"0002-network-support.patch
- "${FILESDIR}/1.28.0/"0003-Fix-includes-to-support-musl.patch
- "${FILESDIR}/1.28.0/"0004-Fix-pthread-support-for-non-glibc-users.patch
- "${FILESDIR}/1.28.0/"0005-define-compare-for-non-glibc-users.patch
- "${FILESDIR}/1.28.0/"0006-musl-added-support-for-reallocarray-0-but-the-functi.patch
-)
-
-python_check_deps() {
- if use introspection; then
- has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return
- fi
- if use test; then
- has_version "dev-python/dbus-python[${PYTHON_USEDEP}]" &&
- has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]"
- fi
-}
-
-sysfs_deprecated_check() {
- ebegin "Checking for SYSFS_DEPRECATED support"
-
- if { linux_chkconfig_present SYSFS_DEPRECATED_V2; }; then
- eerror "Please disable SYSFS_DEPRECATED_V2 support in your kernel config and recompile your kernel"
- eerror "or NetworkManager will not work correctly."
- eerror "See https://bugs.gentoo.org/333639 for more info."
- die "CONFIG_SYSFS_DEPRECATED_V2 support detected!"
- fi
- eend $?
-}
-
-pkg_pretend() {
- if use kernel_linux; then
- get_version
- if linux_config_exists; then
- sysfs_deprecated_check
- else
- ewarn "Was unable to determine your kernel .config"
- ewarn "Please note that if CONFIG_SYSFS_DEPRECATED_V2 is set in your kernel .config, NetworkManager will not work correctly."
- ewarn "See https://bugs.gentoo.org/333639 for more info."
- fi
-
- fi
-}
-
-pkg_setup() {
- if use connection-sharing; then
- if kernel_is lt 5 1; then
- CONFIG_CHECK="~NF_NAT_IPV4 ~NF_NAT_MASQUERADE_IPV4"
- else
- CONFIG_CHECK="~NF_NAT ~NF_NAT_MASQUERADE"
- fi
- linux-info_pkg_setup
- fi
- if use introspection || use test; then
- python-any-r1_pkg_setup
- fi
-}
-
-src_prepare() {
- DOC_CONTENTS="To modify system network connections without needing to enter the
- root password, add your user account to the 'plugdev' group."
-
- use vala && vala_src_prepare
- gnome2_src_prepare
-
- sed -i \
- -e 's#/usr/bin/sed#/bin/sed#' \
- data/84-nm-drivers.rules \
- || die
-}
-
-multilib_src_configure() {
- local myconf=(
- --disable-more-warnings
- --disable-static
- --localstatedir=/var
- --with-runstatedir=/run
- --disable-lto
- --disable-qt
- --without-netconfig
- --with-dbus-sys-dir=/etc/dbus-1/system.d
- $(multilib_native_with nmcli)
- --with-udev-dir="$(get_udevdir)"
- --with-config-plugins-default=keyfile
- --with-iptables=/sbin/iptables
- --with-ebpf=yes
- $(multilib_native_enable concheck)
- --with-nm-cloud-setup=$(multilib_is_native_abi && echo yes || echo no)
- --with-crypto=$(usex nss nss gnutls)
- # elogind lacks multilib for now, and consolekit doesn't require linking against, so we use it as a fake option
- # This SHOULD be removable once elogind has that. We abuse the fact that 'consolekit' does nothing at buildtime.
- # (There is no off switch, and we do not support upower.)
- # bug #747358
- --with-session-tracking=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
- --with-suspend-resume=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
- $(multilib_native_use_with audit libaudit)
- $(multilib_native_use_enable bluetooth bluez5-dun)
- --without-dhcpcanon
- $(use_with dhclient)
- $(use_with dhcpcd)
- --with-config-dhcp-default=internal
- $(multilib_native_use_enable introspection)
- $(multilib_native_use_enable ppp)
- --without-libpsl
- $(multilib_native_use_with modemmanager modem-manager-1)
- $(multilib_native_use_with ncurses nmtui)
- $(multilib_native_use_with ofono)
- $(multilib_native_use_enable ovs)
- $(multilib_native_use_enable policykit polkit)
- $(multilib_native_use_with resolvconf)
- $(multilib_native_use_with selinux)
- $(multilib_native_use_with systemd systemd-journal)
- $(multilib_native_use_enable teamd teamdctl)
- $(multilib_native_use_enable test tests)
- $(multilib_native_use_enable vala)
- --without-valgrind
- $(multilib_native_use_with wifi iwd)
- $(multilib_native_use_with wext)
- $(multilib_native_use_enable wifi)
- )
-
- # Same hack as net-dialup/pptpd to get proper plugin dir for ppp, bug #519986
- if use ppp; then
- local PPPD_VER=`best_version net-dialup/ppp`
- PPPD_VER=${PPPD_VER#*/*-} #reduce it to ${PV}-${PR}
- PPPD_VER=${PPPD_VER%%[_-]*} # main version without beta/pre/patch/revision
- myconf+=( --with-pppd-plugin-dir=/usr/$(get_libdir)/pppd/${PPPD_VER} )
- fi
-
- # unit files directory needs to be passed only when systemd is enabled,
- # otherwise systemd support is not disabled completely, bug #524534
- use systemd && myconf+=( --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" )
-
- if multilib_is_native_abi; then
- # work-around man out-of-source brokenness, must be done before configure
- ln -s "${S}/docs" docs || die
- ln -s "${S}/man" man || die
- fi
-
- ECONF_SOURCE=${S} gnome2_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- if multilib_is_native_abi; then
- emake
- else
- local targets=(
- libnm/libnm.la
- )
- emake "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- if use test && multilib_is_native_abi; then
- python_setup
- virtx emake check
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- # Install completions at proper place, bug #465100
- gnome2_src_install completiondir="$(get_bashcompdir)"
- insinto /usr/lib/NetworkManager/conf.d #702476
- doins "${S}"/examples/nm-conf.d/31-mac-addr-change.conf
- else
- local targets=(
- install-libLTLIBRARIES
- install-libnmincludeHEADERS
- install-nodist_libnmincludeHEADERS
- install-pkgconfigDATA
- )
- emake DESTDIR="${D}" "${targets[@]}"
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- ! use systemd && readme.gentoo_create_doc
-
- newinitd "${FILESDIR}/init.d.NetworkManager-r2" NetworkManager
- newconfd "${FILESDIR}/conf.d.NetworkManager" NetworkManager
-
- # Need to keep the /etc/NetworkManager/dispatched.d for dispatcher scripts
- keepdir /etc/NetworkManager/dispatcher.d
-
- # Provide openrc net dependency only when nm is connected
- exeinto /etc/NetworkManager/dispatcher.d
- newexe "${FILESDIR}/10-openrc-status-r4" 10-openrc-status
- sed -e "s:@EPREFIX@:${EPREFIX}:g" \
- -i "${ED}/etc/NetworkManager/dispatcher.d/10-openrc-status" || die
-
- keepdir /etc/NetworkManager/system-connections
- chmod 0600 "${ED}"/etc/NetworkManager/system-connections/.keep* # bug #383765, upstream bug #754594
-
- # Allow users in plugdev group to modify system connections
- insinto /usr/share/polkit-1/rules.d/
- doins "${FILESDIR}/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
-
- if use iwd; then
- # This goes to $nmlibdir/conf.d/ and $nmlibdir is '${prefix}'/lib/$PACKAGE, thus always lib, not get_libdir
- cat <<-EOF > "${ED}"/usr/lib/NetworkManager/conf.d/iwd.conf
- [device]
- wifi.backend=iwd
- EOF
- fi
-
- # Empty
- rmdir "${ED}"/var{/lib{/NetworkManager,},} || die
-}
-
-pkg_postinst() {
- gnome2_pkg_postinst
- systemd_reenable NetworkManager.service
- ! use systemd && readme.gentoo_print_elog
-
- if [[ -e "${EROOT}/etc/NetworkManager/nm-system-settings.conf" ]]; then
- ewarn "The ${PN} system configuration file has moved to a new location."
- ewarn "You must migrate your settings from ${EROOT}/etc/NetworkManager/nm-system-settings.conf"
- ewarn "to ${EROOT}/etc/NetworkManager/NetworkManager.conf"
- ewarn
- ewarn "After doing so, you can remove ${EROOT}/etc/NetworkManager/nm-system-settings.conf"
- fi
-
- # NM fallbacks to plugin specified at compile time (upstream bug #738611)
- # but still show a warning to remember people to have cleaner config file
- if [[ -e "${EROOT}/etc/NetworkManager/NetworkManager.conf" ]]; then
- if grep plugins "${EROOT}/etc/NetworkManager/NetworkManager.conf" | grep -q ifnet; then
- ewarn
- ewarn "You seem to use 'ifnet' plugin in ${EROOT}/etc/NetworkManager/NetworkManager.conf"
- ewarn "Since it won't be used, you will need to stop setting ifnet plugin there."
- ewarn
- fi
- fi
-
- # NM shows lots of errors making nmcli almost unusable, bug #528748 upstream bug #690457
- if grep -r "psk-flags=1" "${EROOT}"/etc/NetworkManager/; then
- ewarn "You have psk-flags=1 setting in above files, you will need to"
- ewarn "either reconfigure affected networks or, at least, set the flag"
- ewarn "value to '0'."
- fi
-
- if use dhclient || use dhcpcd; then
- ewarn "You have enabled USE=dhclient and/or USE=dhcpcd, but NetworkManager since"
- ewarn "version 1.20 defaults to the internal DHCP client. If the internal client"
- ewarn "works for you, and you're happy with, the alternative USE flags can be"
- ewarn "disabled. If you want to use dhclient or dhcpcd, then you need to tweak"
- ewarn "the main.dhcp configuration option to use one of them instead of internal."
- fi
-}
diff --git a/net-misc/rsync/rsync-3.2.3-r2.ebuild b/net-misc/rsync/rsync-3.2.3-r2.ebuild
index dfe4805..0f4ee6b 100644
--- a/net-misc/rsync/rsync-3.2.3-r2.ebuild
+++ b/net-misc/rsync/rsync-3.2.3-r2.ebuild
@@ -25,15 +25,12 @@ fi
LICENSE="GPL-3"
SLOT="0"
IUSE_CPU_FLAGS_X86=" sse2"
-IUSE="acl examples iconv ipv6 libressl lz4 ssl stunnel system-zlib xattr xxhash zstd"
+IUSE="acl examples iconv ipv6 lz4 ssl stunnel system-zlib xattr xxhash zstd"
IUSE+=" ${IUSE_CPU_FLAGS_X86// / cpu_flags_x86_}"
RDEPEND="acl? ( virtual/acl )
lz4? ( app-arch/lz4 )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
+ ssl? ( dev-libs/openssl:0= )
system-zlib? ( sys-libs/zlib )
xattr? ( kernel_linux? ( sys-apps/attr ) )
xxhash? ( dev-libs/xxhash )
diff --git a/net-vpn/ipsec-tools/ipsec-tools-0.8.2-r5.ebuild b/net-vpn/ipsec-tools/ipsec-tools-0.8.2-r5.ebuild
index 11aeb61..578041c 100644
--- a/net-vpn/ipsec-tools/ipsec-tools-0.8.2-r5.ebuild
+++ b/net-vpn/ipsec-tools/ipsec-tools-0.8.2-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@@ -12,11 +12,10 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
LICENSE="BSD GPL-2"
SLOT="0"
KEYWORDS="amd64 arm ~mips ppc ppc64 x86"
-IUSE="hybrid idea ipv6 kerberos ldap libressl nat pam rc5 readline selinux stats"
+IUSE="hybrid idea ipv6 kerberos ldap nat pam rc5 readline selinux stats"
CDEPEND="
- !libressl? ( dev-libs/openssl:0 )
- libressl? ( dev-libs/libressl )
+ dev-libs/openssl:0
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap )
pam? ( sys-libs/pam )
diff --git a/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28-r1.ebuild
index c756489..901bca6 100644
--- a/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28.ebuild
+++ b/sys-apps/tcp-wrappers/tcp-wrappers-7.6.28-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-inherit toolchain-funcs flag-o-matic multilib-minimal usr-ldscript
+inherit toolchain-funcs multilib-minimal usr-ldscript
MY_PV=$(ver_cut 1-2)
DEB_PV=$(ver_cut 3)
@@ -18,7 +18,8 @@ SLOT="0"
KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
IUSE="ipv6 netgroups static-libs"
-RDEPEND=""
+RDEPEND="netgroups? ( net-libs/libnsl:= )"
+DEPEND="${RDEPEND}"
S=${WORKDIR}/${MY_P}
@@ -52,7 +53,7 @@ temake() {
RANLIB="$(tc-getRANLIB)" \
COPTS="${CFLAGS} ${CPPFLAGS} ${mycppflags}" \
LDFLAGS="${LDFLAGS}" \
- "$@" || die
+ "$@"
}
multilib_src_configure() {
@@ -61,6 +62,8 @@ multilib_src_configure() {
}
multilib_src_compile() {
+ # https://bugs.gentoo.org/728348
+ unset STRINGS
temake all
}
diff --git a/sys-auth/polkit/Manifest b/sys-auth/polkit/Manifest
index 7eb759b..1126221 100644
--- a/sys-auth/polkit/Manifest
+++ b/sys-auth/polkit/Manifest
@@ -1,4 +1,3 @@
-DIST polkit-0.116.tar.gz 1548311 BLAKE2B e9761a2934136d453a47b81dd1f132f9fc96c45b731d5fceb2aa7706f5325b6499f6acbb68032befc1b21878b1b54754685607c916ca8e02a8accca3ca014b31 SHA512 b66b01cc2bb4349de70147f41f161f0f6f41e7230b581dfb054058b48969ec57041ab05b51787c749ccfc36aa5f317952d7e7ba337b4f6f6c0a923ed5866c2d5
-DIST polkit-0.117.tar.gz 1554536 BLAKE2B 1cf7e0ff9db19a29be626f4bea96c9e2ef8b1eab4b8287a5f1f4d2a818b86d58c1c4c4a41849d95e31559dba1b18853a31e934ebbadd8e07f94dfd58b45240e0 SHA512 c10ea984f2386fe436e58a2866e5323afc80d24f744f0ee61d966941259aa491bd96b07d911434aa731b300c3cca25b647804b396501175ab5b3c53384e94c70
DIST polkit-0.118-duktape.patch 50144 BLAKE2B 83be77ed93596bd44306b8e5b677497c6e4dab3a16626a32849abb3d91b527ad1e3a1436dcd7389ca5794ea1d7efaa3d5acc950f868fcda85b4bab75ad54205a SHA512 dec31b81678a5436ddeef633d668c735d3c7128d6b5fb7b5dda2d06e8cf40ce9093813e9fbc8870475321d6fcdef3395bf3dd0db7ed214f0f45b19bf47c8a867
DIST polkit-0.118.tar.gz 1556765 BLAKE2B d048b37b1ff8ad59a2d8a333a3b459d1592b61f7a6d9a9569f8b2984de913d71abfc9748e242c7453f0bce4f322bd44672e35309f181afd22488794ca0e47119 SHA512 3d412f40c903cfaf68530f9c0cb616106f8edf43bec6805de129f8bb9cb4e64c98da6bf02caa3ef5619974f3e2df7a70564f08b92901662453477e9005752b4e
+DIST polkit-0.119.tar.gz 1387409 BLAKE2B aeb605598393d1cab40f7c77954008a0392600584c5fe8cc9acaa0e122418ee48b9cce0b6839189ea415277ff0ae4dbd5b7c71cb910aa349dcaf7e1f3f70ef06 SHA512 0260fb15da1c4c1f429e8223260981e64e297f1be8ced42f6910f09ea6581b8205aca06c9c601eb4a128acba2f468de0223118f96862ba769f95721894cf1578
diff --git a/sys-auth/polkit/polkit-0.117.ebuild b/sys-auth/polkit/polkit-0.117.ebuild
deleted file mode 100644
index 13fdc18..0000000
--- a/sys-auth/polkit/polkit-0.117.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools pam pax-utils systemd xdg-utils
-
-DESCRIPTION="Policy framework for controlling privileges for system-wide services"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/polkit https://gitlab.freedesktop.org/polkit/polkit"
-SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 x86"
-IUSE="elogind examples gtk +introspection jit kde nls pam selinux systemd test"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="^^ ( elogind systemd )"
-
-BDEPEND="
- acct-user/polkitd
- app-text/docbook-xml-dtd:4.1.2
- app-text/docbook-xsl-stylesheets
- dev-libs/gobject-introspection-common
- dev-libs/libxslt
- dev-util/glib-utils
- dev-util/gtk-doc-am
- dev-util/intltool
- sys-devel/gettext
- virtual/pkgconfig
- introspection? ( dev-libs/gobject-introspection )
-"
-DEPEND="
- dev-lang/spidermonkey:68[-debug]
- dev-libs/glib:2
- dev-libs/expat
- elogind? ( sys-auth/elogind )
- pam? (
- sys-auth/pambase
- sys-libs/pam
- )
- systemd? ( sys-apps/systemd:0=[policykit] )
-"
-RDEPEND="${DEPEND}
- acct-user/polkitd
- selinux? ( sec-policy/selinux-policykit )
-"
-PDEPEND="
- gtk? ( || (
- >=gnome-extra/polkit-gnome-0.105
- >=lxde-base/lxsession-0.5.2
- ) )
- kde? ( kde-plasma/polkit-kde-agent )
-"
-
-DOCS=( docs/TODO HACKING NEWS README )
-
-PATCHES=(
- # bug 660880
- "${FILESDIR}"/polkit-0.115-elogind.patch
-
- # locally rebased patch
- "${FILESDIR}"/polkit-0.116-make-netgroup-support-optional-2.patch
-)
-
-QA_MULTILIB_PATHS="
- usr/lib/polkit-1/polkit-agent-helper-1
- usr/lib/polkit-1/polkitd"
-
-src_prepare() {
- default
-
- sed -i -e 's|unix-group:wheel|unix-user:0|' src/polkitbackend/*-default.rules || die #401513
-
- # Workaround upstream hack around standard gtk-doc behavior, bug #552170
- sed -i -e 's/@ENABLE_GTK_DOC_TRUE@\(TARGET_DIR\)/\1/' \
- -e '/install-data-local:/,/uninstall-local:/ s/@ENABLE_GTK_DOC_TRUE@//' \
- -e 's/@ENABLE_GTK_DOC_FALSE@install-data-local://' \
- docs/polkit/Makefile.in || die
-
- # disable broken test - bug #624022
- sed -i -e "/^SUBDIRS/s/polkitbackend//" test/Makefile.am || die
-
- # Fix cross-building, bug #590764, elogind patch, bug #598615
- eautoreconf
-}
-
-src_configure() {
- xdg_environment_reset
-
- local myeconfargs=(
- --localstatedir="${EPREFIX}"/var
- --disable-static
- --enable-man-pages
- --disable-gtk-doc
- --disable-examples
- $(use_enable elogind libelogind)
- $(use_enable introspection)
- $(use_enable nls)
- $(usex pam "--with-pam-module-dir=$(getpam_mod_dir)" '')
- --with-authfw=$(usex pam pam shadow)
- $(use_enable systemd libsystemd-login)
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable test)
- --with-os-type=gentoo
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- default
-
- # Required for polkitd on hardened/PaX due to spidermonkey's JIT
- pax-mark mr src/polkitbackend/.libs/polkitd test/polkitbackend/.libs/polkitbackendjsauthoritytest
-}
-
-src_install() {
- default
-
- if use examples; then
- insinto /usr/share/doc/${PF}/examples
- doins src/examples/{*.c,*.policy*}
- fi
-
- diropts -m 0700 -o polkitd
- keepdir /usr/share/polkit-1/rules.d
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- chmod 0700 "${EROOT}"/{etc,usr/share}/polkit-1/rules.d
- chown polkitd "${EROOT}"/{etc,usr/share}/polkit-1/rules.d
-}
diff --git a/sys-auth/polkit/polkit-0.118.ebuild b/sys-auth/polkit/polkit-0.118.ebuild
deleted file mode 100644
index 894b39e..0000000
--- a/sys-auth/polkit/polkit-0.118.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools pam pax-utils systemd xdg-utils
-
-DESCRIPTION="Policy framework for controlling privileges for system-wide services"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/polkit https://gitlab.freedesktop.org/polkit/polkit"
-SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~mips ppc64 x86"
-IUSE="elogind examples gtk +introspection jit kde nls pam selinux systemd test"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="^^ ( elogind systemd )"
-
-BDEPEND="
- acct-user/polkitd
- app-text/docbook-xml-dtd:4.1.2
- app-text/docbook-xsl-stylesheets
- dev-libs/gobject-introspection-common
- dev-libs/libxslt
- dev-util/glib-utils
- dev-util/gtk-doc-am
- dev-util/intltool
- sys-devel/gettext
- virtual/pkgconfig
- introspection? ( dev-libs/gobject-introspection )
-"
-DEPEND="
- dev-lang/spidermonkey:78[-debug]
- dev-libs/glib:2
- dev-libs/expat
- elogind? ( sys-auth/elogind )
- pam? (
- sys-auth/pambase
- sys-libs/pam
- )
- systemd? ( sys-apps/systemd:0=[policykit] )
-"
-RDEPEND="${DEPEND}
- acct-user/polkitd
- selinux? ( sec-policy/selinux-policykit )
-"
-PDEPEND="
- gtk? ( || (
- >=gnome-extra/polkit-gnome-0.105
- >=lxde-base/lxsession-0.5.2
- ) )
- kde? ( kde-plasma/polkit-kde-agent )
-"
-
-DOCS=( docs/TODO HACKING NEWS README )
-
-PATCHES=(
- # bug 660880
- "${FILESDIR}"/polkit-0.115-elogind.patch
-
- # locally rebased patch
- "${FILESDIR}"/polkit-0.116-make-netgroup-support-optional-2.patch
-)
-
-QA_MULTILIB_PATHS="
- usr/lib/polkit-1/polkit-agent-helper-1
- usr/lib/polkit-1/polkitd"
-
-src_prepare() {
- default
-
- sed -i -e 's|unix-group:wheel|unix-user:0|' src/polkitbackend/*-default.rules || die #401513
-
- # Workaround upstream hack around standard gtk-doc behavior, bug #552170
- sed -i -e 's/@ENABLE_GTK_DOC_TRUE@\(TARGET_DIR\)/\1/' \
- -e '/install-data-local:/,/uninstall-local:/ s/@ENABLE_GTK_DOC_TRUE@//' \
- -e 's/@ENABLE_GTK_DOC_FALSE@install-data-local://' \
- docs/polkit/Makefile.in || die
-
- # disable broken test - bug #624022
- sed -i -e "/^SUBDIRS/s/polkitbackend//" test/Makefile.am || die
-
- # Fix cross-building, bug #590764, elogind patch, bug #598615
- eautoreconf
-}
-
-src_configure() {
- xdg_environment_reset
-
- local myeconfargs=(
- --localstatedir="${EPREFIX}"/var
- --disable-static
- --enable-man-pages
- --disable-gtk-doc
- --disable-examples
- $(use_enable elogind libelogind)
- $(use_enable introspection)
- $(use_enable nls)
- $(usex pam "--with-pam-module-dir=$(getpam_mod_dir)" '')
- --with-authfw=$(usex pam pam shadow)
- $(use_enable systemd libsystemd-login)
- --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
- $(use_enable test)
- --with-os-type=gentoo
- )
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- default
-
- # Required for polkitd on hardened/PaX due to spidermonkey's JIT
- pax-mark mr src/polkitbackend/.libs/polkitd test/polkitbackend/.libs/polkitbackendjsauthoritytest
-}
-
-src_install() {
- default
-
- if use examples; then
- insinto /usr/share/doc/${PF}/examples
- doins src/examples/{*.c,*.policy*}
- fi
-
- diropts -m 0700 -o polkitd
- keepdir /usr/share/polkit-1/rules.d
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- chmod 0700 "${EROOT}"/{etc,usr/share}/polkit-1/rules.d
- chown polkitd "${EROOT}"/{etc,usr/share}/polkit-1/rules.d
-}
diff --git a/sys-auth/polkit/polkit-0.116-r1.ebuild b/sys-auth/polkit/polkit-0.119.ebuild
index 61387c0..050acde 100644
--- a/sys-auth/polkit/polkit-0.116-r1.ebuild
+++ b/sys-auth/polkit/polkit-0.119.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -7,12 +7,13 @@ inherit autotools pam pax-utils systemd xdg-utils
DESCRIPTION="Policy framework for controlling privileges for system-wide services"
HOMEPAGE="https://www.freedesktop.org/wiki/Software/polkit https://gitlab.freedesktop.org/polkit/polkit"
-SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz"
+SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz
+ https://dev.gentoo.org/~anarchy/dist/polkit-0.118-duktape.patch"
LICENSE="LGPL-2"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
-IUSE="elogind examples gtk +introspection jit kde nls pam selinux systemd test"
+KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc64 x86"
+IUSE="duktape elogind examples gtk +introspection kde nls pam selinux systemd test"
RESTRICT="!test? ( test )"
REQUIRED_USE="^^ ( elogind systemd )"
@@ -21,6 +22,7 @@ BDEPEND="
acct-user/polkitd
app-text/docbook-xml-dtd:4.1.2
app-text/docbook-xsl-stylesheets
+ dev-libs/glib
dev-libs/gobject-introspection-common
dev-libs/libxslt
dev-util/glib-utils
@@ -31,7 +33,8 @@ BDEPEND="
introspection? ( dev-libs/gobject-introspection )
"
DEPEND="
- dev-lang/spidermonkey:60[-debug]
+ duktape? ( dev-lang/duktape )
+ !duktape? ( dev-lang/spidermonkey:78[-debug] )
dev-libs/glib:2
dev-libs/expat
elogind? ( sys-auth/elogind )
@@ -56,10 +59,9 @@ PDEPEND="
DOCS=( docs/TODO HACKING NEWS README )
PATCHES=(
- # bug 660880
- "${FILESDIR}"/polkit-0.115-elogind.patch
-
- "${FILESDIR}"/polkit-0.116-make-netgroup-support-optional-1.patch
+ "${DISTDIR}"/${PN}-0.118-duktape.patch
+ "${FILESDIR}"/${PN}-0.115-elogind.patch # bug 660880
+ "${FILESDIR}"/${PN}-0.118-make-netgroup-support-optional.patch
)
QA_MULTILIB_PATHS="
@@ -103,6 +105,11 @@ src_configure() {
$(use_enable test)
--with-os-type=gentoo
)
+
+ if use duktape; then
+ myeconfargs+=( --with-duktape )
+ fi
+
econf "${myeconfargs[@]}"
}
@@ -117,8 +124,8 @@ src_install() {
default
if use examples; then
- insinto /usr/share/doc/${PF}/examples
- doins src/examples/{*.c,*.policy*}
+ docinto examples
+ dodoc src/examples/{*.c,*.policy*}
fi
diropts -m 0700 -o polkitd
diff --git a/sys-devel/gcc/gcc-10.2.0-r5.ebuild b/sys-devel/gcc/gcc-10.2.0-r5.ebuild
index 0e045f8..3cb2712 100644
--- a/sys-devel/gcc/gcc-10.2.0-r5.ebuild
+++ b/sys-devel/gcc/gcc-10.2.0-r5.ebuild
@@ -7,7 +7,7 @@ PATCH_VER="6"
inherit toolchain
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
RDEPEND=""
BDEPEND="${CATEGORY}/binutils"
diff --git a/sys-libs/tevent/tevent-0.10.2.ebuild b/sys-libs/tevent/tevent-0.10.2.ebuild
index 3306abf..f079f8f 100644
--- a/sys-libs/tevent/tevent-0.10.2.ebuild
+++ b/sys-libs/tevent/tevent-0.10.2.ebuild
@@ -1,27 +1,33 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-PYTHON_COMPAT=( python3_{7,8} )
-PYTHON_REQ_USE="threads(+)"
+EAPI=7
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="threads(+)"
inherit waf-utils multilib-minimal python-single-r1
DESCRIPTION="Samba tevent library"
HOMEPAGE="https://tevent.samba.org/"
-SRC_URI="https://www.samba.org/ftp/tevent/${P}.tar.gz"
+SRC_URI="https://samba.org/ftp/tevent/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
IUSE="elibc_glibc python"
-RDEPEND="!elibc_FreeBSD? ( dev-libs/libbsd[${MULTILIB_USEDEP}] )
- >=sys-libs/talloc-2.3.1[${MULTILIB_USEDEP}]
- python? ( ${PYTHON_DEPS} )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="test"
+RDEPEND="
+ !elibc_FreeBSD? ( dev-libs/libbsd[${MULTILIB_USEDEP}] )
+ >=sys-libs/talloc-2.3.1[${MULTILIB_USEDEP}]
+ python? (
+ ${PYTHON_DEPS}
+ sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
+ )
+"
DEPEND="${RDEPEND}
- virtual/pkgconfig
elibc_glibc? (
net-libs/libtirpc[${MULTILIB_USEDEP}]
|| (
@@ -29,15 +35,13 @@ DEPEND="${RDEPEND}
<sys-libs/glibc-2.26[rpc(+)]
)
)
- ${PYTHON_DEPS}
"
-# build system does not work with python3
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+BDEPEND="${PYTHON_DEPS}
+ virtual/pkgconfig
+"
WAF_BINARY="${S}/buildtools/bin/waf"
-RESTRICT="test"
-
PATCHES=(
"${FILESDIR}/${PN}-add-missing-header.patch"
)
diff --git a/sys-process/procps/procps-3.3.17.ebuild b/sys-process/procps/procps-3.3.17.ebuild
index a557248..f2f7ffc 100644
--- a/sys-process/procps/procps-3.3.17.ebuild
+++ b/sys-process/procps/procps-3.3.17.ebuild
@@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/${PN}-ng/${PN}-ng-${PV}.tar.xz"
LICENSE="GPL-2"
SLOT="0/8" # libprocps.so
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="elogind +kill modern-top +ncurses nls selinux static-libs systemd test unicode"
RESTRICT="!test? ( test )"
diff --git a/sys-process/psmisc/Manifest b/sys-process/psmisc/Manifest
deleted file mode 100644
index 972c7e9..0000000
--- a/sys-process/psmisc/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST psmisc-23.3.tar.xz 311896 BLAKE2B f38360dfb037a758633a8ff25af1de70be83ae5b2f2afe856ce237ade7bd2720f7c270c5af884313177022aa70f408dfce0c39e5d847057a6fdba98e3363561c SHA512 791ffef78d87b092d653da98710b338017466a9e1e1935968b9f0194ccef8da941317aa0c39d821d46b20d95d6539ccf78e5ebb71ad1032ae62337a397180d58
-DIST psmisc-23.4.tar.xz 370000 BLAKE2B e762171c4d3252421a49b352fadb3e892f66862f003a313a0cc692f973364b06d2652a51d331314462784d94ad55189e74c4d7a023d5d7c917c5e5c05009f46b SHA512 b05781fdb283a6f132bd385d64437f8080e6bc0e11cd2e3e02227678682bb67b3c89edec34a6d067d77312811d072dc60b47ebb32b168c4c69bbc36df643a471
diff --git a/sys-process/psmisc/files/include_limits.patch b/sys-process/psmisc/files/include_limits.patch
deleted file mode 100644
index 1b474bc..0000000
--- a/sys-process/psmisc/files/include_limits.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-Author: Breno Leitao <brenohl@br.ibm.com>
-Date: Thu Apr 6 13:59:57 2017 -0300
-
- peekfd: Include headers for ppc64
-
- Currently peekfd fails to build on ppc64le architecture with musl
- because it does not find reference for __WORDSIZE.
-
- This patch just includes reference for this macro if it was not
- previously defined.
-
-Index: psmisc-22.21/src/peekfd.c
-===================================================================
---- psmisc-22.21.orig/src/peekfd.c
-+++ psmisc-22.21/src/peekfd.c
-@@ -37,6 +37,14 @@
-
- #include "i18n.h"
-
-+#if !defined(PATH_MAX)
-+#include <limits.h>
-+#endif
-+
-+#if !defined(__WORDSIZE)
-+#include <bits/reg.h>
-+#endif
-+
- #ifdef I386
- #define REG_ORIG_ACCUM orig_eax
- #define REG_ACCUM eax
-Index: psmisc-22.21/src/pstree.c
-===================================================================
---- psmisc-22.21.orig/src/pstree.c
-+++ psmisc-22.21/src/pstree.c
-@@ -45,6 +45,10 @@
- #include "i18n.h"
- #include "comm.h"
-
-+#if !defined(PATH_MAX)
-+#include <limits.h>
-+#endif
-+
- #ifdef WITH_SELINUX
- #include <selinux/selinux.h>
- #else
diff --git a/sys-process/psmisc/files/musl_ptregs.patch b/sys-process/psmisc/files/musl_ptregs.patch
deleted file mode 100644
index e8d4387..0000000
--- a/sys-process/psmisc/files/musl_ptregs.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Author: Breno Leitao <brenohl@br.ibm.com>
-Date: Thu Apr 6 14:03:00 2017 -0300
-
- peekfd: Avoid pt_regs clash
-
-Index: psmisc-22.21/src/peekfd.c
-===================================================================
---- a/src/peekfd.c.old
-+++ b/src/peekfd.c
-@@ -27,7 +27,9 @@
- #include <sys/types.h>
- #include <sys/wait.h>
- #include <sys/syscall.h>
-+#define pt_regs uapi_pt_regs
- #include <asm/ptrace.h>
-+#undef pt_regs
- #include <byteswap.h>
- #include <endian.h>
- #include <sys/user.h>
diff --git a/sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch b/sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch
deleted file mode 100644
index 59b2bfc..0000000
--- a/sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-https://gitlab.com/psmisc/psmisc/-/issues/35
-
-diff --git a/ChangeLog b/ChangeLog
-index df45ae3..be20ca0 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -5,8 +5,6 @@ Changes in 23.4
- * pstree: fix layout when using -C !24
- * pstree: add time namespace !25
- * pstree: Dynamically link to selinux and use attr
-- * fuser: Get less confused about duplicate dev_id !10
-- * fuser: Only check pathname on non-block devices !31
-
- Changes in 23.3
- ===============
-diff --git a/src/fuser.c b/src/fuser.c
-index 03e6237..f9d78db 100644
---- a/src/fuser.c
-+++ b/src/fuser.c
-@@ -1566,7 +1566,6 @@ check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head,
- struct stat st, lst;
- char *dirpath;
- char filepath[PATH_MAX];
-- char real_filepath[PATH_MAX];
-
- if (asprintf(&dirpath, "/proc/%d/%s", pid, dirname) < 0)
- return;
-@@ -1605,17 +1604,6 @@ check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head,
- dev_tmp = dev_tmp->next) {
- if (thedev != dev_tmp->device)
- continue;
--
-- /* check the paths match if it is not a block device */
-- if (! S_ISBLK(dev_tmp->name->st.st_mode)) {
-- if (readlink(filepath, real_filepath, PATH_MAX-1) < 0) {
-- if (strncmp(dev_tmp->name->filename, filepath, strlen(dev_tmp->name->filename)) != 0)
-- continue;
-- } else {
-- if (strncmp(dev_tmp->name->filename, real_filepath, strlen(dev_tmp->name->filename)) != 0)
-- continue;
-- }
-- }
- if (access == ACCESS_FILE
- && (lstat(filepath, &lst) == 0)
- && (lst.st_mode & S_IWUSR)) {
diff --git a/sys-process/psmisc/metadata.xml b/sys-process/psmisc/metadata.xml
deleted file mode 100644
index df39eb8..0000000
--- a/sys-process/psmisc/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>base-system@gentoo.org</email>
- <name>Gentoo Base System</name>
-</maintainer>
-<upstream>
- <remote-id type="sourceforge">psmisc</remote-id>
-</upstream>
-</pkgmetadata>
diff --git a/sys-process/psmisc/psmisc-23.3-r1.ebuild b/sys-process/psmisc/psmisc-23.3-r1.ebuild
deleted file mode 100644
index edc88ce..0000000
--- a/sys-process/psmisc/psmisc-23.3-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A set of tools that use the proc filesystem"
-HOMEPAGE="http://psmisc.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="ipv6 nls selinux X"
-
-RDEPEND=">=sys-libs/ncurses-5.7-r7:0=
- nls? ( virtual/libintl )
- selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}"
-BDEPEND=">=sys-devel/libtool-2.2.6b
- nls? ( sys-devel/gettext )"
-
-DOCS=( AUTHORS ChangeLog NEWS README )
-
-src_prepare() {
- default
-
- if use elibc_musl ; then
- eapply "${FILESDIR}"/include_limits.patch
- eapply "${FILESDIR}"/musl_ptregs.patch
- fi
-
- eapply_user
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-harden-flags
- $(use_enable ipv6)
- $(use_enable nls)
- $(use_enable selinux)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- use X || rm -f "${ED}"/usr/bin/pstree.x11
-
- [[ -s ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/bin/peekfd
- [[ -e ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/share/man/man1/peekfd.1
-
- # fuser is needed by init.d scripts; use * wildcard for #458250
- dodir /bin
- mv "${ED}"/usr/bin/*fuser "${ED}"/bin || die
-}
diff --git a/sys-process/psmisc/psmisc-23.4-r1.ebuild b/sys-process/psmisc/psmisc-23.4-r1.ebuild
deleted file mode 100644
index 7d1b6cc..0000000
--- a/sys-process/psmisc/psmisc-23.4-r1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="A set of tools that use the proc filesystem"
-HOMEPAGE="http://psmisc.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="ipv6 nls selinux X"
-
-RDEPEND="!=app-i18n/man-pages-l10n-4.0.0-r0
- >=sys-libs/ncurses-5.7-r7:0=
- nls? ( virtual/libintl )
- selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}"
-BDEPEND=">=sys-devel/libtool-2.2.6b
- nls? ( sys-devel/gettext )"
-
-DOCS=( AUTHORS ChangeLog NEWS README )
-
-PATCHES=(
- # https://gitlab.com/psmisc/psmisc/-/issues/35
- "${FILESDIR}/${PN}-23.4-fuser_regression_revert.patch"
-)
-
-src_prepare() {
- default
-
- if use elibc_musl ; then
- "${FILESDIR}"/include_limits.patch
- "${FILESDIR}"/musl_ptregs.patch
- fi
-
- eapply_user
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-harden-flags
- $(use_enable ipv6)
- $(use_enable nls)
- $(use_enable selinux)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- use X || rm -f "${ED}"/usr/bin/pstree.x11
-
- [[ -s ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/bin/peekfd
- [[ -e ${ED}/usr/bin/peekfd ]] || rm -f "${ED}"/usr/share/man/man1/peekfd.1
-
- # fuser is needed by init.d scripts; use * wildcard for #458250
- dodir /bin
- mv "${ED}"/usr/bin/*fuser "${ED}"/bin || die
-}
diff --git a/virtual/rust/metadata.xml b/virtual/rust/metadata.xml
deleted file mode 100644
index 85cf4eb..0000000
--- a/virtual/rust/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>rust@gentoo.org</email>
- <name>Rust Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/virtual/rust/rust-1.47.0.ebuild b/virtual/rust/rust-1.47.0.ebuild
deleted file mode 100644
index 885ef01..0000000
--- a/virtual/rust/rust-1.47.0.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib-build
-
-DESCRIPTION="Virtual for Rust language compiler"
-
-LICENSE=""
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-BDEPEND=""
-RDEPEND="|| ( ~dev-lang/rust-${PV}[${MULTILIB_USEDEP}] ~dev-lang/rust-bin-${PV}[${MULTILIB_USEDEP}] )"
diff --git a/x11-base/xorg-server/xorg-server-1.20.11.ebuild b/x11-base/xorg-server/xorg-server-1.20.11.ebuild
index 8f4b9ac..d607955 100644
--- a/x11-base/xorg-server/xorg-server-1.20.11.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.20.11.ebuild
@@ -14,13 +14,12 @@ if [[ ${PV} != 9999* ]]; then
fi
IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +elogind ipv6 libressl minimal selinux suid systemd test +udev unwind xcsecurity"
+IUSE="${IUSE_SERVERS} debug +elogind ipv6 minimal selinux suid systemd test +udev unwind xcsecurity"
RESTRICT="!test? ( test )"
CDEPEND="
media-libs/libglvnd[X]
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ dev-libs/openssl:0=
>=x11-apps/iceauth-1.0.2
>=x11-apps/rgb-1.0.3
>=x11-apps/xauth-1.0.3
diff --git a/x11-libs/vte/Manifest b/x11-libs/vte/Manifest
index e0b2e27..15fc69b 100644
--- a/x11-libs/vte/Manifest
+++ b/x11-libs/vte/Manifest
@@ -1,4 +1,2 @@
-DIST vte-0.60.3-command-notify.patch.xz 6108 BLAKE2B 1f96788c097b003a3f9041529a0ff8ad083fe60597920632450e65ce13ad7181cb3bd4f2713ee19ab7d15154e3546720cdd0a72fabb3710ea7149c63cb159a1f SHA512 070d17fa2dfeed5ccb5ad67687bfb65a6a9dd79db300bb6e00f7d35b8ab3563c331e5f48bbecc32f8037475db319fb71f35e72108f260b6446fd2dd8e1a2897e
-DIST vte-0.60.3.tar.xz 535504 BLAKE2B c5556fdb91d876aa681d2a9466fa4f4c0ee6be630d076949fbd01878baffdf319e50ec75575729c49c09484914d9ee103d4d491861aedb678b0e336cd4ddcc2e SHA512 3694fe711e0b3eb9d6ba37ad8036f5d3cca4265635ed7afcde750a8445b17f820d1c55b557d0ea1c8a5a45e5408915d8da2ffd65b4d397c6582f288812ae1f18
-DIST vte-0.62.1-command-notify.patch.xz 4844 BLAKE2B 22301fdc5f1969beb2ad9b316fea8972f696f0e54e1a24d5eceedec71162afc2991b7963a71ce8925a94f6c40e5303d3db760b872d0eebbdc6d05b22d3c59ecc SHA512 491e241b0f5aae50e59d25751e95579d40c47e7e4c7f2b279522347f7f2f7f00c92bdf5fa4a651e4146bcfa9439f03b6311b4061fb20c5679c09b97a4924dcf1
-DIST vte-0.62.3.tar.xz 447152 BLAKE2B 2c55430490af577cdbad8bbcbb53902ccc4ab8d9643d5e8b3279e96b4285347e652e761644c957961732eeb50d12e33fa3d3c735be9899ad14c1e2f35377f2a7 SHA512 0475e2813b305bf1b5d48ece5959f2feb10e89b589fa3b75032ae466fd5254bf5c2fc6085dc296d65c5df84790a38892534ff401109843bf964ae62a8c540a81
+DIST vte-0.64.1-command-notify.patch.xz 4880 BLAKE2B d6ff5f4acac161980c8c18245e65795c7f0ea3d0819748894b055306ecd731d698cac578eff2750795a9180a9b17d79f220e814083012d5a04f4f351ff2a0e36 SHA512 174397aeca00399b138286fd4cc88941add041a1f2596fd42222d44c886c2e35b2a33041b58a102ee3acbcddc0cc40fcfde39d72ec46b640ee1db22d8ae684c4
+DIST vte-0.64.1.tar.bz2 486720 BLAKE2B bd8fb1f471a43aadf015cce8ae38c646521ca66e37652b72f7e94cec15a2a0a844d67116e9123ede44ba1b6ee569d1ecd0ff5e83067f6231802f5a77a798e446 SHA512 38bbbb4ed3d86740091c9ddee83f97bf5cb5c69c48e8a78592dd46e8f9334859a6c523e7b16dce110de71cd4a9a3b8b99a11816b61eae6e251dfc20cdbee6716
diff --git a/x11-libs/vte/files/vte-0.54.2-musl-remove-W_EXITCODE.patch b/x11-libs/vte/files/vte-0.54.2-musl-remove-W_EXITCODE.patch
deleted file mode 100644
index dfbc366..0000000
--- a/x11-libs/vte/files/vte-0.54.2-musl-remove-W_EXITCODE.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Expanded non-standard W_EXITCODE macro for Musl compatibility
-
-diff -Naur vte-0.54.2.orig/src/widget.cc vte-0.54.2/src/widget.cc
---- vte-0.54.2.orig/src/widget.cc 2018-09-28 10:06:12.000000000 +0200
-+++ vte-0.54.2/src/widget.cc 2018-11-06 15:04:30.275949689 +0100
-@@ -20,8 +20,6 @@
-
- #include "widget.hh"
-
--#include <sys/wait.h> // for W_EXITCODE
--
- #include <new>
- #include <string>
-
-@@ -126,7 +124,7 @@
- Widget::dispose() noexcept
- {
- if (m_terminal->terminate_child()) {
-- int status = W_EXITCODE(0, SIGKILL);
-+ int status = (0) << 8 | (SIGKILL); // W_EXITCODE(ret, sig)
- emit_child_exited(status);
- }
- }
diff --git a/x11-libs/vte/files/vte-0.64.1-meson-Find-python-explicitly-to-honor-downstream-pyt.patch b/x11-libs/vte/files/vte-0.64.1-meson-Find-python-explicitly-to-honor-downstream-pyt.patch
new file mode 100644
index 0000000..79171d2
--- /dev/null
+++ b/x11-libs/vte/files/vte-0.64.1-meson-Find-python-explicitly-to-honor-downstream-pyt.patch
@@ -0,0 +1,48 @@
+https://gitlab.gnome.org/GNOME/vte/-/issues/350
+
+From d459d32126119c8d78f8239b8b857a255e6005d7 Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Sat, 1 May 2021 08:31:45 -0400
+Subject: [PATCH] meson: Find python explicitly to honor downstream python
+ choice
+
+---
+ meson.build | 1 +
+ src/meson.build | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/meson.build b/meson.build
+index 4f5a7c57..6404802f 100644
+--- a/meson.build
++++ b/meson.build
+@@ -461,6 +461,7 @@ pango_dep = dependency('pango', version: '>=' + pango_req_version)
+ pcre2_dep = dependency('libpcre2-8', version: '>=' + pcre2_req_version)
+ pthreads_dep = dependency('threads')
+ zlib_dep = dependency('zlib')
++python = import('python').find_installation('python3')
+
+ if get_option('fribidi')
+ fribidi_dep = dependency('fribidi', version: '>=' + fribidi_req_version)
+diff --git a/src/meson.build b/src/meson.build
+index a1440da5..4ac6a7f2 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -60,6 +60,7 @@ modes_sources = files(
+ modes_sources += custom_target(
+ 'modes',
+ command: [
++ python,
+ files('modes.py'),
+ '--destdir', '@OUTDIR@',
+ ],
+@@ -92,6 +93,7 @@ parser_sources = files(
+ parser_sources += custom_target(
+ 'parser-seq',
+ command: [
++ python,
+ files('parser-seq.py'),
+ '--destdir', '@OUTDIR@',
+ ],
+--
+2.26.3
+
diff --git a/x11-libs/vte/vte-0.60.3.ebuild b/x11-libs/vte/vte-0.60.3.ebuild
deleted file mode 100644
index 9605876..0000000
--- a/x11-libs/vte/vte-0.60.3.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-VALA_USE_DEPEND="vapigen"
-VALA_MIN_API_VERSION="0.32"
-
-inherit gnome.org meson vala xdg
-
-DESCRIPTION="Library providing a virtual terminal emulator widget"
-HOMEPAGE="https://wiki.gnome.org/Apps/Terminal/VTE"
-
-LICENSE="LGPL-3+ GPL-3+"
-SLOT="2.91"
-IUSE="+crypt debug gtk-doc +icu +introspection systemd +vala vanilla"
-KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
-REQUIRED_USE="vala? ( introspection )"
-
-SRC_URI="${SRC_URI} !vanilla? ( https://dev.gentoo.org/~leio/distfiles/${PN}-0.60.3-command-notify.patch.xz )"
-
-RDEPEND="
- >=x11-libs/gtk+-3.24.14:3[introspection?]
- >=dev-libs/fribidi-1.0.0
- >=dev-libs/glib-2.52:2
- crypt? ( >=net-libs/gnutls-3.2.7:0= )
- icu? ( dev-libs/icu:= )
- >=x11-libs/pango-1.22.0
- >=dev-libs/libpcre2-10.21
- systemd? ( >=sys-apps/systemd-220:= )
- sys-libs/zlib
- introspection? ( >=dev-libs/gobject-introspection-1.56:= )
- x11-libs/pango[introspection?]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-libs/libxml2:2
- dev-util/glib-utils
- gtk-doc? ( >=dev-util/gtk-doc-1.13
- app-text/docbook-xml-dtd:4.1.2 )
- >=sys-devel/gettext-0.19.8
- virtual/pkgconfig
-
- vala? ( $(vala_depend) )
-"
-
-src_prepare() {
- if ! use vanilla; then
- # Part of https://src.fedoraproject.org/rpms/vte291/raw/f31/f/vte291-cntnr-precmd-preexec-scroll.patch
- # Adds OSC 777 support for desktop notifications in gnome-terminal or elsewhere
- eapply "${WORKDIR}"/${PN}-0.60.3-command-notify.patch
- fi
-
- use elibc_musl && eapply "${FILESDIR}/${PN}-0.54.2-musl-remove-W_EXITCODE.patch"
-
- # -Ddebugg option enables various debug support via VTE_DEBUG, but also ggdb3; strip the latter
- sed -e '/ggdb3/d' -i meson.build || die
-
- use vala && vala_src_prepare
- xdg_src_prepare
-}
-
-src_configure() {
- local emesonargs=(
- -Da11y=true
- $(meson_use debug debugg)
- $(meson_use gtk-doc docs)
- $(meson_use introspection gir)
- -Dfribidi=true # pulled in by pango anyhow
- $(meson_use crypt gnutls)
- -Dgtk3=true
- -Dgtk4=false
- $(meson_use icu)
- $(meson_use systemd _systemd)
- $(meson_use vala vapi)
- )
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
- mv "${ED}"/etc/profile.d/vte{,-${SLOT}}.sh || die
-}
diff --git a/x11-libs/vte/vte-0.62.3.ebuild b/x11-libs/vte/vte-0.64.1.ebuild
index e263de4..cd0ca0f 100644
--- a/x11-libs/vte/vte-0.62.3.ebuild
+++ b/x11-libs/vte/vte-0.64.1.ebuild
@@ -2,10 +2,11 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+PYTHON_COMPAT=( python3_{7..9} )
VALA_USE_DEPEND="vapigen"
VALA_MIN_API_VERSION="0.32"
-inherit gnome.org meson vala xdg
+inherit gnome.org meson python-any-r1 vala xdg
DESCRIPTION="Library providing a virtual terminal emulator widget"
HOMEPAGE="https://wiki.gnome.org/Apps/Terminal/VTE"
@@ -13,10 +14,12 @@ HOMEPAGE="https://wiki.gnome.org/Apps/Terminal/VTE"
LICENSE="LGPL-3+ GPL-3+"
SLOT="2.91"
IUSE="+crypt debug gtk-doc +icu +introspection systemd +vala vanilla"
-KEYWORDS="amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 x86"
REQUIRED_USE="vala? ( introspection )"
-SRC_URI="${SRC_URI} !vanilla? ( https://dev.gentoo.org/~mattst88/distfiles/${PN}-0.62.1-command-notify.patch.xz )"
+# Upstream is hostile and refuses to upload tarballs.
+SRC_URI="https://gitlab.gnome.org/GNOME/${PN}/-/archive/${PV}/${P}.tar.bz2"
+SRC_URI="${SRC_URI} !vanilla? ( https://dev.gentoo.org/~mattst88/distfiles/${PN}-0.64.1-command-notify.patch.xz )"
RDEPEND="
>=x11-libs/gtk+-3.24.14:3[introspection?]
@@ -33,6 +36,7 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
BDEPEND="
+ ${PYTHON_DEPS}
dev-libs/libxml2:2
dev-util/glib-utils
gtk-doc? ( >=dev-util/gtk-doc-1.13
@@ -43,11 +47,15 @@ BDEPEND="
vala? ( $(vala_depend) )
"
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.64.1-meson-Find-python-explicitly-to-honor-downstream-pyt.patch
+)
+
src_prepare() {
if ! use vanilla; then
# Part of https://src.fedoraproject.org/rpms/vte291/raw/f31/f/vte291-cntnr-precmd-preexec-scroll.patch
# Adds OSC 777 support for desktop notifications in gnome-terminal or elsewhere
- eapply "${WORKDIR}"/${PN}-0.62.1-command-notify.patch
+ eapply "${WORKDIR}"/${PN}-0.64.1-command-notify.patch
fi
use elibc_musl && eapply "${FILESDIR}/${PN}-0.62.3-musl-remove-W_EXITCODE.patch"
@@ -66,6 +74,7 @@ src_configure() {
$(meson_use gtk-doc docs)
$(meson_use introspection gir)
-Dfribidi=true # pulled in by pango anyhow
+ -Dglade=true
$(meson_use crypt gnutls)
-Dgtk3=true
-Dgtk4=false