diff --git a/acct-group/pcap/metadata.xml b/acct-group/pcap/metadata.xml
new file mode 100644
index 0000000000..924d866a79
--- /dev/null
+++ b/acct-group/pcap/metadata.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ zlogene@gentoo.org
+ Mikle Kolyada
+
+
+ bman@gentoo.org
+ Aaron Bauman
+
+
+ sam@gentoo.org
+ Sam James
+
+
diff --git a/acct-group/pcap/pcap-0.ebuild b/acct-group/pcap/pcap-0.ebuild
new file mode 100644
index 0000000000..7c6ece3961
--- /dev/null
+++ b/acct-group/pcap/pcap-0.ebuild
@@ -0,0 +1,9 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit acct-group
+
+DESCRIPTION="Group for capturing network traffic"
+ACCT_GROUP_ID=377
diff --git a/acct-user/pcap/metadata.xml b/acct-user/pcap/metadata.xml
new file mode 100644
index 0000000000..924d866a79
--- /dev/null
+++ b/acct-user/pcap/metadata.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ zlogene@gentoo.org
+ Mikle Kolyada
+
+
+ bman@gentoo.org
+ Aaron Bauman
+
+
+ sam@gentoo.org
+ Sam James
+
+
diff --git a/acct-user/pcap/pcap-0.ebuild b/acct-user/pcap/pcap-0.ebuild
new file mode 100644
index 0000000000..781fd31919
--- /dev/null
+++ b/acct-user/pcap/pcap-0.ebuild
@@ -0,0 +1,12 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit acct-user
+
+DESCRIPTION="User for capturing network traffic"
+ACCT_USER_ID=377
+ACCT_USER_GROUPS=( pcap )
+
+acct-user_add_deps
diff --git a/app-admin/eselect/Manifest b/app-admin/eselect/Manifest
index e30198740b..c648030ffb 100644
--- a/app-admin/eselect/Manifest
+++ b/app-admin/eselect/Manifest
@@ -1,2 +1,2 @@
-DIST eselect-1.4.15.tar.xz 178996 BLAKE2B 4354d975c8af2e1de0f0c6efe2badc92584e947f9b73c05aac144caf8f9d74c850d366c7c225112322a504262b5f285f6e2e8d32223f1b2d4bac87db740a148c SHA512 ceb55fecc2bf70e816679af9b20653b29aa9ce24ca2d4cd0c6e02ab214689459bc2ccd5b3968ac49249b8fb6613c6055e7e76598b86c6a114a9abf847c4a2b58
-DIST eselect-1.4.16.tar.xz 178660 BLAKE2B dae97ee324cb67983c5395b5dc54c4b84d2da43f6a0c5c8ab81ff402ab211e9d1f1d3fe5c174b130ac1e11d3dd19e3812056274145415ee029e649cda880cd95 SHA512 264fb6122f5f7c9e73bb2250a94c3c0377e5263e2e5ae653ed58e08ebf6ed1b4aa165ae5c1d70b0156081c4db5672d1ec9d379782919d5b40a2f3e862378ce62
+DIST eselect-1.4.17.tar.xz 178980 BLAKE2B d905ac88bc009080912af75e64c7920d745788866fa3cb35466d68a652efbbd6984d6e1efeed76d9a344aed94705b74c85aa43e9c037d4d548d2e24afa69bd7a SHA512 35dc4c52f44c4f64db9c0dc2aec57b3055a6d36760b1bbbd094ad11b3f9e71a731444802632817b89c3b511f1dc9bb92046b59322d177e13fdc501ed767b591e
+DIST eselect-1.4.20.tar.xz 180272 BLAKE2B 424653d00eda45335c3aaae50f6fbf2e89486da4529f657596516352f3b7fcb9859ceb2dc5b9762a34c44fb64e645fa27c46b86453bf50be6e8ae820664a4289 SHA512 9589ed89c4d5d31f71d535886eb50da67b84dec8a13a5df081e7569efee861dede4eaa43a0bfb9930c5b95d4f334e19245cb8820a73f7361527da262da1d1fb2
diff --git a/app-admin/eselect/eselect-1.4.16.ebuild b/app-admin/eselect/eselect-1.4.17.ebuild
similarity index 80%
rename from app-admin/eselect/eselect-1.4.16.ebuild
rename to app-admin/eselect/eselect-1.4.17.ebuild
index 777283e95f..aa18836510 100644
--- a/app-admin/eselect/eselect-1.4.16.ebuild
+++ b/app-admin/eselect/eselect-1.4.17.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit bash-completion-r1
@@ -11,20 +11,18 @@ SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz"
LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc emacs vim-syntax"
-RDEPEND="sys-apps/sed
+DEPEND="sys-apps/sed
|| (
sys-apps/coreutils
app-misc/realpath
)"
-DEPEND="${RDEPEND}
- doc? ( dev-python/docutils )"
-RDEPEND="${RDEPEND}
+RDEPEND="${DEPEND}
sys-apps/file
sys-libs/ncurses:0"
-
+BDEPEND="doc? ( dev-python/docutils )"
PDEPEND="emacs? ( app-emacs/eselect-mode )
vim-syntax? ( app-vim/eselect-syntax )"
diff --git a/app-admin/eselect/eselect-1.4.15.ebuild b/app-admin/eselect/eselect-1.4.20.ebuild
similarity index 77%
rename from app-admin/eselect/eselect-1.4.15.ebuild
rename to app-admin/eselect/eselect-1.4.20.ebuild
index 3d5786a4bf..68a003da8b 100644
--- a/app-admin/eselect/eselect-1.4.15.ebuild
+++ b/app-admin/eselect/eselect-1.4.20.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit bash-completion-r1
@@ -9,22 +9,20 @@ DESCRIPTION="Gentoo's multi-purpose configuration and management tool"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Eselect"
SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz"
-LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-3.0 )"
+LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc emacs vim-syntax"
-RDEPEND="sys-apps/sed
+DEPEND="sys-apps/sed
|| (
sys-apps/coreutils
app-misc/realpath
)"
-DEPEND="${RDEPEND}
- doc? ( dev-python/docutils )"
-RDEPEND="${RDEPEND}
+RDEPEND="${DEPEND}
sys-apps/file
sys-libs/ncurses:0"
-
+BDEPEND="doc? ( dev-python/docutils )"
PDEPEND="emacs? ( app-emacs/eselect-mode )
vim-syntax? ( app-vim/eselect-syntax )"
diff --git a/app-admin/eselect/eselect-9999.ebuild b/app-admin/eselect/eselect-9999.ebuild
index 6710d08068..5922f93c46 100644
--- a/app-admin/eselect/eselect-9999.ebuild
+++ b/app-admin/eselect/eselect-9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/eselect.git"
@@ -10,21 +10,19 @@ inherit autotools git-r3 bash-completion-r1
DESCRIPTION="Gentoo's multi-purpose configuration and management tool"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Eselect"
-LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-3.0 )"
+LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )"
SLOT="0"
IUSE="doc emacs vim-syntax"
-RDEPEND="sys-apps/sed
+DEPEND="sys-apps/sed
|| (
sys-apps/coreutils
app-misc/realpath
)"
-DEPEND="${RDEPEND}
- doc? ( dev-python/docutils )"
-RDEPEND="${RDEPEND}
+RDEPEND="${DEPEND}
sys-apps/file
sys-libs/ncurses:0"
-
+BDEPEND="doc? ( dev-python/docutils )"
PDEPEND="emacs? ( app-emacs/eselect-mode )
vim-syntax? ( app-vim/eselect-syntax )"
diff --git a/app-admin/eselect/metadata.xml b/app-admin/eselect/metadata.xml
index 1935b3149b..7ee8a2c806 100644
--- a/app-admin/eselect/metadata.xml
+++ b/app-admin/eselect/metadata.xml
@@ -1,5 +1,5 @@
-
+
eselect@gentoo.org
diff --git a/app-arch/unzip/Manifest b/app-arch/unzip/Manifest
index dce593202f..8f65ff09a2 100644
--- a/app-arch/unzip/Manifest
+++ b/app-arch/unzip/Manifest
@@ -1,2 +1,2 @@
DIST unzip60.tar.gz 1376845 BLAKE2B 5016d300b4452018a391f4ebc03c6960c068df400a0407c0c60bd7bb5ec5012031f916d8b204a6149ba291c2c35beba40d9b43c76fc093026e79471329ab0e47 SHA512 0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d
-DIST unzip_6.0-25.debian.tar.xz 23096 BLAKE2B 09cd89165c0354431fa0eb946bb8f8355fa09ef81cd3e3ea03e53ca7f465b323364204ffe11d8e58eeb5b46e40be598d4f709b621d163bfde09070b6847db2a6 SHA512 13c16db420fa4a34be3090a9acdd79b01320da40ac5aa89a9dfca03e64b914b28eb72aff3882d02a8197457bcb8eeb9473c998cf6920e511883c9289a949fb21
+DIST unzip_6.0-26.debian.tar.xz 23708 BLAKE2B 7655396df2f8c4443bbd37a2fab590f1e66b3b8531871a6d95f281ac702e64a0e602f2412a58ff2addf4ce9cae8d146af650a18b02919d120c9db6c49df480b5 SHA512 9a56e400ad0984f87c7ee0548429349be549e35a3cae4c9acb88a8fb97a1d1fbd116cfa3292622ad8b2c67ffe79ae268861ddec1269993ba98f1a6a411b7611f
diff --git a/app-arch/unzip/metadata.xml b/app-arch/unzip/metadata.xml
index ed43f8ee64..80e20aa4d0 100644
--- a/app-arch/unzip/metadata.xml
+++ b/app-arch/unzip/metadata.xml
@@ -1,5 +1,5 @@
-
+
base-system@gentoo.org
@@ -10,6 +10,7 @@
cpe:/a:info-zip:unzip
+ madler/unzip
infozip
diff --git a/app-arch/unzip/unzip-6.0_p25-r1.ebuild b/app-arch/unzip/unzip-6.0_p26.ebuild
similarity index 85%
rename from app-arch/unzip/unzip-6.0_p25-r1.ebuild
rename to app-arch/unzip/unzip-6.0_p26.ebuild
index 6b5a505d3d..b28a3acf9f 100644
--- a/app-arch/unzip/unzip-6.0_p25-r1.ebuild
+++ b/app-arch/unzip/unzip-6.0_p26.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
+inherit flag-o-matic multilib toolchain-funcs
MY_PV="${PV//.}"
MY_PV="${MY_PV%_p*}"
@@ -16,7 +16,7 @@ SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz
LICENSE="Info-ZIP"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 natspec unicode"
DEPEND="bzip2? ( app-arch/bzip2 )
@@ -64,7 +64,8 @@ src_configure() {
i?86*-dragonfly*) TARGET="freebsd" ;; # mislabelled bsd with x86 asm
*bsd* | *dragonfly*) TARGET="bsd" ;;
*-darwin*) TARGET="macosx" ;;
- *-cygwin*) TARGET="cygwin" ;;
+ *-solaris*) TARGET="generic" ;;
+ *-cygwin*) TARGET="generic" ;;
*) die "Unknown target; please update the ebuild to handle ${CHOST} " ;;
esac
@@ -75,7 +76,7 @@ src_configure() {
}
src_compile() {
- ASFLAGS="${ASFLAGS} $(get_abi_var CFLAGS)" \
+ ASFLAGS="${ASFLAGS} $(get_abi_CFLAGS)" \
emake -f unix/Makefile ${TARGET}
}
diff --git a/app-crypt/libmd/Manifest b/app-crypt/libmd/Manifest
new file mode 100644
index 0000000000..d757164e6e
--- /dev/null
+++ b/app-crypt/libmd/Manifest
@@ -0,0 +1 @@
+DIST libmd-1.0.4.tar.xz 264472 BLAKE2B ddc2da74635f5cc009c66a58ae82b83e6e0930e18af8a6b0ecec7cbf378246707b493a99fb97d3491d0d626a0d5ef068baea6a3ba2ec311c5a1516ba5b4e2fd5 SHA512 731553ecc5e0e1eb228cced8fccd531fe31fb5c7627ca30013d287e1aeb8222959cf7498fbb7414bbabb967b25d4e8b0edd54fc47f6ccf55fc91087db0725ce3
diff --git a/app-crypt/libmd/libmd-1.0.4.ebuild b/app-crypt/libmd/libmd-1.0.4.ebuild
new file mode 100644
index 0000000000..ec9a537d5a
--- /dev/null
+++ b/app-crypt/libmd/libmd-1.0.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal
+
+DESCRIPTION="Message Digest functions from BSD systems"
+HOMEPAGE="https://www.hadrons.org/software/libmd/"
+SRC_URI="https://archive.hadrons.org/software/libmd/${P}.tar.xz"
+
+LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/app-crypt/libmd/libmd-9999.ebuild b/app-crypt/libmd/libmd-9999.ebuild
new file mode 100644
index 0000000000..b28c93edaf
--- /dev/null
+++ b/app-crypt/libmd/libmd-9999.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools multilib-minimal git-r3
+
+DESCRIPTION="Message Digest functions from BSD systems"
+HOMEPAGE="https://www.hadrons.org/software/libmd/"
+EGIT_REPO_URI="https://git.hadrons.org/git/libmd.git"
+
+LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )"
+SLOT="0"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf
+}
+
+multilib_src_install() {
+ default
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/app-crypt/libmd/metadata.xml b/app-crypt/libmd/metadata.xml
new file mode 100644
index 0000000000..85e4ed814f
--- /dev/null
+++ b/app-crypt/libmd/metadata.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/changelog/updates/2022-03-31-update-pkgs-2020.md b/changelog/updates/2022-03-31-update-pkgs-2020.md
new file mode 100644
index 0000000000..9af363115b
--- /dev/null
+++ b/changelog/updates/2022-03-31-update-pkgs-2020.md
@@ -0,0 +1,17 @@
+- elfutils ([0.186](https://sourceware.org/git/?p=elfutils.git;a=blob;f=NEWS;h=490932ae4ef9b5a3af01d2c8c616f14d57586046;hb=983e86fd89e8bf02f2d27ba5dce5bf078af4ceda))
+- jansson ([2.14](https://github.com/akheron/jansson/blob/v2.14/CHANGES))
+- pcre2 ([10.39](https://github.com/PhilipHazel/pcre2/blob/pcre2-10.39/NEWS))
+- libnetfilter_queue ([1.0.5](https://git.netfilter.org/libnetfilter_queue/log/?h=libnetfilter_queue-1.0.5))
+- conntrack-tools ([1.4.6](https://lists.netfilter.org/pipermail/netfilter-announce/2020/000240.html))
+- e2fsprogs ([1.46.4](http://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.46.4))
+- libbsd ([0.11.3](https://gitlab.freedesktop.org/libbsd/libbsd/-/commits/0.11.3/))
+- tcpdump ([4.99.1](https://git.tcpdump.org/tcpdump/blob/5f552b5e6e9fe05f7ad9681d51d0303233daba6a:/CHANGES))
+- open-isns ([0.101](https://github.com/open-iscsi/open-isns/blob/v0.101/ChangeLog))
+- nghttp2 ([1.45.1](https://github.com/nghttp2/nghttp2/releases/tag/v1.45.1))
+- multipath-tools ([0.8.7](https://github.com/opensvc/multipath-tools/commits/0.8.7))
+- bind-tools ([9.16.27](https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_16_27/CHANGES))
+- oniguruma ([6.9.7.1](https://github.com/kkos/oniguruma/releases/tag/v6.9.7.1))
+- unzip ([6.0_p26](https://metadata.ftp-master.debian.org/changelogs//main/u/unzip/unzip_6.0-26_changelog))
+- libpcap ([1.10.1](https://git.tcpdump.org/libpcap/blob/c7642e2cc0c5bd65754685b160d25dc23c76c6bd:/CHANGES))
+- libtasn1 ([4.17.0](https://gitlab.com/gnutls/libtasn1/-/blob/v4.17.0/NEWS))
+- liburing ([2.1](https://github.com/axboe/liburing/commits/liburing-2.1))
diff --git a/dev-lang/tcl/Manifest b/dev-lang/tcl/Manifest
index f713242667..166a301b92 100644
--- a/dev-lang/tcl/Manifest
+++ b/dev-lang/tcl/Manifest
@@ -1,3 +1,2 @@
-DIST tcl-core8.6.8-src.tar.gz 5887483 BLAKE2B 2b8428652e451b817fe63a811f910001929cdcbc8a8361cdf4f7df8e13cbf9b18c94a91c22c0f09cc46dc0174a66c44774b485539a8f24c14faee6658547b6b8 SHA512 36e6079b582c205e8c89435b361ef96550541357f473aea2ca4e6f01bd84e50ebd1474a75a1ae90640b9a5b392fb01ddfa71f0fa28e409b3569d88c32b4ddb69
-DIST tcl-core8.6.9-src.tar.gz 5932010 BLAKE2B ddc0cff12aeeebbf8d1c799db9e154a9ecbe2a2e2afce97c6f15c408301b7a40119bd1c861aa724c178bd9abfe0616c7bcafd9cf6714ed49cf882c9085222cf3 SHA512 306a38a27729b764bae2eae6c4cdd8cd6aee5de6bd924d6a487c8691ee874e4459abc1fa785183c2f6ff4d2d57be98093dd7460c5a668cf994e8f1c31516ae67
-DIST tcl8.5.17-src.tar.gz 4546317 BLAKE2B 27031dd3bd5790d03692e77edf91eb7fae8a40d8d193d8c8ce4e79b21f90e683bfc9d5b71764760223987fb163be844e6096d0aea1058b8ce255731d97e2a0ea SHA512 ad5ddb4cd6378fd6bbea8cd85ceb1cf90392b2e8c49fbfb3e4b35c81d3ae3e3f087697c41fcba8c8e06de1d9e7539397e26d58b864dc01ba65abe4ba4efa9568
+DIST tcl-core8.6.11-src.tar.gz 6041050 BLAKE2B 9c41d5ae5d22627b903d18c5ca607d4a2647d7af65d3029a463cf571d3fbe0bd48e15fef643e81de94296777985a36530a83718d4eb7befca4bc107ab860cc0d SHA512 fe3556c37305e3856743e9a202a320d44b1b3cbc926a1b7a4449ae5baf2f8df92214a9aa06f0a87645d032857fb71458fc864ff007fd73da60463ae5001f2d3f
+DIST tcl-core8.6.12-src.tar.gz 6064625 BLAKE2B 30dc780562aa6955e2c417798cc96fabd23e947cee81146dc192156598e3c43f588864aab4392d62901b8964cf59bedb6cad1f064e32b03dd9733b3a0a7b5c8a SHA512 7144a50d19d3855edbda14b538cc94fe26c0dd357b979676c3fe02d599dab61ba777bf14f6aaebb63e238aeff1d0bad25ea7b0ff31b2398468f67fc0a305b9f3
diff --git a/dev-lang/tcl/files/tcl-8.5.13-multilib.patch b/dev-lang/tcl/files/tcl-8.5.13-multilib.patch
deleted file mode 100644
index 8c4bc74821..0000000000
--- a/dev-lang/tcl/files/tcl-8.5.13-multilib.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/unix/configure.in
-+++ b/unix/configure.in
-@@ -645,7 +645,7 @@
-
- eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
-
--TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)'
-+TCL_LIBRARY='$(libdir)/tcl$(VERSION)'
- PRIVATE_INCLUDE_DIR='$(includedir)'
- HTML_DIR='$(DISTDIR)/html'
-
diff --git a/dev-lang/tcl/files/tcl-8.5.14-conf.patch b/dev-lang/tcl/files/tcl-8.5.14-conf.patch
deleted file mode 100644
index a8b3aa0210..0000000000
--- a/dev-lang/tcl/files/tcl-8.5.14-conf.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/unix/tcl.m4
-+++ b/unix/tcl.m4
-@@ -1427,7 +1427,7 @@ dnl AC_CHECK_TOOL(AR, ar)
- # get rid of the warnings.
- #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
-
-- SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
-+ SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS} -fPIC -Wl,-soname,${@}'
- DL_OBJS="tclLoadDl.o"
- DL_LIBS="-ldl"
- LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
diff --git a/dev-lang/tcl/files/tcl-8.6.10-multilib.patch b/dev-lang/tcl/files/tcl-8.6.10-multilib.patch
new file mode 100644
index 0000000000..329d5614e7
--- /dev/null
+++ b/dev-lang/tcl/files/tcl-8.6.10-multilib.patch
@@ -0,0 +1,11 @@
+--- a/unix/configure.in 2020-12-26 10:39:12.107965844 +0100
++++ b/unix/configure.in 2020-12-26 10:39:44.821378776 +0100
+@@ -773,7 +773,7 @@
+
+ eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
+
+-test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)'
++test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(libdir)/tcl$(VERSION)'
+ PRIVATE_INCLUDE_DIR='$(includedir)'
+ HTML_DIR='$(DISTDIR)/html'
+
diff --git a/dev-lang/tcl/files/tcl-8.6.8-libieee.patch b/dev-lang/tcl/files/tcl-8.6.8-libieee.patch
deleted file mode 100644
index 942144e68c..0000000000
--- a/dev-lang/tcl/files/tcl-8.6.8-libieee.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/unix/tcl.m4
-+++ b/unix/tcl.m4
-@@ -2470,12 +2470,9 @@
- #--------------------------------------------------------------------
- # On a few very rare systems, all of the libm.a stuff is
- # already in libc.a. Set compiler flags accordingly.
-- # Also, Linux requires the "ieee" library for math to work
-- # right (and it must appear before "-lm").
- #--------------------------------------------------------------------
-
- AC_CHECK_FUNC(sin, MATH_LIBS="", MATH_LIBS="-lm")
-- AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"])
-
- #--------------------------------------------------------------------
- # Interactive UNIX requires -linet instead of -lsocket, plus it
diff --git a/dev-lang/tcl/metadata.xml b/dev-lang/tcl/metadata.xml
index cd751414a9..04255bbc4e 100644
--- a/dev-lang/tcl/metadata.xml
+++ b/dev-lang/tcl/metadata.xml
@@ -1,5 +1,5 @@
-
+
tcltk@gentoo.org
diff --git a/dev-lang/tcl/tcl-8.5.17-r1.ebuild b/dev-lang/tcl/tcl-8.5.17-r1.ebuild
deleted file mode 100644
index c1959907d8..0000000000
--- a/dev-lang/tcl/tcl-8.5.17-r1.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools eutils flag-o-matic multilib toolchain-funcs versionator multilib-minimal
-
-MY_P="${PN}${PV/_beta/b}"
-
-DESCRIPTION="Tool Command Language"
-HOMEPAGE="http://www.tcl.tk/"
-SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
-
-LICENSE="tcltk"
-SLOT="0/8.5"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x86-solaris"
-IUSE="debug threads"
-
-RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}"
-
-SPARENT="${WORKDIR}/${MY_P}"
-S="${SPARENT}"/unix
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-8.5.13-multilib.patch
-
- # Bug 125971
- epatch "${FILESDIR}"/${PN}-8.5.14-conf.patch
-
- # Bug 648570
- epatch "${FILESDIR}"/${PN}-8.6.8-libieee.patch
-
- # workaround stack check issues, bug #280934
- use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1"
-
- tc-export CC
-
- sed \
- -e '/chmod/s:555:755:g' \
- -i Makefile.in || die
-
- eautoconf
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- # We went ahead and deleted the whole compat/ subdir which means
- # the configure tests to detect broken versions need to pass (else
- # we'll fail to build). This comes up when cross-compiling, but
- # might as well get a minor configure speed up normally.
- export ac_cv_func_memcmp_working="yes"
- export tcl_cv_str{str,toul,tod}_unbroken="ok"
- export tcl_cv_strtod_buggy="no"
-
- econf \
- $(use_enable threads) \
- $(use_enable debug symbols)
-}
-
-multilib_src_install() {
- #short version number
- local v1=$(get_version_component_range 1-2)
- local mylibdir=$(get_libdir)
-
- S= default
-
- # fix the tclConfig.sh to eliminate refs to the build directory
- # and drop unnecessary -L inclusion to default system libdir
-
- sed \
- -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \
- -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
- -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \
- -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \
- -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
- -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \
- -e "/^TCL_LIB_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \
- -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
- if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then
- sed \
- -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \
- -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \
- -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
- fi
-
- # install private headers
- insinto /usr/${mylibdir}/tcl${v1}/include/unix
- doins *.h
- insinto /usr/${mylibdir}/tcl${v1}/include/generic
- doins "${SPARENT}"/generic/*.h
- rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die
-
- # install symlink for libraries
- dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname)
- dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a
-
- if multilib_is_native_abi; then
- dosym tclsh${v1} /usr/bin/tclsh
- dodoc "${SPARENT}"/{ChangeLog*,README,changes}
- fi
-}
-
-pkg_postinst() {
- for version in ${REPLACING_VERSIONS}; do
- if ! version_is_at_least 8.5 ${version}; then
- echo
- ewarn "You're upgrading from <${P}, you must recompile the other"
- ewarn "packages on your system that link with tcl after the upgrade"
- ewarn "completes. To perform this action, please run revdep-rebuild"
- ewarn "in package app-portage/gentoolkit."
- ewarn "If you have dev-lang/tk and dev-tcltk/tclx installed you should"
- ewarn "upgrade them before this recompilation, too,"
- echo
- fi
- done
-}
diff --git a/dev-lang/tcl/tcl-8.6.9-r1.ebuild b/dev-lang/tcl/tcl-8.6.11.ebuild
similarity index 85%
rename from dev-lang/tcl/tcl-8.6.9-r1.ebuild
rename to dev-lang/tcl/tcl-8.6.11.ebuild
index 824abc3e73..371bc4bb27 100644
--- a/dev-lang/tcl/tcl-8.6.9-r1.ebuild
+++ b/dev-lang/tcl/tcl-8.6.11.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools flag-o-matic multilib-minimal toolchain-funcs
+inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs
MY_P="${PN}${PV}"
@@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${PN}-core${PV}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads"
RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
@@ -23,7 +23,7 @@ SPARENT="${WORKDIR}/${MY_P}"
S="${SPARENT}"/unix
PATCHES=(
- "${FILESDIR}"/${PN}-8.5.13-multilib.patch
+ "${FILESDIR}"/${PN}-8.6.10-multilib.patch
"${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971
"${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120
)
@@ -38,6 +38,12 @@ src_prepare() {
default
popd &>/dev/null || die
+ # httpold tests require netowk
+ rm ../tests/httpold.test \
+ ../tests/env.test \
+ ../tests/http.test \
+ || die
+
# workaround stack check issues, bug #280934
use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1"
@@ -90,7 +96,7 @@ multilib_src_install() {
-e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \
-e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \
-i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
- if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then
+ if use prefix && [[ ${CHOST} != *-darwin* ]] ; then
sed \
-e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \
-e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \
@@ -110,7 +116,7 @@ multilib_src_install() {
if multilib_is_native_abi; then
dosym tclsh${v1} /usr/bin/tclsh
- dodoc "${SPARENT}"/{ChangeLog*,README,changes}
+ dodoc "${SPARENT}"/{ChangeLog*,README.md,changes}
fi
}
diff --git a/dev-lang/tcl/tcl-8.6.8.ebuild b/dev-lang/tcl/tcl-8.6.12.ebuild
similarity index 69%
rename from dev-lang/tcl/tcl-8.6.8.ebuild
rename to dev-lang/tcl/tcl-8.6.12.ebuild
index 6cf0541e41..25b370012e 100644
--- a/dev-lang/tcl/tcl-8.6.8.ebuild
+++ b/dev-lang/tcl/tcl-8.6.12.ebuild
@@ -1,9 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit autotools eutils flag-o-matic multilib multilib-minimal toolchain-funcs versionator
+# Please bump with dev-lang/tk!
+
+inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs
MY_P="${PN}${PV}"
@@ -13,7 +15,7 @@ SRC_URI="mirror://sourceforge/tcl/${PN}-core${PV}-src.tar.gz"
LICENSE="tcltk"
SLOT="0/8.6"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug +threads"
RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
@@ -23,9 +25,9 @@ SPARENT="${WORKDIR}/${MY_P}"
S="${SPARENT}"/unix
PATCHES=(
- "${FILESDIR}"/${PN}-8.5.13-multilib.patch
+ "${FILESDIR}"/${PN}-8.6.10-multilib.patch
"${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971
- "${FILESDIR}"/${PN}-8.6.8-libieee.patch
+ "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120
)
src_prepare() {
@@ -38,6 +40,12 @@ src_prepare() {
default
popd &>/dev/null || die
+ # httpold tests require netowk
+ rm ../tests/httpold.test \
+ ../tests/env.test \
+ ../tests/http.test \
+ || die
+
# workaround stack check issues, bug #280934
use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1"
@@ -74,7 +82,7 @@ multilib_src_configure() {
multilib_src_install() {
#short version number
- local v1=$(get_version_component_range 1-2)
+ local v1=$(ver_cut 1-2)
local mylibdir=$(get_libdir)
S= default
@@ -88,9 +96,9 @@ multilib_src_install() {
-e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \
-e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
-e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \
- -e "/^TCL_LIB_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \
+ -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \
-i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
- if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then
+ if use prefix && [[ ${CHOST} != *-darwin* ]] ; then
sed \
-e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \
-e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \
@@ -110,21 +118,6 @@ multilib_src_install() {
if multilib_is_native_abi; then
dosym tclsh${v1} /usr/bin/tclsh
- dodoc "${SPARENT}"/{ChangeLog*,README,changes}
+ dodoc "${SPARENT}"/{ChangeLog*,README.md,changes}
fi
}
-
-pkg_postinst() {
- for version in ${REPLACING_VERSIONS}; do
- if ! version_is_at_least 8.6 ${version}; then
- echo
- ewarn "You're upgrading from <${P}, you must recompile the other"
- ewarn "packages on your system that link with tcl after the upgrade"
- ewarn "completes. To perform this action, please run revdep-rebuild"
- ewarn "in package app-portage/gentoolkit."
- ewarn "If you have dev-lang/tk and dev-tcltk/tclx installed you should"
- ewarn "upgrade them before this recompilation, too,"
- echo
- fi
- done
-}
diff --git a/dev-libs/elfutils/Manifest b/dev-libs/elfutils/Manifest
index d86f09cabc..6af4e92e7b 100644
--- a/dev-libs/elfutils/Manifest
+++ b/dev-libs/elfutils/Manifest
@@ -1,2 +1,4 @@
-DIST elfutils-0.177.tar.bz2 8852413 BLAKE2B 03f432342651f7646d73b7847325bd14b722ce34d85df01b1ad072b916af9b9da2d0d119cd24e952073bd584ec76b027ba9b6c7d45fb057372b3e700b1f5741a SHA512 2779987463a22ed220759e25a09c9a1eb84c0f36db37675136e59aa55c7f8f90b7a7d34ffc4e6a4291d7fa73692a1bd1a303a74270b11d1623b4f9868d19498f
-DIST elfutils-0.178.tar.bz2 9007557 BLAKE2B 241b611dbfac37f35a670fbe80096c21b870e4b26fcddc8af26fba0373c9cd72eae42aabae2803b7b16c3bf649aeda036b1ea1b40952b43c4021ed23fcb51e80 SHA512 356656ad0db8f6877b461de1a11280de16a9cc5d8dde4381a938a212e828e32755135e5e3171d311c4c9297b728fbd98123048e2e8fbf7fe7de68976a2daabe5
+DIST elfutils-0.185-patches.tar.gz 7625 BLAKE2B 92aff147aa7e45976863e8129e25ecad74ad9bca231c9223897094c5933c3b350eb525a203b492d80c1eabee3b3808b43e30bdb879d7173eac968afa2005e97c SHA512 3f253c4de97190731ac157044572912b76df80f9473f3df335f0383dad6409f987593a749c5284672cf1b20241ac3ed9d77b126f730aaf594725703b6a426906
+DIST elfutils-0.185.tar.bz2 9187627 BLAKE2B 57cfa7e4060975c4bf6170dbd354687a19a92f7069c060db1ac2fa4da5a9d34e8bddd07c7ce376b5c28b5670ad5b8c1df795164cbcfb600a44cf1db60c20c4af SHA512 34de0de1355b11740e036e0fc64f2fc063587c8eb121b19216ee5548d3f0f268d8fc3995176c47190466b9d881007cfa11a9d01e9a50e38af6119492bf8bb47f
+DIST elfutils-0.186-patches.tar.gz 3323 BLAKE2B 360365597d3a08d6f4fe843d04bcddd07a44ca93dae2034615abc450517e1be21c81a55aa379c409902e134ae795b38bb7461c65cdba3934ac7ef1e4e0e53091 SHA512 e2d427be505fdc416751a1fbc3bb4f39577859d94ce43990faa83c135fe36be2ddb3a2ef0f1020cfa37060e6d43dc7b8cf3db0d07d62b31bf29cb9a4a5945ce1
+DIST elfutils-0.186.tar.bz2 9230491 BLAKE2B 49573d0a1f3519eab81d1ba3e94354cbc0935a36a94a3fdb22fe223a47b78cca8fd6e322870b0e335a809529fa6f54180b13c67936dec0242123c54ba20c9fc9 SHA512 c9180b27ec62935f18b9431268d176f6023d1bb938731d2af6e7626ae460af6608a70ba68483aa1ec7e6cb0fa0528b661ca8b68bc4f58ea8e18af527c5950c78
diff --git a/dev-libs/elfutils/elfutils-0.178.ebuild b/dev-libs/elfutils/elfutils-0.185.ebuild
similarity index 58%
rename from dev-libs/elfutils/elfutils-0.178.ebuild
rename to dev-libs/elfutils/elfutils-0.185.ebuild
index 78a7c8af0d..26aeca00e2 100644
--- a/dev-libs/elfutils/elfutils-0.178.ebuild
+++ b/dev-libs/elfutils/elfutils-0.185.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 2003-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -8,34 +8,45 @@ inherit flag-o-matic multilib-minimal
DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
HOMEPAGE="http://elfutils.org/"
SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.185-patches.tar.gz"
LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind zstd"
-RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
- lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
- !dev-libs/libelf"
+RDEPEND=">=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}]
+ bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] )
+ elibc_musl? (
+ dev-libs/libbsd
+ sys-libs/argp-standalone
+ sys-libs/fts-standalone
+ sys-libs/obstack-standalone
+ )
+ !dev-libs/libelf
+"
DEPEND="${RDEPEND}
valgrind? ( dev-util/valgrind )
"
BDEPEND="nls? ( sys-devel/gettext )
>=sys-devel/flex-2.5.4a
- sys-devel/m4"
-
+ sys-devel/m4
+"
RESTRICT="!test? ( test )"
PATCHES=(
- "${FILESDIR}"/${PN}-0.118-PaX-support.patch
- "${FILESDIR}"/${PN}-0.175-disable-biarch-test-PR24158.patch
- "${FILESDIR}"/${PN}-0.177-disable-large.patch
+ "${WORKDIR}"/${PN}-0.185-patches/
)
src_prepare() {
default
+ if use elibc_musl; then
+ eapply "${WORKDIR}"/${PN}-0.185-patches/musl/
+ fi
+
if ! use static-libs; then
sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die
fi
@@ -45,6 +56,11 @@ src_prepare() {
src_configure() {
use test && append-flags -g #407135
+
+ # Symbol aliases are implemented as asm statements.
+ # Will require porting: https://gcc.gnu.org/PR48200
+ filter-flags '-flto*'
+
multilib-minimal_src_configure
}
@@ -54,10 +70,12 @@ multilib_src_configure() {
$(use_enable threads thread-safety) \
$(use_enable valgrind) \
--disable-debuginfod \
+ --disable-libdebuginfod \
--program-prefix="eu-" \
--with-zlib \
$(use_with bzip2 bzlib) \
- $(use_with lzma)
+ $(use_with lzma) \
+ $(use_with zstd)
}
multilib_src_test() {
diff --git a/dev-libs/elfutils/elfutils-0.177.ebuild b/dev-libs/elfutils/elfutils-0.186.ebuild
similarity index 53%
rename from dev-libs/elfutils/elfutils-0.177.ebuild
rename to dev-libs/elfutils/elfutils-0.186.ebuild
index 16919d7eb3..1cb0347622 100644
--- a/dev-libs/elfutils/elfutils-0.177.ebuild
+++ b/dev-libs/elfutils/elfutils-0.186.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 2003-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,43 +6,62 @@ EAPI=7
inherit flag-o-matic multilib-minimal
DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
-HOMEPAGE="http://elfutils.org/"
+HOMEPAGE="https://elfutils.org/"
SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.186-patches.tar.gz"
LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="bzip2 lzma nls static-libs test +threads +utils"
-
-RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
- bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
- lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
- !dev-libs/libelf"
-DEPEND="${RDEPEND}"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind zstd"
+
+RDEPEND=">=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}]
+ bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] )
+ elibc_musl? (
+ dev-libs/libbsd
+ sys-libs/argp-standalone
+ sys-libs/fts-standalone
+ sys-libs/obstack-standalone
+ )
+ !dev-libs/libelf
+"
+DEPEND="${RDEPEND}
+ valgrind? ( dev-util/valgrind )
+"
BDEPEND="nls? ( sys-devel/gettext )
>=sys-devel/flex-2.5.4a
- sys-devel/m4"
-
+ sys-devel/m4
+"
RESTRICT="!test? ( test )"
PATCHES=(
- "${FILESDIR}"/${PN}-0.118-PaX-support.patch
- "${FILESDIR}"/${PN}-0.175-disable-biarch-test-PR24158.patch
- "${FILESDIR}"/${PN}-0.177-disable-large.patch
+ "${WORKDIR}"/${PN}-0.186-patches/
)
src_prepare() {
default
+ if use elibc_musl; then
+ eapply "${WORKDIR}"/${PN}-0.186-patches/musl/
+ fi
+
if ! use static-libs; then
sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die
fi
+
# https://sourceware.org/PR23914
sed -i 's:-Werror::' */Makefile.in || die
}
src_configure() {
use test && append-flags -g #407135
+
+ # Symbol aliases are implemented as asm statements.
+ # Will require porting: https://gcc.gnu.org/PR48200
+ filter-flags '-flto*'
+
multilib-minimal_src_configure
}
@@ -50,10 +69,14 @@ multilib_src_configure() {
ECONF_SOURCE="${S}" econf \
$(use_enable nls) \
$(use_enable threads thread-safety) \
+ $(use_enable valgrind) \
+ --disable-debuginfod \
+ --disable-libdebuginfod \
--program-prefix="eu-" \
--with-zlib \
$(use_with bzip2 bzlib) \
- $(use_with lzma)
+ $(use_with lzma) \
+ $(use_with zstd)
}
multilib_src_test() {
diff --git a/dev-libs/elfutils/files/elfutils-0.118-PaX-support.patch b/dev-libs/elfutils/files/elfutils-0.118-PaX-support.patch
deleted file mode 100644
index 0ae359fe7d..0000000000
--- a/dev-libs/elfutils/files/elfutils-0.118-PaX-support.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Add support for PaX ELF markings
-
-Patch by Kevin F. Quinn
-
-http://bugs.gentoo.org/115100
-
---- a/libelf/elf.h
-+++ b/libelf/elf.h
-@@ -568,6 +568,7 @@
- #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */
- #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */
- #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */
-+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */
- #define PT_LOSUNW 0x6ffffffa
- #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */
- #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */
---- a/src/elflint.c
-+++ b/src/elflint.c
-@@ -3187,6 +3187,7 @@
-
- if (phdr->p_type >= PT_NUM && phdr->p_type != PT_GNU_EH_FRAME
- && phdr->p_type != PT_GNU_STACK && phdr->p_type != PT_GNU_RELRO
-+ && phdr->p_type != PT_PAX_FLAGS
- /* Check for a known machine-specific type. */
- && ebl_segment_type_name (ebl, phdr->p_type, NULL, 0) == NULL)
- ERROR (gettext ("\
diff --git a/dev-libs/elfutils/files/elfutils-0.173-reorder.patch b/dev-libs/elfutils/files/elfutils-0.173-reorder.patch
deleted file mode 100644
index fd3dede7c2..0000000000
--- a/dev-libs/elfutils/files/elfutils-0.173-reorder.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-https://bugs.gentoo.org/666954
-https://github.com/rpm-software-management/rpm/issues/423
-https://sourceware.org/ml/elfutils-devel/2019-q2/msg00077.html
-
-From: Mark Wielaard
-Subject: [PATCH] libelf: Mark shdr_flags dirty if offset or size changes during update.
-Date: Mon, 13 May 2019 00:13:42 +0200
-Message-Id: <20190512221342.23383-1-mark@klomp.org>
-
-We forgot to mark the shdr_flags dirty when only the sh_size or
-sh_offset changed during elf_update (). This meant that if there were
-no other shdr changes we only wrote out the section data, but didn't
-write out the shdr table to the file.
-
-Signed-off-by: Mark Wielaard
----
- libelf/elf32_updatenull.c | 5 +-
-
---- a/libelf/elf32_updatenull.c
-+++ b/libelf/elf32_updatenull.c
-@@ -366,12 +366,15 @@ __elfw2(LIBELFBITS,updatenull_wrlock) (Elf *elf, int *change_bop, size_t shnum)
- }
-
- /* See whether the section size is correct. */
-+ int size_changed = 0;
- update_if_changed (shdr->sh_size, (GElf_Word) offset,
-- changed);
-+ size_changed);
-+ changed |= size_changed;
-
- if (shdr->sh_type != SHT_NOBITS)
- size += offset;
-
-+ scn->shdr_flags |= (offset_changed | size_changed);
- scn->flags |= changed;
- }
-
diff --git a/dev-libs/elfutils/files/elfutils-0.175-disable-biarch-test-PR24158.patch b/dev-libs/elfutils/files/elfutils-0.175-disable-biarch-test-PR24158.patch
deleted file mode 100644
index 809c3df1ef..0000000000
--- a/dev-libs/elfutils/files/elfutils-0.175-disable-biarch-test-PR24158.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-https://sourceware.org/PR24158
-
-Tets fails when 32-bit elfutils tries to dump 64-bit process.
---- a/tests/run-backtrace-native-biarch.sh
-+++ b/tests/run-backtrace-native-biarch.sh
-@@ -17,2 +17,3 @@
-
-+ELFUTILS_DISABLE_BIARCH=yes # https://sourceware.org/PR24158
- if test -n "$ELFUTILS_DISABLE_BIARCH"; then
diff --git a/dev-libs/elfutils/files/elfutils-0.177-disable-large.patch b/dev-libs/elfutils/files/elfutils-0.177-disable-large.patch
deleted file mode 100644
index 7829585176..0000000000
--- a/dev-libs/elfutils/files/elfutils-0.177-disable-large.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-getconf does not disable test on 64-kernel with CFLAGS=-m32
---- a/tests/run-large-elf-file.sh
-+++ b/tests/run-large-elf-file.sh
-@@ -19,6 +19,10 @@
-
- # Only run on 64bit systems, 32bit systems don't support > 4GB
- # ELF files.
-+
-+# this detection fails for 64-bit systems with -m32
-+exit 77
-+
- long_bit=$(getconf LONG_BIT)
- echo "long_bit: $long_bit"
- if test $long_bit -ne 64; then
diff --git a/dev-libs/elfutils/metadata.xml b/dev-libs/elfutils/metadata.xml
index 10d87faccf..a420f7e0a9 100644
--- a/dev-libs/elfutils/metadata.xml
+++ b/dev-libs/elfutils/metadata.xml
@@ -1,5 +1,5 @@
-
+
toolchain@gentoo.org
diff --git a/dev-libs/jansson/Manifest b/dev-libs/jansson/Manifest
index b4d6143a91..8d590df3b2 100644
--- a/dev-libs/jansson/Manifest
+++ b/dev-libs/jansson/Manifest
@@ -1,2 +1,2 @@
-DIST jansson-2.12.tar.gz 489154 BLAKE2B cf6bc6d03daba921ec5e033bf57ff0055741cc935adb14d5d4a5f04056fa93c292bf88367db071ef7bb32fbc5d2d6f5f2ce658815a17939bd38ed5c0676ad091 SHA512 e40bdafdfa1fa663f71e00c06d7bfc98cff4ed3581a147894e5272e50fa5f9b9a7af6aaca41ff423a2ddd2554a192b36efcc32f6a3c98c727e9f819b955357cb
DIST jansson-2.13.1.tar.gz 531924 BLAKE2B e627bd2ba69bf01b053ff13dee903056db86999f774d6863517e67cef7dc9ddcaa747f2edca9de86bd83f37940a394ac9907f7d58069607ee529af08d8514d57 SHA512 e32be6665e41cf1763608c2f1ac4ce0824d4d7ffa5f4a5824cefde279250fdd399d49ba93d8894e16a473731f629b846554654347f027ca9a0a96ed047f10192
+DIST jansson-2.14.tar.gz 535618 BLAKE2B eb514ff222444d4c0d1ef6b99150e3e43bd4d7a1bec3d66e5ece8bc59ac19a0898d9eb061cacad52afda7fe172ec6df46b5a90952707422f56daae53f82c9427 SHA512 5a592776c7ba8c0b1f5efaf813f77948bbc4bda168a72d221d176af0cf61038e26c1f30795433be10e2fc5069d5763d11852a8574774906a9f8ad261ac30109c
diff --git a/dev-libs/jansson/files/jansson-2.13.1-sphinx3.patch b/dev-libs/jansson/files/jansson-2.13.1-sphinx3.patch
new file mode 100644
index 0000000000..e611896e9c
--- /dev/null
+++ b/dev-libs/jansson/files/jansson-2.13.1-sphinx3.patch
@@ -0,0 +1,269 @@
+Rebase pull request #543 onto v2.13.1
+
+Allows jansson documentation to compile with Sphinx-3.0
+
+Squashed commit messages below:
+
+
+pick 798d40c doc: convert refcounting directive to a class
+
+Directive functions are no longer supported in Sphinx-3.0
+but directive classes have been supported since early 1.x
+
+
+pick 9431889 doc: do not use references for standard C types or file names
+
+Use double-backtick quoting instead. It has the same effect
+(because these links had nowhere to link to) but it does not
+result in loud warnings about broken references by default with Sphinx-3.x.
+
+
+pick c329fd7 doc: add return types for function-like macros
+
+The Sphinx-3.0 c:function:: directive requires the return type.
+
+Sphinx-3.0 also adds function-like macro support to the c:macro::
+directive, which Sphinx-1.x and Sphinx-2.x do not support, but it
+is probably a good idea to keep compatibility with slightly older
+Sphinx for now.
+
+diff --git a/CHANGES b/CHANGES
+index a374a86..256fde1 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -8,7 +8,7 @@ Released 2020-05-07
+ - Include `jansson_version_str()` and `jansson_version_cmp()` in
+ shared library. (#534)
+
+- - Include `scripts/` in tarball. (#535)
++ - Include ``scripts/`` in tarball. (#535)
+
+
+ Version 2.13
+@@ -127,7 +127,7 @@ Released 2018-02-09
+
+ - Work around gcc's -Wimplicit-fallthrough.
+
+- - Fix CMake detection of `sys/types.h` header (#375).
++ - Fix CMake detection of ``sys/types.h`` header (#375).
+
+ - Fix `jansson.pc` generated by CMake to be more consistent with the one
+ generated using GNU Autotools (#368).
+diff --git a/doc/apiref.rst b/doc/apiref.rst
+index c3a814f..94c5726 100644
+--- a/doc/apiref.rst
++++ b/doc/apiref.rst
+@@ -145,33 +145,33 @@ Type
+ .. function:: int json_typeof(const json_t *json)
+
+ Return the type of the JSON value (a :type:`json_type` cast to
+- :type:`int`). *json* MUST NOT be *NULL*. This function is actually
++ ``int``). *json* MUST NOT be *NULL*. This function is actually
+ implemented as a macro for speed.
+
+-.. function:: json_is_object(const json_t *json)
+- json_is_array(const json_t *json)
+- json_is_string(const json_t *json)
+- json_is_integer(const json_t *json)
+- json_is_real(const json_t *json)
+- json_is_true(const json_t *json)
+- json_is_false(const json_t *json)
+- json_is_null(const json_t *json)
++.. function:: int json_is_object(const json_t *json)
++ int json_is_array(const json_t *json)
++ int json_is_string(const json_t *json)
++ int json_is_integer(const json_t *json)
++ int json_is_real(const json_t *json)
++ int json_is_true(const json_t *json)
++ int json_is_false(const json_t *json)
++ int json_is_null(const json_t *json)
+
+ These functions (actually macros) return true (non-zero) for values
+ of the given type, and false (zero) for values of other types and
+ for *NULL*.
+
+-.. function:: json_is_number(const json_t *json)
++.. function:: int json_is_number(const json_t *json)
+
+ Returns true for values of types ``JSON_INTEGER`` and
+ ``JSON_REAL``, and false for other types and for *NULL*.
+
+-.. function:: json_is_boolean(const json_t *json)
++.. function:: int json_is_boolean(const json_t *json)
+
+ Returns true for types ``JSON_TRUE`` and ``JSON_FALSE``, and false
+ for values of other types and for *NULL*.
+
+-.. function:: json_boolean_value(const json_t *json)
++.. function:: int json_boolean_value(const json_t *json)
+
+ Alias of :func:`json_is_true()`, i.e. returns 1 for ``JSON_TRUE``
+ and 0 otherwise.
+@@ -594,7 +594,7 @@ A JSON array is an ordered collection of other JSON values.
+ Appends all elements in *other_array* to the end of *array*.
+ Returns 0 on success and -1 on error.
+
+-.. function:: json_array_foreach(array, index, value)
++.. function:: void json_array_foreach(array, index, value)
+
+ Iterate over every element of ``array``, running the block
+ of code that follows each time with the proper values set to
+@@ -732,11 +732,11 @@ allowed in object keys.
+ recursively merged with the corresponding values in *object* if they are also
+ objects, instead of overwriting them. Returns 0 on success or -1 on error.
+
+-.. function:: json_object_foreach(object, key, value)
++.. function:: void json_object_foreach(object, key, value)
+
+ Iterate over every key-value pair of ``object``, running the block
+ of code that follows each time with the proper values set to
+- variables ``key`` and ``value``, of types :type:`const char *` and
++ variables ``key`` and ``value``, of types ``const char *`` and
+ :type:`json_t *` respectively. Example::
+
+ /* obj is a JSON object */
+@@ -764,7 +764,7 @@ allowed in object keys.
+ .. versionadded:: 2.3
+
+
+-.. function:: json_object_foreach_safe(object, tmp, key, value)
++.. function:: void json_object_foreach_safe(object, tmp, key, value)
+
+ Like :func:`json_object_foreach()`, but it's safe to call
+ ``json_object_del(object, key)`` during iteration. You need to pass
+@@ -1488,17 +1488,17 @@ arguments.
+ Output a JSON null value. No argument is consumed.
+
+ ``b`` (boolean) [int]
+- Convert a C :type:`int` to JSON boolean value. Zero is converted
++ Convert a C ``int`` to JSON boolean value. Zero is converted
+ to ``false`` and non-zero to ``true``.
+
+ ``i`` (integer) [int]
+- Convert a C :type:`int` to JSON integer.
++ Convert a C ``int`` to JSON integer.
+
+ ``I`` (integer) [json_int_t]
+ Convert a C :type:`json_int_t` to JSON integer.
+
+ ``f`` (real) [double]
+- Convert a C :type:`double` to JSON real.
++ Convert a C ``double`` to JSON real.
+
+ ``o`` (any value) [json_t \*]
+ Output any given JSON value as-is. If the value is added to an
+@@ -1625,20 +1625,20 @@ type whose address should be passed.
+ Expect a JSON null value. Nothing is extracted.
+
+ ``b`` (boolean) [int]
+- Convert a JSON boolean value to a C :type:`int`, so that ``true``
++ Convert a JSON boolean value to a C ``int``, so that ``true``
+ is converted to 1 and ``false`` to 0.
+
+ ``i`` (integer) [int]
+- Convert a JSON integer to C :type:`int`.
++ Convert a JSON integer to C ``int``.
+
+ ``I`` (integer) [json_int_t]
+ Convert a JSON integer to C :type:`json_int_t`.
+
+ ``f`` (real) [double]
+- Convert a JSON real to C :type:`double`.
++ Convert a JSON real to C ``double``.
+
+ ``F`` (integer or real) [double]
+- Convert a JSON number (integer or real) to C :type:`double`.
++ Convert a JSON number (integer or real) to C ``double``.
+
+ ``o`` (any value) [json_t \*]
+ Store a JSON value with no conversion to a :type:`json_t` pointer.
+diff --git a/doc/ext/refcounting.py b/doc/ext/refcounting.py
+index bba2684..e72c481 100644
+--- a/doc/ext/refcounting.py
++++ b/doc/ext/refcounting.py
+@@ -24,8 +24,8 @@
+ """
+
+ from docutils import nodes
++from docutils.parsers.rst import Directive
+
+-class refcounting(nodes.emphasis): pass
+
+ def visit(self, node):
+ self.visit_emphasis(node)
+@@ -40,16 +40,25 @@ def html_depart(self, node):
+ self.body.append('')
+
+
+-def refcounting_directive(name, arguments, options, content, lineno,
+- content_offset, block_text, state, state_machine):
+- if arguments[0] == 'borrow':
+- text = 'Return value: Borrowed reference.'
+- elif arguments[0] == 'new':
+- text = 'Return value: New reference.'
+- else:
+- raise Error('Valid arguments: new, borrow')
++class refcounting(nodes.emphasis):
++ pass
++
++class refcounting_directive(Directive):
++ has_content = False
++ required_arguments = 1
++ optional_arguments = 0
++ final_argument_whitespace = False
++
++ def run(self):
++ if self.arguments[0] == 'borrow':
++ text = 'Return value: Borrowed reference.'
++ elif self.arguments[0] == 'new':
++ text = 'Return value: New reference.'
++ else:
++ raise Error('Valid arguments: new, borrow')
++
++ return [refcounting(text, text)]
+
+- return [refcounting(text, text)]
+
+ def setup(app):
+ app.add_node(refcounting,
+@@ -57,4 +66,4 @@ def setup(app):
+ latex=(visit, depart),
+ text=(visit, depart),
+ man=(visit, depart))
+- app.add_directive('refcounting', refcounting_directive, 0, (1, 0, 0))
++ app.add_directive('refcounting', refcounting_directive)
+diff --git a/doc/upgrading.rst b/doc/upgrading.rst
+index 9b49046..94ff7de 100644
+--- a/doc/upgrading.rst
++++ b/doc/upgrading.rst
+@@ -47,13 +47,13 @@ List of Incompatible Changes
+
+ **Underlying type of JSON integers**
+ The underlying C type of JSON integers has been changed from
+- :type:`int` to the widest available signed integer type, i.e.
+- :type:`long long` or :type:`long`, depending on whether
+- :type:`long long` is supported on your system or not. This makes
++ ``int`` to the widest available signed integer type, i.e.
++ ``long long`` or ``long``, depending on whether
++ ``long long`` is supported on your system or not. This makes
+ the whole 64-bit integer range available on most modern systems.
+
+ ``jansson.h`` has a typedef :type:`json_int_t` to the underlying
+- integer type. :type:`int` should still be used in most cases when
++ integer type. ``int`` should still be used in most cases when
+ dealing with smallish JSON integers, as the compiler handles
+ implicit type coercion. Only when the full 64-bit range is needed,
+ :type:`json_int_t` should be explicitly used.
+@@ -69,8 +69,8 @@ List of Incompatible Changes
+
+ **Unsigned integers in API functions**
+ Version 2.0 unifies unsigned integer usage in the API. All uses of
+- :type:`unsigned int` and :type:`unsigned long` have been replaced
+- with :type:`size_t`. This includes flags, container sizes, etc.
++ ``unsigned int`` and ``unsigned long`` have been replaced
++ with ``size_t``. This includes flags, container sizes, etc.
+ This should not require source code changes, as both
+- :type:`unsigned int` and :type:`unsigned long` are usually
+- compatible with :type:`size_t`.
++ ``unsigned int`` and ``unsigned long`` are usually
++ compatible with ``size_t``.
diff --git a/dev-libs/jansson/files/jansson-2.14-test-symbols.patch b/dev-libs/jansson/files/jansson-2.14-test-symbols.patch
new file mode 100644
index 0000000000..a5bf533472
--- /dev/null
+++ b/dev-libs/jansson/files/jansson-2.14-test-symbols.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/814944
+https://github.com/akheron/jansson/commit/0677666f65b988b2dd44d02966a08fea490d5883
+
+From 0677666f65b988b2dd44d02966a08fea490d5883 Mon Sep 17 00:00:00 2001
+From: Petri Lehtinen
+Date: Thu, 9 Sep 2021 21:53:11 +0300
+Subject: [PATCH] Fix the check-exports tests for versioned symbols
+
+---
+ test/suites/api/check-exports | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/suites/api/check-exports b/test/suites/api/check-exports
+index 2b6b3c79..5c82064c 100755
+--- a/test/suites/api/check-exports
++++ b/test/suites/api/check-exports
+@@ -15,7 +15,7 @@ grep 'json_\|jansson_' $top_srcdir/src/jansson.def \
+ nm -D $SOFILE >/dev/null >$test_log/symbols 2>/dev/null \
+ || exit 77 # Skip if "nm -D" doesn't seem to work
+
+-grep ' [DT] ' $test_log/symbols | cut -d' ' -f3 | grep -v '^_' | sort >$test_log/output
++grep ' [DT] ' $test_log/symbols | cut -d' ' -f3 | grep -v '^_' | sed 's/@@libjansson.*//' | sort >$test_log/output
+
+ if ! cmp -s $test_log/exports $test_log/output; then
+ diff -u $test_log/exports $test_log/output >&2
diff --git a/dev-libs/jansson/jansson-2.13.1.ebuild b/dev-libs/jansson/jansson-2.13.1-r1.ebuild
similarity index 68%
rename from dev-libs/jansson/jansson-2.13.1.ebuild
rename to dev-libs/jansson/jansson-2.13.1-r1.ebuild
index 8b9c7d1b6c..0ea1a8080f 100644
--- a/dev-libs/jansson/jansson-2.13.1.ebuild
+++ b/dev-libs/jansson/jansson-2.13.1-r1.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
@@ -11,11 +11,15 @@ SRC_URI="https://www.digip.org/jansson/releases/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="doc static-libs"
-# dev-libs/jansson-2.13.1[doc]: fails to build with >=sphinx-3.0, #731668
-BDEPEND="doc? ( =sphinx-3.0, #731668
+ "${FILESDIR}/${P}-sphinx3.patch"
+)
multilib_src_configure() {
ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
diff --git a/dev-libs/jansson/jansson-2.12.ebuild b/dev-libs/jansson/jansson-2.14.ebuild
similarity index 60%
rename from dev-libs/jansson/jansson-2.12.ebuild
rename to dev-libs/jansson/jansson-2.14.ebuild
index 68ae0abd38..42760f3115 100644
--- a/dev-libs/jansson/jansson-2.12.ebuild
+++ b/dev-libs/jansson/jansson-2.14.ebuild
@@ -1,23 +1,26 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit multilib-minimal
+inherit multilib-minimal toolchain-funcs
DESCRIPTION="C library for encoding, decoding and manipulating JSON data"
-HOMEPAGE="http://www.digip.org/jansson/"
-SRC_URI="http://www.digip.org/jansson/releases/${P}.tar.gz"
+HOMEPAGE="https://www.digip.org/jansson/"
+SRC_URI="https://github.com/akheron/jansson/releases/download/v${PV}/${P}.tar.gz"
LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
+SLOT="0/4"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="doc static-libs"
-BDEPEND="doc? (
-
+
-
+
zero-one@zer0-one.net
David Zero
-
+
proxy-maint@gentoo.org
Proxy Maintainers
diff --git a/dev-libs/libbsd/Manifest b/dev-libs/libbsd/Manifest
index 5a70770bb8..c47ce9ccb0 100644
--- a/dev-libs/libbsd/Manifest
+++ b/dev-libs/libbsd/Manifest
@@ -1 +1,2 @@
-DIST libbsd-0.10.0.tar.xz 393576 BLAKE2B 66005a511dae7fb799322c813b8ea058ab460e3b9044756d6efad5de741d8f70270496f09803bbce8cd0000ff37e998f18e092037c850826c3c8e3f47ddfdb28 SHA512 b75529785b16c93d31401187f8a58258fbebe565dac071c8311775c913af989f62cd29d5ce2651af3ea6221cffd31cf04826577d3e546ab9ca14340f297777b9
+DIST libbsd-0.11.3.tar.xz 399712 BLAKE2B 1af04b8fcbc0bfa59fba549639d61a33ac934fe7ee42b506d1b0452e0b836b0bfdd3d8739de90465be46fe6a9d326a2d11bcf72280aa19ccba81db5da6d63d89 SHA512 a7015ea1ffa3766b1a4690526a25231898ad8275149b31fb6801082450172249997c36165626d101ffce53b59767a46676eebc0806426922fe4e773a0376c1f5
+DIST libbsd-0.11.5.tar.xz 409972 BLAKE2B 00c89ad1be351e7851538eac2744f5aef87b5937330d514d17af8a20a04bc6eab0e2bda61d0080da1d1439306b3b191ab68b4bc4cd8558ff0adfe402bfbf5b52 SHA512 c52c19eddd53630aca14f9f6221f7b84aa9cc798b4bb91e867822b161793313aab872ac1c0350d29312a72fee6e2061f3910ff918b724ec171d8c9de5837c841
diff --git a/dev-libs/libbsd/libbsd-0.10.0.ebuild b/dev-libs/libbsd/libbsd-0.11.3.ebuild
similarity index 67%
rename from dev-libs/libbsd/libbsd-0.10.0.ebuild
rename to dev-libs/libbsd/libbsd-0.11.3.ebuild
index f4a24da079..1551e7d7f7 100644
--- a/dev-libs/libbsd/libbsd-0.10.0.ebuild
+++ b/dev-libs/libbsd/libbsd-0.11.3.ebuild
@@ -1,28 +1,30 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
inherit multilib-minimal
-DESCRIPTION="An library to provide useful functions commonly found on BSD systems"
+DESCRIPTION="Library to provide useful functions commonly found on BSD systems"
HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd"
SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
LICENSE="BSD BSD-2 BSD-4 ISC"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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="static-libs"
-DEPEND=">=sys-kernel/linux-headers-3.17"
-RDEPEND=""
+RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-3.17
+"
pkg_setup() {
local f="${EROOT}/usr/$(get_libdir)/${PN}.a"
- local m="You need to remove ${f} by hand or re-emerge sys-libs/glibc first."
if ! has_version ${CATEGORY}/${PN}; then
if [[ -e ${f} ]]; then
eerror "${m}"
- die "${m}"
+ die "You need to remove ${f} by hand or re-emerge sys-libs/glibc first."
fi
fi
}
diff --git a/dev-libs/libbsd/libbsd-0.11.5.ebuild b/dev-libs/libbsd/libbsd-0.11.5.ebuild
new file mode 100644
index 0000000000..55d75e728b
--- /dev/null
+++ b/dev-libs/libbsd/libbsd-0.11.5.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal
+
+DESCRIPTION="Library to provide useful functions commonly found on BSD systems"
+HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd"
+SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz"
+
+LICENSE="BSD BSD-2 BSD-4 ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs"
+
+RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-3.17
+"
+
+multilib_src_configure() {
+ # The build system will install libbsd-ctor.a despite of USE="-static-libs"
+ # which is correct, see:
+ # https://gitlab.freedesktop.org/libbsd/libbsd/commit/c5b959028734ca2281250c85773d9b5e1d259bc8
+ ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-libs/libbsd/metadata.xml b/dev-libs/libbsd/metadata.xml
index 1ff7e0b3b4..822dbca255 100644
--- a/dev-libs/libbsd/metadata.xml
+++ b/dev-libs/libbsd/metadata.xml
@@ -1,5 +1,5 @@
-
+
freedesktop-bugs@gentoo.org
diff --git a/dev-libs/libpcre2/Manifest b/dev-libs/libpcre2/Manifest
index 8497efa485..dcba31a9c9 100644
--- a/dev-libs/libpcre2/Manifest
+++ b/dev-libs/libpcre2/Manifest
@@ -1,3 +1,4 @@
-DIST libpcre2-10.34-patchset-01.tar.xz 1208 BLAKE2B 615b7eff085bd52bb3aed30c90ec5b8cec406f96c58bdfb0304dd59311517662067e68f85bc9930ed6f749820ecfe3c483e261616187bc1077ebb053670d4950 SHA512 d881665701bc330f237d19ee48491a81dc8b952b0b8e529eb83c3ffdf14710f68eb934f872ed76ef6b0bee1864261453e7e71e60e14217c004e4e12c6baa499f
-DIST pcre2-10.34.tar.bz2 1714731 BLAKE2B f731339b3acdb084ddb1462cf4638edefbfc4a95e63e44c8c75ded55fd9b98334336dbda5f31bd8e9410e63ccd83dc7e707cc20f03df4d801f182ff4939b6cc6 SHA512 77ad75f8b0b8bbfc2f57932596151bca25b06bd621e0f047e476f38cd127f43e2052460b95c281a7e874aad2b7fd86c8f3413f4a323abb74b9440a42d0ee9524
-DIST pcre2-10.35.tar.bz2 1725214 BLAKE2B f97412258f0d2c09dc18c5973156e616730ae301713a0172fb2f467e5d2857bf64c6d02ac247e797ce4c96e2fb9b122888f71aede3f5eb3540731f6c3c254ed4 SHA512 ecfb8d48e219daff02874783b7b436fe7d70d8471e44eb66e1e29abb7b0aa67547e6b5fba7058b074ac90eef265ece7d12728f80afdda45b6b8124435f4561fd
+DIST libpcre2-10.36-patchset-01.tar.xz 1364 BLAKE2B bfef3c876a092e06972107b44794c23b758a030181f3040c8b722db166789eac794783169b468fc71334fd660bc2f1c31422a8cb8e5bdc18a69b72654b1b59b2 SHA512 04324d1efa6d155fa3ffbc328638e4674bea305fef7f57d4369ab4a6399a0f489b4c0ecfb49643feff310d91872e1673e965c48a5c60f1bf54a319f0d275c306
+DIST pcre2-10.37.tar.bz2 1729384 BLAKE2B b4e56041010d7f44e84a63a17b35e87329d258107d8b27ccead10f51e7deacc93cbee64a22c71b9f0b8f244920b3a22fa4d9b786ec441a428e0ad0bb8535773e SHA512 69f4bf4736b986e0fc855eedb292efe72a0df2e803bc0e61a6cf47775eed433bb1b2f28d7e641591ef4603d47beb543a64ed0eef9538d00f0746bc3435c143ec
+DIST pcre2-10.38.tar.bz2 1729078 BLAKE2B 9438ff2422afaa83d5a4b2e64d5897068c35add28d66956431f9937191416d6df4903ecf35af72c788480d7def08e0ce17922e9b036698ce1bbe6cacbb799df2 SHA512 3634cb2db6ccba9720c1b69890bcd9eb7057f6a6cb6981f12b3f2d6b2bb4e75e4e5014f566045f9ba1b79edf01fa5c4d81eb333727b9462e843dfb70f3a58f95
+DIST pcre2-10.39.tar.bz2 1730729 BLAKE2B 9ee01ac2704e9cb7a107d402fa0c32828fc66425b62270f6891667bde5fb00c1e779c9730df3522acbd62d11703343bf48265050c09d3754183de314baf7cddd SHA512 b3d898198f4b5ffc3453d2ba56fe2a7298c01c52e5f67d45f1e046fc0dee62e16a4024fcb65839ac9c367beedb531647affd6f8599fbeb102f19423c150d80d4
diff --git a/dev-libs/libpcre2/files/libpcre2-10.37-jit_fixes.patch b/dev-libs/libpcre2/files/libpcre2-10.37-jit_fixes.patch
new file mode 100644
index 0000000000..6ee5494f2b
--- /dev/null
+++ b/dev-libs/libpcre2/files/libpcre2-10.37-jit_fixes.patch
@@ -0,0 +1,80 @@
+Index: pcre2/ChangeLog
+===================================================================
+--- pcre2/ChangeLog (revision 1314)
++++ pcre2/ChangeLog (revision 1315)
+@@ -1,7 +1,14 @@
+ Change Log for PCRE2
+ --------------------
+
++Version 10.38-RC1 xx-xxx-2021
++-----------------------------
+
++1. Fix invalid single character repetition issues in JIT when the repetition
++is inside a capturing bracket and the bracket is preceeded by character
++literals.
++
++
+ Version 10.37 26-May-2021
+ -------------------------
+
+Index: pcre2/src/pcre2_jit_compile.c
+===================================================================
+--- pcre2/src/pcre2_jit_compile.c (revision 1314)
++++ pcre2/src/pcre2_jit_compile.c (revision 1315)
+@@ -1236,15 +1236,16 @@
+
+ return: current number of iterators enhanced with fast fail
+ */
+-static int detect_early_fail(compiler_common *common, PCRE2_SPTR cc, int *private_data_start, sljit_s32 depth, int start)
++static int detect_early_fail(compiler_common *common, PCRE2_SPTR cc, int *private_data_start,
++ sljit_s32 depth, int start, BOOL fast_forward_allowed)
+ {
+ PCRE2_SPTR begin = cc;
+ PCRE2_SPTR next_alt;
+ PCRE2_SPTR end;
+ PCRE2_SPTR accelerated_start;
++BOOL prev_fast_forward_allowed;
+ int result = 0;
+ int count;
+-BOOL fast_forward_allowed = TRUE;
+
+ SLJIT_ASSERT(*cc == OP_ONCE || *cc == OP_BRA || *cc == OP_CBRA);
+ SLJIT_ASSERT(*cc != OP_CBRA || common->optimized_cbracket[GET2(cc, 1 + LINK_SIZE)] != 0);
+@@ -1476,6 +1477,7 @@
+ case OP_CBRA:
+ end = cc + GET(cc, 1);
+
++ prev_fast_forward_allowed = fast_forward_allowed;
+ fast_forward_allowed = FALSE;
+ if (depth >= 4)
+ break;
+@@ -1484,7 +1486,7 @@
+ if (*end != OP_KET || (*cc == OP_CBRA && common->optimized_cbracket[GET2(cc, 1 + LINK_SIZE)] == 0))
+ break;
+
+- count = detect_early_fail(common, cc, private_data_start, depth + 1, count);
++ count = detect_early_fail(common, cc, private_data_start, depth + 1, count, prev_fast_forward_allowed);
+
+ if (PRIVATE_DATA(cc) != 0)
+ common->private_data_ptrs[begin - common->start] = 1;
+@@ -13657,7 +13659,7 @@
+ private_data_size = common->cbra_ptr + (re->top_bracket + 1) * sizeof(sljit_sw);
+
+ if ((re->overall_options & PCRE2_ANCHORED) == 0 && (re->overall_options & PCRE2_NO_START_OPTIMIZE) == 0 && !common->has_skip_in_assert_back)
+- detect_early_fail(common, common->start, &private_data_size, 0, 0);
++ detect_early_fail(common, common->start, &private_data_size, 0, 0, TRUE);
+
+ set_private_data_ptrs(common, &private_data_size, ccend);
+
+Index: pcre2/src/pcre2_jit_test.c
+===================================================================
+--- pcre2/src/pcre2_jit_test.c (revision 1314)
++++ pcre2/src/pcre2_jit_test.c (revision 1315)
+@@ -351,6 +351,7 @@
+ { MU, A, 0, 0, ".[ab]*a", "xxa" },
+ { MU, A, 0, 0, ".[ab]?.", "xx" },
+ { MU, A, 0, 0, "_[ab]+_*a", "_aa" },
++ { MU, A, 0, 0, "#(A+)#\\d+", "#A#A#0" },
+
+ /* Bracket repeats with limit. */
+ { MU, A, 0, 0, "(?:(ab){2}){5}M", "abababababababababababM" },
diff --git a/dev-libs/libpcre2/files/libpcre2-10.38-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch b/dev-libs/libpcre2/files/libpcre2-10.38-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch
new file mode 100644
index 0000000000..936bd057a0
--- /dev/null
+++ b/dev-libs/libpcre2/files/libpcre2-10.38-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch
@@ -0,0 +1,49 @@
+https://github.com/PhilipHazel/pcre2/pull/22
+
+--- a/src/pcre2_jit_compile.c
++++ b/src/pcre2_jit_compile.c
+@@ -1251,10 +1251,13 @@ SLJIT_ASSERT(*cc == OP_ONCE || *cc == OP_BRA || *cc == OP_CBRA);
+ SLJIT_ASSERT(*cc != OP_CBRA || common->optimized_cbracket[GET2(cc, 1 + LINK_SIZE)] != 0);
+ SLJIT_ASSERT(start < EARLY_FAIL_ENHANCE_MAX);
+
++next_alt = cc + GET(cc, 1);
++if (*next_alt == OP_ALT)
++ fast_forward_allowed = FALSE;
++
+ do
+ {
+ count = start;
+- next_alt = cc + GET(cc, 1);
+ cc += 1 + LINK_SIZE + ((*cc == OP_CBRA) ? IMM2_SIZE : 0);
+
+ while (TRUE)
+@@ -1512,7 +1515,7 @@ do
+ {
+ count++;
+
+- if (fast_forward_allowed && *next_alt == OP_KET)
++ if (fast_forward_allowed)
+ {
+ common->fast_forward_bc_ptr = accelerated_start;
+ common->private_data_ptrs[(accelerated_start + 1) - common->start] = ((*private_data_start) << 3) | type_skip;
+@@ -1562,8 +1565,8 @@ do
+ else if (result < count)
+ result = count;
+
+- fast_forward_allowed = FALSE;
+ cc = next_alt;
++ next_alt = cc + GET(cc, 1);
+ }
+ while (*cc == OP_ALT);
+
+--- a/src/pcre2_jit_test.c
++++ b/src/pcre2_jit_test.c
+@@ -352,6 +352,7 @@ static struct regression_test_case regression_test_cases[] = {
+ { MU, A, 0, 0, ".[ab]?.", "xx" },
+ { MU, A, 0, 0, "_[ab]+_*a", "_aa" },
+ { MU, A, 0, 0, "#(A+)#\\d+", "#A#A#0" },
++ { MU, A, 0, 0, "(?P\\d+)m|M", "4M" },
+
+ /* Bracket repeats with limit. */
+ { MU, A, 0, 0, "(?:(ab){2}){5}M", "abababababababababababM" },
+
diff --git a/dev-libs/libpcre2/libpcre2-10.34.ebuild b/dev-libs/libpcre2/libpcre2-10.37-r2.ebuild
similarity index 77%
rename from dev-libs/libpcre2/libpcre2-10.34.ebuild
rename to dev-libs/libpcre2/libpcre2-10.37-r2.ebuild
index 073c2ee568..abd807adeb 100644
--- a/dev-libs/libpcre2/libpcre2-10.34.ebuild
+++ b/dev-libs/libpcre2/libpcre2-10.37-r2.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit flag-o-matic libtool multilib-minimal toolchain-funcs usr-ldscript
+inherit libtool multilib-minimal usr-ldscript
-PATCH_SET="${P}-patchset-01.tar.xz"
+PATCH_SET="${PN}-10.36-patchset-01.tar.xz"
DESCRIPTION="Perl-compatible regular expression library"
HOMEPAGE="https://www.pcre.org/"
@@ -24,14 +24,13 @@ if [[ -n "${PATCH_SET}" ]] ; then
fi
LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
+SLOT="0/3" # libpcre2-posix.so version
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )"
BDEPEND="
virtual/pkgconfig
- userland_GNU? ( >=sys-apps/findutils-4.4.0 )
"
RDEPEND="
bzip2? ( app-arch/bzip2 )
@@ -43,12 +42,19 @@ DEPEND="${RDEPEND}"
S="${WORKDIR}/${MY_P}"
+PATCHES=(
+ "${FILESDIR}/${P}-jit_fixes.patch"
+)
+
MULTILIB_CHOST_TOOLS=(
/usr/bin/pcre2-config
)
src_prepare() {
- [[ -d "${WORKDIR}/patches" ]] && eapply "${WORKDIR}"/patches
+ if [[ -d "${WORKDIR}/patches" ]] ; then
+ rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die
+ eapply "${WORKDIR}"/patches
+ fi
default
diff --git a/dev-libs/libpcre2/libpcre2-10.38-r1.ebuild b/dev-libs/libpcre2/libpcre2-10.38-r1.ebuild
new file mode 100644
index 0000000000..84077f8a1f
--- /dev/null
+++ b/dev-libs/libpcre2/libpcre2-10.38-r1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit libtool multilib-minimal usr-ldscript
+
+PATCH_SET="${PN}-10.36-patchset-01.tar.xz"
+
+DESCRIPTION="Perl-compatible regular expression library"
+HOMEPAGE="https://www.pcre.org/"
+MY_P="pcre2-${PV/_rc/-RC}"
+if [[ ${PV} != *_rc* ]] ; then
+ # Only the final releases are available here.
+ SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2
+ https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
+ https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2"
+else
+ SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
+fi
+
+if [[ -n "${PATCH_SET}" ]] ; then
+ SRC_URI+=" https://dev.gentoo.org/~whissi/dist/${PN}/${PATCH_SET}
+ https://dev.gentoo.org/~polynomial-c/dist/${PATCH_SET}"
+fi
+
+LICENSE="BSD"
+SLOT="0/3" # libpcre2-posix.so version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
+REQUIRED_USE="?? ( libedit readline )"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+RDEPEND="
+ bzip2? ( app-arch/bzip2 )
+ libedit? ( dev-libs/libedit )
+ readline? ( sys-libs/readline:0= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=( "${FILESDIR}"/${P}-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch )
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/pcre2-config
+)
+
+src_prepare() {
+ if [[ -d "${WORKDIR}/patches" ]] ; then
+ rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die
+ eapply "${WORKDIR}"/patches
+ fi
+
+ default
+
+ elibtoolize
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --enable-pcre2-8
+ --enable-shared
+ --with-match-limit-depth=$(usex recursion-limit 8192 MATCH_LIMIT)
+ $(multilib_native_use_enable bzip2 pcre2grep-libbz2)
+ $(multilib_native_use_enable libedit pcre2test-libedit)
+ $(multilib_native_use_enable readline pcre2test-libreadline)
+ $(multilib_native_use_enable zlib pcre2grep-libz)
+ $(use_enable jit)
+ $(use_enable jit pcre2grep-jit)
+ $(use_enable pcre16 pcre2-16)
+ $(use_enable pcre32 pcre2-32)
+ $(use_enable static-libs static)
+ $(use_enable unicode)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+ emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=")
+}
+
+multilib_src_install() {
+ emake \
+ DESTDIR="${D}" \
+ $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \
+ install
+ multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-libs/libpcre2/libpcre2-10.35.ebuild b/dev-libs/libpcre2/libpcre2-10.38.ebuild
similarity index 74%
rename from dev-libs/libpcre2/libpcre2-10.35.ebuild
rename to dev-libs/libpcre2/libpcre2-10.38.ebuild
index 89944f501c..6f868c1cfe 100644
--- a/dev-libs/libpcre2/libpcre2-10.35.ebuild
+++ b/dev-libs/libpcre2/libpcre2-10.38.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit flag-o-matic libtool multilib-minimal toolchain-funcs usr-ldscript
+inherit libtool multilib-minimal usr-ldscript
-PATCH_SET="${PN}-10.34-patchset-01.tar.xz"
+PATCH_SET="${PN}-10.36-patchset-01.tar.xz"
DESCRIPTION="Perl-compatible regular expression library"
HOMEPAGE="https://www.pcre.org/"
@@ -13,7 +13,8 @@ MY_P="pcre2-${PV/_rc/-RC}"
if [[ ${PV} != *_rc* ]] ; then
# Only the final releases are available here.
SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2
- https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2"
+ https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
+ https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2"
else
SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
fi
@@ -24,14 +25,13 @@ if [[ -n "${PATCH_SET}" ]] ; then
fi
LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
+SLOT="0/3" # libpcre2-posix.so version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )"
BDEPEND="
virtual/pkgconfig
- userland_GNU? ( >=sys-apps/findutils-4.4.0 )
"
RDEPEND="
bzip2? ( app-arch/bzip2 )
@@ -48,7 +48,10 @@ MULTILIB_CHOST_TOOLS=(
)
src_prepare() {
- [[ -d "${WORKDIR}/patches" ]] && eapply "${WORKDIR}"/patches
+ if [[ -d "${WORKDIR}/patches" ]] ; then
+ rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die
+ eapply "${WORKDIR}"/patches
+ fi
default
diff --git a/dev-libs/libpcre2/libpcre2-10.39.ebuild b/dev-libs/libpcre2/libpcre2-10.39.ebuild
new file mode 100644
index 0000000000..477a50daf5
--- /dev/null
+++ b/dev-libs/libpcre2/libpcre2-10.39.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit libtool multilib-minimal usr-ldscript
+
+PATCH_SET="${PN}-10.36-patchset-01.tar.xz"
+
+DESCRIPTION="Perl-compatible regular expression library"
+HOMEPAGE="https://www.pcre.org/"
+MY_P="pcre2-${PV/_rc/-RC}"
+if [[ ${PV} != *_rc* ]] ; then
+ # Only the final releases are available here.
+ SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2
+ https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2
+ https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2"
+else
+ SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
+fi
+
+if [[ -n "${PATCH_SET}" ]] ; then
+ SRC_URI+=" https://dev.gentoo.org/~whissi/dist/${PN}/${PATCH_SET}
+ https://dev.gentoo.org/~polynomial-c/dist/${PATCH_SET}"
+fi
+
+LICENSE="BSD"
+SLOT="0/3" # libpcre2-posix.so version
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
+REQUIRED_USE="?? ( libedit readline )"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+RDEPEND="
+ bzip2? ( app-arch/bzip2 )
+ libedit? ( dev-libs/libedit )
+ readline? ( sys-libs/readline:0= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/pcre2-config
+)
+
+src_prepare() {
+ if [[ -d "${WORKDIR}/patches" ]] ; then
+ rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die
+ eapply "${WORKDIR}"/patches
+ fi
+
+ default
+
+ elibtoolize
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --enable-pcre2-8
+ --enable-shared
+ --with-match-limit-depth=$(usex recursion-limit 8192 MATCH_LIMIT)
+ $(multilib_native_use_enable bzip2 pcre2grep-libbz2)
+ $(multilib_native_use_enable libedit pcre2test-libedit)
+ $(multilib_native_use_enable readline pcre2test-libreadline)
+ $(multilib_native_use_enable zlib pcre2grep-libz)
+ $(use_enable jit)
+ $(use_enable jit pcre2grep-jit)
+ $(use_enable pcre16 pcre2-16)
+ $(use_enable pcre32 pcre2-32)
+ $(use_enable static-libs static)
+ $(use_enable unicode)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+ emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=")
+}
+
+multilib_src_install() {
+ emake \
+ DESTDIR="${D}" \
+ $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \
+ install
+ multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-libs/libpcre2/metadata.xml b/dev-libs/libpcre2/metadata.xml
index 1e5257985a..0d201299bd 100644
--- a/dev-libs/libpcre2/metadata.xml
+++ b/dev-libs/libpcre2/metadata.xml
@@ -1,5 +1,5 @@
-
+
base-system@gentoo.org
@@ -25,6 +25,9 @@
gzip-compressed files (via sys-libs/zlib).
+
+ Reflects binary compatibility for libpcre2-posix.so.
+
cpe:/a:pcre:pcre
pcre
diff --git a/dev-libs/libtasn1/Manifest b/dev-libs/libtasn1/Manifest
index 5712c8ec93..288626832f 100644
--- a/dev-libs/libtasn1/Manifest
+++ b/dev-libs/libtasn1/Manifest
@@ -1,3 +1,2 @@
-DIST libtasn1-4.13.tar.gz 1891703 BLAKE2B 5a8bfefe1a3701505c8a1a4920412a6dd15fe771fb848fbd00f0a332388795dc6108a0fa5a282b4212abe0b0642f205bda53c2c39a4a2d65fa71e082fc76a6d2 SHA512 bf5b60a296795e0a8a4a658c0106492393aa7ce698e785256b3427c17215c2a5b6178a61a2043c93ea4334f754eabece20221ac8fef0fd5644086a3891d98a9f
-DIST libtasn1-4.15.0.tar.gz 1800713 BLAKE2B 005a36bfdd89a167d469ef834c00d8b89e0fba42c0c973709be93c1d703b8042d5170df855085bac9945b6512dc3abef9405461988d634cb32ec0fe99f49367d SHA512 a8095aebf57a0b482027d06e0ee6978946f267b57bf2db3c891c4656ca35250cc1f72e2e90f4cc0ddbdf6cd2b1783881a62d495a57ad4a98684f8d037307552d
-DIST libtasn1-4.16.0.tar.gz 1812442 BLAKE2B 1a79494da959808d1b05099409cab70a08bf8be039f32c2e487ec8cee240d92aca9a3ec137721bac3bfe1ecd59334f4f31e0e0c25c6f06ee850af69842c0fefc SHA512 b356249535d5d592f9b59de39d21e26dd0f3f00ea47c9cef292cdd878042ea41ecbb7c8d2f02ac5839f5210092fe92a25acd343260ddf644887b031b167c2e71
+DIST libtasn1-4.17.0.tar.gz 1906654 BLAKE2B a76798bdb8e68f2ca2337fa2648ff42adb7a9a51f27efefee5b9856e56ac09672237bd9a5b2afe808298e462eda31f2e8d3601c35ac00b84935f307ad981b2b1 SHA512 9cbd920196d1e4c8f5aa613259cded2510d40edb583ce20cc2702e2dee9bf32bee85a159c74600ffbebc2af2787e28ed0fe0adf15fc46839283747f4fe166d3d
+DIST libtasn1-4.18.0.tar.gz 1724441 BLAKE2B b5f93a7575dde46741b6fc97183105efbc934e44041735241ba40ecd578c94637741df193dfab0d97e0348e2dde34b8b89a33ed616afa0bf64db6dbddebf1786 SHA512 4f2f4afc7561fda7a1f1c6c525c3c3b08228a1a4aa8c3d3d5e02e993d8f83ccee1dd0f1b201cec0fbfc97043d4b1d7a95ffd34d65422a38b85b931ac7a015831
diff --git a/dev-libs/libtasn1/files/libtasn1-4.15.0-noinst_fuzzer_tool.patch b/dev-libs/libtasn1/files/libtasn1-4.15.0-noinst_fuzzer_tool.patch
deleted file mode 100644
index 45360ec8f8..0000000000
--- a/dev-libs/libtasn1/files/libtasn1-4.15.0-noinst_fuzzer_tool.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 49d6e3f0a4b5fd4da31228d23ae9efabef20c1ca Mon Sep 17 00:00:00 2001
-From: Nikos Mavrogiannopoulos
-Date: Thu, 21 Nov 2019 16:09:20 +0100
-Subject: [PATCH] fuzz: do not install generated fuzzers and tools
-
-Signed-off-by: Nikos Mavrogiannopoulos
----
- fuzz/Makefile.am | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/fuzz/Makefile.am b/fuzz/Makefile.am
-index ae6616b..aa621ce 100644
---- a/fuzz/Makefile.am
-+++ b/fuzz/Makefile.am
-@@ -38,7 +38,7 @@ FUZZERS = \
-
- if FUZZING
- # fuzzing mode, enabled with ./configure --enable-fuzzing
-- bin_PROGRAMS = $(FUZZERS)
-+ noinst_PROGRAMS = $(FUZZERS)
- AM_LDFLAGS += -fsanitize=fuzzer
- MAIN = fuzzer.h
- else
-@@ -47,7 +47,7 @@ else
- TESTS = $(FUZZERS)
- check_PROGRAMS = $(FUZZERS)
-
-- bin_PROGRAMS = corpus2array
-+ noinst_PROGRAMS = corpus2array
- corpus2array_SOURCES = corpus2array.c
- endif
-
---
-2.22.2
-
diff --git a/dev-libs/libtasn1/libtasn1-4.13.ebuild b/dev-libs/libtasn1/libtasn1-4.13.ebuild
deleted file mode 100644
index 5c7aec4f7b..0000000000
--- a/dev-libs/libtasn1/libtasn1-4.13.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib-minimal libtool
-
-DESCRIPTION="ASN.1 library"
-HOMEPAGE="https://www.gnu.org/software/libtasn1/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3 LGPL-2.1"
-SLOT="0/6" # subslot = libtasn1 soname version
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc static-libs test valgrind"
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="sys-apps/help2man
- virtual/yacc
- test? ( valgrind? ( dev-util/valgrind ) )"
-
-DOCS=(
- AUTHORS
- ChangeLog
- NEWS
- README
- THANKS
-)
-
-pkg_setup() {
- if use doc; then
- DOCS+=( doc/libtasn1.pdf )
- HTML_DOCS=( doc/reference/html/. )
- fi
-}
-
-src_prepare() {
- default
- elibtoolize # for Solaris shared library
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" econf \
- $(use_enable static-libs static) \
- $(multilib_native_use_enable valgrind valgrind-tests)
-}
-
-multilib_src_install_all() {
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/dev-libs/libtasn1/libtasn1-4.16.0.ebuild b/dev-libs/libtasn1/libtasn1-4.17.0.ebuild
similarity index 84%
rename from dev-libs/libtasn1/libtasn1-4.16.0.ebuild
rename to dev-libs/libtasn1/libtasn1-4.17.0.ebuild
index b77d19fe1f..208c031ba4 100644
--- a/dev-libs/libtasn1/libtasn1-4.16.0.ebuild
+++ b/dev-libs/libtasn1/libtasn1-4.17.0.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
@@ -11,7 +11,7 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
LICENSE="GPL-3 LGPL-2.1"
SLOT="0/6" # subslot = libtasn1 soname version
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc static-libs test valgrind"
RESTRICT="!test? ( test )"
diff --git a/dev-libs/libtasn1/libtasn1-4.15.0-r1.ebuild b/dev-libs/libtasn1/libtasn1-4.18.0.ebuild
similarity index 60%
rename from dev-libs/libtasn1/libtasn1-4.15.0-r1.ebuild
rename to dev-libs/libtasn1/libtasn1-4.18.0.ebuild
index ea29654ea9..60774a24ab 100644
--- a/dev-libs/libtasn1/libtasn1-4.15.0-r1.ebuild
+++ b/dev-libs/libtasn1/libtasn1-4.18.0.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 autotools multilib-minimal libtool
+inherit multilib-minimal libtool
DESCRIPTION="ASN.1 library"
HOMEPAGE="https://www.gnu.org/software/libtasn1/"
@@ -11,8 +11,8 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
LICENSE="GPL-3 LGPL-2.1"
SLOT="0/6" # subslot = libtasn1 soname version
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc static-libs test valgrind"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="static-libs test valgrind"
RESTRICT="!test? ( test )"
@@ -28,27 +28,17 @@ DOCS=(
THANKS
)
-PATCHES=(
- "${FILESDIR}"/${P}-noinst_fuzzer_tool.patch #701928
-)
-
-pkg_setup() {
- if use doc; then
- DOCS+=( doc/libtasn1.pdf )
- HTML_DOCS=( doc/reference/html/. )
- fi
-}
-
src_prepare() {
default
- #elibtoolize # for Solaris shared library
- eautoreconf #701928
+ elibtoolize # for Solaris shared library
}
multilib_src_configure() {
- ECONF_SOURCE="${S}" econf \
- $(use_enable static-libs static) \
+ local myeconfargs=(
+ $(use_enable static-libs static)
$(multilib_native_use_enable valgrind valgrind-tests)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_install_all() {
diff --git a/dev-libs/libtasn1/metadata.xml b/dev-libs/libtasn1/metadata.xml
index 727bab4231..9630ac49ef 100644
--- a/dev-libs/libtasn1/metadata.xml
+++ b/dev-libs/libtasn1/metadata.xml
@@ -1,5 +1,5 @@
-
+
Gentoo Base System
diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest
index 131b1010ee..658056250b 100644
--- a/dev-libs/nspr/Manifest
+++ b/dev-libs/nspr/Manifest
@@ -1 +1 @@
-DIST nspr-4.25.tar.gz 1079633 BLAKE2B 377e5ec0e60cca13f1ee988adb10870bbb6cb9e4eb61e4434152418d4f8d446741a192d7019298ec2669b8e190cacb6a1ca9c4b2838e9b14dd3590ed40facdd2 SHA512 b9aa576e0da37e8729088fe559d94030cf18f277c1f7a30104d3088a804913343ed884645c0adb62144da475e20934b359f897bf3ae9a6ebb5f9daf283d5a562
+DIST nspr-4.33.tar.gz 1078948 BLAKE2B b46e1c02ab7e5c442288a2cba2868166adb9461950d35fcd76074e3340734057f2b1bbeb3c700f38edf3710323ffd34576dd644814c379033de2a380c54d4fe3 SHA512 8064f826c977f1302a341ca7a7aaf7977b5d10102062c030b1d42b856638e3408ab262447e8c7cfd5a98879b9b1043d17ceae66fbb1e5ed86d6bc3531f26667e
diff --git a/dev-libs/nspr/metadata.xml b/dev-libs/nspr/metadata.xml
index cf9988e49a..83cf207dd4 100644
--- a/dev-libs/nspr/metadata.xml
+++ b/dev-libs/nspr/metadata.xml
@@ -1,5 +1,5 @@
-
+
mozilla@gentoo.org
diff --git a/dev-libs/nspr/nspr-4.25.ebuild b/dev-libs/nspr/nspr-4.33.ebuild
similarity index 93%
rename from dev-libs/nspr/nspr-4.25.ebuild
rename to dev-libs/nspr/nspr-4.33.ebuild
index 22a70f0cfd..7be0ae41e4 100644
--- a/dev-libs/nspr/nspr-4.25.ebuild
+++ b/dev-libs/nspr/nspr-4.33.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -8,13 +8,13 @@ inherit autotools toolchain-funcs multilib-minimal
MIN_PV="$(ver_cut 2)"
DESCRIPTION="Netscape Portable Runtime"
-HOMEPAGE="http://www.mozilla.org/projects/nspr/"
+HOMEPAGE="https://www.mozilla.org/projects/nspr/"
SRC_URI="https://archive.mozilla.org/pub/nspr/releases/v${PV}/src/${P}.tar.gz"
LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug elibc_musl"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris ~x86-solaris"
+IUSE="debug"
MULTILIB_CHOST_TOOLS=(
/usr/bin/nspr-config
@@ -60,7 +60,7 @@ multilib_src_configure() {
# We use the standard BUILD_xxx but nspr uses HOST_xxx
tc-export_build_env BUILD_CC
export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS}
- tc-export AR CC CXX RANLIB
+ tc-export AR AS CC CXX RANLIB
[[ ${CBUILD} != ${CHOST} ]] \
&& export CROSS_COMPILE=1 \
|| unset CROSS_COMPILE
@@ -98,6 +98,7 @@ multilib_src_configure() {
# Ancient autoconf needs help finding the right tools.
LC_ALL="C" ECONF_SOURCE="${S}/nspr" \
ac_cv_path_AR="${AR}" \
+ ac_cv_path_AS="${AS}" \
econf "${myconf[@]}"
}
diff --git a/dev-libs/oniguruma/Manifest b/dev-libs/oniguruma/Manifest
index 78f1b0aef4..d08915a62e 100644
--- a/dev-libs/oniguruma/Manifest
+++ b/dev-libs/oniguruma/Manifest
@@ -1 +1 @@
-DIST onig-6.9.4.tar.gz 908702 BLAKE2B e6e9939f284569408ba01b8551960bc939bbfdca425f8470499f5bb83ead7b6b09898f6f6a09d5d8c26d74d5416f6e5e9e2f00fbe7aa9eb820edb8aa4a3050cc SHA512 ed8f42f6893966c0ee3c168b4fdbcb04b2286ad69ecab43a754c1dbc8fc4656e01319991d776d7144b6a3f90d050781b321432278d83c74c9565c2743851c85b
+DIST onig-6.9.7.1.tar.gz 935705 BLAKE2B 1042d5b211f53ad8983eb6b4e53beb165bc948bbef9a85ad12578a9237a804e3dcd0a8105914156230ec30e11f2c8a0372c37919cdde7b2be104c66a8b22fb52 SHA512 17711e0d451c41e74cb3f8ab4e78b0181578ef42cb35dc64e87871c82a41909334cb4eeb03eccdccf6904f699e6e82b0dbb54077138225b9b95471fcdeb8c486
diff --git a/dev-libs/oniguruma/metadata.xml b/dev-libs/oniguruma/metadata.xml
index 2dc293268b..9525dd0504 100644
--- a/dev-libs/oniguruma/metadata.xml
+++ b/dev-libs/oniguruma/metadata.xml
@@ -1,25 +1,27 @@
-
+
-
- cjk@gentoo.org
- Cjk
-
-
- Oniguruma is a regular expression library. The characteristics of
- this library is that different character encoding for every regular
- expression object can be specified. (Supported character encodings:
- ASCII, UTF-8, EUC-JP, Shift_JIS)
-
-
- Reflect ABI of libonig.so.
-
-
-
- kkos/oniguruma
-
+
+ arfrever.fta@gmail.com
+ Arfrever Frehtes Taifersar Arahesis
+
+
+ cjk@gentoo.org
+ Cjk
+
+
+ Oniguruma is a regular expression library. The characteristics of
+ this library is that different character encoding for every regular
+ expression object can be specified. (Supported character encodings:
+ ASCII, UTF-8, EUC-JP, Shift_JIS)
+
+
+ libonig.so soname version number
+
+
+
+ kkos/oniguruma
+
diff --git a/dev-libs/oniguruma/oniguruma-6.9.4.ebuild b/dev-libs/oniguruma/oniguruma-6.9.7.1.ebuild
similarity index 65%
rename from dev-libs/oniguruma/oniguruma-6.9.4.ebuild
rename to dev-libs/oniguruma/oniguruma-6.9.7.1.ebuild
index e3be7fef9a..f8569eb11d 100644
--- a/dev-libs/oniguruma/oniguruma-6.9.4.ebuild
+++ b/dev-libs/oniguruma/oniguruma-6.9.7.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2003-2020 Gentoo Authors
+# Copyright 2003-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -21,20 +21,20 @@ fi
LICENSE="BSD-2"
SLOT="0/5"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
IUSE="crnl-as-line-terminator static-libs"
+BDEPEND=""
+DEPEND=""
+RDEPEND=""
+
if [[ "${PV}" != "9999" ]]; then
- S="${WORKDIR}/onig-${PV}"
+ S="${WORKDIR}/onig-$(ver_cut 1-3)"
fi
DOCS=(AUTHORS HISTORY README{,_japanese} doc/{API,CALLOUTS.API,CALLOUTS.BUILTIN,FAQ,RE}{,.ja} doc/{SYNTAX.md,UNICODE_PROPERTIES})
src_prepare() {
- # https://github.com/kkos/oniguruma/issues/167
- # https://github.com/kkos/oniguruma/commit/603f4db48efb49307b7515500496e9e7a92fb779
- sed -e "/^#define MATCH_AT_ERROR_RETURN(err_code)/s/best_len = err_code; goto match_at_end/do {&;} while(0)/" -i src/regexec.c || die
-
default
if [[ "${PV}" == "9999" ]]; then
@@ -44,11 +44,12 @@ src_prepare() {
multilib_src_configure() {
ECONF_SOURCE="${S}" econf \
+ --enable-posix-api \
$(use_enable crnl-as-line-terminator) \
$(use_enable static-libs static)
}
multilib_src_install_all() {
einstalldocs
- find "${D}" -name "*.la" -type f -delete || die
+ find "${ED}" -name "*.la" -delete || die
}
diff --git a/dev-libs/oniguruma/oniguruma-9999.ebuild b/dev-libs/oniguruma/oniguruma-9999.ebuild
index 8efae93944..405b066a53 100644
--- a/dev-libs/oniguruma/oniguruma-9999.ebuild
+++ b/dev-libs/oniguruma/oniguruma-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2003-2019 Gentoo Authors
+# Copyright 2003-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -24,6 +24,10 @@ SLOT="0/5"
KEYWORDS=""
IUSE="crnl-as-line-terminator static-libs"
+BDEPEND=""
+DEPEND=""
+RDEPEND=""
+
if [[ "${PV}" != "9999" ]]; then
S="${WORKDIR}/onig-${PV}"
fi
@@ -40,11 +44,12 @@ src_prepare() {
multilib_src_configure() {
ECONF_SOURCE="${S}" econf \
+ --enable-posix-api \
$(use_enable crnl-as-line-terminator) \
$(use_enable static-libs static)
}
multilib_src_install_all() {
einstalldocs
- find "${D}" -name "*.la" -type f -delete || die
+ find "${ED}" -name "*.la" -delete || die
}
diff --git a/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0.ebuild b/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0-r1.ebuild
similarity index 56%
rename from dev-perl/Parse-Yapp/Parse-Yapp-1.210.0.ebuild
rename to dev-perl/Parse-Yapp/Parse-Yapp-1.210.0-r1.ebuild
index 5b8469c9a5..d046e7f7a6 100644
--- a/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0.ebuild
+++ b/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=WBRASWELL
DIST_VERSION=1.21
@@ -11,11 +11,14 @@ inherit perl-module
DESCRIPTION="Compiles yacc-like LALR grammars to generate Perl OO parser modules"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-RDEPEND="!
-
+
perl@gentoo.org
diff --git a/dev-util/re2c/Manifest b/dev-util/re2c/Manifest
index 59708a0ee9..705c45b9de 100644
--- a/dev-util/re2c/Manifest
+++ b/dev-util/re2c/Manifest
@@ -1 +1,2 @@
-DIST re2c-2.0.3.tar.xz 1288996 BLAKE2B 76913a79ad9c237843ccbe86dd05db755da19fc89351b64d6ece6a9a8d53860f1cc12493748fca5b7391cddff4f4668295fb2613c257c128870ea2e7163811ed SHA512 893c533e9847a6236d55ae65e413ddc48b7531b89f5552a3ad79beeac079317ceca4c35710f3c2d88a6de5a3c0a5070a24a8cffb1b4277578a41697ea0e3bf8c
+DIST re2c-2.1.1.tar.xz 1340740 BLAKE2B e0e3cdb7ea78324467a8fe3161fe9b0cc1eb44baf9a554b892e1f7f8b8d089e8dca58da347527c595881e1119344858694c133ba0f1676424914f6518adbf4f4 SHA512 13edbe961e0482677aff52ada93129500c10e134b579365f1d0cd180a898251f3060f1fe0597fc6c900c0ea29b1eb28fc2519b0ebfa2ed496a777bf7e138feae
+DIST re2c-2.2.tar.xz 1460740 BLAKE2B f9e5920cb31c7ae8fa9f880be30513eee33ad23bcc7d44b24bbcb93376e13b092f6d0bee3304e49f87430be54b868c43115592a2accfdd94cda0d789b234f43b SHA512 8c4f18fa9a2ef6b0b5c03b73b8b7deafcbd7b17baf72e0008c9344296fcb0abeee6024d4a78ccb15b090e37ae67ddd6f2a68b4932331096328530612112ee37a
diff --git a/dev-util/re2c/files/re2c-2.1.1-sh.patch b/dev-util/re2c/files/re2c-2.1.1-sh.patch
new file mode 100644
index 0000000000..7caa5d7d1a
--- /dev/null
+++ b/dev-util/re2c/files/re2c-2.1.1-sh.patch
@@ -0,0 +1,48 @@
+Matt noticed errors when running ./configure on dash:
+ ./configure: 5339: test: x: unexpected operator
+ ./configure: 5386: test: x: unexpected operator
+
+The change is to use POSIX '=' comparison instead of bash-specific ==.
+
+Patch-by: Matt Whitlock
+https://bugs.gentoo.org/779187
+--- a/configure.ac 2021-03-27 18:25:24.000000000 +0000
++++ b/configure.ac 2021-03-30 01:34:01.993467424 +0000
+@@ -65,7 +65,7 @@
+ # --enable-benchmarks
+ AC_ARG_ENABLE([benchmarks], [AS_HELP_STRING([--enable-benchmarks],
+ [build benchmarks])])
+-AM_CONDITIONAL([WITH_BENCHMARKS], [test "x$enable_benchmarks" == "xyes"])
++AM_CONDITIONAL([WITH_BENCHMARKS], [test "x$enable_benchmarks" = "xyes"])
+ AM_COND_IF([WITH_BENCHMARKS], [
+ AC_LANG_PUSH([C++])
+ AC_CHECK_HEADERS([benchmark/benchmark.h], [],
+@@ -79,7 +79,7 @@
+ [AS_HELP_STRING([--enable-benchmarks-regenerate],
+ [regenerate C code for benchmarks])])
+ AM_CONDITIONAL([REGEN_BENCHMARKS],
+- [test "x$enable_benchmarks_regenerate" == "xyes"])
++ [test "x$enable_benchmarks_regenerate" = "xyes"])
+
+
+ # checks for programs
+--- a/configure
++++ b/configure
+@@ -5336,7 +5336,7 @@ if test "${enable_benchmarks+set}" = set; then :
+ enableval=$enable_benchmarks;
+ fi
+
+- if test "x$enable_benchmarks" == "xyes"; then
++ if test "x$enable_benchmarks" = "xyes"; then
+ WITH_BENCHMARKS_TRUE=
+ WITH_BENCHMARKS_FALSE='#'
+ else
+@@ -5383,7 +5383,7 @@ if test "${enable_benchmarks_regenerate+set}" = set; then :
+ enableval=$enable_benchmarks_regenerate;
+ fi
+
+- if test "x$enable_benchmarks_regenerate" == "xyes"; then
++ if test "x$enable_benchmarks_regenerate" = "xyes"; then
+ REGEN_BENCHMARKS_TRUE=
+ REGEN_BENCHMARKS_FALSE='#'
+ else
diff --git a/dev-util/re2c/metadata.xml b/dev-util/re2c/metadata.xml
index 0093ef8412..24c01d112f 100644
--- a/dev-util/re2c/metadata.xml
+++ b/dev-util/re2c/metadata.xml
@@ -1,12 +1,9 @@
-
+
robbat2@gentoo.org
-
- slyfox@gentoo.org
-
re2c
skvadrik/re2c
diff --git a/dev-util/re2c/re2c-2.0.3.ebuild b/dev-util/re2c/re2c-2.1.1-r1.ebuild
similarity index 56%
rename from dev-util/re2c/re2c-2.0.3.ebuild
rename to dev-util/re2c/re2c-2.1.1-r1.ebuild
index aba4c616a4..854354f082 100644
--- a/dev-util/re2c/re2c-2.0.3.ebuild
+++ b/dev-util/re2c/re2c-2.1.1-r1.ebuild
@@ -1,17 +1,31 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+inherit autotools
+
DESCRIPTION="tool for generating C-based recognizers from regular expressions"
HOMEPAGE="http://re2c.org/"
SRC_URI="https://github.com/skvadrik/re2c/releases/download/${PV}/${P}.tar.xz"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug"
+PATCHES=("${FILESDIR}"/${P}-sh.patch)
+
+src_prepare() {
+ default
+
+ # Only needed for the sh patch
+ # Despite the patch modifying the configure directly,
+ # this is sometimes fragile and triggers maintainer mode anyway.
+ # bug #779187
+ eautoreconf
+}
+
src_configure() {
econf \
--enable-golang \
diff --git a/dev-util/re2c/re2c-2.2.ebuild b/dev-util/re2c/re2c-2.2.ebuild
new file mode 100644
index 0000000000..2c4d64c193
--- /dev/null
+++ b/dev-util/re2c/re2c-2.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit autotools python-any-r1
+
+DESCRIPTION="tool for generating C-based recognizers from regular expressions"
+HOMEPAGE="http://re2c.org/"
+SRC_URI="https://github.com/skvadrik/re2c/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="debug test"
+
+RESTRICT="!test? ( test )"
+
+# python is used only as a test driver
+BDEPEND="test? ( ${PYTHON_DEPS} )"
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ econf \
+ --enable-golang \
+ ac_cv_path_BISON="no" \
+ $(use_enable debug)
+}
+
+src_install() {
+ default
+
+ docompress -x /usr/share/doc/${PF}/examples
+ dodoc -r README.md CHANGELOG examples
+}
diff --git a/eclass/autotools-utils.eclass b/eclass/autotools-utils.eclass
deleted file mode 100644
index 0addf76a92..0000000000
--- a/eclass/autotools-utils.eclass
+++ /dev/null
@@ -1,384 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: autotools-utils.eclass
-# @MAINTAINER:
-# Maciej Mrozowski
-# Michał Górny
-# @SUPPORTED_EAPIS: 2 3 4 5
-# @BLURB: common ebuild functions for autotools-based packages
-# @DESCRIPTION:
-# autotools-utils.eclass is autotools.eclass(5) and base.eclass(5) wrapper
-# providing all inherited features along with econf arguments as Bash array,
-# out of source build with overridable build dir location, static archives
-# handling, libtool files removal.
-#
-# Please note that autotools-utils does not support mixing of its phase
-# functions with regular econf/emake calls. If necessary, please call
-# autotools-utils_src_compile instead of the latter.
-#
-# @EXAMPLE:
-# Typical ebuild using autotools-utils.eclass:
-#
-# @CODE
-# EAPI="2"
-#
-# inherit autotools-utils
-#
-# DESCRIPTION="Foo bar application"
-# HOMEPAGE="http://example.org/foo/"
-# SRC_URI="mirror://sourceforge/foo/${P}.tar.bz2"
-#
-# LICENSE="LGPL-2.1"
-# KEYWORDS=""
-# SLOT="0"
-# IUSE="debug doc examples qt4 static-libs tiff"
-#
-# CDEPEND="
-# media-libs/libpng:0
-# qt4? (
-# dev-qt/qtcore:4
-# dev-qt/qtgui:4
-# )
-# tiff? ( media-libs/tiff:0 )
-# "
-# RDEPEND="${CDEPEND}
-# !media-gfx/bar
-# "
-# DEPEND="${CDEPEND}
-# doc? ( app-doc/doxygen )
-# "
-#
-# # bug 123456
-# AUTOTOOLS_IN_SOURCE_BUILD=1
-#
-# DOCS=(AUTHORS ChangeLog README "Read me.txt" TODO)
-#
-# PATCHES=(
-# "${FILESDIR}/${P}-gcc44.patch" # bug 123458
-# "${FILESDIR}/${P}-as-needed.patch"
-# "${FILESDIR}/${P}-unbundle_libpng.patch"
-# )
-#
-# src_configure() {
-# local myeconfargs=(
-# $(use_enable debug)
-# $(use_with qt4)
-# $(use_enable threads multithreading)
-# $(use_with tiff)
-# )
-# autotools-utils_src_configure
-# }
-#
-# src_compile() {
-# autotools-utils_src_compile
-# use doc && autotools-utils_src_compile docs
-# }
-#
-# src_install() {
-# use doc && HTML_DOCS=("${BUILD_DIR}/apidocs/html/")
-# autotools-utils_src_install
-# if use examples; then
-# dobin "${BUILD_DIR}"/foo_example{1,2,3} \\
-# || die 'dobin examples failed'
-# fi
-# }
-#
-# @CODE
-
-# Keep variable names synced with cmake-utils and the other way around!
-
-case ${EAPI:-0} in
- 6) die "${ECLASS}.eclass is banned in EAPI ${EAPI}";;
- 4|5) ;;
- *) die "EAPI=${EAPI} is not supported" ;;
-esac
-
-# @ECLASS-VARIABLE: AUTOTOOLS_AUTORECONF
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Set to a non-empty value before calling inherit to enable running autoreconf
-# in src_prepare() and adding autotools dependencies.
-#
-# This is usually necessary when using live sources or applying patches
-# modifying configure.ac or Makefile.am files. Note that in the latter case
-# setting this variable is obligatory even though the eclass will work without
-# it (to add the necessary dependencies).
-#
-# The eclass will try to determine the correct autotools to run including a few
-# external tools: gettext, glib-gettext, intltool, gtk-doc, gnome-doc-prepare.
-# If your tool is not supported, please open a bug and we'll add support for it.
-#
-# Note that dependencies are added for autoconf, automake and libtool only.
-# If your package needs one of the external tools listed above, you need to add
-# appropriate packages to DEPEND yourself.
-[[ ${AUTOTOOLS_AUTORECONF} ]] || : ${AUTOTOOLS_AUTO_DEPEND:=no}
-
-# eutils for eqawarn, path_exists
-inherit autotools epatch eutils libtool ltprune
-
-EXPORT_FUNCTIONS src_prepare src_configure src_compile src_install src_test
-
-# @ECLASS-VARIABLE: BUILD_DIR
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Build directory, location where all autotools generated files should be
-# placed. For out of source builds it defaults to ${WORKDIR}/${P}_build.
-#
-# This variable has been called AUTOTOOLS_BUILD_DIR formerly.
-# It is set under that name for compatibility.
-
-# @ECLASS-VARIABLE: AUTOTOOLS_IN_SOURCE_BUILD
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Set to enable in-source build.
-
-# @ECLASS-VARIABLE: ECONF_SOURCE
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Specify location of autotools' configure script. By default it uses ${S}.
-
-# @ECLASS-VARIABLE: DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Array containing documents passed to dodoc command.
-#
-# In EAPIs 4+, can list directories as well.
-#
-# Example:
-# @CODE
-# DOCS=( NEWS README )
-# @CODE
-
-# @ECLASS-VARIABLE: HTML_DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Array containing documents passed to dohtml command.
-#
-# Example:
-# @CODE
-# HTML_DOCS=( doc/html/ )
-# @CODE
-
-# @ECLASS-VARIABLE: PATCHES
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# PATCHES array variable containing all various patches to be applied.
-#
-# Example:
-# @CODE
-# PATCHES=( "${FILESDIR}"/${P}-mypatch.patch )
-# @CODE
-
-# @ECLASS-VARIABLE: AUTOTOOLS_PRUNE_LIBTOOL_FILES
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Sets the mode of pruning libtool files. The values correspond to
-# prune_libtool_files parameters, with leading dashes stripped.
-#
-# Defaults to pruning the libtool files when static libraries are not
-# installed or can be linked properly without them. Libtool files
-# for modules (plugins) will be kept in case plugin loader needs them.
-#
-# If set to 'modules', the .la files for modules will be removed
-# as well. This is often the preferred option.
-#
-# If set to 'all', all .la files will be removed unconditionally. This
-# option is discouraged and shall be used only if 'modules' does not
-# remove the files.
-#
-# If set to 'none', no .la files will be pruned ever. Use in corner
-# cases only.
-
-# Determine using IN or OUT source build
-_check_build_dir() {
- : ${ECONF_SOURCE:=${S}}
- # Respect both the old variable and the new one, depending
- # on which one was set by the ebuild.
- if [[ ! ${BUILD_DIR} && ${AUTOTOOLS_BUILD_DIR} ]]; then
- eqawarn "The AUTOTOOLS_BUILD_DIR variable has been renamed to BUILD_DIR."
- eqawarn "Please migrate the ebuild to use the new one."
-
- # In the next call, both variables will be set already
- # and we'd have to know which one takes precedence.
- _RESPECT_AUTOTOOLS_BUILD_DIR=1
- fi
-
- if [[ ${_RESPECT_AUTOTOOLS_BUILD_DIR} ]]; then
- BUILD_DIR=${AUTOTOOLS_BUILD_DIR:-${WORKDIR}/${P}_build}
- else
- if [[ -n ${AUTOTOOLS_IN_SOURCE_BUILD} ]]; then
- : ${BUILD_DIR:=${ECONF_SOURCE}}
- else
- : ${BUILD_DIR:=${WORKDIR}/${P}_build}
- fi
- fi
-
- # Backwards compatibility for getting the value.
- AUTOTOOLS_BUILD_DIR=${BUILD_DIR}
- echo ">>> Working in BUILD_DIR: \"${BUILD_DIR}\""
-}
-
-# @FUNCTION: autotools-utils_src_prepare
-# @DESCRIPTION:
-# The src_prepare function.
-#
-# Supporting PATCHES array and user patches. See base.eclass(5) for reference.
-autotools-utils_src_prepare() {
- debug-print-function ${FUNCNAME} "$@"
-
- local want_autoreconf=${AUTOTOOLS_AUTORECONF}
-
- [[ ${PATCHES} ]] && epatch "${PATCHES[@]}"
-
- at_checksum() {
- find '(' -name 'Makefile.am' \
- -o -name 'configure.ac' \
- -o -name 'configure.in' ')' \
- -exec cksum {} + | sort -k2
- }
-
- [[ ! ${want_autoreconf} ]] && local checksum=$(at_checksum)
- epatch_user
- if [[ ! ${want_autoreconf} ]]; then
- if [[ ${checksum} != $(at_checksum) ]]; then
- einfo 'Will autoreconfigure due to user patches applied.'
- want_autoreconf=yep
- fi
- fi
-
- [[ ${want_autoreconf} ]] && eautoreconf
- elibtoolize --patch-only
-}
-
-# @FUNCTION: autotools-utils_src_configure
-# @DESCRIPTION:
-# The src_configure function. For out of source build it creates build
-# directory and runs econf there. Configuration parameters defined
-# in myeconfargs are passed here to econf. Additionally following USE
-# flags are known:
-#
-# IUSE="static-libs" passes --enable-shared and either --disable-static/--enable-static
-# to econf respectively.
-
-# @VARIABLE: myeconfargs
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Optional econf arguments as Bash array. Should be defined before calling src_configure.
-# @CODE
-# src_configure() {
-# local myeconfargs=(
-# --disable-readline
-# --with-confdir="/etc/nasty foo confdir/"
-# $(use_enable debug cnddebug)
-# $(use_enable threads multithreading)
-# )
-# autotools-utils_src_configure
-# }
-# @CODE
-autotools-utils_src_configure() {
- debug-print-function ${FUNCNAME} "$@"
-
- [[ -z ${myeconfargs+1} || $(declare -p myeconfargs) == 'declare -a'* ]] \
- || die 'autotools-utils.eclass: myeconfargs has to be an array.'
-
- # Common args
- local econfargs=()
-
- _check_build_dir
- if "${ECONF_SOURCE}"/configure --help 2>&1 | grep -q '^ *--docdir='; then
- econfargs+=(
- --docdir="${EPREFIX}"/usr/share/doc/${PF}
- )
- fi
-
- # Handle static-libs found in IUSE, disable them by default
- if in_iuse static-libs; then
- econfargs+=(
- --enable-shared
- $(use_enable static-libs static)
- )
- fi
-
- # Append user args
- econfargs+=("${myeconfargs[@]}")
-
- mkdir -p "${BUILD_DIR}" || die
- pushd "${BUILD_DIR}" > /dev/null || die
- econf "${econfargs[@]}" "$@"
- popd > /dev/null || die
-}
-
-# @FUNCTION: autotools-utils_src_compile
-# @DESCRIPTION:
-# The autotools src_compile function, invokes emake in specified BUILD_DIR.
-autotools-utils_src_compile() {
- debug-print-function ${FUNCNAME} "$@"
-
- _check_build_dir
- pushd "${BUILD_DIR}" > /dev/null || die
- emake "$@" || die 'emake failed'
- popd > /dev/null || die
-}
-
-# @FUNCTION: autotools-utils_src_install
-# @DESCRIPTION:
-# The autotools src_install function. Runs emake install, unconditionally
-# removes unnecessary static libs (based on shouldnotlink libtool property)
-# and removes unnecessary libtool files when static-libs USE flag is defined
-# and unset.
-#
-# DOCS and HTML_DOCS arrays are supported. See base.eclass(5) for reference.
-autotools-utils_src_install() {
- debug-print-function ${FUNCNAME} "$@"
-
- _check_build_dir
- pushd "${BUILD_DIR}" > /dev/null || die
- emake DESTDIR="${D}" "$@" install || die "emake install failed"
- popd > /dev/null || die
-
- # XXX: support installing them from builddir as well?
- if declare -p DOCS &>/dev/null; then
- # an empty list == don't install anything
- if [[ ${DOCS[@]} ]]; then
- # dies by itself
- dodoc -r "${DOCS[@]}"
- fi
- else
- local f
- # same list as in PMS
- for f in README* ChangeLog AUTHORS NEWS TODO CHANGES \
- THANKS BUGS FAQ CREDITS CHANGELOG; do
- if [[ -s ${f} ]]; then
- dodoc "${f}" || die "(default) dodoc ${f} failed"
- fi
- done
- fi
- if [[ ${HTML_DOCS} ]]; then
- dohtml -r "${HTML_DOCS[@]}" || die "dohtml failed"
- fi
-
- # Remove libtool files and unnecessary static libs
- local prune_ltfiles=${AUTOTOOLS_PRUNE_LIBTOOL_FILES}
- if [[ ${prune_ltfiles} != none ]]; then
- prune_libtool_files ${prune_ltfiles:+--${prune_ltfiles}}
- fi
-}
-
-# @FUNCTION: autotools-utils_src_test
-# @DESCRIPTION:
-# The autotools src_test function. Runs emake check in build directory.
-autotools-utils_src_test() {
- debug-print-function ${FUNCNAME} "$@"
-
- _check_build_dir
- pushd "${BUILD_DIR}" > /dev/null || die
-
- if make -ni check "${@}" &>/dev/null; then
- emake check "${@}" || die 'emake check failed.'
- elif make -ni test "${@}" &>/dev/null; then
- emake test "${@}" || die 'emake test failed.'
- fi
-
- popd > /dev/null || die
-}
diff --git a/eclass/epunt-cxx.eclass b/eclass/epunt-cxx.eclass
deleted file mode 100644
index 30802af340..0000000000
--- a/eclass/epunt-cxx.eclass
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: epunt-cxx.eclass
-# @MAINTAINER:
-# base-system@gentoo.org
-# @BLURB: A function to punt C++ compiler checks from autoconf
-# @DESCRIPTION:
-# Support for punting C++ compiler checks from autoconf (based
-# on ELT-patches).
-
-if [[ -z ${_EPUNT_CXX_ECLASS} ]]; then
-
-# eutils for eqawarn
-inherit eutils
-
-DEPEND=">=app-portage/elt-patches-20170317"
-
-# @FUNCTION: epunt_cxx
-# @USAGE: [dir to scan]
-# @DESCRIPTION:
-# Many configure scripts wrongly bail when a C++ compiler could not be
-# detected. If dir is not specified, then it defaults to ${S}.
-#
-# https://bugs.gentoo.org/73450
-epunt_cxx() {
- local dir=$1
- [[ -z ${dir} ]] && dir=${S}
- ebegin "Removing useless C++ checks"
- local f p any_found
- while IFS= read -r -d '' f; do
- for p in "${EPREFIX}/usr/share/elt-patches"/nocxx/*.patch ; do
- if patch --no-backup-if-mismatch -p1 "${f}" "${p}" >/dev/null ; then
- any_found=1
- break
- fi
- done
- done < <(find "${dir}" -name configure -print0)
-
- if [[ -z ${any_found} ]]; then
- eqawarn "epunt_cxx called unnecessarily (no C++ checks to punt)."
- fi
- eend 0
-}
-
-_EPUNT_CXX_ECLASS=1
-fi #_EPUNT_CXX_ECLASS
diff --git a/eclass/go-module.eclass b/eclass/go-module.eclass
index 053861a1a1..817f8a9fd3 100644
--- a/eclass/go-module.eclass
+++ b/eclass/go-module.eclass
@@ -1,4 +1,4 @@
-# Copyright 2019-2020 Gentoo Authors
+# Copyright 2019-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: go-module.eclass
@@ -12,20 +12,38 @@
# @DESCRIPTION:
# This eclass provides basic settings and functions needed by all software
# written in the go programming language that uses modules.
+# If the software you are packaging has a file named go.mod in its top level
+# directory, it uses modules.
+#
+# Modules have been the preferred method of tracking dependencies in software
+# written in Go since version 1.16,
+# so if the software isn't using modules, it should be updated.
#
-# If the software you are packaging has a file named go.mod in its top
-# level directory, it uses modules and your ebuild should inherit this
-# eclass. If it does not, your ebuild should use the golang-* eclasses.
+# Also, if the top level go.mod file contains a go directive that
+# specifies a version of go prior to 1.14, this should be reported
+# upstream and updated.
#
-# If, besides go.mod, your software has a directory named vendor in its
+# If the software has a directory named vendor in its
# top level directory, the only thing you need to do is inherit the
-# eclass. If there is no vendor directory, you need to also populate
-# EGO_SUM and call go-module_set_globals as discussed below.
+# eclass. If it doesn't, you need to also create a dependency tarball and
+# host it somewhere, for example in your dev space.
+#
+# Here is an example of how to create a dependency tarball.
+# The base directory in the GOMODCACHE setting must be go-mod in order
+# to match the settings in this eclass.
+#
+# @CODE
+#
+# $ cd /path/to/project
+# $ GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
+# $ tar -acf project-1.0-deps.tar.xz go-mod
+#
+# @CODE
#
# Since Go programs are statically linked, it is important that your ebuild's
# LICENSE= setting includes the licenses of all statically linked
# dependencies. So please make sure it is accurate.
-# You can use a utility like dev-util/golicense (network connectivity is
+# You can use a utility like dev-go/golicense (network connectivity is
# required) to extract this information from the compiled binary.
#
# @EXAMPLE:
@@ -34,15 +52,9 @@
#
# inherit go-module
#
-# EGO_SUM=(
-# "github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59/go.mod"
-# "github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59"
-# )
-#
-# go-module_set_globals
-#
-# SRC_URI="https://github.com/example/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
-# ${EGO_SUM_SRC_URI}"
+# SRC_URI="https://github.com/example/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+# Add this line if you have a dependency tarball.
+# SRC_URI+=" ${P}-deps.tar.xz"
#
# @CODE
@@ -55,13 +67,17 @@ if [[ -z ${_GO_MODULE} ]]; then
_GO_MODULE=1
-BDEPEND=">=dev-lang/go-1.12"
+if [[ ! ${GO_OPTIONAL} ]]; then
+ BDEPEND=">=dev-lang/go-1.16"
+
+ # Workaround for pkgcheck false positive: https://github.com/pkgcore/pkgcheck/issues/214
+ # MissingUnpackerDep: version ...: missing BDEPEND="app-arch/unzip"
+ # Added here rather than to each affected package, so it can be cleaned up just
+ # once when pkgcheck is improved.
+ BDEPEND+=" app-arch/unzip"
-# Workaround for pkgcheck false positive: https://github.com/pkgcore/pkgcheck/issues/214
-# MissingUnpackerDep: version ...: missing BDEPEND="app-arch/unzip"
-# Added here rather than to each affected package, so it can be cleaned up just
-# once when pkgcheck is improved.
-BDEPEND+=" app-arch/unzip"
+ EXPORT_FUNCTIONS src_unpack
+fi
# Force go to build in module mode.
# In this mode the GOPATH environment variable is ignored.
@@ -72,12 +88,15 @@ export GO111MODULE=on
# See "go help environment" for information on this setting
export GOCACHE="${T}/go-build"
+# Set the default for the go module cache
+# See "go help environment" for information on this setting
+export GOMODCACHE="${WORKDIR}/go-mod"
+
# The following go flags should be used for all builds.
+# -modcacherw makes the build cache read/write
# -v prints the names of packages as they are compiled
# -x prints commands as they are executed
-# -mod=readonly do not update go.mod/go.sum but fail if updates are needed
-# -mod=vendor use the vendor directory instead of downloading dependencies
-export GOFLAGS="-v -x -mod=readonly"
+export GOFLAGS="-modcacherw -v -x"
# Do not complain about CFLAGS etc since go projects do not use them.
QA_FLAGS_IGNORED='.*'
@@ -85,16 +104,29 @@ QA_FLAGS_IGNORED='.*'
# Go packages should not be stripped with strip(1).
RESTRICT+=" strip"
-EXPORT_FUNCTIONS src_unpack pkg_postinst
-
# @ECLASS-VARIABLE: EGO_SUM
+# @DEPRECATED:
# @DESCRIPTION:
-# This is an array based on the go.sum content from inside the target package.
-# Each array entry must be quoted and contain information from a single
-# line from go.sum.
+# This is replaced by a dependency tarball, see above for how to create
+# one.
+#
+# This array is based on the contents of the go.sum file from the top
+# level directory of the software you are packaging. Each entry must be
+# quoted and contain the first two fields of a line from go.sum.
+#
+# You can use some combination of sed/awk/cut to extract the
+# contents of EGO_SUM or use the dev-go/get-ego-vendor tool.
+#
+# One manual way to do this is the following:
+#
+# @CODE
+#
+# cat go.sum | cut -d" " -f1,2 | awk '{print "\t\"" $0 "\""}'
+#
+# @CODE
#
# The format of go.sum is described upstream here:
-# https://tip.golang.org/cmd/go/#hdr-Module_authentication_using_go_sum
+# https://go.dev/ref/mod#go-sum-files
#
# For inclusion in EGO_SUM, the h1: value and other future extensions SHOULD be
# omitted at this time. The EGO_SUM parser will accept them for ease of ebuild
@@ -121,6 +153,7 @@ EXPORT_FUNCTIONS src_unpack pkg_postinst
# go.sum copy of the Hash1 values during building of the package.
# @ECLASS-VARIABLE: _GOMODULE_GOPROXY_BASEURI
+# @DEPRECATED:
# @DESCRIPTION:
# Golang module proxy service to fetch module files from. Note that the module
# proxy generally verifies modules via the Hash1 code.
@@ -143,13 +176,37 @@ EXPORT_FUNCTIONS src_unpack pkg_postinst
: "${_GOMODULE_GOPROXY_BASEURI:=mirror://goproxy/}"
# @ECLASS-VARIABLE: _GOMODULE_GOSUM_REVERSE_MAP
+# @DEPRECATED:
# @DESCRIPTION:
# Mapping back from Gentoo distfile name to upstream distfile path.
# Associative array to avoid O(N*M) performance when populating the GOPROXY
# directory structure.
declare -A -g _GOMODULE_GOSUM_REVERSE_MAP
+# @ECLASS-VARIABLE: GO_OPTIONAL
+# @DEFAULT_UNSET
+# @PRE_INHERIT
+# @DESCRIPTION:
+# If set to a non-null value before inherit, the Go part of the
+# ebuild will be considered optional. No dependencies will be added and
+# no phase functions will be exported. You will need to set BDEPEND and
+# call go-module_src_unpack in your ebuild.
+
+# @FUNCTION: ego
+# @USAGE: [...]
+# @DESCRIPTION:
+# Call go, passing the supplied arguments.
+# This function dies if go fails. It also supports being called via 'nonfatal'.
+# If you need to call go directly in your ebuilds, this is the way it
+# should be done.
+ego() {
+ set -- go "$@"
+ echo "$@" >&2
+ "$@" || die -n "${*} failed"
+}
+
# @FUNCTION: go-module_set_globals
+# @DEPRECATED:
# @DESCRIPTION:
# Convert the information in EGO_SUM for other usage in the ebuild.
# - Populates EGO_SUM_SRC_URI that can be added to SRC_URI
@@ -240,6 +297,7 @@ go-module_set_globals() {
}
# @FUNCTION: go-module_setup_proxy
+# @DEPRECATED:
# @DESCRIPTION:
# If your ebuild redefines src_unpack and uses EGO_SUM you need to call
# this function in src_unpack.
@@ -283,11 +341,14 @@ go-module_setup_proxy() {
# @FUNCTION: go-module_src_unpack
# @DESCRIPTION:
# If EGO_SUM is set, unpack the base tarball(s) and set up the
-# local go proxy.
+# local go proxy. Also warn that this usage is deprecated.
# - Otherwise, if EGO_VENDOR is set, bail out.
# - Otherwise do a normal unpack.
go-module_src_unpack() {
if [[ "${#EGO_SUM[@]}" -gt 0 ]]; then
+ eqawarn "This ebuild uses EGO_SUM which is deprecated"
+ eqawarn "Please migrate to a dependency tarball"
+ eqawarn "This will become a fatal error in the future"
_go-module_src_unpack_gosum
elif [[ "${#EGO_VENDOR[@]}" -gt 0 ]]; then
eerror "${EBUILD} is using EGO_VENDOR which is no longer supported"
@@ -298,6 +359,7 @@ go-module_src_unpack() {
}
# @FUNCTION: _go-module_src_unpack_gosum
+# @DEPRECATED:
# @DESCRIPTION:
# Populate a GOPROXY directory hierarchy with distfiles from EGO_SUM and
# unpack the base distfiles.
@@ -343,6 +405,7 @@ _go-module_src_unpack_gosum() {
}
# @FUNCTION: _go-module_gosum_synthesize_files
+# @DEPRECATED:
# @DESCRIPTION:
# Given a path & version, populate all Goproxy metadata files which aren't
# needed to be downloaded directly.
@@ -370,6 +433,7 @@ _go-module_gosum_synthesize_files() {
}
# @FUNCTION: _go-module_src_unpack_verify_gosum
+# @DEPRECATED:
# @DESCRIPTION:
# Validate the Go modules declared by EGO_SUM are sufficient to cover building
# the package, without actually building it yet.
@@ -387,7 +451,7 @@ _go-module_src_unpack_verify_gosum() {
# This will print 'downloading' messages, but it's accessing content from
# the $GOPROXY file:/// URL!
einfo "Tidying go.mod/go.sum"
- go mod tidy >/dev/null
+ nonfatal ego mod tidy >/dev/null
# This used to call 'go get' to verify by fetching everything from the main
# go.mod. However 'go get' also turns out to recursively try to fetch
@@ -413,26 +477,12 @@ go-module_live_vendor() {
die "${FUNCNAME} only allowed when upstream isn't vendoring"
pushd "${S}" >& /dev/null || die
- go mod vendor || die
+ ego mod vendor
popd >& /dev/null || die
}
-# @FUNCTION: go-module_pkg_postinst
-# @DESCRIPTION:
-# Display a warning about security updates for Go programs.
-go-module_pkg_postinst() {
- debug-print-function "${FUNCNAME}" "$@"
- [[ -n ${REPLACING_VERSIONS} ]] && return 0
- ewarn "${PN} is written in the Go programming language."
- ewarn "Since this language is statically linked, security"
- ewarn "updates will be handled in individual packages and will be"
- ewarn "difficult for us to track as a distribution."
- ewarn "For this reason, please update any go packages asap when new"
- ewarn "versions enter the tree or go stable if you are running the"
- ewarn "stable tree."
-}
-
# @FUNCTION: _go-module_gomod_encode
+# @DEPRECATED:
# @DESCRIPTION:
# Encode the name(path) of a Golang module in the format expected by Goproxy.
#
diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass
index 11a890889e..a0942f0e55 100644
--- a/eclass/linux-info.eclass
+++ b/eclass/linux-info.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: linux-info.eclass
@@ -33,8 +33,10 @@
# @DESCRIPTION:
# A string containing the directory of the target kernel sources. The default value is
# "/usr/src/linux"
+KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}"
# @ECLASS-VARIABLE: CONFIG_CHECK
+# @DEFAULT_UNSET
# @DESCRIPTION:
# A string containing a list of .config options to check for before
# proceeding with the install.
@@ -57,13 +59,20 @@
# sources.
# @ECLASS-VARIABLE: ERROR_
+# @DEFAULT_UNSET
# @DESCRIPTION:
# A string containing the error message to display when the check against CONFIG_CHECK
# fails. should reference the appropriate option used in CONFIG_CHECK.
#
-# e.g.: ERROR_MTRR="MTRR exists in the .config but shouldn't!!"
+# e.g.: ERROR_MTRR="MTRR exists in the .config but shouldn't!!"
+#
+# CONFIG_CHECK="CFG" with ERROR_="Error Message" will die
+# CONFIG_CHECK="~CFG" with ERROR_="Error Message" calls eerror without dieing
+# CONFIG_CHECK="~CFG" with WARNING_="Warning Message" calls ewarn without dieing
+
# @ECLASS-VARIABLE: KBUILD_OUTPUT
+# @DEFAULT_UNSET
# @DESCRIPTION:
# A string passed on commandline, or set from the kernel makefile. It contains the directory
# which is to be used as the kernel object directory.
@@ -71,36 +80,53 @@
# There are also a couple of variables which are set by this, and shouldn't be
# set by hand. These are as follows:
+# @ECLASS-VARIABLE: KERNEL_MAKEFILE
+# @INTERNAL
+# @DESCRIPTION:
+# According to upstream documentation, by default, when make looks for the makefile, it tries
+# the following names, in order: GNUmakefile, makefile and Makefile. Set this variable to the
+# proper Makefile name or the eclass will search in this order for it.
+# See https://www.gnu.org/software/make/manual/make.html
+: ${KERNEL_MAKEFILE:=""}
+
# @ECLASS-VARIABLE: KV_FULL
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's a string containing the full kernel version. ie: 2.6.9-gentoo-johnm-r1
# @ECLASS-VARIABLE: KV_MAJOR
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's an integer containing the kernel major version. ie: 2
# @ECLASS-VARIABLE: KV_MINOR
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's an integer containing the kernel minor version. ie: 6
# @ECLASS-VARIABLE: KV_PATCH
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's an integer containing the kernel patch version. ie: 9
# @ECLASS-VARIABLE: KV_EXTRA
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's a string containing the kernel EXTRAVERSION. ie: -gentoo
# @ECLASS-VARIABLE: KV_LOCAL
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's a string containing the kernel LOCALVERSION concatenation. ie: -johnm
# @ECLASS-VARIABLE: KV_DIR
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's a string containing the kernel source directory, will be null if
# KERNEL_DIR is invalid.
# @ECLASS-VARIABLE: KV_OUT_DIR
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# A read-only variable. It's a string containing the kernel object directory, will be KV_DIR unless
# KBUILD_OUTPUT is used. This should be used for referencing .config.
@@ -111,13 +137,6 @@ inherit toolchain-funcs
EXPORT_FUNCTIONS pkg_setup
-IUSE="kernel_linux"
-
-# Overwritable environment Var's
-# ---------------------------------------
-KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}"
-
-
# Bug fixes
# fix to bug #75034
case ${ARCH} in
@@ -183,9 +202,11 @@ getfilevar() {
unset ARCH
# We use nonfatal because we want the caller to take care of things #373151
+ # Pass need-config= to make to avoid config check in kernel Makefile.
+ # Pass dot-config=0 to avoid the config check in kernels prior to 5.4.
[[ ${EAPI:-0} == [0123] ]] && nonfatal() { "$@"; }
echo -e "e:\\n\\t@echo \$(${1})\\ninclude ${basefname}" | \
- nonfatal emake -C "${basedname}" M="${T}" ${BUILD_FIXES} -s -f - 2>/dev/null
+ nonfatal emake -C "${basedname}" --no-print-directory M="${T}" dot-config=0 need-config= ${BUILD_FIXES} -s -f - 2>/dev/null
ARCH=${myARCH}
fi
@@ -383,7 +404,7 @@ kernel_is() {
linux-info_get_any_version
# Now we can continue
- local operator test value
+ local operator
case ${1#-} in
lt) operator="-lt"; shift;;
@@ -395,9 +416,10 @@ kernel_is() {
esac
[[ $# -gt 3 ]] && die "Error in kernel-2_kernel_is(): too many parameters"
- : $(( test = (KV_MAJOR << 16) + (KV_MINOR << 8) + KV_PATCH ))
- : $(( value = (${1:-${KV_MAJOR}} << 16) + (${2:-${KV_MINOR}} << 8) + ${3:-${KV_PATCH}} ))
- [ ${test} ${operator} ${value} ]
+ ver_test \
+ "${KV_MAJOR:-0}.${KV_MINOR:-0}.${KV_PATCH:-0}" \
+ "${operator}" \
+ "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}"
}
get_localversion() {
@@ -445,7 +467,7 @@ get_version_warning_done=
#
# The kernel version variables (KV_MAJOR, KV_MINOR, KV_PATCH, KV_EXTRA and KV_LOCAL) are also set.
#
-# The KV_DIR is set using the KERNEL_DIR env var, the KV_DIR_OUT is set using a valid
+# The KV_DIR is set using the KERNEL_DIR env var, the KV_OUT_DIR is set using a valid
# KBUILD_OUTPUT (in a decreasing priority list, we look for the env var, makefile var or the
# symlink /lib/modules/${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}/build).
get_version() {
@@ -497,7 +519,9 @@ get_version() {
qeinfo " ${KV_DIR}"
fi
- if [ ! -s "${KV_DIR}/Makefile" ]
+ kernel_get_makefile
+
+ if [[ ! -s ${KERNEL_MAKEFILE} ]]
then
if [ -z "${get_version_warning_done}" ]; then
get_version_warning_done=1
@@ -513,9 +537,6 @@ get_version() {
# do we pass KBUILD_OUTPUT on the CLI?
local OUTPUT_DIR=${KBUILD_OUTPUT}
- # keep track of it
- KERNEL_MAKEFILE="${KV_DIR}/Makefile"
-
if [[ -z ${OUTPUT_DIR} ]]; then
# Decide the function used to extract makefile variables.
local mkfunc=$(get_makefile_extract_function "${KERNEL_MAKEFILE}")
@@ -526,14 +547,11 @@ get_version() {
# And contrary to existing functions I feel we shouldn't trust the
# directory name to find version information as this seems insane.
- # So we parse ${KERNEL_MAKEFILE}. We should be able to trust that
- # the Makefile is simple enough to use the noexec extract function.
- # This has been true for every release thus far, and it's faster
- # than using make to evaluate the Makefile every time.
- KV_MAJOR=$(getfilevar_noexec VERSION "${KERNEL_MAKEFILE}")
- KV_MINOR=$(getfilevar_noexec PATCHLEVEL "${KERNEL_MAKEFILE}")
- KV_PATCH=$(getfilevar_noexec SUBLEVEL "${KERNEL_MAKEFILE}")
- KV_EXTRA=$(getfilevar_noexec EXTRAVERSION "${KERNEL_MAKEFILE}")
+ # So we parse ${KERNEL_MAKEFILE}.
+ KV_MAJOR=$(getfilevar VERSION "${KERNEL_MAKEFILE}")
+ KV_MINOR=$(getfilevar PATCHLEVEL "${KERNEL_MAKEFILE}")
+ KV_PATCH=$(getfilevar SUBLEVEL "${KERNEL_MAKEFILE}")
+ KV_EXTRA=$(getfilevar EXTRAVERSION "${KERNEL_MAKEFILE}")
if [ -z "${KV_MAJOR}" -o -z "${KV_MINOR}" -o -z "${KV_PATCH}" ]
then
@@ -610,34 +628,27 @@ get_running_version() {
die "${FUNCNAME}() called on non-Linux system, please fix the ebuild"
fi
- KV_FULL=$(uname -r)
-
- if [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile && -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then
- KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source)
- KBUILD_OUTPUT=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build)
- unset KV_FULL
- get_version
- return $?
- elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile ]]; then
- KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source)
- unset KV_FULL
- get_version
- return $?
- elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then
- KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build)
- unset KV_FULL
- get_version
- return $?
- else
- # This handles a variety of weird kernel versions. Make sure to update
- # tests/linux-info_get_running_version.sh if you want to change this.
- local kv_full=${KV_FULL//[-+_]*}
- KV_MAJOR=$(ver_cut 1 ${kv_full})
- KV_MINOR=$(ver_cut 2 ${kv_full})
- KV_PATCH=$(ver_cut 3 ${kv_full})
- KV_EXTRA="${KV_FULL#${KV_MAJOR}.${KV_MINOR}${KV_PATCH:+.${KV_PATCH}}}"
- : ${KV_PATCH:=0}
+ local kv=$(uname -r)
+
+ if [[ -f ${ROOT%/}/lib/modules/${kv}/source/Makefile ]]; then
+ KERNEL_DIR=$(readlink -f "${ROOT%/}/lib/modules/${kv}/source")
+ if [[ -f ${ROOT%/}/lib/modules/${kv}/build/Makefile ]]; then
+ KBUILD_OUTPUT=$(readlink -f "${ROOT%/}/lib/modules/${kv}/build")
+ fi
+ get_version && return 0
fi
+
+ KV_FULL=${kv}
+
+ # This handles a variety of weird kernel versions. Make sure to update
+ # tests/linux-info_get_running_version.sh if you want to change this.
+ local kv_full=${KV_FULL//[-+_]*}
+ KV_MAJOR=$(ver_cut 1 ${kv_full})
+ KV_MINOR=$(ver_cut 2 ${kv_full})
+ KV_PATCH=$(ver_cut 3 ${kv_full})
+ KV_EXTRA="${KV_FULL#${KV_MAJOR}.${KV_MINOR}${KV_PATCH:+.${KV_PATCH}}}"
+ : ${KV_PATCH:=0}
+
return 0
}
@@ -944,20 +955,19 @@ linux-info_pkg_setup() {
linux-info_get_any_version
- if kernel_is 2 4; then
- if [ "$( gcc-major-version )" -eq "4" ] ; then
- echo
- ewarn "Be warned !! >=sys-devel/gcc-4.0.0 isn't supported with"
- ewarn "linux-2.4 (or modules building against a linux-2.4 kernel)!"
- echo
- ewarn "Either switch to another gcc-version (via gcc-config) or use a"
- ewarn "newer kernel that supports gcc-4."
- echo
- ewarn "Also be aware that bugreports about gcc-4 not working"
- ewarn "with linux-2.4 based ebuilds will be closed as INVALID!"
- echo
- fi
- fi
-
[ -n "${CONFIG_CHECK}" ] && check_extra_config;
}
+
+# @FUNCTION: kernel_get_makefile
+# @DESCRIPTION:
+# Support the possibility that the Makefile could be one of the following and should
+# be checked in the order described here:
+# https://www.gnu.org/software/make/manual/make.html
+# Order of checking and valid Makefiles names: GNUMakefile, makefile, Makefile
+kernel_get_makefile() {
+
+ [[ -s ${KV_DIR}/GNUMakefile ]] && KERNEL_MAKEFILE="${KV_DIR}/GNUMakefile" && return
+ [[ -s ${KV_DIR}/makefile ]] && KERNEL_MAKEFILE="${KV_DIR}/makefile" && return
+ [[ -s ${KV_DIR}/Makefile ]] && KERNEL_MAKEFILE="${KV_DIR}/Makefile" && return
+
+}
diff --git a/eclass/lua-single.eclass b/eclass/lua-single.eclass
index 11c2790dac..2f4ebaa141 100644
--- a/eclass/lua-single.eclass
+++ b/eclass/lua-single.eclass
@@ -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
# @ECLASS: lua-single.eclass
@@ -8,7 +8,8 @@
# @AUTHOR:
# Marek Szuba
# Based on python-single-r1.eclass by Michał Górny et al.
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
+# @PROVIDES: lua-utils
# @BLURB: An eclass for Lua packages not installed for multiple implementations.
# @DESCRIPTION:
# An extension of lua.eclass suite for packages which don't support being
@@ -34,9 +35,9 @@
#
# @EXAMPLE:
# @CODE
-# EAPI=7
+# EAPI=8
#
-# LUA_COMPAT=( lua5-{1..3} )
+# LUA_COMPAT=( lua5-{3..4} )
#
# inherit lua-single
#
@@ -62,15 +63,10 @@
# }
# @CODE
-case ${EAPI:-0} in
- 0|1|2|3|4|5|6)
- die "Unsupported EAPI=${EAPI} (too old) for ${ECLASS}"
- ;;
- 7)
- ;;
- *)
- die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
+case ${EAPI} in
+ 7|8)
;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
if [[ ! ${_LUA_SINGLE_R0} ]]; then
@@ -95,7 +91,7 @@ EXPORT_FUNCTIONS pkg_setup
#
# Example:
# @CODE
-# LUA_COMPAT=( lua5-1 lua5-2 lua5-3 )
+# LUA_COMPAT=( lua5-1 lua5-3 lua5-4 )
# @CODE
#
# Please note that you can also use bash brace expansion if you like:
@@ -120,7 +116,7 @@ EXPORT_FUNCTIONS pkg_setup
#
# Example:
# @CODE
-# LUA_COMPAT_OVERRIDE='lua5-2' emerge -1v dev-lua/foo
+# LUA_COMPAT_OVERRIDE='luajit' emerge -1v dev-lua/foo
# @CODE
# @ECLASS-VARIABLE: LUA_REQ_USE
@@ -159,7 +155,7 @@ EXPORT_FUNCTIONS pkg_setup
# Example value:
# @CODE
# lua_targets_lua5-1? ( dev-lang/lua:5.1 )
-# lua_targets_lua5-2? ( dev-lang/lua:5.2 )
+# lua_targets_lua5-3? ( dev-lang/lua:5.3 )
# @CODE
# @ECLASS-VARIABLE: LUA_REQUIRED_USE
@@ -178,7 +174,7 @@ EXPORT_FUNCTIONS pkg_setup
#
# Example value:
# @CODE
-# || ( lua_targets_lua5-1 lua_targets_lua5-2 )
+# || ( lua_targets_lua5-1 lua_targets_lua5-3 )
# @CODE
# @ECLASS-VARIABLE: LUA_SINGLE_USEDEP
@@ -215,7 +211,7 @@ EXPORT_FUNCTIONS pkg_setup
#
# Example value:
# @CODE
-# lua_targets_lua5-1(-)?,lua_targets_lua5-2(-)?
+# lua_targets_lua5-1(-)?,lua_targets_lua5-3(-)?
# @CODE
# @FUNCTION: _lua_single_set_globals
@@ -353,7 +349,7 @@ _lua_verify_patterns() {
local impl pattern
for pattern; do
- for impl in "${_LUA_ALL_IMPLS[@]}"; do
+ for impl in "${_LUA_ALL_IMPLS[@]}" "${_LUA_HISTORICAL_IMPLS[@]}"; do
[[ ${impl} == ${pattern/./-} ]] && continue 2
done
@@ -381,15 +377,15 @@ _lua_verify_patterns() {
# @CODE
# LUA_COMPAT=( lua5-{1..3} )
# RDEPEND="$(lua_gen_cond_dep \
-# 'dev-lua/backported_core_module[${LUA_USEDEP}]' lua5-1 lua5-2 )"
+# 'dev-lua/backported_core_module[${LUA_USEDEP}]' lua5-1 lua5-3 )"
# @CODE
#
# It will cause the variable to look like:
# @CODE
# RDEPEND="lua_single_target_lua5-1? (
# dev-lua/backported_core_module[lua_targets_lua5-1(-)?,...] )
-# lua_single_target_lua5-2? (
-# dev-lua/backported_core_module[lua_targets_lua5-2(-)?,...] )"
+# lua_single_target_lua5-3? (
+# dev-lua/backported_core_module[lua_targets_lua5-3(-)?,...] )"
# @CODE
lua_gen_cond_dep() {
debug-print-function ${FUNCNAME} "${@}"
@@ -441,13 +437,13 @@ lua_gen_cond_dep() {
# Example:
# @CODE
# LUA_COMPAT=( lua5-{1..3} )
-# RDEPEND="foo? ( $(lua_gen_impl_dep 'deprecated(+)' lua5-3 ) )"
+# RDEPEND="foo? ( $(lua_gen_impl_dep 'deprecated(+)' lua5-4 ) )"
# @CODE
#
# It will cause the variable to look like:
# @CODE
# RDEPEND="foo? (
-# lua_single_target_lua5-3? ( dev-lang/lua:5.3[deprecated(+)] )
+# lua_single_target_lua5-4? ( dev-lang/lua:5.3[deprecated(+)] )
# )"
# @CODE
lua_gen_impl_dep() {
diff --git a/eclass/lua-utils.eclass b/eclass/lua-utils.eclass
index 0589318ef5..3b24f383d7 100644
--- a/eclass/lua-utils.eclass
+++ b/eclass/lua-utils.eclass
@@ -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
# @ECLASS: lua-utils.eclass
@@ -8,7 +8,7 @@
# @AUTHOR:
# Marek Szuba
# Based on python-utils-r1.eclass by Michał Górny et al.
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
# @BLURB: Utility functions for packages with Lua parts
# @DESCRIPTION:
# A utility eclass providing functions to query Lua implementations,
@@ -17,15 +17,10 @@
# This eclass neither sets any metadata variables nor exports any phase
# functions. It can be inherited safely.
-case ${EAPI:-0} in
- 0|1|2|3|4|5|6)
- die "Unsupported EAPI=${EAPI} (too old) for ${ECLASS}"
- ;;
- 7)
- ;;
- *)
- die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
+case ${EAPI} in
+ 7|8)
;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
if [[ ! ${_LUA_UTILS_R0} ]]; then
@@ -39,12 +34,20 @@ inherit toolchain-funcs
_LUA_ALL_IMPLS=(
luajit
lua5-1
- lua5-2
lua5-3
lua5-4
)
readonly _LUA_ALL_IMPLS
+# @ECLASS-VARIABLE: _LUA_HISTORICAL_IMPLS
+# @INTERNAL
+# @DESCRIPTION:
+# All historical Lua implementations that are no longer supported.
+_LUA_HISTORICAL_IMPLS=(
+ lua5-2
+)
+readonly _LUA_HISTORICAL_IMPLS
+
# @FUNCTION: _lua_set_impls
# @INTERNAL
# @DESCRIPTION:
@@ -212,7 +215,9 @@ _lua_get_library_file() {
die "Invalid implementation: ${impl}"
;;
esac
+
libdir=$($(tc-getPKG_CONFIG) --variable libdir ${impl}) || die
+ libdir="${libdir#${ESYSROOT#${SYSROOT}}}"
debug-print "${FUNCNAME}: libdir = ${libdir}, libname = ${libname}"
echo "${libdir}/${libname}"
@@ -226,8 +231,8 @@ _lua_get_library_file() {
# as parameters.
#
# The optional first parameter may specify the requested Lua
-# implementation (either as LUA_TARGETS value, e.g. lua5-2,
-# or an ELUA one, e.g. lua5.2). If no implementation passed,
+# implementation (either as LUA_TARGETS value, e.g. lua5-4,
+# or an ELUA one, e.g. lua5.4). If no implementation passed,
# the current one will be obtained from ${ELUA}.
_lua_export() {
debug-print-function ${FUNCNAME} "${@}"
@@ -274,6 +279,7 @@ _lua_export() {
local val
val=$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD ${impl}) || die
+ val="${val#${ESYSROOT#${SYSROOT}}}"
export LUA_CMOD_DIR=${val}
debug-print "${FUNCNAME}: LUA_CMOD_DIR = ${LUA_CMOD_DIR}"
@@ -282,6 +288,7 @@ _lua_export() {
local val
val=$($(tc-getPKG_CONFIG) --variable includedir ${impl}) || die
+ val="${val#${ESYSROOT#${SYSROOT}}}"
export LUA_INCLUDE_DIR=${val}
debug-print "${FUNCNAME}: LUA_INCLUDE_DIR = ${LUA_INCLUDE_DIR}"
@@ -298,6 +305,7 @@ _lua_export() {
local val
val=$($(tc-getPKG_CONFIG) --variable INSTALL_LMOD ${impl}) || die
+ val="${val#${ESYSROOT#${SYSROOT}}}"
export LUA_LMOD_DIR=${val}
debug-print "${FUNCNAME}: LUA_LMOD_DIR = ${LUA_LMOD_DIR}"
diff --git a/eclass/lua.eclass b/eclass/lua.eclass
deleted file mode 100644
index 46d9e848c8..0000000000
--- a/eclass/lua.eclass
+++ /dev/null
@@ -1,381 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: lua.eclass
-# @MAINTAINER:
-# William Hubbs
-# Marek Szuba
-# @AUTHOR:
-# Marek Szuba
-# Based on python-r1.eclass by Michał Górny et al.
-# @SUPPORTED_EAPIS: 7
-# @BLURB: A common eclass for Lua packages
-# @DESCRIPTION:
-# A common eclass providing helper functions to build and install
-# packages supporting being installed for multiple Lua implementations.
-#
-# This eclass sets correct IUSE. Modification of REQUIRED_USE has to
-# be done by the author of the ebuild (but LUA_REQUIRED_USE is
-# provided for convenience, see below). The eclass exports LUA_DEPS
-# and LUA_USEDEP so you can create correct dependencies for your
-# package easily. It also provides methods to easily run a command for
-# each enabled Lua implementation and duplicate the sources for them.
-#
-# Note that since this eclass always inherits lua-utils as well, in ebuilds
-# using the former there is no need to explicitly inherit the latter in order
-# to use helper functions such as lua_get_CFLAGS.
-#
-# @EXAMPLE:
-# @CODE
-# EAPI=7
-#
-# LUA_COMPAT=( lua5-{1..3} )
-#
-# inherit lua
-#
-# [...]
-#
-# REQUIRED_USE="${LUA_REQUIRED_USE}"
-# DEPEND="${LUA_DEPS}"
-# RDEPEND="${DEPEND}
-# dev-lua/foo[${LUA_USEDEP}]"
-# BDEPEND="virtual/pkgconfig"
-#
-# lua_src_install() {
-# emake LUA_VERSION="$(lua_get_version)" install
-# }
-#
-# src_install() {
-# lua_foreach_impl lua_src_install
-# }
-# @CODE
-
-case ${EAPI:-0} in
- 0|1|2|3|4|5|6)
- die "Unsupported EAPI=${EAPI} (too old) for ${ECLASS}"
- ;;
- 7)
- ;;
- *)
- die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
- ;;
-esac
-
-if [[ ! ${_LUA_R0} ]]; then
-
-if [[ ${_LUA_SINGLE_R0} ]]; then
- die 'lua.eclass cannot be used with lua-single.eclass.'
-fi
-
-inherit multibuild lua-utils
-
-fi
-
-# @ECLASS-VARIABLE: LUA_COMPAT
-# @REQUIRED
-# @PRE_INHERIT
-# @DESCRIPTION:
-# This variable contains a list of Lua implementations the package
-# supports. It must be set before the `inherit' call. It has to be
-# an array.
-#
-# Example:
-# @CODE
-# LUA_COMPAT=( lua5-1 lua5-2 lua5-3 )
-# @CODE
-#
-# Please note that you can also use bash brace expansion if you like:
-# @CODE
-# LUA_COMPAT=( lua5-{1..3} )
-# @CODE
-
-# @ECLASS-VARIABLE: LUA_COMPAT_OVERRIDE
-# @USER_VARIABLE
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# This variable can be used when working with ebuilds to override
-# the in-ebuild LUA_COMPAT. It is a string listing all
-# the implementations which package will be built for. It need be
-# specified in the calling environment, and not in ebuilds.
-#
-# It should be noted that in order to preserve metadata immutability,
-# LUA_COMPAT_OVERRIDE does not affect IUSE nor dependencies.
-# The state of LUA_TARGETS is ignored, and all the implementations
-# in LUA_COMPAT_OVERRIDE are built. Dependencies need to be satisfied
-# manually.
-#
-# Example:
-# @CODE
-# LUA_COMPAT_OVERRIDE='lua5-2' emerge -1v dev-lua/foo
-# @CODE
-
-# @ECLASS-VARIABLE: LUA_REQ_USE
-# @DEFAULT_UNSET
-# @PRE_INHERIT
-# @DESCRIPTION:
-# The list of USE flags required to be enabled on the chosen Lua
-# implementations, formed as a USE-dependency string. It should be valid
-# for all implementations in LUA_COMPAT, so it may be necessary to
-# use USE defaults.
-# This must be set before calling `inherit'.
-#
-# Example:
-# @CODE
-# LUA_REQ_USE="deprecated"
-# @CODE
-#
-# It will cause the Lua dependencies to look like:
-# @CODE
-# lua_targets_luaX-Y? ( dev-lang/lua:X.Y[deprecated] )
-# @CODE
-
-# @ECLASS-VARIABLE: BUILD_DIR
-# @OUTPUT_VARIABLE
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# The current build directory. In global scope, it is supposed to
-# contain an initial build directory; if unset, it defaults to ${S}.
-#
-# In functions run by lua_foreach_impl(), the BUILD_DIR is locally
-# set to an implementation-specific build directory. That path is
-# created through appending a hyphen and the implementation name
-# to the final component of the initial BUILD_DIR.
-#
-# Example value:
-# @CODE
-# ${WORKDIR}/foo-1.3-lua5-1
-# @CODE
-
-# @ECLASS-VARIABLE: LUA_DEPS
-# @OUTPUT_VARIABLE
-# @DESCRIPTION:
-# This is an eclass-generated Lua dependency string for all
-# implementations listed in LUA_COMPAT.
-#
-# Example use:
-# @CODE
-# RDEPEND="${LUA_DEPS}
-# dev-foo/mydep"
-# DEPEND="${RDEPEND}"
-# @CODE
-#
-# Example value:
-# @CODE
-# lua_targets_lua5-1? ( dev-lang/lua:5.1 )
-# lua_targets_lua5-2? ( dev-lang/lua:5.2 )
-# @CODE
-
-# @ECLASS-VARIABLE: LUA_REQUIRED_USE
-# @OUTPUT_VARIABLE
-# @DESCRIPTION:
-# This is an eclass-generated required-use expression which ensures at
-# least one Lua implementation has been enabled.
-#
-# This expression should be utilized in an ebuild by including it in
-# REQUIRED_USE, optionally behind a use flag.
-#
-# Example use:
-# @CODE
-# REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
-# @CODE
-#
-# Example value:
-# @CODE
-# || ( lua_targets_lua5-1 lua_targets_lua5-2 )
-# @CODE
-
-# @ECLASS-VARIABLE: LUA_USEDEP
-# @OUTPUT_VARIABLE
-# @DESCRIPTION:
-# This is an eclass-generated USE-dependency string which can be used to
-# depend on another Lua package being built for the same Lua
-# implementations.
-#
-# Example use:
-# @CODE
-# RDEPEND="dev-lua/foo[${LUA_USEDEP}]"
-# @CODE
-#
-# Example value:
-# @CODE
-# lua_targets_lua5-1(-)?,lua_targets_lua5-2(-)?
-# @CODE
-
-if [[ ! ${_LUA_R0} ]]; then
-
-# @FUNCTION: _lua_validate_useflags
-# @INTERNAL
-# @DESCRIPTION:
-# Enforce the proper setting of LUA_TARGETS, if LUA_COMPAT_OVERRIDE
-# is not in effect. If it is, just warn that the flags will be ignored.
-_lua_validate_useflags() {
- debug-print-function ${FUNCNAME} "${@}"
-
- if [[ ${LUA_COMPAT_OVERRIDE} ]]; then
- if [[ ! ${_LUA_COMPAT_OVERRIDE_WARNED} ]]; then
- ewarn "WARNING: LUA_COMPAT_OVERRIDE in effect. The following Lua"
- ewarn "implementations will be enabled:"
- ewarn
- ewarn " ${LUA_COMPAT_OVERRIDE}"
- ewarn
- ewarn "Dependencies won't be satisfied, and LUA_TARGETS will be ignored."
- _LUA_COMPAT_OVERRIDE_WARNED=1
- fi
- # we do not use flags with LCO
- return
- fi
-
- local i
-
- for i in "${_LUA_SUPPORTED_IMPLS[@]}"; do
- use "lua_targets_${i}" && return 0
- done
-
- eerror "No Lua implementation selected for the build. Please add one"
- eerror "of the following values to your LUA_TARGETS"
- eerror "(in make.conf or package.use):"
- eerror
- eerror "${LUA_COMPAT[@]}"
- echo
- die "No supported Lua implementation in LUA_TARGETS."
-}
-
-# @FUNCTION: _lua_obtain_impls
-# @INTERNAL
-# @DESCRIPTION:
-# Set up the enabled implementation list.
-_lua_obtain_impls() {
- _lua_validate_useflags
-
- if [[ ${LUA_COMPAT_OVERRIDE} ]]; then
- MULTIBUILD_VARIANTS=( ${LUA_COMPAT_OVERRIDE} )
- return
- fi
-
- MULTIBUILD_VARIANTS=()
-
- local impl
- for impl in "${_LUA_SUPPORTED_IMPLS[@]}"; do
- has "${impl}" "${LUA_COMPAT[@]}" && \
- use "lua_targets_${impl}" && MULTIBUILD_VARIANTS+=( "${impl}" )
- done
-}
-
-
-# @FUNCTION: _lua_multibuild_wrapper
-# @USAGE: [...]
-# @INTERNAL
-# @DESCRIPTION:
-# Initialize the environment for the Lua implementation selected
-# for multibuild.
-_lua_multibuild_wrapper() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local -x ELUA LUA
- _lua_export "${MULTIBUILD_VARIANT}" ELUA LUA
- local -x PATH=${PATH} PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
- _lua_wrapper_setup
-
- "${@}"
-}
-
-# @FUNCTION: lua_copy_sources
-# @DESCRIPTION:
-# Create a single copy of the package sources for each enabled Lua
-# implementation.
-#
-# The sources are always copied from initial BUILD_DIR (or S if unset)
-# to implementation-specific build directory matching BUILD_DIR used by
-# lua_foreach_abi().
-lua_copy_sources() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local MULTIBUILD_VARIANTS
- _lua_obtain_impls
-
- multibuild_copy_sources
-}
-
-# @FUNCTION: lua_foreach_impl
-# @USAGE: [...]
-# @DESCRIPTION:
-# Run the given command for each of the enabled Lua implementations.
-# If additional parameters are passed, they will be passed through
-# to the command.
-#
-# The function will return 0 status if all invocations succeed.
-# Otherwise, the return code from first failing invocation will
-# be returned.
-#
-# For each command being run, ELUA, LUA and BUILD_DIR are set
-# locally, and the former two are exported to the command environment.
-lua_foreach_impl() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local MULTIBUILD_VARIANTS
- _lua_obtain_impls
-
- multibuild_foreach_variant _lua_multibuild_wrapper "${@}"
-}
-
-_LUA_R0=1
-fi
-
-# @FUNCTION: _lua_set_globals
-# @INTERNAL
-# @DESCRIPTION:
-# Sets all the global output variables provided by this eclass.
-# This function must be called once, in global scope.
-_lua_set_globals() {
- local deps i LUA_PKG_DEP
-
- _lua_set_impls
-
- for i in "${_LUA_SUPPORTED_IMPLS[@]}"; do
- _lua_export "${i}" LUA_PKG_DEP
- deps+="lua_targets_${i}? ( ${LUA_PKG_DEP} ) "
- done
-
- local flags=( "${_LUA_SUPPORTED_IMPLS[@]/#/lua_targets_}" )
- local optflags=${flags[@]/%/(-)?}
-
- local requse="|| ( ${flags[*]} )"
- local usedep=${optflags// /,}
-
- if [[ ${LUA_DEPS+1} ]]; then
- # IUSE is magical, so we can't really check it
- # (but we verify LUA_COMPAT already)
-
- if [[ ${LUA_DEPS} != "${deps}" ]]; then
- eerror "LUA_DEPS have changed between inherits (LUA_REQ_USE?)!"
- eerror "Before: ${LUA_DEPS}"
- eerror "Now : ${deps}"
- die "LUA_DEPS integrity check failed"
- fi
-
- # these two are formality -- they depend on LUA_COMPAT only
- if [[ ${LUA_REQUIRED_USE} != ${requse} ]]; then
- eerror "LUA_REQUIRED_USE have changed between inherits!"
- eerror "Before: ${LUA_REQUIRED_USE}"
- eerror "Now : ${requse}"
- die "LUA_REQUIRED_USE integrity check failed"
- fi
-
- if [[ ${LUA_USEDEP} != "${usedep}" ]]; then
- eerror "LUA_USEDEP have changed between inherits!"
- eerror "Before: ${LUA_USEDEP}"
- eerror "Now : ${usedep}"
- die "LUA_USEDEP integrity check failed"
- fi
- else
- IUSE=${flags[*]}
-
- LUA_DEPS=${deps}
- LUA_REQUIRED_USE=${requse}
- LUA_USEDEP=${usedep}
- readonly LUA_DEPS LUA_REQUIRED_USE
- fi
-}
-
-_lua_set_globals
-unset -f _lua_set_globals
diff --git a/eclass/user-info.eclass b/eclass/user-info.eclass
index 15e9238ab4..3838585ab6 100644
--- a/eclass/user-info.eclass
+++ b/eclass/user-info.eclass
@@ -1,12 +1,18 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: user-info.eclass
# @MAINTAINER:
# base-system@gentoo.org (Linux)
# Michał Górny (NetBSD)
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: Read-only access to user and group information
+case ${EAPI} in
+ 6|7|8) ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
if [[ -z ${_USER_INFO_ECLASS} ]]; then
_USER_INFO_ECLASS=1
diff --git a/eclass/user.eclass b/eclass/user.eclass
index b70698356a..581704eae8 100644
--- a/eclass/user.eclass
+++ b/eclass/user.eclass
@@ -1,15 +1,31 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: user.eclass
# @MAINTAINER:
# base-system@gentoo.org (Linux)
# Michał Górny (NetBSD)
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: user management in ebuilds
+# @DEPRECATED: acct-user/acct-group packages
# @DESCRIPTION:
# The user eclass contains a suite of functions that allow ebuilds
# to quickly make sure users in the installed system are sane.
+case ${EAPI} in
+ 6|7) ;;
+ 8)
+ if [[ ${CATEGORY} != acct-* ]]; then
+ eerror "In EAPI ${EAPI}, packages must not inherit user.eclass"
+ eerror "unless they are in the acct-user or acct-group category."
+ eerror "Migrate your package to GLEP 81 user/group management,"
+ eerror "or inherit user-info if you need only the query functions."
+ die "Invalid \"inherit user\" in EAPI ${EAPI}"
+ fi
+ ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
if [[ -z ${_USER_ECLASS} ]]; then
_USER_ECLASS=1
@@ -18,14 +34,16 @@ inherit user-info
# @FUNCTION: _assert_pkg_ebuild_phase
# @INTERNAL
# @USAGE:
+# @DESCRIPTION:
+# Raises an alert if the phase is not suitable for user.eclass usage.
_assert_pkg_ebuild_phase() {
case ${EBUILD_PHASE} in
setup|preinst|postinst|prerm|postrm) ;;
*)
eerror "'$1()' called from '${EBUILD_PHASE}' phase which is not OK:"
eerror "You may only call from pkg_{setup,{pre,post}{inst,rm}} functions."
- eerror "Package fails at QA and at life. Please file a bug."
- die "Bad package! $1 is only for use in some pkg_* functions!"
+ eerror "Package has serious QA issues. Please file a bug."
+ die "Bad package! ${1} is only for use in some pkg_* functions!"
esac
}
@@ -74,8 +92,8 @@ enewuser() {
_assert_pkg_ebuild_phase ${FUNCNAME}
local create_home=1 force_uid=
- while [[ $1 == -* ]]; do
- case $1 in
+ while [[ ${1} == -* ]]; do
+ case ${1} in
-F) force_uid=1;;
-M) create_home=;;
*) die "${FUNCNAME}: invalid option ${1}";;
@@ -84,9 +102,9 @@ enewuser() {
done
# get the username
- local euser=$1; shift
+ local euser=${1}; shift
if [[ -z ${euser} ]] ; then
- eerror "No username specified !"
+ eerror "No username specified!"
die "Cannot call enewuser without a username"
fi
@@ -100,7 +118,7 @@ enewuser() {
local opts=()
# handle uid
- local euid=$1; shift
+ local euid=${1}; shift
if [[ -n ${euid} && ${euid} != -1 ]] ; then
if [[ ${euid} -gt 0 ]] ; then
if [[ -n $(egetent passwd ${euid}) ]] ; then
@@ -108,7 +126,7 @@ enewuser() {
euid="next"
fi
else
- eerror "Userid given but is not greater than 0 !"
+ eerror "Userid given but is not greater than 0!"
die "${euid} is not a valid UID"
fi
else
@@ -125,10 +143,10 @@ enewuser() {
elog " - Userid: ${euid}"
# handle shell
- local eshell=$1; shift
+ local eshell=${1}; shift
if [[ ! -z ${eshell} ]] && [[ ${eshell} != "-1" ]] ; then
if [[ ! -e ${ROOT}${eshell} ]] ; then
- eerror "A shell was specified but it does not exist !"
+ eerror "A shell was specified but it does not exist!"
die "${eshell} does not exist in ${ROOT}"
fi
if [[ ${eshell} == */false || ${eshell} == */nologin ]] ; then
@@ -142,7 +160,7 @@ enewuser() {
opts+=( -s "${eshell}" )
# handle homedir
- local ehome=$1; shift
+ local ehome=${1}; shift
if [[ -z ${ehome} ]] || [[ ${ehome} == "-1" ]] ; then
ehome="/dev/null"
fi
@@ -150,7 +168,7 @@ enewuser() {
opts+=( -d "${ehome}" )
# handle groups
- local egroups=$1; shift
+ local egroups=${1}; shift
local g egroups_arr
IFS="," read -r -a egroups_arr <<<"${egroups}"
if [[ ${#egroups_arr[@]} -gt 0 ]] ; then
@@ -229,8 +247,8 @@ enewgroup() {
_assert_pkg_ebuild_phase ${FUNCNAME}
local force_gid=
- while [[ $1 == -* ]]; do
- case $1 in
+ while [[ ${1} == -* ]]; do
+ case ${1} in
-F) force_gid=1;;
*) die "${FUNCNAME}: invalid option ${1}";;
esac
@@ -238,9 +256,9 @@ enewgroup() {
done
# get the group
- local egroup=$1; shift
+ local egroup=${1}; shift
if [[ -z ${egroup} ]] ; then
- eerror "No group specified !"
+ eerror "No group specified!"
die "Cannot call enewgroup without a group"
fi
@@ -251,7 +269,7 @@ enewgroup() {
elog "Adding group '${egroup}' to your system ..."
# handle gid
- local egid=$1; shift
+ local egid=${1}; shift
if [[ -n ${egid} && ${egid} != -1 ]] ; then
if [[ ${egid} -gt 0 ]] ; then
if [[ -n $(egetent group ${egid}) ]] ; then
@@ -259,7 +277,7 @@ enewgroup() {
egid="next available; requested gid taken"
fi
else
- eerror "Groupid given but is not greater than 0 !"
+ eerror "Groupid given but is not greater than 0!"
die "${egid} is not a valid GID"
fi
else
@@ -323,9 +341,9 @@ esethome() {
_assert_pkg_ebuild_phase ${FUNCNAME}
# get the username
- local euser=$1; shift
+ local euser=${1}; shift
if [[ -z ${euser} ]] ; then
- eerror "No username specified !"
+ eerror "No username specified!"
die "Cannot call esethome without a username"
fi
@@ -336,9 +354,9 @@ esethome() {
fi
# handle homedir
- local ehome=$1; shift
+ local ehome=${1}; shift
if [[ -z ${ehome} ]] ; then
- eerror "No home directory specified !"
+ eerror "No home directory specified!"
die "Cannot call esethome without a home directory or '-1'"
fi
@@ -392,9 +410,9 @@ esetshell() {
_assert_pkg_ebuild_phase ${FUNCNAME}
# get the username
- local euser=$1; shift
+ local euser=${1}; shift
if [[ -z ${euser} ]] ; then
- eerror "No username specified !"
+ eerror "No username specified!"
die "Cannot call esetshell without a username"
fi
@@ -405,9 +423,9 @@ esetshell() {
fi
# handle shell
- local eshell=$1; shift
+ local eshell=${1}; shift
if [[ -z ${eshell} ]] ; then
- eerror "No shell specified !"
+ eerror "No shell specified!"
die "Cannot call esetshell without a shell or '-1'"
fi
@@ -452,9 +470,9 @@ esetcomment() {
_assert_pkg_ebuild_phase ${FUNCNAME}
# get the username
- local euser=$1; shift
+ local euser=${1}; shift
if [[ -z ${euser} ]] ; then
- eerror "No username specified !"
+ eerror "No username specified!"
die "Cannot call esetcomment without a username"
fi
@@ -465,9 +483,9 @@ esetcomment() {
fi
# handle comment
- local ecomment=$1; shift
+ local ecomment=${1}; shift
if [[ -z ${ecomment} ]] ; then
- eerror "No comment specified !"
+ eerror "No comment specified!"
die "Cannot call esetcomment without a comment"
fi
@@ -511,7 +529,7 @@ esetgroups() {
[[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} "
# get the username
- local euser=$1; shift
+ local euser=${1}; shift
# lets see if the username already exists
if [[ -z $(egetent passwd "${euser}") ]] ; then
@@ -520,7 +538,7 @@ esetgroups() {
fi
# handle group
- local egroups=$1; shift
+ local egroups=${1}; shift
local g egroups_arr=()
IFS="," read -r -a egroups_arr <<<"${egroups}"
diff --git a/eclass/verify-sig.eclass b/eclass/verify-sig.eclass
index e3ef7f2402..dadfd456e1 100644
--- a/eclass/verify-sig.eclass
+++ b/eclass/verify-sig.eclass
@@ -1,10 +1,10 @@
-# Copyright 2020 Gentoo Authors
+# Copyright 2020-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: verify-sig.eclass
# @MAINTAINER:
# Michał Górny
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
# @BLURB: Eclass to verify upstream signatures on distfiles
# @DESCRIPTION:
# verify-sig eclass provides a streamlined approach to verifying
@@ -20,7 +20,15 @@
# signatures to SRC_URI and set VERIFY_SIG_OPENPGP_KEY_PATH. The eclass
# provides verify-sig USE flag to toggle the verification.
#
+# If you need to use signify, you may want to copy distfiles into WORKDIR to
+# work around "Too many levels of symbolic links" error.
+#
+# A more complete guide can be found at:
+# https://mgorny.pl/articles/verify-sig-by-example.html
+#
+# @EXAMPLE:
# Example use:
+#
# @CODE
# inherit verify-sig
#
@@ -29,18 +37,12 @@
# BDEPEND="
# verify-sig? ( app-crypt/openpgp-keys-example )"
#
-# VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/example.asc
+# VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/example.asc
# @CODE
-case "${EAPI:-0}" in
- 0|1|2|3|4|5|6)
- die "Unsupported EAPI=${EAPI} (obsolete) for ${ECLASS}"
- ;;
- 7)
- ;;
- *)
- die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
- ;;
+case ${EAPI} in
+ 7|8) ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
EXPORT_FUNCTIONS src_unpack
@@ -49,11 +51,30 @@ if [[ ! ${_VERIFY_SIG_ECLASS} ]]; then
IUSE="verify-sig"
-BDEPEND="
- verify-sig? (
- app-crypt/gnupg
- >=app-portage/gemato-16
- )"
+# @ECLASS-VARIABLE: VERIFY_SIG_METHOD
+# @PRE_INHERIT
+# @DESCRIPTION:
+# Signature verification method to use. The allowed value are:
+#
+# - openpgp -- verify PGP signatures using app-crypt/gnupg (the default)
+# - signify -- verify signatures with Ed25519 public key using app-crypt/signify
+: ${VERIFY_SIG_METHOD:=openpgp}
+
+case ${VERIFY_SIG_METHOD} in
+ openpgp)
+ BDEPEND="
+ verify-sig? (
+ app-crypt/gnupg
+ >=app-portage/gemato-16
+ )"
+ ;;
+ signify)
+ BDEPEND="verify-sig? ( app-crypt/signify )"
+ ;;
+ *)
+ die "${ECLASS}: unknown method '${VERIFY_SIG_METHOD}'"
+ ;;
+esac
# @ECLASS-VARIABLE: VERIFY_SIG_OPENPGP_KEY_PATH
# @DEFAULT_UNSET
@@ -61,6 +82,9 @@ BDEPEND="
# Path to key bundle used to perform the verification. This is required
# when using default src_unpack. Alternatively, the key path can be
# passed directly to the verification functions.
+#
+# NB: this variable is also used for non-OpenPGP signatures. The name
+# contains "OPENPGP" for historical reasons.
# @ECLASS-VARIABLE: VERIFY_SIG_OPENPGP_KEYSERVER
# @DEFAULT_UNSET
@@ -68,6 +92,8 @@ BDEPEND="
# Keyserver used to refresh keys. If not specified, the keyserver
# preference from the key will be respected. If no preference
# is specified by the key, the GnuPG default will be used.
+#
+# Supported for OpenPGP only.
# @ECLASS-VARIABLE: VERIFY_SIG_OPENPGP_KEY_REFRESH
# @USER_VARIABLE
@@ -75,6 +101,8 @@ BDEPEND="
# Attempt to refresh keys via WKD/keyserver. Set it to "yes"
# in make.conf to enable. Note that this requires working Internet
# connection.
+#
+# Supported for OpenPGP only.
: ${VERIFY_SIG_OPENPGP_KEY_REFRESH:=no}
# @FUNCTION: verify-sig_verify_detached
@@ -94,9 +122,14 @@ verify-sig_verify_detached() {
local extra_args=()
[[ ${VERIFY_SIG_OPENPGP_KEY_REFRESH} == yes ]] || extra_args+=( -R )
- [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]] && extra_args+=(
- --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}"
- )
+ if [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]]; then
+ [[ ${VERIFY_SIG_METHOD} == openpgp ]] ||
+ die "${FUNCNAME}: VERIFY_SIG_OPENPGP_KEYSERVER is not supported"
+
+ extra_args+=(
+ --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}"
+ )
+ fi
# GPG upstream knows better than to follow the spec, so we can't
# override this directory. However, there is a clean fallback
@@ -106,9 +139,17 @@ verify-sig_verify_detached() {
local filename=${file##*/}
[[ ${file} == - ]] && filename='(stdin)'
einfo "Verifying ${filename} ..."
- gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \
- gpg --verify "${sig}" "${file}" ||
- die "PGP signature verification failed"
+ case ${VERIFY_SIG_METHOD} in
+ openpgp)
+ gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \
+ gpg --verify "${sig}" "${file}" ||
+ die "PGP signature verification failed"
+ ;;
+ signify)
+ signify -V -p "${key}" -m "${file}" -x "${sig}" ||
+ die "Signify signature verification failed"
+ ;;
+ esac
}
# @FUNCTION: verify-sig_verify_message
@@ -130,9 +171,14 @@ verify-sig_verify_message() {
local extra_args=()
[[ ${VERIFY_SIG_OPENPGP_KEY_REFRESH} == yes ]] || extra_args+=( -R )
- [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]] && extra_args+=(
- --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}"
- )
+ if [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]]; then
+ [[ ${VERIFY_SIG_METHOD} == openpgp ]] ||
+ die "${FUNCNAME}: VERIFY_SIG_OPENPGP_KEYSERVER is not supported"
+
+ extra_args+=(
+ --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}"
+ )
+ fi
# GPG upstream knows better than to follow the spec, so we can't
# override this directory. However, there is a clean fallback
@@ -142,30 +188,42 @@ verify-sig_verify_message() {
local filename=${file##*/}
[[ ${file} == - ]] && filename='(stdin)'
einfo "Verifying ${filename} ..."
- gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \
- gpg --verify --output="${output_file}" "${file}" ||
- die "PGP signature verification failed"
+ case ${VERIFY_SIG_METHOD} in
+ openpgp)
+ gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \
+ gpg --verify --output="${output_file}" "${file}" ||
+ die "PGP signature verification failed"
+ ;;
+ signify)
+ signify -V -e -p "${key}" -m "${output_file}" -x "${file}" ||
+ die "Signify signature verification failed"
+ ;;
+ esac
}
-# @FUNCTION: verify-sig_verify_signed_checksums
-# @USAGE: []
+# @FUNCTION: verify-sig_verify_unsigned_checksums
+# @USAGE:
# @DESCRIPTION:
# Verify the checksums for all files listed in the space-separated list
-# (akin to ${A}) using a PGP-signed .
-# specified the checksum algorithm (e.g. sha256). can either
-# be passed directly, or it defaults to VERIFY_SIG_OPENPGP_KEY_PATH.
+# (akin to ${A}) using a . specifies
+# the checksum algorithm (e.g. sha256). can be "-"
+# for stdin.
#
-# The function dies if PGP verification fails, the checksum file
-# contains unsigned data, one of the files do not match checksums
-# or are missing from the checksum file.
-verify-sig_verify_signed_checksums() {
+# The function dies if one of the files does not match checksums or
+# is missing from the checksum file.
+#
+# Note that this function itself can only verify integrity of the files.
+# In order to verify their authenticity, the must
+# be verified against a signature first, e.g. using
+# verify-sig_verify_detached. If it contains inline signature, use
+# verify-sig_verify_signed_checksums instead.
+verify-sig_verify_unsigned_checksums() {
local checksum_file=${1}
local algo=${2}
local files=()
read -r -d '' -a files <<<"${3}"
- local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
-
local chksum_prog chksum_len
+
case ${algo} in
sha256)
chksum_prog=sha256sum
@@ -176,11 +234,13 @@ verify-sig_verify_signed_checksums() {
;;
esac
- [[ -n ${key} ]] ||
- die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
-
+ [[ ${checksum_file} == - ]] && checksum_file=/dev/stdin
local checksum filename junk ret=0 count=0
while read -r checksum filename junk; do
+ if [[ ${checksum} == "-----BEGIN" ]]; then
+ die "${FUNCNAME}: PGP armor found, use verify-sig_verify_signed_checksums instead"
+ fi
+
[[ ${#checksum} -eq ${chksum_len} ]] || continue
[[ -z ${checksum//[0-9a-f]} ]] || continue
has "${filename}" "${files[@]}" || continue
@@ -192,7 +252,7 @@ verify-sig_verify_signed_checksums() {
else
ret=1
fi
- done < <(verify-sig_verify_message "${checksum_file}" - "${key}")
+ done < "${checksum_file}"
[[ ${ret} -eq 0 ]] ||
die "${FUNCNAME}: at least one file did not verify successfully"
@@ -200,6 +260,56 @@ verify-sig_verify_signed_checksums() {
die "${FUNCNAME}: checksums for some of the specified files were missing"
}
+# @FUNCTION: _gpg_verify_signed_checksums
+# @INTERNAL
+# @USAGE: []
+# @DESCRIPTION:
+# GnuPG-specific function to verify a signed checksums list.
+_gpg_verify_signed_checksums() {
+ local checksum_file=${1}
+ local algo=${2}
+ local files=${3}
+ local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
+
+ verify-sig_verify_unsigned_checksums - "${algo}" "${files}" < <(
+ verify-sig_verify_message "${checksum_file}" - "${key}"
+ )
+}
+
+# @FUNCTION: verify-sig_verify_signed_checksums
+# @USAGE: []
+# @DESCRIPTION:
+# Verify the checksums for all files listed in the space-separated list
+# (akin to ${A}) using a signed . specifies
+# the checksum algorithm (e.g. sha256). can either be passed
+# directly, or it defaults to VERIFY_SIG_OPENPGP_KEY_PATH.
+#
+# The function dies if signature verification fails, the checksum file
+# contains unsigned data, one of the files do not match checksums or
+# are missing from the checksum file.
+verify-sig_verify_signed_checksums() {
+ local checksum_file=${1}
+ local algo=${2}
+ local files=()
+ read -r -d '' -a files <<<"${3}"
+ local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}}
+
+ [[ -n ${key} ]] ||
+ die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset"
+
+ case ${VERIFY_SIG_METHOD} in
+ openpgp)
+ _gpg_verify_signed_checksums \
+ "${checksum_file}" "${algo}" "${files[@]}" "${key}"
+ ;;
+ signify)
+ signify -C -p "${key}" \
+ -x "${checksum_file}" "${files[@]}" ||
+ die "Signify signature verification failed"
+ ;;
+ esac
+}
+
# @FUNCTION: verify-sig_src_unpack
# @DESCRIPTION:
# Default src_unpack override that verifies signatures for all
diff --git a/net-analyzer/tcpdump/Manifest b/net-analyzer/tcpdump/Manifest
index 04a763867c..713c659ac1 100644
--- a/net-analyzer/tcpdump/Manifest
+++ b/net-analyzer/tcpdump/Manifest
@@ -1,2 +1,2 @@
-DIST tcpdump-4.10.0rc1.tar.gz 1823212 BLAKE2B aa274e548163eacb09a98edbaa1127dbb06b6fe2f6eb23ffa968a577081d9d9323c339a885a198ee08d7dced04302cf50301ca575fbe95e082a6ed89e115de05 SHA512 b226ca569eeda7cee45fc7a1e42766f404d55ebca8133da544ecd75f975701532346f0cfdbefd4fc708fca12a8d094790c99a7276bd9b563885ef036a3912493
-DIST tcpdump-4.9.3.tar.gz 2333119 BLAKE2B 21e13fc40d98cfac0bbd5513580cf98313df1f8fea24c48f045f70d494aea3e75230b8481049660c109f9179015c3164f3e3b31acc76c0bfb1f2da5039f1834e SHA512 3aec673f78b996a4df884b1240e5d0a26a2ca81ee7aca8a2e6d50255bb53476e008a5ced4409e278a956710d8a4d31d85bbb800c9f1aab92b0b1046b59292a22
+DIST tcpdump-4.99.1-upstream.tar.gz 2014324 BLAKE2B 0a10fe68afdfe80d3e7e661352fcaf1c47702df27fbed959f52fb0ec81543a1d4ce6b0de16a8b081de48dd43e09a13f5e1f0fb11d7590f92cbff29dc511bea12 SHA512 53d31355e1a6ef5a65bb3bf72454169fc80adf973a327a5768840e6ccf0550fbeb3c8a41f959635076d871df0619680321910a3a97879607f481cdaa8b7ceda7
+DIST tcpdump-4.99.1-upstream.tar.gz.sig 442 BLAKE2B 9a80b1796ef777bd06d0b8953fe1ff446431d0ff1dffcd58e29a0b771f6734f70f3f0da7c36a1eaa1b6e57719d79c601872a84b7734208a7e8951cad9aca86ee SHA512 b438643701efbbb5579d9d51ed48756a47dd644e0acb10b0edff6d04f3ae4cea6528b40820a656407b73f983b2a634e0165a6c8c0fca3b557394a14e2f2384ab
diff --git a/net-analyzer/tcpdump/metadata.xml b/net-analyzer/tcpdump/metadata.xml
index 926985b6a8..9060057831 100644
--- a/net-analyzer/tcpdump/metadata.xml
+++ b/net-analyzer/tcpdump/metadata.xml
@@ -1,13 +1,17 @@
-
-
+
+
-
- netmon@gentoo.org
- Gentoo network monitoring and analysis project
+
+ zlogene@gentoo.org
+ Mikle Kolyada
+
+
+ sam@gentoo.org
+ Sam James
cpe:/a:tcpdump:tcpdump
diff --git a/net-analyzer/tcpdump/tcpdump-4.10.0_rc1.ebuild b/net-analyzer/tcpdump/tcpdump-4.10.0_rc1.ebuild
deleted file mode 100644
index c2cf8713ea..0000000000
--- a/net-analyzer/tcpdump/tcpdump-4.10.0_rc1.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools user
-
-DESCRIPTION="A Tool for network monitoring and data acquisition"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/tcpdump
-"
-LICENSE="BSD"
-SRC_URI="
- https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz
-"
-
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="+drop-root libressl +smi +ssl +samba suid test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="test? ( samba )"
-
-RDEPEND="
- net-libs/libpcap
- drop-root? ( sys-libs/libcap-ng )
- smi? ( net-libs/libsmi )
- ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.6m:0= )
- libressl? ( dev-libs/libressl:= )
- )
-"
-BDEPEND="
- drop-root? ( virtual/pkgconfig )
-"
-DEPEND="
- ${RDEPEND}
- test? (
- >=net-libs/libpcap-1.9.1
- dev-lang/perl
- )
-"
-PATCHES=(
- "${FILESDIR}"/${PN}-9999-libdir.patch
-)
-S=${WORKDIR}/${PN}-${P/_}
-
-pkg_setup() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable samba smb) \
- $(use_with drop-root cap-ng) \
- $(use_with drop-root chroot '') \
- $(use_with smi) \
- $(use_with ssl crypto "${ESYSROOT}/usr") \
- $(usex drop-root "--with-user=tcpdump" "")
-}
-
-src_test() {
- if [[ ${EUID} -ne 0 ]] || ! use drop-root; then
- emake check
- else
- ewarn "If you want to run the test suite, make sure you either"
- ewarn "set FEATURES=userpriv or set USE=-drop-root"
- fi
-}
-
-src_install() {
- dosbin tcpdump
- doman tcpdump.1
- dodoc *.awk
- dodoc CHANGES CREDITS README.md
-
- if use suid; then
- fowners root:tcpdump /usr/sbin/tcpdump
- fperms 4110 /usr/sbin/tcpdump
- fi
-}
-
-pkg_preinst() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
-pkg_postinst() {
- use suid && elog "To let normal users run tcpdump add them into tcpdump group."
-}
diff --git a/net-analyzer/tcpdump/tcpdump-4.9.3-r1.ebuild b/net-analyzer/tcpdump/tcpdump-4.9.3-r1.ebuild
deleted file mode 100644
index e23d799be4..0000000000
--- a/net-analyzer/tcpdump/tcpdump-4.9.3-r1.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools user
-
-DESCRIPTION="A Tool for network monitoring and data acquisition"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/tcpdump
-"
-SRC_URI="
- https://www.tcpdump.org/release/${P}.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="+drop-root libressl smi ssl samba suid test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- net-libs/libpcap
- drop-root? ( sys-libs/libcap-ng )
- smi? ( net-libs/libsmi )
- ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.6m:0= )
- libressl? ( dev-libs/libressl:= )
- )
-"
-DEPEND="
- ${RDEPEND}
- test? (
- >=net-libs/libpcap-1.9.1
- dev-lang/perl
- )
-"
-PATCHES=(
- "${FILESDIR}"/${PN}-9999-libdir.patch
-)
-
-pkg_setup() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable samba smb) \
- $(use_with drop-root cap-ng) \
- $(use_with drop-root chroot '') \
- $(use_with smi) \
- $(use_with ssl crypto "${ESYSROOT}/usr") \
- $(usex drop-root "--with-user=tcpdump" "")
-}
-
-src_test() {
- if [[ ${EUID} -ne 0 ]] || ! use drop-root; then
- emake check
- else
- ewarn "If you want to run the test suite, make sure you either"
- ewarn "set FEATURES=userpriv or set USE=-drop-root"
- fi
-}
-
-src_install() {
- dosbin tcpdump
- doman tcpdump.1
- dodoc *.awk
- dodoc CHANGES CREDITS README.md
-
- if use suid; then
- fowners root:tcpdump /usr/sbin/tcpdump
- fperms 4110 /usr/sbin/tcpdump
- fi
-}
-
-pkg_preinst() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
-pkg_postinst() {
- use suid && elog "To let normal users run tcpdump add them into tcpdump group."
-}
diff --git a/net-analyzer/tcpdump/tcpdump-4.9.3.ebuild b/net-analyzer/tcpdump/tcpdump-4.9.3.ebuild
deleted file mode 100644
index 3731233ad9..0000000000
--- a/net-analyzer/tcpdump/tcpdump-4.9.3.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit flag-o-matic toolchain-funcs user
-
-DESCRIPTION="A Tool for network monitoring and data acquisition"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/tcpdump
-"
-SRC_URI="
- https://www.tcpdump.org/release/${P}.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="+drop-root libressl smi ssl samba suid test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- drop-root? ( sys-libs/libcap-ng )
- net-libs/libpcap
- smi? ( net-libs/libsmi )
- ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.6m:0= )
- libressl? ( dev-libs/libressl:= )
- )
-"
-DEPEND="
- ${RDEPEND}
- drop-root? ( virtual/pkgconfig )
- test? (
- >=net-libs/libpcap-1.9.1
- dev-lang/perl
- app-arch/sharutils
- )
-"
-
-pkg_setup() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
-src_configure() {
- if use drop-root; then
- append-cppflags -DHAVE_CAP_NG_H
- export LIBS=$( $(tc-getPKG_CONFIG) --libs libcap-ng )
- fi
-
- econf \
- $(use_enable samba smb) \
- $(use_with drop-root chroot '') \
- $(use_with smi) \
- $(use_with ssl crypto "${ESYSROOT}/usr") \
- $(usex drop-root "--with-user=tcpdump" "")
-}
-
-src_test() {
- if [[ ${EUID} -ne 0 ]] || ! use drop-root; then
- emake check
- else
- ewarn "If you want to run the test suite, make sure you either"
- ewarn "set FEATURES=userpriv or set USE=-drop-root"
- fi
-}
-
-src_install() {
- dosbin tcpdump
- doman tcpdump.1
- dodoc *.awk
- dodoc CHANGES CREDITS README.md
-
- if use suid; then
- fowners root:tcpdump /usr/sbin/tcpdump
- fperms 4110 /usr/sbin/tcpdump
- fi
-}
-
-pkg_preinst() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
-pkg_postinst() {
- use suid && elog "To let normal users run tcpdump add them into tcpdump group."
-}
diff --git a/net-analyzer/tcpdump/tcpdump-4.99.1.ebuild b/net-analyzer/tcpdump/tcpdump-4.99.1.ebuild
new file mode 100644
index 0000000000..6dc1d3f438
--- /dev/null
+++ b/net-analyzer/tcpdump/tcpdump-4.99.1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="A tool for network monitoring and data acquisition"
+HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpdump"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
+ inherit verify-sig
+
+ # Note: drop -upstream on bump, this is just because we switched to the official
+ # distfiles for verify-sig
+ SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz"
+ SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )"
+
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+drop-root +smi +ssl +samba suid test"
+REQUIRED_USE="test? ( samba )"
+
+RESTRICT="!test? ( test )"
+# Assorted failures: bug #768498
+#RESTRICT="test"
+
+RDEPEND="
+ >=net-libs/libpcap-1.10.1
+ drop-root? (
+ acct-group/pcap
+ acct-user/pcap
+ sys-libs/libcap-ng
+ )
+ smi? ( net-libs/libsmi )
+ ssl? (
+ >=dev-libs/openssl-0.9.6m:0=
+ )
+ suid? (
+ acct-group/pcap
+ acct-user/pcap
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-lang/perl
+ )
+"
+BDEPEND="drop-root? ( virtual/pkgconfig )"
+
+if [[ ${PV} != *9999* ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-9999-libdir.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable samba smb) \
+ $(use_with drop-root cap-ng) \
+ $(use_with drop-root chroot '') \
+ $(use_with smi) \
+ $(use_with ssl crypto "${ESYSROOT}/usr") \
+ $(usex drop-root "--with-user=pcap" "")
+}
+
+src_test() {
+ if [[ ${EUID} -ne 0 ]] || ! use drop-root ; then
+ emake check
+ else
+ ewarn "If you want to run the test suite, make sure you either"
+ ewarn "set FEATURES=userpriv or set USE=-drop-root"
+ fi
+}
+
+src_install() {
+ dosbin tcpdump
+ doman tcpdump.1
+ dodoc *.awk
+ dodoc CHANGES CREDITS README.md
+
+ if use suid ; then
+ fowners root:pcap /usr/sbin/tcpdump
+ fperms 4110 /usr/sbin/tcpdump
+ fi
+}
+
+pkg_postinst() {
+ use suid && elog "To let normal users run tcpdump, add them to the pcap group."
+}
diff --git a/net-analyzer/tcpdump/tcpdump-9999.ebuild b/net-analyzer/tcpdump/tcpdump-9999.ebuild
index 8352b63b1c..ac9b01e80a 100644
--- a/net-analyzer/tcpdump/tcpdump-9999.ebuild
+++ b/net-analyzer/tcpdump/tcpdump-9999.ebuild
@@ -1,56 +1,69 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools git-r3 user
-DESCRIPTION="A Tool for network monitoring and data acquisition"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/tcpdump
-"
-LICENSE="BSD"
-EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump"
+inherit autotools
+
+DESCRIPTION="A tool for network monitoring and data acquisition"
+HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpdump"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
+ inherit verify-sig
+
+ SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz"
+ SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+LICENSE="BSD"
SLOT="0"
-KEYWORDS=""
-IUSE="+drop-root libressl +smi +ssl +samba suid test"
-RESTRICT="!test? ( test )"
+IUSE="+drop-root +smi +ssl +samba suid test"
REQUIRED_USE="test? ( samba )"
+# Assorted failures: bug #768498
+RESTRICT="test"
+
RDEPEND="
- net-libs/libpcap
- drop-root? ( sys-libs/libcap-ng )
+ >=net-libs/libpcap-1.10.1
+ drop-root? (
+ acct-group/pcap
+ acct-user/pcap
+ sys-libs/libcap-ng
+ )
smi? ( net-libs/libsmi )
ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.6m:0= )
- libressl? ( dev-libs/libressl:= )
+ >=dev-libs/openssl-0.9.6m:0=
+ )
+ suid? (
+ acct-group/pcap
+ acct-user/pcap
)
-"
-BDEPEND="
- drop-root? ( virtual/pkgconfig )
"
DEPEND="
${RDEPEND}
test? (
- >=net-libs/libpcap-1.9.1
dev-lang/perl
)
"
+BDEPEND="drop-root? ( virtual/pkgconfig )"
+
+if [[ ${PV} != *9999* ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )"
+fi
+
PATCHES=(
"${FILESDIR}"/${PN}-9999-libdir.patch
)
-pkg_setup() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
src_prepare() {
default
-
eautoreconf
}
@@ -61,11 +74,11 @@ src_configure() {
$(use_with drop-root chroot '') \
$(use_with smi) \
$(use_with ssl crypto "${ESYSROOT}/usr") \
- $(usex drop-root "--with-user=tcpdump" "")
+ $(usex drop-root "--with-user=pcap" "")
}
src_test() {
- if [[ ${EUID} -ne 0 ]] || ! use drop-root; then
+ if [[ ${EUID} -ne 0 ]] || ! use drop-root ; then
emake check
else
ewarn "If you want to run the test suite, make sure you either"
@@ -79,19 +92,12 @@ src_install() {
dodoc *.awk
dodoc CHANGES CREDITS README.md
- if use suid; then
- fowners root:tcpdump /usr/sbin/tcpdump
+ if use suid ; then
+ fowners root:pcap /usr/sbin/tcpdump
fperms 4110 /usr/sbin/tcpdump
fi
}
-pkg_preinst() {
- if use drop-root || use suid; then
- enewgroup tcpdump
- enewuser tcpdump -1 -1 -1 tcpdump
- fi
-}
-
pkg_postinst() {
- use suid && elog "To let normal users run tcpdump add them into tcpdump group."
+ use suid && elog "To let normal users run tcpdump, add them to the pcap group."
}
diff --git a/net-dns/bind-tools/Manifest b/net-dns/bind-tools/Manifest
index 421d1ae8c6..fe9aee4cdc 100644
--- a/net-dns/bind-tools/Manifest
+++ b/net-dns/bind-tools/Manifest
@@ -1,6 +1,6 @@
-DIST bind-9.14.12.tar.gz 6318913 BLAKE2B 38cad65923666afa5d83434c43a1b5577fe9555ca637489f780996a1b439955169c859c690f6fb96b003976eca482fe57c9226797cda5b124dc2073a90ef0515 SHA512 f4e6c50cbe8fdb44cdd8e30b4560b6fe2fccd0fd5bde527a897a66e85065265da0d0aceb95af42d5568dea95d59e68574e5a486bbb7e6c5d0af275538c353ddf
-DIST bind-9.11.22.tar.gz 8248081 BLAKE2B d96be60f9f828385e3aaa2d9114480a533a90e420e6d3c57559681458a3ae7d962de85ad2dd6567a2fd601edade3114a80c3cc1e471dfc76cc0857957794c4be SHA512 8ed2ed661b87705bbb7ddde3076a132b4e53971d669600997abfa104404e0c8b4bf04cc04c6be1c2c701123db5e0d4645ab797e5a985a18f5a1d68824a3df3ed
-DIST bind-9.16.4.tar.xz 3465172 BLAKE2B 0787920793798ecc5d3197e1e51d41c14170f25608077af8275fd60502e2a6f5365670ca9e611a94a53517b6a0bd55cbb37ac37a4f01063fc409def4e34c39a8 SHA512 b1cf0607b0d7569ea594e02848eed601b8faf31c527fc17d379cfff3cd45c0c8b849364af0312e9b65bc14875aad87de379281603c150a07bf021ec740e92860
-DIST bind-9.16.5.tar.xz 3474044 BLAKE2B 6908ba2d86049bc684b4876d09fe799313f0f44cc1f2ed89f0143523b9fd2a863fd8791b650f7001a5be14acde9306b70dee8c0d25b3d0676aea1a4d2878958f SHA512 789fc19f60e81f67ef13ebacd030ea5d8f8cc42cf5f06a01ee2eefe9b7c6d3b10603a3a6a3df85b0e5d770fcf462ce8dddc3a7e5f7f2dab27aa5879ee5380eb7
-DIST bind-tools-9.16.4-manpages.tar.xz 54768 BLAKE2B bff3b680673a5ebd7aad151bafb5004ca18b2ecda680320aad8821468aa399f48da20746d0e49cdfc0b431d5aedefa621015430b743968c7967bf2a5e878d1e0 SHA512 1930f4c04ae8dbdf10380082c680d59320f9a3eca3a7cbca2cb4fa83f1d4b6b00cc62a43104deb45cc56fe2e1dcc5902d6176daf1545f35d35fe297676afe6ca
-DIST bind-9.16.6.tar.xz 3228368 BLAKE2B 0c2265fe0e006679733a4f7610b0c33bb8e2bd32caf26dca8cfedbea0e08df9e7665cbbbf5321199bd2e30b97ad5b0146ae4e8a9a78abadbe6d067bbd1ad8a3a SHA512 37f57db6d1633cc85a4d954a69bbb3372c65ac43fef965df5aee8dcdd32153bb5b0c6d0d5f00f353dd4464c71d74dc8e801937b930e2b8f6799fa77af5f243e0
+DIST bind-9.16.15.tar.xz 5025688 BLAKE2B 8b0723d46f812793f5a52b1ddacf21fe28e183ef8cd166eadf0af163280021fce7c0a6a560d28dacbc6dd4642e41eb5424b4de2c5ff1049a5cfa5d52e3df5beb SHA512 30dad6e2144b3ac53ef0a2d1ed3c8342120f148fc0eb6409113a6d5ed3444eecb917915fdf39c26fd223396fc1e873410a50da305f0b870864f7fbbdccec8033
+DIST bind-9.16.18.tar.xz 5023512 BLAKE2B 7766c1e6ab30ae42f0ba49d96fe0e2675e79aa01c48569d3cf5c122944319fbb88299a193ce06cc0aa67f6085fd80e29472fc7adc845e4bbb7ff6896dae87ed6 SHA512 6ba2f14324ebdc66d2a6d60e929fb47e170dd7662cf4b18ef3ad9da30a61b43c7d5539e931c483ab36e63ae0398aeed255fd672489fb332dccf182df9aa102f9
+DIST bind-9.16.21.tar.xz 5057816 BLAKE2B bc7de285b45084a4904aee7c5c3042c7a2075968f19ed76b932c976f86f60bc8bf0d6cce8889a9adf7e807c8151bd6088ef1b2b00460a4d1cff7a74bb2221d43 SHA512 2cb71e50600fd7409ca7b7e2e9cf4ef6668b07faad7980ac8060e6a76f30a315182d75534ad1dcfb740c225cdf727b2bd6aa9ceb24ab77ffff09b7b5d6eaca2d
+DIST bind-9.16.22.tar.xz 5059000 BLAKE2B c4853a8be268f9666f3677adf2e64c6d74f7df44d2dc05df544cead38c6c3b86489d25a66ccea6ce8ca89fa525a1848fe93a8aaa6bb1ee090aa189bf6aad40f3 SHA512 586fb4d5a656d6539033dcdfdd230b36465a2d2e6ada651c1f1548d062a9050e7a962af87e2a56931fe24c65586d29012d4a041dcddbb28f42b4d01fe291d9d1
+DIST bind-9.16.25.tar.xz 5086780 BLAKE2B cb62d0d4e25f508f1a77fae6a11ff144d2436346c45a936d572df4c843cd72ec81cffacd0a81dcb74eb73b8bca7d0762a5746baadda36f260b79b72eade24d18 SHA512 e43c0e59159d3a5642db051f3982d8767fb726426380c32960fefe4b9afd05708ed8f7e80a98b803a580b048e1a368c888e2dd5695fa5fcd7b8b75574a27cb62
+DIST bind-9.16.27.tar.xz 5084340 BLAKE2B 37b49ce81aa5122493a4feb2bb7be53c5d46ff2ce28456aec31ce1332520a09c10bb2293c736bffe7badbc2bc3d156c05f83367678bd101e17b99ca3ff69bebf SHA512 5c71f228db83aa8cc9e65466d6e5afca4a9f80c693358111a003fe09e1a14522175eb2b6a0f11e2a2cd4fdba01f2ae315de52e394a441b3861ca2a011e02af62
diff --git a/net-dns/bind-tools/bind-tools-9.16.6.ebuild b/net-dns/bind-tools/bind-tools-9.16.15.ebuild
similarity index 86%
rename from net-dns/bind-tools/bind-tools-9.16.6.ebuild
rename to net-dns/bind-tools/bind-tools-9.16.15.ebuild
index 52d2697f36..892235add4 100644
--- a/net-dns/bind-tools/bind-tools-9.16.6.ebuild
+++ b/net-dns/bind-tools/bind-tools-9.16.15.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
@@ -12,34 +12,34 @@ MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
HOMEPAGE="https://www.isc.org/software/bind"
-SRC_URI="https://downloads.isc.org/isc/bind9/${MY_PV}/${MY_P}.tar.xz"
+SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps doc gssapi idn ipv6 libedit readline xml"
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
COMMON_DEPEND="
dev-libs/libuv:=
caps? ( sys-libs/libcap )
- !libressl? ( dev-libs/openssl:= )
- libressl? ( dev-libs/libressl:= )
+ dev-libs/openssl:=
xml? ( dev-libs/libxml2 )
idn? ( net-dns/libidn2:= )
gssapi? ( virtual/krb5 )
libedit? ( dev-libs/libedit )
!libedit? (
readline? ( sys-libs/readline:= )
- )"
+ )
+"
DEPEND="${COMMON_DEPEND}"
-
RDEPEND="${COMMON_DEPEND}"
# sphinx required for man-page and html creation
BDEPEND="
doc? ( dev-python/sphinx )
- virtual/pkgconfig"
+ virtual/pkgconfig
+"
S="${WORKDIR}/${MY_P}"
diff --git a/net-dns/bind-tools/bind-tools-9.16.5.ebuild b/net-dns/bind-tools/bind-tools-9.16.18.ebuild
similarity index 90%
rename from net-dns/bind-tools/bind-tools-9.16.5.ebuild
rename to net-dns/bind-tools/bind-tools-9.16.18.ebuild
index a881baa869..fdd10e501a 100644
--- a/net-dns/bind-tools/bind-tools-9.16.5.ebuild
+++ b/net-dns/bind-tools/bind-tools-9.16.18.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
@@ -16,30 +16,30 @@ SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps doc gssapi idn ipv6 libedit readline xml"
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
COMMON_DEPEND="
dev-libs/libuv:=
caps? ( sys-libs/libcap )
- !libressl? ( dev-libs/openssl:= )
- libressl? ( dev-libs/libressl:= )
+ dev-libs/openssl:=
xml? ( dev-libs/libxml2 )
idn? ( net-dns/libidn2:= )
gssapi? ( virtual/krb5 )
libedit? ( dev-libs/libedit )
!libedit? (
readline? ( sys-libs/readline:= )
- )"
+ )
+"
DEPEND="${COMMON_DEPEND}"
-
RDEPEND="${COMMON_DEPEND}"
# sphinx required for man-page and html creation
BDEPEND="
doc? ( dev-python/sphinx )
- virtual/pkgconfig"
+ virtual/pkgconfig
+"
S="${WORKDIR}/${MY_P}"
diff --git a/net-dns/bind-tools/bind-tools-9.16.4.ebuild b/net-dns/bind-tools/bind-tools-9.16.21.ebuild
similarity index 86%
rename from net-dns/bind-tools/bind-tools-9.16.4.ebuild
rename to net-dns/bind-tools/bind-tools-9.16.21.ebuild
index decfea5981..fdd10e501a 100644
--- a/net-dns/bind-tools/bind-tools-9.16.4.ebuild
+++ b/net-dns/bind-tools/bind-tools-9.16.21.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
@@ -12,35 +12,34 @@ MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
HOMEPAGE="https://www.isc.org/software/bind"
-SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz
- https://dev.gentoo.org/~chutzpah/dist/misc/${P}-manpages.tar.xz"
+SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps doc gssapi idn ipv6 libedit readline xml"
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
COMMON_DEPEND="
dev-libs/libuv:=
caps? ( sys-libs/libcap )
- !libressl? ( dev-libs/openssl:= )
- libressl? ( dev-libs/libressl:= )
+ dev-libs/openssl:=
xml? ( dev-libs/libxml2 )
idn? ( net-dns/libidn2:= )
gssapi? ( virtual/krb5 )
libedit? ( dev-libs/libedit )
!libedit? (
readline? ( sys-libs/readline:= )
- )"
+ )
+"
DEPEND="${COMMON_DEPEND}"
-
RDEPEND="${COMMON_DEPEND}"
# sphinx required for man-page and html creation
-BDEPEND="${PYTHON_DEPS}
+BDEPEND="
doc? ( dev-python/sphinx )
- virtual/pkgconfig"
+ virtual/pkgconfig
+"
S="${WORKDIR}/${MY_P}"
diff --git a/net-dns/bind-tools/bind-tools-9.14.12.ebuild b/net-dns/bind-tools/bind-tools-9.16.22.ebuild
similarity index 72%
rename from net-dns/bind-tools/bind-tools-9.14.12.ebuild
rename to net-dns/bind-tools/bind-tools-9.16.22.ebuild
index 61d9c2df8c..2d254f1dda 100644
--- a/net-dns/bind-tools/bind-tools-9.14.12.ebuild
+++ b/net-dns/bind-tools/bind-tools-9.16.22.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
@@ -12,30 +12,34 @@ MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
HOMEPAGE="https://www.isc.org/software/bind"
-SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.gz"
+SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps doc gssapi idn ipv6 libedit readline xml"
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
COMMON_DEPEND="
+ dev-libs/libuv:=
caps? ( sys-libs/libcap )
- !libressl? ( dev-libs/openssl:= )
- libressl? ( dev-libs/libressl:= )
+ dev-libs/openssl:=
xml? ( dev-libs/libxml2 )
idn? ( net-dns/libidn2:= )
gssapi? ( virtual/krb5 )
libedit? ( dev-libs/libedit )
!libedit? (
readline? ( sys-libs/readline:= )
- )"
+ )
+"
DEPEND="${COMMON_DEPEND}"
-
RDEPEND="${COMMON_DEPEND}"
-BDEPEND="virtual/pkgconfig"
+# sphinx required for man-page and html creation
+BDEPEND="
+ doc? ( dev-python/sphinx )
+ virtual/pkgconfig
+"
S="${WORKDIR}/${MY_P}"
@@ -64,8 +68,10 @@ src_configure() {
--without-libjson
--without-zlib
--without-lmdb
- --with-openssl="${EPREFIX}"/usr
- $(use_with idn libidn2)
+ --without-maxminddb
+ --disable-geoip
+ --with-openssl="${ESYSROOT}"/usr
+ $(use_with idn libidn2 "${ESYSROOT}"/usr)
$(use_with xml libxml2)
$(use_with gssapi)
$(use_with readline)
@@ -104,35 +110,39 @@ src_compile() {
emake AR="${AR}" -C bin/dig/
emake AR="${AR}" -C bin/nsupdate/
emake AR="${AR}" -C bin/dnssec/
+ emake -C doc/man/ man $(usev doc)
}
src_install() {
+ local man_dir="${S}/doc/man"
+ local html_dir="${man_dir}/_build/html"
+
dodoc README CHANGES
cd "${S}"/bin/delv || die
dobin delv
- doman delv.1
+ doman ${man_dir}/delv.1
cd "${S}"/bin/dig || die
dobin dig host nslookup
- doman {dig,host,nslookup}.1
+ doman ${man_dir}/{dig,host,nslookup}.1
cd "${S}"/bin/nsupdate || die
dobin nsupdate
- doman nsupdate.1
+ doman ${man_dir}/nsupdate.1
if use doc; then
docinto html
- dodoc nsupdate.html
+ dodoc ${html_dir}/nsupdate.html
fi
cd "${S}"/bin/dnssec || die
for tool in dsfromkey importkey keyfromlabel keygen \
revoke settime signzone verify; do
dobin dnssec-"${tool}"
- doman dnssec-"${tool}".8
+ doman ${man_dir}/dnssec-"${tool}".8
if use doc; then
docinto html
- dodoc dnssec-"${tool}".html
+ dodoc ${html_dir}/dnssec-"${tool}".html
fi
done
}
diff --git a/net-dns/bind-tools/bind-tools-9.16.25.ebuild b/net-dns/bind-tools/bind-tools-9.16.25.ebuild
new file mode 100644
index 0000000000..95720a1a0c
--- /dev/null
+++ b/net-dns/bind-tools/bind-tools-9.16.25.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic toolchain-funcs
+
+MY_PN=${PN//-tools}
+MY_PV=${PV/_p/-P}
+MY_PV=${MY_PV/_rc/rc}
+MY_P="${MY_PN}-${MY_PV}"
+
+DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
+HOMEPAGE="https://www.isc.org/software/bind"
+SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps doc gssapi idn ipv6 libedit readline xml"
+# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
+
+COMMON_DEPEND="
+ dev-libs/libuv:=
+ caps? ( sys-libs/libcap )
+ dev-libs/openssl:=
+ xml? ( dev-libs/libxml2 )
+ idn? ( net-dns/libidn2:= )
+ gssapi? ( virtual/krb5 )
+ libedit? ( dev-libs/libedit )
+ !libedit? (
+ readline? ( sys-libs/readline:= )
+ )
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+# sphinx required for man-page and html creation
+BDEPEND="
+ doc? ( dev-python/sphinx )
+ virtual/pkgconfig
+"
+
+S="${WORKDIR}/${MY_P}"
+
+# bug 479092, requires networking
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ export LDFLAGS="${LDFLAGS} -L${EPREFIX}/usr/$(get_libdir)"
+
+ # Disable tests for now, bug 406399
+ sed -i '/^SUBDIRS/s:tests::' bin/Makefile.in lib/Makefile.in || die
+
+ # bug #220361
+ rm aclocal.m4 || die
+ rm -rf libtool.m4/ || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}"/var
+ --without-python
+ --without-libjson
+ --without-zlib
+ --without-lmdb
+ --without-maxminddb
+ --disable-geoip
+ --with-openssl="${ESYSROOT}"/usr
+ $(use_with idn libidn2 "${ESYSROOT}"/usr)
+ $(use_with xml libxml2)
+ $(use_with gssapi)
+ $(use_with readline)
+ $(use_enable caps linux-caps)
+ AR="$(type -P $(tc-getAR))"
+ )
+
+ # bug 607400
+ if use libedit ; then
+ myeconfargs+=( --with-readline=-ledit )
+ elif use readline ; then
+ myeconfargs+=( --with-readline=-lreadline )
+ else
+ myeconfargs+=( --without-readline )
+ fi
+
+ # bug 344029
+ append-cflags "-DDIG_SIGCHASE"
+
+ # to expose CMSG_* macros from sys/sockets.h
+ [[ ${CHOST} == *-solaris* ]] && append-cflags "-D_XOPEN_SOURCE=600"
+
+ # localstatedir for nsupdate -l, bug 395785
+ tc-export BUILD_CC
+ econf "${myeconfargs[@]}"
+
+ # bug #151839
+ echo '#undef SO_BSDCOMPAT' >> config.h
+}
+
+src_compile() {
+ local AR=$(tc-getAR)
+
+ emake AR="${AR}" -C lib/
+ emake AR="${AR}" -C bin/delv/
+ emake AR="${AR}" -C bin/dig/
+ emake AR="${AR}" -C bin/nsupdate/
+ emake AR="${AR}" -C bin/dnssec/
+ emake -C doc/man/ man $(usev doc)
+}
+
+src_install() {
+ local man_dir="${S}/doc/man"
+ local html_dir="${man_dir}/_build/html"
+
+ dodoc README CHANGES
+
+ cd "${S}"/bin/delv || die
+ dobin delv
+ doman ${man_dir}/delv.1
+
+ cd "${S}"/bin/dig || die
+ dobin dig host nslookup
+ doman ${man_dir}/{dig,host,nslookup}.1
+
+ cd "${S}"/bin/nsupdate || die
+ dobin nsupdate
+ doman ${man_dir}/nsupdate.1
+ if use doc; then
+ docinto html
+ dodoc ${html_dir}/nsupdate.html
+ fi
+
+ cd "${S}"/bin/dnssec || die
+ for tool in dsfromkey importkey keyfromlabel keygen \
+ revoke settime signzone verify; do
+ dobin dnssec-"${tool}"
+ doman ${man_dir}/dnssec-"${tool}".8
+ if use doc; then
+ docinto html
+ dodoc ${html_dir}/dnssec-"${tool}".html
+ fi
+ done
+}
diff --git a/net-dns/bind-tools/bind-tools-9.16.27.ebuild b/net-dns/bind-tools/bind-tools-9.16.27.ebuild
new file mode 100644
index 0000000000..a928124efd
--- /dev/null
+++ b/net-dns/bind-tools/bind-tools-9.16.27.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic toolchain-funcs
+
+MY_PN=${PN//-tools}
+MY_PV=${PV/_p/-P}
+MY_PV=${MY_PV/_rc/rc}
+MY_P="${MY_PN}-${MY_PV}"
+
+DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
+HOMEPAGE="https://www.isc.org/software/bind"
+SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+caps doc gssapi idn ipv6 libedit readline xml"
+# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
+
+COMMON_DEPEND="
+ dev-libs/libuv:=
+ caps? ( sys-libs/libcap )
+ dev-libs/openssl:=
+ xml? ( dev-libs/libxml2 )
+ idn? ( net-dns/libidn2:= )
+ gssapi? ( virtual/krb5 )
+ libedit? ( dev-libs/libedit )
+ !libedit? (
+ readline? ( sys-libs/readline:= )
+ )
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+# sphinx required for man-page and html creation
+BDEPEND="
+ doc? ( dev-python/sphinx )
+ virtual/pkgconfig
+"
+
+S="${WORKDIR}/${MY_P}"
+
+# bug 479092, requires networking
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ export LDFLAGS="${LDFLAGS} -L${EPREFIX}/usr/$(get_libdir)"
+
+ # Disable tests for now, bug 406399
+ sed -i '/^SUBDIRS/s:tests::' bin/Makefile.in lib/Makefile.in || die
+
+ # Do not disable thread local storage on Solaris, it works with our
+ # toolchain, and it breaks further configure checks
+ sed -i -e '/LDFLAGS=/s/-zrelax=transtls//' configure.ac configure || die
+
+ # bug #220361
+ rm aclocal.m4 || die
+ rm -rf libtool.m4/ || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}"/var
+ --without-python
+ --without-libjson
+ --without-zlib
+ --without-lmdb
+ --without-maxminddb
+ --disable-geoip
+ --with-openssl="${ESYSROOT}"/usr
+ $(use_with idn libidn2 "${ESYSROOT}"/usr)
+ $(use_with xml libxml2)
+ $(use_with gssapi)
+ $(use_with readline)
+ $(use_enable caps linux-caps)
+ AR="$(type -P $(tc-getAR))"
+ )
+
+ # bug 607400
+ if use libedit ; then
+ myeconfargs+=( --with-readline=-ledit )
+ elif use readline ; then
+ myeconfargs+=( --with-readline=-lreadline )
+ else
+ myeconfargs+=( --without-readline )
+ fi
+
+ # bug 344029
+ append-cflags "-DDIG_SIGCHASE"
+
+ # to expose CMSG_* macros from sys/sockets.h
+ [[ ${CHOST} == *-solaris* ]] && append-cflags "-D_XOPEN_SOURCE=600"
+
+ # localstatedir for nsupdate -l, bug 395785
+ tc-export BUILD_CC
+ econf "${myeconfargs[@]}"
+
+ # bug #151839
+ echo '#undef SO_BSDCOMPAT' >> config.h
+}
+
+src_compile() {
+ local AR=$(tc-getAR)
+
+ emake AR="${AR}" -C lib/
+ emake AR="${AR}" -C bin/delv/
+ emake AR="${AR}" -C bin/dig/
+ emake AR="${AR}" -C bin/nsupdate/
+ emake AR="${AR}" -C bin/dnssec/
+ emake -C doc/man/ man $(usev doc)
+}
+
+src_install() {
+ local man_dir="${S}/doc/man"
+ local html_dir="${man_dir}/_build/html"
+
+ dodoc README CHANGES
+
+ cd "${S}"/bin/delv || die
+ dobin delv
+ doman ${man_dir}/delv.1
+
+ cd "${S}"/bin/dig || die
+ dobin dig host nslookup
+ doman ${man_dir}/{dig,host,nslookup}.1
+
+ cd "${S}"/bin/nsupdate || die
+ dobin nsupdate
+ doman ${man_dir}/nsupdate.1
+ if use doc; then
+ docinto html
+ dodoc ${html_dir}/nsupdate.html
+ fi
+
+ cd "${S}"/bin/dnssec || die
+ for tool in dsfromkey importkey keyfromlabel keygen \
+ revoke settime signzone verify; do
+ dobin dnssec-"${tool}"
+ doman ${man_dir}/dnssec-"${tool}".8
+ if use doc; then
+ docinto html
+ dodoc ${html_dir}/dnssec-"${tool}".html
+ fi
+ done
+}
diff --git a/net-dns/bind-tools/metadata.xml b/net-dns/bind-tools/metadata.xml
index b77b2edd2d..38322a5df4 100644
--- a/net-dns/bind-tools/metadata.xml
+++ b/net-dns/bind-tools/metadata.xml
@@ -1,14 +1,14 @@
-
+
-
- idl0r@gentoo.org
- Christian Ruppert
-
zlogene@gentoo.org
Mikle Kolyada
+
+ chutzpah@gentoo.org
+ Patrick McLean
+
diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild
index fcd27b22c1..373ac039b6 100644
--- a/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild
+++ b/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild
@@ -10,7 +10,7 @@ SRC_URI="http://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm64 hppa x86"
+KEYWORDS="~alpha amd64 ~arm64 ~hppa x86"
IUSE="doc +cthelper +cttimeout +libtirpc"
RDEPEND="
diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.6.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.6-r1.ebuild
similarity index 90%
rename from net-firewall/conntrack-tools/conntrack-tools-1.4.6.ebuild
rename to net-firewall/conntrack-tools/conntrack-tools-1.4.6-r1.ebuild
index 7b47745263..228854d83c 100644
--- a/net-firewall/conntrack-tools/conntrack-tools-1.4.6.ebuild
+++ b/net-firewall/conntrack-tools/conntrack-tools-1.4.6-r1.ebuild
@@ -1,8 +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 linux-info
+
+inherit linux-info systemd
DESCRIPTION="Connection tracking userspace tools"
HOMEPAGE="http://conntrack-tools.netfilter.org"
@@ -10,7 +11,7 @@ SRC_URI="http://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~x86"
+KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 ~riscv x86"
IUSE="doc +cthelper +cttimeout systemd"
RDEPEND="
@@ -29,15 +30,15 @@ RDEPEND="
>=sys-apps/systemd-227
)
"
-DEPEND="
- ${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-devel/bison
+ sys-devel/flex
+ virtual/pkgconfig
doc? (
app-text/docbook-xml-dtd:4.1.2
app-text/xmlto
)
- virtual/pkgconfig
- sys-devel/bison
- sys-devel/flex
"
pkg_setup() {
@@ -93,6 +94,8 @@ src_install() {
insinto /etc/conntrackd
doins doc/stats/conntrackd.conf
+ systemd_dounit "${FILESDIR}/conntrackd.service"
+
dodoc -r doc/sync doc/stats AUTHORS TODO
use doc && dodoc doc/manual/${PN}.html
}
diff --git a/net-firewall/conntrack-tools/files/conntrackd.service b/net-firewall/conntrack-tools/files/conntrackd.service
new file mode 100644
index 0000000000..26f950c0d9
--- /dev/null
+++ b/net-firewall/conntrack-tools/files/conntrackd.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Conntrack Daemon
+Documentation=man:conntrackd(8) man:conntrackd.conf(5)
+
+[Service]
+Type=notify
+ExecStart=/usr/sbin/conntrackd -C /etc/conntrackd/conntrackd.conf
+Restart=on-failure
+ProtectSystem=full
+ProtectHome=true
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-firewall/conntrack-tools/metadata.xml b/net-firewall/conntrack-tools/metadata.xml
index 57e4187d16..990d814e3f 100644
--- a/net-firewall/conntrack-tools/metadata.xml
+++ b/net-firewall/conntrack-tools/metadata.xml
@@ -1,5 +1,5 @@
-
+
netmon@gentoo.org
diff --git a/net-libs/libnetfilter_conntrack/Manifest b/net-libs/libnetfilter_conntrack/Manifest
index a13a4b3763..6d0823261e 100644
--- a/net-libs/libnetfilter_conntrack/Manifest
+++ b/net-libs/libnetfilter_conntrack/Manifest
@@ -1,3 +1,2 @@
-DIST libnetfilter_conntrack-1.0.6.tar.bz2 422998 BLAKE2B 7153593e2b6f5e03a5f4579948b0d28e9ab88d39ebe08e97fe8be0eb3f10f64b36d0f85e9e35408019ab22404b3452e4c6d7b2812ea316031f3e0c4367c23019 SHA512 05b3b63928d46ed114048848c48094a762c6a7acc93fcdbe9473e82cc67851ef1a0d33b68b8fd388271b76b519c4d2ac93fd802043fa9a9da46cda5b262a1fc7
-DIST libnetfilter_conntrack-1.0.7.tar.bz2 346219 BLAKE2B 85388bb2b185fa04ce697b07675cfbd84836873a9d09092b16bba318e93da56085ea5a4726a908ed5d1974aa524bee0f912e2be23f6a4c9e9e46641baf0c6a18 SHA512 5be5ed5daba385d11123a4e497c6334c6bb7e668594e667f85596619afe607f8783c088934098a4c07557d86f9b9157ff67d28541c8f4a80a5454307b979c22b
DIST libnetfilter_conntrack-1.0.8.tar.bz2 331750 BLAKE2B 614f8d80863d6f7d8110b5faf68debe3a9ba0c6737f02fa0de9d0e53d30771581becb052e7cd990b0632e9264cb9cdeb2af26a41e2b1ab9421218ec616e1f8d8 SHA512 ddc70e7e3f2d764ed1e115e4a03fe8848b8c04bd69eea0952e63131dd4dae3c23f33b8be518673e1ec3b5dbf708f5f86eac97be46fe265d95386a5e902bd0b82
+DIST libnetfilter_conntrack-1.0.9.tar.bz2 373177 BLAKE2B 701393338a0bf852b97d80a1e4ab078dea741f7181246b3dafcbe8cff287b5b9fae72c1c50867ea71baab83fa842471b2c7054fb4702bf35900a352078de8f3a SHA512 e8b03425aaba3b72e6034c215656c34176d0550c08e0455aaeb1365d9141505d0c4feaa8978c8ccf2b7af9db6c9e874ceb866347e533b41cb03a189884f4004c
diff --git a/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch b/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch
new file mode 100644
index 0000000000..e1ce87df4e
--- /dev/null
+++ b/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch
@@ -0,0 +1,46 @@
+https://git.netfilter.org/libnetfilter_conntrack/patch/?id=21ee35dde73aec5eba35290587d479218c6dd824
+
+From: Robert Marko
+Date: Thu, 24 Feb 2022 15:01:11 +0100
+Subject: conntrack: fix build with kernel 5.15 and musl
+
+Currently, with kernel 5.15 headers and musl building is failing with
+redefinition errors due to a conflict between the kernel and musl headers.
+
+Musl is able to suppres the conflicting kernel header definitions if they
+are included after the standard libc ones, however since ICMP definitions
+were moved into a separate internal header to avoid duplication this has
+stopped working and is breaking the builds.
+
+It seems that the issue is that which contains the UAPI
+suppression defines is included in the internal.h header and not in the
+proto.h which actually includes the kernel ICMP headers and thus UAPI
+supression defines are not present.
+
+Solve this by moving the include before the ICMP kernel
+includes in the proto.h
+
+Fixes: bc1cb4b11403 ("conntrack: Move icmp request>reply type mapping to common file")
+Signed-off-by: Robert Marko
+Signed-off-by: Florian Westphal
+--- a/include/internal/internal.h
++++ b/include/internal/internal.h
+@@ -14,7 +14,6 @@
+ #include
+ #include
+ #include
+-#include
+
+ #include
+ #include
+--- a/include/internal/proto.h
++++ b/include/internal/proto.h
+@@ -2,6 +2,7 @@
+ #define _NFCT_PROTO_H_
+
+ #include
++#include
+ #include
+ #include
+
+cgit v1.2.3
diff --git a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.7.ebuild b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.7.ebuild
deleted file mode 100644
index fce41470c4..0000000000
--- a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.7.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools linux-info
-
-DESCRIPTION="programming interface (API) to the in-kernel connection tracking state table"
-HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/"
-SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
-IUSE="static-libs"
-
-RDEPEND="
- >=net-libs/libmnl-1.0.3
- >=net-libs/libnfnetlink-1.0.0
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
-
-DOCS=( README )
-
-pkg_setup() {
- linux-info_pkg_setup
-
- if kernel_is lt 2 6 18 ; then
- die "${PN} requires at least 2.6.18 kernel version"
- fi
-
- #netfilter core team has changed some option names with kernel 2.6.20
- if kernel_is lt 2 6 20 ; then
- CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK"
- else
- CONFIG_CHECK="~NF_CT_NETLINK"
- fi
-
- check_extra_config
-}
diff --git a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild
index fefe91d642..a42aa6f12f 100644
--- a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild
+++ b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild
@@ -1,16 +1,17 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
-inherit autotools linux-info
-DESCRIPTION="programming interface (API) to the in-kernel connection tracking state table"
+inherit linux-info
+
+DESCRIPTION="Programming interface (API) to the in-kernel connection tracking state table"
HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/"
SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="static-libs"
RDEPEND="
@@ -31,7 +32,7 @@ pkg_setup() {
die "${PN} requires at least 2.6.18 kernel version"
fi
- #netfilter core team has changed some option names with kernel 2.6.20
+ # netfilter core team has changed some option names with kernel 2.6.20
if kernel_is lt 2 6 20 ; then
CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK"
else
diff --git a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.ebuild b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9.ebuild
similarity index 50%
rename from net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.ebuild
rename to net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9.ebuild
index ae46400e1e..a45a3d4567 100644
--- a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.ebuild
+++ b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9.ebuild
@@ -1,29 +1,29 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-inherit autotools linux-info
+EAPI=8
-DESCRIPTION="programming interface (API) to the in-kernel connection tracking state table"
+inherit linux-info
+
+DESCRIPTION="Programming interface (API) to the in-kernel connection tracking state table"
HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/"
SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-IUSE="static-libs"
-
-RDEPEND="
- >=net-libs/libmnl-1.0.3
- >=net-libs/libnfnetlink-1.0.0
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
-"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND=">=net-libs/libmnl-1.0.3
+ >=net-libs/libnfnetlink-1.0.0"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
DOCS=( README )
+PATCHES=(
+ "${FILESDIR}"/${P}-musl.patch
+)
+
pkg_setup() {
linux-info_pkg_setup
@@ -31,7 +31,7 @@ pkg_setup() {
die "${PN} requires at least 2.6.18 kernel version"
fi
- #netfilter core team has changed some option names with kernel 2.6.20
+ # netfilter core team has changed some option names with kernel 2.6.20
if kernel_is lt 2 6 20 ; then
CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK"
else
@@ -40,3 +40,9 @@ pkg_setup() {
check_extra_config
}
+
+src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/net-libs/libnetfilter_conntrack/metadata.xml b/net-libs/libnetfilter_conntrack/metadata.xml
index e5e613464d..442b1af935 100644
--- a/net-libs/libnetfilter_conntrack/metadata.xml
+++ b/net-libs/libnetfilter_conntrack/metadata.xml
@@ -1,5 +1,5 @@
-
+
netmon@gentoo.org
diff --git a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild b/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild
index 8107d628ad..6d07d30b27 100644
--- a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild
+++ b/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild
@@ -1,22 +1,21 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=7
-inherit linux-info autotools-utils
+inherit linux-info
-DESCRIPTION="userspace library that provides the programming interface to the user-space helper infrastructure"
+DESCRIPTION="Userspace library for interface to user-space helper for conntrack"
HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cthelper/"
SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~x86"
-IUSE="static-libs"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv x86"
+BDEPEND="virtual/pkgconfig"
RDEPEND="net-libs/libmnl:="
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-clang-export.patch
diff --git a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0.ebuild b/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0.ebuild
deleted file mode 100644
index c86870bcbd..0000000000
--- a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit linux-info autotools-utils
-
-DESCRIPTION="userspace library that provides the programming interface to the user-space helper infrastructure"
-HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cthelper/"
-SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm hppa x86"
-IUSE="static-libs"
-
-RDEPEND="net-libs/libmnl"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-CONFIG_CHECK="~NF_CT_NETLINK_HELPER"
-
-pkg_setup() {
- linux-info_pkg_setup
- kernel_is lt 3 6 0 && ewarn "requires at least 3.6.0 kernel version"
-}
diff --git a/net-libs/libnetfilter_cthelper/metadata.xml b/net-libs/libnetfilter_cthelper/metadata.xml
index ceb2db8aac..c87d66d3a6 100644
--- a/net-libs/libnetfilter_cthelper/metadata.xml
+++ b/net-libs/libnetfilter_cthelper/metadata.xml
@@ -1,5 +1,5 @@
-
+
netmon@gentoo.org
diff --git a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild b/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild
index d897dbebf2..85aa46b43e 100644
--- a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild
+++ b/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild
@@ -1,22 +1,21 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=7
-inherit linux-info autotools-utils
+inherit linux-info
-DESCRIPTION="netlink interface to the connection tracking timeout infrastructure in the kernel packet filter"
+DESCRIPTION="netlink interface for conntrack timeout infrastructure in kernel's packet filter"
HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cttimeout/"
SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~x86"
-IUSE="static-libs"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv x86"
+BDEPEND="virtual/pkgconfig"
RDEPEND="net-libs/libmnl:="
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-clang-export.patch
diff --git a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0.ebuild b/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0.ebuild
deleted file mode 100644
index 5e8392aebc..0000000000
--- a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit linux-info autotools-utils
-
-DESCRIPTION="netlink interface to the connection tracking timeout infrastructure in the kernel packet filter"
-HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cttimeout/"
-SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm hppa x86"
-IUSE="static-libs"
-
-RDEPEND="net-libs/libmnl"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-CONFIG_CHECK="~NF_CT_NETLINK_TIMEOUT"
-
-pkg_setup() {
- linux-info_pkg_setup
- kernel_is lt 3 4 0 && ewarn "requires at least 3.4.0 kernel version"
-}
diff --git a/net-libs/libnetfilter_cttimeout/metadata.xml b/net-libs/libnetfilter_cttimeout/metadata.xml
index 430482ee0a..2b012034ed 100644
--- a/net-libs/libnetfilter_cttimeout/metadata.xml
+++ b/net-libs/libnetfilter_cttimeout/metadata.xml
@@ -1,5 +1,5 @@
-
+
netmon@gentoo.org
diff --git a/net-libs/libnetfilter_queue/Manifest b/net-libs/libnetfilter_queue/Manifest
index 5d637be33e..e5407949eb 100644
--- a/net-libs/libnetfilter_queue/Manifest
+++ b/net-libs/libnetfilter_queue/Manifest
@@ -1,2 +1,3 @@
-DIST libnetfilter_queue-1.0.2.tar.bz2 354201 BLAKE2B 5df5a94ca07a6fb919d8a153143a0e340c323bac6491c3d03f9d871eb3c31e85ab0290cc6f67f678038605e829af0dfbfbb966b1a6b9bb76ea7acc4275a7d3a4 SHA512 89fec4d943b85f35e7cef3b1b9071b1280c6e1b282b7e5cb97eb17d05b9ddd175194639ead986767d27152540fe8e167383a1f7bbfe3cdf874a5a42a2c096f11
DIST libnetfilter_queue-1.0.3.tar.bz2 314857 BLAKE2B c25b0395b13af3cecb960c39bcbc4f10a3f203aad7acaeb277346423310700d9abb5b8a65f27b008e5f45194aa6e0fd6a99c8ad25a1e3200904be70c5c6ddaa4 SHA512 1d9e0202878bc0ae26ceecd0f4fa4c21f89056e5671d46949f92f21c155d589958b7775760fc837547da34eb9a81e537e95c770d25c166e709dad16de4ca452e
+DIST libnetfilter_queue-1.0.4.tar.bz2 312699 BLAKE2B 29d553c36af551cbaa3b1b4382ad38d6ea7402efafa5ff4ae99c6f05d0ddd15d24b007a4ccdcbc21b8bd9cea28859668a27a6fae4e6534f68dea79d6d0a02789 SHA512 5d81d8e8190a80c9b42bc851a87cc4f749709803b8c9964508013bafb033f1b51b65222a244885f321a2be90517c6a636533ff72b653935a2b8d819560a51187
+DIST libnetfilter_queue-1.0.5.tar.bz2 313856 BLAKE2B 0d7806fd23961f6b80f6ef63faf0fe10307a34495337a7f6dd4f0eb76b5ba8a96292b86285e0740f83414417810e47f47b1400c7d83fb4d8fc6f58954f4bd9df SHA512 732a44b602e5efaa4f5582ea25ff8f5ec8f4dca5c0e725cd93fe2d441db80416b25c6018147be90acb262d7428eb5b21b3f7b5920e612d115061ec6a19d67f85
diff --git a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild
index ad6618c714..5e97c76a1a 100644
--- a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild
+++ b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.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
@@ -10,7 +10,7 @@ SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~mips ppc ppc64 ~sparc x86"
IUSE="static-libs"
RDEPEND="
diff --git a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.2.ebuild b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.4.ebuild
similarity index 65%
rename from net-libs/libnetfilter_queue/libnetfilter_queue-1.0.2.ebuild
rename to net-libs/libnetfilter_queue/libnetfilter_queue-1.0.4.ebuild
index 1f9dc32697..288764d2e4 100644
--- a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.2.ebuild
+++ b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.4.ebuild
@@ -1,8 +1,8 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-inherit autotools-utils linux-info
+EAPI=7
+inherit linux-info
DESCRIPTION="API to packets that have been queued by the kernel packet filter"
HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_queue/"
@@ -10,19 +10,30 @@ SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ppc ~ppc64 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
IUSE="static-libs"
RDEPEND="
>=net-libs/libmnl-1.0.3
>=net-libs/libnfnetlink-0.0.41
"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ app-doc/doxygen
+ virtual/pkgconfig
+"
CONFIG_CHECK="~NETFILTER_NETLINK_QUEUE"
pkg_setup() {
linux-info_pkg_setup
kernel_is lt 2 6 14 && ewarn "requires at least 2.6.14 kernel version"
}
+
+src_prepare() {
+ default
+
+ # hack for script that was not distributed
+ [[ -x fixmanpages.sh ]] || ln -s $(type -P true) fixmanpages.sh
+}
diff --git a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.5.ebuild b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.5.ebuild
new file mode 100644
index 0000000000..149830904d
--- /dev/null
+++ b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.5.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit linux-info
+
+DESCRIPTION="API to packets that have been queued by the kernel packet filter"
+HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_queue/"
+SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86"
+IUSE="doc static-libs"
+
+RDEPEND="
+ >=net-libs/libmnl-1.0.3
+ >=net-libs/libnfnetlink-0.0.41
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ doc? ( app-doc/doxygen )
+ virtual/pkgconfig
+"
+CONFIG_CHECK="~NETFILTER_NETLINK_QUEUE"
+
+pkg_setup() {
+ linux-info_pkg_setup
+ kernel_is lt 2 6 14 && ewarn "requires at least 2.6.14 kernel version"
+}
+
+src_configure() {
+ econf $(use_with doc doxygen)
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/net-libs/libnetfilter_queue/metadata.xml b/net-libs/libnetfilter_queue/metadata.xml
index 36c0581a52..f090fb2375 100644
--- a/net-libs/libnetfilter_queue/metadata.xml
+++ b/net-libs/libnetfilter_queue/metadata.xml
@@ -1,5 +1,5 @@
-
+
netmon@gentoo.org
diff --git a/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild b/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild
index cc2a2bae06..22064cc960 100644
--- a/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild
+++ b/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
PATCHES=( "${DISTDIR}/${PATCH_FN}" )
diff --git a/net-libs/libnfnetlink/metadata.xml b/net-libs/libnfnetlink/metadata.xml
index 4bdfc11bfc..0c633e16d6 100644
--- a/net-libs/libnfnetlink/metadata.xml
+++ b/net-libs/libnfnetlink/metadata.xml
@@ -1,5 +1,5 @@
-
+
netmon@gentoo.org
diff --git a/net-libs/libpcap/Manifest b/net-libs/libpcap/Manifest
index e437bfba26..87ff3b2564 100644
--- a/net-libs/libpcap/Manifest
+++ b/net-libs/libpcap/Manifest
@@ -1,2 +1,2 @@
-DIST libpcap-1.10.0-bp.tar.gz 911001 BLAKE2B bbcb1f48c5cbe8bfc46003cbf7c691e0b3a2051e319aa3ec761de045ac11bbacafe1a06b52c4cd332eb85e598a0a1ff5403ae7c3a611cc0cdd2eeab859587487 SHA512 c3d6047192ab1521687d856f2a954a38bfd8d42aedb853559a698ed3c24bfe5698efb6f81c0280b696229165c1088a58471e8d62f071343fcb14b1464f65fe3f
-DIST libpcap-1.9.1.tar.gz 849407 BLAKE2B 700d8b3d25c036033c4f9b652cec6a30d4a45aa418c2ec45698018b3d3fe8d0a61f6759f5734e2c7ff9a8f42cce65fbd8b3e1b1efd44776e53674fbc609da59d SHA512 9ab9da20194e0dfb105daa28c8841118118f5a7f68b5e30e31da6c56eec91430c8ee481f1f9d20aec4d33d7ee9e6fb0b5e08a90a8d7e5ace8e6210e29e7eab0f
+DIST libpcap-1.10.1-upstream.tar.gz 935221 BLAKE2B 0ec028e5d026a97b92ba6f23f88daf36b827eee08a752a0162fbabd1b5a2a70141ec403b6ff26dc3eb25ca5c6630c9c2f60f05b33161770da3d5e829c4eecdc6 SHA512 56c314f19c2b857742bf8abcb1e78066986aaa95cec339b75a3c8b70a9fa2b5167da98708352f9ec97a1cea2700cfb4e040bda108d58ac46cec9b7deab88d171
+DIST libpcap-1.10.1-upstream.tar.gz.sig 442 BLAKE2B b76bf3c40a923b6c8fb9a356dff49a90e30dd0b0d785f138ac56bf1a41ad3a6fcfa3d5b3d28c12543857c5616b8938108b06313e35e4474d50991b72d9d371c8 SHA512 f9807efd11d99524b247981e5f4f02e1ffbeaa8468a9a22c66f9931a894071b9182164807b9fd11436883d36e8b0c6cc62302852005d958e34b5236e20caa33d
diff --git a/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch b/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch
deleted file mode 100644
index 0b69e43a3f..0000000000
--- a/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/configure.ac
-+++ b/configure.ac
-@@ -1493,10 +1493,9 @@
- AC_DEFINE(PCAP_SUPPORT_USB, 1, [target host supports USB sniffing])
- USB_SRC=pcap-usb-linux.c
- AC_MSG_RESULT(yes)
-- ac_usb_dev_name=`udevinfo -q name -p /sys/class/usb_device/usbmon 2>/dev/null`
-- if test $? -ne 0 ; then
-- ac_usb_dev_name="usbmon"
-- fi
-+
-+ ac_usb_dev_name="usbmon"
-+
- AC_DEFINE_UNQUOTED(LINUX_USB_MON_DEV, "/dev/$ac_usb_dev_name", [path for device for USB sniffing])
- AC_MSG_NOTICE(Device for USB sniffing is /dev/$ac_usb_dev_name)
- #
diff --git a/net-libs/libpcap/files/libpcap-1.9.0-pcap-config-includedir.patch b/net-libs/libpcap/files/libpcap-1.9.0-pcap-config-includedir.patch
deleted file mode 100644
index cd2c9fe61f..0000000000
--- a/net-libs/libpcap/files/libpcap-1.9.0-pcap-config-includedir.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- a/pcap-config.in
-+++ b/pcap-config.in
-@@ -59,13 +59,13 @@
- #
- if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
- then
-- echo "-I$includedir -L$libdir -lpcap $LIBS"
-+ echo "-L$libdir -lpcap $LIBS"
- elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
- then
-- echo "-I$includedir -L$libdir $LIBS"
-+ echo "-L$libdir $LIBS"
- elif [ "$show_cflags" = 1 ]
- then
-- echo "-I$includedir"
-+ echo ""
- elif [ "$show_libs" = 1 ]
- then
- echo "-L$libdir -lpcap $LIBS"
-@@ -80,13 +80,13 @@
- #
- if [ "$show_cflags" = 1 -a "$show_libs" = 1 ]
- then
-- echo "-I$includedir -L$libdir $RPATH -l$PACKAGE_NAME"
-+ echo "-L$libdir $RPATH -l$PACKAGE_NAME"
- elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ]
- then
-- echo "-I$includedir"
-+ echo ""
- elif [ "$show_cflags" = 1 ]
- then
-- echo "-I$includedir"
-+ echo ""
- elif [ "$show_libs" = 1 ]
- then
- echo "-L$libdir $RPATH -l$PACKAGE_NAME"
diff --git a/net-libs/libpcap/libpcap-1.10.0_pre.ebuild b/net-libs/libpcap/libpcap-1.10.1-r1.ebuild
similarity index 59%
rename from net-libs/libpcap/libpcap-1.10.0_pre.ebuild
rename to net-libs/libpcap/libpcap-1.10.1-r1.ebuild
index 3a80522a9f..a810d8d5d9 100644
--- a/net-libs/libpcap/libpcap-1.10.0_pre.ebuild
+++ b/net-libs/libpcap/libpcap-1.10.1-r1.ebuild
@@ -1,40 +1,50 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit autotools multilib-minimal
DESCRIPTION="A system-independent library for user-level network packet capture"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/libpcap
-"
-SRC_URI="
- https://github.com/the-tcpdump-group/${PN}/archive/${P/_pre/-bp}.tar.gz
-"
+HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/libpcap"
+
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap"
+ inherit git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
+ inherit verify-sig
+
+ # Note: drop -upstream on bump, this is just because we switched to the official
+ # distfiles for verify-sig
+ SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz"
+ SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )"
+
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+fi
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug"
+IUSE="bluetooth dbus netlink rdma remote static-libs usb yydebug"
RDEPEND="
bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
+ remote? ( virtual/libcrypt:=[${MULTILIB_USEDEP}] )
rdma? ( sys-cluster/rdma-core )
usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
"
-DEPEND="
- ${RDEPEND}
-"
+DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
virtual/yacc
dbus? ( virtual/pkgconfig )
"
-S=${WORKDIR}/${PN}-${P/_pre/-bp}
+if [[ ${PV} != *9999* ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )"
+fi
PATCHES=(
"${FILESDIR}"/${PN}-1.9.1-pcap-config.patch
diff --git a/net-libs/libpcap/libpcap-1.9.1-r3.ebuild b/net-libs/libpcap/libpcap-1.9.1-r3.ebuild
deleted file mode 100644
index 2e669584a7..0000000000
--- a/net-libs/libpcap/libpcap-1.9.1-r3.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools multilib-minimal
-
-DESCRIPTION="A system-independent library for user-level network packet capture"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/libpcap
-"
-SRC_URI="
- https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug"
-
-RDEPEND="
- bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
- dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
- netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
- rdma? ( sys-cluster/rdma-core )
- usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
-"
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- sys-devel/flex
- virtual/yacc
- dbus? ( virtual/pkgconfig )
-"
-
-S=${WORKDIR}/${PN}-${P/_}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.8.1-usbmon.patch
- "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch
-)
-
-src_prepare() {
- default
-
- echo ${PV} > VERSION || die
-
- eautoreconf
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" \
- econf \
- $(use_enable bluetooth) \
- $(use_enable dbus) \
- $(use_enable rdma) \
- $(use_enable remote) \
- $(use_enable usb) \
- $(use_enable yydebug) \
- $(use_with netlink libnl) \
- --enable-ipv6
-}
-
-multilib_src_compile() {
- emake all shared
-}
-
-multilib_src_install_all() {
- dodoc CREDITS CHANGES VERSION TODO README.* doc/README.*
-
- # remove static libraries (--disable-static does not work)
- if ! use static-libs; then
- find "${ED}" -name '*.a' -exec rm {} + || die
- fi
-
- find "${ED}" -name '*.la' -delete || die
-
- # We need this to build pppd on G/FBSD systems
- if [[ "${USERLAND}" == "BSD" ]]; then
- insinto /usr/include
- doins pcap-int.h portability.h
- fi
-}
diff --git a/net-libs/libpcap/libpcap-1.9.1.ebuild b/net-libs/libpcap/libpcap-1.9.1.ebuild
deleted file mode 100644
index 4775c7d9c5..0000000000
--- a/net-libs/libpcap/libpcap-1.9.1.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools multilib-minimal ltprune
-
-DESCRIPTION="A system-independent library for user-level network packet capture"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/libpcap
-"
-SRC_URI="
- https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="bluetooth dbus netlink static-libs usb"
-
-RDEPEND="
- bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
- dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
- netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
-"
-DEPEND="
- ${RDEPEND}
- sys-devel/flex
- virtual/yacc
- dbus? ( virtual/pkgconfig )
-"
-
-S=${WORKDIR}/${PN}-${P/_}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.8.1-usbmon.patch
- "${FILESDIR}"/${PN}-1.9.0-pcap-config-includedir.patch
-)
-
-src_prepare() {
- default
-
- echo ${PV} > VERSION || die
-
- eautoreconf
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" \
- econf \
- $(use_enable bluetooth) \
- $(use_enable dbus) \
- $(use_enable usb) \
- $(use_with netlink libnl) \
- --disable-rdma \
- --enable-ipv6
-}
-
-multilib_src_compile() {
- emake all shared
-}
-
-multilib_src_install_all() {
- dodoc CREDITS CHANGES VERSION TODO README.* doc/README.*
-
- # remove static libraries (--disable-static does not work)
- if ! use static-libs; then
- find "${ED}" -name '*.a' -exec rm {} + || die
- fi
- prune_libtool_files
-
- # We need this to build pppd on G/FBSD systems
- if [[ "${USERLAND}" == "BSD" ]]; then
- insinto /usr/include
- doins pcap-int.h portability.h
- fi
-}
diff --git a/net-libs/libpcap/libpcap-9999.ebuild b/net-libs/libpcap/libpcap-9999.ebuild
index b716f85059..531bf51fe6 100644
--- a/net-libs/libpcap/libpcap-9999.ebuild
+++ b/net-libs/libpcap/libpcap-9999.ebuild
@@ -1,37 +1,49 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools git-r3 multilib-minimal
+
+inherit autotools multilib-minimal
DESCRIPTION="A system-independent library for user-level network packet capture"
-EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap"
-HOMEPAGE="
- https://www.tcpdump.org/
- https://github.com/the-tcpdump-group/libpcap
-"
+HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/libpcap"
+
+if [[ ${PV} == *9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap"
+ inherit git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
+ inherit verify-sig
+
+ SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz"
+ SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )"
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+fi
LICENSE="BSD"
SLOT="0"
-IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug"
-KEYWORDS=""
+IUSE="bluetooth dbus netlink rdma remote static-libs usb yydebug"
RDEPEND="
bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
+ remote? ( virtual/libcrypt:=[${MULTILIB_USEDEP}] )
rdma? ( sys-cluster/rdma-core )
usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
"
-DEPEND="
- ${RDEPEND}
-"
+DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
virtual/yacc
dbus? ( virtual/pkgconfig )
"
+if [[ ${PV} != *9999* ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )"
+fi
+
PATCHES=(
"${FILESDIR}"/${PN}-1.9.1-pcap-config.patch
"${FILESDIR}"/${PN}-1.10.0-usbmon.patch
@@ -41,6 +53,10 @@ PATCHES=(
src_prepare() {
default
+ if ! [[ -f VERSION ]]; then
+ echo ${PV} > VERSION || die
+ fi
+
eautoreconf
}
@@ -62,7 +78,7 @@ multilib_src_compile() {
}
multilib_src_install_all() {
- dodoc CREDITS CHANGES VERSION TODO README*
+ dodoc CREDITS CHANGES VERSION TODO README.* doc/README.*
# remove static libraries (--disable-static does not work)
if ! use static-libs; then
diff --git a/net-libs/libpcap/metadata.xml b/net-libs/libpcap/metadata.xml
index 9c9e8fcf34..011e819bab 100644
--- a/net-libs/libpcap/metadata.xml
+++ b/net-libs/libpcap/metadata.xml
@@ -1,18 +1,22 @@
-
-
+
+
-
-netmon@gentoo.org
-Gentoo network monitoring and analysis project
-
-
-
-cpe:/a:tcpdump:libpcap
-the-tcpdump-group/libpcap
-
+
+ zlogene@gentoo.org
+ Mikle Kolyada
+
+
+ sam@gentoo.org
+ Sam James
+
+
+
+ cpe:/a:tcpdump:libpcap
+ the-tcpdump-group/libpcap
+
diff --git a/net-libs/nghttp2/Manifest b/net-libs/nghttp2/Manifest
index 4d09495cf3..575ac2674b 100644
--- a/net-libs/nghttp2/Manifest
+++ b/net-libs/nghttp2/Manifest
@@ -1,2 +1,3 @@
-DIST nghttp2-1.41.0.tar.xz 1640712 BLAKE2B 8dbd5f80bb9617d792e2eece09f6cae82907ad3a14a90084578b213191015c32ac38de87d9a39246651087b5d0e9c6c624ff806a0690973b5faa8624ee033d8f SHA512 c92e8022ccc876fa311f21bc5bf5af75feff8232efb56a4b2ab198031e974d15b67c16c046188cc76552f75a1b2e7115925d6ce1e42d6f94ae482fe69727466d
-DIST nghttp2-1.42.0.tar.xz 3973284 BLAKE2B 39431619bd3c9a66eb217065bb29ceba8f3fda376343687b4774ed5e73c634f51142b407f9515ae5ad4363af5cf57c0199f9bfddf5bc08dc587419ec03cf5b45 SHA512 1d93e6262c5538e26fbf36567230b4a239dbdfee26198b1e1d5862bf4459ae435679674c047407f5c604ddff91d7717d8515532e00bcdb2aa75f27ff97dce60c
+DIST nghttp2-1.45.1.tar.xz 4017852 BLAKE2B 17bc5e0a6270494a0296da7f1394d0b89666ca42ad04bcce097740da2b30cdc575f17e681a8320dc2a2161eeebb753f22f228a340fc7cd690fa883d29149bcd8 SHA512 320a8c9f29b58c55df98be4312d415bc406edbdfb0765aa37570cdb472a84f40c4f95a51c44c5488363c16ad6815c75b5503b32e43d94724c54117ff583c7150
+DIST nghttp2-1.46.0.tar.xz 4024972 BLAKE2B 85fe1259b791ff7cda163265f553e0aac8a10ef6674cf6152d5bc7747c7f4f3bc6e9d9c0472534dd7185f093936efed1b4632da64d426b6a7ac432657e8579a1 SHA512 fcf3573bcc421705190c7cf0e3230f6f3028b669cb2976d29cfeb73e706deaae91ce60d0a615472e3f296454049ea5798f1e8defdd260a98895e94fea6a7a16b
+DIST nghttp2-1.47.0.tar.xz 4028580 BLAKE2B 4f5302701c8d8a89c3ae72cbb8acb4cbcbe32cd0e2995643e0b669cf802ae28e8f6e52b2d59f69f87e0d12fc64a73c251edbe01c2b0eca2676626a9e456df93f SHA512 ad6266a15789fec966db6be8ac0b9ee6cca257a3bb91fdd34a58acf0e472643a571941b5974d16c98f6ac5bfa6a03c4b70a6dff222fb0cd50909178b7e94ce48
diff --git a/net-libs/nghttp2/metadata.xml b/net-libs/nghttp2/metadata.xml
index 474284272d..e79248991e 100644
--- a/net-libs/nghttp2/metadata.xml
+++ b/net-libs/nghttp2/metadata.xml
@@ -1,5 +1,5 @@
-
+
polynomial-c@gentoo.org
diff --git a/net-libs/nghttp2/nghttp2-1.41.0.ebuild b/net-libs/nghttp2/nghttp2-1.45.1-r1.ebuild
similarity index 78%
rename from net-libs/nghttp2/nghttp2-1.41.0.ebuild
rename to net-libs/nghttp2/nghttp2-1.45.1-r1.ebuild
index 1673a2300e..f79b1b5a91 100644
--- a/net-libs/nghttp2/nghttp2-1.41.0.ebuild
+++ b/net-libs/nghttp2/nghttp2-1.45.1-r1.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
# TODO: Add python support.
@@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3
else
SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="HTTP/2 C Library"
@@ -20,21 +20,20 @@ HOMEPAGE="https://nghttp2.org/"
LICENSE="MIT"
SLOT="0/1.14" # . SONAMEs
-IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml"
+IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml"
RESTRICT="!test? ( test )"
SSL_DEPEND="
- !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] )
+ >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}]
"
RDEPEND="
cxx? (
${SSL_DEPEND}
- dev-libs/boost:=[${MULTILIB_USEDEP},threads]
+ dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)]
)
- hpack-tools? ( >=dev-libs/jansson-2.5 )
- jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] )
+ hpack-tools? ( >=dev-libs/jansson-2.5:= )
+ jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] )
utils? (
${SSL_DEPEND}
>=dev-libs/libev-4.15[${MULTILIB_USEDEP}]
diff --git a/net-libs/nghttp2/nghttp2-1.42.0.ebuild b/net-libs/nghttp2/nghttp2-1.46.0.ebuild
similarity index 76%
rename from net-libs/nghttp2/nghttp2-1.42.0.ebuild
rename to net-libs/nghttp2/nghttp2-1.46.0.ebuild
index 5426a55b59..6d92e5272f 100644
--- a/net-libs/nghttp2/nghttp2-1.42.0.ebuild
+++ b/net-libs/nghttp2/nghttp2-1.46.0.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
# TODO: Add python support.
-EAPI=7
+EAPI=8
inherit multilib-minimal
@@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3
else
SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="HTTP/2 C Library"
@@ -20,21 +20,20 @@ HOMEPAGE="https://nghttp2.org/"
LICENSE="MIT"
SLOT="0/1.14" # . SONAMEs
-IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml"
+IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml"
RESTRICT="!test? ( test )"
SSL_DEPEND="
- !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] )
+ >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}]
"
RDEPEND="
cxx? (
${SSL_DEPEND}
- dev-libs/boost:=[${MULTILIB_USEDEP},threads]
+ dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)]
)
- hpack-tools? ( >=dev-libs/jansson-2.5 )
- jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] )
+ hpack-tools? ( >=dev-libs/jansson-2.5:= )
+ jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] )
utils? (
${SSL_DEPEND}
>=dev-libs/libev-4.15[${MULTILIB_USEDEP}]
@@ -72,6 +71,6 @@ multilib_src_configure() {
multilib_src_install_all() {
if ! use static-libs ; then
- find "${ED}"/usr -name '*.la' -delete || die
+ find "${ED}"/usr -type f -name '*.la' -delete || die
fi
}
diff --git a/net-libs/nghttp2/nghttp2-1.47.0.ebuild b/net-libs/nghttp2/nghttp2-1.47.0.ebuild
new file mode 100644
index 0000000000..13938062e1
--- /dev/null
+++ b/net-libs/nghttp2/nghttp2-1.47.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# TODO: Add python support.
+
+EAPI=8
+
+inherit multilib-minimal
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git"
+ inherit autotools git-r3
+else
+ SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="HTTP/2 C Library"
+HOMEPAGE="https://nghttp2.org/"
+
+LICENSE="MIT"
+SLOT="0/1.14" # . SONAMEs
+IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml"
+
+RESTRICT="!test? ( test )"
+
+SSL_DEPEND="
+ >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}]
+"
+RDEPEND="
+ cxx? (
+ ${SSL_DEPEND}
+ dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)]
+ )
+ hpack-tools? ( >=dev-libs/jansson-2.5:= )
+ jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] )
+ utils? (
+ ${SSL_DEPEND}
+ >=dev-libs/libev-4.15[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}]
+ net-dns/c-ares:=[${MULTILIB_USEDEP}]
+ )
+ xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+ test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+ [[ ${PV} == 9999 ]] && eautoreconf
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --disable-examples
+ --disable-failmalloc
+ --disable-python-bindings
+ --disable-werror
+ --without-cython
+ $(use_enable cxx asio-lib)
+ $(use_enable debug)
+ $(multilib_native_use_enable hpack-tools)
+ $(use_enable static-libs static)
+ $(use_enable threads)
+ $(multilib_native_use_enable utils app)
+ $(multilib_native_use_with jemalloc)
+ $(multilib_native_use_with xml libxml2)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+ if ! use static-libs ; then
+ find "${ED}"/usr -type f -name '*.la' -delete || die
+ fi
+}
diff --git a/net-libs/nghttp2/nghttp2-9999.ebuild b/net-libs/nghttp2/nghttp2-9999.ebuild
index ad61312be5..6d92e5272f 100644
--- a/net-libs/nghttp2/nghttp2-9999.ebuild
+++ b/net-libs/nghttp2/nghttp2-9999.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
# TODO: Add python support.
-EAPI=7
+EAPI=8
inherit multilib-minimal
@@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3
else
SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="HTTP/2 C Library"
@@ -20,21 +20,20 @@ HOMEPAGE="https://nghttp2.org/"
LICENSE="MIT"
SLOT="0/1.14" # . SONAMEs
-IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml"
+IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml"
RESTRICT="!test? ( test )"
SSL_DEPEND="
- !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] )
+ >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}]
"
RDEPEND="
cxx? (
${SSL_DEPEND}
- dev-libs/boost:=[${MULTILIB_USEDEP},threads]
+ dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)]
)
- hpack-tools? ( >=dev-libs/jansson-2.5 )
- jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] )
+ hpack-tools? ( >=dev-libs/jansson-2.5:= )
+ jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] )
utils? (
${SSL_DEPEND}
>=dev-libs/libev-4.15[${MULTILIB_USEDEP}]
@@ -72,6 +71,6 @@ multilib_src_configure() {
multilib_src_install_all() {
if ! use static-libs ; then
- find "${ED}"/usr -name '*.la' -delete || die
+ find "${ED}"/usr -type f -name '*.la' -delete || die
fi
}
diff --git a/sec-policy/selinux-sssd/Manifest b/sec-policy/selinux-sssd/Manifest
index 131e71c099..531f9303e2 100644
--- a/sec-policy/selinux-sssd/Manifest
+++ b/sec-policy/selinux-sssd/Manifest
@@ -1,8 +1,4 @@
DIST patchbundle-selinux-base-policy-2.20200818-r2.tar.bz2 433623 BLAKE2B f0655c45c50347faf1217e5861298dce822e4b726c0b4489d4c70c4815842f7c17ac1b0a302ae5482a3ad25d1d5b6c4c3b6395194e79005f31560d103ad0fce6 SHA512 9fd22683ecd602a429b2d489f7b8c2936409fa060046255b72a4b95c9fdefa2455ba7655945278dc972c22f3ade6617898ed169e22001aaaaded4b47ca51b0c3
DIST patchbundle-selinux-base-policy-2.20210203-r1.tar.bz2 298116 BLAKE2B 50c5523a8b758652af6aa59d548e9499b899898b58f52f74f1667a0c552f2b2d0ed5a44352e59245c7f0ebd199e2391400168d6ab27b4160d726fccded0c56f2 SHA512 ddb877ec3e2883f57e54e7380dd449d4d89a0769a1fb87141786e5de741ac21b2ead60362fd17c25888eb1334c68f71da561f4f29f406f0d4b5d13d378f6baff
-DIST patchbundle-selinux-base-policy-2.20210908-r1.tar.bz2 295091 BLAKE2B 649d9a1d9190aac4a42d460b0609175bb7e1a32624d7504ebfa294741ed5fc2eec286471af1b9128f4cdb9845240b37353a8e641e111b9e53250607c34257baf SHA512 5c9cbd97ece391a2ba0f3586bf19811a2425b9c94c9beafa781dd7b175d7572a46e31a46e8f8671a4b7e122186574f5098a247fee62e1be8afc89233d71effb9
-DIST patchbundle-selinux-base-policy-2.20220106-r1.tar.bz2 299683 BLAKE2B 9e48733878e2f809b8634a1e96a4b1bb2fc3e866e562a6ac9449da8d4af591cbe7de380384fabec50c7a7c67733253f82024ce62dee51fc73e35e0653626ff6c SHA512 314c639e08b15a94656e467e81857241b242020884c0e40272cfb422cccc35f2d4a5f067dc6ebdf8926335a65d737c233d1df75f69b356509e07fd60b46b07bf
DIST refpolicy-2.20200818.tar.bz2 570896 BLAKE2B 502c00fec39e1b81e42de3f7f942623f8b3fbdeac19f9f01126722a368b7d4f70427d6e4a574754c4f2fa551e4bc75c912dbc515c004f0dcd5eb28ab416498f6 SHA512 e4b527bb7a87b9359fc42eb111d5008103f57c37128998ea0e21ec7b0b8607ffe3f67697450e4c51a0db172ece69083335b279bacef4b1bd0b7748b58caa99a7
DIST refpolicy-2.20210203.tar.bz2 564099 BLAKE2B a94a11ebb78890ba2c98714be2fe9054fdb8ccaf5154f47b881a9575a4a6865e8df475805550d7bba8039b4230c6a0c9f5c6130bf8c35a26bc7c473d550fb40d SHA512 a6ffe718626dd6121023b4cbc424c933d44ca8b662bd708baad307cf6284be0d80fef40cdc8b37f6f17ecb3636fd8d6c1d5d4072c17d835b7f500e17a3acd9fc
-DIST refpolicy-2.20210908.tar.bz2 556375 BLAKE2B 12791eeed54204ef075b2d95a738c7d5007d48630d2a60d7e698bcb909dda0abcc15233811a91f4646415ab3daabe2cac46fbfbd04e61f71782e729c0209f99d SHA512 7b84330ca5dd631629302f342a11bf6211cf0711ff3f3273d63ddb072e84c8fe8bef48d511b264affc82090ee51036a09421f81878e10b0c047f572d7720de96
-DIST refpolicy-2.20220106.tar.bz2 560342 BLAKE2B bc0e65466333e02acb48adbb28b8176d3c8e508b2ff97d4f8a876d7c0a65534a62d86c9816ac59f6eed583f4b5c51cf432643edd2dad24dd51eb3cf22e2b75ac SHA512 794327d2dd07196b5f36771f9a961cdf294cf68f690735418d6bdd859499b7007c518cc022ccca9c245a5266b85bdb7cacdcaeefee14e4800937c9101476b373
diff --git a/sec-policy/selinux-sssd/metadata.xml b/sec-policy/selinux-sssd/metadata.xml
index 781bc07e6d..9173800ffc 100644
--- a/sec-policy/selinux-sssd/metadata.xml
+++ b/sec-policy/selinux-sssd/metadata.xml
@@ -1,5 +1,5 @@
-
+
selinux@gentoo.org
diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild
index 1ea2f80bdd..414bf67d66 100644
--- a/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild
+++ b/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -11,5 +11,5 @@ inherit selinux-policy-2
DESCRIPTION="SELinux policy for sssd"
if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="amd64 arm arm64 ~mips x86"
+ KEYWORDS="amd64 -arm ~arm64 ~mips x86"
fi
diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild
index 1ea2f80bdd..62027e0bdf 100644
--- a/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild
+++ b/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild
@@ -11,5 +11,5 @@ inherit selinux-policy-2
DESCRIPTION="SELinux policy for sssd"
if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="amd64 arm arm64 ~mips x86"
+ KEYWORDS="~amd64 -arm ~arm64 ~mips ~x86"
fi
diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20210908-r1.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20210908-r1.ebuild
deleted file mode 100644
index 1ea2f80bdd..0000000000
--- a/sec-policy/selinux-sssd/selinux-sssd-2.20210908-r1.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"
-
-IUSE=""
-MODS="sssd"
-
-inherit selinux-policy-2
-
-DESCRIPTION="SELinux policy for sssd"
-
-if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="amd64 arm arm64 ~mips x86"
-fi
diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20220106-r1.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20220106-r1.ebuild
deleted file mode 100644
index 6bb2ebbfe0..0000000000
--- a/sec-policy/selinux-sssd/selinux-sssd-2.20220106-r1.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-IUSE=""
-MODS="sssd"
-
-inherit selinux-policy-2
-
-DESCRIPTION="SELinux policy for sssd"
-
-if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
-fi
diff --git a/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild b/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild
index f1c278220c..69e1d26c00 100644
--- a/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild
+++ b/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -11,5 +11,5 @@ inherit selinux-policy-2
DESCRIPTION="SELinux policy for sssd"
if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86"
+ KEYWORDS="~amd64 -arm ~arm64 ~mips ~x86"
fi
diff --git a/sys-apps/gentoo-functions/Manifest b/sys-apps/gentoo-functions/Manifest
index 331a18a8dd..a861b9983d 100644
--- a/sys-apps/gentoo-functions/Manifest
+++ b/sys-apps/gentoo-functions/Manifest
@@ -1 +1,2 @@
-DIST gentoo-functions-0.13.tar.gz 11334 BLAKE2B 740e6d950b62b777e533d16b707cbf6f9ab0e9de4c92c5e755af186571539949017aadcd7d428b1e635f43052a575f89787b3e92087675b600a6b7350fda24a6 SHA512 61185197e1eb4155d0db9ba024dcb1b9eb0d272e3369f986668634012e35b57c3cdcd7beecd4714b9b48a0e44e8bb73472713949e16827aa05c055ec83d537dd
+DIST gentoo-functions-0.14.tar.gz 11330 BLAKE2B 72543941f2954e35d3671c1c482eda44ae00cf0c636a1d706c5b90c56dfbb985d20c156b6de650e5d33ff9fac0abaf9fc50b1172832c2bd5276f6adfe5baf3b8 SHA512 e1e0fee9f3e8b79478aaf2b9a54c8623c858e62f72f2885ea88f7006631cf513bdfaac7122f2a5fc97379bde57851793bf7d6c63a1c63a6923a7f13a73d803fc
+DIST gentoo-functions-0.15.tar.gz 11236 BLAKE2B da3df4ee809c33a7aa275757380584abcc70dc5f54d32b2e9d3336a9453cfc935e932df065a65a7458b885a449774713fead5aea99ea5e7ee522e5493d35482b SHA512 b2a42e5b43c487d62e036eade88b5cc8e0f4eb249c783837a0293cdbba4ed8a1eea8742d531885bcc56eefa337853c41d257b6a9880fc0e7420b490bb6f98fd4
diff --git a/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild b/sys-apps/gentoo-functions/gentoo-functions-0.14.ebuild
similarity index 64%
rename from sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild
rename to sys-apps/gentoo-functions/gentoo-functions-0.14.ebuild
index 92daae4fe6..a750147b59 100644
--- a/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild
+++ b/sys-apps/gentoo-functions/gentoo-functions-0.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2014-2020 Gentoo Authors
+# Copyright 2014-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -7,8 +7,8 @@ if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
else
- SRC_URI="https://github.com/gentoo/gentoo-functions/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+ SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
inherit toolchain-funcs flag-o-matic
diff --git a/sys-apps/gentoo-functions/gentoo-functions-0.15.ebuild b/sys-apps/gentoo-functions/gentoo-functions-0.15.ebuild
new file mode 100644
index 0000000000..8f51bdc66c
--- /dev/null
+++ b/sys-apps/gentoo-functions/gentoo-functions-0.15.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2014-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
+else
+ SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+fi
+
+inherit toolchain-funcs flag-o-matic
+
+DESCRIPTION="base functions required by all Gentoo systems"
+HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+src_configure() {
+ tc-export CC
+ append-lfs-flags
+ export ROOTPREFIX="${EPREFIX}"
+ export PREFIX="${EPREFIX}/usr"
+}
diff --git a/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild b/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild
index 04f1a329e9..6ab30b8f6e 100644
--- a/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild
+++ b/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2014-2020 Gentoo Authors
+# Copyright 2014-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -8,7 +8,7 @@ if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git"
else
SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
inherit toolchain-funcs flag-o-matic
diff --git a/sys-apps/gentoo-functions/metadata.xml b/sys-apps/gentoo-functions/metadata.xml
index 72a9e91e60..3756aa0576 100644
--- a/sys-apps/gentoo-functions/metadata.xml
+++ b/sys-apps/gentoo-functions/metadata.xml
@@ -1,5 +1,5 @@
-
+
williamh@gentoo.org
diff --git a/sys-block/open-isns/Manifest b/sys-block/open-isns/Manifest
index 7aa31df83d..0f443cd4bd 100644
--- a/sys-block/open-isns/Manifest
+++ b/sys-block/open-isns/Manifest
@@ -1,3 +1 @@
-DIST open-isns-0.100.tar.gz 300611 BLAKE2B a40e8d2bd6e5ac8ed8475d3d50ed6256871134547a044a6b51102ad47c66c335f06372b29e5585df4e59ecd7a817e5f2e48c5e944eea31333ab9f45d51040306 SHA512 ccf49ba1c60d46ae49b75424a966abc1f7e104c8ffa13013951a58a8f0ccaa1cf550f24fd2743fcaba1211a0ec8033c5df5249b7a108ae5974d4f1144dd3b169
-DIST open-isns-0.98.tar.gz 278410 BLAKE2B f90df85de4d5fd2abdcd267e3c873dff62fcac523ee280e21def057eca366bbba21c2b3bfbf5cc0798b8d0f3b0d5028ebb49000cccc850abdfb85142a7b66c34 SHA512 04263b9ace9d272f4e3776c4e1a034815475590d4b4864217a6200fcd5baea391cd788723db3c17fe0d764efc9769a70a3d2167b00e5998fb4bcb8d5fe2547ed
-DIST open-isns-0.99.tar.gz 282831 BLAKE2B 7140daf08fda894bcbed3e25b122909ad0ed86b4f3db2e42a23b97480dea554194d2a33a3ebdf4e2017a57c2023dd8589f2e2fcfa60470cc3a6a3fbfb0d0ccbc SHA512 90a2297535c5e939f83c761173ce5f5f88e68adc31e41e833b23d07b6dc6959572ae7184db0084b861918199a877b251ebae4b4a7456fdd8c93400dc8457adc9
+DIST open-isns-0.101.tar.gz 301912 BLAKE2B 98c9c36640ee4d3796538a00e7ab2e4cfb057abc66a56d27ce2eb133d591ea87bcb0e4ffb31b6d72d8e8c806edffb65600c0ae7cd63c61058f36037e3db79214 SHA512 e5a392127b0d85f36e9e4aa963c0c502af8c5aea0aba6d12abb4425649969dcc20ba6e87a99083626d981438439b17b71a86320f816042d82ed5dbe7e7a63e77
diff --git a/sys-block/open-isns/files/open-isns-0.100-no_Werror.patch b/sys-block/open-isns/files/open-isns-0.100-no_Werror.patch
deleted file mode 100644
index 2d966dd3a4..0000000000
--- a/sys-block/open-isns/files/open-isns-0.100-no_Werror.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 40eb9ce75518817762a0eac4a93016ab817add89 Mon Sep 17 00:00:00 2001
-From: Lee Duncan
-Date: Sat, 1 Feb 2020 10:23:04 -0800
-Subject: [PATCH] Fix 586 compile issue and remove -Werror
-
-Using -Werror causes any issue to break the build, whereas
-I'd rather let the build continue and address the issue.
-
-Also, fixed one signed-vs-unsigned compare for time_t, which
-shows up only on 586 (32-bit).
----
- configure.ac | 2 +-
- isnsdd.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index e4f3995..d956e58 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -17,7 +17,7 @@ AC_PATH_PROG(SH, sh)
- dnl C Compiler features
- AC_C_INLINE
- if test "$GCC" = "yes"; then
-- CFLAGS="-Wall -Werror -Wextra $CFLAGS"
-+ CFLAGS="-Wall -Wextra $CFLAGS"
- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- fi
-
-diff --git a/isnsdd.c b/isnsdd.c
-index 58825cc..9cedb9f 100644
---- a/isnsdd.c
-+++ b/isnsdd.c
-@@ -401,7 +401,7 @@ check_portal_registration(__attribute__((unused))void *ptr)
- continue;
-
- last_modified = isns_object_last_modified(obj);
-- if (last_modified + 2 * interval > now) {
-+ if ((time_t)(last_modified + 2 * interval) > now) {
- good_portals++;
- continue;
- }
diff --git a/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch b/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch
new file mode 100644
index 0000000000..66e52e5481
--- /dev/null
+++ b/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch
@@ -0,0 +1,30 @@
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -33,6 +33,7 @@ else
+ SOLIB_VERSION_OPTS =
+ endif
+
++AR = @AR@
+ CC = @CC@
+ CPPFLAGS= @CPPFLAGS@
+ CFLAGS = @CFLAGS@ -I. -Iinclude -I$(srcdir) -I$(srcdir)/include
+@@ -161,7 +162,7 @@ solib-message.o: message.c
+
+ ifeq ($(BUILD_STATIC),1)
+ $(LIB): $(LIBOBJS)
+- ar cr $@ $(LIBOBJS)
++ $(AR) cr $@ $(LIBOBJS)
+ else
+ $(LIB):
+ endif
+--- a/configure.ac
++++ b/configure.ac
+@@ -4,6 +4,7 @@ AC_CONFIG_AUX_DIR([aclocal])
+
+ AC_CONFIG_HEADER(config.h)
+
++AM_PROG_AR
+ AC_PROG_CC
+ AC_CANONICAL_HOST
+ AC_C_BIGENDIAN
+
diff --git a/sys-block/open-isns/files/open-isns-0.98-libressl-compatibility.patch b/sys-block/open-isns/files/open-isns-0.98-libressl-compatibility.patch
deleted file mode 100644
index b4d5ae6378..0000000000
--- a/sys-block/open-isns/files/open-isns-0.98-libressl-compatibility.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/pki.c.orig
-+++ b/pki.c
-@@ -30,7 +30,7 @@
- #endif
- /* OpenSSL 1.1 made a lot of structures opaque, so we need to
- * define the 1.1 wrappers in previous versions. */
--#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
- #define EVP_PKEY_base_id(o) ((o)->type)
- #define EVP_PKEY_get0_DSA(o) ((o)->pkey.dsa)
- static EVP_MD_CTX *EVP_MD_CTX_new(void)
diff --git a/sys-block/open-isns/metadata.xml b/sys-block/open-isns/metadata.xml
index c3470797ff..1f3be78992 100644
--- a/sys-block/open-isns/metadata.xml
+++ b/sys-block/open-isns/metadata.xml
@@ -1,5 +1,5 @@
-
-
+
+
base-system@gentoo.org
diff --git a/sys-block/open-isns/open-isns-0.100.ebuild b/sys-block/open-isns/open-isns-0.101.ebuild
similarity index 68%
rename from sys-block/open-isns/open-isns-0.100.ebuild
rename to sys-block/open-isns/open-isns-0.101.ebuild
index 878669c907..bab579725b 100644
--- a/sys-block/open-isns/open-isns-0.100.ebuild
+++ b/sys-block/open-isns/open-isns-0.101.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
@@ -11,27 +11,24 @@ SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.g
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="debug libressl ssl static"
+KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86"
+IUSE="debug ssl static"
DEPEND="
ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ dev-libs/openssl:0=
)
"
RDEPEND="${DEPEND}"
PATCHES=(
- "${FILESDIR}/${PN}-0.98-libressl-compatibility.patch"
-
- # Upstream patches (can usually be removed with next version bump)
- "${FILESDIR}"/${P}-no_Werror.patch
+ "${FILESDIR}/${PN}-0.100-respect-AR.patch"
)
src_prepare() {
default
eautoreconf
+ touch aclocal/ar-lib || die #775389
}
src_configure() {
diff --git a/sys-block/open-isns/open-isns-0.98.ebuild b/sys-block/open-isns/open-isns-0.98.ebuild
deleted file mode 100644
index d429794c4e..0000000000
--- a/sys-block/open-isns/open-isns-0.98.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic
-
-DESCRIPTION="iSNS server and client for Linux"
-HOMEPAGE="https://github.com/open-iscsi/open-isns"
-SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc ~x86"
-IUSE="debug libressl slp ssl static"
-
-DEPEND="
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- slp? ( net-libs/openslp )"
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}/${P}-libressl-compatibility.patch" )
-
-src_configure() {
- use debug && append-cppflags -DDEBUG_TCP -DDEBUG_SCSI
- append-lfs-flags
- econf $(use_with slp) \
- $(use_with ssl security) \
- $(use_enable !static shared)
-}
-
-src_install() {
- default
- emake DESTDIR="${D}" install_hdrs
- emake DESTDIR="${D}" install_lib
-}
diff --git a/sys-block/open-isns/open-isns-0.99.ebuild b/sys-block/open-isns/open-isns-0.99.ebuild
deleted file mode 100644
index e9c2b890b9..0000000000
--- a/sys-block/open-isns/open-isns-0.99.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-DESCRIPTION="iSNS server and client for Linux"
-HOMEPAGE="https://github.com/open-iscsi/open-isns"
-SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
-IUSE="debug libressl slp ssl static"
-
-DEPEND="
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- slp? ( net-libs/openslp )"
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}/${PN}-0.98-libressl-compatibility.patch" )
-
-src_configure() {
- use debug && append-cppflags -DDEBUG_TCP -DDEBUG_SCSI
- append-lfs-flags
- local myeconfargs=(
- $(use_with slp)
- $(use_with ssl security)
- $(use_enable !static shared)
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- emake DESTDIR="${D}" install_hdrs
- emake DESTDIR="${D}" install_lib
- keepdir /var/lib/${PN/open-}
- if ! use static ; then
- find "${ED}" -type f -name "*.a" -delete || die
- fi
-}
diff --git a/sys-devel/binutils-config/Manifest b/sys-devel/binutils-config/Manifest
index 11c1fba10e..ec46795d11 100644
--- a/sys-devel/binutils-config/Manifest
+++ b/sys-devel/binutils-config/Manifest
@@ -1 +1,2 @@
-DIST binutils-config-5.3.2.tar.xz 6840 BLAKE2B 4f02b8d1f3f8d4adca811772edba6167fc0e739f8ff1e895f30745eca45b559da6622bb76a0cac6016d6e864fe7ad6c921c64c7ec1c18c130b3a64a1dd7b9cbc SHA512 03dfecf46fee941b7b9fc35b63ffd22c795ab54f0444f16fc00ed44d27c81f6baaca33170fb700cfc4d767be469f305890882839536363bc466ad200d28d2228
+DIST binutils-config-5.4.1.tar.xz 7328 BLAKE2B 51f0ca625abfd964cc1b6c902017edc9790da1d33a44b3da64e3b2c68ed245fc1c0eb8b3fb999f6acb88e614f47e2f53e19b456b03c069bb61cd0f39e85d786d SHA512 af12644d591152f45d573bee0499b21c293b68a9b81626e9e1d46d5a7dc40e9a24642364bdb2bce52d61cbe3d2e045f4ab6e50a9827648a820bac885f20239cd
+DIST binutils-config-5.4.tar.xz 7332 BLAKE2B 1dd0fdebf028e9d95caa395948037d51ac1e627f370921b56fc99a6fe2e2100ddb202c8027ad1e67330306de8b4cbc6a03753105d401198e515b22fca94f760f SHA512 79411afcbec3a6cce960be1b06e4a6efdf55081992f6a92157737f7ef41fc61eaec0005078a4ce0cd78ad6af14583ab85f4f2b7b43808238088d521e1aa31af1
diff --git a/sys-devel/binutils-config/binutils-config-5-r4.ebuild b/sys-devel/binutils-config/binutils-config-5-r4.ebuild
deleted file mode 100644
index 39263f45c2..0000000000
--- a/sys-devel/binutils-config/binutils-config-5-r4.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit prefix
-
-DESCRIPTION="Utility to change the binutils version being used"
-HOMEPAGE="https://www.gentoo.org/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
-IUSE=""
-
-# We also RDEPEND on sys-apps/findutils which is in base @system
-RDEPEND="sys-apps/gentoo-functions
- !/dev/null | awk '$NF == "*" { print $2 }') ; do
+ binutils-config ${x}
+ done
+}
diff --git a/sys-devel/binutils-config/binutils-config-5.3.2.ebuild b/sys-devel/binutils-config/binutils-config-5.4.ebuild
similarity index 81%
rename from sys-devel/binutils-config/binutils-config-5.3.2.ebuild
rename to sys-devel/binutils-config/binutils-config-5.4.ebuild
index 2a949b4fb1..11e69fe4f7 100644
--- a/sys-devel/binutils-config/binutils-config-5.3.2.ebuild
+++ b/sys-devel/binutils-config/binutils-config-5.4.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
@@ -9,8 +9,8 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git"
inherit git-r3
else
- SRC_URI="https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
+ SRC_URI="https://dev.gentoo.org/~sam/distfiles/${P}.tar.xz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
DESCRIPTION="Utility to change the binutils version being used"
@@ -24,7 +24,7 @@ IUSE="+native-symlinks"
RDEPEND="sys-apps/gentoo-functions"
src_compile() {
- emake DESTDIR="${D}" PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)"
+ emake PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)"
}
src_install() {
diff --git a/sys-devel/binutils-config/binutils-config-9999.ebuild b/sys-devel/binutils-config/binutils-config-9999.ebuild
new file mode 100644
index 0000000000..0282c67448
--- /dev/null
+++ b/sys-devel/binutils-config/binutils-config-9999.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git"
+ inherit git-r3
+else
+ SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="Utility to change the binutils version being used"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Toolchain"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+native-symlinks"
+
+# We also RDEPEND on sys-apps/findutils which is in base @system
+RDEPEND="sys-apps/gentoo-functions"
+
+src_compile() {
+ emake PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PV="${PV}" install
+}
+
+pkg_postinst() {
+ # Re-register all targets. USE flags or new versions can change
+ # installed symlinks.
+ local x
+ for x in $(binutils-config -C -l 2>/dev/null | awk '$NF == "*" { print $2 }') ; do
+ binutils-config ${x}
+ done
+}
diff --git a/sys-devel/binutils-config/files/binutils-config-5 b/sys-devel/binutils-config/files/binutils-config-5
deleted file mode 100755
index d4df601a74..0000000000
--- a/sys-devel/binutils-config/files/binutils-config-5
+++ /dev/null
@@ -1,490 +0,0 @@
-#!/bin/bash
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# Format of /etc/env.d/binutils/:
-# config-TARGET: CURRENT=version for TARGET
-# TARGET-VER: has a TARGET and VER variable
-
-EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
-if [[ ${EPREFIX} == "@"GENTOO_PORTAGE_EPREFIX"@" ]] ; then
- EPREFIX=""
-fi
-
-: ${ROOT:=/}
-[[ ${ROOT} != */ ]] && ROOT="${ROOT}/"
-[[ ${ROOT} != /* ]] && ROOT="${PWD%/}/${ROOT}"
-
-EROOT="${ROOT%/}${EPREFIX}/"
-
-cd "${EPREFIX}/"
-
-trap ":" INT QUIT TSTP
-
-argv0=${0##*/}
-FUNCTIONS_SH="${EPREFIX}/lib/gentoo/functions.sh"
-source ${FUNCTIONS_SH} || {
- echo "${argv0}: Could not source ${FUNCTIONS_SH}!" 1>&2
- exit 1
-}
-esyslog() { :; }
-die() { eerror "${argv0}: $*"; exit 1; }
-umask 022
-
-usage() {
-cat << USAGE_END
-Usage: ${HILITE}binutils-config${NORMAL} ${GOOD}[options]${NORMAL} ${BRACKET}[binutils profile]${NORMAL}
-
-${HILITE}General Options:${NORMAL}
- ${GOOD}-c, --get-current-profile${NORMAL} Print current profile
- ${GOOD}-l, --list-profiles${NORMAL} Print a list of available profiles
- ${GOOD}-u, --uninstall${NORMAL} Remove all signs of specified target
- ${GOOD}-d, --debug${NORMAL} Execute with debug output
-
-${HILITE}General Cruft:${NORMAL}
- ${GOOD}--linker${NORMAL} Switch to specified linker (if supported)
-
-Profile names are of the form: ${BRACKET}-${NORMAL}
-For example: ${BRACKET}i686-pc-linux-gnu-2.15.92.0.2${NORMAL}
-
-For more info, please see ${HILITE}binutils-config${NORMAL}(8).
-USAGE_END
-
- exit ${1:-1}
-}
-
-mv_if_diff() {
- if cmp -s "$1" "$2" ; then
- rm -f "$1"
- else
- mv -f "$1" "$2"
- fi
-}
-atomic_ln() {
- local target=$1 linkdir=$2 linkname=$3 linktmp linkfull
- linktmp="${linkdir}/.binutils-config.tmp.${linkname}"
- linkfull="${linkdir}/${linkname}"
- if [[ -d ${linkfull} ]] ; then
- # if linking to a dir, we need a little magic to
- # make it atomic since `mv -T` is not portable
- rm -rf "${linktmp}"
- mkdir -p "${linktmp}"
- ln -sf "${target}" "${linktmp}/${linkname}"
- mv "${linktmp}/${linkname}" "${linktmp}/../"
- rmdir "${linktmp}"
- else
- # `ln` will expand into unlink();symlink(); which
- # is not atomic for a small amount of time, but
- # `mv` is a single rename() call
- ln -sf "${target}" "${linktmp}"
- mv "${linktmp}" "${linkfull}"
- fi
-}
-
-setup_env() {
- unset TARGET VER LIBPATH
- source "${ENV_D}/${PROFILE}"
- if [[ -z ${TARGET} ]] ; then
- eerror "${PROFILE} is invalid (no \$TARGET defined) :("
- return 1
- fi
- if [[ -z ${VER} ]] ; then
- eerror "${PROFILE} is invalid (no \$VER defined) :("
- return 1
- fi
-
- #
- # Generate binary symlinks
- #
- BINPATH=""
- BINPATH_LINKS=""
- if [[ ${TARGET} != ${HOST} ]] ; then
- #
- # Newer paths: /usr/${HOST}/${TARGET}/...
- # Older paths: /usr/${TARGET}/...
- #
- if [[ -d "${EROOT}"/usr/${HOST}/${TARGET}/binutils-bin/${VER} ]] ; then
- BINPATH="${EPREFIX}"/usr/${HOST}/${TARGET}/binutils-bin/${VER}
- BINPATH_LINKS="${EPREFIX}"/usr/libexec/gcc/${TARGET}
- fi
- fi
- if [[ -z ${BINPATH} ]] ; then
- BINPATH="${EPREFIX}"/usr/${TARGET}/binutils-bin/${VER}
- BINPATH_LINKS="${EPREFIX}"/usr/${TARGET}/bin
- fi
-}
-
-# Lists of headers that various versions have installed.
-HEADERS=(
- ansidecl.h bfd.h bfdlink.h demangle.h dis-asm.h dyn-string.h
- fibheap.h hashtab.h libiberty.h objalloc.h plugin-api.h
- splay-tree.h symcat.h
-)
-
-switch_profile() {
- local x
-
- ebegin "Switching to ${PROFILE}"
-
- setup_env || return 1
-
- cd "${ROOT}/${BINPATH}" || exit 1
- mkdir -p "${ROOT}/${BINPATH_LINKS}" "${EROOT}/usr/bin"
- for x in * ; do
- atomic_ln "${BINPATH}/${x}" "${ROOT}/${BINPATH_LINKS}" "${x}"
- atomic_ln "${BINPATH_LINKS}/${x}" "${EROOT}/usr/bin" "${TARGET}-${x}"
- if [[ ${TARGET} == ${HOST} ]] ; then
- atomic_ln "${TARGET}-${x}" "${EROOT}/usr/bin" "${x}"
- fi
- done
-
- #
- # Generate library / ldscripts symlinks
- #
- : ${LIBPATH:=${EPREFIX}/usr/lib/binutils/${TARGET}/${VER}}
- cd "${ROOT}/${LIBPATH}" || exit 1
- if [[ ${TARGET} == ${HOST} ]] ; then
- dstlib=${EROOT}/usr/${HOST}/lib
- else
- dstlib=${EROOT}/usr/${HOST}/${TARGET}/lib
- fi
- # When upgrading, we need to clean up ldscripts and libs.
- # Don't symlink back in the libs -- the binutils-lib package handles
- # these now.
- # TODO: Stop requiring even the ldscripts symlink.
- mkdir -p "${dstlib}"
- rm -rf "${ROOT}/${BINPATH_LINKS}"/ldscripts
- atomic_ln "${LIBPATH}/ldscripts" "${dstlib}" "ldscripts"
- find -L "${dstlib}" -xtype l -name 'lib*' -delete
- # Detect older binutils w/broken rpaths. #562460
- # We can hardcode the "/lib" part since that's what the binutils
- # configure scripts have. They did not include any other path.
- if [[ $(scanelf -qF '%r#F' "${ROOT}/${BINPATH}/as") == */lib ]] ; then
- ewarn "Old cross-binutils detected; please re-emerge to fix (see bug #562460)."
- for x in lib* ; do
- atomic_ln "${LIBPATH}/${x}" "${dstlib}" "${x}"
- done
- fi
-
- #
- # Clean out old generated include symlinks
- #
- INCPATH=${LIBPATH}/include
- if [[ -d ${ROOT}/${INCPATH} ]] ; then
- cd "${ROOT}/${INCPATH}" || exit 1
- if [[ ${HOST} == ${TARGET} ]] ; then
- # The binutils-lib package handles these files now.
- for x in libiberty "${HEADERS[@]}" ; do
- x="${EROOT}/usr/include/${x}"
- if [[ -L ${x} ]] ; then
- rm "${x}"
- fi
- done
- else
- # Clean out old path -- cannot use '-exec {} +' syntax here
- find . -type f -exec rm -f "${EROOT}/usr/${TARGET}/usr/include/{}" \;
- rmdir "${EROOT}/usr/${TARGET}/usr/include" >& /dev/null
- rmdir "${EROOT}/usr/${TARGET}/usr" >& /dev/null
- rmdir "${EROOT}/usr/${TARGET}" >& /dev/null
- fi
- fi
-
- #
- # Make sure proper paths get updated
- #
- local env_update_flag="--no-ldconfig"
- if [[ ${TARGET} == ${HOST} ]] ; then
- # Delete old config now that binutils-libs installs these files.
- # Note: This skips ldconfig update if env.d had LDPATH, but meh.
- # Most people have upgraded to ld.so.conf.d, and someone else will
- # eventually re-run ldconfig for us.
- x="${EROOT}"/etc/ld.so.conf.d/05binutils.conf
- if [[ -e ${x} ]]; then
- rm -f "${x}"
- env_update_flag=""
- fi
-
- DATAPATH="${EPREFIX}"/usr/share/binutils-data/${TARGET}/${VER}
- local e="${EROOT}"/etc/env.d/05binutils
- local ee="${e}.tmp"
- rm -f "${ee}"
- [[ -d ${ROOT}/${DATAPATH}/man ]] && echo "MANPATH=${DATAPATH}/man" >> "${ee}"
- [[ -d ${ROOT}/${DATAPATH}/info ]] && echo "INFOPATH=${DATAPATH}/info" >> "${ee}"
- mv_if_diff "${ee}" "${e}"
- fi
-
- local c="${ENV_D}/config-${TARGET}"
- local cc="${c}.tmp"
- echo "CURRENT=${VER}" > "${cc}"
- mv_if_diff "${cc}" "${c}"
-
- eend 0
-
- #
- # Regen env.d if need/can be
- #
- if [[ ${ROOT} == "/" ]] && [[ ${TARGET} == ${HOST} ]] ; then
- env-update ${env_update_flag}
- echo
- ewarn "Please remember to run:"
- echo
- ewarn " # . ${EPREFIX}/etc/profile"
- echo
- fi
-
- return 0
-}
-
-uninstall_target() {
- : ${TARGET:=${UARG}}
-
- if [[ ${TARGET} == ${HOST} ]] ; then
- die "refusing to uninstall native binutils"
- fi
-
- shopt -s nullglob
- PROFILE=""
-
- for PROFILE in "${ENV_D}"/${TARGET}-* ; do
- ewarn "Removing all signs of ${PROFILE##*/}"
- rm -f "${ENV_D}"/${PROFILE}
- done
- if [[ -z ${PROFILE} ]] && [[ ! -e ${ENV_D}/config-${TARGET} ]] ; then
- die "no profiles exist for '${TARGET}'"
- fi
-
- rm -f "${ENV_D}"/config-${TARGET}
-
- local x
- for x in \
- addr2line ar as c++filt dwp elf2flt elfedit flthdr gprof \
- ld ld.{bfd,gold,real} \
- nm objcopy objdump ranlib readelf size strings strip
- do
- x=(
- "${EROOT}"/usr/bin/${TARGET}-${x}
- "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin/${x}
- "${EROOT}"/usr/libexec/gcc/${TARGET}/${x}
- )
- rm -f "${x[@]}"
- done
- for x in "${HEADERS[@]}" ; do
- rm -f "${EROOT}"/usr/{${HOST}/,}${TARGET}/{usr/,}include/${x}
- done
- for x in bfd iberty opcodes ; do
- rm -f "${EROOT}"/usr/${HOST}/${TARGET}/lib/lib${x}{{-*,}.so,.a,.la}
- done
- # Delete broken symlinks
- local destdir="${EROOT}/usr/${HOST}/${TARGET}"
- rm -f "${destdir}"/lib/ldscripts
- find -L "${destdir}"/lib -type l -exec rm {} +
- rmdir \
- "${destdir}"/{bin,include,lib,usr} \
- "${destdir}" \
- "${EROOT}"/var/db/pkg/cross-${TARGET} \
- "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin \
- "${EROOT}"/usr/libexec/gcc/${TARGET} \
- 2>/dev/null
-
- rm -f "${ENV_D}"/${TARGET}-*
-}
-
-set_current_profile() {
- if [[ ! -f ${ENV_D}/config-${TARGET} ]] ; then
- eerror "${argv0}: unable to locate a profile for target: ${TARGET}"
- return 1
- fi
-
- source "${ENV_D}/config-${TARGET}"
-
- if [[ -z ${CURRENT} ]] ; then
- eerror "${argv0}: no binutils profile is active!"
- return 1
- fi
-
- echo "${TARGET}-${CURRENT}"
-
- return 0
-}
-get_current_profile() { echo "${PROFILE}" ; }
-
-list_profiles() {
- local x i target
-
- if [[ ${ROOT} != / ]] ; then
- echo "Using binutils-config info in ${ROOT}"
- fi
-
- set -- "${ENV_D}"/*
- target=
- i=1
-
- for x ; do
- # skip broken links and config files
- [[ -f ${x} ]] || continue
- [[ ${x} == */config-* ]] && continue
-
- source "${x}"
- if [[ ${target} != ${TARGET} ]] ; then
- [[ -n ${target} ]] && echo
- target=${TARGET}
- fi
-
- x=${x##*/}
- if [[ -e ${ENV_D}/config-${TARGET} ]] ; then
- source "${ENV_D}/config-${TARGET}"
- if [[ ${VER} == ${CURRENT} ]] ; then
- [[ ${TARGET} == ${HOST} ]] \
- && x="${x} ${GOOD}*${NORMAL}" \
- || x="${x} ${HILITE}*${NORMAL}"
- fi
- fi
-
- # We would align the [...] field like so:
- #printf ' [%*ss] %s\n' ${##} "${i}" "${x}"
- # but this breaks simple scripting: `binutils -l | awk '{print $2}'`
-
- # Or we could align the target col like so:
- #printf ' [%s]%*s %s\n' "${i}" $(( ${##} - ${#i} )) "" "${x}"
- # but i'm not sold that it looks better
-
- # So keep it simple ... only makes a diff anyways for crazy people
- # like me which have 100+ binutils packages installed ...
- echo " [$i] ${x}"
- ((++i))
- done
-}
-
-switch_linker() {
- local bpath ld=$1
-
- case ${ld} in
- ld.*) ;;
- *) die "not supported: linker must start with 'ld.'" ;;
- esac
-
- setup_env || return 1
- bpath="${ROOT}/${BINPATH}"
-
- # does this binutils even support the requested linker ?
- if [[ ! -e ${bpath}/${ld} ]] ; then
- die "sorry, but ${PROFILE} doesn't support the ${ld} linker"
- fi
-
- # switch it up
- ebegin "Setting default linker to ${ld} for ${PROFILE}"
- atomic_ln ${ld} "${bpath}" ld
- eend $?
-}
-
-set_HOST() {
- # Set HOST to CHOST if it isn't already set
- : ${HOST:=${CHOST:-$(portageq envvar CHOST)}}
-}
-
-ENV_D="${EROOT}etc/env.d/binutils"
-
-DEBUG="no"
-NEED_ACTION="yes"
-DOIT="switch_profile"
-PROFILE="current"
-HOST=""
-TARGET=""
-unset UARG
-
-select_action() {
- if [[ ${NEED_ACTION} != "no" ]] ; then
- NEED_ACTION="no"
- DOIT=$1
- else
- die "one action at a time!"
- fi
-}
-
-while [[ $# -gt 0 ]] ; do
- x=$1
- shift
- case ${x} in
- -c|--get-current-profile) select_action get_current_profile ;;
- -l|--list|--list-profiles) select_action list_profiles ;;
- -u|--uninstall) select_action uninstall_target ;;
- --linker) select_action "switch_linker $1"; shift ;;
- -d|--debug) DEBUG="yes" ;;
- -h|--help) usage 0 ;;
- -V|--version)
- ver="@PV@"
- echo "binutils-config-${ver/@'PV'@/git}"
- exit 0
- ;;
- -*)
- die "invalid switch! Try '--help'."
- ;;
- *)
- if [[ ${UARG+set} == "set" ]] ; then
- die "only one profile/target at a time please"
- fi
- NEED_ACTION="maybe"
- UARG=${x}
- ;;
- esac
-done
-
-[[ ${NEED_ACTION} == "yes" ]] && usage 1
-[[ ${DEBUG} == "yes" ]] && set -x
-
-# All operations need to know the current HOST to figure out
-# what is a native target and what is a cross target
-set_HOST
-
-# All operations need to know the profile the user wants
-case ${DOIT} in
-switch_profile|switch_linker_*)
- # decode user's profile choice
- x=${UARG:-$(TARGET=${HOST} set_current_profile)}
- PROFILE=""
- if [[ -z $(echo ${x} | tr -d '[:digit:]') ]] ; then
- # User gave us a # representing the profile
- i=1
- for y in "${ENV_D}"/* ; do
- [[ ${y/config-} != ${y} ]] && continue
-
- if [[ -f ${y} ]] && [[ ${x} -eq ${i} ]] ; then
- PROFILE=${y##*/}
- break
- fi
- ((++i))
- done
- fi
-
- if [[ -z ${PROFILE} ]] ; then
- # User gave us a full HOST-ver
- x=${x##*/}
- if [[ -f ${ENV_D}/${x} ]] ; then
- # Valid HOST-ver yeah!
- PROFILE=${x}
- else
- # Not a valid HOST-ver ...
- if [[ ! -f ${ENV_D}/config-${x} ]] ; then
- # Maybe they just gave us a ver ...
- if [[ -f ${ENV_D}/${HOST}-${x} ]] ; then
- x=${HOST}-${x}
- else
- die "could not locate '$x' in '${ENV_D}/'!"
- fi
- PROFILE=${x}
- else
- # Maybe they just gave us a target ... pick active profile
- PROFILE=$(TARGET=${x} set_current_profile)
- fi
- fi
- fi
- ;;
-*)
- # lookup current profile as the user gave us a target
- PROFILE=$(TARGET=${UARG:-${HOST}} set_current_profile) || exit 1
- ;;
-esac
-
-eval ${DOIT}
-
-# vim:ts=4
diff --git a/sys-devel/binutils-config/files/binutils-config-5.1 b/sys-devel/binutils-config/files/binutils-config-5.1
deleted file mode 100644
index 26ff278eec..0000000000
--- a/sys-devel/binutils-config/files/binutils-config-5.1
+++ /dev/null
@@ -1,482 +0,0 @@
-#!/bin/bash
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# Format of /etc/env.d/binutils/:
-# config-TARGET: CURRENT=version for TARGET
-# TARGET-VER: has a TARGET and VER variable
-
-EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
-if [[ ${EPREFIX} == "@"GENTOO_PORTAGE_EPREFIX"@" ]] ; then
- EPREFIX=""
-fi
-
-: ${ROOT:=/}
-[[ ${ROOT} != */ ]] && ROOT="${ROOT}/"
-[[ ${ROOT} != /* ]] && ROOT="${PWD%/}/${ROOT}"
-
-EROOT="${ROOT%/}${EPREFIX}/"
-
-cd "${EPREFIX}/"
-
-trap ":" INT QUIT TSTP
-
-argv0=${0##*/}
-FUNCTIONS_SH="${EPREFIX}/lib/gentoo/functions.sh"
-source ${FUNCTIONS_SH} || {
- echo "${argv0}: Could not source ${FUNCTIONS_SH}!" 1>&2
- exit 1
-}
-esyslog() { :; }
-die() { eerror "${argv0}: $*"; exit 1; }
-umask 022
-
-usage() {
-cat << USAGE_END
-Usage: ${HILITE}binutils-config${NORMAL} ${GOOD}[options]${NORMAL} ${BRACKET}[binutils profile]${NORMAL}
-
-${HILITE}General Options:${NORMAL}
- ${GOOD}-c, --get-current-profile${NORMAL} Print current profile
- ${GOOD}-l, --list-profiles${NORMAL} Print a list of available profiles
- ${GOOD}-u, --uninstall${NORMAL} Remove all signs of specified target
- ${GOOD}-d, --debug${NORMAL} Execute with debug output
-
-${HILITE}General Cruft:${NORMAL}
- ${GOOD}--linker${NORMAL} Switch to specified linker (if supported)
-
-Profile names are of the form: ${BRACKET}-${NORMAL}
-For example: ${BRACKET}i686-pc-linux-gnu-2.15.92.0.2${NORMAL}
-
-For more info, please see ${HILITE}binutils-config${NORMAL}(8).
-USAGE_END
-
- exit ${1:-1}
-}
-
-mv_if_diff() {
- if cmp -s "$1" "$2" ; then
- rm -f "$1"
- else
- mv -f "$1" "$2"
- fi
-}
-atomic_ln() {
- local target=$1 linkdir=$2 linkname=$3 linktmp linkfull
- linktmp="${linkdir}/.binutils-config.tmp.${linkname}"
- linkfull="${linkdir}/${linkname}"
- if [[ -d ${linkfull} ]] ; then
- # if linking to a dir, we need a little magic to
- # make it atomic since `mv -T` is not portable
- rm -rf "${linktmp}"
- mkdir -p "${linktmp}"
- ln -sf "${target}" "${linktmp}/${linkname}"
- mv "${linktmp}/${linkname}" "${linktmp}/../"
- rmdir "${linktmp}"
- else
- # `ln` will expand into unlink();symlink(); which
- # is not atomic for a small amount of time, but
- # `mv` is a single rename() call
- ln -sf "${target}" "${linktmp}"
- mv "${linktmp}" "${linkfull}"
- fi
-}
-
-setup_env() {
- unset TARGET VER LIBPATH
- source "${ENV_D}/${PROFILE}"
- if [[ -z ${TARGET} ]] ; then
- eerror "${PROFILE} is invalid (no \$TARGET defined) :("
- return 1
- fi
- if [[ -z ${VER} ]] ; then
- eerror "${PROFILE} is invalid (no \$VER defined) :("
- return 1
- fi
-
- #
- # Generate binary symlinks
- #
- BINPATH=""
- BINPATH_LINKS=""
- if [[ ${TARGET} != ${HOST} ]] ; then
- #
- # Newer paths: /usr/${HOST}/${TARGET}/...
- # Older paths: /usr/${TARGET}/...
- #
- if [[ -d "${EROOT}"/usr/${HOST}/${TARGET}/binutils-bin/${VER} ]] ; then
- BINPATH="${EPREFIX}"/usr/${HOST}/${TARGET}/binutils-bin/${VER}
- BINPATH_LINKS="${EPREFIX}"/usr/libexec/gcc/${TARGET}
- fi
- fi
- if [[ -z ${BINPATH} ]] ; then
- BINPATH="${EPREFIX}"/usr/${TARGET}/binutils-bin/${VER}
- BINPATH_LINKS="${EPREFIX}"/usr/${TARGET}/bin
- fi
-}
-
-# Lists of headers that various versions have installed.
-HEADERS=(
- ansidecl.h bfd.h bfdlink.h demangle.h dis-asm.h dyn-string.h
- fibheap.h hashtab.h libiberty.h objalloc.h plugin-api.h
- splay-tree.h symcat.h
-)
-
-switch_profile() {
- local x
-
- ebegin "Switching to ${PROFILE}"
-
- setup_env || return 1
-
- cd "${ROOT}/${BINPATH}" || exit 1
- mkdir -p "${ROOT}/${BINPATH_LINKS}" "${EROOT}/usr/bin"
- for x in * ; do
- atomic_ln "${BINPATH}/${x}" "${ROOT}/${BINPATH_LINKS}" "${x}"
- atomic_ln "${BINPATH_LINKS}/${x}" "${EROOT}/usr/bin" "${TARGET}-${x}"
- if [[ ${TARGET} == ${HOST} ]] ; then
- atomic_ln "${TARGET}-${x}" "${EROOT}/usr/bin" "${x}"
- fi
- done
-
- #
- # Generate library / ldscripts symlinks
- #
- : ${LIBPATH:=${EPREFIX}/usr/lib/binutils/${TARGET}/${VER}}
- cd "${ROOT}/${LIBPATH}" || exit 1
- if [[ ${TARGET} == ${HOST} ]] ; then
- dstlib=${EROOT}/usr/${HOST}/lib
- else
- dstlib=${EROOT}/usr/${HOST}/${TARGET}/lib
- fi
- # When upgrading, we need to clean up ldscripts and libs.
- # Don't symlink back in the libs -- the binutils-lib package handles
- # these now.
- # TODO: Stop requiring even the ldscripts symlink.
- mkdir -p "${dstlib}"
- rm -rf "${ROOT}/${BINPATH_LINKS}"/ldscripts
- atomic_ln "${LIBPATH}/ldscripts" "${dstlib}" "ldscripts"
- find -L "${dstlib}" -xtype l -name 'lib*' -delete
- # Detect older binutils w/broken rpaths. #562460
- # We can hardcode the "/lib" part since that's what the binutils
- # configure scripts have. They did not include any other path.
- if [[ $(scanelf -qF '%r#F' "${ROOT}/${BINPATH}/as") == */lib ]] ; then
- ewarn "Old cross-binutils detected; please re-emerge to fix (see bug #562460)."
- for x in lib* ; do
- atomic_ln "${LIBPATH}/${x}" "${dstlib}" "${x}"
- done
- fi
-
- #
- # Clean out old generated include symlinks
- #
- INCPATH=${LIBPATH}/include
- if [[ -d ${ROOT}/${INCPATH} ]] ; then
- cd "${ROOT}/${INCPATH}" || exit 1
- if [[ ${HOST} != ${TARGET} ]] ; then
- # Clean out old path -- cannot use '-exec {} +' syntax here
- find . -type f -exec rm -f "${EROOT}/usr/${TARGET}/usr/include/{}" \;
- rmdir "${EROOT}/usr/${TARGET}/usr/include" >& /dev/null
- rmdir "${EROOT}/usr/${TARGET}/usr" >& /dev/null
- rmdir "${EROOT}/usr/${TARGET}" >& /dev/null
- fi
- fi
-
- #
- # Make sure proper paths get updated
- #
- local env_update_flag="--no-ldconfig"
- if [[ ${TARGET} == ${HOST} ]] ; then
- # Delete old config now that binutils-libs installs these files.
- # Note: This skips ldconfig update if env.d had LDPATH, but meh.
- # Most people have upgraded to ld.so.conf.d, and someone else will
- # eventually re-run ldconfig for us.
- x="${EROOT}"/etc/ld.so.conf.d/05binutils.conf
- if [[ -e ${x} ]]; then
- rm -f "${x}"
- env_update_flag=""
- fi
-
- DATAPATH="${EPREFIX}"/usr/share/binutils-data/${TARGET}/${VER}
- local e="${EROOT}"/etc/env.d/05binutils
- local ee="${e}.tmp"
- rm -f "${ee}"
- [[ -d ${ROOT}/${DATAPATH}/man ]] && echo "MANPATH=${DATAPATH}/man" >> "${ee}"
- [[ -d ${ROOT}/${DATAPATH}/info ]] && echo "INFOPATH=${DATAPATH}/info" >> "${ee}"
- mv_if_diff "${ee}" "${e}"
- fi
-
- local c="${ENV_D}/config-${TARGET}"
- local cc="${c}.tmp"
- echo "CURRENT=${VER}" > "${cc}"
- mv_if_diff "${cc}" "${c}"
-
- eend 0
-
- #
- # Regen env.d if need/can be
- #
- if [[ ${ROOT} == "/" ]] && [[ ${TARGET} == ${HOST} ]] ; then
- env-update ${env_update_flag}
- echo
- ewarn "Please remember to run:"
- echo
- ewarn " # . ${EPREFIX}/etc/profile"
- echo
- fi
-
- return 0
-}
-
-uninstall_target() {
- : ${TARGET:=${UARG}}
-
- if [[ ${TARGET} == ${HOST} ]] ; then
- die "refusing to uninstall native binutils"
- fi
-
- shopt -s nullglob
- PROFILE=""
-
- for PROFILE in "${ENV_D}"/${TARGET}-* ; do
- ewarn "Removing all signs of ${PROFILE##*/}"
- rm -f "${ENV_D}"/${PROFILE}
- done
- if [[ -z ${PROFILE} ]] && [[ ! -e ${ENV_D}/config-${TARGET} ]] ; then
- die "no profiles exist for '${TARGET}'"
- fi
-
- rm -f "${ENV_D}"/config-${TARGET}
-
- local x
- for x in \
- addr2line ar as c++filt dwp elf2flt elfedit flthdr gprof \
- ld ld.{bfd,gold,real} \
- nm objcopy objdump ranlib readelf size strings strip
- do
- x=(
- "${EROOT}"/usr/bin/${TARGET}-${x}
- "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin/${x}
- "${EROOT}"/usr/libexec/gcc/${TARGET}/${x}
- )
- rm -f "${x[@]}"
- done
- for x in "${HEADERS[@]}" ; do
- rm -f "${EROOT}"/usr/{${HOST}/,}${TARGET}/{usr/,}include/${x}
- done
- for x in bfd iberty opcodes ; do
- rm -f "${EROOT}"/usr/${HOST}/${TARGET}/lib/lib${x}{{-*,}.so,.a,.la}
- done
- # Delete broken symlinks
- local destdir="${EROOT}/usr/${HOST}/${TARGET}"
- rm -f "${destdir}"/lib/ldscripts
- find -L "${destdir}"/lib -type l -exec rm {} +
- rmdir \
- "${destdir}"/{bin,include,lib,usr} \
- "${destdir}" \
- "${EROOT}"/var/db/pkg/cross-${TARGET} \
- "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin \
- "${EROOT}"/usr/libexec/gcc/${TARGET} \
- 2>/dev/null
-
- rm -f "${ENV_D}"/${TARGET}-*
-}
-
-set_current_profile() {
- if [[ ! -f ${ENV_D}/config-${TARGET} ]] ; then
- eerror "${argv0}: unable to locate a profile for target: ${TARGET}"
- return 1
- fi
-
- source "${ENV_D}/config-${TARGET}"
-
- if [[ -z ${CURRENT} ]] ; then
- eerror "${argv0}: no binutils profile is active!"
- return 1
- fi
-
- echo "${TARGET}-${CURRENT}"
-
- return 0
-}
-get_current_profile() { echo "${PROFILE}" ; }
-
-list_profiles() {
- local x i target
-
- if [[ ${ROOT} != / ]] ; then
- echo "Using binutils-config info in ${ROOT}"
- fi
-
- set -- "${ENV_D}"/*
- target=
- i=1
-
- for x ; do
- # skip broken links and config files
- [[ -f ${x} ]] || continue
- [[ ${x} == */config-* ]] && continue
-
- source "${x}"
- if [[ ${target} != ${TARGET} ]] ; then
- [[ -n ${target} ]] && echo
- target=${TARGET}
- fi
-
- x=${x##*/}
- if [[ -e ${ENV_D}/config-${TARGET} ]] ; then
- source "${ENV_D}/config-${TARGET}"
- if [[ ${VER} == ${CURRENT} ]] ; then
- [[ ${TARGET} == ${HOST} ]] \
- && x="${x} ${GOOD}*${NORMAL}" \
- || x="${x} ${HILITE}*${NORMAL}"
- fi
- fi
-
- # We would align the [...] field like so:
- #printf ' [%*ss] %s\n' ${##} "${i}" "${x}"
- # but this breaks simple scripting: `binutils -l | awk '{print $2}'`
-
- # Or we could align the target col like so:
- #printf ' [%s]%*s %s\n' "${i}" $(( ${##} - ${#i} )) "" "${x}"
- # but i'm not sold that it looks better
-
- # So keep it simple ... only makes a diff anyways for crazy people
- # like me which have 100+ binutils packages installed ...
- echo " [$i] ${x}"
- ((++i))
- done
-}
-
-switch_linker() {
- local bpath ld=$1
-
- case ${ld} in
- ld.*) ;;
- *) die "not supported: linker must start with 'ld.'" ;;
- esac
-
- setup_env || return 1
- bpath="${ROOT}/${BINPATH}"
-
- # does this binutils even support the requested linker ?
- if [[ ! -e ${bpath}/${ld} ]] ; then
- die "sorry, but ${PROFILE} doesn't support the ${ld} linker"
- fi
-
- # switch it up
- ebegin "Setting default linker to ${ld} for ${PROFILE}"
- atomic_ln ${ld} "${bpath}" ld
- eend $?
-}
-
-set_HOST() {
- # Set HOST to CHOST if it isn't already set
- : ${HOST:=${CHOST:-$(portageq envvar CHOST)}}
-}
-
-ENV_D="${EROOT}etc/env.d/binutils"
-
-DEBUG="no"
-NEED_ACTION="yes"
-DOIT="switch_profile"
-PROFILE="current"
-HOST=""
-TARGET=""
-unset UARG
-
-select_action() {
- if [[ ${NEED_ACTION} != "no" ]] ; then
- NEED_ACTION="no"
- DOIT=$1
- else
- die "one action at a time!"
- fi
-}
-
-while [[ $# -gt 0 ]] ; do
- x=$1
- shift
- case ${x} in
- -c|--get-current-profile) select_action get_current_profile ;;
- -l|--list|--list-profiles) select_action list_profiles ;;
- -u|--uninstall) select_action uninstall_target ;;
- --linker) select_action "switch_linker $1"; shift ;;
- -d|--debug) DEBUG="yes" ;;
- -h|--help) usage 0 ;;
- -V|--version)
- ver="@PV@"
- echo "binutils-config-${ver/@'PV'@/git}"
- exit 0
- ;;
- -*)
- die "invalid switch! Try '--help'."
- ;;
- *)
- if [[ ${UARG+set} == "set" ]] ; then
- die "only one profile/target at a time please"
- fi
- NEED_ACTION="maybe"
- UARG=${x}
- ;;
- esac
-done
-
-[[ ${NEED_ACTION} == "yes" ]] && usage 1
-[[ ${DEBUG} == "yes" ]] && set -x
-
-# All operations need to know the current HOST to figure out
-# what is a native target and what is a cross target
-set_HOST
-
-# All operations need to know the profile the user wants
-case ${DOIT} in
-switch_profile|switch_linker_*)
- # decode user's profile choice
- x=${UARG:-$(TARGET=${HOST} set_current_profile)}
- PROFILE=""
- if [[ -z $(echo ${x} | tr -d '[:digit:]') ]] ; then
- # User gave us a # representing the profile
- i=1
- for y in "${ENV_D}"/* ; do
- [[ ${y/config-} != ${y} ]] && continue
-
- if [[ -f ${y} ]] && [[ ${x} -eq ${i} ]] ; then
- PROFILE=${y##*/}
- break
- fi
- ((++i))
- done
- fi
-
- if [[ -z ${PROFILE} ]] ; then
- # User gave us a full HOST-ver
- x=${x##*/}
- if [[ -f ${ENV_D}/${x} ]] ; then
- # Valid HOST-ver yeah!
- PROFILE=${x}
- else
- # Not a valid HOST-ver ...
- if [[ ! -f ${ENV_D}/config-${x} ]] ; then
- # Maybe they just gave us a ver ...
- if [[ -f ${ENV_D}/${HOST}-${x} ]] ; then
- x=${HOST}-${x}
- else
- die "could not locate '$x' in '${ENV_D}/'!"
- fi
- PROFILE=${x}
- else
- # Maybe they just gave us a target ... pick active profile
- PROFILE=$(TARGET=${x} set_current_profile)
- fi
- fi
- fi
- ;;
-*)
- # lookup current profile as the user gave us a target
- PROFILE=$(TARGET=${UARG:-${HOST}} set_current_profile) || exit 1
- ;;
-esac
-
-eval ${DOIT}
-
-# vim:ts=4
diff --git a/sys-devel/binutils-config/files/binutils-config.8 b/sys-devel/binutils-config/files/binutils-config.8
deleted file mode 100644
index 52cf7101e6..0000000000
--- a/sys-devel/binutils-config/files/binutils-config.8
+++ /dev/null
@@ -1,73 +0,0 @@
-.TH "BINUTILS-CONFIG" "8" "Jan 2005" "Gentoo" "Gentoo"
-.SH "NAME"
-binutils-config \- manage active versions of the binutils programs
-.SH "DESCRIPTION"
-The \fBbinutils-config\fR script allows you to switch between different
-versions of binutils when you have installed multiple copies (see
-USE=multislot). It also allows you to manage multiple cross-compiling
-targets simultaneously.
-
-Remember, you may have one version of binutils active per \fICTARGET\fR,
-and changing the version for one target has no bearing on any other. So
-changing an active cross-compiler will not break your native compiler
-(i.e. \fICHOST\fR).
-.SH "SYNOPSIS"
-\fBbinutils-config\fR [\fIcrufty options\fR] \fIPROFILE\fR
-
-\fBbinutils-config\fR \fB--get-current-profile\fR \fI[TARGET]\fR
-
-\fBbinutils-config\fR \fB--list-profiles\fR
-
-\fBbinutils-config\fR \fB--uninstall\fR \fITARGET\fR
-.SH "GENERIC OPTIONS"
-.TP
-\fBPROFILE\fR
-Change the system to use the specified binutils version. This may take the
-form of the list index number (the number shown on the left in the
-\fB\-\-list\-profiles\fR output), a full \fITARGET-VERSION\fR (useful when
-working with cross-compilers), just a \fITARGET\fR where the \fIVERSION\fR
-is picked from the active, or just a binutils \fIVERSION\fR where the
-\fITARGET\fR is assumed to be the native \fIHOST\fR value.
-.TP
-\fBTARGET\fR
-Similiar to \fBPROFILE\fR, but this is only the target and no version info
-(i.e. \fICTARGET\fR or \fICHOST\fR).
-.TP
-\fB\-c\fR, \fB\-\-get\-current\-profile\fR \fI[TARGET]\fR
-Display the active profile for \fITARGET\fR. If none is specified, the
-host system's \fITARGET\fR will be shown (i.e. \fICHOST\fR).
-.TP
-\fB\-l\fR, \fB\-\-list\-profiles\fR
-Show all the profiles that your system currently has installed and what
-versions are active. The active native version is noted with a bright green
-asterisk while the active cross-compiler versions are noted with a light blue
-asterisk.
-.TP
-\fB-u\fR, \fB\-\-uninstall\fR \fITARGET\fR
-This is really for internal use only. Used to remove all traces of the
-\fITARGET\fR binutils from your system.
-.SH "CRUFTY OPTIONS"
-.TP
-\fB\-\-linker\fR \fB\fR
-Change the default linker for the specified \fIPROFILE\fR to the \fB\fR.
-Common names are \fBld.gold\fR for the newer gold linker and \fBld.bfd\fR for
-the classic linker. Note that not all targets support the gold linker.
-.SH "REPORTING BUGS"
-Please report bugs via https://bugs.gentoo.org/
-.SH "SEE ALSO"
-.BR ar (1),
-.BR as (1),
-.BR ld (1),
-.BR nm (1),
-.BR objcopy (1),
-.BR ranlib (1),
-.BR readelf (1),
-.BR strings (1),
-.BR strip (1)
-.SH "FILES"
-.nf
-.BR /usr/bin/binutils-config
-.BR /etc/env.d/binutils/*
-.fi
-.SH "AUTHORS"
-Mike Frysinger
diff --git a/sys-devel/binutils-config/files/binutils.eselect b/sys-devel/binutils-config/files/binutils.eselect
deleted file mode 100644
index a89655aba1..0000000000
--- a/sys-devel/binutils-config/files/binutils.eselect
+++ /dev/null
@@ -1,45 +0,0 @@
-# -*-eselect-*- vim: ft=eselect
-# Copyright 2005-2015 Gentoo Foundation
-# Distributed under the terms of the GNU GPL version 2 or later
-
-DESCRIPTION="Manage installed versions of sys-devel/binutils"
-MAINTAINER="toolchain@gentoo.org"
-
-### list action
-
-describe_list() {
- echo "List all installed version of binutils"
-}
-
-do_list() {
- binutils-config -l
-}
-
-### set action
-
-describe_set() {
- echo "Activate one of the installed binutils"
-}
-
-describe_set_parameters() {
- echo ""
-}
-
-describe_set_options() {
- echo "target : Target name or number (from 'list' action)"
-}
-
-do_set() {
- [[ $# -eq 1 ]] || die -q "Please specify exactly one version to activate!"
- binutils-config "$1"
-}
-
-### show action
-
-describe_show() {
- echo "Print the currently active binutils version"
-}
-
-do_show() {
- binutils-config -c
-}
diff --git a/sys-devel/binutils-config/metadata.xml b/sys-devel/binutils-config/metadata.xml
index 393442d23f..34de766f7e 100644
--- a/sys-devel/binutils-config/metadata.xml
+++ b/sys-devel/binutils-config/metadata.xml
@@ -1,5 +1,5 @@
-
+
toolchain@gentoo.org
diff --git a/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch b/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch
index c6b63ed327..81364d4d02 100644
--- a/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch
+++ b/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch
@@ -11,10 +11,10 @@ in this context refers to the binary itself, not to a structured
hierarchy. Bundles have the .bundle extension; for example,
MyBundle.bundle.)
---- libltdl/m4/libtool.m4
-+++ libltdl/m4/libtool.m4
-@@ -2271,7 +2271,7 @@
- soname_spec='${libname}${release}${major}$shared_ext'
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -2645,7 +2645,7 @@
+ soname_spec='$libname$release$major$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
diff --git a/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch
index 8244eaa7e3..aa1e870649 100644
--- a/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch
+++ b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch
@@ -7,7 +7,7 @@ http://bugs.gentoo.org/109105
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
-@@ -1375,7 +1375,14 @@
+@@ -2666,7 +2666,14 @@
*) objformat=elf ;;
esac
fi
@@ -22,9 +22,9 @@ http://bugs.gentoo.org/109105
+
case $version_type in
freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-@@ -1386,6 +1392,12 @@
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+@@ -2678,6 +2685,12 @@
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
need_version=yes
;;
+ linux)
diff --git a/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch b/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch
index b4409815f8..aded304989 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch
@@ -1,8 +1,8 @@
* revert old 1.5 behaviour
---- libtool-2.4.6/m4/libtool.m4
-+++ libtool-2.4.6/m4/libtool.m4
-@@ -2272,7 +2272,7 @@
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -2641,7 +2641,7 @@
version_type=darwin
need_lib_prefix=no
need_version=no
diff --git a/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch b/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch
new file mode 100644
index 0000000000..02cb1d7eb9
--- /dev/null
+++ b/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch
@@ -0,0 +1,13 @@
+macOS Big Sur is 11.0, Darwin 20, after a long line of 10.X releases.
+macOS Monterey is 12.0.
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -1076,7 +1076,7 @@
+ _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+ 10.[[012]][[,.]]*)
+ _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+- 10.*)
++ 10.*|11.*|12.*)
+ _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+ esac
+ ;;
diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch b/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch
index c1ea8a8294..853a22eff5 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch
@@ -13,15 +13,10 @@ linker to allow trivial use of the clang address sanitizer.
Signed-off-by: Jeremy Huddleston Sequoia
Copyright-paperwork-exempt: Yes
----
- build-aux/ltmain.in | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
-index 1cbe875..2a5aaad 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
-@@ -5382,10 +5382,11 @@ func_mode_link ()
+@@ -5362,10 +5362,11 @@
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
# -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
@@ -34,13 +29,9 @@ index 1cbe875..2a5aaad 100644
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
-
-patch the generated file too to keep help2man from generating man pages
-https://bugs.gentoo.org/556512
-
--- a/build-aux/ltmain.sh
+++ b/build-aux/ltmain.sh
-@@ -5382,10 +5382,11 @@ func_mode_link ()
+@@ -7274,10 +7274,11 @@
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
# -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
@@ -53,6 +44,3 @@ https://bugs.gentoo.org/556512
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
---
-2.6.2
-
diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch b/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch
index 55ec5ae9e0..f6c0a3dc89 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch
@@ -10,15 +10,10 @@ Starting with gcc-4.8, there's a -fuse-ld flag that can be used to select
between bfd & gold. Make sure we pass it through to the linking stage.
* build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags through.
----
- build-aux/ltmain.in | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
-index 2a5aaad..4c24d5d 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
-@@ -5383,10 +5383,11 @@ func_mode_link ()
+@@ -5363,10 +5363,11 @@
# -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
# -fsanitize=* Clang/GCC memory and address sanitizer
@@ -31,13 +26,9 @@ index 2a5aaad..4c24d5d 100644
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
-
-patch the generated file too to keep help2man from generating man pages
-https://bugs.gentoo.org/556512
-
--- a/build-aux/ltmain.sh
+++ b/build-aux/ltmain.sh
-@@ -5383,10 +5383,11 @@ func_mode_link ()
+@@ -7275,10 +7275,11 @@
# -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
# -fsanitize=* Clang/GCC memory and address sanitizer
@@ -50,5 +41,3 @@ https://bugs.gentoo.org/556512
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
---
-2.3.2
diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch b/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch
index a8fbf28f80..c7720935d8 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch
@@ -10,15 +10,10 @@ https://bugzilla.redhat.com/show_bug.cgi?id=985592
to the linker, Fedora uses this option for hardening.
Signed-off-by: Pavel Raiskup
----
- build-aux/ltmain.in | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
-index d5cf07a..0c40da0 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
-@@ -5360,10 +5360,12 @@ func_mode_link ()
+@@ -5360,10 +5360,12 @@
# -tp=* Portland pgcc target processor selection
# --sysroot=* for sysroot support
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
@@ -32,13 +27,9 @@ index d5cf07a..0c40da0 100644
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
-
-patch the generated file too to keep help2man from generating man pages
-https://bugs.gentoo.org/556512
-
--- a/build-aux/ltmain.sh
+++ b/build-aux/ltmain.sh
-@@ -5360,10 +5360,12 @@ func_mode_link ()
+@@ -7272,10 +7272,12 @@
# -tp=* Portland pgcc target processor selection
# --sysroot=* for sysroot support
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
@@ -52,6 +43,3 @@ https://bugs.gentoo.org/556512
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
---
-2.6.2
-
diff --git a/sys-devel/libtool/files/libtool-2.4.6-mint.patch b/sys-devel/libtool/files/libtool-2.4.6-mint.patch
index 341a0f02ef..4fe5bcede5 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-mint.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-mint.patch
@@ -2,10 +2,9 @@ Patch by Alan Hourihane
http://bugs.gentoo.org/show_bug.cgi?id=266984
-diff -ur libtool-2.2.6/configure libtool-2.2.6-mint/configure
---- libtool-2.2.6/configure 2008-09-07 17:52:50.000000000 +0000
-+++ libtool-2.2.6/configure 2009-04-21 08:49:27.000000000 +0000
-@@ -4986,6 +4986,11 @@
+--- a/configure
++++ b/configure
+@@ -5897,6 +5897,11 @@
lt_cv_sys_max_cmd_len=8192;
;;
@@ -17,10 +16,9 @@ diff -ur libtool-2.2.6/configure libtool-2.2.6-mint/configure
amigaos*)
# On AmigaOS with pdksh, this test takes hours, literally.
# So we just punt and use a minimum line length of 8192.
-diff -ur libtool-2.2.6/libltdl/configure libtool-2.2.6-mint/libltdl/configure
---- libtool-2.2.6/libltdl/configure 2008-09-07 17:53:05.000000000 +0000
-+++ libtool-2.2.6/libltdl/configure 2009-04-21 08:50:08.000000000 +0000
-@@ -4422,6 +4422,11 @@
+--- a/libltdl/configure
++++ b/libltdl/configure
+@@ -4782,6 +4782,11 @@
lt_cv_sys_max_cmd_len=8192;
;;
@@ -32,10 +30,9 @@ diff -ur libtool-2.2.6/libltdl/configure libtool-2.2.6-mint/libltdl/configure
amigaos*)
# On AmigaOS with pdksh, this test takes hours, literally.
# So we just punt and use a minimum line length of 8192.
-diff -ur libtool-2.2.6/libltdl/m4/libtool.m4 libtool-2.2.6-mint/libltdl/m4/libtool.m4
---- libtool-2.2.6/m4/libtool.m4 2008-09-05 11:54:41.000000000 +0000
-+++ libtool-2.2.6/m4/libtool.m4 2009-04-21 08:50:26.000000000 +0000
-@@ -1527,6 +1527,11 @@
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -1708,6 +1708,11 @@
lt_cv_sys_max_cmd_len=8192;
;;
diff --git a/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch
index 54461ccc54..b093d74266 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch
@@ -1,8 +1,8 @@
https://bugs.gentoo.org/650876
---- libtool-2.4.6/build-aux/ltmain.sh
-+++ libtool-2.4.6/build-aux/ltmain.sh
-@@ -7079,6 +7079,16 @@
+--- a/build-aux/ltmain.sh
++++ b/build-aux/ltmain.sh
+@@ -7127,6 +7127,16 @@
*" $arg "*) ;;
* ) func_append new_inherited_linker_flags " $arg" ;;
esac
diff --git a/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch b/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch
index 0eeffac7a0..580d635d04 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch
@@ -20,18 +20,10 @@ of '$SED $sed_quote_subst'.
(func_mode_link): Likewise.
* NEWS: Document.
* bootstrap: Sync with funclib.sh.
----
- NEWS | 3 +++
- bootstrap | 61 +++++++++++++++++++++++++++++++++++++++++++------
- build-aux/ltmain.in | 10 ++++----
- gl/build-aux/funclib.sh | 61 +++++++++++++++++++++++++++++++++++++++++++------
- 4 files changed, 117 insertions(+), 18 deletions(-)
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
-index 0c40da0..24acefd 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
-@@ -3346,7 +3346,8 @@ else
+@@ -3346,7 +3346,8 @@
if test \"\$libtool_execute_magic\" != \"$magic\"; then
file=\"\$0\""
@@ -41,7 +33,7 @@ index 0c40da0..24acefd 100644
$ECHO "\
# A function that is used when there is no print builtin or printf.
-@@ -8596,8 +8597,8 @@ EOF
+@@ -8598,8 +8599,8 @@
relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
fi
done
@@ -52,7 +44,7 @@ index 0c40da0..24acefd 100644
fi
# Only actually do things if not in dry run mode.
-@@ -8843,7 +8844,8 @@ EOF
+@@ -8845,7 +8846,8 @@
done
# Quote the link command for shipping.
relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
@@ -62,8 +54,6 @@ index 0c40da0..24acefd 100644
if test yes = "$hardcode_automatic"; then
relink_command=
fi
-diff --git a/gl/build-aux/funclib.sh b/gl/build-aux/funclib.sh
-index 39d972e..47d8b95 100644
--- a/build-aux/funclib.sh
+++ b/build-aux/funclib.sh
@@ -1,5 +1,5 @@
@@ -73,7 +63,7 @@ index 39d972e..47d8b95 100644
# General shell script boiler plate, and helper functions.
# Written by Gary V. Vaughan, 2004
-@@ -1026,6 +1026,57 @@ func_relative_path ()
+@@ -1026,6 +1026,57 @@
}
@@ -131,7 +121,7 @@ index 39d972e..47d8b95 100644
# func_quote_for_eval ARG...
# --------------------------
# Aesthetically quote ARGs to be evaled later.
-@@ -1042,12 +1093,8 @@ func_quote_for_eval ()
+@@ -1042,12 +1093,8 @@
func_quote_for_eval_unquoted_result=
func_quote_for_eval_result=
while test 0 -lt $#; do
@@ -146,20 +136,18 @@ index 39d972e..47d8b95 100644
if test -n "$func_quote_for_eval_unquoted_result"; then
func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
else
-
-patch the generated file too to keep help2man from generating man pages
-https://bugs.gentoo.org/556512
-
--- a/build-aux/ltmain.sh
+++ b/build-aux/ltmain.sh
-@@ -1,5 +1,5 @@
+@@ -64,7 +64,7 @@
+ # libraries, which are installed to $pkgauxdir.
+
# Set a version string for this script.
-scriptversion=2015-01-20.17; # UTC
+scriptversion=2015-10-04.22; # UTC
# General shell script boiler plate, and helper functions.
# Written by Gary V. Vaughan, 2004
-@@ -1026,6 +1026,57 @@ func_relative_path ()
+@@ -1091,6 +1091,57 @@
}
@@ -217,7 +205,7 @@ https://bugs.gentoo.org/556512
# func_quote_for_eval ARG...
# --------------------------
# Aesthetically quote ARGs to be evaled later.
-@@ -1042,12 +1093,8 @@ func_quote_for_eval ()
+@@ -1107,12 +1158,8 @@
func_quote_for_eval_unquoted_result=
func_quote_for_eval_result=
while test 0 -lt $#; do
@@ -232,7 +220,7 @@ https://bugs.gentoo.org/556512
if test -n "$func_quote_for_eval_unquoted_result"; then
func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
else
-@@ -3346,7 +3346,8 @@ else
+@@ -5258,7 +5305,8 @@
if test \"\$libtool_execute_magic\" != \"$magic\"; then
file=\"\$0\""
@@ -242,7 +230,7 @@ https://bugs.gentoo.org/556512
$ECHO "\
# A function that is used when there is no print builtin or printf.
-@@ -8596,8 +8597,8 @@ EOF
+@@ -10510,8 +10558,8 @@
relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
fi
done
@@ -253,7 +241,7 @@ https://bugs.gentoo.org/556512
fi
# Only actually do things if not in dry run mode.
-@@ -8843,7 +8844,8 @@ EOF
+@@ -10757,7 +10805,8 @@
done
# Quote the link command for shipping.
relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
@@ -263,6 +251,3 @@ https://bugs.gentoo.org/556512
if test yes = "$hardcode_automatic"; then
relink_command=
fi
---
-2.6.2
-
diff --git a/sys-devel/libtool/libtool-2.4.6-r6.ebuild b/sys-devel/libtool/libtool-2.4.6-r6.ebuild
index f85bb35dda..cf041ceafa 100644
--- a/sys-devel/libtool/libtool-2.4.6-r6.ebuild
+++ b/sys-devel/libtool/libtool-2.4.6-r6.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
LIBTOOLIZE="true" #225559
WANT_LIBTOOL="none"
@@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
DESCRIPTION="A shared library tool for developers"
@@ -44,6 +44,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-2.4.6-mint.patch
"${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch
"${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch
+ "${FILESDIR}"/${PN}-2.4.6-darwin20.patch
)
src_prepare() {
diff --git a/sys-devel/libtool/libtool-9999.ebuild b/sys-devel/libtool/libtool-9999.ebuild
index 140bf7a5cb..ea6a7173be 100644
--- a/sys-devel/libtool/libtool-9999.ebuild
+++ b/sys-devel/libtool/libtool-9999.ebuild
@@ -1,19 +1,18 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
LIBTOOLIZE="true" #225559
WANT_LIBTOOL="none"
-inherit autotools epunt-cxx multilib unpacker prefix
+inherit autotools prefix
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git
- http://git.savannah.gnu.org/r/${PN}.git"
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git"
inherit git-r3
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
fi
DESCRIPTION="A shared library tool for developers"
@@ -24,14 +23,13 @@ SLOT="2"
IUSE="vanilla"
# Pull in libltdl directly until we convert packages to the new dep.
-RDEPEND="sys-devel/gnuconfig
- >=sys-devel/autoconf-2.69
- >=sys-devel/automake-1.13
- dev-libs/libltdl:0
- !=sys-devel/autoconf-2.69:*
+ >=sys-devel/automake-1.13:*
+ dev-libs/libltdl:0"
+DEPEND="${RDEPEND}"
+[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man"
PATCHES=(
"${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105
@@ -40,27 +38,25 @@ PATCHES=(
"${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch
)
-src_unpack() {
- if [[ ${PV} == "9999" ]] ; then
- git-r3_src_unpack
- else
- unpacker_src_unpack
- fi
-}
-
src_prepare() {
- if [[ "${PV}" = 9999 ]] ; then
+ if [[ ${PV} == *9999 ]] ; then
eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch #650876
./bootstrap || die
else
PATCHES+=(
- "${FILESDIR}"/${P}-pthread_bootstrapped.patch #650876
+ "${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch #650876
)
fi
- use vanilla && return 0
+ # WARNING: File build-aux/ltmain.sh is read-only; trying to patch anyway
+ chmod +w build-aux/ltmain.sh || die
- default
+ if use vanilla ; then
+ eapply_user
+ return 0
+ else
+ default
+ fi
if use prefix ; then
# seems that libtool has to know about EPREFIX a little bit
@@ -73,15 +69,15 @@ src_prepare() {
eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch
eprefixify m4/libtool.m4
fi
- pushd libltdl >/dev/null
+
+ pushd libltdl >/dev/null || die
AT_NOELIBTOOLIZE=yes eautoreconf
- popd >/dev/null
+ popd >/dev/null || die
AT_NOELIBTOOLIZE=yes eautoreconf
- epunt_cxx
# Make sure timestamps don't trigger a rebuild of man pages. #556512
- if [[ ${PV} != "9999" ]] ; then
- touch doc/*.1
+ if [[ ${PV} != *9999 ]] ; then
+ touch doc/*.1 || die
export HELP2MAN=false
fi
}
@@ -96,15 +92,10 @@ src_configure() {
# Do not bother hardcoding the full path to sed. Just rely on $PATH. #574550
export ac_cv_path_SED="$(basename "$(type -P sed)")"
- local myconf
- [[ ${CHOST} == *-darwin* ]] && myconf="--program-prefix=g"
+ [[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g"
ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install
}
-src_test() {
- emake check
-}
-
src_install() {
default
diff --git a/sys-devel/libtool/metadata.xml b/sys-devel/libtool/metadata.xml
index 56c1244130..151cc38da6 100644
--- a/sys-devel/libtool/metadata.xml
+++ b/sys-devel/libtool/metadata.xml
@@ -1,8 +1,11 @@
-
+
base-system@gentoo.org
Gentoo Base System
+
+ cpe:/a:gnu:libtool
+
diff --git a/sys-fs/e2fsprogs/Manifest b/sys-fs/e2fsprogs/Manifest
index 61e146a43a..4a224a4c3d 100644
--- a/sys-fs/e2fsprogs/Manifest
+++ b/sys-fs/e2fsprogs/Manifest
@@ -1,4 +1,2 @@
-DIST e2fsprogs-1.42.9-mint-r1.patch.xz 9012 BLAKE2B ae6421587c3cca2f9b26805c5f8d236d3fecde78cc7df3776ae9c23c7f254d7240e06507568fdd2154a16113c47609a8143535ab9cb2925426d3c578d077ce26 SHA512 591a7c80d65082eebcdc455028be6ade05c9aae96c94f654106be0facef330a8875dae82891e6e3ad2b48dece2b4e1c1940dbc47cd3eba3e6eea3b5ddba9a8fc
-DIST e2fsprogs-1.45.4.tar.xz 5567164 BLAKE2B ab7be15e504b674290a25572d09d1ca4bacebc14d23a0ae400636bdcf3bf117f3aaf82b806ca7fd25dcd6ef9fedff588de7c72134b095e27f7a363f7d70c94c7 SHA512 408f093a6674ef2316c451173481851041957617c550308d2969b983e11d988ddfc120626cd957c0759648bc357edf1d9971e6d46bed109c2af5f8a09bdc5bda
-DIST e2fsprogs-1.45.5.tar.xz 5569796 BLAKE2B cf9633caa6c00afa51408364d0c0a1515a9989ad1582fb485a300fd71bf61ec56b57dbb26f152609eaf2d63bfb04fe1e3f271085c26aa0c832c1f467960e6480 SHA512 d1a8611b525742387061f390fb24825dfa175997cc7db05decea913fcc7b97a95a3e787091f2920d4a7d4eb1d813568af734a1610229ead09bcbf9f3e262e4ce
-DIST e2fsprogs-1.45.6.tar.xz 5572144 BLAKE2B 24a44d27a02a1fa178083d5ee6034b20fedcac9faf7cf7f5cfcd4e4cee6d38775bc78949b9b00823cbbdacfab783e8e1e739579b9a7236c5425f51b27600743b SHA512 f3abfb6fe7ef632bb81152e2127d601cadd3fa93162178576a1d5ed82c2286627184b207b85a5b2a1793db0addf0885dfc3b9523bb340443224caf9c6d613b84
+DIST e2fsprogs-1.46.4.tar.xz 7035200 BLAKE2B 473f7fd3f521b94cdaa68e37784a518fc1919387dd114f31b5338f1b4c472f86b150229ec3dcae8b73eac95330c0dea729befc8cea08bcf1e455c0b6652d6d2b SHA512 7d9cfdf00ed58e66049585e8382fe4977088956421a0fb8155900c69afd8857309ad2b9301b3f74c9c0afa7287a0ddba2fd1538fcf57858b37a9ab712390016d
+DIST e2fsprogs-1.46.5.tar.xz 7040672 BLAKE2B 8d8c02e891c464782a7cff518c41d793fc73366b57e17d80ffc5afd96e6144e354290e667e9710509a9dde4e5dab7e7185c5bf084c5bfd26219f05e5e92e0830 SHA512 53282e1c524f62a95012b1aceef296d494f5238c82c9b08b29fbe6a803dbf7ccfdcd9124eb2f11fe2ff9de26387c78751a92c3217ca414f6db6242098a72d3fa
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.4.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.45.4.ebuild
deleted file mode 100644
index 24c687a695..0000000000
--- a/sys-fs/e2fsprogs/e2fsprogs-1.45.4.ebuild
+++ /dev/null
@@ -1,124 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
-HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="mirror://sourceforge/e2fsprogs/${P}.tar.xz
- https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz"
-
-LICENSE="GPL-2 BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~m68k-mint"
-IUSE="cron fuse nls static-libs"
-
-RDEPEND="~sys-libs/${PN}-libs-${PV}
- >=sys-apps/util-linux-2.16
- cron? ( sys-fs/lvm2[-device-mapper-only(-)] )
- fuse? ( sys-fs/fuse:0 )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- nls? ( sys-devel/gettext )
- virtual/pkgconfig
- sys-apps/texinfo
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.40-fbsd.patch
- "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854
-
- # Upstream patches (can usually removed with next version bump)
-)
-
-src_prepare() {
- if [[ ${CHOST} == *-mint* ]] ; then
- PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch )
- fi
-
- default
-
- cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
-
- # Get rid of doc -- we don't use them. This also prevents a sandbox
- # violation due to mktexfmt invocation
- rm -r doc || die "Failed to remove doc dir"
-
- # blargh ... trick e2fsprogs into using e2fsprogs-libs
- sed -i -r \
- -e 's:@LIBINTL@:@LTLIBINTL@:' \
- -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \
- -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \
- MCONFIG.in || die "muck libs" #122368
- sed -i -r \
- -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \
- Makefile.in || die "remove subdirs"
- ln -s $(which mk_cmds) lib/ss/ || die
-
- # Avoid rebuild
- echo '#include_next ' > lib/ss/ss_err.h
-}
-
-src_configure() {
- # Keep the package from doing silly things #261411
- export VARTEXFONTS="${T}/fonts"
-
- # needs open64() prototypes and friends
- append-cppflags -D_GNU_SOURCE
-
- local myeconfargs=(
- --with-root-prefix="${EPREFIX}"
- $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
- --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
- --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
- --enable-symlink-install
- --enable-elf-shlibs
- $(tc-has-tls || echo --disable-tls)
- --without-included-gettext
- $(use_enable fuse fuse2fs)
- $(use_enable nls)
- --disable-libblkid
- --disable-libuuid
- --disable-fsck
- --disable-uuidd
- )
- ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}"
-
- if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
- eerror "INTL sanity check failed, aborting build."
- eerror "Please post your ${S}/config.log file as an"
- eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
- die "Preventing included intl cruft from building"
- fi
-}
-
-src_compile() {
- emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds
-}
-
-src_install() {
- # need to set root_libdir= manually as any --libdir options in the
- # econf above (i.e. multilib) will screw up the default #276465
- emake \
- STRIP=: \
- root_libdir="${EPREFIX}/usr/$(get_libdir)" \
- DESTDIR="${D}" \
- install
-
- einstalldocs
-
- insinto /etc
- doins "${FILESDIR}"/e2fsck.conf
-
- # Move shared libraries to /lib/, install static libraries to
- # /usr/lib/, and install linker scripts to /usr/lib/.
- gen_usr_ldscript -a e2p ext2fs
-
- # configure doesn't have an option to disable static libs :/
- if ! use static-libs ; then
- find "${ED}" -name '*.a' -delete || die
- fi
-}
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.6.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.45.6.ebuild
deleted file mode 100644
index a4eec52c4a..0000000000
--- a/sys-fs/e2fsprogs/e2fsprogs-1.45.6.ebuild
+++ /dev/null
@@ -1,124 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
-HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="mirror://sourceforge/e2fsprogs/${P}.tar.xz
- https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz"
-
-LICENSE="GPL-2 BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~m68k-mint"
-IUSE="cron fuse nls static-libs"
-
-RDEPEND="~sys-libs/${PN}-libs-${PV}
- >=sys-apps/util-linux-2.16
- cron? ( sys-fs/lvm2[-device-mapper-only(-)] )
- fuse? ( sys-fs/fuse:0 )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- nls? ( sys-devel/gettext )
- virtual/pkgconfig
- sys-apps/texinfo
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.40-fbsd.patch
- "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854
-
- # Upstream patches (can usually removed with next version bump)
-)
-
-src_prepare() {
- if [[ ${CHOST} == *-mint* ]] ; then
- PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch )
- fi
-
- default
-
- cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
-
- # Get rid of doc -- we don't use them. This also prevents a sandbox
- # violation due to mktexfmt invocation
- rm -r doc || die "Failed to remove doc dir"
-
- # blargh ... trick e2fsprogs into using e2fsprogs-libs
- sed -i -r \
- -e 's:@LIBINTL@:@LTLIBINTL@:' \
- -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \
- -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \
- MCONFIG.in || die "muck libs" #122368
- sed -i -r \
- -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \
- Makefile.in || die "remove subdirs"
- ln -s $(which mk_cmds) lib/ss/ || die
-
- # Avoid rebuild
- echo '#include_next ' > lib/ss/ss_err.h
-}
-
-src_configure() {
- # Keep the package from doing silly things #261411
- export VARTEXFONTS="${T}/fonts"
-
- # needs open64() prototypes and friends
- append-cppflags -D_GNU_SOURCE
-
- local myeconfargs=(
- --with-root-prefix="${EPREFIX}"
- $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
- --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
- --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
- --enable-symlink-install
- --enable-elf-shlibs
- $(tc-has-tls || echo --disable-tls)
- --without-included-gettext
- $(use_enable fuse fuse2fs)
- $(use_enable nls)
- --disable-libblkid
- --disable-libuuid
- --disable-fsck
- --disable-uuidd
- )
- ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}"
-
- if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
- eerror "INTL sanity check failed, aborting build."
- eerror "Please post your ${S}/config.log file as an"
- eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
- die "Preventing included intl cruft from building"
- fi
-}
-
-src_compile() {
- emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds
-}
-
-src_install() {
- # need to set root_libdir= manually as any --libdir options in the
- # econf above (i.e. multilib) will screw up the default #276465
- emake \
- STRIP=: \
- root_libdir="${EPREFIX}/usr/$(get_libdir)" \
- DESTDIR="${D}" \
- install
-
- einstalldocs
-
- insinto /etc
- doins "${FILESDIR}"/e2fsck.conf
-
- # Move shared libraries to /lib/, install static libraries to
- # /usr/lib/, and install linker scripts to /usr/lib/.
- gen_usr_ldscript -a e2p ext2fs
-
- # configure doesn't have an option to disable static libs :/
- if ! use static-libs ; then
- find "${ED}" -name '*.a' -delete || die
- fi
-}
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.5.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.46.4.ebuild
similarity index 86%
rename from sys-fs/e2fsprogs/e2fsprogs-1.45.5.ebuild
rename to sys-fs/e2fsprogs/e2fsprogs-1.46.4.ebuild
index 167063502a..225c1d41eb 100644
--- a/sys-fs/e2fsprogs/e2fsprogs-1.45.5.ebuild
+++ b/sys-fs/e2fsprogs/e2fsprogs-1.46.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -7,13 +7,12 @@ inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript
DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="mirror://sourceforge/e2fsprogs/${P}.tar.xz
- https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz"
+SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz"
LICENSE="GPL-2 BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~m68k-mint"
-IUSE="cron fuse nls static-libs"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="cron fuse lto nls static-libs +threads"
RDEPEND="~sys-libs/${PN}-libs-${PV}
>=sys-apps/util-linux-2.16
@@ -35,10 +34,6 @@ PATCHES=(
)
src_prepare() {
- if [[ ${CHOST} == *-mint* ]] ; then
- PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch )
- fi
-
default
cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
@@ -77,17 +72,18 @@ src_configure() {
--enable-symlink-install
--enable-elf-shlibs
$(tc-has-tls || echo --disable-tls)
- --without-included-gettext
$(use_enable fuse fuse2fs)
$(use_enable nls)
--disable-libblkid
--disable-libuuid
--disable-fsck
--disable-uuidd
+ $(use_enable lto)
+ $(use_with threads pthread)
)
ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}"
- if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
+ if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
eerror "INTL sanity check failed, aborting build."
eerror "Please post your ${S}/config.log file as an"
eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild
new file mode 100644
index 0000000000..3e84085d14
--- /dev/null
+++ b/sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript multilib-minimal
+
+DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
+HOMEPAGE="http://e2fsprogs.sourceforge.net/"
+SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="cron fuse lto nls static-libs +threads +tools"
+
+RDEPEND="
+ !sys-libs/${PN}-libs
+ cron? ( sys-fs/lvm2[-device-mapper-only(-)] )
+ fuse? ( sys-fs/fuse:0 )
+ nls? ( virtual/libintl )
+ tools? ( >=sys-apps/util-linux-2.16 )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig
+ sys-apps/texinfo
+ nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.40-fbsd.patch
+ "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854
+
+ # Upstream patches (can usually removed with next version bump)
+)
+
+pkg_setup() {
+ if use tools ; then
+ MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ext2fs/ext2_types.h
+ )
+ fi
+}
+
+src_prepare() {
+ default
+
+ cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
+
+ # Get rid of doc -- we don't use them. This also prevents a sandbox
+ # violation due to mktexfmt invocation
+ rm -r doc || die "Failed to remove doc dir"
+
+ # prevent included intl cruft from building #81096
+ sed -i -r \
+ -e 's:@LIBINTL@:@LTLIBINTL@:' \
+ MCONFIG.in || die 'intl cruft'
+}
+
+multilib_src_configure() {
+ # Keep the package from doing silly things #261411
+ export VARTEXFONTS="${T}/fonts"
+
+ # needs open64() prototypes and friends
+ append-cppflags -D_GNU_SOURCE
+
+ local myeconfargs=(
+ --with-root-prefix="${EPREFIX}"
+ $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
+ --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
+ --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
+ --enable-symlink-install
+ --enable-elf-shlibs
+ $(tc-has-tls || echo --disable-tls)
+ $(multilib_native_use_enable fuse fuse2fs)
+ $(use_enable nls)
+ $(multilib_native_use_enable tools e2initrd-helper)
+ --disable-fsck
+ --disable-uuidd
+ $(use_enable lto)
+ $(use_with threads pthread)
+ )
+
+ # we use blkid/uuid from util-linux now
+ if use kernel_linux ; then
+ export ac_cv_lib_{uuid_uuid_generate,blkid_blkid_get_cache}=yes
+ myeconfargs+=( --disable-lib{blkid,uuid} )
+ fi
+
+ ac_cv_path_LDCONFIG=: \
+ ECONF_SOURCE="${S}" \
+ CC="$(tc-getCC)" \
+ BUILD_CC="$(tc-getBUILD_CC)" \
+ BUILD_LD="$(tc-getBUILD_LD)" \
+ econf "${myeconfargs[@]}"
+
+ if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
+ eerror "INTL sanity check failed, aborting build."
+ eerror "Please post your ${S}/config.log file as an"
+ eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
+ die "Preventing included intl cruft from building"
+ fi
+}
+
+multilib_src_compile() {
+ if ! multilib_is_native_abi || ! use tools ; then
+ emake -C lib/et V=1
+ emake -C lib/ss V=1
+ if use tools ; then
+ emake -C lib/ext2fs V=1
+ emake -C lib/e2p V=1
+ fi
+ return 0
+ fi
+
+ emake V=1
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi ; then
+ emake V=1 check
+ else
+ # For non-native, there's no binaries to test. Just libraries.
+ emake -C lib/et V=1 check
+ emake -C lib/ss V=1 check
+ fi
+}
+
+multilib_src_install() {
+ if ! multilib_is_native_abi || ! use tools ; then
+ emake -C lib/et V=1 DESTDIR="${D}" install
+ emake -C lib/ss V=1 DESTDIR="${D}" install
+
+ if use tools ; then
+ emake -C lib/ext2fs V=1 DESTDIR="${D}" install
+ emake -C lib/e2p V=1 DESTDIR="${D}" install
+ fi
+ else
+ emake \
+ STRIP=: \
+ DESTDIR="${D}" \
+ install
+
+ # Move shared libraries to /lib/, install static libraries to
+ # /usr/lib/, and install linker scripts to /usr/lib/.
+ gen_usr_ldscript -a e2p ext2fs
+ fi
+
+ gen_usr_ldscript -a com_err ss $(usex kernel_linux '' 'uuid blkid')
+
+ # configure doesn't have an option to disable static libs :/
+ if ! use static-libs ; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if use tools ; then
+ insinto /etc
+ doins "${FILESDIR}"/e2fsck.conf
+ fi
+}
diff --git a/sys-fs/e2fsprogs/files/fsck_ext2fs.8 b/sys-fs/e2fsprogs/files/fsck_ext2fs.8
deleted file mode 100644
index aa31cf1db1..0000000000
--- a/sys-fs/e2fsprogs/files/fsck_ext2fs.8
+++ /dev/null
@@ -1,96 +0,0 @@
-.TH fsck_ext2fs 8 2006-07-02 "Matthias Andree" "FreeBSD Ports"
-.\"
-.\" fsck_ext2fs.8 - manual page for fsck_ext2fs wrapper
-.\"
-.\" (C) Copyright 2006 by Matthias Andree
-.\"
-.\" License: This file may be redistributed in accordance with the terms
-.\" of the GNU General Public License v2.
-.\"
-.\" Upstream $Id: fsck_ext2fs.8,v 1.3 2006/07/02 11:45:21 emma Exp $
-.\" $FreeBSD: ports/sysutils/e2fsprogs/files/fsck_ext2fs.8,v 1.1 2006/07/04 15:47:51 leeym Exp $
-.\"
-.SH NAME
-.B fsck_ext2fs
-\- compatibility wrapper for e2fsck
-.SH SYNOPSIS
-.P
-.B fsck_ext2fs
-[\fB\-Fpfnyv\fR] [\fB\-b\fR \fIblock\fR]
-.SH DESCRIPTION
-.P
-\fBfsck_ext2fs\fR maps the traditional FreeBSD \fBfsck_ffs\fR options to
-options with the same functionality for \fBe2fsck,\fR runs \fBe2fsck\fR
-and then maps its exit status to values that FreeBSD understands.
-\fBe2fsck\fR is a utility to check and repair ext2 and ext3 file
-systems.
-
-.SH OPTIONS
-.IP \fB\-F\fR
-(check foreground mode required) Immediately exits with status 1 to tell
-\fBfsck\fR that ext2fs cannot be checked in the background. \fBfsck\fR
-usually runs \fBfsck_*\fR programs twice, first with \fB\-F\fR to find
-out if they can do background checking, then either immediately without
-\fB\-F\fR for foreground checking or deferred in the background with
-\fB\-B\fR.
-.IP \fB\-p\fR
-(preen mode) This option suppresses adding the \fB\-f\fR option (unless
-\fB\-f\fR is also given) and adds the \fB\-p\fR option to the
-\fBe2fsck\fR command line. This causes \fBe2fsck\fR to automatically fix
-any filesystem problems that can safely be fixed without operator
-intervention. Without this option given, \fBe2fsck\fR will be run with
-the \fB\-f\fR option to force a check, since interactive scan and repair
-mode is the default on FreeBSD, but not on Linux where \fBe2fsck\fR
-comes from.
-.IP \fB\-f\fR
-(force check) This option forces the check of a clean file system while
-preening and is passed to \fBe2fsck\fR verbatim.
-.IP \fB\-n\fR
-("no" mode) This option causes the file system to be opened in read-only
-mode and assume "no" as answer to all questions. This is the only way to
-safely run \fBfsck\fR on a mounted ext2 or ext3 file system. This option
-is passed to \fBe2fsck\fR verbatim.
-.IP \fB\-y\fR
-("yes" mode) This option is passed verbatim to \fBe2fsck\fR and causes
-it to assume "yes" as answer to all questions. This allows the
-non-interactive use of e2fsck but is rather aggressive. Use with care.
-.IP \fB\-v\fR
-(verbose output) This option is passed verbatim to \fBe2fsck\fR and
-causes it to verbosely report its progress.
-.IP "\fB\-b\fR \fIblock\fR"
-(use alternate super block) This option is passed verbatim to
-\fBe2fsck\fR and selects an alternate super block, for use when the
-primary super block has been damaged. Please see the \fBe2fsck\fR(8)
-manual page for details.
-
-.SH EXIT STATUS
-If errors remain after \fBe2fsck\fR, an invalid option or too many
-options have been specified, \fBe2fsck\fR was killed with a signal or
-the \fIfork\fB system call failed, \fBfsck_ext2fs\fR exits with status
-EXIT_FAILURE (usually 1). If \fBe2fsck\fR cannot be started, exits with
-status 127. If the file system is clean after \fBe2fsck\fR operation,
-exits with status EXIT_SUCCESS (0).
-
-.SH NOTES
-.P
-This utility is merely meant as an adaptor so that \fBe2fsck\fR can be
-run during the boot process, it does not support all options that
-\fBe2fsck\fR offers. If you need one of its advanced options, please run
-\fBe2fsck\fR directly.
-
-.SH FILES
-.TP
-.I /sbin/e2fsck
-is the location of the \fBe2fsck\fR program to run.
-
-.SH AUTHOR
-.P
-Matthias Andree wrote the program and this
-manual page.
-.SH CONFORMING TO
-The FreeBSD 6.1 command line interface for \fBfsck_ufs\fR(8).
-.SH SEE ALSO
-.BR fsck (8),
-.BR e2fsck (8)
-and
-.BR fsck_ufs (8).
diff --git a/sys-fs/e2fsprogs/files/fsck_ext2fs.c b/sys-fs/e2fsprogs/files/fsck_ext2fs.c
deleted file mode 100644
index f5e3e5e9a8..0000000000
--- a/sys-fs/e2fsprogs/files/fsck_ext2fs.c
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * fsck_ext2fs - wrapper for e2fsck on FreeBSD
- * Copyright (C) 2004,2006 Matthias Andree
- * redistributable in accordance with the
- * GNU General Public License v2
- *
- * $FreeBSD: ports/sysutils/e2fsprogs/files/fsck_ext2fs.c,v 1.5 2006/07/04 15:47:51 leeym Exp $
- *
- * Upstream: $Id: fsck_ext2fs.c,v 1.6 2006/07/02 11:37:49 emma Exp $
- *
- * format: gindent -kr
- */
-
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-
-__attribute__ ((noreturn))
-static int die(const char *tag)
-{
- perror(tag);
- exit(EXIT_FAILURE);
-}
-
-int main(int argc, char **argv)
-{
- int ch, i = 1, force = 0, status, verbose = 0, t;
- long block = 0;
- enum { normal, preen, yes, no } mode = normal;
- char *cmd[256];
- pid_t pid;
-
- cmd[0] = "/sbin/e2fsck";
- while ((ch = getopt(argc, argv, "BFpfnyb:v")) != -1) {
- switch (ch) {
- case 'p':
- mode = preen;
- break;
- case 'f':
- force = 1;
- break;
- case 'n':
- mode = no;
- break;
- case 'y':
- mode = yes;
- break;
- case 'b':
- block = atol(optarg);
- break;
- case 'v':
- verbose++;
- break;
- case 'F':
- /* e2fsck does not support background checking,
- * hence exit with nonzero status to force
- * the foreground check. */
- exit(1);
- case 'B':
- default:
- fprintf(stderr, "%s: unknown option -%c\n",
- argv[0], optopt);
- exit(EXIT_FAILURE);
- }
- }
-
- if (force)
- cmd[i++] = "-f";
-
- switch (mode) {
- case normal:
- /* FreeBSD needs -f to force a check only in context
- * with -p -- so map normal to force to match
- * expectations */
- if (!force)
- cmd[i++] = "-f";
- break;
- case yes:
- cmd[i++] = "-y";
- break;
- case no:
- cmd[i++] = "-n";
- break;
- case preen:
- cmd[i++] = "-p";
- break;
- }
-
- if (block) {
- static char b[30];
-
- sprintf(b, "-b %ld", block);
- cmd[i++] = b;
- }
-
- /* silently limit verbose to 15 so we don't overflow the cmd array */
- if (verbose > 15)
- verbose = 15;
-
- for (t = verbose; t > 1; t--)
- cmd[i++] = "-v";
-
- while (optind < argc) {
- cmd[i++] = argv[optind++];
- /* sanity check so we don't overflow the cmd buffer */
- if (i+1 == sizeof(cmd)/sizeof(cmd[0])) {
- errno = E2BIG;
- die(argv[0]);
- }
- }
-
- cmd[i++] = 0;
-
- if (verbose) {
- for (i=0; cmd[i]; i++)
- fputs(cmd[i], stderr),
- fputc(' ', stderr);
- fputc('\n', stderr);
- }
-
- pid = fork();
- switch (pid) {
- case -1:
- /* error */
- die("fork");
- break;
- case 0:
- /* child */
- (void) execv(cmd[0], cmd);
- perror("execve");
- _exit(127);
- default:
- /* parent */
- if (pid != waitpid(pid, &status, 0))
- die("waitpid");
- if (WIFSIGNALED(status)
- || (WIFEXITED(status) && WEXITSTATUS(status) >= 4))
- exit(EXIT_FAILURE);
- }
- exit(EXIT_SUCCESS);
-}
diff --git a/sys-fs/e2fsprogs/metadata.xml b/sys-fs/e2fsprogs/metadata.xml
index fd229917a0..902c90f4f0 100644
--- a/sys-fs/e2fsprogs/metadata.xml
+++ b/sys-fs/e2fsprogs/metadata.xml
@@ -1,16 +1,19 @@
-
+
-
- base-system@gentoo.org
- Gentoo Base System
-
-
-
- cpe:/a:e2fsprogs_project:e2fsprogs
- e2fsprogs
-
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+
+ cpe:/a:e2fsprogs_project:e2fsprogs
+ tytso/e2fsprogs
+ e2fsprogs
+
diff --git a/sys-fs/multipath-tools/Manifest b/sys-fs/multipath-tools/Manifest
index 3791f6de0f..d2ac6728b5 100644
--- a/sys-fs/multipath-tools/Manifest
+++ b/sys-fs/multipath-tools/Manifest
@@ -1,3 +1,4 @@
-DIST multipath-tools-0.8.3.tar.gz 465248 BLAKE2B 21a7a18c70150b4422bdd0ae02f26f491845eb06928ab74e631df8c6b3c110d10f43f75b9f8289a7134826c923b7ba58ce54c40497c3b7e6211e53902c8a1b5f SHA512 d9fdc2763f5a1efa15ee07c5d863008c9694623935f62a0e0b56f941df4e0d0ca3f86056fefc9b5ca828b47782127e3d55f2f925b1ed957e02b675bef36f4cae
-DIST multipath-tools-0.8.4.tar.gz 480994 BLAKE2B be8368df049218e2eaa1749e7b1c7a930da15f0311ab549b1bbba9c019dcfe39f90a05fd621e0703301ef1d55c98ac8cc74231d82950d9066f19d8764421704b SHA512 720823188c053c1c50269a30e34a9d69099098495bfd607076bcfa2c079565e3f0580c91783f19d42ed82290c0db98e4e19ef620eca4ee5ec7885c49c72d2307
-DIST multipath-tools-0.8.5.tar.gz 494750 BLAKE2B a42d17a47631107433a1d0a9da69a0bb10d2125cb242d2125d67da18f6bc6231c9233b163dc1d07d88dcba9f912830c047fdee5b42435f59ea2976598a72fd75 SHA512 f62a09107ccb18ffab97139fe2dba3dc22450836d8669c4381a8bce4072672a027a3a1e687f33e374429bffa49b3ba4a54d1e52294044d7bc1f82ed5d5aaf760
+DIST multipath-tools-0.8.6.tar.gz 519405 BLAKE2B 5aed36550c76bbde0e874e37356b6c5a80a80b876b56dadb69ce09f0fb049a7097fd1c0aca5076f816848e2c2660f96680d7f16d56918a25299017b39f76f777 SHA512 82e5b7307e599ba6b059679c3987a442fb5be4885f0a27c260a99a07cb336b88d48e314b4ec951944e0200e4731522d8da043d98fa566857ecc6d100791c0e38
+DIST multipath-tools-0.8.7.tar.gz 523535 BLAKE2B 3f59af86f5b9f9ea524bf0c36e4a4bc3e01f557f2e18486b5278fe10e3bcf10dbc7568768c0e95529885bcdca6bcf04021ad5261bd1e6a3aeae5eb95b9d54801 SHA512 c01aea837b13429d17688455b813947342ca1cabba19b22e13ce640c77e68335a6d410280a8298595e239131e6fcbb655fa6de5ff9857eac99aa175046a450cd
+DIST multipath-tools-0.8.8-no-compress-man-pages.patch.bz2 2493 BLAKE2B 08d77d6524861a590e07e3e9eedb1039c9b15b589becd912f17f37f728a751c7566699540c025aa1f8a0b2e04db551b0093d066f6e340a15309794fdde197483 SHA512 662f32ba5437be2a3cfffc5a466dccb7923668eeef5f23112b31d6c1b43eca2917579729e975cfbe4cd60ecfaf547f534d304626ac19d165bb2f1a3ae4bb1cc6
+DIST multipath-tools-0.8.8.tar.gz 527412 BLAKE2B 15e24a04ff1c41c8562033ca22214c015ab4c4a9e9833323830b665793c1964b6fcb7b710761bf501f0e99d461d6e6c7dfe80851a0ded4d99693a1561490598f SHA512 f09932da93b6ab06f0f911b09c605ea931fb8cb8b5530ef9999d21a41056fb48e944fc245dfe20096b2746ce1c9ebb5b548e1182079a3b52659d33263a441969
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.7.5-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.7.5-respect-flags.patch
deleted file mode 100644
index fef55ce31e..0000000000
--- a/sys-fs/multipath-tools/files/multipath-tools-0.7.5-respect-flags.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- multipath-tools-0.7.5/Makefile.inc
-+++ multipath-tools-0.7.5/Makefile.inc
-@@ -91,12 +91,13 @@
- -Wp,-D_FORTIFY_SOURCE=2 $(STACKPROT) \
- --param=ssp-buffer-size=4
-
--CFLAGS := $(OPTFLAGS) -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
-- -MMD -MP $(CFLAGS)
-+CFLAGS ?= $(OPTFLAGS)
-+CFLAGS += -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
-+ -MMD -MP
- BIN_CFLAGS = -fPIE -DPIE
- LIB_CFLAGS = -fPIC
- SHARED_FLAGS = -shared
--LDFLAGS = -Wl,-z,relro -Wl,-z,now
-+LDFLAGS += -Wl,-z,relro -Wl,-z,now
- BIN_LDFLAGS = -pie
-
- # Check whether a function with name $1 has been declared in header file $2.
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-fix-gcc-10-compatibility.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.3-fix-gcc-10-compatibility.patch
deleted file mode 100644
index 18ed8d65e0..0000000000
--- a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-fix-gcc-10-compatibility.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/libmultipath/structs.h
-+++ b/libmultipath/structs.h
-@@ -106,7 +106,7 @@ enum yes_no_undef_states {
- * _FIND_MULTIPATHS_F must have the same value as YNU_YES.
- * Generate a compile time error if that isn't the case.
- */
--char ___error1___[-(_FIND_MULTIPATHS_F != YNU_YES)];
-+extern char ___error1___[-(_FIND_MULTIPATHS_F != YNU_YES)];
-
- #define find_multipaths_on(conf) \
- (!!((conf)->find_multipaths & _FIND_MULTIPATHS_F))
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-json-c-0.14.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.3-json-c-0.14.patch
deleted file mode 100644
index 34d02f7b5d..0000000000
--- a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-json-c-0.14.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 8438a9cd8d7ed88645fa8e6a8f19c0fd9ae872a7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B6rn=20Esser?=
-Date: Mon, 13 Apr 2020 19:22:02 +0200
-Subject: [PATCH] Add support for upcoming json-c 0.14.0.
-
-TRUE/FALSE are not defined anymore. 1 and 0 are used instead.
-This is backwards compatible, as earlier versions of json-c are
-using the same integer values in their present definitions.
----
- libdmmp/libdmmp_private.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libdmmp/libdmmp_private.h b/libdmmp/libdmmp_private.h
-index ac85b63f..4378962b 100644
---- a/libdmmp/libdmmp_private.h
-+++ b/libdmmp/libdmmp_private.h
-@@ -82,7 +82,7 @@ static out_type func_name(struct dmmp_context *ctx, const char *var_name) { \
- do { \
- json_type j_type = json_type_null; \
- json_object *j_obj_tmp = NULL; \
-- if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != TRUE) { \
-+ if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != 1) { \
- _error(ctx, "Invalid JSON output from multipathd IPC: " \
- "key '%s' not found", key); \
- rc = DMMP_ERR_IPC_ERROR; \
---
-2.26.0
-
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch
deleted file mode 100644
index 651cd04f59..0000000000
--- a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 041472afebd1e621be1143f2bfb4c5650df171cc Mon Sep 17 00:00:00 2001
-From: Lars Wendler
-Date: Mon, 11 May 2020 11:49:58 +0200
-Subject: [PATCH] multipath-tools: Fix parallel make issues
-
-build is broken like this (tested with -j16):
-
- x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -shared -lpthread -ldevmapper -ldl -L../libmultipath -lmultipath -L../libmpathcmd -lmpathcmd -Wl,-soname=libmpathpersist.so.0 -o libmpathpersist.so.0 mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o
- building defaults.o because of defaults.c
- ...
- /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lmultipath
- collect2: error: ld returned 1 exit status
- make[1]: *** [Makefile:17: libmpathpersist.so.0] Error 1
- make: *** [Makefile:29: libmpathpersist] Error 2
- make: *** Waiting for unfinished jobs....
-
-install is broken like this:
-
- install -m 755 libprio*.so /var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath
- install -m 755 libcheckcciss_tur.so libcheckreadsector0.so libchecktur.so libcheckdirectio.so libcheckemc_clariion.so libcheckhp_sw.so libcheckrdac.so /var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath
- ...
- /usr/bin/install: target '/var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath' is not a directory
- /usr/bin/install: target '/var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath' is not a directory
- make[1]: *** [Makefile:28: install] Error 1
- make[1]: *** [Makefile:38: install] Error 1
----
- Makefile | 3 ++-
- libmultipath/checkers/Makefile | 1 +
- libmultipath/foreign/Makefile | 1 +
- libmultipath/prioritizers/Makefile | 1 +
- 4 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 1dee3680..a9ade94f 100644
---- a/Makefile
-+++ b/Makefile
-@@ -29,7 +29,8 @@ $(BUILDDIRS):
- $(MAKE) -C $@
-
- multipath multipathd mpathpersist: libmultipath
--mpathpersist: libmpathpersist
-+libmpathpersist: libmultipath
-+mpathpersist: libmultipath libmpathpersist
-
- $(BUILDDIRS.clean):
- $(MAKE) -C ${@:.clean=} clean
-diff --git a/libmultipath/checkers/Makefile b/libmultipath/checkers/Makefile
-index 02caea64..f201ca4c 100644
---- a/libmultipath/checkers/Makefile
-+++ b/libmultipath/checkers/Makefile
-@@ -24,6 +24,7 @@ libcheck%.so: libsg.o %.o
- $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
-
- install:
-+ $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
- $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir)
-
- uninstall:
-diff --git a/libmultipath/foreign/Makefile b/libmultipath/foreign/Makefile
-index fae58a0d..567deebd 100644
---- a/libmultipath/foreign/Makefile
-+++ b/libmultipath/foreign/Makefile
-@@ -14,6 +14,7 @@ libforeign-%.so: %.o
- $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
-
- install:
-+ $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
- $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir)
-
- uninstall:
-diff --git a/libmultipath/prioritizers/Makefile b/libmultipath/prioritizers/Makefile
-index 9d0fe03c..b0b0b522 100644
---- a/libmultipath/prioritizers/Makefile
-+++ b/libmultipath/prioritizers/Makefile
-@@ -35,6 +35,7 @@ libprio%.so: %.o
- $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
-
- install: $(LIBS)
-+ $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
- $(INSTALL_PROGRAM) -m 755 libprio*.so $(DESTDIR)$(libdir)
-
- uninstall:
---
-2.26.2
-
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch
deleted file mode 100644
index 5e5258405b..0000000000
--- a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- multipath-tools-0.8.4-d491591/Makefile.inc
-+++ multipath-tools-0.8.4-d491591/Makefile.inc
-@@ -99,12 +99,13 @@
- -Werror=cast-qual $(ERROR_DISCARDED_QUALIFIERS) \
- $(STACKPROT) --param=ssp-buffer-size=4
- CPPFLAGS := -Wp,-D_FORTIFY_SOURCE=2
--CFLAGS := $(OPTFLAGS) -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
-- -MMD -MP $(CFLAGS)
-+CFLAGS ?= $(OPTFLAGS)
-+CFLAGS += -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
-+ -MMD -MP
- BIN_CFLAGS = -fPIE -DPIE
- LIB_CFLAGS = -fPIC
- SHARED_FLAGS = -shared
--LDFLAGS = -Wl,-z,relro -Wl,-z,now
-+LDFLAGS += -Wl,-z,relro -Wl,-z,now
- BIN_LDFLAGS = -pie
-
- # Check whether a function with name $1 has been declared in header file $2.
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-no-gziped-docs.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch
similarity index 63%
rename from sys-fs/multipath-tools/files/multipath-tools-0.8.3-no-gziped-docs.patch
rename to sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch
index 534a8d33df..d8521436d9 100644
--- a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-no-gziped-docs.patch
+++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch
@@ -1,5 +1,19 @@
-Do not gzip docs
+From 80cca1a75f24ee239ace5577d49ccfec511480ca Mon Sep 17 00:00:00 2001
+From: Sam James
+Date: Mon, 12 Jul 2021 06:04:04 +0100
+Subject: [PATCH] Don't compress man pages
+---
+ kpartx/Makefile | 5 ++---
+ libdmmp/Makefile | 13 ++++---------
+ libmpathpersist/Makefile | 14 +++++---------
+ mpathpersist/Makefile | 5 ++---
+ multipath/Makefile | 10 ++++------
+ multipathd/Makefile | 5 ++---
+ 6 files changed, 19 insertions(+), 33 deletions(-)
+
+diff --git a/kpartx/Makefile b/kpartx/Makefile
+index 2906a98..cd351a4 100644
--- a/kpartx/Makefile
+++ b/kpartx/Makefile
@@ -21,7 +21,6 @@ all: $(EXEC)
@@ -24,55 +38,83 @@ Do not gzip docs
$(RM) $(DESTDIR)$(libudevdir)/kpartx_id
$(RM) $(DESTDIR)$(libudevdir)/rules.d/11-dm-parts.rules
$(RM) $(DESTDIR)$(libudevdir)/rules.d/66-kpartx.rules
+diff --git a/libdmmp/Makefile b/libdmmp/Makefile
+index 764a0bc..a859786 100644
--- a/libdmmp/Makefile
+++ b/libdmmp/Makefile
-@@ -40,7 +40,7 @@ install:
+@@ -21,13 +21,13 @@ CFLAGS += $(LIB_CFLAGS) -fvisibility=hidden -I$(libdmmpdir) -I$(mpathcmddir) \
+ LIBDEPS += $(shell $(PKGCONFIG) --libs json-c) -L$(mpathcmddir) -lmpathcmd -lpthread
+
+ all: $(LIBS) doc
+-.PHONY: doc doc.gz clean install uninstall check speed_test dep_clean
++.PHONY: doc clean install uninstall check speed_test dep_clean
+
+ $(LIBS): $(OBJS)
+ $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ -o $@ $(OBJS) $(LIBDEPS)
+ $(LN) $@ $(DEVLIB)
+
+-install: doc.gz
++install: doc
+ mkdir -p $(DESTDIR)$(usrlibdir)
+ $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(usrlibdir)/$(LIBS)
+ $(INSTALL_PROGRAM) -m 644 -D \
+@@ -41,7 +41,7 @@ install: doc.gz
$(DESTDIR)$(pkgconfdir)/$(PKGFILE)
perl -i -pe 's|__INCLUDEDIR__|$(includedir)|g' \
$(DESTDIR)$(pkgconfdir)/$(PKGFILE)
-- @for file in docs/man/*.3.gz; do \
-+ @for file in docs/man/*.3; do \
- $(INSTALL_PROGRAM) -m 644 -D \
- $$file \
- $(DESTDIR)$(man3dir)/ || exit $?; \
-@@ -69,11 +69,11 @@ check: all
+- $(INSTALL_PROGRAM) -m 644 -t $(DESTDIR)$(man3dir) docs/man/*.3.gz
++ $(INSTALL_PROGRAM) -m 644 -t $(DESTDIR)$(man3dir) docs/man/*.3
+
+ uninstall:
+ $(RM) $(DESTDIR)$(usrlibdir)/$(LIBS)
+@@ -55,7 +55,7 @@ uninstall:
+
+ clean: dep_clean
+ $(RM) core *.a *.o *.gz *.so *.so.*
+- $(RM) docs/man/*.gz
++ $(RM) docs/man/*
+ $(MAKE) -C test clean
+
+ include $(wildcard $(OBJS:.o=.d))
+@@ -66,13 +66,8 @@ check: all
speed_test: all
$(MAKE) -C test speed_test
--doc: docs/man/$(EXTRA_MAN_FILES).gz
-+doc: docs/man/$(EXTRA_MAN_FILES)
-
- TEMPFILE := $(shell mktemp)
-
--docs/man/$(EXTRA_MAN_FILES).gz: $(HEADERS)
-+docs/man/$(EXTRA_MAN_FILES): $(HEADERS)
- @for file in $(EXTRA_MAN_FILES); do \
- $(INSTALL_PROGRAM) -v -m 644 -D docs/$$file docs/man/$$file; \
- done
-@@ -82,10 +82,7 @@ docs/man/$(EXTRA_MAN_FILES).gz: $(HEADERS)
- perl docs/kernel-doc -man "$(TEMPFILE)" | \
- perl docs/split-man.pl docs/man
- -rm -f "$(TEMPFILE)"
-- @for file in docs/man/*.3; do \
-- gzip -f $$file; \
-- done
-- find docs/man -type f -name \*[0-9].gz
-+ find docs/man -type f -name \*.[0-9]
-
- dep_clean:
- $(RM) $(OBJS:.o=.d)
+-doc.gz: doc $(patsubst %,%.gz,$(wildcard docs/man/*.3))
+-
+ doc: docs/man/dmmp_strerror.3
+
+-docs/man/%.3.gz: docs/man/%.3
+- gzip -c $< >$@
+-
+ docs/man/dmmp_strerror.3: $(HEADERS)
+ TEMPFILE=$(shell mktemp); \
+ cat $^ | perl docs/doc-preclean.pl >$$TEMPFILE; \
+diff --git a/libmpathpersist/Makefile b/libmpathpersist/Makefile
+index 57103e5..37c765a 100644
--- a/libmpathpersist/Makefile
+++ b/libmpathpersist/Makefile
-@@ -16,8 +16,6 @@ all: $(LIBS)
- $(LIBS): $(OBJS)
- $(CC) $(LDFLAGS) $(SHARED_FLAGS) $(LIBDEPS) -Wl,-soname=$@ -o $@ $(OBJS)
- $(LN) $(LIBS) $(DEVLIB)
+@@ -12,7 +12,7 @@ LIBDEPS += -lmultipath -lmpathcmd -ldevmapper -lpthread -ldl
+
+ OBJS = mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o
+
+-all: $(DEVLIB) man
++all: $(DEVLIB)
+
+ $(LIBS): $(OBJS) $(VERSION_SCRIPT)
+ $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ \
+@@ -21,10 +21,6 @@ $(LIBS): $(OBJS) $(VERSION_SCRIPT)
+ $(DEVLIB): $(LIBS)
+ $(LN) $(LIBS) $@
+
+-man:
- $(GZIP) mpath_persistent_reserve_in.3 > mpath_persistent_reserve_in.3.gz
- $(GZIP) mpath_persistent_reserve_out.3 > mpath_persistent_reserve_out.3.gz
-
- install: $(LIBS)
+-
+ install: all
$(INSTALL_PROGRAM) -d $(DESTDIR)$(syslibdir)
-@@ -26,14 +24,14 @@ install: $(LIBS)
+ $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(syslibdir)/$(LIBS)
+@@ -32,14 +28,14 @@ install: all
$(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(man3dir)
$(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(includedir)
$(LN) $(LIBS) $(DESTDIR)$(syslibdir)/$(DEVLIB)
@@ -91,6 +133,8 @@ Do not gzip docs
$(RM) $(DESTDIR)$(includedir)/mpath_persist.h
$(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB)
+diff --git a/mpathpersist/Makefile b/mpathpersist/Makefile
+index 5126801..0aba3cb 100644
--- a/mpathpersist/Makefile
+++ b/mpathpersist/Makefile
@@ -14,13 +14,12 @@ all: $(EXEC)
@@ -117,6 +161,8 @@ Do not gzip docs
dep_clean:
$(RM) $(OBJS:.o=.d)
+diff --git a/multipath/Makefile b/multipath/Makefile
+index 0828a8f..55b6f7b 100644
--- a/multipath/Makefile
+++ b/multipath/Makefile
@@ -16,8 +16,6 @@ all: $(EXEC)
@@ -149,17 +195,19 @@ Do not gzip docs
clean: dep_clean
$(RM) core *.o $(EXEC) *.gz
+diff --git a/multipathd/Makefile b/multipathd/Makefile
+index d053c1e..cf3339f 100644
--- a/multipathd/Makefile
+++ b/multipathd/Makefile
-@@ -34,7 +34,6 @@ all : $(EXEC)
+@@ -38,7 +38,6 @@ all : $(EXEC)
$(EXEC): $(OBJS) $(multipathdir)/libmultipath.so $(mpathcmddir)/libmpathcmd.so
$(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) -o $(EXEC) $(LIBDEPS)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
- install:
- $(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
-@@ -45,11 +44,11 @@ ifdef SYSTEMD
+ cli_handlers.o: cli_handlers.c
+ $(CC) $(CFLAGS) -Wno-unused-parameter -c -o $@ $<
+@@ -52,11 +51,11 @@ ifdef SYSTEMD
$(INSTALL_PROGRAM) -m 644 $(EXEC).socket $(DESTDIR)$(unitdir)
endif
$(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir)
@@ -173,3 +221,6 @@ Do not gzip docs
$(RM) $(DESTDIR)$(unitdir)/$(EXEC).service
$(RM) $(DESTDIR)$(unitdir)/$(EXEC).socket
+--
+2.32.0
+
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.7-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.7-respect-flags.patch
new file mode 100644
index 0000000000..43c03883ee
--- /dev/null
+++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.7-respect-flags.patch
@@ -0,0 +1,14 @@
+--- a/Makefile.inc
++++ b/Makefile.inc
+@@ -101,8 +101,9 @@ OPTFLAGS := -O2 -g $(STACKPROT) --param=ssp-buffer-size=4
+ WARNFLAGS := -Werror -Wall -Wextra -Wformat=2 $(WFORMATOVERFLOW) -Werror=implicit-int \
+ -Werror=implicit-function-declaration -Werror=format-security \
+ $(WNOCLOBBERED) -Werror=cast-qual $(ERROR_DISCARDED_QUALIFIERS)
+-CPPFLAGS := -Wp,-D_FORTIFY_SOURCE=2
+-CFLAGS := --std=gnu99 $(CFLAGS) $(OPTFLAGS) $(WARNFLAGS) -pipe \
++CPPFLAGS ?= -Wp,-D_FORTIFY_SOURCE=2
++CFLAGS ?= --std=gnu99 $(CFLAGS) $(OPTFLAGS) $(WARNFLAGS) -pipe
++CFLAGS += --std=gnu99 \
+ -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
+ -MMD -MP
+ BIN_CFLAGS = -fPIE -DPIE
diff --git a/sys-fs/multipath-tools/metadata.xml b/sys-fs/multipath-tools/metadata.xml
index 9a20c9e5bc..1cbf200d6c 100644
--- a/sys-fs/multipath-tools/metadata.xml
+++ b/sys-fs/multipath-tools/metadata.xml
@@ -1,5 +1,5 @@
-
+
base-system@gentoo.org
@@ -8,4 +8,7 @@
+
+ opensvc/multipath-tools
+
diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.5.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild
similarity index 71%
rename from sys-fs/multipath-tools/multipath-tools-0.8.5.ebuild
rename to sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild
index cd850ca74a..e8862ae677 100644
--- a/sys-fs/multipath-tools/multipath-tools-0.8.5.ebuild
+++ b/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild
@@ -1,20 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs
+inherit linux-info systemd toolchain-funcs udev
DESCRIPTION="Device mapper target autoconfig"
HOMEPAGE="http://christophe.varoqui.free.fr/"
-SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz"
+SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
-IUSE="systemd rbd"
-
-BDEPEND="virtual/pkgconfig"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ppc ppc64 x86"
+IUSE="systemd rbd test"
+RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/json-c:=
@@ -26,23 +25,17 @@ RDEPEND="
rbd? ( sys-cluster/ceph )
systemd? ( sys-apps/systemd )
"
-
-DEPEND="${RDEPEND}"
+DEPEND="${RDEPEND}
+ test? ( dev-util/cmocka )"
+BDEPEND="virtual/pkgconfig"
CONFIG_CHECK="~DM_MULTIPATH"
-RESTRICT="test"
-
PATCHES=(
"${FILESDIR}"/${PN}-0.8.5-respect-flags.patch
- "${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch
+ "${FILESDIR}"/${PN}-0.8.6-no-compress-man-pages.patch
)
-get_systemd_pv() {
- use systemd && \
- $(tc-getPKG_CONFIG) --modversion systemd
-}
-
src_prepare() {
default
@@ -63,15 +56,17 @@ src_compile() {
# so force the test to go the way we want #411337.
emake \
CC="$(tc-getCC)" \
- LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)"
+ LIB="${EPREFIX}/$(get_libdir)" \
+ LIBDM_API_FLUSH=1 \
+ PKGCONFIG="$(tc-getPKG_CONFIG)"
}
src_install() {
dodir /sbin /usr/share/man/man{3,5,8}
emake \
DESTDIR="${D}" \
+ LIB="${EPREFIX}/$(get_libdir)" \
RUN=run \
- SYSTEMD=$(get_systemd_pv) \
unitdir="$(systemd_get_systemunitdir)" \
libudevdir='${prefix}'/"$(get_udevdir)" \
pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \
@@ -81,10 +76,12 @@ src_install() {
newinitd "${FILESDIR}"/multipath.rc multipath
einstalldocs
+
+ find "${ED}" -type f -name "*.la" -delete || die
}
pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
elog "If you need multipath on your system, you must"
elog "add 'multipath' into your boot runlevel!"
fi
diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.3-r2.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.7.ebuild
similarity index 67%
rename from sys-fs/multipath-tools/multipath-tools-0.8.3-r2.ebuild
rename to sys-fs/multipath-tools/multipath-tools-0.8.7.ebuild
index ab5b8e5272..35caf3b69f 100644
--- a/sys-fs/multipath-tools/multipath-tools-0.8.3-r2.ebuild
+++ b/sys-fs/multipath-tools/multipath-tools-0.8.7.ebuild
@@ -1,20 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs
+inherit linux-info systemd toolchain-funcs udev
DESCRIPTION="Device mapper target autoconfig"
HOMEPAGE="http://christophe.varoqui.free.fr/"
-SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz"
+SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ppc ppc64 x86"
-IUSE="systemd rbd"
-
-BDEPEND="virtual/pkgconfig"
+IUSE="systemd rbd test"
+RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/json-c:=
@@ -26,25 +25,17 @@ RDEPEND="
rbd? ( sys-cluster/ceph )
systemd? ( sys-apps/systemd )
"
-
-DEPEND="${RDEPEND}"
+DEPEND="${RDEPEND}
+ test? ( dev-util/cmocka )"
+BDEPEND="virtual/pkgconfig"
CONFIG_CHECK="~DM_MULTIPATH"
-RESTRICT="test"
-
PATCHES=(
- "${FILESDIR}"/${PN}-0.7.5-respect-flags.patch
- "${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch
- "${FILESDIR}"/${PN}-0.8.3-json-c-0.14.patch
- "${FILESDIR}"/${PN}-0.8.3-fix-gcc-10-compatibility.patch
+ "${FILESDIR}"/${PN}-0.8.7-respect-flags.patch
+ "${FILESDIR}"/${PN}-0.8.6-no-compress-man-pages.patch
)
-get_systemd_pv() {
- use systemd && \
- $(tc-getPKG_CONFIG) --modversion systemd
-}
-
src_prepare() {
default
@@ -61,19 +52,22 @@ src_prepare() {
}
src_compile() {
+ tc-export CC
+
# LIBDM_API_FLUSH involves grepping files in /usr/include,
# so force the test to go the way we want #411337.
emake \
- CC="$(tc-getCC)" \
- LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)"
+ LIB="${EPREFIX}/$(get_libdir)" \
+ LIBDM_API_FLUSH=1 \
+ PKGCONFIG="$(tc-getPKG_CONFIG)"
}
src_install() {
- dodir /sbin /usr/share/man/man{5,8}
+ dodir /sbin /usr/share/man/man{3,5,8}
emake \
DESTDIR="${D}" \
+ LIB="${EPREFIX}/$(get_libdir)" \
RUN=run \
- SYSTEMD=$(get_systemd_pv) \
unitdir="$(systemd_get_systemunitdir)" \
libudevdir='${prefix}'/"$(get_udevdir)" \
pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \
@@ -83,10 +77,12 @@ src_install() {
newinitd "${FILESDIR}"/multipath.rc multipath
einstalldocs
+
+ find "${ED}" -type f -name "*.la" -delete || die
}
pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
elog "If you need multipath on your system, you must"
elog "add 'multipath' into your boot runlevel!"
fi
diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.8.ebuild
similarity index 65%
rename from sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild
rename to sys-fs/multipath-tools/multipath-tools-0.8.8.ebuild
index ab4f6f9cd3..f0a18e273b 100644
--- a/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild
+++ b/sys-fs/multipath-tools/multipath-tools-0.8.8.ebuild
@@ -1,20 +1,20 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs
+inherit linux-info systemd toolchain-funcs udev
DESCRIPTION="Device mapper target autoconfig"
HOMEPAGE="http://christophe.varoqui.free.fr/"
-SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz"
+SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.8.8-no-compress-man-pages.patch.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
-IUSE="systemd rbd"
-
-BDEPEND="virtual/pkgconfig"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="systemd rbd test"
+RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/json-c:=
@@ -26,25 +26,17 @@ RDEPEND="
rbd? ( sys-cluster/ceph )
systemd? ( sys-apps/systemd )
"
-
-DEPEND="${RDEPEND}"
+DEPEND="${RDEPEND}
+ test? ( dev-util/cmocka )"
+BDEPEND="virtual/pkgconfig"
CONFIG_CHECK="~DM_MULTIPATH"
-RESTRICT="test"
-
PATCHES=(
- "${FILESDIR}"/${PN}-0.8.4-respect-flags.patch
- "${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch
- "${FILESDIR}"/${PN}-0.8.3-json-c-0.14.patch
- "${FILESDIR}"/${PN}-0.8.4-parallel_make_fix.patch
+ "${FILESDIR}"/${PN}-0.8.7-respect-flags.patch
+ "${WORKDIR}"/${PN}-0.8.8-no-compress-man-pages.patch
)
-get_systemd_pv() {
- use systemd && \
- $(tc-getPKG_CONFIG) --modversion systemd
-}
-
src_prepare() {
default
@@ -61,19 +53,22 @@ src_prepare() {
}
src_compile() {
+ tc-export CC
+
# LIBDM_API_FLUSH involves grepping files in /usr/include,
# so force the test to go the way we want #411337.
emake \
- CC="$(tc-getCC)" \
- LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)"
+ LIB="${EPREFIX}/$(get_libdir)" \
+ LIBDM_API_FLUSH=1 \
+ PKGCONFIG="$(tc-getPKG_CONFIG)"
}
src_install() {
dodir /sbin /usr/share/man/man{3,5,8}
emake \
DESTDIR="${D}" \
+ LIB="${EPREFIX}/$(get_libdir)" \
RUN=run \
- SYSTEMD=$(get_systemd_pv) \
unitdir="$(systemd_get_systemunitdir)" \
libudevdir='${prefix}'/"$(get_udevdir)" \
pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \
@@ -83,10 +78,12 @@ src_install() {
newinitd "${FILESDIR}"/multipath.rc multipath
einstalldocs
+
+ find "${ED}" -type f -name "*.la" -delete || die
}
pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
elog "If you need multipath on your system, you must"
elog "add 'multipath' into your boot runlevel!"
fi
diff --git a/sys-libs/e2fsprogs-libs/Manifest b/sys-libs/e2fsprogs-libs/Manifest
index 889ae64f7d..580fc5c761 100644
--- a/sys-libs/e2fsprogs-libs/Manifest
+++ b/sys-libs/e2fsprogs-libs/Manifest
@@ -1,3 +1 @@
-DIST e2fsprogs-1.45.4.tar.xz 5567164 BLAKE2B ab7be15e504b674290a25572d09d1ca4bacebc14d23a0ae400636bdcf3bf117f3aaf82b806ca7fd25dcd6ef9fedff588de7c72134b095e27f7a363f7d70c94c7 SHA512 408f093a6674ef2316c451173481851041957617c550308d2969b983e11d988ddfc120626cd957c0759648bc357edf1d9971e6d46bed109c2af5f8a09bdc5bda
-DIST e2fsprogs-1.45.5.tar.xz 5569796 BLAKE2B cf9633caa6c00afa51408364d0c0a1515a9989ad1582fb485a300fd71bf61ec56b57dbb26f152609eaf2d63bfb04fe1e3f271085c26aa0c832c1f467960e6480 SHA512 d1a8611b525742387061f390fb24825dfa175997cc7db05decea913fcc7b97a95a3e787091f2920d4a7d4eb1d813568af734a1610229ead09bcbf9f3e262e4ce
-DIST e2fsprogs-1.45.6.tar.xz 5572144 BLAKE2B 24a44d27a02a1fa178083d5ee6034b20fedcac9faf7cf7f5cfcd4e4cee6d38775bc78949b9b00823cbbdacfab783e8e1e739579b9a7236c5425f51b27600743b SHA512 f3abfb6fe7ef632bb81152e2127d601cadd3fa93162178576a1d5ed82c2286627184b207b85a5b2a1793db0addf0885dfc3b9523bb340443224caf9c6d613b84
+DIST e2fsprogs-1.46.4.tar.xz 7035200 BLAKE2B 473f7fd3f521b94cdaa68e37784a518fc1919387dd114f31b5338f1b4c472f86b150229ec3dcae8b73eac95330c0dea729befc8cea08bcf1e455c0b6652d6d2b SHA512 7d9cfdf00ed58e66049585e8382fe4977088956421a0fb8155900c69afd8857309ad2b9301b3f74c9c0afa7287a0ddba2fd1538fcf57858b37a9ab712390016d
diff --git a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.4.ebuild b/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.4.ebuild
deleted file mode 100644
index 4333c81041..0000000000
--- a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.4.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs multilib-minimal usr-ldscript
-
-MY_PN=${PN%-libs}
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="e2fsprogs libraries (common error and subsystem)"
-HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="mirror://sourceforge/e2fsprogs/${MY_P}.tar.xz
- https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${MY_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 ~m68k-mint ~x86-solaris"
-IUSE="static-libs"
-
-RDEPEND="!sys-libs/com_err
- !sys-libs/ss
- !=sys-fs/e2fsprogs-1.46.4-r51"
BDEPEND="virtual/pkgconfig"
S="${WORKDIR}/${MY_P}"
diff --git a/sys-libs/e2fsprogs-libs/metadata.xml b/sys-libs/e2fsprogs-libs/metadata.xml
index 3455ebb9dc..ec439e44fe 100644
--- a/sys-libs/e2fsprogs-libs/metadata.xml
+++ b/sys-libs/e2fsprogs-libs/metadata.xml
@@ -1,12 +1,13 @@
-
+
-
- base-system@gentoo.org
- Gentoo Base System
-
-
- cpe:/a:e2fsprogs_project:e2fsprogs
- e2fsprogs
-
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+ cpe:/a:e2fsprogs_project:e2fsprogs
+ tytso/e2fsprogs
+ e2fsprogs
+
diff --git a/sys-libs/liburing/Manifest b/sys-libs/liburing/Manifest
index 90602b3316..397baaaf05 100644
--- a/sys-libs/liburing/Manifest
+++ b/sys-libs/liburing/Manifest
@@ -1 +1 @@
-DIST liburing-0.7.tar.bz2 86386 BLAKE2B a4fa00cc8e384f9909f3c628d479774beaffd5ab09c9f321ef22bfbabd273e4c8d4dbb30a3280633e89e1a79e893348e68f0aa2f3b1b4deda56759f77d9b1875 SHA512 9a23bc08e0fa59273264295859dddbe3276b2911df6d937b3c6f7647a250a3175222b5f051f3094efc98e48cacd242511327c5c5b895ebde10c8c87929ba4328
+DIST liburing-2.1.tar.bz2 120806 BLAKE2B 3a09d1504150ed1c111f064187d868fd86ec7c3dbf661f73999f7fbb9c945b528f7ab2e0cfff5d270a1a977f04deedc7c790b6df8708ef2884fbf28c1a9ffd1b SHA512 a658454869b01752b5e499c4f0b50c342a8ff63b3dd1a473a96f9fad03f22a6e4d2354b0e658a4e7e50ea27440a84ee274856b3687803583bc80cb4bc45aec71
diff --git a/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
new file mode 100644
index 0000000000..a652b05214
--- /dev/null
+++ b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
@@ -0,0 +1,54 @@
+https://github.com/axboe/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da
+https://bugs.gentoo.org/816798
+
+From cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001
+From: Guillem Jover
+Date: Mon, 13 Sep 2021 23:56:08 +0200
+Subject: [PATCH] test: Use syscall wrappers instead of using syscall(2)
+ directly
+
+Some of these syscalls have different entry points depending on the
+architecture. Use the wrappers to avoid having to reimplement them
+portably.
+
+Fixes build failures on Debian armel and armhf builds.
+
+Signed-off-by: Guillem Jover
+--- a/test/sqpoll-cancel-hang.c
++++ b/test/sqpoll-cancel-hang.c
+@@ -4,7 +4,6 @@
+ #include
+ #include
+ #include
+-#include
+ #include
+ #include
+ #include
+@@ -29,8 +28,6 @@ static uint64_t current_time_ms(void)
+
+ #define IORING_OFF_SQES 0x10000000ULL
+
+-#define sys_io_uring_setup 425
+-
+ static void kill_and_wait(int pid, int* status)
+ {
+ kill(-pid, SIGKILL);
+@@ -53,7 +50,7 @@ a5)
+ void* vma2 = (void*)a3;
+ void** ring_ptr_out = (void**)a4;
+ void** sqes_ptr_out = (void**)a5;
+- uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params);
++ uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params);
+ uint32_t sq_ring_sz = setup_params->sq_off.array +
+ setup_params->sq_entries * sizeof(uint32_t);
+ uint32_t cq_ring_sz = setup_params->cq_off.cqes +
+@@ -135,7 +132,7 @@ void trigger_bug(void)
+ }
+ int main(void)
+ {
+- syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
++ mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
+ int pid = fork();
+ if (pid < 0)
+ exit(1);
+
diff --git a/sys-libs/liburing/liburing-2.1-r1.ebuild b/sys-libs/liburing/liburing-2.1-r1.ebuild
new file mode 100644
index 0000000000..ae14b067cb
--- /dev/null
+++ b/sys-libs/liburing/liburing-2.1-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal toolchain-funcs
+
+DESCRIPTION="Efficient I/O with io_uring"
+HOMEPAGE="https://github.com/axboe/liburing"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/axboe/liburing.git"
+else
+ SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86"
+fi
+LICENSE="MIT"
+SLOT="0/2" # liburing.so major version
+
+IUSE="static-libs"
+# fsync test hangs forever
+RESTRICT="test"
+
+PATCHES=(
+ # Upstream, bug #816798
+ "${FILESDIR}"/${P}-arm-syscall.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" != *9999 ]] ; then
+ # Make sure pkgconfig files contain the correct version
+ # bug #809095 and #833895
+ sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || die
+ fi
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${EPREFIX}/usr"
+ --libdir="${EPREFIX}/usr/$(get_libdir)"
+ --libdevdir="${EPREFIX}/usr/$(get_libdir)"
+ --mandir="${EPREFIX}/usr/share/man"
+ --cc="$(tc-getCC)"
+ )
+ # No autotools configure! "econf" will fail.
+ TMPDIR="${T}" ./configure "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if ! use static-libs ; then
+ find "${ED}" -type f -name "*.a" -delete || die
+ fi
+}
+
+multilib_src_test() {
+ emake V=1 runtests
+}
diff --git a/sys-libs/liburing/liburing-0.7-r1.ebuild b/sys-libs/liburing/liburing-9999.ebuild
similarity index 62%
rename from sys-libs/liburing/liburing-0.7-r1.ebuild
rename to sys-libs/liburing/liburing-9999.ebuild
index c349d80f97..c7427bfe9a 100644
--- a/sys-libs/liburing/liburing-0.7-r1.ebuild
+++ b/sys-libs/liburing/liburing-9999.ebuild
@@ -1,16 +1,21 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit multilib-minimal toolchain-funcs
DESCRIPTION="Efficient I/O with io_uring"
HOMEPAGE="https://github.com/axboe/liburing"
-SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~ppc ppc64 sparc x86"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/axboe/liburing.git"
+else
+ SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
LICENSE="MIT"
-SLOT="0/1.0.7" # liburing.so version
+SLOT="0/2" # liburing.so major version
IUSE="static-libs"
# fsync test hangs forever
@@ -18,6 +23,13 @@ RESTRICT="test"
src_prepare() {
default
+
+ if [[ "${PV}" != *9999 ]] ; then
+ # Make sure pkgconfig files contain the correct version
+ # bug #809095 and #833895
+ sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || die
+ fi
+
multilib_copy_sources
}
diff --git a/sys-libs/liburing/metadata.xml b/sys-libs/liburing/metadata.xml
index e9a23bab52..52230348c9 100644
--- a/sys-libs/liburing/metadata.xml
+++ b/sys-libs/liburing/metadata.xml
@@ -1,5 +1,5 @@
-
+
polynomial-c@gentoo.org
diff --git a/virtual/awk/awk-1.ebuild b/virtual/awk/awk-1.ebuild
index c405925c8a..1d8e9c62e9 100644
--- a/virtual/awk/awk-1.ebuild
+++ b/virtual/awk/awk-1.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
DESCRIPTION="Virtual for awk implementation"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
RDEPEND="
|| (
@@ -13,5 +13,4 @@ RDEPEND="
sys-apps/mawk
sys-apps/nawk
sys-apps/busybox
- )
- !
-
+
-
- junghans@gentoo.org
- Christoph Junghans
-
-
- base-system@gentoo.org
- Gentoo Base System
-
-
+
+ junghans@gentoo.org
+ Christoph Junghans
+
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+
diff --git a/virtual/libudev/libudev-215-r1.ebuild b/virtual/libudev/libudev-215-r1.ebuild
deleted file mode 100644
index e85f06c93c..0000000000
--- a/virtual/libudev/libudev-215-r1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit multilib-build
-
-DESCRIPTION="Virtual for libudev providers"
-SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="static-libs systemd"
-REQUIRED_USE="systemd? ( !static-libs )"
-
-RDEPEND="
- !systemd? ( || (
- >=sys-fs/eudev-1.3:0/0[${MULTILIB_USEDEP},static-libs(-)?]
- >=sys-fs/udev-208-r1:0/0[${MULTILIB_USEDEP},static-libs(-)?]
- ) )
- systemd? ( >=sys-apps/systemd-212-r5:0/2[${MULTILIB_USEDEP}] )
-"
diff --git a/virtual/libudev/libudev-232-r1.ebuild b/virtual/libudev/libudev-232-r1.ebuild
deleted file mode 100644
index 68cec0b50c..0000000000
--- a/virtual/libudev/libudev-232-r1.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit multilib-build
-
-DESCRIPTION="Virtual for libudev providers"
-SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
-IUSE="systemd"
-
-RDEPEND="
- !systemd? ( >=sys-fs/udev-232:0/0[${MULTILIB_USEDEP}] )
- systemd? ( >=sys-apps/systemd-232:0/2[${MULTILIB_USEDEP}] )
-"
diff --git a/virtual/libudev/libudev-232-r3.ebuild b/virtual/libudev/libudev-232-r3.ebuild
deleted file mode 100644
index 75050714b7..0000000000
--- a/virtual/libudev/libudev-232-r3.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit multilib-build
-
-DESCRIPTION="Virtual for libudev providers"
-SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="static-libs systemd"
-
-RDEPEND="
- !systemd? ( || (
- >=sys-fs/eudev-3.2.9:0/0[${MULTILIB_USEDEP},static-libs(-)?]
- >=sys-fs/udev-232:0/0[${MULTILIB_USEDEP},static-libs(-)?]
- ) )
- systemd? ( >=sys-apps/systemd-232:0/2[${MULTILIB_USEDEP},static-libs(-)?] )
-"
diff --git a/virtual/libudev/libudev-232-r2.ebuild b/virtual/libudev/libudev-232-r5.ebuild
similarity index 82%
rename from virtual/libudev/libudev-232-r2.ebuild
rename to virtual/libudev/libudev-232-r5.ebuild
index 9456f927db..c835fa223c 100644
--- a/virtual/libudev/libudev-232-r2.ebuild
+++ b/virtual/libudev/libudev-232-r5.ebuild
@@ -1,18 +1,20 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
inherit multilib-build
DESCRIPTION="Virtual for libudev providers"
+
SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
-IUSE="static-libs systemd"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="systemd"
RDEPEND="
!systemd? ( || (
- >=sys-fs/eudev-3.2.9:0/0[${MULTILIB_USEDEP}]
>=sys-fs/udev-232:0/0[${MULTILIB_USEDEP}]
+ >=sys-fs/eudev-3.2.9:0/0[${MULTILIB_USEDEP}]
) )
systemd? ( >=sys-apps/systemd-232:0/2[${MULTILIB_USEDEP}] )
"
diff --git a/virtual/libudev/metadata.xml b/virtual/libudev/metadata.xml
index b1c8a60ed0..d3d2736bbc 100644
--- a/virtual/libudev/metadata.xml
+++ b/virtual/libudev/metadata.xml
@@ -1,13 +1,11 @@
-
+
-
- udev-bugs@gentoo.org
-
eudev@gentoo.org
systemd@gentoo.org
+
diff --git a/virtual/resolvconf/metadata.xml b/virtual/resolvconf/metadata.xml
index 7a38bb9009..c3bda71eef 100644
--- a/virtual/resolvconf/metadata.xml
+++ b/virtual/resolvconf/metadata.xml
@@ -1,5 +1,6 @@
-
+
+
diff --git a/virtual/resolvconf/resolvconf-1.ebuild b/virtual/resolvconf/resolvconf-1.ebuild
index 5f85ce1247..3438254add 100644
--- a/virtual/resolvconf/resolvconf-1.ebuild
+++ b/virtual/resolvconf/resolvconf-1.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Virtual to select between different resolvconf providers"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
|| (