diff --git a/acct-group/man/man-0-r1.ebuild b/acct-group/man/man-0-r1.ebuild
new file mode 100644
index 0000000000..77c58e22ae
--- /dev/null
+++ b/acct-group/man/man-0-r1.ebuild
@@ -0,0 +1,8 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-group
+
+ACCT_GROUP_ID=15
diff --git a/acct-group/man/metadata.xml b/acct-group/man/metadata.xml
new file mode 100644
index 0000000000..65e1fc82d8
--- /dev/null
+++ b/acct-group/man/metadata.xml
@@ -0,0 +1,7 @@
+
+
+
+
+ base-system@gentoo.org
+
+
diff --git a/acct-user/man/man-1-r1.ebuild b/acct-user/man/man-1-r1.ebuild
new file mode 100644
index 0000000000..7fc43e801d
--- /dev/null
+++ b/acct-user/man/man-1-r1.ebuild
@@ -0,0 +1,11 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-user
+
+ACCT_USER_ID=13
+ACCT_USER_GROUPS=( man )
+
+acct-user_add_deps
diff --git a/acct-user/man/metadata.xml b/acct-user/man/metadata.xml
new file mode 100644
index 0000000000..8f8127182c
--- /dev/null
+++ b/acct-user/man/metadata.xml
@@ -0,0 +1,7 @@
+
+
+
+
+ base-system@gentoo.org
+
+
diff --git a/app-arch/lzop/Manifest b/app-arch/lzop/Manifest
index 082ee581c4..f21b8f488a 100644
--- a/app-arch/lzop/Manifest
+++ b/app-arch/lzop/Manifest
@@ -1,2 +1 @@
-DIST lzop-1.03.tar.gz 370775 BLAKE2B c3932c18e13dee788ad405e8241e2366497fae66a7966131baf1880c10974839df12456f6986d975929f7e6005a5dce9887a8af0a2415ec7700ce5b68cf1e100 SHA512 a7a46793e060690f7da3e9dcae8e19f9c3633b84bc6e4a9a7fbf7791361fc7795e00f1d820978b20df8731c165b37244f11203a2936640688e4ade0cc2f5f3d7
DIST lzop-1.04.tar.gz 393483 BLAKE2B ebeceac9492ce45e6976cd5cde262d9755286e1649802e3e16bfae0abdd74714bf86b076816aa309542cadef5bb65971342208763e1b2761fce2332dc9daa38c SHA512 5829b4495ffefab549aa697a05c536ce593c572c9eee6004460583a0090abcd317c6074c4f981dfee6be61ac8d127f02dd37053b6cb782af64db41586a8bbb6e
diff --git a/app-arch/lzop/files/lzop-1.03-gcc6.patch b/app-arch/lzop/files/lzop-1.03-gcc6.patch
deleted file mode 100644
index 0826bc1f52..0000000000
--- a/app-arch/lzop/files/lzop-1.03-gcc6.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/src/miniacc.h
-+++ b/src/miniacc.h
-@@ -4469,12 +4469,12 @@
- #if defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0150)
- #elif 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC)
- #else
-- ACCCHK_ASSERT((1 << (8*SIZEOF_INT-1)) < 0)
-+ ACCCHK_ASSERT((int)(1u << (8*SIZEOF_INT-1)) < 0)
- #endif
- ACCCHK_ASSERT((1u << (8*SIZEOF_INT-1)) > 0)
- #if 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC)
- #else
-- ACCCHK_ASSERT((1l << (8*SIZEOF_LONG-1)) < 0)
-+ ACCCHK_ASSERT((long)(1ul << (8*SIZEOF_LONG-1)) < 0)
- #endif
- ACCCHK_ASSERT((1ul << (8*SIZEOF_LONG-1)) > 0)
- #if defined(acc_int16e_t)
-@@ -4703,7 +4703,7 @@
- #elif 1 && (ACC_CC_LCC || ACC_CC_LCCWIN32) && !defined(ACCCHK_CFG_PEDANTIC)
- #elif 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC)
- #elif !(ACC_BROKEN_INTEGRAL_PROMOTION) && (SIZEOF_INT > 1)
-- ACCCHK_ASSERT( (((unsigned char)128) << (int)(8*sizeof(int)-8)) < 0)
-+ ACCCHK_ASSERT( (int)((unsigned int)((unsigned char)128) << (int)(8*sizeof(int)-8)) < 0)
- #endif
- #if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0530) && (__BORLANDC__ < 0x0560))
- # pragma option pop
diff --git a/app-arch/lzop/files/lzop-1.03-x32.patch b/app-arch/lzop/files/lzop-1.03-x32.patch
deleted file mode 100644
index e261f18123..0000000000
--- a/app-arch/lzop/files/lzop-1.03-x32.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-https://bugs.gentoo.org/575450
-
-Fix get of FLAGS register in x32 ABI,
-
-x32 ABI requires to have 64-bit variable to store FLAGS register
-instead of size_t that is 32-bit variable, this fix operand
-type mismatch when try to pop previous pushf value.
-
-Upstream-status: Submitted
-
-Signed-off-by: Aníbal Limón
-
-Index: lzop-1.03/src/miniacc.h
-===================================================================
---- lzop-1.03.orig/src/miniacc.h
-+++ lzop-1.03/src/miniacc.h
-@@ -754,6 +754,9 @@
- #elif defined(__amd64__) || defined(__x86_64__) || defined(_M_AMD64)
- # define ACC_ARCH_AMD64 1
- # define ACC_INFO_ARCH "amd64"
-+# if defined(__ILP32__)
-+# define ACC_ARCH_AMD64_X32 1
-+# endif
- #elif defined(__thumb__) || (defined(_M_ARM) && defined(_M_THUMB))
- # define ACC_ARCH_ARM 1
- # define ACC_ARCH_ARM_THUMB 1
-@@ -6787,7 +6790,11 @@ ACCLIB_PUBLIC_NOINLINE(void, acc_debug_n
- ACCLIB_PUBLIC_NOINLINE(int, acc_debug_align_check_query) (void)
- {
- #if (ACC_ARCH_AMD64 || ACC_ARCH_I386) && (ACC_ASM_SYNTAX_GNUC)
-+# if defined(ACC_ARCH_AMD64_X32)
-+ unsigned long long r;
-+# else
- size_t r;
-+# endif
- __asm__ __volatile__("pushf\n pop %0\n" : "=a" (r) : : __ACC_ASM_CLOBBER);
- return (int)(r >> 18) & 1;
- #elif (ACC_ARCH_I386) && (ACC_ASM_SYNTAX_MSC)
diff --git a/app-arch/lzop/lzop-1.03.ebuild b/app-arch/lzop/lzop-1.03.ebuild
deleted file mode 100644
index ad00dfc605..0000000000
--- a/app-arch/lzop/lzop-1.03.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-DESCRIPTION="Utility for fast (even real-time) compression/decompression"
-HOMEPAGE="http://www.lzop.org/"
-SRC_URI="http://www.lzop.org/download/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND=">=dev-libs/lzo-2"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${P}-x32.patch #575450
- "${FILESDIR}"/${P}-gcc6.patch #594472
-)
-
-HTML_DOCS=( doc/lzop.html )
-
-src_test() {
- einfo "compressing config.status to test"
- src/lzop config.status || die 'compression failed'
- ls -la config.status{,.lzo}
- src/lzop -t config.status.lzo || die 'lzo test failed'
- src/lzop -dc config.status.lzo | diff config.status - || die 'decompression generated differences from original'
-}
-
-src_install() {
- default
- dodoc doc/lzop.{txt,ps}
-}
diff --git a/app-arch/lzop/lzop-1.04.ebuild b/app-arch/lzop/lzop-1.04.ebuild
index d34d3ce610..61d2ad39de 100644
--- a/app-arch/lzop/lzop-1.04.ebuild
+++ b/app-arch/lzop/lzop-1.04.ebuild
@@ -1,15 +1,15 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
DESCRIPTION="Utility for fast (even real-time) compression/decompression"
-HOMEPAGE="http://www.lzop.org/"
-SRC_URI="http://www.lzop.org/download/${P}.tar.gz"
+HOMEPAGE="https://www.lzop.org/"
+SRC_URI="https://www.lzop.org/download/${P}.tar.gz"
-LICENSE="GPL-2"
+LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
IUSE=""
RDEPEND=">=dev-libs/lzo-2"
diff --git a/app-arch/lzop/metadata.xml b/app-arch/lzop/metadata.xml
index 0319eec4c8..076793e3f5 100644
--- a/app-arch/lzop/metadata.xml
+++ b/app-arch/lzop/metadata.xml
@@ -1,5 +1,5 @@
-
+
mgorny@gentoo.org
diff --git a/app-eselect/eselect-pinentry/eselect-pinentry-0.7.ebuild b/app-eselect/eselect-pinentry/eselect-pinentry-0.7.1.ebuild
similarity index 57%
rename from app-eselect/eselect-pinentry/eselect-pinentry-0.7.ebuild
rename to app-eselect/eselect-pinentry/eselect-pinentry-0.7.1.ebuild
index 54d6eac5a4..2dc9957138 100644
--- a/app-eselect/eselect-pinentry/eselect-pinentry-0.7.ebuild
+++ b/app-eselect/eselect-pinentry/eselect-pinentry-0.7.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
DESCRIPTION="Manage /usr/bin/pinentry symlink"
HOMEPAGE="https://www.gentoo.org/proj/en/eselect/"
@@ -9,7 +9,7 @@ SRC_URI=""
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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=""
RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
diff --git a/app-eselect/eselect-pinentry/eselect-pinentry-0.7.2.ebuild b/app-eselect/eselect-pinentry/eselect-pinentry-0.7.2.ebuild
new file mode 100644
index 0000000000..a88d776c25
--- /dev/null
+++ b/app-eselect/eselect-pinentry/eselect-pinentry-0.7.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Manage /usr/bin/pinentry symlink"
+HOMEPAGE="https://www.gentoo.org/proj/en/eselect/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+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=""
+
+RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
+
+S="${FILESDIR}"
+
+src_install() {
+ default
+ insinto /usr/share/eselect/modules
+ newins pinentry.eselect-${PV} pinentry.eselect
+}
diff --git a/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7 b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7.1
similarity index 52%
rename from app-eselect/eselect-pinentry/files/pinentry.eselect-0.7
rename to app-eselect/eselect-pinentry/files/pinentry.eselect-0.7.1
index ec49ca1a60..77427c45da 100644
--- a/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7
+++ b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7.1
@@ -1,12 +1,12 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
DESCRIPTION="Manage /usr/bin/pinentry implementation"
-MAINTAINER="ssuominen@gentoo.org"
-VERSION="0.7"
+MAINTAINER="zlogene@gentoo.org"
+VERSION="0.7.1"
SYMLINK_PATH=/usr/bin/pinentry
-SYMLINK_TARGETS=( pinentry-gnome3 pinentry-qt pinentry-gtk-2 pinentry-qt4 pinentry-curses pinentry-tty )
+SYMLINK_TARGETS=( pinentry-gnome3 pinentry-qt5 pinentry-curses pinentry-tty )
SYMLINK_DESCRIPTION='pinentry binary'
inherit bin-symlink
diff --git a/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7.2 b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7.2
new file mode 100644
index 0000000000..c445cbf792
--- /dev/null
+++ b/app-eselect/eselect-pinentry/files/pinentry.eselect-0.7.2
@@ -0,0 +1,12 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+DESCRIPTION="Manage /usr/bin/pinentry implementation"
+MAINTAINER="zlogene@gentoo.org"
+VERSION="0.7.2"
+
+SYMLINK_PATH=/usr/bin/pinentry
+SYMLINK_TARGETS=( pinentry-efl pinentry-gnome3 pinentry-qt5 pinentry-curses pinentry-tty )
+SYMLINK_DESCRIPTION='pinentry binary'
+
+inherit bin-symlink
diff --git a/app-eselect/eselect-pinentry/metadata.xml b/app-eselect/eselect-pinentry/metadata.xml
index f1c3d59fb2..31a6399a74 100644
--- a/app-eselect/eselect-pinentry/metadata.xml
+++ b/app-eselect/eselect-pinentry/metadata.xml
@@ -1,8 +1,9 @@
-
+
-
- crypto@gentoo.org
- Crypto
-
+
+ zlogene@gentoo.org
+ Mikle Kolyada
+
+
diff --git a/app-vim/gentoo-syntax/Manifest b/app-vim/gentoo-syntax/Manifest
index 47fdd0995f..33e8f63734 100644
--- a/app-vim/gentoo-syntax/Manifest
+++ b/app-vim/gentoo-syntax/Manifest
@@ -1,8 +1,3 @@
-DIST gentoo-syntax-20160530.tar.gz 18950 SHA256 819495c10e594b2fef1fdcd80afa24ee437fe20b94ad9e7eb9e91f0a5be31919 SHA512 38881c5f16499eb053eb7a5514f6324b2a161f1392a044db0bbaf0cb71a0f17e1edebd4a685ff856a78525fbcb8c6267daa2503cfbc6f94d841cf3f6a25045bd WHIRLPOOL 41018200b7f79eec005f55e80d3f8b1eec1f33acdbf1a8bce03b282a27cf63bb08a4959e0fcd74ecc9972322bbf4b0b89755dbde35cedc87ee9a228d07519a33
-DIST gentoo-syntax-20170225.tar.gz 18939 SHA256 f9305c689f8eeb492fc2a7f9e9c90b6af1663e2f16dcf0b95d22e6395a6bb8e2 SHA512 2c01577910eccd413b85c094dbd12bf8445e2f560be1fffc4a4c3130b32587f9c298d8442b5cf12bd7d2950ab8c9e5b95a72f2f41c42c6dc939ffa2c26fd71d5 WHIRLPOOL 7350ddf65ebc9c64fd83997d2e7d9ce329fa434a150ee69b35d54adfd2097319c6492508a0d1d0938453f7ae5068d422448564ad292cb43fc45afb97097efdc7
-EBUILD gentoo-syntax-20160530.ebuild 1847 SHA256 693a68dd3d9b40d57a7bb3a7ea1ab77467e99488cc92509d80b05f95839181e9 SHA512 bdaa924cf1b710e067539ed8ba1c39b43736f2f0bef813366c2894392e76a9724d09edc615412c62aafa364826fba9e3087caae6bf1c382e8c9ec6f4f13039aa WHIRLPOOL da803745c783b57b19f158d738afd9661b291260686b78a00984596638856dc722d6918aa3e34e74a82e053733f49d97305b6cdd94f505bcc5f134828b03897d
-EBUILD gentoo-syntax-20170225.ebuild 1863 SHA256 3c2d33f8036ff160532414bccfd7a5a2c9e2ef777471d213951673f8edce07e1 SHA512 e5178f85e526f5410eff419f776ba8e55f340cccb292330cc48cc37c846cbb1847fff673dbc4662663a8c10488b66780213ce34eb34c4d001934bf89ff3f6e6a WHIRLPOOL 1834a4a8375c2325de3fd9520e0f50f848f9a39b58f2f5cab25cbd07df9f38b8d31f2fcf6ece58d8c119478f3d14686f31fc4da63be1657a1fbed53664e02be5
-EBUILD gentoo-syntax-99999999.ebuild 1860 SHA256 4d39f8486248946734d161581a45f445b1778b8343010fbc6f3f43b30626c96f SHA512 b5db61773f98d50a4c4ab64ee72d50ac98d39de249fec9c3c063a763e58bdf47e0a4f31b71b3dee3ead53cc847b6a0301232e75e440f1115205e2900809e4365 WHIRLPOOL d36a78091ae3f3745ae87c584172e874023f5c33f050223c6b76a50ff7f453d926decf022d37e7a1d7d22e2ec74d6629aaab8b53063a4e142a2e3811f2a25b0a
-MISC ChangeLog 4043 SHA256 6d4da7467c253f0203e022ee7ae1aaebc0e6eb0ed71b6ea38dd3d382031cc62f SHA512 7594ac88fd9a7f2d6113df18b6551648f9e275db22c399c7b46b24a44748de25b5df1ac10c870f8f7c892cf94dc5193636f5d026a2128ab64a89aac65a590e13 WHIRLPOOL b640221fc4543211ee21b6db4f69733b1073b06dff7e4764bd5572e0fc5bf8dbbafb10adb27c818b8cc2405395a8c71e7702607ff659eaaff2c693d168ea376a
-MISC ChangeLog-2015 24716 SHA256 72e7e4698a1bf43330557a097d50bf03e2745a9b15456c566dd1729ddca8692c SHA512 31fdd45e6cab03f1cdb084b3f91b4559da61e446b4d9d2164fffd783fd397adf4a57916d5e0ff7001e1dcc3edc04134835939e8ce1472e06db25b3dbc31a1cb3 WHIRLPOOL 7d6f9ae480b3e656f2aebd2778bb73ecb4f7cedacc6e88c3901a22379bb57794162675cfe21428a2730805497be1252b8120778f7daeee39bea1554f2930a76e
-MISC metadata.xml 446 SHA256 cc5455726253294dbd8c54b5f6f136235f68215d7ca0d5ce9120f6acd566b7cc SHA512 2dc59075bad043ed183529af7484ab54e718774c275ce38e3b96af6b0461b8cf8d704dbcf37cb4aa7fb9dce2db3eb62075ff984ad7ac11fedf3f0bd2a582635c WHIRLPOOL e0b47d774255f3a322819bf507b2212bfac270b654dc4c93cbdc3df50f334a2348075265601b22f01103cda8345962318b03abb0a540680c6a632cb4f978692b
+DIST gentoo-syntax-1.tar.bz2 20223 BLAKE2B 846e07354660b4859cc4131a9fbf4f78d3a2ddeda60fc6a3687b649788a52725602dcd22befa9ab9fe88b173eab1470e569076d587326935efaf40d3aaba5b57 SHA512 1e4d947f0edbf6bd24142d683944f30d43b7e0ca86b90311f2e80516d299d9a634a9842cdc90d98a43e7a693f0dd29b3ff8048256bc3fe688591cc2b84808289
+DIST gentoo-syntax-20211208.tar.bz2 18844 BLAKE2B 52e7025d46f5101f2e1c44afcbf3cba0756a1ec9c626f7af312bb5bbae518645c06c94bfc48822a721e2e3c1ed5f61376e88a074a9688cf4b5b3c352a99c87c9 SHA512 f1cfe2af440f7ed3042cbaa16558cb6df8038f439a2c3e7067f81751a37098854a3afb1653c7c3656ef85ad1874d2db9271429b92a25f494da6ee5c68819e631
+DIST gentoo-syntax-20220220.tar.bz2 19433 BLAKE2B 8f7fbbb56e41f4d682c824deb980035441195785f9ce80fd45808b55cf900c8e0455b5c670f82b1fc639c052792b78de5f0be1142eab853b0cabbd44c6ed0776 SHA512 4b515ca7936a16279c48310d1fa0f58979e35b1d84a2971bdcf4a004784efa3de99619851ac9da5ee0ee77a1f65eb28550d01013cffebd45e39fb70c0136ba12
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-0.20211208.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-0.20211208.ebuild
new file mode 100644
index 0000000000..5676ffe9c1
--- /dev/null
+++ b/app-vim/gentoo-syntax/gentoo-syntax-0.20211208.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit vim-plugin
+
+MY_P=${P/0.}
+DESCRIPTION="vim plugin: Gentoo and Portage syntax highlighting"
+HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
+SRC_URI="https://gitweb.gentoo.org/proj/gentoo-syntax.git/snapshot/${MY_P}.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="vim"
+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="ignore-glep31"
+
+VIM_PLUGIN_HELPFILES="gentoo-syntax"
+VIM_PLUGIN_MESSAGES="filetype"
+
+src_prepare() {
+ default
+ if use ignore-glep31 ; then
+ for f in ftplugin/*.vim ; do
+ ebegin "Removing UTF-8 rules from ${f} ..."
+ sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
+ || die "waah! bad sed voodoo. need more goats."
+ eend $?
+ done
+ fi
+}
+
+pkg_postinst() {
+ vim-plugin_pkg_postinst
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ if use ignore-glep31 1>/dev/null ; then
+ ewarn "You have chosen to disable the rules which ensure GLEP 31"
+ ewarn "compliance. When editing ebuilds, please make sure you get"
+ ewarn "the character set correct."
+ fi
+ fi
+}
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-0.20220220.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-0.20220220.ebuild
new file mode 100644
index 0000000000..3cc000eb8f
--- /dev/null
+++ b/app-vim/gentoo-syntax/gentoo-syntax-0.20220220.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit vim-plugin
+
+MY_P=${P/0.}
+DESCRIPTION="vim plugin: Gentoo and Portage syntax highlighting"
+HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
+SRC_URI="https://gitweb.gentoo.org/proj/gentoo-syntax.git/snapshot/${MY_P}.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="vim"
+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="ignore-glep31"
+
+VIM_PLUGIN_HELPFILES="gentoo-syntax"
+VIM_PLUGIN_MESSAGES="filetype"
+
+src_prepare() {
+ default
+ if use ignore-glep31 ; then
+ for f in ftplugin/*.vim ; do
+ ebegin "Removing UTF-8 rules from ${f} ..."
+ sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
+ || die "waah! bad sed voodoo. need more goats."
+ eend $?
+ done
+ fi
+}
+
+pkg_postinst() {
+ vim-plugin_pkg_postinst
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ if use ignore-glep31 1>/dev/null ; then
+ ewarn "You have chosen to disable the rules which ensure GLEP 31"
+ ewarn "compliance. When editing ebuilds, please make sure you get"
+ ewarn "the character set correct."
+ fi
+ fi
+}
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-1.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-1.ebuild
new file mode 100644
index 0000000000..cc256f13f2
--- /dev/null
+++ b/app-vim/gentoo-syntax/gentoo-syntax-1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit vim-plugin
+
+DESCRIPTION="vim plugin: Gentoo and Portage syntax highlighting"
+HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
+SRC_URI="https://gitweb.gentoo.org/proj/gentoo-syntax.git/snapshot/${P}.tar.bz2"
+
+LICENSE="vim"
+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="ignore-glep31"
+
+VIM_PLUGIN_HELPFILES="gentoo-syntax"
+VIM_PLUGIN_MESSAGES="filetype"
+
+src_prepare() {
+ default
+ if use ignore-glep31 ; then
+ for f in ftplugin/*.vim ; do
+ ebegin "Removing UTF-8 rules from ${f} ..."
+ sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
+ || die "waah! bad sed voodoo. need more goats."
+ eend $?
+ done
+ fi
+}
+
+pkg_postinst() {
+ vim-plugin_pkg_postinst
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ if use ignore-glep31 1>/dev/null ; then
+ ewarn "You have chosen to disable the rules which ensure GLEP 31"
+ ewarn "compliance. When editing ebuilds, please make sure you get"
+ ewarn "the character set correct."
+ fi
+ fi
+}
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-20160530.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-20160530.ebuild
deleted file mode 100644
index 88e778acb9..0000000000
--- a/app-vim/gentoo-syntax/gentoo-syntax-20160530.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit vim-plugin
-
-if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://github.com/gentoo/gentoo-syntax.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/gentoo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="Gentoo and portage related syntax highlighting, filetype, and indent settings"
-HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
-LICENSE="vim"
-IUSE="ignore-glep31"
-
-VIM_PLUGIN_HELPFILES="gentoo-syntax"
-VIM_PLUGIN_MESSAGES="filetype"
-
-src_prepare() {
- default
- if use ignore-glep31 ; then
- for f in ftplugin/*.vim ; do
- ebegin "Removing UTF-8 rules from ${f} ..."
- sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
- || die "waah! bad sed voodoo. need more goats."
- eend $?
- done
- fi
-}
-
-pkg_postinst() {
- vim-plugin_pkg_postinst
-
- if [[ -z ${REPLACING_VERSIONS} ]] ; then
- if use ignore-glep31 1>/dev/null ; then
- ewarn "You have chosen to disable the rules which ensure GLEP 31"
- ewarn "compliance. When editing ebuilds, please make sure you get"
- ewarn "the character set correct."
- else
- elog "Note for developers and anyone else who edits ebuilds:"
- elog " This release of gentoo-syntax now contains filetype rules to set"
- elog " fileencoding for ebuilds and ChangeLogs to utf-8 as per GLEP 31."
- elog " If you find this feature breaks things, please submit a bug and"
- elog " assign it to vim@gentoo.org. You can use the 'ignore-glep31' USE"
- elog " flag to remove these rules."
- fi
- fi
-}
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-20170225.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-20170225.ebuild
deleted file mode 100644
index 310a359bcc..0000000000
--- a/app-vim/gentoo-syntax/gentoo-syntax-20170225.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit vim-plugin
-
-if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://github.com/gentoo/gentoo-syntax.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/gentoo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="Gentoo and portage related syntax highlighting, filetype, and indent settings"
-HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
-LICENSE="vim"
-IUSE="ignore-glep31"
-
-VIM_PLUGIN_HELPFILES="gentoo-syntax"
-VIM_PLUGIN_MESSAGES="filetype"
-
-src_prepare() {
- default
- if use ignore-glep31 ; then
- for f in ftplugin/*.vim ; do
- ebegin "Removing UTF-8 rules from ${f} ..."
- sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
- || die "waah! bad sed voodoo. need more goats."
- eend $?
- done
- fi
-}
-
-pkg_postinst() {
- vim-plugin_pkg_postinst
-
- if [[ -z ${REPLACING_VERSIONS} ]] ; then
- if use ignore-glep31 1>/dev/null ; then
- ewarn "You have chosen to disable the rules which ensure GLEP 31"
- ewarn "compliance. When editing ebuilds, please make sure you get"
- ewarn "the character set correct."
- else
- elog "Note for developers and anyone else who edits ebuilds:"
- elog " This release of gentoo-syntax now contains filetype rules to set"
- elog " fileencoding for ebuilds and ChangeLogs to utf-8 as per GLEP 31."
- elog " If you find this feature breaks things, please submit a bug and"
- elog " assign it to vim@gentoo.org. You can use the 'ignore-glep31' USE"
- elog " flag to remove these rules."
- fi
- fi
-}
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-9999.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-9999.ebuild
new file mode 100644
index 0000000000..a5cb932919
--- /dev/null
+++ b/app-vim/gentoo-syntax/gentoo-syntax-9999.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit git-r3 vim-plugin
+
+DESCRIPTION="vim plugin: Gentoo and Portage syntax highlighting"
+HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
+EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-syntax.git
+ https://github.com/gentoo/gentoo-syntax.git"
+
+LICENSE="vim"
+SLOT="0"
+KEYWORDS=""
+IUSE="ignore-glep31"
+
+VIM_PLUGIN_HELPFILES="gentoo-syntax"
+VIM_PLUGIN_MESSAGES="filetype"
+
+src_prepare() {
+ default
+ if use ignore-glep31 ; then
+ for f in ftplugin/*.vim ; do
+ ebegin "Removing UTF-8 rules from ${f} ..."
+ sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
+ || die "waah! bad sed voodoo. need more goats."
+ eend $?
+ done
+ fi
+}
+
+pkg_postinst() {
+ vim-plugin_pkg_postinst
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ if use ignore-glep31 1>/dev/null ; then
+ ewarn "You have chosen to disable the rules which ensure GLEP 31"
+ ewarn "compliance. When editing ebuilds, please make sure you get"
+ ewarn "the character set correct."
+ fi
+ fi
+}
diff --git a/app-vim/gentoo-syntax/gentoo-syntax-99999999.ebuild b/app-vim/gentoo-syntax/gentoo-syntax-99999999.ebuild
deleted file mode 100644
index ec3e1171df..0000000000
--- a/app-vim/gentoo-syntax/gentoo-syntax-99999999.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit vim-plugin
-
-if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://github.com/gentoo/gentoo-syntax.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/gentoo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-
-DESCRIPTION="Gentoo and portage related syntax highlighting, filetype, and indent settings"
-HOMEPAGE="https://github.com/gentoo/gentoo-syntax"
-LICENSE="vim"
-IUSE="ignore-glep31"
-
-VIM_PLUGIN_HELPFILES="gentoo-syntax"
-VIM_PLUGIN_MESSAGES="filetype"
-
-src_prepare() {
- default
- if use ignore-glep31 ; then
- for f in ftplugin/*.vim ; do
- ebegin "Removing UTF-8 rules from ${f} ..."
- sed -i -e 's~\(setlocal fileencoding=utf-8\)~" \1~' ${f} \
- || die "waah! bad sed voodoo. need more goats."
- eend $?
- done
- fi
-}
-
-pkg_postinst() {
- vim-plugin_pkg_postinst
-
- if [[ -z ${REPLACING_VERSIONS} ]] ; then
- if use ignore-glep31 1>/dev/null ; then
- ewarn "You have chosen to disable the rules which ensure GLEP 31"
- ewarn "compliance. When editing ebuilds, please make sure you get"
- ewarn "the character set correct."
- else
- elog "Note for developers and anyone else who edits ebuilds:"
- elog " This release of gentoo-syntax now contains filetype rules to set"
- elog " fileencoding for ebuilds and ChangeLogs to utf-8 as per GLEP 31."
- elog " If you find this feature breaks things, please submit a bug and"
- elog " assign it to vim@gentoo.org. You can use the 'ignore-glep31' USE"
- elog " flag to remove these rules."
- fi
- fi
-}
diff --git a/app-vim/gentoo-syntax/metadata.xml b/app-vim/gentoo-syntax/metadata.xml
index 374f1cd98d..12b3719f87 100644
--- a/app-vim/gentoo-syntax/metadata.xml
+++ b/app-vim/gentoo-syntax/metadata.xml
@@ -1,10 +1,15 @@
-
+
vim@gentoo.org
Gentoo Vim Project
+
+ mgorny@gentoo.org
+ Michał Górny
+
+
diff --git a/changelog/updates/2022-03-01-update-pkgs-2017.md b/changelog/updates/2022-03-01-update-pkgs-2017.md
new file mode 100644
index 0000000000..d7b66bd0e7
--- /dev/null
+++ b/changelog/updates/2022-03-01-update-pkgs-2017.md
@@ -0,0 +1,7 @@
+- whois ([5.5.11](https://github.com/rfc1036/whois/commit/5f5ba8312c04a759dad05723c035549273d07461))
+- rpcbind ([1.2.6](https://git.linux-nfs.org/?p=steved/rpcbind.git;a=shortlog;h=refs/tags/rpcbind-1_2_6))
+- socat ([1.7.4.3](https://repo.or.cz/socat.git/blob/refs/tags/tag-1.7.4.3:/CHANGES))
+- dosfstools ([4.2](https://github.com/dosfstools/dosfstools/releases/tag/v4.2))
+- thin-provisioning-tools ([0.9.0](https://github.com/jthornber/thin-provisioning-tools/blob/d6d93c3157631b242a13a81d30f75453e576c55a/CHANGES#L1-L9))
+- lsscsi ([0.32](https://sg.danny.cz/scsi/lsscsi.ChangeLog))
+- man-db ([2.9.4](https://gitlab.com/cjwatson/man-db/-/tags/2.9.4))
diff --git a/dev-libs/libevent/Manifest b/dev-libs/libevent/Manifest
index fd6262d20e..f1f1c08b55 100644
--- a/dev-libs/libevent/Manifest
+++ b/dev-libs/libevent/Manifest
@@ -1,9 +1,2 @@
-DIST libevent-2.0.22-stable.tar.gz 854987 SHA256 71c2c49f0adadacfdbe6332a372c38cf9c8b7895bb73dabeaa53cdcc1d4e1fa3 SHA512 990637f12e890bfa7f86c194c8b112701436e92b60afb829194879efb85d558b986261e6508fe29bde73981feada874438e2d442cec8ea5730c889954f9bc907 WHIRLPOOL fe465e94a35dc489a86fad93fd4a82d5c314e3a66ebf1bcf8ba29014fe9bd2ebce4546b4a6a9fedee40d17010d73eb89b99596cec1dde3b7f9a4240cf6b6760d
-DIST libevent-2.1.8.tar.gz 1026485 SHA256 965cc5a8bb46ce4199a47e9b2c9e1cae3b137e8356ffdad6d94d3b9069b71dc2 SHA512 a2fd3dd111e73634e4aeb1b29d06e420b15c024d7b47778883b5f8a4ff320b5057a8164c6d50b53bd196c79d572ce2639fe6265e03a93304b09c22b41e4c2a17 WHIRLPOOL ac90b6613619e0acf039fa331769449b29a3b7698a6d51b811c9288a550a3178e07b5a18a0982141ee90b7e1c34afdc80658355135963ef487cd243c472ee79a
-EBUILD libevent-2.0.22-r2.ebuild 1769 SHA256 03dabfc0b70434c14a4679c7fb3cdad9fffaba55a2f758f7f51c8f3a8eddbc01 SHA512 77913b3adc289cb8f3a74bff68230a70955af312caae4950f1491dacaf4ce9a0783519fba95ee5926d8d3260bf59e703c22dd58150879dc5009621ae886aecaf WHIRLPOOL d364780e1abb88d300424cd4a20509a3f4dce004b08ac5a3bc30f263be9019649e901ef5ecad4896b12af2a3f3be59eb8cab2ec58550906fc0cf4a01ecb7bde6
-EBUILD libevent-2.0.22.ebuild 1646 SHA256 2ace2e07d6d54bdc3bf4e98484a05935fbc4e312d890c680b25b98c7497d0982 SHA512 e3cfa5a4a4273d644b241e0bbb7fa9ed77146d798020d8a54259d35f3424a7fd58386f953a00bd11106095ddae519e58be6329f7617a800cb8eae7b67a6c8008 WHIRLPOOL e967beaeda01974450c71b57a4cda3a23aa9f2efd7c4dd4bfea19813f7e765301f63f64c91c68e670bfd545c140969a4137335e53170d1cc5322b80b13f74c8e
-EBUILD libevent-2.1.8.ebuild 1719 SHA256 83a29e9746c3d286b6082b4bd905a001652abfb65a0e7783db41d8f48c128730 SHA512 1ab87fbd2e18d3bd265c999850b2a8e71c7767cbc8f868f24681f39913c1b506e8eccb4ce091ca138de7c72cb2663bccab0c255b672ae440c5d2c2b83d7f9bfa WHIRLPOOL 3410bde881828235348d94b30e26b586526dc80ea10bb56393d10dbb1fc434b56f319d9969d29cffc4079e73118fdd492109ffe111debf6a358cf2c32786eabd
-EBUILD libevent-9999.ebuild 1205 SHA256 15c6e31e82adaebb6896c2d571e44045dabd185c21b46998e520bf087dd1b1d8 SHA512 ecb96696ecccaf8fffbdf147d3d75c8521cf746498bae305280adc4849f9e0dc740b5e364057a1299a196410fe0204d98edfa6058bd9c0a1c821b8f590264931 WHIRLPOOL 5cc2dcb682a7314a18b2e92f7168a14b928a3b046cd41ffddc1a138c057062caf5bd320ae1ed76bec26ca011433dfb0d662ad6dd6ee61929d0cf00892e077451
-MISC ChangeLog 5494 SHA256 eac9ebd3dc3b637174116ebcafef9a3a917e0dd6a80a2e27742996705d13ec24 SHA512 dcc777e00d6d95d6fcb88bbcf7e450a4bd092a3768e2aa8f814c3737f91d6d8a8f0f328a3a6fd25b99505fa657eb7eb30ce05170f4e7ad12e50fb34421fe8f54 WHIRLPOOL 313ab1dbad65948712a90c696d34f1db8e68cde80ca21bc0d2ad4ba54efd890f913f7cd31b327b7cc6c4c4df0482e020d80490c6037626b768f8e687a6b8f8d7
-MISC ChangeLog-2015 34971 SHA256 1d4925a7ba78d257b422a8eed3a27603cb6d970624bb6991858895857a2be74b SHA512 c89ef36c02a445e5f78f18d2ef5cdcbad1dbae4980a77a87b75942832a1499f5d1fc4b506d9b7ac01aad831ed15b28504acb00b4c5df3ab7e60aec984535d79a WHIRLPOOL 6b4a1936db5e1c44fd68d2eb9d721d2d8680dcf6d88163510f0004481aac538ac7325bb850a9f940c8579dbe6416a11a85012783653c9612f79654fe2d89f1e2
-MISC metadata.xml 547 SHA256 7476b428c7c784eca3a454043553542d9cf2b4e8aaa829faca2684802393a1a4 SHA512 556eebbb7d05a8234e9705126549520a8b8d553cf6331f353bf7a5bad343b0ad56292dbdda5bccec827772faf07bf17f0163e4b479530eea0832e31d9f17f73a WHIRLPOOL 3e57e58f279ee148b674d2c29b56ade51810991389bc2f3e0215d79d27b05d5cc33292807bb0a7cef899ee27cefef197b77c553475a9286a65c42d8654569f82
+DIST libevent-2.1.11.tar.gz 1082234 BLAKE2B c6721589834bff027a8149ee0076e1877fba000d1712a405e20030192d9c81b892d0930bc1a4774650bef4cb08c60ac81b5928dc17346492ae7e4ded2125579a SHA512 9d0517b117f128f4f196b19a810524814bab75fa967d533063aaa619d3cf2dca97b443edd5805b764da2993d8e37caa536dce39f68ffcc2a88d32a89204c2de3
+DIST libevent-2.1.12.tar.gz 1100847 BLAKE2B bc1ace15f639ecef2e6b3f95976b8830c1d86f1d06606dd949e2978611fdf9859ed4eb9292d13e6e90e3835063edb94aae64a15c518d5dabe680f37d5a7f5290 SHA512 88d8944cd75cbe78bc4e56a6741ca67c017a3686d5349100f1c74f8a68ac0b6410ce64dff160be4a4ba0696ee29540dfed59aaf3c9a02f0c164b00307fcfe84f
diff --git a/dev-libs/libevent/libevent-2.0.22-r2.ebuild b/dev-libs/libevent/libevent-2.0.22-r2.ebuild
deleted file mode 100644
index 3cc55c2712..0000000000
--- a/dev-libs/libevent/libevent-2.0.22-r2.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils libtool multilib-minimal
-
-MY_P="${P}-stable"
-
-DESCRIPTION="Library to execute a function when a specific event occurs on a file descriptor"
-HOMEPAGE="http://libevent.org/"
-SRC_URI="mirror://sourceforge/levent/files/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-# libevent-2.0.so.5
-SLOT="0/2.0-5"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug libressl +ssl static-libs test +threads"
-
-DEPEND="
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] )
- )
-"
-RDEPEND="
- ${DEPEND}
- !<=dev-libs/9libs-1.0
-"
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/event2/event-config.h
-)
-
-S=${WORKDIR}/${MY_P}
-
-DOCS=( README ChangeLog )
-
-src_prepare() {
- elibtoolize
-
- # don't waste time building tests/samples
- # https://github.com/libevent/libevent/pull/143
- # https://github.com/libevent/libevent/pull/144
- sed -i \
- -e 's|^\(SUBDIRS =.*\)sample test\(.*\)$|\1\2|' \
- Makefile.in || die "sed Makefile.in failed"
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" \
- econf \
- $(use_enable debug debug-mode) \
- $(use_enable debug malloc-replacement) \
- $(use_enable ssl openssl) \
- $(use_enable static-libs static) \
- $(use_enable threads thread-support)
-}
-
-src_test() {
- # The test suite doesn't quite work (see bug #406801 for the latest
- # installment in a riveting series of reports).
- :
- # emake -C test check | tee "${T}"/tests
-}
-
-multilib_src_install_all() {
- einstalldocs
- prune_libtool_files
-}
diff --git a/dev-libs/libevent/libevent-2.0.22.ebuild b/dev-libs/libevent/libevent-2.0.22.ebuild
deleted file mode 100644
index 58dbb9794b..0000000000
--- a/dev-libs/libevent/libevent-2.0.22.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils libtool multilib-minimal
-
-MY_P="${P}-stable"
-
-DESCRIPTION="Library to execute a function when a specific event occurs on a file descriptor"
-HOMEPAGE="http://libevent.org/"
-SRC_URI="mirror://sourceforge/levent/files/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug +ssl static-libs test +threads"
-
-DEPEND="ssl? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )"
-RDEPEND="
- ${DEPEND}
- !<=dev-libs/9libs-1.0
-"
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/event2/event-config.h
-)
-
-S=${WORKDIR}/${MY_P}
-
-DOCS=( README ChangeLog )
-
-src_prepare() {
- elibtoolize
-
- # don't waste time building tests/samples
- # https://github.com/libevent/libevent/pull/143
- # https://github.com/libevent/libevent/pull/144
- sed -i \
- -e 's|^\(SUBDIRS =.*\)sample test\(.*\)$|\1\2|' \
- Makefile.in || die "sed Makefile.in failed"
-}
-
-multilib_src_configure() {
- ECONF_SOURCE="${S}" \
- econf \
- $(use_enable debug debug-mode) \
- $(use_enable debug malloc-replacement) \
- $(use_enable ssl openssl) \
- $(use_enable static-libs static) \
- $(use_enable threads thread-support)
-}
-
-src_test() {
- # The test suite doesn't quite work (see bug #406801 for the latest
- # installment in a riveting series of reports).
- :
- # emake -C test check | tee "${T}"/tests
-}
-
-multilib_src_install_all() {
- einstalldocs
- prune_libtool_files
-}
diff --git a/dev-libs/libevent/libevent-2.1.8.ebuild b/dev-libs/libevent/libevent-2.1.11.ebuild
similarity index 53%
rename from dev-libs/libevent/libevent-2.1.8.ebuild
rename to dev-libs/libevent/libevent-2.1.11.ebuild
index 4d73898966..17b310f4c5 100644
--- a/dev-libs/libevent/libevent-2.1.8.ebuild
+++ b/dev-libs/libevent/libevent-2.1.11.ebuild
@@ -1,40 +1,37 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-inherit autotools eutils multilib-minimal
+EAPI=7
+inherit multilib-minimal
DESCRIPTION="Library to execute a function when a specific event occurs on a file descriptor"
-HOMEPAGE="http://libevent.org/ https://github.com/libevent/libevent/"
-SRC_URI="https://github.com/${PN}/${PN}/releases/download/release-${PV}-stable/${P}-stable.tar.gz -> ${P}.tar.gz"
-
+HOMEPAGE="
+ https://libevent.org/
+ https://github.com/libevent/libevent/
+"
+SRC_URI="
+ https://github.com/${PN}/${PN}/releases/download/release-${PV/_/-}-stable/${P/_/-}-stable.tar.gz -> ${P}.tar.gz
+"
LICENSE="BSD"
-# libevent-2.1.so.6
-SLOT="0/2.1-6"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug libressl +ssl static-libs test +threads"
+
+SLOT="0/2.1-7"
+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 ~x64-solaris ~x86-solaris"
+IUSE="debug +ssl static-libs test +threads"
+RESTRICT="!test? ( test )"
DEPEND="
ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] )
+ >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}]
)
"
RDEPEND="
${DEPEND}
!<=dev-libs/9libs-1.0
"
-
MULTILIB_WRAPPED_HEADERS=(
/usr/include/event2/event-config.h
)
-
-S=${WORKDIR}/${P}-stable
-
-src_prepare() {
- default
- eautoreconf
-}
+S=${WORKDIR}/${P/_/-}-stable
multilib_src_configure() {
# fix out-of-source builds
@@ -62,5 +59,5 @@ DOCS=( ChangeLog{,-1.4,-2.0} )
multilib_src_install_all() {
einstalldocs
- prune_libtool_files
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/dev-libs/libevent/libevent-2.1.12.ebuild b/dev-libs/libevent/libevent-2.1.12.ebuild
new file mode 100644
index 0000000000..b25c5ebe45
--- /dev/null
+++ b/dev-libs/libevent/libevent-2.1.12.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools multilib-minimal
+
+DESCRIPTION="Library to execute a function when a specific event occurs on a file descriptor"
+HOMEPAGE="
+ https://libevent.org/
+ https://github.com/libevent/libevent/
+"
+SRC_URI="
+ https://github.com/${PN}/${PN}/releases/download/release-${PV/_/-}-stable/${P/_/-}-stable.tar.gz -> ${P}.tar.gz
+"
+LICENSE="BSD"
+
+SLOT="0/2.1-7"
+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 ~x64-solaris ~x86-solaris"
+IUSE="
+ +clock-gettime debug malloc-replacement +ssl static-libs test
+ +threads verbose-debug
+"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ ssl? (
+ >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}]
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ !<=dev-libs/9libs-1.0
+"
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/event2/event-config.h
+)
+S=${WORKDIR}/${P/_/-}-stable
+
+src_prepare() {
+ default
+ # bug #767472
+ elibtoolize
+}
+
+multilib_src_configure() {
+ # fix out-of-source builds
+ mkdir -p test || die
+
+ ECONF_SOURCE="${S}" \
+ econf \
+ $(use_enable clock-gettime) \
+ $(use_enable debug debug-mode) \
+ $(use_enable malloc-replacement malloc-replacement) \
+ $(use_enable ssl openssl) \
+ $(use_enable static-libs static) \
+ $(use_enable test libevent-regress) \
+ $(use_enable threads thread-support) \
+ $(use_enable verbose-debug) \
+ --disable-samples
+}
+
+src_test() {
+ # The test suite doesn't quite work (see bug #406801 for the latest
+ # installment in a riveting series of reports).
+ :
+ # emake -C test check | tee "${T}"/tests
+}
+
+DOCS=( ChangeLog{,-1.4,-2.0} )
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/libevent/libevent-2.1.9999.ebuild b/dev-libs/libevent/libevent-2.1.9999.ebuild
new file mode 100644
index 0000000000..842a86badc
--- /dev/null
+++ b/dev-libs/libevent/libevent-2.1.9999.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools git-r3 multilib-minimal
+
+DESCRIPTION="Library to execute a function when a specific event occurs on a file descriptor"
+EGIT_BRANCH="patches-$(ver_cut 1-2)"
+EGIT_REPO_URI="https://github.com/libevent/libevent"
+HOMEPAGE="
+ https://libevent.org/
+ https://github.com/libevent/libevent
+"
+
+LICENSE="BSD"
+# libevent-2.1.so.6
+SLOT="0/2.1-7"
+KEYWORDS=""
+IUSE="
+ +clock-gettime debug malloc-replacement +ssl static-libs test
+ +threads verbose-debug
+"
+RESTRICT="test"
+
+DEPEND="
+ ssl? (
+ >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}]
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ !<=dev-libs/9libs-1.0
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/event2/event-config.h
+)
+DOCS=(
+ ChangeLog{,-1.4,-2.0}
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # fix out-of-source builds
+ mkdir -p test || die
+
+ ECONF_SOURCE="${S}" \
+ econf \
+ $(use_enable clock-gettime) \
+ $(use_enable debug debug-mode) \
+ $(use_enable malloc-replacement malloc-replacement) \
+ $(use_enable ssl openssl) \
+ $(use_enable static-libs static) \
+ $(use_enable test libevent-regress) \
+ $(use_enable threads thread-support) \
+ $(use_enable verbose-debug) \
+ --disable-samples
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/libevent/libevent-9999.ebuild b/dev-libs/libevent/libevent-9999.ebuild
index 708484a46c..c9777c12da 100644
--- a/dev-libs/libevent/libevent-9999.ebuild
+++ b/dev-libs/libevent/libevent-9999.ebuild
@@ -1,23 +1,29 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-inherit autotools eutils git-r3 multilib-minimal
+EAPI=7
+inherit autotools git-r3 multilib-minimal
DESCRIPTION="Library to execute a function when a specific event occurs on a file descriptor"
-HOMEPAGE="http://libevent.org/"
EGIT_REPO_URI="https://github.com/libevent/libevent"
+HOMEPAGE="
+ https://libevent.org/
+ https://github.com/libevent/libevent
+"
LICENSE="BSD"
SLOT="0"
KEYWORDS=""
-IUSE="debug libressl +ssl static-libs test +threads"
+IUSE="
+ +clock-gettime debug malloc-replacement mbedtls +ssl static-libs
+ test +threads verbose-debug
+"
RESTRICT="test"
DEPEND="
+ mbedtls? ( net-libs/mbedtls )
ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
- libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] )
+ >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}]
)
"
RDEPEND="
@@ -43,16 +49,19 @@ multilib_src_configure() {
ECONF_SOURCE="${S}" \
econf \
- --disable-samples \
+ $(use_enable clock-gettime) \
$(use_enable debug debug-mode) \
- $(use_enable debug malloc-replacement) \
+ $(use_enable malloc-replacement malloc-replacement) \
+ $(use_enable mbedtls) \
$(use_enable ssl openssl) \
$(use_enable static-libs static) \
$(use_enable test libevent-regress) \
- $(use_enable threads thread-support)
+ $(use_enable threads thread-support) \
+ $(use_enable verbose-debug) \
+ --disable-samples
}
multilib_src_install_all() {
einstalldocs
- prune_libtool_files
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/dev-libs/libevent/metadata.xml b/dev-libs/libevent/metadata.xml
index 6036c10bd5..382b01135b 100644
--- a/dev-libs/libevent/metadata.xml
+++ b/dev-libs/libevent/metadata.xml
@@ -1,16 +1,21 @@
-
-
+
+
- jer@gentoo.org
- Jeroen Roovers
+ mgorny@gentoo.org
+ Michał Górny
cpe:/a:niels_provos:libevent
- levent
libevent/libevent
+ levent
diff --git a/dev-libs/libksba/Manifest b/dev-libs/libksba/Manifest
index ad4670f872..cc743c6038 100644
--- a/dev-libs/libksba/Manifest
+++ b/dev-libs/libksba/Manifest
@@ -1 +1,3 @@
-DIST libksba-1.3.5.tar.bz2 620649 BLAKE2B 6ed250684e40b4efcc07a86584adfbc659f886919d0306e82e2275c9acb8a1df698c7cc9a917fa66dd906fe473d14fa29507c03e681aed86286d65d9551cb5f6 SHA512 60179bfd109b7b4fd8d2b30a3216540f03f5a13620d9a5b63f1f95788028708a420911619f172ba57e945a6a2fcd2ef7eaafc5585a0eb2b9652cfadf47bf39a2
+DIST libksba-1.5.0.tar.bz2 656518 BLAKE2B 077655031f82ff13c596ad0be0d0f15408a5b793f00e3af3516f4f207285f7d76096216c7bf11d2c46c28eb332cc74df39bef84afb0f47184c8ebdd8cb92a86d SHA512 84383e8b084bf47ac646a9aacb174e510ffcab4b966b649e4351990eaf7ce78cc9d199e6c4f3a1be697888c857ee86ecef949c06156790c7d8d0bd0fb0142721
+DIST libksba-1.5.1.tar.bz2 659280 BLAKE2B f247a2c9545e3c3ae3bbcf50344ca530ef320d12b9a1e301bca086b0e1a69e6b7a88b912b14f862d82e7ad45bf588754db601d987ee42579d8042e68b5108d33 SHA512 156fe6a36daa7b11ce580366ab36a5fceda253413f0057ace791e4f028fd3158a70a3f6ba1d0c824fafee4420d1076864dbd0911606fb65e14c8b2332b6cc92b
+DIST libksba-1.6.0.tar.bz2 662120 BLAKE2B 59bee23f764ab3e0f79fae6074ffe568845b6089ff29b8c5112973490ff5e1436834d5d0b50954ba9fbd6be655f47043a6345181c5c7e552322ceb331d030780 SHA512 a7c76d41dfd8ec6383ac2de3c53848cd9f066b538f6f3cd43175e3c8095df51b96d0a24a573481c0c4856b09b7c224e2b562d88f5c0801e7acfb582ea2739c2b
diff --git a/dev-libs/libksba/libksba-1.3.5-r1.ebuild b/dev-libs/libksba/libksba-1.3.5-r1.ebuild
deleted file mode 100644
index 548687ea36..0000000000
--- a/dev-libs/libksba/libksba-1.3.5-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit ltprune
-
-DESCRIPTION="X.509 and CMS (PKCS#7) library"
-HOMEPAGE="http://www.gnupg.org/related_software/libksba"
-SRC_URI="mirror://gnupg/libksba/${P}.tar.bz2"
-
-LICENSE="LGPL-3+ GPL-2+ GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="static-libs"
-
-RDEPEND=">=dev-libs/libgpg-error-1.8"
-DEPEND="${RDEPEND}"
-
-src_configure() {
- econf $(use_enable static-libs static)
-}
-
-src_install() {
- default
- # ppl need to use lib*-config for --cflags and --libs
- prune_libtool_files
-}
diff --git a/dev-libs/libksba/libksba-1.5.0.ebuild b/dev-libs/libksba/libksba-1.5.0.ebuild
new file mode 100644
index 0000000000..32f6d92671
--- /dev/null
+++ b/dev-libs/libksba/libksba-1.5.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="X.509 and CMS (PKCS#7) library"
+HOMEPAGE="http://www.gnupg.org/related_software/libksba"
+SRC_URI="mirror://gnupg/libksba/${P}.tar.bz2"
+
+LICENSE="LGPL-3+ GPL-2+ GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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"
+
+RDEPEND=">=dev-libs/libgpg-error-1.8"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/bison"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable static-libs static)
+ GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
+ LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config"
+ $("${S}/configure" --help | grep -o -- '--without-.*-prefix')
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # ppl need to use lib*-config for --cflags and --libs
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-libs/libksba/libksba-1.5.1.ebuild b/dev-libs/libksba/libksba-1.5.1.ebuild
new file mode 100644
index 0000000000..32f6d92671
--- /dev/null
+++ b/dev-libs/libksba/libksba-1.5.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="X.509 and CMS (PKCS#7) library"
+HOMEPAGE="http://www.gnupg.org/related_software/libksba"
+SRC_URI="mirror://gnupg/libksba/${P}.tar.bz2"
+
+LICENSE="LGPL-3+ GPL-2+ GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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"
+
+RDEPEND=">=dev-libs/libgpg-error-1.8"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/bison"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable static-libs static)
+ GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
+ LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config"
+ $("${S}/configure" --help | grep -o -- '--without-.*-prefix')
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # ppl need to use lib*-config for --cflags and --libs
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-libs/libksba/libksba-1.6.0.ebuild b/dev-libs/libksba/libksba-1.6.0.ebuild
new file mode 100644
index 0000000000..35ee0c1d47
--- /dev/null
+++ b/dev-libs/libksba/libksba-1.6.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="X.509 and CMS (PKCS#7) library"
+HOMEPAGE="http://www.gnupg.org/related_software/libksba"
+SRC_URI="mirror://gnupg/libksba/${P}.tar.bz2"
+
+LICENSE="LGPL-3+ GPL-2+ GPL-3"
+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="static-libs"
+
+RDEPEND=">=dev-libs/libgpg-error-1.8"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/bison"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable static-libs static)
+ GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
+ LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config"
+ $("${S}/configure" --help | grep -o -- '--without-.*-prefix')
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ # ppl need to use lib*-config for --cflags and --libs
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-libs/libksba/metadata.xml b/dev-libs/libksba/metadata.xml
index f1c3d59fb2..965999a77a 100644
--- a/dev-libs/libksba/metadata.xml
+++ b/dev-libs/libksba/metadata.xml
@@ -1,8 +1,8 @@
-
+
-
- crypto@gentoo.org
- Crypto
-
-
+
+ Lars Wendler
+ polynomial-c@gentoo.org
+
+
diff --git a/dev-libs/libpipeline/Manifest b/dev-libs/libpipeline/Manifest
index ea013c03c8..be201eb964 100644
--- a/dev-libs/libpipeline/Manifest
+++ b/dev-libs/libpipeline/Manifest
@@ -1,13 +1,2 @@
-AUX libpipeline-1.4.1-gnulib-cygwin-sys_select.patch 850 SHA256 122a069e24ed07bab7a65ea31f10e14f755a1a464acb9568dc610f171b94b0a8 SHA512 1aaac731af050193a67a45aae7c100e8a6c4e5328b60b2e6f89ef774f66b6d997a1558b104157f65183191c9940c9d4a904f8b32666021ae20dff6b3e5726990 WHIRLPOOL befcfb16d080bcce5247705a32b82cca6af4ad5b1a6bd7e143b1eb6d901e4b3c625088f9b741abf2bd4785f37eb1a710f4897ce8f12053abdb84939d84c1658a
-AUX libpipeline-1.4.1-gnulib-darwin-program_name.patch 683 SHA256 05d93f6ef8e1a94de0739292b9c8d36e14bd29fde83106fbf683fbd7154ac715 SHA512 630d39e2c820935374807f6524ff4ffb0c4b46e7df3b765ca4c794d9fb3cab5882d904bd438ea9351e46e1d66f66c8d3bfb0e376fe24a3b20c8f18f36c47efb8 WHIRLPOOL f67270f796074d8af1b0dd1ce3b1918c7df532c8b72a4ea87986c34d776978f3b53501e874a5e27dc5ebc18ae0c260fe2075a4aec3c6cd74c76ee6d2c6b319e2
-DIST libpipeline-1.2.5.tar.gz 779072 SHA256 2de10806d9b7dda54f4098d2c12e36e960b954d1325c0885ac01c3c7ee908d5b SHA512 fd6ec96bd78f921a43e6b8fbb0e8ffd4a2bba35fe87a95dbd98e8b83d04fe2fbe34c4b4a008ca027b683d071f0730f8057d3b9aa2d946f2f7808486f16d97b01 WHIRLPOOL 4a600569d651d41abc4c15984edd11198d85bc67d61431aa87dd1d0e9311de2b4f86cc2f1186b359ed2f34b2e7e95261ed2033f24100697c088ead9508d4120a
-DIST libpipeline-1.3.1.tar.gz 787711 SHA256 5cad1b446f135ec3800d32c8c951a1114f4c438609a4c52b262c30301bc8e692 SHA512 0f903f9a268eea7c6d1ddef1210a729d32b423abdbf1e150aaf6705a272dfbcde482302cb06366ce317674bc681c7e3305cd35a83eb3f0451d1c5595f5c6ac5a WHIRLPOOL eb3fc4a337e09552f3e58a06bcbd9ed30d6b95a60b6cadc293e7aceb77a99e488c8c77a757dd93968a48b4fc72d024227fbe176d8ac7a386172bc50b51e54ef2
-DIST libpipeline-1.4.0.tar.gz 805155 SHA256 79c759e7fbf17b560a72edce3ff9bb308d7720306c2650e4fae541daabb89bb6 SHA512 0dce585f9d7aea91889804fd7a65a549b41730add0f6156bf8d0409762fed9c29e8843426e8136c9e0a0348734acaabb48ceede1e3e4d9071d4d787d0b8d46f3 WHIRLPOOL 2ba46823c6eacbe7b4a15d135448b2c59c65c431f438d22f1709bea85d819f4358fd685fab00d0e24cf281e92476b8c48aee61e7b406dcd8e142b2e4fa50bf86
-DIST libpipeline-1.4.1.tar.gz 805172 SHA256 da46d7b20163aadb9db2faae483f734e9096a7550c84b94029abeab62dd1b9ee SHA512 835d65aa3f9436398b5421544ca7857fe9caed52cd2e70320ea04d6315825e648df930e1c225d4aaf0f2edda2a438f6c00f15c556fb9fd30311560fb8d966797 WHIRLPOOL 1b6688f0388489f015a95397ec6ad34338654bd40c05bc15f30cdbf2e4ad5b1fd53d20f56a6763d398562f39986abf6675236395215bc5819573162eedf17de0
-EBUILD libpipeline-1.2.5.ebuild 506 SHA256 da18cc4b0cc3d8a8e808c22ee4c951e516222c878ee73d1fe5ef96fe33b2e60a SHA512 8ea347a009b2cb2cb8dfb8b680f267cdf028377cd5dac15460da865c8610820dcab3a665df38b592ddc6697f35183e9fefb9de72183e86b79d89fd2aa4670373 WHIRLPOOL 22a553312c59608dd7f6db2d1b194e3699aa0fb735c75eed8ac93fc2b0f2c248212c78a318b8545a66d895426606efbeb1a0a7dd9fd0e4996566a64cf6872dac
-EBUILD libpipeline-1.3.1.ebuild 519 SHA256 e5123b196b6547340a3d95e2bce0142bcef2efc18eb88c2bc72ffe0b072b1432 SHA512 10e8bc4953caaf1fdb0995dc3a339288b9a91dcf180b8a33db79a7a923a13923c071679116f85223a3ee7a1c0d877ab574e2c055dba86d4a4e8e75da26b212f5 WHIRLPOOL 48e099651025c0607f5a234f0a49e1e1226abf0c196c0ce0dc36410e3a2d3289e2624869fe0f58f8dfa32973df751a3fe2f9f8992af7400e9c7a19843bd1d7bd
-EBUILD libpipeline-1.4.0.ebuild 506 SHA256 235bd9255cecabe6f67cc108ae5b6a2916f6d132fdea2cc1ca5c503105e2ad44 SHA512 9215eda7625f54b82d9efc9c4aeb1246f333d4bc9297939fc6d325c933d919c8c0bc5b570669e0c3b16e74f20883dcb37c96925f4350fe5a49fb435c8e500107 WHIRLPOOL 983c8c8d9065bef771169a3b0671fafc5a821ff53d91bdb6ebc83fa072ec9431f1e1150397c1a4dcbe2c6bc41f31dd80708e78cf427404c6c4447d6de1417826
-EBUILD libpipeline-1.4.1.ebuild 669 SHA256 e9c4168ec8a80efe78be07d7db6d8b1f503964376a21b30fea828473815c6731 SHA512 ac7f8dc76a8ce2e3dee906022ba3cf57d9a22357b769ebce11d8ca2cfdbc98c665b16722866e6284636f5cb1b7ed4e8bf9e16d8a0d1ca39b8a44083b3444f909 WHIRLPOOL 89f08c30cb17e858f2be1d05df58586bd37533b3c0e35106c386b47792fc694111d589ec8baf74145ed1fc1da44a809b80fa1e6f4ac7815eea5f40ec72fd3029
-MISC ChangeLog 3739 SHA256 d0d8f953943ede61da2d781cce85f252dc469e003556bd0a6a11ad9df84740b2 SHA512 9ce074852a2a8962d830ac82f726dc127b460bd19295ba4a1d614c1b1532aed6128a9d6d44e2ab435ec5968a51239f47a358307abd21ec3cd2735bbb41ba433c WHIRLPOOL e973678d829fe13040f3eb3473380ed72af1c240fbf062e5a900375f51bc59392035ed2c4f6458651eb1f5cdac0451cd8ead47151549439201cbfb609f73998c
-MISC ChangeLog-2015 8708 SHA256 75350c89d81c9f391c877bcccd317a7f7823fc2b838c3e966f0ffa8b1e4abcb1 SHA512 64ffa5162c6818f069207d3a85d1ff6ab27aa3289704226d821a5639f8ef5b7108a661fee75392c055160cf840e3c7796f11bd05fe807632af504979e80516ae WHIRLPOOL e5f07a1f1be5a3216caaeab99041466e2bbda8629817a393bcf9a20137cc90fb902ec9bd1d1f21b47e767ae19320c66b497198fa0a0fb973303042d2eae9a48d
-MISC metadata.xml 253 SHA256 d82c33ef453113a5c1ebe250dcba373c22934a69b0a86c6ab15a5ca589c25b91 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555 WHIRLPOOL e5aee23acff864609953a1e4de768f0e4aef704b44c53c021f28573e1ca5c99f1a46d92935ecec2449f7b4419a36d8373127d0ecfa8d7bae72d835e1839eb3f8
+DIST libpipeline-1.5.4.tar.gz 1040952 BLAKE2B 1e8fa839df90d61add79c704856d606599800f1887e056430f0fb0bd61e511c2a0bb98f2f3766f793aa648b404dfc054277d740ee5dd8a27bec740e7a23e0d13 SHA512 98d630553843176c9f6723e4df1fd844df2e71c402ef869027fb5ebe327eb9d55605a11cc159725f191ff3ef2a3a0b5eeff2d3cb1146b0fef5970923b01e433d
+DIST libpipeline-1.5.5.tar.gz 956089 BLAKE2B bfa8ed4c96c4dc7cb8360cac201835276dfe39429c993e614d8f396ad9c3175679f5a1ea205a9bf2f8738f8d3066cb50d09a9a5b5fd3d1219ba20adbb40b0e8b SHA512 adb228325c1f11e9f3566f2fc63541a90c88fe24656fc74ed0294d1eb3b80073bf4741fe7c289f53b340702145b11637d37682e3036dce41ec0fe45dcc6d62c5
diff --git a/dev-libs/libpipeline/files/libpipeline-1.4.1-gnulib-cygwin-sys_select.patch b/dev-libs/libpipeline/files/libpipeline-1.4.1-gnulib-cygwin-sys_select.patch
deleted file mode 100644
index 0755136179..0000000000
--- a/dev-libs/libpipeline/files/libpipeline-1.4.1-gnulib-cygwin-sys_select.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://lists.gnu.org/archive/html/bug-gnulib/2016-03/msg00065.html
-
---- gnulib/lib/sys_select.in.h.orig 2014-08-03 15:31:22.000000000 +0200
-+++ gnulib/lib/sys_select.in.h 2016-05-19 12:57:51.243064700 +0200
-@@ -81,7 +81,7 @@
- Also, Mac OS X, AIX, HP-UX, IRIX, Solaris, Interix declare select()
- in .
- But avoid namespace pollution on glibc systems. */
--# ifndef __GLIBC__
-+# if !(defined __GLIBC__ || defined __NEWLIB__)
- # include
- # endif
-
-@@ -102,7 +102,7 @@
- But avoid namespace pollution on glibc systems.
- Do this after the include_next (for the sake of OpenBSD 5.0) but before
- the split double-inclusion guard (for the sake of Solaris). */
--#if !(defined __GLIBC__ && !defined __UCLIBC__)
-+#if !((defined __GLIBC__ || defined __NEWLIB__) && !defined __UCLIBC__)
- # include
- #endif
-
diff --git a/dev-libs/libpipeline/files/libpipeline-1.4.1-gnulib-darwin-program_name.patch b/dev-libs/libpipeline/files/libpipeline-1.4.1-gnulib-darwin-program_name.patch
deleted file mode 100644
index 91a3c473f7..0000000000
--- a/dev-libs/libpipeline/files/libpipeline-1.4.1-gnulib-darwin-program_name.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-https://lists.gnu.org/archive/html/bug-gnulib/2015-02/msg00079.html
-
-From: Margaret Lewicka
-
----
- lib/error.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/lib/error.c b/lib/error.c
-index 6683197..36a3db7 100644
---- gnulib/lib/error.c
-+++ gnulib/lib/error.c
-@@ -113,9 +113,13 @@ int strerror_r ();
- # endif
- # endif
-
-+#if defined __APPLE__ && defined __MACH__
-+#define program_name (((char **)*_NSGetArgv())[0])
-+#else
- /* The calling program should define program_name and set it to the
- name of the executing program. */
- extern char *program_name;
-+#endif
-
- # if HAVE_STRERROR_R || defined strerror_r
- # define __strerror_r strerror_r
---
-2.1.0
diff --git a/dev-libs/libpipeline/libpipeline-1.2.5.ebuild b/dev-libs/libpipeline/libpipeline-1.2.5.ebuild
deleted file mode 100644
index 0a61825065..0000000000
--- a/dev-libs/libpipeline/libpipeline-1.2.5.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit autotools-utils
-
-DESCRIPTION="a pipeline manipulation library"
-HOMEPAGE="http://libpipeline.nongnu.org/"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="static-libs test"
-
-DEPEND="virtual/pkgconfig
- test? ( dev-libs/check )"
diff --git a/dev-libs/libpipeline/libpipeline-1.3.1.ebuild b/dev-libs/libpipeline/libpipeline-1.3.1.ebuild
deleted file mode 100644
index 23e2aea280..0000000000
--- a/dev-libs/libpipeline/libpipeline-1.3.1.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit autotools-utils
-
-DESCRIPTION="a pipeline manipulation library"
-HOMEPAGE="http://libpipeline.nongnu.org/"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="static-libs test"
-
-DEPEND="virtual/pkgconfig
- test? ( dev-libs/check )"
diff --git a/dev-libs/libpipeline/libpipeline-1.4.0.ebuild b/dev-libs/libpipeline/libpipeline-1.4.0.ebuild
deleted file mode 100644
index a817bfe020..0000000000
--- a/dev-libs/libpipeline/libpipeline-1.4.0.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit autotools-utils
-
-DESCRIPTION="a pipeline manipulation library"
-HOMEPAGE="http://libpipeline.nongnu.org/"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="static-libs test"
-
-DEPEND="virtual/pkgconfig
- test? ( dev-libs/check )"
diff --git a/dev-libs/libpipeline/libpipeline-1.4.1.ebuild b/dev-libs/libpipeline/libpipeline-1.4.1.ebuild
deleted file mode 100644
index fe9a50dbfe..0000000000
--- a/dev-libs/libpipeline/libpipeline-1.4.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit autotools-utils
-
-DESCRIPTION="a pipeline manipulation library"
-HOMEPAGE="http://libpipeline.nongnu.org/"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE="static-libs test"
-
-DEPEND="virtual/pkgconfig
- test? ( dev-libs/check )"
-
-PATCHES=(
- "${FILESDIR}"/${P}-gnulib-cygwin-sys_select.patch
- "${FILESDIR}"/${P}-gnulib-darwin-program_name.patch
-)
diff --git a/dev-libs/libpipeline/libpipeline-1.5.4.ebuild b/dev-libs/libpipeline/libpipeline-1.5.4.ebuild
new file mode 100644
index 0000000000..e9c9978156
--- /dev/null
+++ b/dev-libs/libpipeline/libpipeline-1.5.4.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="A pipeline manipulation library"
+HOMEPAGE="https://libpipeline.nongnu.org/"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+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="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-libs/check )"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ econf --disable-static
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-libs/libpipeline/libpipeline-1.5.5.ebuild b/dev-libs/libpipeline/libpipeline-1.5.5.ebuild
new file mode 100644
index 0000000000..4e2936431f
--- /dev/null
+++ b/dev-libs/libpipeline/libpipeline-1.5.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="A pipeline manipulation library"
+HOMEPAGE="https://libpipeline.nongnu.org/"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+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="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-libs/check )"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ econf --disable-static
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-libs/libpipeline/metadata.xml b/dev-libs/libpipeline/metadata.xml
index 56c1244130..e3e3dc49e2 100644
--- a/dev-libs/libpipeline/metadata.xml
+++ b/dev-libs/libpipeline/metadata.xml
@@ -1,8 +1,11 @@
-
+
-
- base-system@gentoo.org
- Gentoo Base System
-
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+ cjwatson/libpipeline
+
diff --git a/dev-libs/npth/Manifest b/dev-libs/npth/Manifest
index b5338c7a34..3092cac122 100644
--- a/dev-libs/npth/Manifest
+++ b/dev-libs/npth/Manifest
@@ -1,5 +1 @@
-DIST npth-1.3.tar.bz2 295998 SHA256 bca81940436aed0734eb8d0ff8b179e04cc8c087f5625204419f5f45d736a82a SHA512 97b0278cc9448adb42c4a83b8e7bafeed939acaf3dd3a201a1b103df4e48f24224d4bdaeb97903ad1884914ce363cbceffe948a7c1db4f19abf87ca5964f5699 WHIRLPOOL 786dd42c0bb097f47c708cae633f32789d9724cfb5d0e0a12667c754ba32a273ddda6b1c061ad10be1fa2e98dbbcf6850d404e909243fd2e566ba17825f63526
-EBUILD npth-1.3.ebuild 676 SHA256 38a29e7985faea5101ba4d3840c0c66a19e5b356feb6d831e6419247071147d3 SHA512 11aa4890d7e405f5248c6ead71a0ebafbba52093c1ab8ad0ce70393db52301c4ec58a70609955163342a399f7acdac4c920dbbd892ac86e7b992623c8195c5cd WHIRLPOOL 8cadb26cc34eedfb10ee5fe9efec1f15a0b474a74a4baf43af0d4109d975bfacb4b3bd07734a8048a739543e0a2b15621db0aece2a6b5ba51f122e031c83b1dc
-MISC ChangeLog 5408 SHA256 24d3c17fb4846f9a5fd8dba148b5340236100f58c74ac01d57776661b589e49f SHA512 f56969cb3c3662b5de933fb1d3d66d2d8bde571d1e6252a7b4f6e1cfa658aaee062dfab6054cefad3591c1191b76b284db5dc26676efec7b2fce462e0bdfa7e9 WHIRLPOOL 0ae56e5e8e1f8c1450a3962506c6b879c535956a9022c9939957aac1f692c4afd456b62c0c1faed8aca46e1735548488b0707da329d3700622c206437e92c1bd
-MISC ChangeLog-2015 1133 SHA256 90fcc286388de7e44a601fe2705aa4ac168a8b38005ec6860a45605277d3788b SHA512 e358345bb258dc819eae4a519ce83c1ab3609b685689d9098a408d4f8316db8aca3ec92493990452a6c1e076bc712f01ff7ea87dd4268ed4999d957fbefdebf7 WHIRLPOOL 243aca996b604d04323b7f8024fed3ae248d2dc76f54f6b82cea0f9e15db0f4dc15857aecf5c23258759ea4dd77fa4e69544f93346912740a358bc0b5430e9e5
-MISC metadata.xml 246 SHA256 97a4242ddb39ec753b766e7bd7b94f9486e997be8bdcf8b86b24e2ed72417f19 SHA512 8ac20e3524a896e77d186b34b589ffe4287593c43fca1d50bcc06cd27e8cb8f5c0da2087622413a748a1738177d5939a50bda7a1e5d0ba36fbf4fb6d7b9bb015 WHIRLPOOL 1c881073f2000444080ab705b5ea51ddb4e3f62c4e952a69415e259d9fd367192e9687023e96233b3d3686528a4f8b63dd99000d11486e7a80922c93f0b1d7be
+DIST npth-1.6.tar.bz2 300486 BLAKE2B 665fdb2f4cbe59750b6b4b7c2701ee80a23a122df10c9f8be47c4af5f3bf5968f709637ab3f4878bb68609752fbb6ce1364e109fdfeba64e4db258733a33f3fc SHA512 2ed1012e14a9d10665420b9a23628be7e206fd9348111ec751349b93557ee69f1176bcf7e6b195b35b1c44a5e0e81ee33b713f03d79a33d1ecd9037035afeda2
diff --git a/dev-libs/npth/metadata.xml b/dev-libs/npth/metadata.xml
index 4f6e28828f..4c1f213dd4 100644
--- a/dev-libs/npth/metadata.xml
+++ b/dev-libs/npth/metadata.xml
@@ -1,8 +1,8 @@
-
+
-
- crypto@gentoo.org
- Crypto
-
+
+ jsmolic@gentoo.org
+ Jakov Smolić
+
diff --git a/dev-libs/npth/npth-1.3.ebuild b/dev-libs/npth/npth-1.3.ebuild
deleted file mode 100644
index 7aecae6165..0000000000
--- a/dev-libs/npth/npth-1.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit libtool
-
-DESCRIPTION="New GNU Portable Threads Library"
-HOMEPAGE="https://git.gnupg.org/cgi-bin/gitweb.cgi?p=npth.git"
-SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="static-libs"
-
-src_prepare() {
- default
- elibtoolize # for Solaris shared library
-}
-
-src_configure() {
- econf $(use_enable static-libs static)
-}
diff --git a/dev-libs/npth/npth-1.6-r1.ebuild b/dev-libs/npth/npth-1.6-r1.ebuild
new file mode 100644
index 0000000000..0036887417
--- /dev/null
+++ b/dev-libs/npth/npth-1.6-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="New GNU Portable Threads Library"
+HOMEPAGE="https://git.gnupg.org/cgi-bin/gitweb.cgi?p=npth.git"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1+"
+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"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf --disable-static
+}
+
+src_install() {
+ default
+
+ # no static archives
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-perl/Locale-gettext/Locale-gettext-1.50.0-r1.ebuild b/dev-perl/Locale-gettext/Locale-gettext-1.50.0-r1.ebuild
deleted file mode 100644
index dbe7bdb3f3..0000000000
--- a/dev-perl/Locale-gettext/Locale-gettext-1.50.0-r1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN=gettext
-MODULE_AUTHOR=PVANDRY
-MODULE_VERSION=1.05
-inherit perl-module
-
-DESCRIPTION="A Perl module for accessing the GNU locale utilities"
-
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND="sys-devel/gettext"
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}"/compatibility-with-POSIX-module.diff )
-
-# Disabling the tests - not ready for prime time - mcummings
-#SRC_TEST="do"
diff --git a/dev-perl/Locale-gettext/Locale-gettext-1.70.0-r1.ebuild b/dev-perl/Locale-gettext/Locale-gettext-1.70.0-r1.ebuild
new file mode 100644
index 0000000000..f3e5ac2dc6
--- /dev/null
+++ b/dev-perl/Locale-gettext/Locale-gettext-1.70.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_NAME=gettext
+DIST_AUTHOR=PVANDRY
+DIST_VERSION=1.07
+inherit perl-module
+
+DESCRIPTION="A Perl module for accessing the GNU locale utilities"
+
+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"
+
+RDEPEND="
+ sys-devel/gettext
+"
+BDEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+"
+
+PATCHES=("${FILESDIR}/${P}-no-dot-inc.patch")
+
+S="${WORKDIR}/${PN}-${DIST_VERSION}"
diff --git a/dev-perl/Locale-gettext/Locale-gettext-1.70.0.ebuild b/dev-perl/Locale-gettext/Locale-gettext-1.70.0.ebuild
deleted file mode 100644
index 542a8efc79..0000000000
--- a/dev-perl/Locale-gettext/Locale-gettext-1.70.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DIST_NAME=gettext
-DIST_AUTHOR=PVANDRY
-DIST_VERSION=1.07
-inherit perl-module
-
-DESCRIPTION="A Perl module for accessing the GNU locale utilities"
-
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x64-cygwin ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="sys-devel/gettext"
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker
-"
-
-S="${WORKDIR}/${PN}-${DIST_VERSION}"
diff --git a/dev-perl/Locale-gettext/Manifest b/dev-perl/Locale-gettext/Manifest
index 120b6a0c36..e801cadb37 100644
--- a/dev-perl/Locale-gettext/Manifest
+++ b/dev-perl/Locale-gettext/Manifest
@@ -1,8 +1 @@
-AUX compatibility-with-POSIX-module.diff 449 SHA256 e40b9911008c65719f8f890856d1fb77dc5f7f728f68231ec48264e86aae8008 SHA512 079d36e570bbfb6d940c5b02ecd14f685ca004c07e747b019dfb086b4017d0f59e76e94d4f423fe6d43a619d446f5b90443f60731f6008b789822b48d98e9b78 WHIRLPOOL c70513623e3518b419d3b8ce4d42a7f453100f840ab4928be9913b454def0f928bbd52f07d70030343e57b59c98a5359f5944b7be146387c9d3414195e6cb5df
-DIST gettext-1.05.tar.gz 7693 SHA256 27367f3dc1be79c9ed178732756e37e4cfce45f9e2a27ebf26e1f40d80124694 SHA512 ce58940be16b7f2b3bde8f321f142486b38874018d37267ecf0587f44a0ea6c7a2d86fc22ce4ac78f3c9cc521e1ef7142009dd8d050aa45bb12a0e64959d37b1 WHIRLPOOL 87b64aae4d24435fcd38804fbcb9d41747f703a004b40b48a0e91718a67bd42958ede87d79deb462325d2bc6d81ba78a0babb9f879ca9176601ab247540bff0c
-DIST gettext-1.07.tar.gz 8651 SHA256 909d47954697e7c04218f972915b787bd1244d75e3bd01620bc167d5bbc49c15 SHA512 d3716a597d586ee2ff29472ca7b13aaf67770299de31e5f12abafebc879bbe4a1e1dbc0025cf4f3dc29992955f26cffc3be387d974c3911af095d5b49e67a1c6 WHIRLPOOL d41dc69e46d9ae533989cb8eee3e055f968cff87d45deca91d0a6cad40a7cef584713df965f445eb217304696a7f84cb21882a10653dbe8a43882ca7cdcc272a
-EBUILD Locale-gettext-1.50.0-r1.ebuild 668 SHA256 e79790e442279d8fc2f12115d95f92e90fef69a824f6727a033ce38e82fd1918 SHA512 062fb86104b0a2c79a383a8cfc1922a526edc95ae84b9011b8986db407bff7588d523455329642d98b833d10f0675e48b863e1e169ef2646e461d69da9f03247 WHIRLPOOL 88f9531f5b5a55304505ca7c3913f0130437cfd88b6fad572e1395580e263b3d70459f9f5c4da7cf425c33e92d0d9a2d59e9d4aced9f3d82740eaad0627d2c84
-EBUILD Locale-gettext-1.70.0.ebuild 625 SHA256 81dabd75554f1968ad14f4911a33d7e576339da142d4abf69022238e0323d304 SHA512 c67cd437f8e977e51e6d6d7cb129fa1d894984e6d3060db228e19e09dd6f7f91e363309d9ed15bb9bf2d4b9bf17193c0e238cb862a50ac9f3436205532d3d953 WHIRLPOOL de8b9cd0167dce780eb220f427ec49493cd70c46de88c9d7c87b4097aa5b3fb4f0de75c22d99b25b5eb5a9fc49ddeee1dc279af821537cddb2654820fee46ad0
-MISC ChangeLog 2697 SHA256 f9c56a5d8cae92cbfd4356e47dba2aadded07330ccf33ec23a667375827f19c0 SHA512 2c65896075fbe6d0062b185505ff67fde3731d22c7689b4fc6c17efc4db67b3edafd045b5a7685c7bd4a28de8bc7309130fc8df8ad84451f8e41597dce80b584 WHIRLPOOL fc0fb4c56a1438c4b18958bc8f9effa361174d1dfdbb42b30c964cc0fc25d978dd584718b8735db0669ee55e35b4f63f3b3c8b3292b5878ca5697542b9880d27
-MISC ChangeLog-2015 6394 SHA256 1ca5cad5f7f234db21a7f273bb7178fccad5102d7df1ad3b76e82248e48abc55 SHA512 0440cc0e560df5b25f8d67164617f23870443a5e1c0acda2a22444a617cfd8441bc58502984d35a27a33319bb395d036b858ded22dcd249b6510c0ef3923acf9 WHIRLPOOL 2d0cede5efb0714619877398f8cc5cf82e845cfb69d776451ee144265a0eb5f4a834674410d27b57f3a4f3a9ba44e4e4b31c830245bc0a7372ed6e926a125408
-MISC metadata.xml 393 SHA256 5682047b2c98cd0d61d48c9d33c749ed17c361eb7679b620d569fdc36b601405 SHA512 368d7a37c00a186733e33eeaa01c12fdfed50f2f45c66bc88d0dfddcfd063aacb6c0953aa76737d8f9f5c2ed392e0eef41279975cf2cfad7fb423b8ca29592b0 WHIRLPOOL 1002806a98a7640b8604aaf60875b017f5ca1dea6ee5b76364f8c25a8ba6ad2507271d96d459d2d1c5570cd14a80eafefb4e536250fb6e235850eafe552dbd64
+DIST gettext-1.07.tar.gz 8651 BLAKE2B ecdc105303c0b494d53f985ca0d789d75da33abc85e8579a43af1658d6faa18e2564e18fc6613548acc2add4ce847d03769c1fbe29dbb760b9498f4b251cbb1c SHA512 d3716a597d586ee2ff29472ca7b13aaf67770299de31e5f12abafebc879bbe4a1e1dbc0025cf4f3dc29992955f26cffc3be387d974c3911af095d5b49e67a1c6
diff --git a/dev-perl/Locale-gettext/files/Locale-gettext-1.70.0-no-dot-inc.patch b/dev-perl/Locale-gettext/files/Locale-gettext-1.70.0-no-dot-inc.patch
new file mode 100644
index 0000000000..962d90cdae
--- /dev/null
+++ b/dev-perl/Locale-gettext/files/Locale-gettext-1.70.0-no-dot-inc.patch
@@ -0,0 +1,90 @@
+From 08c1f219ae209b2475e5a1b025caceb10cb4a41b Mon Sep 17 00:00:00 2001
+From: Kim Vandry
+Date: Sun, 28 May 2017 19:11:30 +0100
+Subject: Update tests to work with @INC that does not contain '.'
+
+Perl 5.25.11 removes '.' from the default @INC, and this breaks
+`require "test_data/gen_test_data.pl"` due to not being able to assume
+./test_data/gen_test_data.pl is in the @INC load path, and due to
+`require` treating paths without leading "/" or "./" as search paths.
+
+This change implements the first solution suggested by the reporter of
+the bug: Re-organise test dependencies into a dedicated directory such
+as `t/lib` and load that path into @INC with `use lib 't/lib'`.
+
+Bug: https://rt.cpan.org/Ticket/Display.html?id=121458
+Bug: https://bugs.gentoo.org/617048
+---
+ MANIFEST | 2 +-
+ t/frconvert.t | 3 ++-
+ t/jaconvert.t | 3 ++-
+ {test_data => t/lib}/gen_test_data.pl | 0
+ t/raw.t | 3 ++-
+ 5 files changed, 7 insertions(+), 4 deletions(-)
+ rename {test_data => t/lib}/gen_test_data.pl (100%)
+
+diff --git a/MANIFEST b/MANIFEST
+index 9604b91..e9f6e08 100644
+--- a/MANIFEST
++++ b/MANIFEST
+@@ -8,7 +8,7 @@ t/jaconvert.t
+ t/raw.t
+ t/use.t
+ test_data/foo.po
+-test_data/gen_test_data.pl
++t/lib/gen_test_data.pl
+ test_data/jaeuc.po
+ MANIFEST
+ META.yml Module YAML meta-data (added by MakeMaker)
+diff --git a/t/frconvert.t b/t/frconvert.t
+index 2bca28b..9a4f4f5 100644
+--- a/t/frconvert.t
++++ b/t/frconvert.t
+@@ -1,8 +1,9 @@
+ #!/usr/bin/env perl -w
+ use strict;
+ use Test;
++use lib 't/lib';
+ BEGIN { plan tests => 1 }
+-require "test_data/gen_test_data.pl";
++require "gen_test_data.pl";
+
+ gen("foo");
+ use Locale::gettext;
+diff --git a/t/jaconvert.t b/t/jaconvert.t
+index 5794dc4..b95c883 100644
+--- a/t/jaconvert.t
++++ b/t/jaconvert.t
+@@ -1,8 +1,9 @@
+ #!/usr/bin/env perl -w
+ use strict;
+ use Test;
++use lib 't/lib';
+ BEGIN { plan tests => 1 }
+-require "test_data/gen_test_data.pl";
++require "gen_test_data.pl";
+
+ gen("jaeuc");
+ use Locale::gettext;
+diff --git a/test_data/gen_test_data.pl b/t/lib/gen_test_data.pl
+similarity index 100%
+rename from test_data/gen_test_data.pl
+rename to t/lib/gen_test_data.pl
+diff --git a/t/raw.t b/t/raw.t
+index 1e1cf14..7439397 100644
+--- a/t/raw.t
++++ b/t/raw.t
+@@ -1,8 +1,9 @@
+ #!/usr/bin/env perl -w
+ use strict;
+ use Test;
++use lib 't/lib';
+ BEGIN { plan tests => 1 }
+-require "test_data/gen_test_data.pl";
++require "gen_test_data.pl";
+
+ gen("foo");
+ use Locale::gettext;
+--
+2.14.3
+
diff --git a/dev-perl/Locale-gettext/files/compatibility-with-POSIX-module.diff b/dev-perl/Locale-gettext/files/compatibility-with-POSIX-module.diff
deleted file mode 100644
index 101e9f26e2..0000000000
--- a/dev-perl/Locale-gettext/files/compatibility-with-POSIX-module.diff
+++ /dev/null
@@ -1,16 +0,0 @@
-Bug-Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=237378
-Bug: http://rt.cpan.org/Public/Bug/Display.html?id=35680
-Bug-Debian: http://bugs.debian.org/479803
-Author: Raphaël Hertzog
-Origin: vendor, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=479803#20
-
---- a/gettext.pm
-+++ b/gettext.pm
-@@ -32,6 +32,7 @@ to internationalize software.
- =cut
-
- use Carp;
-+use POSIX qw(:locale_h);
-
- require Exporter;
- require DynaLoader;
diff --git a/dev-perl/Locale-gettext/metadata.xml b/dev-perl/Locale-gettext/metadata.xml
index 30ac1ae4e2..c0b5ec0486 100644
--- a/dev-perl/Locale-gettext/metadata.xml
+++ b/dev-perl/Locale-gettext/metadata.xml
@@ -1,5 +1,5 @@
-
+
perl@gentoo.org
diff --git a/dev-perl/Text-Unidecode/Manifest b/dev-perl/Text-Unidecode/Manifest
index a7f13713ce..040702db8e 100644
--- a/dev-perl/Text-Unidecode/Manifest
+++ b/dev-perl/Text-Unidecode/Manifest
@@ -1,9 +1 @@
-DIST Text-Unidecode-0.04.tar.gz 103091 SHA256 473da01fd4829fce3183ef6c5d8932a29a9a7c28ee65f066342069a87be16b06 SHA512 518d1cfa13134c133a1c369e3bc6a708c667e0fa500b20a225ddf216098c496968cd0767d3bc372fcc2444f196a485f7a89587cf0caebc3de4417769216683c9 WHIRLPOOL 945c1402b018e6a0b135269cef00a67a5fa0a88d4a316f4821068d2177f7b1c6d1ba77c87593c4d1e651536fd1d841aaaccbd2a08b7c9776d0ea154d2e2e0ff2
-DIST Text-Unidecode-1.27.tar.gz 134929 SHA256 11876a90f0ce858d31203e80d62900383bb642ed8a470c67539b607f2a772d02 SHA512 c124e09b75050717fc13716b46ca54e607fd1e093f6ce06db466cda669d772661173a394eac81b5073a757f7af5e0174aa23eac037a356f008268b2bd767428c WHIRLPOOL 91a46f09ea5d758dadadc90db7a3c3b5b7d1ba5c4ec4e75940b25ae7cd8d39b9aa94fef4360937186a966b5c3150a379e981876dc214d6b640ccecb7763af893
-DIST Text-Unidecode-1.30.tar.gz 137977 SHA256 6c24f14ddc1d20e26161c207b73ca184eed2ef57f08b5fb2ee196e6e2e88b1c6 SHA512 194f8aba0dcdc7a53338b86370b7cfb6c60d4a8982ada6084f0eb0ccd66ce461b831b6daf04932f039ff1b983dc3cd0c0ced1e8b455955d2699c36120b41a526 WHIRLPOOL e164b71fa9090ca3dc692c471d49524b30814a6186b80083e350466307591867571ed28bfda9a6e977013125f5041cea4e19eb01c4cf0463c2a4cbd1f65c7458
-EBUILD Text-Unidecode-0.40.0-r1.ebuild 487 SHA256 b285c6964cac0a4ab9ac24d8daa10f2f512cb75f323e232cdf40757bba251401 SHA512 dd8223995b1a41a2d8af3c02279ba06ee8cf692ad10a28b44a974f213efea5a34e270e02923b9112cbd0ab622ac81def11a2a33d940527fb83f1c0b53040fbef WHIRLPOOL 7a4af32d13e178e4d934974a7fd015844233a26d98c67d11c346eb0c4b51965d151304c7ede5303403953150a44d0deafdbf0ddb741dd095fc496c9a607c2308
-EBUILD Text-Unidecode-1.270.0.ebuild 571 SHA256 8bcbdb87532eb31b158be41bec665e5e1672ff76ce51303cd231a5734b2ea8dd SHA512 678812ad5848452d7558488486a832a86261bda040793843f4f9bb684215570aabe1c50c7c27813bf9366ce5480c9178da4e022f9aa736b6fa3b2112ec9aaaa9 WHIRLPOOL f0b25d3b6f9b11323fc5b8615b2af675882a30c974ba74d98f19cbad14a6535affd8954087c055a9f4a67ec0f0df8a87b6fa65d13390efa9e85998604050ed4c
-EBUILD Text-Unidecode-1.300.0.ebuild 588 SHA256 484713b1fe9be87d8dd538901187457b9deba3088903db5c12c66885c294d568 SHA512 e64357144aea36f9b828b6c5ddd56e768ebe1841d33580d33dd60981a69687491417530c8865165924ef0c5fdfaad4c9f00840a3044b2e318aadf9d9a38042d6 WHIRLPOOL 8dcc8fad834bf527a9a8aadfe9f1fc35df47a011c180e00e6e03fa2731c2e90b2b965f198c3dc04bbe98220f4ee3e6e3d27153773fa47634ae322d39957dcb25
-MISC ChangeLog 3890 SHA256 c9533e3cbf6bf0e2370c441af5313eccbfc4a9aea755a694e16ac4ee51cfafa3 SHA512 867f7a592f730a981f4b578ac867584cf88368d5f62d63274a8dedbae984ac2249012032a50153958c3c98d01dc8a6c2be4297b661e60d0db17f9299ebe3afa6 WHIRLPOOL a6abbc92b76f9b330ee5b191d04f4a309d658628b50edd01dd73fd8d3c95789db04f4e18bd254100df92dbaf5ee9cea03a4aa3067688ece3698502cfe7aa1f8a
-MISC ChangeLog-2015 3440 SHA256 83d5abb62801d9697b66d3fa978f4dd6913b9e290e96d5d421e2f5e484f66bf5 SHA512 f9c0cd708c1e959c6f5970ffebd74c260b1268045b4f153c663703c56b8ffdb0bfef1019776baf6334a35ef79f455d91436883ed3eedd9a50334c972a0ccd266 WHIRLPOOL eadbfe3da74849fbf8d97cb827522d418e4995c165db2017ec53b9260d28b15945f213aa4a36f9e6812e551633912f35e52b1e7e383b5a70619e4bfc3059dbd1
-MISC metadata.xml 400 SHA256 cb780adc9026838d26a21708faeff3df7b7cda3ef2a8d91a89847e2a6723651f SHA512 843b8dde4d68efb1fa4eae4aa9dfca35fd70812ef65d4b3a4949553dbb95717ea29d6a0de668e055379f2fc8df21d959fae3999250adb3b0a81d6d06b28e50f7 WHIRLPOOL 2e56eef5da8ea741061ce01e738e844f83ba90ea381b1abd54b6b83e703b519f665b919da8f68acf43414145139670da0cd4abdcef474523e6276692c8bad1b9
+DIST Text-Unidecode-1.30.tar.gz 137977 BLAKE2B 0deb00376f5bf458c71c6ab1aa96d6ef43c404bf75b886b2c57050d71c4c7e2f3de2ef12b784459346c73717dc8852bb4127992bec71dbcf0f5398a066418f08 SHA512 194f8aba0dcdc7a53338b86370b7cfb6c60d4a8982ada6084f0eb0ccd66ce461b831b6daf04932f039ff1b983dc3cd0c0ced1e8b455955d2699c36120b41a526
diff --git a/dev-perl/Text-Unidecode/Text-Unidecode-0.40.0-r1.ebuild b/dev-perl/Text-Unidecode/Text-Unidecode-0.40.0-r1.ebuild
deleted file mode 100644
index 9311756918..0000000000
--- a/dev-perl/Text-Unidecode/Text-Unidecode-0.40.0-r1.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=SBURKE
-MODULE_VERSION=0.04
-inherit perl-module
-
-DESCRIPTION="US-ASCII transliterations of Unicode text"
-
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-SRC_TEST=do
diff --git a/dev-perl/Text-Unidecode/Text-Unidecode-1.270.0.ebuild b/dev-perl/Text-Unidecode/Text-Unidecode-1.270.0.ebuild
deleted file mode 100644
index 367bb3e3d7..0000000000
--- a/dev-perl/Text-Unidecode/Text-Unidecode-1.270.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=SBURKE
-MODULE_VERSION=1.27
-inherit perl-module
-
-DESCRIPTION="Plain ASCII transliterations of Unicode text"
-
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND=""
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker
-"
-
-SRC_TEST="do parallel"
diff --git a/dev-perl/Text-Unidecode/Text-Unidecode-1.300.0-r1.ebuild b/dev-perl/Text-Unidecode/Text-Unidecode-1.300.0-r1.ebuild
new file mode 100644
index 0000000000..eeb6c7eeb4
--- /dev/null
+++ b/dev-perl/Text-Unidecode/Text-Unidecode-1.300.0-r1.ebuild
@@ -0,0 +1,13 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_AUTHOR=SBURKE
+DIST_VERSION=1.30
+inherit perl-module
+
+DESCRIPTION="Plain ASCII transliterations of Unicode text"
+
+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 ~x64-solaris ~x86-solaris"
diff --git a/dev-perl/Text-Unidecode/Text-Unidecode-1.300.0.ebuild b/dev-perl/Text-Unidecode/Text-Unidecode-1.300.0.ebuild
deleted file mode 100644
index 5204a3cced..0000000000
--- a/dev-perl/Text-Unidecode/Text-Unidecode-1.300.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DIST_AUTHOR=SBURKE
-DIST_VERSION=1.30
-inherit perl-module
-
-DESCRIPTION="Plain ASCII transliterations of Unicode text"
-
-SLOT="0"
-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 ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND=""
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker
-"
-
-SRC_TEST="do parallel"
diff --git a/dev-perl/Text-Unidecode/metadata.xml b/dev-perl/Text-Unidecode/metadata.xml
index 1e39031da1..9a7ef3fe02 100644
--- a/dev-perl/Text-Unidecode/metadata.xml
+++ b/dev-perl/Text-Unidecode/metadata.xml
@@ -1,5 +1,5 @@
-
+
perl@gentoo.org
diff --git a/dev-perl/Unicode-EastAsianWidth/Manifest b/dev-perl/Unicode-EastAsianWidth/Manifest
index 782014d664..20f6d9ace2 100644
--- a/dev-perl/Unicode-EastAsianWidth/Manifest
+++ b/dev-perl/Unicode-EastAsianWidth/Manifest
@@ -1,6 +1 @@
-AUX no-dot-inc.patch 602 SHA256 7a8ddcf9b7a7d687c60e4058dfb9e536c22cf0991ed77627d16e8d10c3b54997 SHA512 fdad62c560595ec49f7de0dfd6f1f700abbfdc77053a016053573bb105251684ff4fcf8cf9fb534b2a2eeb5b38c21f089380876e3433fbbc47d0eabe9d542ec0 WHIRLPOOL 8b7840db580f0630018a68a2449bea6e0a3eb22f53e57f5d9131fe5cb8b41f208d0067dc504ae22994b2c0136da642739472c25b820d9c761eda5eb4924fd889
-DIST Unicode-EastAsianWidth-1.33.tar.gz 31498 SHA256 41c9f0b50c45dd806a97de73f9fe93516b6c63255e2a5174e5fb2d89635c7797 SHA512 c21e988f460534b370954d0448daec5bfb0a34ec816459f8422943ebe44ff17b5acb8a423d69daba81599111d7fa4aa33a3598e0ea4614eed25a587c1f5690eb WHIRLPOOL 5376518d63b9a2dbfaa3c8e4714994375dd5f59df440c30ed7e84eedcc9a9c6728dc4d6c2726e20593384a5534ed7894ab6666996e0b2e1358c033e46409b9ff
-EBUILD Unicode-EastAsianWidth-1.330.0-r1.ebuild 633 SHA256 ae786901ed894ee06196a085fb358b52e124f886be389f20c54504d0c3759780 SHA512 7bb7659f512098ac6373824221edabe6d8189cfbeef9527ad0f5ee36df5350f3277a87edd1099b67c404e5f557fa957555e0ace2401c942e4155d9b6188a8354 WHIRLPOOL c37a54979ad7684e988d01c1c82b329bd5b035d9afe31d403a807d19439e9246cd9c58a2ec7f88077c65c1309c984eacc36e3531379f70fcf209f3c46f7a11e5
-MISC ChangeLog 2482 SHA256 efdaa18f4e7c8e3e73d07d2a0bd5b55f620b623ec37023a362145b1bc697de98 SHA512 0b34fdb2a3624e2ffe6a56ae13ae2011107b6221b4a2ef7e44722b17aba4f2a048777ae30abd4659e421d8785795f7ce3fcaf8b451136fa69079209b94020a5e WHIRLPOOL 70a33252a9faf8ef6a22784290b16d56b03a30cbcb2891b43cf2b8bacea3004a2ae5811671be5223571b64b1488f5d7b2ae0856eec92e9b98dc07b0ddebbc9a1
-MISC ChangeLog-2015 5912 SHA256 44e885abc6498e103a712c48bf5981b7004275a9b85caf9961f41de35f727394 SHA512 f30c3795bc9c40045b171c53e668df3555e94200f16bbc44e8d2a70c7ccd092e73553884ea21e5757bba34cfc17cde32d0502ca7ef0b3aeec1346dd058f2197c WHIRLPOOL 7cf9378b8bf3eda549621f340cad2238d4c54200a9de89ff3359b33465a01984c41405c77f0324b62a97959135f672fd6a6f5a29d74bd3db6d7c4678b73f2b83
-MISC metadata.xml 404 SHA256 fcebdabbf2fa7e5da68cf5b7479934e2fc42abec7d1e720ca2a38a0472845c04 SHA512 0a9b4c003b910b30c439687e339e267459f3f85b877de4baaa4f89b0994771ac8a40b4096dafe5db19fff5c48fa69ac520e897dc59823ff306eb495295454b13 WHIRLPOOL 2d2aca6d12eebb55348efb97e29e672c04f78e19c1cf2c9c371ecd4d8bb1ebf410935bfe7dab43295ffc2da32deca4a052bd26fa3debdc01f6e758072eb70372
+DIST Unicode-EastAsianWidth-12.0.tar.gz 52302 BLAKE2B 0754158580de0a442e5ff6a9f3e0cf9d3765e1e5a7cd73a2c748ad003951b571bb71b38c8d92e6badb438e0eea377df9dd2e22ac9e14f9ea8c61672d0679481c SHA512 ec11d12b86d9e3676cf612c40f8e75ce1efdd302b5a6fe5d594306cffcf94f91855b5ee979f7646762605453d08d4b6b47f556e56f01b47d8ca1da8455dc138d
diff --git a/dev-perl/Unicode-EastAsianWidth/Unicode-EastAsianWidth-1.330.0-r1.ebuild b/dev-perl/Unicode-EastAsianWidth/Unicode-EastAsianWidth-1.330.0-r1.ebuild
deleted file mode 100644
index 002917f89b..0000000000
--- a/dev-perl/Unicode-EastAsianWidth/Unicode-EastAsianWidth-1.330.0-r1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=AUDREYT
-MODULE_VERSION=1.33
-inherit perl-module
-
-DESCRIPTION="East Asian Width properties"
-
-LICENSE="CC0-1.0"
-SLOT="0"
-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 ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="virtual/perl-File-Spec"
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker"
-PATCHES=("${FILESDIR}/no-dot-inc.patch")
-SRC_TEST="do"
diff --git a/dev-perl/Unicode-EastAsianWidth/Unicode-EastAsianWidth-12.0.0.ebuild b/dev-perl/Unicode-EastAsianWidth/Unicode-EastAsianWidth-12.0.0.ebuild
new file mode 100644
index 0000000000..153b25649c
--- /dev/null
+++ b/dev-perl/Unicode-EastAsianWidth/Unicode-EastAsianWidth-12.0.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_AUTHOR=AUDREYT
+DIST_VERSION=12.0
+inherit perl-module
+
+DESCRIPTION="East Asian Width properties"
+
+LICENSE="CC0-1.0"
+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 ~x64-solaris ~x86-solaris"
+
+RDEPEND="
+ virtual/perl-File-Spec
+"
+BDEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+"
diff --git a/dev-perl/Unicode-EastAsianWidth/files/no-dot-inc.patch b/dev-perl/Unicode-EastAsianWidth/files/no-dot-inc.patch
deleted file mode 100644
index 16d42e582a..0000000000
--- a/dev-perl/Unicode-EastAsianWidth/files/no-dot-inc.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 9cb5f1551566addf37a47e935164519842bab0d8 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 11 Jun 2017 16:10:47 +1200
-Subject: [PATCH] Fix for Perl 5.26 w/o '.' in @INC
-
----
- Makefile.PL | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile.PL b/Makefile.PL
-index 6745b7c..2db030d 100644
---- a/Makefile.PL
-+++ b/Makefile.PL
-@@ -1,6 +1,7 @@
- #!/usr/bin/perl
- use strict;
--use inc::Module::Package 'Au:dry 1';
-+use lib './inc';
-+use Module::Package 'Au:dry 1';
-
- my $DefaultVersion = 'v5.0.0';
- my $DefaultDate = '2006-02-15';
---
-2.13.1
-
diff --git a/dev-perl/Unicode-EastAsianWidth/metadata.xml b/dev-perl/Unicode-EastAsianWidth/metadata.xml
index f446398908..52fecb51ff 100644
--- a/dev-perl/Unicode-EastAsianWidth/metadata.xml
+++ b/dev-perl/Unicode-EastAsianWidth/metadata.xml
@@ -1,5 +1,5 @@
-
+
perl@gentoo.org
diff --git a/dev-util/checkbashisms/Manifest b/dev-util/checkbashisms/Manifest
index 171f0d7ca6..fdcf0a4005 100644
--- a/dev-util/checkbashisms/Manifest
+++ b/dev-util/checkbashisms/Manifest
@@ -1,2 +1,2 @@
-DIST devscripts_2.17.8.tar.xz 696424 SHA256 7e39e296891d2d158b717c0c834cc0c5ab560e5c7d88910e42bf59cda10fbeea SHA512 1495a754346ec3903cb91d9d937b74a1d6a928a84028d19016b7a2d0df5c0f665aba7c777952ae57f5f8b421b696cf631c7a139ea68a98f31030c83b6e67d349 WHIRLPOOL d146b5e3317278b21c49c34af29877e0bb8f463c6bca9ec037953d0da9b53c8aea863d27691fe95667ebedc2d7b1d209d2593b51083537f9c0d8956a34b45855
-DIST devscripts_2.17.9.tar.xz 696500 SHA256 0ef164a9b8e774e8aef7a532302e7ce60ba10a72e56da485865222e68033b73b SHA512 00bc2fea2aa2f5806f6ecedee96c09c0ff31d99283e7b242f85c04a63310ada692df2bbef0cfde73dbcf3ac455026a5262b298fb2348528f2a9d7ce7916d97dd WHIRLPOOL 867d946c6d598ccb67e2e19a872c033d9c22b7b270cf2eadbc81da0d1d4a42d444cc705bff69b6b2e35006d72f6131ee101e34ced34faa8e89da7f950aca5c81
+DIST devscripts_2.21.2.tar.xz 980516 BLAKE2B 907f2f4e258a8396ad0a28eead1e2058b8e19be205f024ea80c0fbd9621d5ca4299844fe83d66cac7f653a917705d9c36eddb9d51454a7fbb9d7e2b52bc994ff SHA512 a6765d807dc0c2ef7a3d8c59e1262bfe7542c3ca52cda3c1910af253925cb105a9d1bf272c76a86f0b3cdda9c8a4e2d29a660437f73087dd70ee8a444bbedb01
+DIST devscripts_2.21.4.tar.xz 981488 BLAKE2B 29339490586a66c6360f599a90e23452fd1e99fd01757e258e082b9550731b3e443b12fb9ce9b8fe6fb229f228a115f87a9b91b8769000afd741eb77e9e7a4a4 SHA512 99250737cabc24bbd21e20de7c787e182492e15cad4288226ed497349cbf3dd45927e1c501d73341e48dfd14ee2285c8cca8ac3b2145c2f02ce4d04ddb881e50
diff --git a/dev-util/checkbashisms/checkbashisms-2.17.9.ebuild b/dev-util/checkbashisms/checkbashisms-2.21.2.ebuild
similarity index 67%
rename from dev-util/checkbashisms/checkbashisms-2.17.9.ebuild
rename to dev-util/checkbashisms/checkbashisms-2.21.2.ebuild
index 8524418c7c..8078bd1b9a 100644
--- a/dev-util/checkbashisms/checkbashisms-2.17.9.ebuild
+++ b/dev-util/checkbashisms/checkbashisms-2.21.2.ebuild
@@ -1,34 +1,31 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
MY_PN="devscripts"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Perl script to check for commonly used bash features not defined by POSIX"
-HOMEPAGE="https://packages.debian.org/devscripts https://anonscm.debian.org/cgit/collab-maint/devscripts.git"
+HOMEPAGE="https://packages.debian.org/devscripts https://salsa.debian.org/debian/devscripts"
SRC_URI="mirror://debian/pool/main/d/${MY_PN}/${MY_P/-/_}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
IUSE=""
# Requires python packages to check tools we don't need anyway
RESTRICT="test"
RDEPEND="dev-lang/perl
- virtual/perl-Getopt-Long
- !
-Date: Tue, 10 Nov 2015 19:39:19 -0500
-Subject: [PATCH] checkbashisms: allow `command` to use -v/-V
-
-POSIX permits the -v/-V options:
-http://pubs.opengroup.org/onlinepubs/9699919799/utilities/command.html
-command [-p][-v|-V] command_name
----
- scripts/checkbashisms.pl | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/scripts/checkbashisms.pl b/scripts/checkbashisms.pl
-index 045328c..fe64a6b 100755
---- a/scripts/checkbashisms.pl
-+++ b/scripts/checkbashisms.pl
-@@ -644,7 +644,7 @@ sub init_hashes {
- qr';;?&' => q<;;& and ;& special case operators>,
- $LEADIN . qr'jobs\s' => q,
- # $LEADIN . qr'jobs\s+-[^lp]\s' => q<'jobs' with option other than -l or -p>,
-- $LEADIN . qr'command\s+-[^p]\s' => q<'command' with option other than -p>,
-+ $LEADIN . qr'command\s+-[^pvV]\s' => q<'command' with option other than -p/-v/-V>,
- $LEADIN . qr'setvar\s' => q,
- $LEADIN . qr'trap\s+["\']?.*["\']?\s+.*(?:ERR|DEBUG|RETURN)' => q,
- $LEADIN . qr'(?:exit|return)\s+-\d' => q,
---
-2.6.2
-
diff --git a/dev-util/checkbashisms/metadata.xml b/dev-util/checkbashisms/metadata.xml
index 8491585905..28866513f7 100644
--- a/dev-util/checkbashisms/metadata.xml
+++ b/dev-util/checkbashisms/metadata.xml
@@ -1,5 +1,5 @@
-
+
robbat2@gentoo.org
diff --git a/eclass/apache-2.eclass b/eclass/apache-2.eclass
deleted file mode 100644
index 886161758a..0000000000
--- a/eclass/apache-2.eclass
+++ /dev/null
@@ -1,684 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: apache-2.eclass
-# @MAINTAINER:
-# polynomial-c@gentoo.org
-# @SUPPORTED_EAPIS: 5 6 7
-# @BLURB: Provides a common set of functions for apache-2.x ebuilds
-# @DESCRIPTION:
-# This eclass handles apache-2.x ebuild functions such as LoadModule generation
-# and inter-module dependency checking.
-
-inherit autotools flag-o-matic multilib ssl-cert user toolchain-funcs eapi7-ver
-
-[[ ${CATEGORY}/${PN} != www-servers/apache ]] \
- && die "Do not use this eclass with anything else than www-servers/apache ebuilds!"
-
-case ${EAPI:-0} in
- 0|1|2|3|4)
- die "This eclass is banned for EAPI<5"
- ;;
-esac
-
-# settings which are version specific go in here:
-case $(ver_cut 1-2) in
- 2.4)
- DEFAULT_MPM_THREADED="event" #509922
- CDEPEND=">=dev-libs/apr-1.5.1:=
- !www-apache/mod_macro" #492578 #477702
- ;;
- 2.2)
- DEFAULT_MPM_THREADED="worker"
- CDEPEND=">=dev-libs/apr-1.4.5:=" #368651
- ;;
- *)
- die "Unknown MAJOR.MINOR apache version."
- ;;
-esac
-
-# ==============================================================================
-# INTERNAL VARIABLES
-# ==============================================================================
-
-# @ECLASS-VARIABLE: GENTOO_PATCHNAME
-# @DESCRIPTION:
-# This internal variable contains the prefix for the patch tarball.
-# Defaults to the full name and version (including revision) of the package.
-# If you want to override this in an ebuild, use:
-# ORIG_PR="(revision of Gentoo stuff you want)"
-# GENTOO_PATCHNAME="gentoo-${PN}-${PV}${ORIG_PR:+-${ORIG_PR}}"
-[[ -n "${GENTOO_PATCHNAME}" ]] || GENTOO_PATCHNAME="gentoo-${PF}"
-
-# @ECLASS-VARIABLE: GENTOO_PATCHDIR
-# @DESCRIPTION:
-# This internal variable contains the working directory where patches and config
-# files are located.
-# Defaults to the patchset name appended to the working directory.
-[[ -n "${GENTOO_PATCHDIR}" ]] || GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}"
-
-# @VARIABLE: GENTOO_DEVELOPER
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains the name of the
-# gentoo developer who created the patch tarball
-
-# @VARIABLE: GENTOO_PATCHSTAMP
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains the date the patch
-# tarball was created at in YYYYMMDD format
-
-# @VARIABLE: GENTOO_PATCH_A
-# @DESCRIPTION:
-# This variable should contain the entire filename of patch tarball.
-# Defaults to the name of the patchset, with a datestamp.
-[[ -n "${GENTOO_PATCH_A}" ]] || GENTOO_PATCH_A="${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2"
-
-SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2
- https://dev.gentoo.org/~${GENTOO_DEVELOPER}/dist/apache/${GENTOO_PATCH_A}"
-
-# @VARIABLE: IUSE_MPMS_FORK
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains a list of forking
-# (i.e. non-threaded) MPMs
-
-# @VARIABLE: IUSE_MPMS_THREAD
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains a list of threaded
-# MPMs
-
-# @VARIABLE: IUSE_MODULES
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains a list of available
-# built-in modules
-
-IUSE_MPMS="${IUSE_MPMS_FORK} ${IUSE_MPMS_THREAD}"
-IUSE="${IUSE} debug doc gdbm ldap libressl selinux ssl static suexec threads"
-
-for module in ${IUSE_MODULES} ; do
- IUSE="${IUSE} apache2_modules_${module}"
-done
-
-_apache2_set_mpms() {
- local mpm
- local ompm
-
- for mpm in ${IUSE_MPMS} ; do
- IUSE="${IUSE} apache2_mpms_${mpm}"
-
- REQUIRED_USE+=" apache2_mpms_${mpm}? ("
- for ompm in ${IUSE_MPMS} ; do
- if [[ "${mpm}" != "${ompm}" ]] ; then
- REQUIRED_USE+=" !apache2_mpms_${ompm}"
- fi
- done
-
- if has ${mpm} ${IUSE_MPMS_FORK} ; then
- REQUIRED_USE+=" !threads"
- else
- REQUIRED_USE+=" threads"
- fi
- REQUIRED_USE+=" )"
- done
-
- if [[ "$(ver_cut 1-2)" != 2.2 ]] ; then
- REQUIRED_USE+=" apache2_mpms_prefork? ( !apache2_modules_http2 )"
- fi
-}
-_apache2_set_mpms
-unset -f _apache2_set_mpms
-
-DEPEND="${CDEPEND}
- dev-lang/perl
- =dev-libs/apr-util-1*:=[gdbm=,ldap?]
- dev-libs/libpcre
- apache2_modules_deflate? ( sys-libs/zlib )
- apache2_modules_mime? ( app-misc/mime-types )
- gdbm? ( sys-libs/gdbm:= )
- ldap? ( =net-nds/openldap-2* )
- ssl? (
- !libressl? ( >=dev-libs/openssl-1.0.2:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- !=www-servers/apache-1*"
-RDEPEND+=" ${DEPEND}
- selinux? ( sec-policy/selinux-apache )"
-PDEPEND="~app-admin/apache-tools-${PV}"
-
-S="${WORKDIR}/httpd-${PV}"
-
-# @VARIABLE: MODULE_DEPENDS
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains a space-separated
-# list of dependency tokens each with a module and the module it depends on
-# separated by a colon
-
-# now extend REQUIRED_USE to reflect the module dependencies to portage
-_apache2_set_module_depends() {
- local dep
-
- for dep in ${MODULE_DEPENDS} ; do
- REQUIRED_USE+=" apache2_modules_${dep%:*}? ( apache2_modules_${dep#*:} )"
- done
-}
-_apache2_set_module_depends
-unset -f _apache2_set_module_depends
-
-# ==============================================================================
-# INTERNAL FUNCTIONS
-# ==============================================================================
-
-# @ECLASS-VARIABLE: MY_MPM
-# @DESCRIPTION:
-# This internal variable contains the selected MPM after a call to setup_mpm()
-
-# @FUNCTION: setup_mpm
-# @DESCRIPTION:
-# This internal function makes sure that only one of APACHE2_MPMS was selected
-# or a default based on USE=threads is selected if APACHE2_MPMS is empty
-setup_mpm() {
- MY_MPM=""
- for x in ${IUSE_MPMS} ; do
- if use apache2_mpms_${x} ; then
- # there can at most be one MPM selected because of REQUIRED_USE constraints
- MY_MPM=${x}
- elog
- elog "Selected MPM: ${MY_MPM}"
- elog
- break
- fi
- done
-
- if [[ -z "${MY_MPM}" ]] ; then
- if use threads ; then
- MY_MPM=${DEFAULT_MPM_THREADED}
- elog
- elog "Selected default threaded MPM: ${MY_MPM}"
- elog
- else
- MY_MPM=prefork
- elog
- elog "Selected default MPM: ${MY_MPM}"
- elog
- fi
- fi
-}
-
-# @VARIABLE: MODULE_CRITICAL
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains a space-separated
-# list of modules critical for the default apache. A user may still
-# disable these modules for custom minimal installation at their own risk.
-
-# @FUNCTION: check_module_critical
-# @DESCRIPTION:
-# This internal function warns the user about modules critical for the default
-# apache configuration.
-check_module_critical() {
- local unsupported=0
-
- for m in ${MODULE_CRITICAL} ; do
- if ! has ${m} ${MY_MODS[@]} ; then
- ewarn "Module '${m}' is required in the default apache configuration."
- unsupported=1
- fi
- done
-
- if [[ ${unsupported} -ne 0 ]] ; then
- ewarn
- ewarn "You have disabled one or more required modules"
- ewarn "for the default apache configuration."
- ewarn "Although this is not an error, please be"
- ewarn "aware that this setup is UNSUPPORTED."
- ewarn
- fi
-}
-
-# @ECLASS-VARIABLE: MY_CONF
-# @DESCRIPTION:
-# This internal variable contains the econf options for the current module
-# selection after a call to setup_modules()
-
-# @ECLASS-VARIABLE: MY_MODS
-# @DESCRIPTION:
-# This internal variable contains a sorted, space separated list of currently
-# selected modules after a call to setup_modules()
-
-# @FUNCTION: setup_modules
-# @DESCRIPTION:
-# This internal function selects all built-in modules based on USE flags and
-# APACHE2_MODULES USE_EXPAND flags
-setup_modules() {
- local mod_type=
-
- if use static ; then
- mod_type="static"
- else
- mod_type="shared"
- fi
-
- MY_CONF=( --enable-so=static )
- MY_MODS=()
-
- if use ldap ; then
- MY_CONF+=( --enable-authnz_ldap=${mod_type} --enable-ldap=${mod_type} )
- MY_MODS+=( ldap authnz_ldap )
- else
- MY_CONF+=( --disable-authnz_ldap --disable-ldap )
- fi
-
- if use ssl ; then
- MY_CONF+=( --with-ssl --enable-ssl=${mod_type} )
- MY_MODS+=( ssl )
- else
- MY_CONF+=( --without-ssl --disable-ssl )
- fi
-
- if use suexec ; then
- elog "You can manipulate several configure options of suexec"
- elog "through the following environment variables:"
- elog
- elog " SUEXEC_SAFEPATH: Default PATH for suexec (default: '${EPREFIX}/usr/local/bin:${EPREFIX}/usr/bin:${EPREFIX}/bin')"
- if { ver_test ${PV} -ge 2.4.34 && ! use suexec-syslog ; } || ver_test ${PV} -lt 2.4.34 ; then
- elog " SUEXEC_LOGFILE: Path to the suexec logfile (default: '${EPREFIX}/var/log/apache2/suexec_log')"
- fi
- elog " SUEXEC_CALLER: Name of the user Apache is running as (default: apache)"
- elog " SUEXEC_DOCROOT: Directory in which suexec will run scripts (default: '${EPREFIX}/var/www')"
- elog " SUEXEC_MINUID: Minimum UID, which is allowed to run scripts via suexec (default: 1000)"
- elog " SUEXEC_MINGID: Minimum GID, which is allowed to run scripts via suexec (default: 100)"
- elog " SUEXEC_USERDIR: User subdirectories (like /home/user/html) (default: public_html)"
- elog " SUEXEC_UMASK: Umask for the suexec process (default: 077)"
- elog
-
- MY_CONF+=( --with-suexec-safepath="${SUEXEC_SAFEPATH:-${EPREFIX}/usr/local/bin:${EPREFIX}/usr/bin:${EPREFIX}/bin}" )
- if ver_test ${PV} -ge 2.4.34 ; then
- MY_CONF+=( $(use_with !suexec-syslog suexec-logfile "${SUEXEC_LOGFILE:-${EPREFIX}/var/log/apache2/suexec_log}") )
- MY_CONF+=( $(use_with suexec-syslog) )
- if use suexec-syslog && use suexec-caps ; then
- MY_CONF+=( --enable-suexec-capabilities )
- fi
- else
- MY_CONF+=( --with-suexec-logfile="${SUEXEC_LOGFILE:-${EPREFIX}/var/log/apache2/suexec_log}" )
- fi
- MY_CONF+=( --with-suexec-bin="${EPREFIX}/usr/sbin/suexec" )
- MY_CONF+=( --with-suexec-userdir=${SUEXEC_USERDIR:-public_html} )
- MY_CONF+=( --with-suexec-caller=${SUEXEC_CALLER:-apache} )
- MY_CONF+=( --with-suexec-docroot="${SUEXEC_DOCROOT:-${EPREFIX}/var/www}" )
- MY_CONF+=( --with-suexec-uidmin=${SUEXEC_MINUID:-1000} )
- MY_CONF+=( --with-suexec-gidmin=${SUEXEC_MINGID:-100} )
- MY_CONF+=( --with-suexec-umask=${SUEXEC_UMASK:-077} )
- MY_CONF+=( --enable-suexec=${mod_type} )
- MY_MODS+=( suexec )
- else
- MY_CONF+=( --disable-suexec )
- fi
-
- for x in ${IUSE_MODULES} ; do
- if use apache2_modules_${x} ; then
- MY_CONF+=( --enable-${x}=${mod_type} )
- MY_MODS+=( ${x} )
- else
- MY_CONF+=( --disable-${x} )
- fi
- done
-
- # sort and uniquify MY_MODS
- MY_MODS=( $(echo ${MY_MODS[@]} | tr ' ' '\n' | sort -u) )
- check_module_critical
-}
-
-# @VARIABLE: MODULE_DEFINES
-# @DESCRIPTION:
-# This variable needs to be set in the ebuild and contains a space-separated
-# list of tokens each mapping a module to a runtime define which can be
-# specified in APACHE2_OPTS in /etc/conf.d/apache2 to enable this particular
-# module.
-
-# @FUNCTION: generate_load_module
-# @DESCRIPTION:
-# This internal function generates the LoadModule lines for httpd.conf based on
-# the current module selection and MODULE_DEFINES
-generate_load_module() {
- local endit=0 mod_lines= mod_dir="${ED%/}/usr/$(get_libdir)/apache2/modules"
-
- if use static; then
- sed -i -e "/%%LOAD_MODULE%%/d" \
- "${GENTOO_PATCHDIR}"/conf/httpd.conf
- return
- fi
-
- for m in ${MY_MODS[@]} ; do
- if [[ -e "${mod_dir}/mod_${m}.so" ]] ; then
- for def in ${MODULE_DEFINES} ; do
- if [[ "${m}" == "${def%:*}" ]] ; then
- mod_lines="${mod_lines}\n"
- endit=1
- fi
- done
-
- mod_lines="${mod_lines}\nLoadModule ${m}_module modules/mod_${m}.so"
-
- if [[ ${endit} -ne 0 ]] ; then
- mod_lines="${mod_lines}\n"
- endit=0
- fi
- fi
- done
-
- sed -i -e "s:%%LOAD_MODULE%%:${mod_lines}:" \
- "${GENTOO_PATCHDIR}"/conf/httpd.conf
-}
-
-# @FUNCTION: check_upgrade
-# @DESCRIPTION:
-# This internal function checks if the previous configuration file for built-in
-# modules exists in ROOT and prevents upgrade in this case. Users are supposed
-# to convert this file to the new APACHE2_MODULES USE_EXPAND variable and remove
-# it afterwards.
-check_upgrade() {
- if [[ -e "${EROOT}"etc/apache2/apache2-builtin-mods ]]; then
- eerror "The previous configuration file for built-in modules"
- eerror "(${EROOT}etc/apache2/apache2-builtin-mods) exists on your"
- eerror "system."
- eerror
- eerror "Please read https://wiki.gentoo.org/wiki/Project:Apache/Upgrading"
- eerror "for detailed information how to convert this file to the new"
- eerror "APACHE2_MODULES USE_EXPAND variable."
- eerror
- die "upgrade not possible with existing ${ROOT}etc/apache2/apache2-builtin-mods"
- fi
-}
-
-# ==============================================================================
-# EXPORTED FUNCTIONS
-# ==============================================================================
-
-# @FUNCTION: apache-2_pkg_setup
-# @DESCRIPTION:
-# This function selects built-in modules, the MPM and other configure options,
-# creates the apache user and group and informs about CONFIG_SYSVIPC being
-# needed (we don't depend on kernel sources and therefore cannot check).
-apache-2_pkg_setup() {
- check_upgrade
-
- # setup apache user and group
- enewgroup apache 81
- enewuser apache 81 -1 /var/www apache
-
- setup_mpm
- setup_modules
-
- if use debug; then
- MY_CONF+=( --enable-exception-hook )
- fi
-
- elog "Please note that you need SysV IPC support in your kernel."
- elog "Make sure CONFIG_SYSVIPC=y is set."
- elog
-
- if use userland_BSD; then
- elog "On BSD systems you need to add the following line to /boot/loader.conf:"
- elog " accf_http_load=\"YES\""
- if use ssl ; then
- elog " accf_data_load=\"YES\""
- fi
- elog
- fi
-}
-
-# @FUNCTION: apache-2_src_prepare
-# @DESCRIPTION:
-# This function applies patches, configures a custom file-system layout and
-# rebuilds the configure scripts.
-apache-2_src_prepare() {
- #fix prefix in conf files etc (bug #433736)
- use !prefix || sed -e "s@/\(usr\|var\|etc\|run\)/@${EPREFIX}&@g" \
- -i "${GENTOO_PATCHDIR}"/conf/httpd.conf "${GENTOO_PATCHDIR}"/scripts/* \
- "${GENTOO_PATCHDIR}"/docs/*.example "${GENTOO_PATCHDIR}"/patches/*.layout \
- "${GENTOO_PATCHDIR}"/init/* "${GENTOO_PATCHDIR}"/conf/vhosts.d/* \
- "${GENTOO_PATCHDIR}"/conf/modules.d/* || die
-
- # 03_all_gentoo-apache-tools.patch injects -Wl,-z,now, which is not a good
- # idea for everyone
- case ${CHOST} in
- *-linux-gnu|*-solaris*|*-freebsd*)
- # do nothing, these use GNU binutils
- :
- ;;
- *-darwin*)
- sed -i -e 's/-Wl,-z,now/-Wl,-bind_at_load/g' \
- "${GENTOO_PATCHDIR}"/patches/03_all_gentoo_apache-tools.patch
- ;;
- *)
- # patch it out to be like upstream
- sed -i -e 's/-Wl,-z,now//g' \
- "${GENTOO_PATCHDIR}"/patches/03_all_gentoo_apache-tools.patch
- ;;
- esac
-
- # Use correct multilib libdir in gentoo patches
- sed -i -e "s:/usr/lib:/usr/$(get_libdir):g" \
- "${GENTOO_PATCHDIR}"/{conf/httpd.conf,init/*,patches/config.layout} \
- || die "libdir sed failed"
-
- if [[ "${EAPI}" -ge 6 ]] ; then
- default
- eapply "${GENTOO_PATCHDIR}"/patches/*.patch
- else
- epatch "${GENTOO_PATCHDIR}"/patches/*.patch
- fi
-
- if [[ ${EAPI} = 5 ]] ; then
- # Handle patches from ebuild's PATCHES array if one is given
- if [[ -n "${PATCHES}" ]] ; then
- local patchestype=$(declare -p PATCHES 2>&-)
- if [[ "${patchestype}" != "declare -a PATCHES="* ]] ; then
- die "Declaring PATCHES as a variable is forbidden. Please use an array instead."
- fi
- epatch "${PATCHES[@]}"
- fi
-
- # Handle user patches
- epatch_user
- fi
-
- # Don't rename configure.in _before_ any possible user patches!
- if [[ -f "configure.in" ]] ; then
- mv configure.{in,ac} || die
- fi
-
- # setup the filesystem layout config
- cat "${GENTOO_PATCHDIR}"/patches/config.layout >> "${S}"/config.layout || \
- die "Failed preparing config.layout!"
- sed -i -e "s:version:${PF}:g" "${S}"/config.layout
-
- # apache2.8 instead of httpd.8 (bug #194828)
- mv docs/man/{httpd,apache2}.8
- sed -i -e 's/httpd\.8/apache2.8/g' Makefile.in
-
- # patched-in MPMs need the build environment rebuilt
- sed -i -e '/sinclude/d' configure.ac
- AT_M4DIR=build eautoreconf
-
- # ${T} must be not group-writable, else grsec TPE will block it
- chmod g-w "${T}"
-
- # This package really should upgrade to using pcre's .pc file.
- cat <<-\EOF >"${T}"/pcre-config
- #!/bin/bash
- flags=()
- for flag; do
- if [[ ${flag} == "--version" ]]; then
- flags+=( --modversion )
- else
- flags+=( "${flag}" )
- fi
- done
- exec ${PKG_CONFIG} libpcre "${flags[@]}"
- EOF
- chmod a+x "${T}"/pcre-config
-}
-
-# @FUNCTION: apache-2_src_configure
-# @DESCRIPTION:
-# This function adds compiler flags and runs econf and emake based on MY_MPM and
-# MY_CONF
-apache-2_src_configure() {
- tc-export PKG_CONFIG
-
- # Sanity check in case people have bad mounts/TPE settings. #500928
- if ! "${T}"/pcre-config --help >/dev/null ; then
- eerror "Could not execute ${T}/pcre-config; do you have bad mount"
- eerror "permissions in ${T} or have TPE turned on in your kernel?"
- die "check your runtime settings #500928"
- fi
-
- # Instead of filtering --as-needed (bug #128505), append --no-as-needed
- # Thanks to Harald van Dijk
- append-ldflags $(no-as-needed)
-
- # peruser MPM debugging with -X is nearly impossible
- if has peruser ${IUSE_MPMS} && use apache2_mpms_peruser ; then
- use debug && append-flags -DMPM_PERUSER_DEBUG
- fi
-
- # econf overwrites the stuff from config.layout, so we have to put them into
- # our myconf line too
- MY_CONF+=(
- --includedir="${EPREFIX}"/usr/include/apache2
- --libexecdir="${EPREFIX}"/usr/$(get_libdir)/apache2/modules
- --datadir="${EPREFIX}"/var/www/localhost
- --sysconfdir="${EPREFIX}"/etc/apache2
- --localstatedir="${EPREFIX}"/var
- --with-mpm=${MY_MPM}
- --with-apr="${SYSROOT}${EPREFIX}"/usr
- --with-apr-util="${SYSROOT}${EPREFIX}"/usr
- --with-pcre="${T}"/pcre-config
- --with-z="${EPREFIX}"/usr
- --with-port=80
- --with-program-name=apache2
- --enable-layout=Gentoo
- )
- ac_cv_path_PKGCONFIG=${PKG_CONFIG} \
- econf "${MY_CONF[@]}"
-
- sed -i -e 's:apache2\.conf:httpd.conf:' include/ap_config_auto.h || die
-}
-
-# @FUNCTION: apache-2_src_install
-# @DESCRIPTION:
-# This function runs `emake install' and generates, installs and adapts the gentoo
-# specific configuration files found in the tarball
-apache-2_src_install() {
- emake DESTDIR="${D}" MKINSTALLDIRS="mkdir -p" install
-
- # install our configuration files
- keepdir /etc/apache2/vhosts.d
- keepdir /etc/apache2/modules.d
-
- generate_load_module
- insinto /etc/apache2
- doins -r "${GENTOO_PATCHDIR}"/conf/*
- use apache2_modules_mime_magic && doins docs/conf/magic
-
- insinto /etc/logrotate.d
- newins "${GENTOO_PATCHDIR}"/scripts/apache2-logrotate apache2
-
- # generate a sane default APACHE2_OPTS
- APACHE2_OPTS="-D DEFAULT_VHOST -D INFO"
- use doc && APACHE2_OPTS+=" -D MANUAL"
- use ssl && APACHE2_OPTS+=" -D SSL -D SSL_DEFAULT_VHOST"
- use suexec && APACHE2_OPTS+=" -D SUEXEC"
- if has negotiation ${APACHE2_MODULES} && use apache2_modules_negotiation; then
- APACHE2_OPTS+=" -D LANGUAGE"
- fi
-
- sed -i -e "s:APACHE2_OPTS=\".*\":APACHE2_OPTS=\"${APACHE2_OPTS}\":" \
- "${GENTOO_PATCHDIR}"/init/apache2.confd || die
-
- newconfd "${GENTOO_PATCHDIR}"/init/apache2.confd apache2
- newinitd "${GENTOO_PATCHDIR}"/init/apache2.initd apache2
-
- # install apache2ctl wrapper for our init script if available
- if test -e "${GENTOO_PATCHDIR}"/scripts/apache2ctl; then
- exeinto /usr/sbin
- doexe "${GENTOO_PATCHDIR}"/scripts/apache2ctl
- else
- dosym /etc/init.d/apache2 /usr/sbin/apache2ctl
- fi
-
- # provide legacy symlink for apxs, bug 177697
- dosym apxs /usr/sbin/apxs2
-
- # install some documentation
- dodoc ABOUT_APACHE CHANGES LAYOUT README README.platforms VERSIONING
- dodoc "${GENTOO_PATCHDIR}"/docs/*
-
- # drop in a convenient link to the manual
- if use doc ; then
- sed -i -e "s:VERSION:${PVR}:" "${ED%/}/etc/apache2/modules.d/00_apache_manual.conf"
- docompress -x /usr/share/doc/${PF}/manual # 503640
- else
- rm -f "${ED%/}/etc/apache2/modules.d/00_apache_manual.conf"
- rm -Rf "${ED%/}/usr/share/doc/${PF}/manual"
- fi
-
- # the default icons and error pages get stored in
- # /usr/share/apache2/{error,icons}
- dodir /usr/share/apache2
- mv -f "${ED%/}/var/www/localhost/error" "${ED%/}/usr/share/apache2/error"
- mv -f "${ED%/}/var/www/localhost/icons" "${ED%/}/usr/share/apache2/icons"
- rm -rf "${ED%/}/var/www/localhost/"
- eend $?
-
- # set some sane permissions for suexec
- if use suexec ; then
- local needs_adjustment="$(ver_test ${PV} -ge 2.4.34 && { { ! use suexec-syslog || ! use suexec-caps ; } && echo true || echo false ; } || echo true)"
- if ${needs_adjustment} ; then
- fowners 0:${SUEXEC_CALLER:-apache} /usr/sbin/suexec
- fperms 4710 /usr/sbin/suexec
- # provide legacy symlink for suexec, bug 177697
- dosym /usr/sbin/suexec /usr/sbin/suexec2
- fi
- fi
-
- # empty dirs
- for i in /var/lib/dav /var/log/apache2 /var/cache/apache2 ; do
- keepdir ${i}
- fowners apache:apache ${i}
- fperms 0750 ${i}
- done
-}
-
-# @FUNCTION: apache-2_pkg_postinst
-# @DESCRIPTION:
-# This function creates test certificates if SSL is enabled and installs the
-# default index.html to /var/www/localhost if it does not exist. We do this here
-# because the default webroot is a copy of the files that exist elsewhere and we
-# don't want them to be managed/removed by portage when apache is upgraded.
-apache-2_pkg_postinst() {
- if use ssl && [[ ! -e "${EROOT}/etc/ssl/apache2/server.pem" ]]; then
- SSL_ORGANIZATION="${SSL_ORGANIZATION:-Apache HTTP Server}"
- install_cert /etc/ssl/apache2/server
- ewarn
- ewarn "The location of SSL certificates has changed. If you are"
- ewarn "upgrading from ${CATEGORY}/${PN}-2.2.13 or earlier (or remerged"
- ewarn "*any* apache version), you might want to move your old"
- ewarn "certificates from /etc/apache2/ssl/ to /etc/ssl/apache2/ and"
- ewarn "update your config files."
- ewarn
- fi
-
- if [[ ! -e "${EROOT}/var/www/localhost" ]] ; then
- mkdir -p "${EROOT}/var/www/localhost/htdocs"
- echo "It works!
" > "${EROOT}/var/www/localhost/htdocs/index.html"
- fi
-
- echo
- elog "Attention: cgi and cgid modules are now handled via APACHE2_MODULES flags"
- elog "in make.conf. Make sure to enable those in order to compile them."
- elog "In general, you should use 'cgid' with threaded MPMs and 'cgi' otherwise."
- echo
-
-}
-
-EXPORT_FUNCTIONS pkg_setup src_prepare src_configure src_install pkg_postinst
diff --git a/eclass/base.eclass b/eclass/base.eclass
deleted file mode 100644
index 76eee973de..0000000000
--- a/eclass/base.eclass
+++ /dev/null
@@ -1,214 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# DEPRECATED
-# This eclass has been deprecated and must not be used by any new
-# ebuilds or eclasses. Replacements for particular phase functions
-# in EAPI 2+:
-#
-# base_src_unpack() - default (or unpacker_src_unpack if unpacker.eclass
-# was inherited)
-# base_src_prepare() - inherit eutils, inline:
-# epatch "${PATCHES[@]}" # if PATCHES defined as array
-# epatch ${PATCHES} # if PATCHES defined as string
-# epatch_user
-# base_src_configure() - default
-# base_src_compile() - default
-# base_src_install() - default
-# base_src_install_docs() - einstalldocs from eutils.eclass
-
-# @ECLASS: base.eclass
-# @MAINTAINER:
-# QA Team
-# @AUTHOR:
-# Original author: Dan Armak
-# @SUPPORTED_EAPIS: 0 1 2 3 4 5
-# @BLURB: The base eclass defines some default functions and variables.
-# @DESCRIPTION:
-# The base eclass defines some default functions and variables.
-
-if [[ -z ${_BASE_ECLASS} ]]; then
-_BASE_ECLASS=1
-
-inherit eutils
-
-BASE_EXPF="src_unpack src_compile src_install"
-case "${EAPI:-0}" in
- 0|1) ;;
- 2|3|4|5) BASE_EXPF+=" src_prepare src_configure" ;;
- *) die "${ECLASS}.eclass is banned in EAPI ${EAPI}";;
-esac
-
-EXPORT_FUNCTIONS ${BASE_EXPF}
-
-# @ECLASS-VARIABLE: DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Array containing documents passed to dodoc command.
-#
-# DOCS=( "${S}/doc/document.txt" "${S}/doc/doc_folder/" )
-
-# @ECLASS-VARIABLE: HTML_DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Array containing documents passed to dohtml command.
-#
-# HTML_DOCS=( "${S}/doc/document.html" "${S}/doc/html_folder/" )
-
-# @ECLASS-VARIABLE: PATCHES
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# PATCHES array variable containing all various patches to be applied.
-# This variable is expected to be defined in global scope of ebuild.
-# Make sure to specify the full path. This variable is utilised in
-# src_unpack/src_prepare phase based on EAPI.
-#
-# NOTE: if using patches folders with special file suffixes you have to
-# define one additional variable EPATCH_SUFFIX="something"
-#
-# PATCHES=( "${FILESDIR}/mypatch.patch" "${FILESDIR}/patches_folder/" )
-
-
-# @FUNCTION: base_src_unpack
-# @DESCRIPTION:
-# The base src_unpack function, which is exported.
-# Calls also src_prepare with eapi older than 2.
-base_src_unpack() {
- debug-print-function $FUNCNAME "$@"
-
- pushd "${WORKDIR}" > /dev/null
-
- if [[ $(type -t unpacker_src_unpack) == "function" ]] ; then
- unpacker_src_unpack
- elif [[ -n ${A} ]] ; then
- unpack ${A}
- fi
- has src_prepare ${BASE_EXPF} || base_src_prepare
-
- popd > /dev/null
-}
-
-# @FUNCTION: base_src_prepare
-# @DESCRIPTION:
-# The base src_prepare function, which is exported
-# EAPI is greater or equal to 2. Here the PATCHES array is evaluated.
-base_src_prepare() {
- debug-print-function $FUNCNAME "$@"
- debug-print "$FUNCNAME: PATCHES=$PATCHES"
-
- local patches_failed=0
-
- pushd "${S}" > /dev/null
- if [[ "$(declare -p PATCHES 2>/dev/null 2>&1)" == "declare -a"* ]]; then
- for x in "${PATCHES[@]}"; do
- debug-print "$FUNCNAME: applying patch from ${x}"
- if [[ -d "${x}" ]]; then
- # Use standardized names and locations with bulk patching
- # Patch directory is ${WORKDIR}/patch
- # See epatch() in eutils.eclass for more documentation
- EPATCH_SUFFIX=${EPATCH_SUFFIX:=patch}
-
- # in order to preserve normal EPATCH_SOURCE value that can
- # be used other way than with base eclass store in local
- # variable and restore later
- oldval=${EPATCH_SOURCE}
- EPATCH_SOURCE=${x}
- EPATCH_FORCE=yes
- epatch
- EPATCH_SOURCE=${oldval}
- elif [[ -f "${x}" ]]; then
- epatch "${x}"
- else
- ewarn "QA: File or directory \"${x}\" does not exist."
- ewarn "QA: Check your PATCHES array or add missing file/directory."
- patches_failed=1
- fi
- done
- [[ ${patches_failed} -eq 1 ]] && die "Some patches failed. See above messages."
- else
- for x in ${PATCHES}; do
- debug-print "$FUNCNAME: patching from ${x}"
- epatch "${x}"
- done
- fi
-
- # Apply user patches
- debug-print "$FUNCNAME: applying user patches"
- epatch_user
-
- popd > /dev/null
-}
-
-# @FUNCTION: base_src_configure
-# @DESCRIPTION:
-# The base src_configure function, which is exported when
-# EAPI is greater or equal to 2. Runs basic econf.
-base_src_configure() {
- debug-print-function $FUNCNAME "$@"
-
- # there is no pushd ${S} so we can override its place where to run
- [[ -x ${ECONF_SOURCE:-.}/configure ]] && econf "$@"
-}
-
-# @FUNCTION: base_src_compile
-# @DESCRIPTION:
-# The base src_compile function, calls src_configure with
-# EAPI older than 2.
-base_src_compile() {
- debug-print-function $FUNCNAME "$@"
-
- has src_configure ${BASE_EXPF} || base_src_configure
- base_src_make "$@"
-}
-
-# @FUNCTION: base_src_make
-# @DESCRIPTION:
-# Actual function that runs emake command.
-base_src_make() {
- debug-print-function $FUNCNAME "$@"
-
- if [[ -f Makefile || -f GNUmakefile || -f makefile ]]; then
- emake "$@" || die "died running emake, $FUNCNAME"
- fi
-}
-
-# @FUNCTION: base_src_install
-# @DESCRIPTION:
-# The base src_install function. Runs make install and
-# installs documents and html documents from DOCS and HTML_DOCS
-# arrays.
-base_src_install() {
- debug-print-function $FUNCNAME "$@"
-
- emake DESTDIR="${D}" "$@" install || die "died running make install, $FUNCNAME"
- base_src_install_docs
-}
-
-# @FUNCTION: base_src_install_docs
-# @DESCRIPTION:
-# Actual function that install documentation from
-# DOCS and HTML_DOCS arrays.
-base_src_install_docs() {
- debug-print-function $FUNCNAME "$@"
-
- local x
-
- pushd "${S}" > /dev/null
-
- if [[ "$(declare -p DOCS 2>/dev/null 2>&1)" == "declare -a"* ]]; then
- for x in "${DOCS[@]}"; do
- debug-print "$FUNCNAME: docs: creating document from ${x}"
- dodoc "${x}" || die "dodoc failed"
- done
- fi
- if [[ "$(declare -p HTML_DOCS 2>/dev/null 2>&1)" == "declare -a"* ]]; then
- for x in "${HTML_DOCS[@]}"; do
- debug-print "$FUNCNAME: docs: creating html document from ${x}"
- dohtml -r "${x}" || die "dohtml failed"
- done
- fi
-
- popd > /dev/null
-}
-
-fi
diff --git a/eclass/cannadic.eclass b/eclass/cannadic.eclass
deleted file mode 100644
index 7392d5ce6a..0000000000
--- a/eclass/cannadic.eclass
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: cannadic.eclass
-# @MAINTAINER:
-# cjk@gentoo.org
-# @AUTHOR:
-# Mamoru KOMACHI
-# @BLURB: Function for Canna compatible dictionaries
-# @DESCRIPTION:
-# The cannadic eclass is used for installation and setup of Canna
-# compatible dictionaries within the Portage system.
-
-inherit eutils
-
-EXPORT_FUNCTIONS pkg_setup pkg_postinst pkg_postrm src_install
-
-HOMEPAGE="http://canna.osdn.jp/" # you need to change this!
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-DICSDIRFILE="${FILESDIR}/*.dics.dir"
-CANNADICS="${CANNADICS}" # (optional)
-
-# You don't need to modify these
-CANNADIC_CANNA_DIR="${EROOT:-${ROOT}}"var/lib/canna/dic/canna
-CANNADIC_DICS_DIR="${EROOT:-${ROOT}}"var/lib/canna/dic/dics.d
-readonly CANNADIC_CANNA_DIR CANNADIC_DICS_DIR
-
-# @FUNCTION: cannadic_pkg_setup
-# @DESCRIPTION:
-# Sets up ${CANNADIC_CANNA_DIR}
-cannadic_pkg_setup() {
- keepdir "${CANNADIC_CANNA_DIR}"
- fowners bin:bin "${CANNADIC_CANNA_DIR}"
- fperms 0775 "${CANNADIC_CANNA_DIR}"
-}
-
-# @FUNCTION: cannadic-install
-# @DESCRIPTION:
-# Installs dictionaries to ${CANNADIC_CANNA_DIR}
-cannadic-install() {
- insinto "${CANNADIC_CANNA_DIR}"
- insopts -m 0664 -o bin -g bin
- doins "${@}"
-}
-
-# @FUNCTION: dicsdir-install
-# @DESCRIPTION:
-# Installs dics.dir from ${DICSDIRFILE}
-dicsdir-install() {
- insinto "${CANNADIC_DICS_DIR}"
- doins "${DICSDIRFILE}"
-}
-
-# @FUNCTION: cannadic_src_install
-# @DESCRIPTION:
-# Installs all dictionaries under ${WORKDIR}
-# plus dics.dir and docs
-cannadic_src_install() {
- local f
- for f in *.c[btl]d *.t; do
- if [[ -s "${f}" ]]; then
- cannadic-install "${f}"
- fi
- done 2> /dev/null
-
- dicsdir-install || die
-
- einstalldocs
-}
-
-# @FUNCTION: update-cannadic-dir
-# @DESCRIPTION:
-# Updates dics.dir for Canna Server, script for this part taken from Debian GNU/Linux
-#
-# compiles dics.dir files for Canna Server
-# Copyright 2001 ISHIKAWA Mutsumi
-# Licensed under the GNU General Public License, version 2. See the file
-# /usr/portage/license/GPL-2 or .
-update-cannadic-dir() {
- einfo
- einfo "Updating dics.dir for Canna ..."
- einfo
-
- # write new dics.dir file in case we are interrupted
- cat <<-EOF > "${CANNADIC_CANNA_DIR}"/dics.dir.update-new
- # dics.dir -- automatically generated file by Portage.
- # DO NOT EDIT BY HAND.
- EOF
-
- local f
- for f in "${CANNADIC_DICS_DIR}"/*.dics.dir; do
- echo "# ${f}" >> "${CANNADIC_CANNA_DIR}"/dics.dir.update-new
- cat "${f}" >> "${CANNADIC_CANNA_DIR}"/dics.dir.update-new
- einfo "Added ${f}."
- done
-
- mv "${CANNADIC_CANNA_DIR}"/dics.dir.update-new "${CANNADIC_CANNA_DIR}"/dics.dir
-
- einfo
- einfo "Done."
- einfo
-}
-
-# @FUNCTION: cannadic_pkg_postinst
-# @DESCRIPTION:
-# Updates dics.dir and print out notice after install
-cannadic_pkg_postinst() {
- update-cannadic-dir
-
- einfo
- einfo "Please restart cannaserver to fit the changes."
- einfo "You need to modify your config file (~/.canna) to enable dictionaries."
-
- if [[ -n "${CANNADICS}" ]]; then
- einfo "e.g) add $(for d in ${CANNADICS}; do echo -n "\"${d}\" "; done)to section use-dictionary()."
- einfo "For details, see documents under /usr/share/doc/${PF}."
- fi
-
- einfo "If you do not have ~/.canna, you can find sample files in /usr/share/canna."
- ewarn "If you are upgrading from existing dictionary, you may need to recreate"
- ewarn "user dictionary if you have one."
- einfo
-}
-
-# @FUNCTION: cannadic_pkg_postrm
-# @DESCRIPTION:
-# Updates dics.dir and print out notice after uninstall
-cannadic_pkg_postrm() {
- update-cannadic-dir
-
- einfo
- einfo "Please restart cannaserver to fit changes."
- einfo "and modify your config file (~/.canna) to disable dictionary."
-
- if [[ -n "${CANNADICS}" ]]; then
- einfo "e.g) delete $(for d in ${CANNADICS}; do echo -n "\"${d}\" "; done)from section use-dictionary()."
- fi
-
- einfo
-}
diff --git a/eclass/cdrom.eclass b/eclass/cdrom.eclass
deleted file mode 100644
index 7b0eb9c6c3..0000000000
--- a/eclass/cdrom.eclass
+++ /dev/null
@@ -1,308 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: cdrom.eclass
-# @MAINTAINER:
-# games@gentoo.org
-# @BLURB: Functions for CD-ROM handling
-# @DESCRIPTION:
-# Acquire CD(s) for those lovely CD-based emerges. Yes, this violates
-# the whole "non-interactive" policy, but damnit I want CD support!
-#
-# Do not call these functions in pkg_* phases like pkg_setup as they
-# should not be used for binary packages. Most packages using this
-# eclass will require RESTRICT="bindist" but the point still stands.
-# The functions are generally called in src_unpack.
-
-if [[ -z ${_CDROM_ECLASS} ]]; then
-_CDROM_ECLASS=1
-
-inherit portability
-
-# @ECLASS-VARIABLE: CDROM_OPTIONAL
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# By default, the eclass sets PROPERTIES="interactive" on the assumption
-# that people will be using these. If your package optionally supports
-# disc-based installs then set this to "yes" and we'll set things
-# conditionally based on USE="cdinstall".
-if [[ ${CDROM_OPTIONAL} == "yes" ]] ; then
- IUSE="cdinstall"
- PROPERTIES="cdinstall? ( interactive )"
-else
- PROPERTIES="interactive"
-fi
-
-# @FUNCTION: cdrom_get_cds
-# @USAGE: [:alt cd1 file] [cd2 file[:alt cd2 file]] [...]
-# @DESCRIPTION:
-# Attempt to locate a CD based upon a file that is on the CD.
-#
-# If the data spans multiple discs then additional arguments can be
-# given to check for more files. Call cdrom_load_next_cd() to scan for
-# the next disc in the set.
-#
-# Sometimes it is necessary to support alternative CD "sets" where the
-# contents differ. Alternative files for each disc can be appended to
-# each argument, separated by the : character. This feature is
-# frequently used to support installing from an existing installation.
-# Note that after the first disc is detected, the set is locked so
-# cdrom_load_next_cd() will only scan for files in that specific set on
-# subsequent discs.
-#
-# The given files can be within named subdirectories. It is not
-# necessary to specify different casings of the same filename as
-# matching is done case-insensitively. Filenames can include special
-# characters such as spaces. Only : is not allowed.
-#
-# If you don't want each disc to be referred to as "CD #1", "CD #2",
-# etc. then you can optionally provide your own names. Set CDROM_NAME
-# for a single disc, CDROM_NAMES as an array for multiple discs, or
-# individual CDROM_NAME_# variables for each disc starting from 1.
-#
-# Despite what you may have seen in older ebuilds, it has never been
-# possible to provide per-set disc names. This would not make sense as
-# all the names are initially displayed before the first disc has been
-# detected. As a workaround, you can redefine the name variable(s)
-# after the first disc has been detected.
-#
-# This function ends with a cdrom_load_next_cd() call to scan for the
-# first disc. For more details about variables read and written by this
-# eclass, see that function's description.
-cdrom_get_cds() {
- unset CDROM_SET
- export CDROM_CURRENT_CD=0
- export CDROM_NUM_CDS="${#}"
- local i
- for i in $(seq ${#}); do
- export CDROM_CHECK_${i}="${!i}"
- done
-
- # If the user has set CD_ROOT or CD_ROOT_1, don't bother informing
- # them about which discs are needed as they presumably already know.
- if [[ -n ${CD_ROOT}${CD_ROOT_1} ]] ; then
- :
-
- # Single disc info.
- elif [[ ${#} -eq 1 ]] ; then
- einfo "This ebuild will need the ${CDROM_NAME:-CD for ${PN}}"
- echo
- einfo "If you do not have the CD, but have the data files"
- einfo "mounted somewhere on your filesystem, just export"
- einfo "the variable CD_ROOT so that it points to the"
- einfo "directory containing the files."
- echo
- einfo "For example:"
- einfo "export CD_ROOT=/mnt/cdrom"
- echo
-
- # Multi disc info.
- else
- _cdrom_set_names
- einfo "This package may need access to ${#} CDs."
- local cdcnt
- for cdcnt in $(seq ${#}); do
- local var=CDROM_NAME_${cdcnt}
- [[ ! -z ${!var} ]] && einfo " CD ${cdcnt}: ${!var}"
- done
- echo
- einfo "If you do not have the CDs, but have the data files"
- einfo "mounted somewhere on your filesystem, just export"
- einfo "the following variables so they point to the right place:"
- einfo $(printf "CD_ROOT_%d " $(seq ${#}))
- echo
- einfo "Or, if you have all the files in the same place, or"
- einfo "you only have one CD, you can export CD_ROOT"
- einfo "and that place will be used as the same data source"
- einfo "for all the CDs."
- echo
- einfo "For example:"
- einfo "export CD_ROOT=/mnt/cdrom"
- echo
- fi
-
- # Scan for the first disc.
- cdrom_load_next_cd
-}
-
-# @FUNCTION: cdrom_load_next_cd
-# @DESCRIPTION:
-# If multiple arguments were given to cdrom_get_cds() then you can call
-# this function to scan for the next disc. This function is also called
-# implicitly to scan for the first disc.
-#
-# The file(s) given to cdrom_get_cds() are scanned for on any mounted
-# filesystem that resembles optical media. If no match is found then
-# the user is prompted to insert and mount the disc and press enter to
-# rescan. This will loop continuously until a match is found or the
-# user aborts with Ctrl+C.
-#
-# The user can override the scan location by setting CD_ROOT for a
-# single disc, CD_ROOT if multiple discs are merged into the same
-# directory tree (useful for existing installations), or individual
-# CD_ROOT_# variables for each disc starting from 1. If no match is
-# found then the function dies with an error as a rescan will not help
-# in this instance.
-#
-# Users wanting to set CD_ROOT or CD_ROOT_# for specific packages
-# persistently can do so using Portage's /etc/portage/env feature.
-#
-# Regardless of which scanning method is used, several variables are set
-# by this function for you to use:
-#
-# CDROM_ROOT: Root path of the detected disc.
-# CDROM_MATCH: Path of the matched file, relative to CDROM_ROOT.
-# CDROM_ABSMATCH: Absolute path of the matched file.
-# CDROM_SET: The matching set number, starting from 0.
-#
-# The casing of CDROM_MATCH may not be the same as the argument given to
-# cdrom_get_cds() as matching is done case-insensitively. You should
-# therefore use this variable (or CDROM_ABSMATCH) when performing file
-# operations to ensure the file is found. Use newins rather than doins
-# to keep the final result consistent and take advantage of Bash
-# case-conversion features like ${FOO,,}.
-#
-# Chances are that you'll need more than just the matched file from each
-# disc though. You should not assume the casing of these files either
-# but dealing with this goes beyond the scope of this ebuild. For a
-# good example, see games-action/descent2-data, which combines advanced
-# globbing with advanced tar features to concisely deal with
-# case-insensitive matching, case conversion, file moves, and
-# conditional exclusion.
-#
-# Copying directly from a mounted disc using doins/newins will remove
-# any read-only permissions but be aware of these when copying to an
-# intermediate directory first. Attempting to clean a build directory
-# containing read-only files as a non-root user will result in an error.
-# If you're using tar as suggested above then you can easily work around
-# this with --mode=u+w.
-#
-# Note that you can only go forwards in the disc list, so make sure you
-# only call this function when you're done using the current disc.
-#
-# If you cd to any location within CDROM_ROOT then remember to leave the
-# directory before calling this function again, otherwise the user won't
-# be able to unmount the current disc.
-cdrom_load_next_cd() {
- local showedmsg=0 showjolietmsg=0
-
- unset CDROM_ROOT
- ((++CDROM_CURRENT_CD))
-
- _cdrom_set_names
-
- while true ; do
- local i cdset
- : CD_ROOT_${CDROM_CURRENT_CD}
- export CDROM_ROOT=${CD_ROOT:-${!_}}
- local var="CDROM_CHECK_${CDROM_CURRENT_CD}"
- IFS=: read -r -a cdset -d "" <<< "${!var}"
-
- for i in $(seq ${CDROM_SET:-0} ${CDROM_SET:-$((${#cdset[@]} - 1))}); do
- local f=${cdset[${i}]} point= node= fs= opts=
-
- if [[ -z ${CDROM_ROOT} ]] ; then
- while read point node fs opts ; do
- has "${fs}" cd9660 iso9660 udf || continue
- point=${point//\040/ }
- export CDROM_MATCH=$(_cdrom_glob_match "${point}" "${f}")
- [[ -z ${CDROM_MATCH} ]] && continue
- export CDROM_ROOT=${point}
- done <<< "$(get_mounts)"
- else
- export CDROM_MATCH=$(_cdrom_glob_match "${CDROM_ROOT}" "${f}")
- fi
-
- if [[ -n ${CDROM_MATCH} ]] ; then
- export CDROM_ABSMATCH=${CDROM_ROOT}/${CDROM_MATCH}
- export CDROM_SET=${i}
- break 2
- fi
- done
-
- # If we get here then we were unable to locate a match. If
- # CDROM_ROOT is non-empty then this implies that a CD_ROOT
- # variable was given and we should therefore abort immediately.
- if [[ -n ${CDROM_ROOT} ]] ; then
- die "unable to locate CD #${CDROM_CURRENT_CD} root at ${CDROM_ROOT}"
- fi
-
- if [[ ${showedmsg} -eq 0 ]] ; then
- if [[ ${CDROM_NUM_CDS} -eq 1 ]] ; then
- einfo "Please insert+mount the ${CDROM_NAME:-CD for ${PN}} now !"
- else
- local var="CDROM_NAME_${CDROM_CURRENT_CD}"
- if [[ -z ${!var} ]] ; then
- einfo "Please insert+mount CD #${CDROM_CURRENT_CD} for ${PN} now !"
- else
- einfo "Please insert+mount the ${!var} now !"
- fi
- fi
- showedmsg=1
- fi
-
- einfo "Press return to scan for the CD again"
- einfo "or hit CTRL+C to abort the emerge."
-
- if [[ ${showjolietmsg} -eq 0 ]] ; then
- showjolietmsg=1
- else
- echo
- ewarn "If you are having trouble with the detection"
- ewarn "of your CD, it is possible that you do not have"
- ewarn "Joliet support enabled in your kernel. Please"
- ewarn "check that CONFIG_JOLIET is enabled in your kernel."
- fi
- read || die "something is screwed with your system"
- done
-
- einfo "Found CD #${CDROM_CURRENT_CD} root at ${CDROM_ROOT}"
-}
-
-# @FUNCTION: _cdrom_glob_match
-# @USAGE:
-# @INTERNAL
-# @DESCRIPTION:
-# Locates the given path ($2) within the given root directory ($1)
-# case-insensitively and returns the first actual matching path. This
-# eclass previously used "find -iname" but it only checked the file
-# case-insensitively and not the directories. There is "find -ipath"
-# but this does not intelligently skip non-matching paths, making it
-# slow. Case-insensitive matching can only be applied to patterns so
-# extended globbing is used to turn regular strings into patterns. All
-# special characters are escaped so don't worry about breaking this.
-_cdrom_glob_match() {
- # The following line turns this:
- # foo*foo/bar bar/baz/file.zip
- #
- # Into this:
- # ?(foo\*foo)/?(bar\ bar)/?(baz)/?(file\.zip)
- #
- # This turns every path component into an escaped extended glob
- # pattern to allow case-insensitive matching. Globs cannot span
- # directories so each component becomes an individual pattern.
- local p=\?\($(sed -e 's:[^A-Za-z0-9/]:\\\0:g' -e 's:/:)/?(:g' <<< "$2" || die)\)
- (
- cd "$1" 2>/dev/null || return
- shopt -s extglob nocaseglob nullglob || die
- # The first person to make this work without an eval wins a
- # cookie. It breaks without it when spaces are present.
- eval "ARRAY=( ${p%\?()} )"
- echo ${ARRAY[0]}
- )
-}
-
-# @FUNCTION: _cdrom_set_names
-# @INTERNAL
-# @DESCRIPTION:
-# Populate CDROM_NAME_# variables with the CDROM_NAMES array.
-_cdrom_set_names() {
- if [[ -n ${CDROM_NAMES} ]] ; then
- local i
- for i in $(seq ${#CDROM_NAMES[@]}); do
- export CDROM_NAME_${i}="${CDROM_NAMES[$((${i} - 1))]}"
- done
- fi
-}
-
-fi
diff --git a/eclass/common-lisp-3.eclass b/eclass/common-lisp-3.eclass
deleted file mode 100644
index ae22949102..0000000000
--- a/eclass/common-lisp-3.eclass
+++ /dev/null
@@ -1,234 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: common-lisp-3.eclass
-# @MAINTAINER:
-# Common Lisp project
-# @BLURB: functions to support the installation of Common Lisp libraries
-# @DESCRIPTION:
-# Since Common Lisp libraries share similar structure, this eclass aims
-# to provide a simple way to write ebuilds with these characteristics.
-
-inherit eutils
-
-# @ECLASS-VARIABLE: CLIMPLEMENTATIONS
-# @DESCRIPTION:
-# Common Lisp implementations
-CLIMPLEMENTATIONS="sbcl clisp clozurecl cmucl ecls gcl abcl"
-
-# @ECLASS-VARIABLE: CLSOURCEROOT
-# @DESCRIPTION:
-# Default path of Common Lisp libraries sources. Sources will
-# be installed into ${CLSOURCEROOT}/${CLPACKAGE}.
-CLSOURCEROOT="${ROOT%/}"/usr/share/common-lisp/source
-
-# @ECLASS-VARIABLE: CLSYSTEMROOT
-# @DESCRIPTION:
-# Default path to find any asdf file. Any asdf files will be
-# symlinked in ${CLSYSTEMROOT}/${CLSYSTEM} as they may be in
-# an arbitrarily deeply nested directory under ${CLSOURCEROOT}/${CLPACKAGE}.
-CLSYSTEMROOT="${ROOT%/}"/usr/share/common-lisp/systems
-
-# @ECLASS-VARIABLE: CLPACKAGE
-# @DESCRIPTION:
-# Default package name. To override, set these after inheriting this eclass.
-CLPACKAGE="${PN}"
-
-PDEPEND="virtual/commonlisp"
-
-EXPORT_FUNCTIONS src_compile src_install
-
-# @FUNCTION: common-lisp-3_src_compile
-# @DESCRIPTION:
-# Since there's nothing to build in most cases, default doesn't do
-# anything.
-common-lisp-3_src_compile() {
- true;
-}
-
-# @FUNCTION: absolute-path-p
-# @DESCRIPTION:
-# Returns true if ${1} is an absolute path.
-absolute-path-p() {
- [[ $# -eq 1 ]] || die "${FUNCNAME[0]} must receive one argument"
- [[ ${1} == /* ]]
-}
-
-# @FUNCTION: common-lisp-install-one-source
-# @DESCRIPTION:
-# Installs ${2} source file in ${3} inside CLSOURCEROOT/CLPACKAGE.
-common-lisp-install-one-source() {
- [[ $# -eq 3 ]] || die "${FUNCNAME[0]} must receive exactly three arguments"
-
- local fpredicate=${1}
- local source=${2}
- local target="${CLSOURCEROOT}/${CLPACKAGE}/${3}"
-
- if absolute-path-p "${source}" ; then
- die "Cannot install files with absolute path: ${source}"
- fi
-
- if ${fpredicate} "${source}" ; then
- insinto "${target}"
- doins "${source}" || die "Failed to install ${source} into $(dirname "${target}")"
- fi
-}
-
-# @FUNCTION: lisp-file-p
-# @DESCRIPTION:
-# Returns true if ${1} is lisp source file.
-lisp-file-p() {
- [[ $# -eq 1 ]] || die "${FUNCNAME[0]} must receive one argument"
-
- [[ ${1} =~ \.(lisp|lsp|cl)$ ]]
-}
-
-# @FUNCTION: common-lisp-get-fpredicate
-# @DESCRIPTION:
-# Outputs the corresponding predicate to check files of type ${1}.
-common-lisp-get-fpredicate() {
- [[ $# -eq 1 ]] || die "${FUNCNAME[0]} must receive one argument"
-
- local ftype=${1}
- case ${ftype} in
- "lisp") echo "lisp-file-p" ;;
- "all" ) echo "true" ;;
- * ) die "Unknown filetype specifier ${ftype}" ;;
- esac
-}
-
-# @FUNCTION: common-lisp-install-sources
-# @USAGE: common-lisp-install-sources path [...]
-# @DESCRIPTION:
-# Recursively install lisp sources of type ${2} if ${1} is -t or
-# Lisp by default. When given a directory, it will be recursively
-# scanned for Lisp source files with suffixes: .lisp, .lsp or .cl.
-common-lisp-install-sources() {
- local ftype="lisp"
- if [[ ${1} == "-t" ]] ; then
- ftype=${2}
- shift ; shift
- fi
-
- [[ $# -ge 1 ]] || die "${FUNCNAME[0]} must receive one non-option argument"
-
- local fpredicate=$(common-lisp-get-fpredicate "${ftype}")
-
- for path in "${@}" ; do
- if [[ -f ${path} ]] ; then
- common-lisp-install-one-source ${fpredicate} "${path}" "$(dirname "${path}")"
- elif [[ -d ${path} ]] ; then
- common-lisp-install-sources -t ${ftype} $(find "${path}" -type f)
- else
- die "${path} is neither a regular file nor a directory"
- fi
- done
-}
-
-# @FUNCTION: common-lisp-install-one-asdf
-# @DESCRIPTION:
-# Installs ${1} asdf file in CLSOURCEROOT/CLPACKAGE and symlinks it in
-# CLSYSTEMROOT.
-common-lisp-install-one-asdf() {
- [[ $# != 1 ]] && die "${FUNCNAME[0]} must receive exactly one argument"
-
- # the suffix «.asd» is optional
- local source=${1/.asd}.asd
- common-lisp-install-one-source true "${source}" "$(dirname "${source}")"
- local target="${CLSOURCEROOT%/}/${CLPACKAGE}/${source}"
- dosym "${target}" "${CLSYSTEMROOT%/}/$(basename ${target})"
-}
-
-# @FUNCTION: common-lisp-install-asdf
-# @USAGE: common-lisp-install-asdf path [...]
-# @DESCRIPTION:
-# Installs all ASDF files and creates symlinks in CLSYSTEMROOT.
-# When given a directory, it will be recursively scanned for ASDF
-# files with extension .asd.
-common-lisp-install-asdf() {
- dodir "${CLSYSTEMROOT}"
-
- [[ $# = 0 ]] && set - ${CLSYSTEMS}
- [[ $# = 0 ]] && set - $(find . -type f -name \*.asd)
- for sys in "${@}" ; do
- common-lisp-install-one-asdf ${sys}
- done
-}
-
-# @FUNCTION: common-lisp-3_src_install
-# @DESCRIPTION:
-# Recursively install Lisp sources, asdf files and most common doc files.
-common-lisp-3_src_install() {
- common-lisp-install-sources .
- common-lisp-install-asdf
- for i in AUTHORS README* HEADER TODO* CHANGELOG Change[lL]og CHANGES BUGS CONTRIBUTORS *NEWS* ; do
- [[ -f ${i} ]] && dodoc ${i}
- done
-}
-
-# @FUNCTION: common-lisp-find-lisp-impl
-# @USAGE: common-lisp-find-lisp-impl
-# @DESCRIPTION:
-# Outputs an installed Common Lisp implementation. Transverses
-# CLIMPLEMENTATIONS to find it.
-common-lisp-find-lisp-impl() {
- for lisp in ${CLIMPLEMENTATIONS} ; do
- [[ "$(best_version dev-lisp/${lisp})" ]] && echo "${lisp}" && return
- done
- die "No CommonLisp implementation found"
-}
-
-# @FUNCTION: common-lisp-export-impl-args
-# @USAGE: common-lisp-export-impl-args
-# @DESCRIPTION:
-# Export a few variables containing the switches necessary
-# to make the CL implementation perform basic functions:
-# * CL_BINARY: Common Lisp implementation
-# * CL_NORC: don't load syste-wide or user-specific initfiles
-# * CL_LOAD: load a certain file
-# * CL_EVAL: eval a certain expression at startup
-common-lisp-export-impl-args() {
- if [[ $# != 1 ]]; then
- eerror "Usage: ${FUNCNAME[0]} lisp-implementation"
- die "${FUNCNAME[0]}: wrong number of arguments: $#"
- fi
- CL_BINARY="${1}"
- case "${CL_BINARY}" in
- sbcl)
- CL_NORC="--sysinit /dev/null --userinit /dev/null"
- CL_LOAD="--load"
- CL_EVAL="--eval"
- ;;
- clisp)
- CL_NORC="-norc"
- CL_LOAD="-i"
- CL_EVAL="-x"
- ;;
- clozure | clozurecl | ccl | openmcl)
- CL_BINARY="ccl"
- CL_NORC="--no-init"
- CL_LOAD="--load"
- CL_EVAL="--eval"
- ;;
- cmucl)
- CL_NORC="-nositeinit -noinit"
- CL_LOAD="-load"
- CL_EVAL="-eval"
- ;;
- ecl | ecls)
- CL_BINARY="ecl"
- CL_NORC="-norc"
- CL_LOAD="-load"
- CL_EVAL="-eval"
- ;;
- abcl)
- CL_NORC="--noinit"
- CL_LOAD="--load"
- CL_EVAL="--eval"
- ;;
- *)
- die "${CL_BINARY} is not supported by ${0}"
- ;;
- esac
- export CL_BINARY CL_NORC CL_LOAD CL_EVAL
-}
diff --git a/eclass/cvs.eclass b/eclass/cvs.eclass
deleted file mode 100644
index e2121f4724..0000000000
--- a/eclass/cvs.eclass
+++ /dev/null
@@ -1,582 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: cvs.eclass
-# @MAINTAINER:
-# vapier@gentoo.org (and anyone who wants to help)
-# @BLURB: This eclass provides generic cvs fetching functions
-# @DESCRIPTION:
-# This eclass provides the generic cvs fetching functions. To use this from an
-# ebuild, set the ECLASS VARIABLES as specified below in your ebuild before
-# inheriting. Then either leave the default src_unpack or extend over
-# cvs_src_unpack. If you find that you need to call the cvs_* functions
-# directly, I'd be interested to hear about it.
-
-if [[ -z ${_CVS_ECLASS} ]]; then
-_CVS_ECLASS=1
-
-inherit eutils
-
-# TODO:
-
-# Implement more auth types (gserver?, kserver?)
-
-# Support additional remote shells with `ext' authentication (does
-# anyone actually need to use it with anything other than SSH?)
-
-
-# Users shouldn't change these settings! The ebuild/eclass inheriting
-# this eclass will take care of that. If you want to set the global
-# KDE cvs ebuilds' settings, see the comments in kde-source.eclass.
-
-# @ECLASS-VARIABLE: ECVS_CVS_COMPRESS
-# @DESCRIPTION:
-# Set the default compression level. Has no effect when ECVS_CVS_COMMAND
-# is defined by ebuild/user.
-: ${ECVS_CVS_COMPRESS:=-z1}
-
-# @ECLASS-VARIABLE: ECVS_CVS_OPTIONS
-# @DESCRIPTION:
-# Additional options to the cvs commands. Has no effect when ECVS_CVS_COMMAND
-# is defined by ebuild/user.
-: ${ECVS_CVS_OPTIONS:=-q -f}
-
-# @ECLASS-VARIABLE: ECVS_CVS_COMMAND
-# @DESCRIPTION:
-# CVS command to run
-#
-# You can set, for example, "cvs -t" for extensive debug information
-# on the cvs connection. The default of "cvs -q -f -z4" means to be
-# quiet, to disregard the ~/.cvsrc config file and to use maximum
-# compression.
-: ${ECVS_CVS_COMMAND:=cvs ${ECVS_CVS_OPTIONS} ${ECVS_CVS_COMPRESS}}
-
-# @ECLASS-VARIABLE: ECVS_UP_OPTS
-# @DESCRIPTION:
-# CVS options given after the cvs update command. Don't remove "-dP" or things
-# won't work.
-: ${ECVS_UP_OPTS:=-dP}
-
-# @ECLASS-VARIABLE: ECVS_CO_OPTS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# CVS options given after the cvs checkout command.
-
-# @ECLASS-VARIABLE: ECVS_OFFLINE
-# @DESCRIPTION:
-# Set this variable to a non-empty value to disable the automatic updating of
-# a CVS source tree. This is intended to be set outside the cvs source
-# tree by users.
-: ${ECVS_OFFLINE:=${EVCS_OFFLINE}}
-
-# @ECLASS-VARIABLE: ECVS_LOCAL
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# If this is set, the CVS module will be fetched non-recursively.
-# Refer to the information in the CVS man page regarding the -l
-# command option (not the -l global option).
-
-# @ECLASS-VARIABLE: ECVS_LOCALNAME
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Local name of checkout directory
-#
-# This is useful if the module on the server is called something
-# common like 'driver' or is nested deep in a tree, and you don't like
-# useless empty directories.
-#
-# WARNING: Set this only from within ebuilds! If set in your shell or
-# some such, things will break because the ebuild won't expect it and
-# have e.g. a wrong $S setting.
-
-# @ECLASS-VARIABLE: ECVS_TOP_DIR
-# @DESCRIPTION:
-# The directory under which CVS modules are checked out.
-: ${ECVS_TOP_DIR:="${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}/cvs-src"}
-
-# @ECLASS-VARIABLE: ECVS_SERVER
-# @DESCRIPTION:
-# CVS path
-#
-# The format is "server:/dir", e.g. "anoncvs.kde.org:/home/kde".
-# Remove the other parts of the full CVSROOT, which might look like
-# ":pserver:anonymous@anoncvs.kde.org:/home/kde"; this is generated
-# using other settings also.
-#
-# Set this to "offline" to disable fetching (i.e. to assume the module
-# is already checked out in ECVS_TOP_DIR).
-: ${ECVS_SERVER:="offline"}
-
-# @ECLASS-VARIABLE: ECVS_MODULE
-# @REQUIRED
-# @DESCRIPTION:
-# The name of the CVS module to be fetched
-#
-# This must be set when cvs_src_unpack is called. This can include
-# several directory levels, i.e. "foo/bar/baz"
-#[[ -z ${ECVS_MODULE} ]] && die "$ECLASS: error: ECVS_MODULE not set, cannot continue"
-
-# @ECLASS-VARIABLE: ECVS_DATE
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# The date of the checkout. See the -D date_spec option in the cvs
-# man page for more details.
-
-# @ECLASS-VARIABLE: ECVS_BRANCH
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# The name of the branch/tag to use
-#
-# The default is "HEAD". The following default _will_ reset your
-# branch checkout to head if used.
-#: ${ECVS_BRANCH:="HEAD"}
-
-# @ECLASS-VARIABLE: ECVS_AUTH
-# @DESCRIPTION:
-# Authentication method to use
-#
-# Possible values are "pserver" and "ext". If `ext' authentication is
-# used, the remote shell to use can be specified in CVS_RSH (SSH is
-# used by default). Currently, the only supported remote shell for
-# `ext' authentication is SSH.
-#
-# Armando Di Cianno 2004/09/27
-# - Added "no" as a server type, which uses no AUTH method, nor
-# does it login
-# e.g.
-# "cvs -danoncvs@savannah.gnu.org:/cvsroot/backbone co System"
-# ( from gnustep-apps/textedit )
-: ${ECVS_AUTH:="pserver"}
-
-# @ECLASS-VARIABLE: ECVS_USER
-# @DESCRIPTION:
-# Username to use for authentication on the remote server.
-: ${ECVS_USER:="anonymous"}
-
-# @ECLASS-VARIABLE: ECVS_PASS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Password to use for authentication on the remote server
-
-# @ECLASS-VARIABLE: ECVS_SSH_HOST_KEY
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# If SSH is used for `ext' authentication, use this variable to
-# specify the host key of the remote server. The format of the value
-# should be the same format that is used for the SSH known hosts file.
-#
-# WARNING: If a SSH host key is not specified using this variable, the
-# remote host key will not be verified.
-
-# @ECLASS-VARIABLE: ECVS_CLEAN
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Set this to get a clean copy when updating (passes the
-# -C option to cvs update)
-
-# @ECLASS-VARIABLE: ECVS_RUNAS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Specifies an alternate (non-root) user to use to run cvs. Currently
-# b0rked and wouldn't work with portage userpriv anyway without
-# special magic.
-
-# : ${ECVS_RUNAS:=$(whoami)}
-
-# add cvs to deps
-# ssh is used for ext auth
-# sudo is used to run as a specified user
-DEPEND="dev-vcs/cvs"
-
-[[ -n ${ECVS_RUNAS} ]] && DEPEND+=" app-admin/sudo"
-
-if [[ ${ECVS_AUTH} == "ext" ]] ; then
- #default to ssh
- [[ -z ${CVS_RSH} ]] && export CVS_RSH="ssh"
- if [[ ${CVS_RSH} != "ssh" ]] ; then
- die "Support for ext auth with clients other than ssh has not been implemented yet"
- fi
- DEPEND+=" net-misc/openssh"
-fi
-
-# called from cvs_src_unpack
-cvs_fetch() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
-
- # Make these options local variables so that the global values are
- # not affected by modifications in this function.
-
- local ECVS_COMMAND=${ECVS_COMMAND}
- local ECVS_UP_OPTS=${ECVS_UP_OPTS}
- local ECVS_CO_OPTS=${ECVS_CO_OPTS}
-
- debug-print-function ${FUNCNAME} "$@"
-
- # Update variables that are modified by ebuild parameters, which
- # should be effective every time cvs_fetch is called, and not just
- # every time cvs.eclass is inherited
-
- # Handle parameter for local (non-recursive) fetching
-
- if [[ -n ${ECVS_LOCAL} ]] ; then
- ECVS_UP_OPTS+=" -l"
- ECVS_CO_OPTS+=" -l"
- fi
-
- # Handle ECVS_BRANCH option
- #
- # Because CVS auto-switches branches, we just have to pass the
- # correct -rBRANCH option when updating.
-
- if [[ -n ${ECVS_BRANCH} ]] ; then
- ECVS_UP_OPTS+=" -r${ECVS_BRANCH}"
- ECVS_CO_OPTS+=" -r${ECVS_BRANCH}"
- fi
-
- # Handle ECVS_LOCALNAME, which specifies the local directory name
- # to use. Note that the -d command option is not equivalent to
- # the global -d option.
-
- if [[ ${ECVS_LOCALNAME} != "${ECVS_MODULE}" ]] ; then
- ECVS_CO_OPTS+=" -d ${ECVS_LOCALNAME}"
- fi
-
- if [[ -n ${ECVS_CLEAN} ]] ; then
- ECVS_UP_OPTS+=" -C"
- fi
-
- if [[ -n ${ECVS_DATE} ]] ; then
- ECVS_CO_OPTS+=" -D ${ECVS_DATE}"
- ECVS_UP_OPTS+=" -D ${ECVS_DATE}"
- fi
-
- # It would be easiest to always be in "run-as mode", logic-wise,
- # if sudo didn't ask for a password even when sudo'ing to `whoami`.
-
- if [[ -z ${ECVS_RUNAS} ]] ; then
- run=""
- else
- run="sudo -u ${ECVS_RUNAS}"
- fi
-
- # Create the top dir if needed
-
- if [[ ! -d ${ECVS_TOP_DIR} ]] ; then
- # Note that the addwrite statements in this block are only
- # there to allow creating ECVS_TOP_DIR; we allow writing
- # inside it separately.
-
- # This is because it's simpler than trying to find out the
- # parent path of the directory, which would need to be the
- # real path and not a symlink for things to work (so we can't
- # just remove the last path element in the string)
-
- debug-print "${FUNCNAME}: checkout mode. creating cvs directory"
- addwrite /foobar
- addwrite /
- ${run} mkdir -p "/${ECVS_TOP_DIR}"
- export SANDBOX_WRITE="${SANDBOX_WRITE//:\/foobar:\/}"
- fi
-
- # In case ECVS_TOP_DIR is a symlink to a dir, get the real path,
- # otherwise addwrite() doesn't work.
-
- cd -P "${ECVS_TOP_DIR}" >/dev/null
- ECVS_TOP_DIR=$(pwd)
-
- # Disable the sandbox for this dir
- addwrite "${ECVS_TOP_DIR}"
-
- # Chown the directory and all of its contents
- if [[ -n ${ECVS_RUNAS} ]] ; then
- ${run} chown -R "${ECVS_RUNAS}" "/${ECVS_TOP_DIR}"
- fi
-
- # Determine the CVS command mode (checkout or update)
- if [[ ! -d ${ECVS_TOP_DIR}/${ECVS_LOCALNAME}/CVS ]] ; then
- mode=checkout
- else
- mode=update
- fi
-
- # Our server string (i.e. CVSROOT) without the password so it can
- # be put in Root
- local connection="${ECVS_AUTH}"
- if [[ ${ECVS_AUTH} == "no" ]] ; then
- local server="${ECVS_USER}@${ECVS_SERVER}"
- else
- [[ -n ${ECVS_PROXY} ]] && connection+=";proxy=${ECVS_PROXY}"
- [[ -n ${ECVS_PROXY_PORT} ]] && connection+=";proxyport=${ECVS_PROXY_PORT}"
- local server=":${connection}:${ECVS_USER}@${ECVS_SERVER}"
- fi
-
- # Switch servers automagically if needed
- if [[ ${mode} == "update" ]] ; then
- cd "/${ECVS_TOP_DIR}/${ECVS_LOCALNAME}"
- local oldserver=$(${run} cat CVS/Root)
- if [[ ${server} != "${oldserver}" ]] ; then
- einfo "Changing the CVS server from ${oldserver} to ${server}:"
- debug-print "${FUNCNAME}: Changing the CVS server from ${oldserver} to ${server}:"
-
- einfo "Searching for CVS directories ..."
- local cvsdirs=$(${run} find . -iname CVS -print)
- debug-print "${FUNCNAME}: CVS directories found:"
- debug-print "${cvsdirs}"
-
- einfo "Modifying CVS directories ..."
- local x
- for x in ${cvsdirs} ; do
- debug-print "In ${x}"
- ${run} echo "${server}" > "${x}/Root"
- done
- fi
- fi
-
- # Prepare a cvspass file just for this session, we don't want to
- # mess with ~/.cvspass
- touch "${T}/cvspass"
- export CVS_PASSFILE="${T}/cvspass"
- if [[ -n ${ECVS_RUNAS} ]] ; then
- chown "${ECVS_RUNAS}" "${T}/cvspass"
- fi
-
- # The server string with the password in it, for login (only used for pserver)
- cvsroot_pass=":${connection}:${ECVS_USER}:${ECVS_PASS}@${ECVS_SERVER}"
-
- # Ditto without the password, for checkout/update after login, so
- # that the CVS/Root files don't contain the password in plaintext
- if [[ ${ECVS_AUTH} == "no" ]] ; then
- cvsroot_nopass="${ECVS_USER}@${ECVS_SERVER}"
- else
- cvsroot_nopass=":${connection}:${ECVS_USER}@${ECVS_SERVER}"
- fi
-
- # Commands to run
- cmdlogin=( ${run} ${ECVS_CVS_COMMAND} -d "${cvsroot_pass}" login )
- cmdupdate=( ${run} ${ECVS_CVS_COMMAND} -d "${cvsroot_nopass}" update ${ECVS_UP_OPTS} ${ECVS_LOCALNAME} )
- cmdcheckout=( ${run} ${ECVS_CVS_COMMAND} -d "${cvsroot_nopass}" checkout ${ECVS_CO_OPTS} ${ECVS_MODULE} )
-
- # Execute commands
-
- cd "${ECVS_TOP_DIR}"
- if [[ ${ECVS_AUTH} == "pserver" ]] ; then
- einfo "Running ${cmdlogin[*]}"
- "${cmdlogin[@]}" || die "cvs login command failed"
- if [[ ${mode} == "update" ]] ; then
- einfo "Running ${cmdupdate[*]}"
- "${cmdupdate[@]}" || die "cvs update command failed"
- elif [[ ${mode} == "checkout" ]] ; then
- einfo "Running ${cmdcheckout[*]}"
- "${cmdcheckout[@]}" || die "cvs checkout command failed"
- fi
- elif [[ ${ECVS_AUTH} == "ext" || ${ECVS_AUTH} == "no" ]] ; then
- # Hack to support SSH password authentication
-
- # Backup environment variable values
- local CVS_ECLASS_ORIG_CVS_RSH="${CVS_RSH}"
-
- if [[ ${SSH_ASKPASS+set} == "set" ]] ; then
- local CVS_ECLASS_ORIG_SSH_ASKPASS="${SSH_ASKPASS}"
- else
- unset CVS_ECLASS_ORIG_SSH_ASKPASS
- fi
-
- if [[ ${DISPLAY+set} == "set" ]] ; then
- local CVS_ECLASS_ORIG_DISPLAY="${DISPLAY}"
- else
- unset CVS_ECLASS_ORIG_DISPLAY
- fi
-
- if [[ ${CVS_RSH} == "ssh" ]] ; then
- # Force SSH to use SSH_ASKPASS by creating python wrapper
-
- export CVS_RSH="${T}/cvs_sshwrapper"
- cat > "${CVS_RSH}"<
- echo "newarglist.insert(1, '-oClearAllForwardings=yes')" \
- >> "${CVS_RSH}"
- echo "newarglist.insert(1, '-oForwardX11=no')" \
- >> "${CVS_RSH}"
-
- # Handle SSH host key checking
-
- local CVS_ECLASS_KNOWN_HOSTS="${T}/cvs_ssh_known_hosts"
- echo "newarglist.insert(1, '-oUserKnownHostsFile=${CVS_ECLASS_KNOWN_HOSTS}')" \
- >> "${CVS_RSH}"
-
- if [[ -z ${ECVS_SSH_HOST_KEY} ]] ; then
- ewarn "Warning: The SSH host key of the remote server will not be verified."
- einfo "A temporary known hosts list will be used."
- local CVS_ECLASS_STRICT_HOST_CHECKING="no"
- touch "${CVS_ECLASS_KNOWN_HOSTS}"
- else
- local CVS_ECLASS_STRICT_HOST_CHECKING="yes"
- echo "${ECVS_SSH_HOST_KEY}" > "${CVS_ECLASS_KNOWN_HOSTS}"
- fi
-
- echo -n "newarglist.insert(1, '-oStrictHostKeyChecking=" \
- >> "${CVS_RSH}"
- echo "${CVS_ECLASS_STRICT_HOST_CHECKING}')" \
- >> "${CVS_RSH}"
- echo "os.execv('${EPREFIX}/usr/bin/ssh', newarglist)" \
- >> "${CVS_RSH}"
-
- chmod a+x "${CVS_RSH}"
-
- # Make sure DISPLAY is set (SSH will not use SSH_ASKPASS
- # if DISPLAY is not set)
-
- : ${DISPLAY:="DISPLAY"}
- export DISPLAY
-
- # Create a dummy executable to echo ${ECVS_PASS}
-
- export SSH_ASKPASS="${T}/cvs_sshechopass"
- if [[ ${ECVS_AUTH} != "no" ]] ; then
- echo -en "#!/bin/bash\necho \"${ECVS_PASS}\"\n" \
- > "${SSH_ASKPASS}"
- else
- echo -en "#!/bin/bash\nreturn\n" \
- > "${SSH_ASKPASS}"
- fi
- chmod a+x "${SSH_ASKPASS}"
- fi
-
- if [[ ${mode} == "update" ]] ; then
- einfo "Running ${cmdupdate[*]}"
- "${cmdupdate[@]}" || die "cvs update command failed"
- elif [[ ${mode} == "checkout" ]] ; then
- einfo "Running ${cmdcheckout[*]}"
- "${cmdcheckout[@]}" || die "cvs checkout command failed"
- fi
-
- # Restore environment variable values
- export CVS_RSH="${CVS_ECLASS_ORIG_CVS_RSH}"
- if [[ ${CVS_ECLASS_ORIG_SSH_ASKPASS+set} == "set" ]] ; then
- export SSH_ASKPASS="${CVS_ECLASS_ORIG_SSH_ASKPASS}"
- else
- unset SSH_ASKPASS
- fi
-
- if [[ ${CVS_ECLASS_ORIG_DISPLAY+set} == "set" ]] ; then
- export DISPLAY="${CVS_ECLASS_ORIG_DISPLAY}"
- else
- unset DISPLAY
- fi
- fi
-
- # Restore ownership. Not sure why this is needed, but someone
- # added it in the orig ECVS_RUNAS stuff.
- if [[ -n ${ECVS_RUNAS} ]] ; then
- chown $(whoami) "${T}/cvspass"
- fi
-
-}
-
-# @FUNCTION: cvs_src_unpack
-# @DESCRIPTION:
-# The cvs src_unpack function, which will be exported
-cvs_src_unpack() {
-
- debug-print-function ${FUNCNAME} "$@"
-
- debug-print "${FUNCNAME}: init:
- ECVS_CVS_COMMAND=${ECVS_CVS_COMMAND}
- ECVS_UP_OPTS=${ECVS_UP_OPTS}
- ECVS_CO_OPTS=${ECVS_CO_OPTS}
- ECVS_TOP_DIR=${ECVS_TOP_DIR}
- ECVS_SERVER=${ECVS_SERVER}
- ECVS_USER=${ECVS_USER}
- ECVS_PASS=${ECVS_PASS}
- ECVS_MODULE=${ECVS_MODULE}
- ECVS_LOCAL=${ECVS_LOCAL}
- ECVS_RUNAS=${ECVS_RUNAS}
- ECVS_LOCALNAME=${ECVS_LOCALNAME}"
-
- [[ -z ${ECVS_MODULE} ]] && die "ERROR: CVS module not set, cannot continue."
-
- local ECVS_LOCALNAME=${ECVS_LOCALNAME:-${ECVS_MODULE}}
-
- local sanitized_pn=$(echo "${PN}" | LC_ALL=C sed -e 's:[^A-Za-z0-9_]:_:g')
- local offline_pkg_var="ECVS_OFFLINE_${sanitized_pn}"
- if [[ -n ${!offline_pkg_var}${ECVS_OFFLINE} ]] || [[ ${ECVS_SERVER} == "offline" ]] ; then
- # We're not required to fetch anything; the module already
- # exists and shouldn't be updated.
- if [[ -d ${ECVS_TOP_DIR}/${ECVS_LOCALNAME} ]] ; then
- debug-print "${FUNCNAME}: offline mode"
- else
- debug-print "${FUNCNAME}: Offline mode specified but directory ${ECVS_TOP_DIR}/${ECVS_LOCALNAME} not found, exiting with error"
- die "ERROR: Offline mode specified, but directory ${ECVS_TOP_DIR}/${ECVS_LOCALNAME} not found. Aborting."
- fi
- elif [[ -n ${ECVS_SERVER} ]] ; then # ECVS_SERVER!=offline --> real fetching mode
- einfo "Fetching CVS module ${ECVS_MODULE} into ${ECVS_TOP_DIR} ..."
- cvs_fetch
- else # ECVS_SERVER not set
- die "ERROR: CVS server not specified, cannot continue."
- fi
-
- einfo "Copying ${ECVS_MODULE} from ${ECVS_TOP_DIR} ..."
- debug-print "Copying module ${ECVS_MODULE} local_mode=${ECVS_LOCAL} from ${ECVS_TOP_DIR} ..."
-
- # This is probably redundant, but best to make sure.
- mkdir -p "${WORKDIR}/${ECVS_LOCALNAME}"
-
- if [[ -n ${ECVS_LOCAL} ]] ; then
- cp -f "${ECVS_TOP_DIR}/${ECVS_LOCALNAME}"/* "${WORKDIR}/${ECVS_LOCALNAME}"
- else
- cp -Rf "${ECVS_TOP_DIR}/${ECVS_LOCALNAME}" "${WORKDIR}/${ECVS_LOCALNAME}/.."
- fi
-
- # Not exactly perfect, but should be pretty close #333773
- export ECVS_VERSION=$(
- find "${ECVS_TOP_DIR}/${ECVS_LOCALNAME}/" -ipath '*/CVS/Entries' -exec cat {} + | \
- LC_ALL=C sort | \
- sha1sum | \
- awk '{print $1}'
- )
-
- # If the directory is empty, remove it; empty directories cannot
- # exist in cvs. This happens when, for example, kde-source
- # requests module/doc/subdir which doesn't exist. Still create
- # the empty directory in workdir though.
- if [[ $(ls -A "${ECVS_TOP_DIR}/${ECVS_LOCALNAME}") == "CVS" ]] ; then
- debug-print "${FUNCNAME}: removing empty CVS directory ${ECVS_LOCALNAME}"
- rm -rf "${ECVS_TOP_DIR}/${ECVS_LOCALNAME}"
- fi
-
- # Implement some of base_src_unpack's functionality; note however
- # that base.eclass may not have been inherited!
- if [[ -n ${PATCHES} ]] ; then
- debug-print "${FUNCNAME}: PATCHES=${PATCHES}, S=${S}, autopatching"
- cd "${S}"
- epatch ${PATCHES}
- # Make sure we don't try to apply patches more than once,
- # since cvs_src_unpack is usually called several times from
- # e.g. kde-source_src_unpack
- export PATCHES=""
- fi
-
- einfo "CVS module ${ECVS_MODULE} is now in ${WORKDIR}"
-}
-
-EXPORT_FUNCTIONS src_unpack
-
-fi
diff --git a/eclass/db.eclass b/eclass/db.eclass
deleted file mode 100644
index 5227601c45..0000000000
--- a/eclass/db.eclass
+++ /dev/null
@@ -1,195 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: db.eclass
-# @MAINTAINER:
-# base-system@gentoo.org
-# @BLURB: Internal eclass used by sys-libs/db ebuilds
-
-inherit eutils multilib multiprocessing
-
-IUSE="doc test examples"
-
-EXPORT_FUNCTIONS src_test
-
-DEPEND="test? ( >=dev-lang/tcl-8.4 )"
-
-RDEPEND=""
-
-db_fix_so() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EROOT="${ROOT}"
- LIB="${EROOT}/usr/$(get_libdir)"
-
- cd "${LIB}"
-
- # first clean up old symlinks
- find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so' -exec rm \{} \;
- find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so.[23]' -exec rm \{} \;
- find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*a' -exec rm \{} \;
-
- # now rebuild all the correct ones
- for ext in so a; do
- for name in libdb libdb_{cxx,tcl,java,sql,stl}; do
- target=`find . -maxdepth 1 -type f -name "${name}-*.${ext}" |sort -n |tail -n 1`
- [ -n "${target}" ] && ln -sf ${target//.\//} ${name}.${ext}
- done;
- done;
-
- # db[23] gets some extra-special stuff
- if [ -f libdb1.so.2 ]; then
- ln -sf libdb1.so.2 libdb.so.2
- ln -sf libdb1.so.2 libdb1.so
- ln -sf libdb1.so.2 libdb-1.so
- fi
- # what do we do if we ever get 3.3 ?
- for i in libdb libdb_{cxx,tcl,java,sql,stl}; do
- if [ -f $i-3.2.so ]; then
- ln -sf $i-3.2.so $i-3.so
- ln -sf $i-3.2.so $i.so.3
- fi
- done
-
- # do the same for headers now
- # but since there are only two of them, just overwrite them
- cd "${EROOT}"/usr/include
- target=`find . -maxdepth 1 -type d -name 'db[0-9]*' | sort -n |cut -d/ -f2- | tail -n1`
- if [ -n "${target}" ] && [ -e "${target}/db.h" ] && ( ! [[ -e db.h ]] || [[ -h db.h ]] ); then
- einfo "Creating db.h symlinks to ${target}"
- ln -sf "${target}"/db.h .
- ln -sf "${target}"/db_185.h .
- elif [ ! -e "${target}/db.h" ]; then
- if [ -n "${target}" ]; then
- ewarn "Could not find ${target}/db.h"
- elif [ -h db.h ]; then
- einfo "Apparently you just removed the last instance of $PN. Removing the symlinks"
- rm -f db.h db_185.h
- fi
- fi
-}
-
-db_src_install_doc() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
- # not everybody wants this wad of documentation as it is primarily API docs
- if use doc; then
- dodir /usr/share/doc/${PF}/html
- mv "${ED}"/usr/docs/* "${ED}"/usr/share/doc/${PF}/html/
- rm -rf "${ED}"/usr/docs
- else
- rm -rf "${ED}"/usr/docs
- fi
-
- db_src_install_examples
-}
-
-db_src_install_examples() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
- if use examples ; then
- local langs="c cxx stl"
- [[ "${IUSE/java}" != "${IUSE}" ]] \
- && use java \
- && langs="${langs} java"
- for i in $langs ; do
- destdir="/usr/share/doc/${PF}/"
- src="${S}/../examples_${i}/"
- if [ -f "${src}" ]; then
- dodir "${destdir}"
- cp -ra "${src}" "${ED}${destdir}/"
- fi
- done
- fi
-}
-
-db_src_install_usrbinslot() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
- # slot all program names to avoid overwriting
- for fname in "${ED}"/usr/bin/db*
- do
- dn="$(dirname "${fname}")"
- bn="$(basename "${fname}")"
- bn="${bn/db/db${SLOT}}"
- mv "${fname}" "${dn}/${bn}" || \
- die "Failed to rename ${fname} to ${dn}/${bn}"
- done
-}
-
-db_src_install_headerslot() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
- # install all headers in a slotted location
- dodir /usr/include/db${SLOT}
- mv "${ED}"/usr/include/*.h "${ED}"/usr/include/db${SLOT}/
-}
-
-db_src_install_usrlibcleanup() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
- LIB="${ED}/usr/$(get_libdir)"
- # Clean out the symlinks so that they will not be recorded in the
- # contents (bug #60732)
-
- if [ "${ED}" = "" ]; then
- die "Calling clean_links while \$ED not defined"
- fi
-
- if [ -e "${LIB}"/libdb.a ] && [ ! -e "${LIB}"/libdb-${SLOT}.a ]; then
- einfo "Moving libdb.a to a versioned name"
- mv "${LIB}/libdb.a" "${LIB}/libdb-${SLOT}.a"
- fi
-
- if [ -e "${LIB}"/libdb_cxx.a ] && [ ! -e "${LIB}"/libdb_cxx-${SLOT}.a ]; then
- einfo "Moving libdb_cxx.a to a versioned name"
- mv "${LIB}/libdb_cxx.a" "${LIB}/libdb_cxx-${SLOT}.a"
- fi
-
- find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so' -exec rm \{} \;
- find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so.[23]' -exec rm \{} \;
- einfo "removing unversioned static archives"
- find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*a' -exec rm \{} \;
-
- rm -f \
- "${ED}"/usr/include/{db,db_185}.h \
- "${LIB}"/libdb{,_{cxx,sql,stl,java,tcl}}.a
-}
-
-db_src_test() {
- if [[ $UID -eq 0 ]]; then
- M="You must run the testsuite as non-root, skipping"
- ewarn "${M}"
- elog "${M}"
- return 0
- fi
-
- if use tcl; then
- einfo "Running sys-libs/db testsuite"
- ewarn "This can take 6+ hours on modern machines"
- # Fix stuff that fails with relative paths, and upstream moving files
- # around...
- local test_parallel=''
- for t in \
- "${S}"/test/parallel.tcl \
- "${S}"/../test/parallel.tcl \
- "${S}"/test/tcl/parallel.tcl \
- "${S}"/../test/tcl/parallel.tcl \
- ; do
- [[ -f "${t}" ]] && test_parallel="${t}" && break
- done
-
- sed -ri \
- -e '/regsub .test_path ./s,(regsub),#\1,g' \
- -e '/regsub .src_root ./s,(regsub),#\1,g' \
- -e '/regsub .tcl_utils ./s,(regsub),#\1,g' \
- "${test_parallel}"
- cd "${S}"
- for t in \
- ../test/test.tcl \
- ../test/tcl/test.tcl \
- ; do
- [[ -f "${t}" ]] && testbase="${t}" && break
- done
- echo "source ${t}" > testrunner.tcl
- echo "run_parallel $(makeopts_jobs) run_std" >> testrunner.tcl
-
- tclsh testrunner.tcl
- egrep -qs '^FAIL' ALL.OUT* && die "Some tests failed, please see ${S}/ALL.OUT*"
- else
- eerror "You must have USE=tcl to run the sys-libs/db testsuite."
- fi
-}
diff --git a/eclass/fdo-mime.eclass b/eclass/fdo-mime.eclass
deleted file mode 100644
index 8e51d8a69d..0000000000
--- a/eclass/fdo-mime.eclass
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: fdo-mime.eclass
-# @MAINTAINER:
-# freedesktop-bugs@gentoo.org
-# @AUTHOR:
-# Original author: foser
-# @BLURB: Utility eclass to update the desktop mime info as laid out in the freedesktop specs & implementations
-# @DESCRIPTION:
-# This eclass is DEPRECATED. Please use xdg-utils or xdg instead.
-
-# @FUNCTION: fdo-mime_desktop_database_update
-# @DESCRIPTION:
-# Updates the desktop database.
-# Generates a list of mimetypes linked to applications that can handle them
-fdo-mime_desktop_database_update() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EROOT="${ROOT}"
- if [ -x "${EPREFIX}/usr/bin/update-desktop-database" ]
- then
- einfo "Updating desktop mime database ..."
- "${EPREFIX}/usr/bin/update-desktop-database" -q "${EROOT}usr/share/applications"
- fi
-}
-
-# @FUNCTION: fdo-mime_mime_database_update
-# @DESCRIPTION:
-# Update the mime database.
-# Creates a general list of mime types from several sources
-fdo-mime_mime_database_update() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EROOT="${ROOT}"
- if [ -x "${EPREFIX}/usr/bin/update-mime-database" ]
- then
- einfo "Updating shared mime info database ..."
- "${EPREFIX}/usr/bin/update-mime-database" "${EROOT}usr/share/mime"
- fi
-}
diff --git a/eclass/kodi-addon.eclass b/eclass/kodi-addon.eclass
deleted file mode 100644
index 8f34ccd92a..0000000000
--- a/eclass/kodi-addon.eclass
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: kodi-addon.eclass
-# @MAINTAINER:
-# candrews@gentoo.org
-# @SUPPORTED_EAPIS: 4 5 6
-# @BLURB: Helper for correct building and (importantly) installing Kodi addon packages.
-# @DESCRIPTION:
-# Provides a src_configure function for correct CMake configuration
-
-inherit multilib cmake-utils
-
-case "${EAPI:-0}" in
- 4|5|6)
- EXPORT_FUNCTIONS src_configure
- ;;
- *) die "EAPI=${EAPI} is not supported" ;;
-esac
-
-# @FUNCTION: kodi-addon_src_configure
-# @DESCRIPTION:
-# Configure handling for Kodi addons
-kodi-addon_src_configure() {
-
- mycmakeargs+=(
- -DCMAKE_INSTALL_LIBDIR=$(get_libdir)/kodi
- )
-
- cmake-utils_src_configure
-}
diff --git a/eclass/mate-desktop.org.eclass b/eclass/mate-desktop.org.eclass
deleted file mode 100644
index 418f3f8ce0..0000000000
--- a/eclass/mate-desktop.org.eclass
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: mate-desktop.org.eclass
-# @MAINTAINER:
-# mate@gentoo.org
-# @AUTHOR:
-# Authors: NP-Hardass based upon the gnome.org eclass.
-# @SUPPORTED_EAPIS: 6
-# @BLURB: Helper eclass for mate-desktop.org hosted archives
-# @DESCRIPTION:
-# Provide a default SRC_URI and EGIT_REPO_URI for MATE packages as well as
-# exporting some useful values like the MATE_BRANCH
-
-# EAPIs < 6 are banned.
-case "${EAPI:-0}" in
- 6) ;;
- *) die "EAPI=${EAPI:-0} is not supported" ;;
-esac
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
-fi
-
-inherit versionator
-
-# @ECLASS-VARIABLE: MATE_TARBALL_SUFFIX
-# @INTERNAL
-# @DESCRIPTION:
-# All projects hosted on mate-desktop.org provide tarballs as tar.xz.
-# Undefined in live ebuilds.
-[[ ${PV} != 9999 ]] && : ${MATE_TARBALL_SUFFIX:="xz"}
-
-# @ECLASS-VARIABLE: MATE_DESKTOP_ORG_PN
-# @DESCRIPTION:
-# Name of the package as hosted on mate-desktop.org.
-# Leave unset if package name matches PN.
-: ${MATE_DESKTOP_ORG_PN:=$PN}
-
-# @ECLASS-VARIABLE: MATE_DESKTOP_ORG_PV
-# @DESCRIPTION:
-# Package version string as listed on mate-desktop.org.
-# Leave unset if package version string matches PV.
-: ${MATE_DESKTOP_ORG_PV:=$PV}
-
-# @ECLASS-VARIABLE: MATE_BRANCH
-# @DESCRIPTION:
-# Major and minor numbers of the version number, unless live.
-# If live ebuild, will be set to '9999'.
-: ${MATE_BRANCH:=$(get_version_component_range 1-2)}
-
-# Set SRC_URI or EGIT_REPO_URI based on whether live
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/mate-desktop/${MATE_DESKTOP_ORG_PN}.git"
- SRC_URI=""
-else
- SRC_URI="https://pub.mate-desktop.org/releases/${MATE_BRANCH}/${MATE_DESKTOP_ORG_PN}-${MATE_DESKTOP_ORG_PV}.tar.${MATE_TARBALL_SUFFIX}"
-fi
-
-# Set HOMEPAGE for all ebuilds
-HOMEPAGE="https://mate-desktop.org"
diff --git a/eclass/perl-functions.eclass b/eclass/perl-functions.eclass
index e6168a0753..4adba92148 100644
--- a/eclass/perl-functions.eclass
+++ b/eclass/perl-functions.eclass
@@ -8,7 +8,7 @@
# Seemant Kulleen
# Andreas K. Huettel
# Kent Fredric
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 5 6 7 8
# @BLURB: helper functions eclass for perl modules
# @DESCRIPTION:
# The perl-functions eclass is designed to allow easier installation of perl
@@ -19,7 +19,7 @@
[[ ${CATEGORY} == "perl-core" ]] && inherit alternatives
case "${EAPI:-0}" in
- 5|6|7)
+ 5|6|7|8)
;;
*)
die "EAPI=${EAPI} is not supported by perl-functions.eclass"
@@ -127,6 +127,17 @@ perl_delete_emptybsdir() {
fi
}
+# @FUNCTION: perl_fix_permissions
+# @DESCRIPTION:
+# Make all of ${D} user-writable, since EU::MM does silly things with
+# the w bit. See bug 554346.
+perl_fix_permissions() {
+ debug-print-function $FUNCNAME "$@"
+ perl_set_version
+ einfo Fixing installed file permissions
+ fperms -R u+w /
+}
+
# @FUNCTION: perl_fix_packlist
# @DESCRIPTION:
# Look through ${D} for .packlist text files containing the temporary installation
@@ -586,3 +597,31 @@ perl_domodule() {
insinto "/${target#/}"
doins "${doins_opts[@]}" "${files[@]}"
}
+
+# @FUNCTION: perl_get_wikiurl
+# @DESCRIPTION:
+# Convenience helper for returning the Gentoo Wiki maintenance page URL of a
+# package. Optionally a suffix can be passed for an in-page anchor.
+#
+# Example:
+# @CODE
+# my_url="$(perl_get_wikiurl Testing)"
+# @CODE
+
+perl_get_wikiurl() {
+ debug-print-function $FUNCNAME "$@"
+
+ if [[ -z "${1}" ]]; then
+ echo "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}"
+ else
+ echo "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}#${1}"
+ fi
+}
+
+perl_get_wikiurl_features() {
+ perl_get_wikiurl Optional_Features
+}
+
+perl_get_wikiurl_tests() {
+ perl_get_wikiurl Testing
+}
diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass
index 7a839bc728..cff6f203ab 100644
--- a/eclass/perl-module.eclass
+++ b/eclass/perl-module.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: perl-module.eclass
@@ -7,7 +7,8 @@
# @AUTHOR:
# Seemant Kulleen
# Andreas K. Hüttel
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 5 6 7 8
+# @PROVIDES: perl-functions
# @BLURB: eclass for installing Perl module distributions
# @DESCRIPTION:
# The perl-module eclass is designed to allow easier installation of Perl
@@ -27,6 +28,10 @@ case ${EAPI:-0} in
inherit multiprocessing perl-functions
PERL_EXPF="src_prepare src_configure src_compile src_test src_install"
;;
+ 8)
+ inherit multiprocessing perl-functions readme.gentoo-r1
+ PERL_EXPF="src_prepare src_configure src_compile src_test src_install"
+ ;;
*)
die "EAPI=${EAPI} is not supported by perl-module.eclass"
;;
@@ -39,7 +44,9 @@ esac
# dev-lang/perl is automatically added by the eclass. It defaults to yes.
# Set to no to disable, set to noslotop to add a perl dependency without
# slot operator (EAPI=6). All packages installing into the vendor_perl
-# path must use yes here.
+# path must use yes here. (EAPI=8 and later) Also adds a test useflag,
+# a use-conditional build time dependency on virtual/perl-Test-Simple, and
+# the required RESTRICT setting.
case ${EAPI:-0} in
5)
@@ -127,7 +134,34 @@ case ${EAPI:-0} in
EXPORT_FUNCTIONS ${PERL_EXPF}
;;
*)
- die "EAPI=${EAPI:-0} is not supported by perl-module.eclass"
+ [[ ${CATEGORY} == perl-core ]] && \
+ PERL_EXPF+=" pkg_postinst pkg_postrm"
+
+ case "${GENTOO_DEPEND_ON_PERL:-yes}" in
+ yes|noslotop)
+ DEPEND="dev-lang/perl"
+ BDEPEND="dev-lang/perl
+ test? ( virtual/perl-Test-Simple )"
+ IUSE="test"
+ RESTRICT="!test? ( test )"
+ ;;&
+ yes)
+ RDEPEND="dev-lang/perl:="
+ ;;
+ noslotop)
+ RDEPEND="dev-lang/perl"
+ ;;
+ esac
+
+ if [[ "${GENTOO_DEPEND_ON_PERL_SUBSLOT:-yes}" != "yes" ]]; then
+ die "GENTOO_DEPEND_ON_PERL_SUBSLOT=no is banned in EAPI=6 and later."
+ fi
+
+ if [[ "${PERL_EXPORT_PHASE_FUNCTIONS}" ]]; then
+ die "PERL_EXPORT_PHASE_FUNCTIONS is banned in EAPI=6 and later."
+ fi
+
+ EXPORT_FUNCTIONS ${PERL_EXPF}
;;
esac
@@ -172,6 +206,7 @@ LICENSE="${LICENSE:-|| ( Artistic GPL-1+ )}"
# Named MODULE_SECTION in EAPI=5.
# @ECLASS-VARIABLE: DIST_EXAMPLES
+# @PRE_INHERIT
# @DEFAULT_UNSET
# @DESCRIPTION:
# (EAPI=6 and later) This Bash array allows passing a list of example files to be installed
@@ -179,6 +214,25 @@ LICENSE="${LICENSE:-|| ( Artistic GPL-1+ )}"
# a use-flag examples, if not you'll have to add the useflag in your ebuild.
# Examples are installed only if the useflag examples exists and is activated.
+# @ECLASS-VARIABLE: DIST_WIKI
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# (EAPI=8 and later) This variable can be set to contain space-separated keywords
+# corresponding to article sections in a maintenance notes wiki article. If a
+# keyword is set, an ebuild phase can output a message and a link to the wiki.
+# Current keywords as of EAPI=8 are:
+# * features: Notes about additional dependencies for optional features
+# * tests: Notes about additional dependencies and preparations needed for testing
+
+# @ECLASS-VARIABLE: DIST_MAKE
+# @DESCRIPTION:
+# (EAPI=8 and later) This Bash array contains parameters to the make call
+# from ExtUtils::MakeMaker. Replaces mymake in EAPI=7 and earlier.
+# Defaults to ( OPTIMIZE="${CFLAGS}" )
+if [[ $(declare -p DIST_MAKE 2>&-) != "declare -a DIST_MAKE="* ]]; then
+ DIST_MAKE=( OPTIMIZE="${CFLAGS}" )
+fi
+
if [[ ${EAPI:-0} == 5 ]]; then
if [[ -n ${MY_PN} || -n ${MY_PV} || -n ${MODULE_VERSION} ]] ; then
@@ -275,19 +329,38 @@ perl-module_src_configure() {
fi
if [[ ( ${PREFER_BUILDPL} == yes || ! -f Makefile.PL ) && -f Build.PL ]] ; then
- if grep -q '\(use\|require\)\s*Module::Build::Tiny' Build.PL ; then
- einfo "Using Module::Build::Tiny"
- if [[ ${DEPEND} != *dev-perl/Module-Build-Tiny* && ${PN} != Module-Build-Tiny ]]; then
- eerror "QA Notice: The ebuild uses Module::Build::Tiny but doesn't depend on it."
- die " Add dev-perl/Module-Build-Tiny to DEPEND!"
- fi
- else
- einfo "Using Module::Build"
- if [[ ${DEPEND} != *virtual/perl-Module-Build* && ${DEPEND} != *dev-perl/Module-Build* && ${PN} != Module-Build ]] ; then
- eerror "QA Notice: The ebuild uses Module::Build but doesn't depend on it."
- die " Add dev-perl/Module-Build to DEPEND!"
- fi
- fi
+ case ${EAPI:-0} in
+ 5|6)
+ if grep -q '\(use\|require\)\s*Module::Build::Tiny' Build.PL ; then
+ einfo "Using Module::Build::Tiny"
+ if [[ ${DEPEND} != *dev-perl/Module-Build-Tiny* && ${PN} != Module-Build-Tiny ]]; then
+ eerror "QA Notice: The ebuild uses Module::Build::Tiny but doesn't depend on it."
+ die " Add dev-perl/Module-Build-Tiny to DEPEND!"
+ fi
+ else
+ einfo "Using Module::Build"
+ if [[ ${DEPEND} != *virtual/perl-Module-Build* && ${DEPEND} != *dev-perl/Module-Build* && ${PN} != Module-Build ]] ; then
+ eerror "QA Notice: The ebuild uses Module::Build but doesn't depend on it."
+ die " Add dev-perl/Module-Build to DEPEND!"
+ fi
+ fi
+ ;;
+ *)
+ if grep -q '\(use\|require\)\s*Module::Build::Tiny' Build.PL ; then
+ einfo "Using Module::Build::Tiny"
+ if [[ ${BDEPEND} != *dev-perl/Module-Build-Tiny* && ${PN} != Module-Build-Tiny ]]; then
+ eerror "QA Notice: The ebuild uses Module::Build::Tiny but doesn't depend on it."
+ eerror " Add dev-perl/Module-Build-Tiny to BDEPEND!"
+ fi
+ else
+ einfo "Using Module::Build"
+ if [[ ${BDEPEND} != *virtual/perl-Module-Build* && ${BDEPEND} != *dev-perl/Module-Build* && ${PN} != Module-Build ]] ; then
+ eerror "QA Notice: The ebuild uses Module::Build but doesn't depend on it."
+ eerror " Add dev-perl/Module-Build to BDEPEND!"
+ fi
+ fi
+ ;;
+ esac
set -- \
--installdirs=vendor \
--libdoc= \
@@ -323,11 +396,18 @@ perl-module_src_compile() {
debug-print-function $FUNCNAME "$@"
perl_set_version
- if [[ $(declare -p mymake 2>&-) != "declare -a mymake="* ]]; then
- local mymake_local=(${mymake})
- else
- local mymake_local=("${mymake[@]}")
- fi
+ case ${EAPI} in
+ 5|6|7)
+ if [[ $(declare -p mymake 2>&-) != "declare -a mymake="* ]]; then
+ local mymake_local=(${mymake})
+ else
+ local mymake_local=("${mymake[@]}")
+ fi
+ ;;
+ *)
+ local mymake_local=("${DIST_MAKE[@]}")
+ ;;
+ esac
if [[ -f Build ]] ; then
./Build build \
@@ -358,6 +438,7 @@ perl-module_src_compile() {
# network : do not try to disable network tests
# @ECLASS-VARIABLE: DIST_TEST_OVERRIDE
+# @USER_VARIABLE
# @DEFAULT_UNSET
# @DESCRIPTION:
# (EAPI=6 and later) Variable that controls if tests are run in the test phase
@@ -375,7 +456,7 @@ perl-module_src_test() {
local my_test_control
local my_test_verbose
- if [[ ${EAPI:-0} == 5 ]] ; then
+ if [[ ${EAPI} == 5 ]] ; then
my_test_control=${SRC_TEST}
my_test_verbose=${TEST_VERBOSE:-0}
if has 'do' ${my_test_control} || has 'parallel' ${my_test_control} ; then
@@ -413,6 +494,18 @@ perl-module_src_test() {
fi
fi
+ case ${EAPI} in
+ 5|6|7)
+ ;;
+ *)
+ if has 'tests' ${DIST_WIKI} ; then
+ ewarn "This package may require additional dependencies and/or preparation steps for"
+ ewarn "comprehensive testing. For details, see:"
+ ewarn "$(perl_get_wikiurl_tests)"
+ fi
+ ;;
+ esac
+
perl_set_version
if [[ -f Build ]] ; then
./Build test verbose=${my_test_verbose} || die "test failed"
@@ -452,9 +545,17 @@ perl-module_src_install() {
|| die "emake ${myinst_local[@]} ${mytargets} failed"
fi
+ case ${EAPI} in
+ 5|6|7)
+ ;;
+ *)
+ perl_fix_permissions
+ ;;
+ esac
+
perl_delete_module_manpages
perl_delete_localpod
- if [[ ${EAPI:-0} == 5 ]] ; then
+ if [[ ${EAPI} == 5 ]] ; then
perl_delete_packlist
else
perl_fix_packlist
@@ -466,13 +567,29 @@ perl-module_src_install() {
[[ -s ${f} ]] && dodoc ${f}
done
- if [[ ${EAPI:-0} != 5 ]] ; then
+ if [[ ${EAPI} != 5 ]] ; then
if in_iuse examples && use examples ; then
[[ ${#DIST_EXAMPLES[@]} -eq 0 ]] || perl_doexamples "${DIST_EXAMPLES[@]}"
fi
fi
perl_link_duallife_scripts
+
+ case ${EAPI} in
+ 5|6|7)
+ ;;
+ *)
+ if has 'features' ${DIST_WIKI} ; then
+ DISABLE_AUTOFORMATTING=yes
+ DOC_CONTENTS="This package may require additional dependencies and/or preparation steps for\n"
+ DOC_CONTENTS+="some optional features. For details, see\n"
+ DOC_CONTENTS+="$(perl_get_wikiurl_features)"
+ einfo
+ readme.gentoo_create_doc
+ readme.gentoo_print_elog
+ fi
+ ;;
+ esac
}
# @FUNCTION: perl-module_pkg_postinst
diff --git a/eclass/postgres-multi.eclass b/eclass/postgres-multi.eclass
deleted file mode 100644
index 48ef79dc29..0000000000
--- a/eclass/postgres-multi.eclass
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-inherit multibuild postgres
-EXPORT_FUNCTIONS pkg_setup src_prepare src_compile src_install src_test
-
-
-# @ECLASS: postgres-multi.eclass
-# @MAINTAINER:
-# PostgreSQL
-# @AUTHOR: Aaron W. Swenson
-# @SUPPORTED_EAPIS: 5 6
-# @BLURB: An eclass to build PostgreSQL-related packages against multiple slots
-# @DESCRIPTION:
-# postgres-multi enables ebuilds, particularly PostgreSQL extensions, to
-# build and install for one or more PostgreSQL slots as specified by
-# POSTGRES_TARGETS use flags.
-
-
-case ${EAPI:-0} in
- 5|6) ;;
- *) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;;
-esac
-
-
-# @ECLASS-VARIABLE: POSTGRES_COMPAT
-# @REQUIRED
-# @DESCRIPTION:
-# A Bash array containing a list of compatible PostgreSQL slots as
-# defined by the developer. Must be declared before inheriting this
-# eclass. Example:
-#@CODE
-#POSTGRES_COMPAT=( 9.2 9.3 9.4 9.5 9.6 10 )
-#POSTGRES_COMPAT=( 9.{2,3} 9.{4..6} 10 ) # Same as previous
-#@CODE
-if ! declare -p POSTGRES_COMPAT &>/dev/null; then
- die 'Required variable POSTGRES_COMPAT not declared.'
-fi
-
-# @ECLASS-VARIABLE: _POSTGRES_INTERSECT_SLOTS
-# @INTERNAL
-# @DESCRIPTION:
-# A Bash array containing the intersect of POSTGRES_TARGETS and
-# POSTGRES_COMPAT.
-export _POSTGRES_INTERSECT_SLOTS=( )
-
-# @FUNCTION: _postgres-multi_multibuild_wrapper
-# @USAGE: [arg ...]
-# @INTERNAL
-# @DESCRIPTION:
-# For the given variant, set the values of the PG_SLOT, PG_CONFIG, and
-# PKG_CONFIG_PATH environment variables accordingly and replace any
-# appearance of @PG_SLOT@ in the command and arguments with value of
-# ${PG_SLOT}.
-_postgres-multi_multibuild_wrapper() {
- debug-print-function ${FUNCNAME} "${@}"
- export PG_SLOT=${MULTIBUILD_VARIANT}
- export PG_CONFIG=$(which pg_config${MULTIBUILD_VARIANT//./})
- if [[ -n ${PKG_CONFIG_PATH} ]] ; then
- PKG_CONFIG_PATH="$(${PG_CONFIG} --libdir)/pkgconfig:${PKG_CONFIG_PATH}"
- else
- PKG_CONFIG_PATH="$(${PG_CONFIG} --libdir)/pkgconfig"
- fi
- export PKG_CONFIG_PATH
-
- $(echo "${@}" | sed "s/@PG_SLOT@/${PG_SLOT}/g")
-}
-
-# @FUNCTION: postgres-multi_foreach
-# @USAGE: [arg ...]
-# @DESCRIPTION:
-# Run the given command in the package's build directory for each
-# PostgreSQL slot in the intersect of POSTGRES_TARGETS and
-# POSTGRES_COMPAT. The PG_CONFIG and PKG_CONFIG_PATH environment
-# variables are updated on each iteration to point to the matching
-# pg_config command and pkg-config metadata files, respectively, for the
-# current slot. Any appearance of @PG_SLOT@ in the command or arguments
-# will be substituted with the slot (e.g., 9.5) of the current
-# iteration.
-postgres-multi_foreach() {
- local MULTIBUILD_VARIANTS=("${_POSTGRES_INTERSECT_SLOTS[@]}")
-
- multibuild_foreach_variant \
- _postgres-multi_multibuild_wrapper run_in_build_dir ${@}
-}
-
-# @FUNCTION: postgres-multi_forbest
-# @USAGE: [arg ...]
-# @DESCRIPTION:
-# Run the given command in the package's build directory for the highest
-# slot in the intersect of POSTGRES_COMPAT and POSTGRES_TARGETS. The
-# PG_CONFIG and PKG_CONFIG_PATH environment variables are set to the
-# matching pg_config command and pkg-config metadata files,
-# respectively. Any appearance of @PG_SLOT@ in the command or arguments
-# will be substituted with the matching slot (e.g., 9.5).
-postgres-multi_forbest() {
- # POSTGRES_COMPAT is reverse sorted once in postgres.eclass so
- # element 0 has the highest slot version.
- local MULTIBUILD_VARIANTS=("${_POSTGRES_INTERSECT_SLOTS[0]}")
-
- multibuild_foreach_variant \
- _postgres-multi_multibuild_wrapper run_in_build_dir ${@}
-}
-
-# @FUNCTION: postgres-multi_pkg_setup
-# @DESCRIPTION:
-# Initialize internal environment variable(s). This is required if
-# pkg_setup() is declared in the ebuild.
-postgres-multi_pkg_setup() {
- local user_slot
-
- # _POSTGRES_COMPAT is created in postgres.eclass
- for user_slot in "${_POSTGRES_COMPAT[@]}"; do
- use "postgres_targets_postgres${user_slot/\./_}" && \
- _POSTGRES_INTERSECT_SLOTS+=( "${user_slot}" )
- done
-
- if [[ "${#_POSTGRES_INTERSECT_SLOTS[@]}" -eq "0" ]]; then
- die "One of the postgres_targets_postgresSL_OT use flags must be enabled"
- fi
-
- einfo "Multibuild variants: ${_POSTGRES_INTERSECT_SLOTS[@]}"
-}
-
-# @FUNCTION: postgres-multi_src_prepare
-# @DESCRIPTION:
-# Calls eapply_user then copies ${S} into a build directory for each
-# intersect of POSTGRES_TARGETS and POSTGRES_COMPAT.
-postgres-multi_src_prepare() {
- if [[ "${#_POSTGRES_INTERSECT_SLOTS[@]}" -eq "0" ]]; then
- eerror "Internal array _POSTGRES_INTERSECT_SLOTS is empty."
- die "Did you forget to call postgres-multi_pkg_setup?"
- fi
-
- # Check that the slot has been emerged (Should be prevented by
- # Portage, but won't be caught by /usr/bin/ebuild)
- local slot
- for slot in ${_POSTGRES_INTERSECT_SLOTS[@]} ; do
- if [[ -z $(which pg_config${slot/.} 2> /dev/null) ]] ; then
- eerror
- eerror "postgres_targets_postgres${slot/.} use flag is enabled, but hasn't been emerged."
- eerror
- die "a postgres_targets use flag is enabled, but not emerged"
- fi
- done
-
- case ${EAPI:-0} in
- 0|1|2|3|4|5) epatch_user ;;
- 6) eapply_user ;;
- esac
-
- local MULTIBUILD_VARIANT
- local MULTIBUILD_VARIANTS=("${_POSTGRES_INTERSECT_SLOTS[@]}")
- multibuild_copy_sources
-}
-
-# @FUNCTION: postgres-multi_src_compile
-# @DESCRIPTION:
-# Runs `emake' in each build directory
-postgres-multi_src_compile() {
- postgres-multi_foreach emake
-}
-
-# @FUNCTION: postgres-multi_src_install
-# @DESCRIPTION:
-# Runs `emake install DESTDIR="${D}"' in each build directory.
-postgres-multi_src_install() {
- postgres-multi_foreach emake install DESTDIR="${D}"
-}
-
-# @FUNCTION: postgres-multi_src_test
-# @DESCRIPTION:
-# Runs `emake installcheck' in each build directory.
-postgres-multi_src_test() {
- postgres-multi_foreach emake installcheck
-}
diff --git a/eclass/prefix.eclass b/eclass/prefix.eclass
index 8ae3e3a531..0571dd1fb2 100644
--- a/eclass/prefix.eclass
+++ b/eclass/prefix.eclass
@@ -1,16 +1,25 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: prefix.eclass
# @MAINTAINER:
# Feel free to contact the Prefix team through if
# you have problems, suggestions or questions.
+# @SUPPORTED_EAPIS: 5 6 7 8
# @BLURB: Eclass to provide Prefix functionality
# @DESCRIPTION:
# Gentoo Prefix allows users to install into a self defined offset
# located somewhere in the filesystem. Prefix ebuilds require
# additional functions and variables which are defined by this eclass.
+case ${EAPI:-0} in
+ [5678]) ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_PREFIX_ECLASS} ]]; then
+_PREFIX_ECLASS=1
+
# @ECLASS-VARIABLE: EPREFIX
# @DESCRIPTION:
# The offset prefix of a Gentoo Prefix installation. When Gentoo Prefix
@@ -111,7 +120,7 @@ hprefixify() {
}
# @FUNCTION: prefixify_ro
-# @USAGE: prefixify_ro .
+# @USAGE:
# @DESCRIPTION:
# prefixify a read-only file.
# copies the files to ${T}, prefixies it, echos the new file.
@@ -136,3 +145,5 @@ prefixify_ro() {
fi
}
# vim: tw=72:
+
+fi
diff --git a/eclass/readme.gentoo-r1.eclass b/eclass/readme.gentoo-r1.eclass
index dfa3b52b67..0d30217912 100644
--- a/eclass/readme.gentoo-r1.eclass
+++ b/eclass/readme.gentoo-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: readme.gentoo-r1.eclass
@@ -6,7 +6,7 @@
# Pacho Ramos
# @AUTHOR:
# Author: Pacho Ramos
-# @SUPPORTED_EAPIS: 4 5 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: install a doc file shown via elog messages
# @DESCRIPTION:
# An eclass for installing a README.gentoo doc file recording tips
@@ -20,17 +20,16 @@
if [[ -z ${_README_GENTOO_ECLASS} ]]; then
_README_GENTOO_ECLASS=1
-case "${EAPI:-0}" in
- 0|1|2|3)
- die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
- ;;
- 4|5|6|7)
- ;;
- *)
- die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
- ;;
+case ${EAPI} in
+ 6|7|8) ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
+# @ECLASS-VARIABLE: DOC_CONTENTS
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# The information that is used to create the README.gentoo file.
+
# @ECLASS-VARIABLE: DISABLE_AUTOFORMATTING
# @DEFAULT_UNSET
# @DESCRIPTION:
@@ -76,7 +75,10 @@ readme.gentoo_create_doc() {
die "You are not specifying README.gentoo contents!"
fi
- dodoc "${T}"/README.gentoo
+ ( # subshell to avoid pollution of calling environment
+ docinto .
+ dodoc "${T}"/README.gentoo
+ ) || die
README_GENTOO_DOC_VALUE=$(< "${T}/README.gentoo")
}
diff --git a/eclass/sgml-catalog.eclass b/eclass/sgml-catalog.eclass
deleted file mode 100644
index 5486533c2e..0000000000
--- a/eclass/sgml-catalog.eclass
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: sgml-catalog.eclass
-# @MAINTAINER:
-# No maintainer
-# @AUTHOR:
-# Author Matthew Turk
-# @BLURB: Functions for installing SGML catalogs
-
-case ${EAPI:-0} in
- 0|1|2|3|4|5) inherit base ;;
- *) ;;
-esac
-
-DEPEND=">=app-text/sgml-common-0.6.3-r2"
-
-# @ECLASS-VARIABLE: SGML_TOINSTALL
-# @DESCRIPTION:
-# An array of catalogs, arranged in pairs.
-# Each pair consists of a centralized catalog followed by an ordinary catalog.
-SGML_TOINSTALL=()
-
-# @FUNCTION: sgml-catalog_cat_include
-# @USAGE:
-# @DESCRIPTION:
-# Appends a catalog pair to the SGML_TOINSTALL array.
-sgml-catalog_cat_include() {
- debug-print function $FUNCNAME $*
- SGML_TOINSTALL+=("$1" "$2")
-}
-
-# @FUNCTION: sgml-catalog_cat_doinstall
-# @USAGE:
-# @DESCRIPTION:
-# Adds an ordinary catalog to a centralized catalog.
-sgml-catalog_cat_doinstall() {
- debug-print function $FUNCNAME $*
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
- "${EPREFIX}"/usr/bin/install-catalog --add "${EPREFIX}$1" "${EPREFIX}$2" &>/dev/null
-}
-
-# @FUNCTION: sgml-catalog_cat_doremove
-# @USAGE:
-# @DESCRIPTION:
-# Removes an ordinary catalog from a centralized catalog.
-sgml-catalog_cat_doremove() {
- debug-print function $FUNCNAME $*
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
- "${EPREFIX}"/usr/bin/install-catalog --remove "${EPREFIX}$1" "${EPREFIX}$2" &>/dev/null
-}
-
-sgml-catalog_pkg_postinst() {
- debug-print function $FUNCNAME $*
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
-
- set -- "${SGML_TOINSTALL[@]}"
-
- while (( $# )); do
- if [[ ! -e "${EPREFIX}$2" ]]; then
- ewarn "${EPREFIX}$2 doesn't appear to exist, although it ought to!"
- shift 2
- continue
- fi
- einfo "Now adding ${EPREFIX}$2 to ${EPREFIX}$1 and ${EPREFIX}/etc/sgml/catalog"
- sgml-catalog_cat_doinstall "$1" "$2"
- shift 2
- done
- sgml-catalog_cleanup
-}
-
-sgml-catalog_pkg_prerm() {
- sgml-catalog_cleanup
-}
-
-sgml-catalog_pkg_postrm() {
- debug-print function $FUNCNAME $*
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
-
- set -- "${SGML_TOINSTALL[@]}"
-
- while (( $# )); do
- einfo "Now removing ${EPREFIX}$2 from ${EPREFIX}$1 and ${EPREFIX}/etc/sgml/catalog"
- sgml-catalog_cat_doremove "$1" "$2"
- shift 2
- done
-}
-
-sgml-catalog_cleanup() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
- if [ -e "${EPREFIX}/usr/bin/gensgmlenv" ]
- then
- einfo Regenerating SGML environment variables ...
- gensgmlenv
- grep -v export "${EPREFIX}/etc/sgml/sgml.env" > "${EPREFIX}/etc/env.d/93sgmltools-lite"
- fi
-}
-
-sgml-catalog_src_compile() {
- return
-}
-
-EXPORT_FUNCTIONS pkg_postrm pkg_postinst src_compile pkg_prerm
diff --git a/eclass/ssl-cert.eclass b/eclass/ssl-cert.eclass
index 0e7294f622..9d01fd10f5 100644
--- a/eclass/ssl-cert.eclass
+++ b/eclass/ssl-cert.eclass
@@ -1,11 +1,12 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: ssl-cert.eclass
# @MAINTAINER:
+# maintainer-needed@gentoo.org
# @AUTHOR:
# Max Kalika
-# @SUPPORTED_EAPIS: 1 2 3 4 5 6 7
+# @SUPPORTED_EAPIS: 6 7 8
# @BLURB: Eclass for SSL certificates
# @DESCRIPTION:
# This eclass implements a standard installation procedure for installing
@@ -13,43 +14,42 @@
# @EXAMPLE:
# "install_cert /foo/bar" installs ${ROOT}/foo/bar.{key,csr,crt,pem}
-# Guard against unsupported EAPIs. We need EAPI >= 1 for slot dependencies.
-case "${EAPI:-0}" in
- 0)
- die "${ECLASS}.eclass: EAPI=0 is not supported. Please upgrade to EAPI >= 1."
- ;;
- 1|2|3|4|5|6|7)
- ;;
- *)
- die "${ECLASS}.eclass: EAPI=${EAPI} is not supported yet."
- ;;
+case "${EAPI}" in
+ 6|7|8) ;;
+ *) die "EAPI=${EAPI:-0} is not supported" ;;
esac
+if [[ ! ${_SSL_CERT_ECLASS} ]]; then
+_SSL_CERT_ECLASS=1
+
# @ECLASS-VARIABLE: SSL_CERT_MANDATORY
+# @PRE_INHERIT
# @DESCRIPTION:
# Set to non zero if ssl-cert is mandatory for ebuild.
: ${SSL_CERT_MANDATORY:=0}
# @ECLASS-VARIABLE: SSL_CERT_USE
+# @PRE_INHERIT
# @DESCRIPTION:
# Use flag to append dependency to.
: ${SSL_CERT_USE:=ssl}
# @ECLASS-VARIABLE: SSL_DEPS_SKIP
+# @PRE_INHERIT
# @DESCRIPTION:
# Set to non zero to skip adding to DEPEND and IUSE.
: ${SSL_DEPS_SKIP:=0}
if [[ "${SSL_DEPS_SKIP}" == "0" ]]; then
if [[ "${SSL_CERT_MANDATORY}" == "0" ]]; then
- SSL_DEPEND="${SSL_CERT_USE}? ( || ( dev-libs/openssl:0 dev-libs/libressl:0 ) )"
+ SSL_DEPEND="${SSL_CERT_USE}? ( dev-libs/openssl:0 )"
IUSE="${SSL_CERT_USE}"
else
- SSL_DEPEND="|| ( dev-libs/openssl:0 dev-libs/libressl:0 )"
+ SSL_DEPEND="dev-libs/openssl:0"
fi
case "${EAPI}" in
- 1|2|3|4|5|6)
+ 6)
DEPEND="${SSL_DEPEND}"
;;
*)
@@ -61,12 +61,12 @@ if [[ "${SSL_DEPS_SKIP}" == "0" ]]; then
fi
# @FUNCTION: gen_cnf
+# @INTERNAL
# @USAGE:
# @DESCRIPTION:
# Initializes variables and generates the needed
# OpenSSL configuration file and a CA serial file
#
-# Access: private
gen_cnf() {
# Location of the config file
SSL_CONF="${T}/${$}ssl.cnf"
@@ -113,13 +113,13 @@ gen_cnf() {
}
# @FUNCTION: get_base
+# @INTERNAL
# @USAGE: [if_ca]
# @RETURN:
# @DESCRIPTION:
# Simple function to determine whether we're creating
# a CA (which should only be done once) or final part
#
-# Access: private
get_base() {
if [ "${1}" ] ; then
echo "${T}/${$}ca"
@@ -129,32 +129,28 @@ get_base() {
}
# @FUNCTION: gen_key
+# @INTERNAL
# @USAGE:
# @DESCRIPTION:
# Generates an RSA key
#
-# Access: private
gen_key() {
local base=$(get_base "$1")
ebegin "Generating ${SSL_BITS} bit RSA key${1:+ for CA}"
- if openssl version | grep -i libressl > /dev/null; then
- openssl genrsa -out "${base}.key" "${SSL_BITS}" &> /dev/null
- else
openssl genrsa -rand "${SSL_RANDOM}" \
-out "${base}.key" "${SSL_BITS}" &> /dev/null
- fi
eend $?
return $?
}
# @FUNCTION: gen_csr
+# @INTERNAL
# @USAGE:
# @DESCRIPTION:
# Generates a certificate signing request using
# the key made by gen_key()
#
-# Access: private
gen_csr() {
local base=$(get_base "$1")
ebegin "Generating Certificate Signing Request${1:+ for CA}"
@@ -166,6 +162,7 @@ gen_csr() {
}
# @FUNCTION: gen_crt
+# @INTERNAL
# @USAGE:
# @DESCRIPTION:
# Generates either a self-signed CA certificate using
@@ -173,7 +170,6 @@ gen_csr() {
# a signed server certificate using the CA cert previously
# created by gen_crt()
#
-# Access: private
gen_crt() {
local base=$(get_base "$1")
if [ "${1}" ] ; then
@@ -196,12 +192,12 @@ gen_crt() {
}
# @FUNCTION: gen_pem
+# @INTERNAL
# @USAGE:
# @DESCRIPTION:
# Generates a PEM file by concatinating the key
# and cert file created by gen_key() and gen_cert()
#
-# Access: private
gen_pem() {
local base=$(get_base "$1")
ebegin "Generating PEM Certificate"
@@ -220,7 +216,6 @@ gen_pem() {
#
# Example: "install_cert /foo/bar" installs ${ROOT}/foo/bar.{key,csr,crt,pem}
#
-# Access: public
install_cert() {
if [ $# -lt 1 ] ; then
eerror "At least one argument needed"
@@ -284,3 +279,5 @@ install_cert() {
ewarn "Some requested certificates were not generated"
fi
}
+
+fi
diff --git a/eclass/subversion.eclass b/eclass/subversion.eclass
index d9f9daf7eb..8b12382a64 100644
--- a/eclass/subversion.eclass
+++ b/eclass/subversion.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: subversion.eclass
@@ -6,37 +6,32 @@
# Akinori Hattori
# @AUTHOR:
# Original Author: Akinori Hattori
-# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6
-# @BLURB: The subversion eclass is written to fetch software sources from subversion repositories
+# @SUPPORTED_EAPIS: 6 7 8
+# @BLURB: Fetch software sources from subversion repositories
# @DESCRIPTION:
-# The subversion eclass provides functions to fetch, patch and bootstrap
-# software sources from subversion repositories.
-
-inherit eutils
+# The subversion eclass provides functions to fetch software sources
+# from subversion repositories.
ESVN="${ECLASS}"
-case "${EAPI:-0}" in
- 0|1)
- EXPORT_FUNCTIONS src_unpack pkg_preinst
- DEPEND="dev-vcs/subversion"
- ;;
- 2|3|4|5)
- EXPORT_FUNCTIONS src_unpack src_prepare pkg_preinst
- DEPEND="|| ( dev-vcs/subversion[http] dev-vcs/subversion[webdav-neon] dev-vcs/subversion[webdav-serf] )"
- ;;
- 6)
- EXPORT_FUNCTIONS src_unpack pkg_preinst
- DEPEND="|| ( dev-vcs/subversion[http] dev-vcs/subversion[webdav-neon] dev-vcs/subversion[webdav-serf] )"
- ;;
- *)
- die "EAPI ${EAPI} is not supported in subversion.eclass"
- ;;
+case ${EAPI} in
+ 6|7|8) inherit estack ;;
+ *) die "${ESVN}: EAPI ${EAPI:-0} is not supported" ;;
esac
-DEPEND+=" net-misc/rsync"
+PROPERTIES+=" live"
+
+DEPEND="
+ dev-vcs/subversion[http(+)]
+ net-misc/rsync"
+
+case ${EAPI} in
+ 6) ;;
+ *) BDEPEND="${DEPEND}"; DEPEND="" ;;
+esac
# @ECLASS-VARIABLE: ESVN_STORE_DIR
+# @USER_VARIABLE
# @DESCRIPTION:
# subversion sources store directory. Users may override this in /etc/portage/make.conf
[[ -z ${ESVN_STORE_DIR} ]] && ESVN_STORE_DIR="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}/svn-src"
@@ -66,7 +61,7 @@ ESVN_OPTIONS="${ESVN_OPTIONS:-}"
# @DESCRIPTION:
# repository uri
#
-# e.g. http://foo/trunk, svn://bar/trunk, svn://bar/branch/foo@1234
+# e.g. http://example.org/trunk, svn://example.org/branch/foo@1234
#
# supported URI schemes:
# http://
@@ -121,24 +116,6 @@ ESVN_PASSWORD="${ESVN_PASSWORD:-}"
# default: ${PN/-svn}.
ESVN_PROJECT="${ESVN_PROJECT:-${PN/-svn}}"
-# @ECLASS-VARIABLE: ESVN_BOOTSTRAP
-# @DESCRIPTION:
-# Bootstrap script or command like autogen.sh or etc..
-# Removed in EAPI 6 and later.
-ESVN_BOOTSTRAP="${ESVN_BOOTSTRAP:-}"
-
-# @ECLASS-VARIABLE: ESVN_PATCHES
-# @DESCRIPTION:
-# subversion eclass can apply patches in subversion_bootstrap().
-# you can use regexp in this variable like *.diff or *.patch or etc.
-# NOTE: patches will be applied before ESVN_BOOTSTRAP is processed.
-#
-# Patches are searched both in ${PWD} and ${FILESDIR}, if not found in either
-# location, the installation dies.
-#
-# Removed in EAPI 6 and later, use PATCHES instead.
-ESVN_PATCHES="${ESVN_PATCHES:-}"
-
# @ECLASS-VARIABLE: ESVN_RESTRICT
# @DESCRIPTION:
# this should be a space delimited list of subversion eclass features to
@@ -148,6 +125,8 @@ ESVN_PATCHES="${ESVN_PATCHES:-}"
ESVN_RESTRICT="${ESVN_RESTRICT:-}"
# @ECLASS-VARIABLE: ESVN_OFFLINE
+# @USER_VARIABLE
+# @DEFAULT_UNSET
# @DESCRIPTION:
# Set this variable to a non-empty value to disable the automatic updating of
# an svn source tree. This is intended to be set outside the subversion source
@@ -155,6 +134,7 @@ ESVN_RESTRICT="${ESVN_RESTRICT:-}"
ESVN_OFFLINE="${ESVN_OFFLINE:-${EVCS_OFFLINE}}"
# @ECLASS-VARIABLE: ESVN_UMASK
+# @USER_VARIABLE
# @DESCRIPTION:
# Set this variable to a custom umask. This is intended to be set by users.
# By setting this to something like 002, it can make life easier for people
@@ -165,6 +145,7 @@ ESVN_OFFLINE="${ESVN_OFFLINE:-${EVCS_OFFLINE}}"
ESVN_UMASK="${ESVN_UMASK:-${EVCS_UMASK}}"
# @ECLASS-VARIABLE: ESVN_UP_FREQ
+# @USER_VARIABLE
# @DESCRIPTION:
# Set the minimum number of hours between svn up'ing in any given svn module. This is particularly
# useful for split KDE ebuilds where we want to ensure that all submodules are compiled for the same
@@ -172,6 +153,7 @@ ESVN_UMASK="${ESVN_UMASK:-${EVCS_UMASK}}"
ESVN_UP_FREQ="${ESVN_UP_FREQ:=}"
# @ECLASS-VARIABLE: ESCM_LOGDIR
+# @USER_VARIABLE
# @DESCRIPTION:
# User configuration variable. If set to a path such as e.g. /var/log/scm any
# package inheriting from subversion.eclass will record svn revision to
@@ -362,50 +344,6 @@ subversion_fetch() {
echo
}
-# @FUNCTION: subversion_bootstrap
-# @DESCRIPTION:
-# Apply patches in ${ESVN_PATCHES} and run ${ESVN_BOOTSTRAP} if specified.
-# Removed in EAPI 6 and later.
-subversion_bootstrap() {
- [[ ${EAPI} == [012345] ]] || die "${FUNCNAME} is removed from subversion.eclass in EAPI 6 and later"
-
- if has "export" ${ESVN_RESTRICT}; then
- return
- fi
-
- cd "${S}"
-
- if [[ -n ${ESVN_PATCHES} ]]; then
- local patch fpatch
- einfo "apply patches -->"
- for patch in ${ESVN_PATCHES}; do
- if [[ -f ${patch} ]]; then
- epatch "${patch}"
- else
- for fpatch in ${FILESDIR}/${patch}; do
- if [[ -f ${fpatch} ]]; then
- epatch "${fpatch}"
- else
- die "${ESVN}: ${patch} not found"
- fi
- done
- fi
- done
- echo
- fi
-
- if [[ -n ${ESVN_BOOTSTRAP} ]]; then
- einfo "begin bootstrap -->"
- if [[ -f ${ESVN_BOOTSTRAP} && -x ${ESVN_BOOTSTRAP} ]]; then
- einfo " bootstrap with a file: ${ESVN_BOOTSTRAP}"
- eval "./${ESVN_BOOTSTRAP}" || die "${ESVN}: can't execute ESVN_BOOTSTRAP."
- else
- einfo " bootstrap with command: ${ESVN_BOOTSTRAP}"
- eval "${ESVN_BOOTSTRAP}" || die "${ESVN}: can't eval ESVN_BOOTSTRAP."
- fi
- fi
-}
-
# @FUNCTION: subversion_wc_info
# @USAGE: [repo_uri]
# @RETURN: ESVN_WC_URL, ESVN_WC_ROOT, ESVN_WC_UUID, ESVN_WC_REVISION and ESVN_WC_PATH
@@ -434,21 +372,9 @@ subversion_wc_info() {
# @FUNCTION: subversion_src_unpack
# @DESCRIPTION:
-# Default src_unpack. Fetch and, in older EAPIs, bootstrap.
+# Default src_unpack. Fetch.
subversion_src_unpack() {
subversion_fetch || die "${ESVN}: unknown problem occurred in subversion_fetch."
- if has "${EAPI:-0}" 0 1; then
- subversion_bootstrap || die "${ESVN}: unknown problem occurred in subversion_bootstrap."
- fi
-}
-
-# @FUNCTION: subversion_src_prepare
-# @DESCRIPTION:
-# Default src_prepare. Bootstrap.
-# Removed in EAPI 6 and later.
-subversion_src_prepare() {
- [[ ${EAPI} == [012345] ]] || die "${FUNCNAME} is removed from subversion.eclass in EAPI 6 and later"
- subversion_bootstrap || die "${ESVN}: unknown problem occurred in subversion_bootstrap."
}
# @FUNCTION: subversion_pkg_preinst
@@ -458,10 +384,9 @@ subversion_src_prepare() {
# want the logs to stick around if packages are uninstalled without messing with
# config protection.
subversion_pkg_preinst() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EROOT="${ROOT}"
local pkgdate=$(date "+%Y%m%d %H:%M:%S")
if [[ -n ${ESCM_LOGDIR} ]]; then
- local dir="${EROOT}/${ESCM_LOGDIR}/${CATEGORY}"
+ local dir="${EROOT%/}${ESCM_LOGDIR}/${CATEGORY}"
if [[ ! -d ${dir} ]]; then
mkdir -p "${dir}" || eerror "Failed to create '${dir}' for logging svn revision"
fi
@@ -538,3 +463,5 @@ subversion__get_peg_revision() {
echo "${peg_rev}"
}
+
+EXPORT_FUNCTIONS src_unpack pkg_preinst
diff --git a/eclass/unpacker.eclass b/eclass/unpacker.eclass
index 370f0a9c59..4c0641d59c 100644
--- a/eclass/unpacker.eclass
+++ b/eclass/unpacker.eclass
@@ -1,9 +1,10 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: unpacker.eclass
# @MAINTAINER:
# base-system@gentoo.org
+# @SUPPORTED_EAPIS: 5 6 7 8
# @BLURB: helpers for extraneous file formats and consistent behavior across EAPIs
# @DESCRIPTION:
# Some extraneous file formats are not part of PMS, or are only in certain
@@ -14,10 +15,18 @@
# - merge rpm unpacking
# - support partial unpacks?
+case ${EAPI:-0} in
+ [5678]) ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
if [[ -z ${_UNPACKER_ECLASS} ]]; then
_UNPACKER_ECLASS=1
+inherit toolchain-funcs
+
# @ECLASS-VARIABLE: UNPACKER_BZ2
+# @USER_VARIABLE
# @DEFAULT_UNSET
# @DESCRIPTION:
# Utility to use to decompress bzip2 files. Will dynamically pick between
@@ -25,6 +34,7 @@ _UNPACKER_ECLASS=1
# Note: this is meant for users to set, not ebuilds.
# @ECLASS-VARIABLE: UNPACKER_LZIP
+# @USER_VARIABLE
# @DEFAULT_UNSET
# @DESCRIPTION:
# Utility to use to decompress lzip files. Will dynamically pick between
@@ -279,7 +289,7 @@ unpack_deb() {
done
} < "${deb}"
else
- ar x "${deb}"
+ $(tc-getBUILD_AR) x "${deb}" || die
fi
unpacker ./data.tar*
@@ -325,6 +335,47 @@ unpack_zip() {
[[ $? -le 1 ]] || die "unpacking ${zip} failed (arch=unpack_zip)"
}
+# @FUNCTION: unpack_7z
+# @USAGE: <7z file>
+# @DESCRIPTION:
+# Unpack 7z archives.
+unpack_7z() {
+ [[ $# -eq 1 ]] || die "Usage: ${FUNCNAME} "
+
+ local p7z=$(find_unpackable_file "$1")
+ unpack_banner "${p7z}"
+ local output="$(7z x -y "${p7z}")"
+
+ if [ $? -ne 0 ]; then
+ echo "${output}" >&2
+ die "unpacking ${p7z} failed (arch=unpack_7z)"
+ fi
+}
+
+# @FUNCTION: unpack_rar
+# @USAGE:
+# @DESCRIPTION:
+# Unpack RAR archives.
+unpack_rar() {
+ [[ $# -eq 1 ]] || die "Usage: ${FUNCNAME} "
+
+ local rar=$(find_unpackable_file "$1")
+ unpack_banner "${rar}"
+ unrar x -idq -o+ "${rar}" || die "unpacking ${rar} failed (arch=unpack_rar)"
+}
+
+# @FUNCTION: unpack_lha
+# @USAGE:
+# @DESCRIPTION:
+# Unpack LHA/LZH archives.
+unpack_lha() {
+ [[ $# -eq 1 ]] || die "Usage: ${FUNCNAME} "
+
+ local lha=$(find_unpackable_file "$1")
+ unpack_banner "${lha}"
+ lha xfq "${lha}" || die "unpacking ${lha} failed (arch=unpack_lha)"
+}
+
# @FUNCTION: _unpacker
# @USAGE:
# @INTERNAL
@@ -354,6 +405,8 @@ _unpacker() {
*.lz)
: ${UNPACKER_LZIP:=$(type -P plzip || type -P pdlzip || type -P lzip)}
comp="${UNPACKER_LZIP} -dc" ;;
+ *.zst)
+ comp="zstd -dfc" ;;
esac
# then figure out if there are any archiving aspects
@@ -383,6 +436,18 @@ _unpacker() {
arch="unpack_zip" ;;
esac
+ # 7z, rar and lha/lzh are handled by package manager in EAPI < 8
+ if [[ ${EAPI} != [567] ]]; then
+ case ${m} in
+ *.7z)
+ arch="unpack_7z" ;;
+ *.rar|*.RAR)
+ arch="unpack_rar" ;;
+ *.LHA|*.LHa|*.lha|*.lzh)
+ arch="unpack_lha" ;;
+ esac
+ fi
+
# finally do the unpack
if [[ -z ${arch}${comp} ]] ; then
unpack "$1"
@@ -444,9 +509,6 @@ unpacker_src_uri_depends() {
case ${uri} in
*.cpio.*|*.cpio)
d="app-arch/cpio" ;;
- *.deb)
- # platforms like AIX don't have a good ar
- d="kernel_AIX? ( app-arch/deb2targz )" ;;
*.rar|*.RAR)
d="app-arch/unrar" ;;
*.7z)
@@ -457,6 +519,10 @@ unpacker_src_uri_depends() {
d="app-arch/unzip" ;;
*.lz)
d="|| ( app-arch/plzip app-arch/pdlzip app-arch/lzip )" ;;
+ *.zst)
+ d="app-arch/zstd" ;;
+ *.LHA|*.LHa|*.lha|*.lzh)
+ d="app-arch/lha" ;;
esac
deps+=" ${d}"
done
diff --git a/eclass/vim-plugin.eclass b/eclass/vim-plugin.eclass
index a0ba714f6e..50e727e98f 100644
--- a/eclass/vim-plugin.eclass
+++ b/eclass/vim-plugin.eclass
@@ -1,9 +1,10 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: vim-plugin.eclass
# @MAINTAINER:
# vim@gentoo.org
+# @SUPPORTED_EAPIS: 6 7
# @BLURB: used for installing vim plugins
# @DESCRIPTION:
# This eclass simplifies installation of app-vim plugins into
@@ -11,7 +12,12 @@
# which is read automatically by vim. The only exception is
# documentation, for which we make a special case via vim-doc.eclass.
-inherit estack vim-doc
+case ${EAPI} in
+ 6|7);;
+ *) die "EAPI ${EAPI:-0} unsupported (too old)";;
+esac
+
+inherit vim-doc
EXPORT_FUNCTIONS src_install pkg_postinst pkg_postrm
VIM_PLUGIN_VIM_VERSION="${VIM_PLUGIN_VIM_VERSION:-7.3}"
@@ -33,47 +39,17 @@ SLOT="0"
# * installs all files in "${ED}"/usr/share/vim/vimfiles.
vim-plugin_src_install() {
has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
- local f
-
- # When globbing, if nothing exists, the shell literally returns the glob
- # pattern. So turn on nullglob and extglob options to avoid this.
- eshopts_push -s extglob
- eshopts_push -s nullglob
-
- ebegin "Cleaning up unwanted files and directories"
- # We're looking for dotfiles, dotdirectories and Makefiles here.
- local obj
- eval "local matches=(@(.[^.]|.??*|Makefile*))"
- for obj in "${matches[@]}"; do
- rm -rv "${obj}" || die "cannot remove ${obj}"
- done
- eend $?
-
- # Turn those options back off.
- eshopts_pop
- eshopts_pop
# Install non-vim-help-docs
- cd "${S}" || die "couldn't cd in ${S}"
- local f
- for f in *; do
- [[ -f "${f}" ]] || continue
- if [[ "${f}" = *.html ]]; then
- dohtml "${f}"
- else
- dodoc "${f}"
- fi
- rm "${f}" || die
- done
+ einstalldocs
# Install remainder of plugin
- cd "${WORKDIR}" || die "couldn't cd in ${WORKDIR}"
- dodir /usr/share/vim
- mv "${S}" "${ED}"/usr/share/vim/vimfiles || die \
- "couldn't move ${S} to ${ED}/usr/share/vim/vimfiles"
-
- # Set permissions
- fperms -R a+rX /usr/share/vim/vimfiles
+ insinto /usr/share/vim/vimfiles/
+ local d
+ for d in *; do
+ [[ -d "${d}" ]] || continue
+ doins -r "${d}"
+ done
}
# @FUNCTION: vim-plugin_pkg_postinst
@@ -150,31 +126,31 @@ update_vim_afterscripts() {
display_vim_plugin_help() {
local h
- if ! has_version ${CATEGORY}/${PN} ; then
- if [[ -n "${VIM_PLUGIN_HELPFILES}" ]] ; then
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ if [[ -n ${VIM_PLUGIN_HELPFILES} ]]; then
elog " "
elog "This plugin provides documentation via vim's help system. To"
elog "view it, use:"
- for h in ${VIM_PLUGIN_HELPFILES} ; do
+ for h in ${VIM_PLUGIN_HELPFILES}; do
elog " :help ${h}"
done
elog " "
- elif [[ -n "${VIM_PLUGIN_HELPTEXT}" ]] ; then
+ elif [[ -n ${VIM_PLUGIN_HELPTEXT} ]]; then
elog " "
while read h ; do
elog "$h"
done <<<"${VIM_PLUGIN_HELPTEXT}"
elog " "
- elif [[ -n "${VIM_PLUGIN_HELPURI}" ]] ; then
+ elif [[ -n ${VIM_PLUGIN_HELPURI} ]]; then
elog " "
elog "Documentation for this plugin is available online at:"
elog " ${VIM_PLUGIN_HELPURI}"
elog " "
fi
- if has "filetype" "${VIM_PLUGIN_MESSAGES}" ; then
+ if has filetype ${VIM_PLUGIN_MESSAGES}; then
elog "This plugin makes use of filetype settings. To enable these,"
elog "add lines like:"
elog " filetype plugin on"
diff --git a/eclass/vim-spell.eclass b/eclass/vim-spell.eclass
deleted file mode 100644
index 828a45310e..0000000000
--- a/eclass/vim-spell.eclass
+++ /dev/null
@@ -1,153 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: vim-spell.eclass
-# @MAINTAINER:
-# Vim Maintainers
-# @AUTHOR:
-# Ciaran McCreesh
-# @BLURB: Eclass for managing Vim spell files.
-# @DESCRIPTION:
-# How to make a vim spell file package using prebuilt spell lists
-# from upstream (${CODE} is the language's two letter code):
-#
-# * Get the ${CODE}.*.spl, ${CODE}.*.sug (if your language has them) and
-# README_${CODE}.txt files. Currently they're at
-# ftp://ftp.vim.org/pub/vim/unstable/runtime/spell/ (except for English,
-# which should be taken from CVS instead).
-#
-# * Stick them in vim-spell-${CODE}-$(date --iso | tr -d - ).tar.bz2 . Make sure
-# that they're in the appropriately named subdirectory to avoid having to mess
-# with S=.
-#
-# * Upload the tarball to the Gentoo mirrors.
-#
-# * Add your spell file to package.mask next to the other vim things. Vim
-# Project members will handle unmasking your spell packages when vim comes out
-# of package.mask.
-#
-# * Create the app-vim/vim-spell-${CODE} package. You should base your ebuild
-# upon app-vim/vim-spell-en. You will need to change VIM_SPELL_LANGUAGE,
-# KEYWORDS and LICENSE. Check the license carefully! The README will tell
-# you what it is.
-#
-# * Don't forget metadata.xml. You should list the Vim project and yourself
-# as maintainers. There is no need to join the Vim project just for spell
-# files. Here's an example of a metadata.xml file:
-#
-#
-#
-#
-#
-# your@email.tld
-# Your Name
-#
-#
-# vim@gentoo.org
-# Vim Maintainers
-#
-#
-#
-# Vim spell files for French (fr). Supported character sets are
-# UTF-8 and latin1.
-#
-#
-#
-# * Send an email to vim@gentoo.org to let us know.
-#
-# Don't forget to update your package as necessary.
-#
-# If there isn't an upstream-provided pregenerated spell file for your language
-# yet, read :help spell.txt from inside vim for instructions on how to create
-# spell files. It's best to let upstream know if you've generated spell files
-# for another language rather than keeping them Gentoo-specific.
-
-inherit eutils
-
-EXPORT_FUNCTIONS src_install pkg_postinst
-
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-SLOT="0"
-
-# @ECLASS-VARIABLE: VIM_SPELL_LANGUAGE
-# @DESCRIPTION:
-# This variable defines the language for the spell package being
-# installed.
-# The default value is "English".
-: ${VIM_SPELL_LANGUAGE:="English"}
-
-# @ECLASS-VARIABLE: VIM_SPELL_LOCALE
-# @INTERNAL
-# @DESCRIPTION:
-# This variable defines the locale for the current ebuild.
-# The default value is ${PN} stripped of the "vim-spell-" string.
-: ${VIM_SPELL_LOCALE:="${PN/vim-spell-/}"}
-
-# @ECLASS-VARIABLE: VIM_SPELL_DIRECTORY
-# @INTERNAL
-# @DESCRIPTION:
-# This variable defines the path to Vim spell files.
-: ${VIM_SPELL_DIRECTORY:="${EPREFIX}/usr/share/vim/vimfiles/spell/"}
-
-# @ECLASS-VARIABLE: DESCRIPTION
-# @DESCRIPTION:
-# This variable defines the DESCRIPTION for Vim spell ebuilds.
-: ${DESCRIPTION:="vim spell files: ${VIM_SPELL_LANGUAGE} (${VIM_SPELL_LOCALE})"}
-
-# @ECLASS-VARIABLE: HOMEPAGE
-# @DESCRIPTION:
-# This variable defines the HOMEPAGE for Vim spell ebuilds.
-: ${HOMEPAGE:="https://www.vim.org"}
-
-# @FUNCTION: vim-spell_src_install
-# @DESCRIPTION:
-# This function installs Vim spell files.
-vim-spell_src_install() {
- dodir "${VIM_SPELL_DIRECTORY}"
- insinto "${VIM_SPELL_DIRECTORY}"
-
- local had_spell_file=
- local f
- for f in *.spl; do
- if [[ -f "${f}" ]]; then
- doins "${f}"
- had_spell_file="yes"
- fi
- done
-
- for f in *.sug; do
- if [[ -f "${f}" ]]; then
- doins "${f}"
- fi
- done
-
- for f in README*; do
- dodoc "${f}"
- done
-
- [[ -z "${had_spell_file}" ]] && die "Didn't install any spell files?"
-}
-
-# @FUNCTION: vim-spell_pkg_postinst
-# @DESCRIPTION:
-# This function displays installed Vim spell files.
-vim-spell_pkg_postinst() {
- has "${EAPI:-0}" 0 1 2 && ! use prefix && EROOT="${ROOT}"
- echo
- elog "To enable ${VIM_SPELL_LANGUAGE} spell checking, use"
- elog " :setlocal spell spelllang=${VIM_SPELL_LOCALE}"
- echo
- elog "The following (Vim internal, not file) encodings are supported for"
- elog "this language:"
- local f enc
- for f in "${EROOT}${VIM_SPELL_DIRECTORY}/${VIM_SPELL_LOCALE}".*.spl; do
- enc="${f##*/${VIM_SPELL_LOCALE}.}"
- enc="${enc%.spl}"
- [[ -z "${enc}" ]] && continue
- elog " ${enc}"
- done
- echo
- elog "For further documentation, use:"
- elog " :help spell"
- echo
-}
diff --git a/net-misc/socat/Manifest b/net-misc/socat/Manifest
index 3a32dc6c64..8edac6c21e 100644
--- a/net-misc/socat/Manifest
+++ b/net-misc/socat/Manifest
@@ -1,3 +1,3 @@
-DIST socat-1.7.3.1.tar.bz2 488467 SHA256 d2da659540c38139f388e9437bfaae16bb458d174d056cb3228432a8f489fbaa SHA512 463340f578d4d1d54458b8ef9573ad3eff51dbcc736205e1b62e9a4782770d4bb76e6a07506350fd35405b130660559aaa79dfa2664c53ea268d7d64231f9b32 WHIRLPOOL 09f0fc537eaad194cac97cce73971c9f69047c648f03788fa69ac3444673ff73f143b2657d0ed28d082e2cfc36829304ed7bf0ff79c7ed75e96c991292f94dd4
-DIST socat-1.7.3.2.tar.bz2 493324 SHA256 e3561f808739383eb10fada1e5d4f26883f0311b34fd0af7837d0c95ef379251 SHA512 9ed4911deb09c36955b62a2efbcdfdff0e9d963fa30110e32396e49133d395afd7e61a19ca6a1a23e6e98ded4f603bcbb68c8eb3da4ce870f1450b8b6f7dd293 WHIRLPOOL d5b25ee77fd9ac77fd2a0dd33c39ae636cfe380608b8cee0d14f4d2e042bd53f9269edb466ae6c5403ccd5f5e2bff48b5f1ab15504957419f5ec759fc84a84f4
-DIST socat-2.0.0-b9.tar.bz2 516673 SHA256 49efb0a5c66b94b279014addc2851faf8ebbd1ec4b7e31c1de7e912d7b4983d2 SHA512 f728bd634feeeacd2f0e4020c1c6aafdadaef3ba9da818d9ae1195e9f48fb693b2bea8dbbb208af8daddd8d6405217113d5ce31d05c2e9b27f5d2fba6b1cc834 WHIRLPOOL e293f9da0fed9573a02658b79ae87c24e2d88c57f6d8b1ddaeecd52e035b5012eaebbfa82da80f8442da666114d14e1c2767cf929e57b634f762e198ed4e3b50
+DIST socat-1.7.4.2.tar.gz 653068 BLAKE2B 0eba89e2f8993e6c5f2ffaa57ca9e93ae89cb01bf9d6f0f0d5e9550d4cd7e6aa390b26120a47e3661772550f4fb189807bedd31d1477ff0065f478ef2be062ab SHA512 c331a6348e0febb35cd8adc2b116e3b8896cd7f64bcd93e507df4b8197ee1e6738ca256abf74c9b225e7a3769cf9643f0e237826125c6f390b5124ce0f10c972
+DIST socat-1.7.4.3.tar.gz 655520 BLAKE2B d91de7ef55332001e6439f64130555b9558338fb9b6c15c91ab5efc8f86a2e7e0f5fe0b292754731a198d83be5f511c3388c65c7c7f559c55691f42703f1849b SHA512 81cb34c245052b6a0ae38a711591358460b6070957af4a9eeb11a3cadb4aff184eeaedabbc7ecdc7fdf21a6126c06f90f19b24a87ce74b30bfd60a3879181046
+DIST socat-2.0.0-b9.tar.bz2 516673 BLAKE2B 808c8821b89ae2463074f87915dfae10f82b66ac6cd0b6ff56ab18f57c704e5a2a3ce76650152dccce41e4bd00e3a937948d4ade0a915b1f0e917c7543c6fc31 SHA512 f728bd634feeeacd2f0e4020c1c6aafdadaef3ba9da818d9ae1195e9f48fb693b2bea8dbbb208af8daddd8d6405217113d5ce31d05c2e9b27f5d2fba6b1cc834
diff --git a/net-misc/socat/files/socat-1.7.3.4-fno-common.patch b/net-misc/socat/files/socat-1.7.3.4-fno-common.patch
new file mode 100644
index 0000000000..a7dcf71c37
--- /dev/null
+++ b/net-misc/socat/files/socat-1.7.3.4-fno-common.patch
@@ -0,0 +1,24 @@
+--- a/filan.c
++++ b/filan.c
+@@ -30,7 +30,9 @@
+
+ /* dirty workaround so we dont get an error on AIX when being linked with
+ libwrap */
++#if _AIX
+ int allow_severity, deny_severity;
++#endif
+
+ /* global variables for configuring filan */
+ bool filan_followsymlinks;
+--- a/procan.c
++++ b/procan.c
+@@ -21,7 +21,9 @@
+
+ /* dirty workaround so we dont get an error on AIX when getting linked with
+ libwrap */
++#if _AIX
+ int allow_severity, deny_severity;
++#endif
+
+
+ int procan(FILE *outfile) {
diff --git a/net-misc/socat/files/socat-2.0.0_beta9-libressl.patch b/net-misc/socat/files/socat-2.0.0_beta9-libressl.patch
deleted file mode 100644
index 535297c04b..0000000000
--- a/net-misc/socat/files/socat-2.0.0_beta9-libressl.patch
+++ /dev/null
@@ -1,267 +0,0 @@
-From fbb0cc3b65a2ead522019fb461ae520371cc3ede Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marek=20Beh=C3=BAn?=
-Date: Mon, 6 Jun 2016 18:41:30 +0200
-Subject: [PATCH] Support compiling with LibreSSL 2.4.0
-
-This patch checks for macros OPENSSL_NO_COMP, OPENSSL_NO_EGD, and
-if disables those features if they are.
-
-Also add ifdef for HAVE_SSLv3_{client/server}_method in sslcls.c,
-since these were removed from LibreSSL 2.4.0.
----
- sslcls.c | 8 +++++++-
- sslcls.h | 4 +++-
- xio-openssl.c | 24 ++++++++++++++++++------
- xio-openssl.h | 4 +++-
- xioopts.c | 8 ++++++--
- xioopts.h | 4 +++-
- 6 files changed, 40 insertions(+), 12 deletions(-)
-
-diff --git a/sslcls.c b/sslcls.c
-index ea4c303..5011ef2 100644
---- a/sslcls.c
-+++ b/sslcls.c
-@@ -55,6 +55,7 @@ const SSL_METHOD *sycSSLv2_server_method(void) {
- }
- #endif
-
-+#if HAVE_SSLv3_client_method
- const SSL_METHOD *sycSSLv3_client_method(void) {
- const SSL_METHOD *result;
- Debug("SSLv3_client_method()");
-@@ -62,7 +63,9 @@ const SSL_METHOD *sycSSLv3_client_method(void) {
- Debug1("SSLv3_client_method() -> %p", result);
- return result;
- }
-+#endif
-
-+#if HAVE_SSLv3_server_method
- const SSL_METHOD *sycSSLv3_server_method(void) {
- const SSL_METHOD *result;
- Debug("SSLv3_server_method()");
-@@ -70,6 +73,7 @@ const SSL_METHOD *sycSSLv3_server_method(void) {
- Debug1("SSLv3_server_method() -> %p", result);
- return result;
- }
-+#endif
-
- const SSL_METHOD *sycSSLv23_client_method(void) {
- const SSL_METHOD *result;
-@@ -347,6 +351,7 @@ void sycSSL_free(SSL *ssl) {
- return;
- }
-
-+#ifndef OPENSSL_NO_EGD
- int sycRAND_egd(const char *path) {
- int result;
- Debug1("RAND_egd(\"%s\")", path);
-@@ -354,6 +359,7 @@ int sycRAND_egd(const char *path) {
- Debug1("RAND_egd() -> %d", result);
- return result;
- }
-+#endif
-
- DH *sycPEM_read_bio_DHparams(BIO *bp, DH **x, pem_password_cb *cb, void *u) {
- DH *result;
-@@ -391,7 +397,7 @@ int sycFIPS_mode_set(int onoff) {
- }
- #endif /* WITH_FIPS */
-
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- const COMP_METHOD *sycSSL_get_current_compression(SSL *ssl) {
- const COMP_METHOD *result;
- Debug1("SSL_get_current_compression(%p)", ssl);
-diff --git a/sslcls.h b/sslcls.h
-index 152fe5b..9fd8ef2 100644
---- a/sslcls.h
-+++ b/sslcls.h
-@@ -49,7 +49,9 @@ X509 *sycSSL_get_peer_certificate(SSL *ssl);
- int sycSSL_shutdown(SSL *ssl);
- void sycSSL_CTX_free(SSL_CTX *ctx);
- void sycSSL_free(SSL *ssl);
-+#ifndef OPENSSL_NO_EGD
- int sycRAND_egd(const char *path);
-+#endif
-
- DH *sycPEM_read_bio_DHparams(BIO *bp, DH **x, pem_password_cb *cb, void *u);
-
-@@ -57,7 +59,7 @@ BIO *sycBIO_new_file(const char *filename, const char *mode);
-
- int sycFIPS_mode_set(int onoff);
-
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- const COMP_METHOD *sycSSL_get_current_compression(SSL *ssl);
- const COMP_METHOD *sycSSL_get_current_expansion(SSL *ssl);
- const char *sycSSL_COMP_get_name(const COMP_METHOD *comp);
-diff --git a/xio-openssl.c b/xio-openssl.c
-index c7f283c..38dc20d 100644
---- a/xio-openssl.c
-+++ b/xio-openssl.c
-@@ -181,9 +181,11 @@ const struct optdesc opt_openssl_key = { "openssl-key", "key",
- const struct optdesc opt_openssl_dhparam = { "openssl-dhparam", "dh", OPT_OPENSSL_DHPARAM, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
- const struct optdesc opt_openssl_cafile = { "openssl-cafile", "cafile", OPT_OPENSSL_CAFILE, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
- const struct optdesc opt_openssl_capath = { "openssl-capath", "capath", OPT_OPENSSL_CAPATH, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
-+#ifndef OPENSSL_NO_EGD
- const struct optdesc opt_openssl_egd = { "openssl-egd", "egd", OPT_OPENSSL_EGD, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
-+#endif
- const struct optdesc opt_openssl_pseudo = { "openssl-pseudo", "pseudo", OPT_OPENSSL_PSEUDO, GROUP_OPENSSL, PH_SPEC, TYPE_BOOL, OFUNC_SPEC };
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- const struct optdesc opt_openssl_compress = { "openssl-compress", "compress", OPT_OPENSSL_COMPRESS, GROUP_OPENSSL, PH_SPEC, TYPE_STRING, OFUNC_SPEC };
- #endif
- #if WITH_FIPS
-@@ -220,7 +222,7 @@ int xio_reset_fips_mode(void) {
- static void openssl_conn_loginfo(SSL *ssl) {
- Notice1("SSL connection using %s", SSL_get_cipher(ssl));
-
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- {
- const COMP_METHOD *comp, *expansion;
-
-@@ -786,7 +788,7 @@ int _xioopen_openssl_listen(struct single *xfd,
- #endif /* WITH_LISTEN */
-
-
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- /* In OpenSSL 0.9.7 compression methods could be added using
- * SSL_COMP_add_compression_method(3), but the implemntation is not compatible
- * with the standard (RFC3749).
-@@ -857,8 +859,10 @@ int
- char *opt_dhparam = NULL; /* file name of DH params */
- char *opt_cafile = NULL; /* certificate authority file */
- char *opt_capath = NULL; /* certificate authority directory */
-+#ifndef OPENSSL_NO_EGD
- char *opt_egd = NULL; /* entropy gathering daemon socket path */
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#endif
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- char *opt_compress = NULL; /* compression method */
- #endif
- bool opt_pseudo = false; /* use pseudo entropy if nothing else */
-@@ -875,9 +879,11 @@ int
- retropt_string(opts, OPT_OPENSSL_CAPATH, &opt_capath);
- retropt_string(opts, OPT_OPENSSL_KEY, &opt_key);
- retropt_string(opts, OPT_OPENSSL_DHPARAM, &opt_dhparam);
-+#ifndef OPENSSL_NO_EGD
- retropt_string(opts, OPT_OPENSSL_EGD, &opt_egd);
-+#endif
- retropt_bool(opts,OPT_OPENSSL_PSEUDO, &opt_pseudo);
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- retropt_string(opts, OPT_OPENSSL_COMPRESS, &opt_compress);
- #endif
- #if WITH_FIPS
-@@ -1010,9 +1016,11 @@ int
- }
- }
-
-+#ifndef OPENSSL_NO_EGD
- if (opt_egd) {
- sycRAND_egd(opt_egd);
- }
-+#endif
-
- if (opt_pseudo) {
- long int randdata;
-@@ -1124,7 +1132,7 @@ int
- }
- #endif /* !defined(EC_KEY) */
-
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- if (opt_compress) {
- int result;
- result = openssl_setup_compression(*ctx, opt_compress);
-@@ -1238,7 +1246,11 @@ static int openssl_SSL_ERROR_SSL(int level, const char *funcname) {
- if (e == ((ERR_LIB_RAND<<24)|
- (RAND_F_SSLEAY_RAND_BYTES<<12)|
- (RAND_R_PRNG_NOT_SEEDED)) /*0x24064064*/) {
-+#ifdef OPENSSL_NO_EGD
-+ Error("too few entropy; use option \"pseudo\"");
-+#else
- Error("too few entropy; use options \"egd\" or \"pseudo\"");
-+#endif
- stat = STAT_NORETRY;
- } else {
- Msg2(level, "%s(): %s", funcname, ERR_error_string(e, buf));
-diff --git a/xio-openssl.h b/xio-openssl.h
-index 62586fc..f10ee0c 100644
---- a/xio-openssl.h
-+++ b/xio-openssl.h
-@@ -21,9 +21,11 @@ extern const struct optdesc opt_openssl_key;
- extern const struct optdesc opt_openssl_dhparam;
- extern const struct optdesc opt_openssl_cafile;
- extern const struct optdesc opt_openssl_capath;
-+#ifndef OPENSSL_NO_EGD
- extern const struct optdesc opt_openssl_egd;
-+#endif
- extern const struct optdesc opt_openssl_pseudo;
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- extern const struct optdesc opt_openssl_compress;
- #endif
- #if WITH_FIPS
-diff --git a/xioopts.c b/xioopts.c
-index 6c231f4..9a56298 100644
---- a/xioopts.c
-+++ b/xioopts.c
-@@ -303,7 +303,7 @@ const struct optname optionnames[] = {
- #if WITH_EXT2 && defined(EXT2_COMPR_FL)
- IF_ANY ("compr", &opt_ext2_compr)
- #endif
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- IF_OPENSSL("compress", &opt_openssl_compress)
- #endif
- #ifdef TCP_CONN_ABORT_THRESHOLD /* HP_UX */
-@@ -419,7 +419,9 @@ const struct optname optionnames[] = {
- #ifdef ECHOPRT
- IF_TERMIOS("echoprt", &opt_echoprt)
- #endif
-+#ifndef OPENSSL_NO_EGD
- IF_OPENSSL("egd", &opt_openssl_egd)
-+#endif
- IF_ANY ("end-close", &opt_end_close)
- IF_TERMIOS("eof", &opt_veof)
- IF_TERMIOS("eol", &opt_veol)
-@@ -1062,11 +1064,13 @@ const struct optname optionnames[] = {
- IF_OPENSSL("openssl-certificate", &opt_openssl_certificate)
- IF_OPENSSL("openssl-cipherlist", &opt_openssl_cipherlist)
- IF_OPENSSL("openssl-commonname", &opt_openssl_commonname)
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- IF_OPENSSL("openssl-compress", &opt_openssl_compress)
- #endif
- IF_OPENSSL("openssl-dhparam", &opt_openssl_dhparam)
-+#ifndef OPENSSL_NO_EGD
- IF_OPENSSL("openssl-egd", &opt_openssl_egd)
-+#endif
- #if WITH_FIPS
- IF_OPENSSL("openssl-fips", &opt_openssl_fips)
- #endif
-diff --git a/xioopts.h b/xioopts.h
-index 2a165f5..37d6883 100644
---- a/xioopts.h
-+++ b/xioopts.h
-@@ -478,11 +478,13 @@ enum e_optcode {
- OPT_OPENSSL_CERTIFICATE,
- OPT_OPENSSL_CIPHERLIST,
- OPT_OPENSSL_COMMONNAME,
--#if OPENSSL_VERSION_NUMBER >= 0x00908000L
-+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
- OPT_OPENSSL_COMPRESS,
- #endif
- OPT_OPENSSL_DHPARAM,
-+#ifndef OPENSSL_NO_EGD
- OPT_OPENSSL_EGD,
-+#endif
- OPT_OPENSSL_FIPS,
- OPT_OPENSSL_KEY,
- OPT_OPENSSL_METHOD,
---
-2.7.3
-
diff --git a/net-misc/socat/metadata.xml b/net-misc/socat/metadata.xml
index 2c2a7923cf..001f8b0465 100644
--- a/net-misc/socat/metadata.xml
+++ b/net-misc/socat/metadata.xml
@@ -1,8 +1,15 @@
-
+
+
+ sam@gentoo.org
+ Sam James
+
netmon@gentoo.org
Gentoo network monitoring and analysis project
+
+ cpe:/a:dest-unreach:socat
+
diff --git a/net-misc/socat/socat-1.7.3.1.ebuild b/net-misc/socat/socat-1.7.3.1.ebuild
deleted file mode 100644
index 63c88ab0a5..0000000000
--- a/net-misc/socat/socat-1.7.3.1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit autotools eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="Multipurpose relay (SOcket CAT)"
-HOMEPAGE="http://www.dest-unreach.org/socat/"
-MY_P=${P/_beta/-b}
-S="${WORKDIR}/${MY_P}"
-SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE="ssl readline ipv6 tcpd"
-
-DEPEND="
- ssl? ( dev-libs/openssl:0= )
- readline? ( sys-libs/readline:= )
- tcpd? ( sys-apps/tcp-wrappers )
-"
-RDEPEND="${DEPEND}"
-
-RESTRICT="test"
-
-DOCS=(
- BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
-)
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
- epatch "${FILESDIR}"/${PN}-1.7.3.1-stddef_h.patch
-
- eautoreconf
-}
-
-src_configure() {
- filter-flags '-Wno-error*' #293324
- tc-export AR
- econf \
- $(use_enable ssl openssl) \
- $(use_enable readline) \
- $(use_enable ipv6 ip6) \
- $(use_enable tcpd libwrap)
-}
-
-src_install() {
- default
-
- dohtml doc/*.html doc/*.css
-}
diff --git a/net-misc/socat/socat-1.7.3.2.ebuild b/net-misc/socat/socat-1.7.3.2.ebuild
deleted file mode 100644
index ba6cc50d96..0000000000
--- a/net-misc/socat/socat-1.7.3.2.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic toolchain-funcs
-
-DESCRIPTION="Multipurpose relay (SOcket CAT)"
-HOMEPAGE="http://www.dest-unreach.org/socat/"
-MY_P=${P/_beta/-b}
-S="${WORKDIR}/${MY_P}"
-SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE="bindist libressl ssl readline ipv6 tcpd"
-
-DEPEND="
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:= )
- )
- readline? ( sys-libs/readline:= )
- tcpd? ( sys-apps/tcp-wrappers )
-"
-RDEPEND="${DEPEND}"
-
-RESTRICT="test
- ssl? ( readline? ( bindist ) )"
-
-DOCS=(
- BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
-)
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
-)
-
-pkg_setup() {
- # bug #587740
- if use readline && use ssl; then
- elog "You are enabling both readline and openssl USE flags, the licenses"
- elog "for these packages conflict. You may not be able to legally"
- elog "redistribute the resulting binary."
- fi
-}
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- filter-flags '-Wno-error*' #293324
- tc-export AR
- econf \
- $(use_enable ssl openssl) \
- $(use_enable readline) \
- $(use_enable ipv6 ip6) \
- $(use_enable tcpd libwrap)
-}
-
-src_install() {
- default
-
- docinto html
- dodoc doc/*.html doc/*.css
-}
diff --git a/net-misc/socat/socat-1.7.4.2.ebuild b/net-misc/socat/socat-1.7.4.2.ebuild
new file mode 100644
index 0000000000..7bb1513b23
--- /dev/null
+++ b/net-misc/socat/socat-1.7.4.2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+MY_P=${P/_beta/-b}
+DESCRIPTION="Multipurpose relay (SOcket CAT)"
+HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
+SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+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"
+IUSE="bindist ipv6 readline ssl tcpd"
+
+DEPEND="ssl? ( dev-libs/openssl:0= )
+ readline? ( sys-libs/readline:= )
+ tcpd? ( sys-apps/tcp-wrappers )"
+RDEPEND="${DEPEND}"
+
+# Tests are a large bash script
+# Hard to disable individual tests needing network or privileges
+# in 1.7.4.2: FAILED: 59 329
+RESTRICT="test ssl? ( readline? ( bindist ) )"
+
+DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
+
+pkg_setup() {
+ # bug #587740
+ if use readline && use ssl ; then
+ elog "You are enabling both readline and openssl USE flags, the licenses"
+ elog "for these packages conflict. You may not be able to legally"
+ elog "redistribute the resulting binary."
+ fi
+}
+
+src_configure() {
+ # bug #293324
+ filter-flags '-Wno-error*'
+
+ tc-export AR
+
+ econf \
+ $(use_enable ssl openssl) \
+ $(use_enable readline) \
+ $(use_enable ipv6 ip6) \
+ $(use_enable tcpd libwrap)
+}
+
+src_install() {
+ default
+
+ docinto html
+ dodoc doc/*.html doc/*.css
+}
diff --git a/net-misc/socat/socat-1.7.4.3.ebuild b/net-misc/socat/socat-1.7.4.3.ebuild
new file mode 100644
index 0000000000..79675ef1a1
--- /dev/null
+++ b/net-misc/socat/socat-1.7.4.3.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+MY_P=${P/_beta/-b}
+DESCRIPTION="Multipurpose relay (SOcket CAT)"
+HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
+SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+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"
+IUSE="bindist ipv6 readline ssl tcpd"
+
+DEPEND="ssl? ( dev-libs/openssl:0= )
+ readline? ( sys-libs/readline:= )
+ tcpd? ( sys-apps/tcp-wrappers )"
+RDEPEND="${DEPEND}"
+
+# Tests are a large bash script
+# Hard to disable individual tests needing network or privileges
+# in 1.7.4.2: FAILED: 59 329
+RESTRICT="test ssl? ( readline? ( bindist ) )"
+
+DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
+
+pkg_setup() {
+ # bug #587740
+ if use readline && use ssl ; then
+ elog "You are enabling both readline and ssl (openssl) USE flags, the licenses"
+ elog "for these packages conflict. You may not be able to legally"
+ elog "redistribute the resulting binary."
+ fi
+}
+
+src_configure() {
+ # bug #293324
+ filter-flags '-Wno-error*'
+
+ tc-export AR
+
+ # getprotobynumber_r doesn't exist on musl, so avoid probing for it
+ # and possibly getting it wrong. TODO: fix configure?
+ # (Grabbed from Alpine Linux: https://git.alpinelinux.org/aports/commit/main/socat/APKBUILD?id=5edc9195355ced3db991c1a7cda5648d52019b11)
+ # bug #831016
+ use elibc_musl && export sc_cv_getprotobynumber_r=2
+
+ econf \
+ $(use_enable ssl openssl) \
+ $(use_enable readline) \
+ $(use_enable ipv6 ip6) \
+ $(use_enable tcpd libwrap)
+}
+
+src_install() {
+ default
+
+ docinto html
+ dodoc doc/*.html doc/*.css
+}
diff --git a/net-misc/socat/socat-2.0.0_beta9.ebuild b/net-misc/socat/socat-2.0.0_beta9.ebuild
index f8881af9ed..441acceaee 100644
--- a/net-misc/socat/socat-2.0.0_beta9.ebuild
+++ b/net-misc/socat/socat-2.0.0_beta9.ebuild
@@ -1,47 +1,45 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit autotools flag-o-matic toolchain-funcs
-DESCRIPTION="Multipurpose relay (SOcket CAT)"
-HOMEPAGE="http://www.dest-unreach.org/socat/"
MY_P=${P/_beta/-b}
-S="${WORKDIR}/${MY_P}"
+DESCRIPTION="Multipurpose relay (SOcket CAT)"
+HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2"
+S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS=""
-IUSE="libressl ssl readline ipv6 tcpd"
+IUSE="ipv6 readline ssl tcpd"
DEPEND="
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:= )
- )
+ ssl? ( dev-libs/openssl:0= )
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )
"
RDEPEND="${DEPEND}"
-RESTRICT="test
- ssl? ( readline? ( bindist ) )"
+# Tests are a large bash script
+# Hard to disable individual tests needing network or privileges
+RESTRICT="
+ test
+ ssl? ( readline? ( bindist ) )
+"
-DOCS=(
- BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
-)
+DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
PATCHES=(
"${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
"${FILESDIR}"/${PN}-1.7.3.1-stddef_h.patch
- "${FILESDIR}"/${PN}-2.0.0_beta9-libressl.patch
+ "${FILESDIR}"/${PN}-1.7.3.4-fno-common.patch
)
pkg_setup() {
# bug #587740
- if use readline && use ssl; then
+ if use readline && use ssl ; then
elog "You are enabling both readline and openssl USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
@@ -57,8 +55,10 @@ src_prepare() {
}
src_configure() {
- filter-flags -Wall '-Wno-error*' #293324
+ # bug #293324
+ filter-flags -Wall '-Wno-error*'
tc-export AR
+
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
diff --git a/net-misc/socat/socat-9999.ebuild b/net-misc/socat/socat-9999.ebuild
deleted file mode 100644
index 52fde25ab3..0000000000
--- a/net-misc/socat/socat-9999.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic git-r3 toolchain-funcs
-
-DESCRIPTION="Multipurpose relay (SOcket CAT)"
-HOMEPAGE="http://www.dest-unreach.org/socat/"
-MY_P=${P/_beta/-b}
-S="${WORKDIR}/${MY_P}"
-EGIT_REPO_URI="git://repo.or.cz/${PN}.git"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS=""
-IUSE="libressl ssl readline ipv6 tcpd"
-
-DEPEND="
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:= )
- )
- readline? ( sys-libs/readline:= )
- tcpd? ( sys-apps/tcp-wrappers )
-"
-DEPEND="
- ${RDEPEND}
- app-text/yodl
-"
-
-RESTRICT="test
- ssl? ( readline? ( bindist ) )"
-
-DOCS=(
- BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
-)
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
- "${FILESDIR}"/${PN}-1.7.3.1-stddef_h.patch
-)
-
-pkg_setup() {
- # bug #587740
- if use readline && use ssl; then
- elog "You are enabling both readline and openssl USE flags, the licenses"
- elog "for these packages conflict. You may not be able to legally"
- elog "redistribute the resulting binary."
- fi
-}
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- filter-flags '-Wno-error*' #293324
- tc-export AR
- econf \
- $(use_enable ssl openssl) \
- $(use_enable readline) \
- $(use_enable ipv6 ip6) \
- $(use_enable tcpd libwrap)
-}
-
-src_install() {
- default
-
- docinto html
- dodoc doc/*.html doc/*.css
-}
diff --git a/net-misc/whois/Manifest b/net-misc/whois/Manifest
index 61246a0a50..2ba008a3ee 100644
--- a/net-misc/whois/Manifest
+++ b/net-misc/whois/Manifest
@@ -1,3 +1,2 @@
-DIST whois_5.2.12.tar.xz 80428 SHA256 b26d4027b8987d9911466aa06ce2c167a50017cd59a622a429bd506222f6cdf1 SHA512 df40e2e7cbd11d00984f865e122ad4ece882a6a45e2f75ad5ea24ce937b7e9452b01fd886f43bae55fd065a6556cfc4577e7126151b5fd43fa806c4b0c886ced WHIRLPOOL a2c5a3e9f01dd0cbb127269632c60e6c71c981df4d4e53fdf37e2c1932252f3ae2b13961a1c8606b542fd9997bf9fcb62a6cef592a01dbd04ff18c75e3f9b3ec
-DIST whois_5.2.16.tar.xz 82108 SHA256 e9d208b61ccea96b611e522d30fb753dbefed0d44cfabe346e1928690453fc3a SHA512 08e75edbdab2c094150b92570e04de0fc10d42a18643e404262bef4366338bd67a4f23cef248660a4c2a435825cf5ebcc396c71d5702905ca97746686a5c8f06 WHIRLPOOL 2a8db3a9ac764ee31712b312a6c3408932fb98d98404a50bb6f1f7ca4a59e850a8e9434f8cc7372d1e8769d1d0711f82161027d6146eef0ae33f64e329f8be5c
-DIST whois_5.2.17.tar.xz 82360 SHA256 257585678f571e18964667b41dc6543fe9da6123ac95743660c9c3ae1eba9664 SHA512 b65de384ac935518bde0cee42f46f4bf99dc94e94e411b103df8eb73291c317409837adba2a358dfebdae6e1c46d85ccfe8debf86233be64eb91ebfe86a29152 WHIRLPOOL 4ed1eca099fd1c4337e555564b37e604b4115ca520b751531470c5e70ab9013a3e43a3db3318307e04b10d357743bd2495cdf2051c159a3a661c36d29f919af2
+DIST whois-5.5.10.tar.gz 102555 BLAKE2B 9f1236ceeaea839e5f2a33aa63b39fa7e0566eeb4d2131b88b47dd62f037639a5860719a645d9cc2d0707faa1e86c9822634dda37e1a7a8d3b31a78cf34ecce2 SHA512 5ee92c15146353e77dddcbeddb6e704e0c42d29b8c0ff899ecce80f8e39903e8c796daec7f3de3f197d382f88e7cd4abd470463ea6c13a01347d0cd15d99af28
+DIST whois-5.5.11.tar.gz 102806 BLAKE2B be1a5f04ee5af4987224151116d1d7e37ad580b8cc00c3fd4752e10b2cbc1dc46a528591cf75e95a83a99884c961f20865802246e00508c90e338590e7e0be37 SHA512 a7e400a727dd88b4c8f1df2e850879ece882b9af1d5daaff22bb3e1c88be01b4e5430f74f9d4afd4c73538d87022536e40d5f3f63a501a95845396fe0be595b4
diff --git a/net-misc/whois/files/whois-5.3.0-libidn_automagic.patch b/net-misc/whois/files/whois-5.3.0-libidn_automagic.patch
new file mode 100644
index 0000000000..4e01eb5668
--- /dev/null
+++ b/net-misc/whois/files/whois-5.3.0-libidn_automagic.patch
@@ -0,0 +1,23 @@
+We don't want libidn(2) being detected automagically.
+Partially reverting upstream stupidity.
+
+--- whois-5.3.0/Makefile
++++ whois-5.3.0/Makefile
+@@ -33,17 +33,9 @@
+ DEFS += -DLOCALEDIR=\"$(BASEDIR)$(prefix)/share/locale\"
+ endif
+
+-# libidn support has been autodetected since 5.2.18
+ ifdef HAVE_LIBIDN
+-$(error Please fix your build system to stop defining HAVE_LIBIDN!)
+-endif
+-
+-ifeq ($(shell $(PKG_CONFIG) --exists 'libidn2 >= 2.0.3' || echo NO),)
+ whois_LDADD += $(shell $(PKG_CONFIG) --libs libidn2)
+ DEFS += -DHAVE_LIBIDN2 $(shell $(PKG_CONFIG) --cflags libidn2)
+-else ifeq ($(shell $(PKG_CONFIG) --exists 'libidn' || echo NO),)
+-whois_LDADD += $(shell $(PKG_CONFIG) --libs libidn)
+-DEFS += -DHAVE_LIBIDN $(shell $(PKG_CONFIG) --cflags libidn)
+ endif
+
+ ifdef HAVE_ICONV
diff --git a/net-misc/whois/files/whois-5.5.6-libxcrypt_automagic.patch b/net-misc/whois/files/whois-5.5.6-libxcrypt_automagic.patch
new file mode 100644
index 0000000000..f7bafd513d
--- /dev/null
+++ b/net-misc/whois/files/whois-5.5.6-libxcrypt_automagic.patch
@@ -0,0 +1,19 @@
+We don't want libxcrypt being detected automagically.
+Reverting upstream stupidity.
+
+--- whois-5.5.6/Makefile
++++ whois-5.5.6/Makefile
+@@ -55,12 +55,9 @@
+ DEFS += -DHAVE_ICONV
+ endif
+
+-ifeq ($(shell $(PKG_CONFIG) --exists 'libxcrypt >= 4.1' || echo NO),)
++ifdef HAVE_XCRYPT
+ DEFS += -DHAVE_CRYPT_H -DHAVE_LINUX_CRYPT_GENSALT $(shell $(PKG_CONFIG) --cflags libcrypt)
+ mkpasswd_LDADD += $(shell $(PKG_CONFIG) --libs libcrypt)
+-else ifdef HAVE_XCRYPT
+-DEFS += -DHAVE_XCRYPT_H -DHAVE_LINUX_CRYPT_GENSALT
+-mkpasswd_LDADD += -lxcrypt
+ else ifdef HAVE_LIBOWCRYPT
+ # owl and openSUSE have crypt_gensalt(3) in libowcrypt
+ DEFS += -DHAVE_CRYPT_H -DHAVE_LINUX_CRYPT_GENSALT -D_OW_SOURCE
diff --git a/net-misc/whois/metadata.xml b/net-misc/whois/metadata.xml
index 56c1244130..88d3d5768b 100644
--- a/net-misc/whois/metadata.xml
+++ b/net-misc/whois/metadata.xml
@@ -1,8 +1,14 @@
-
+
-
- base-system@gentoo.org
- Gentoo Base System
-
+
+ base-system@gentoo.org
+ Gentoo Base System
+
+
+
+ rfc1036/whois
+
diff --git a/net-misc/whois/whois-5.2.12.ebuild b/net-misc/whois/whois-5.2.12.ebuild
deleted file mode 100644
index 4a8e916eba..0000000000
--- a/net-misc/whois/whois-5.2.12.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils toolchain-funcs
-
-MY_P=${P/-/_}
-DESCRIPTION="improved Whois Client"
-HOMEPAGE="http://www.linux.it/~md/software/"
-SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux"
-IUSE="iconv idn nls"
-RESTRICT="test" #59327
-
-RDEPEND="iconv? ( virtual/libiconv )
- idn? ( net-dns/libidn )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils
- >=dev-lang/perl-5
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-4.7.2-config-file.patch
-
- if use nls ; then
- sed -i -e 's:#\(.*pos\):\1:' Makefile || die
- else
- sed -i -e '/ENABLE_NLS/s:define:undef:' config.h || die
-
- # don't generate po files when nls is disabled (bug #419889)
- sed -i -e '/^all:/s/ pos//' \
- -e '/^install:/s/ install-pos//' Makefile || die
- fi
-}
-
-src_configure() { :;} # expected no-op
-
-src_compile() {
- unset HAVE_ICONV HAVE_LIBIDN
- use iconv && export HAVE_ICONV=1
- use idn && export HAVE_LIBIDN=1
- tc-export CC
- emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
-}
-
-src_install() {
- emake BASEDIR="${ED}" prefix=/usr install
- insinto /etc
- doins whois.conf
- dodoc README debian/changelog
-
- if [[ ${USERLAND} != "GNU" ]]; then
- mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
- mv "${ED}"/usr/bin/{whois,mdwhois} || die
- fi
-}
diff --git a/net-misc/whois/whois-5.2.16.ebuild b/net-misc/whois/whois-5.2.16.ebuild
deleted file mode 100644
index e14820d2ef..0000000000
--- a/net-misc/whois/whois-5.2.16.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils toolchain-funcs
-
-MY_P=${P/-/_}
-DESCRIPTION="improved Whois Client"
-HOMEPAGE="http://www.linux.it/~md/software/"
-SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
-IUSE="iconv idn nls"
-RESTRICT="test" #59327
-
-RDEPEND="iconv? ( virtual/libiconv )
- idn? ( net-dns/libidn )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
- app-arch/xz-utils
- >=dev-lang/perl-5
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-4.7.2-config-file.patch
-
- if use nls ; then
- sed -i -e 's:#\(.*pos\):\1:' Makefile || die
- else
- sed -i -e '/ENABLE_NLS/s:define:undef:' config.h || die
-
- # don't generate po files when nls is disabled (bug #419889)
- sed -i -e '/^all:/s/ pos//' \
- -e '/^install:/s/ install-pos//' Makefile || die
- fi
-}
-
-src_configure() { :;} # expected no-op
-
-src_compile() {
- unset HAVE_ICONV HAVE_LIBIDN
- use iconv && export HAVE_ICONV=1
- use idn && export HAVE_LIBIDN=1
- tc-export CC
- emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
-}
-
-src_install() {
- emake BASEDIR="${ED}" prefix=/usr install
- insinto /etc
- doins whois.conf
- dodoc README debian/changelog
-
- if [[ ${USERLAND} != "GNU" ]]; then
- mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
- mv "${ED}"/usr/bin/{whois,mdwhois} || die
- fi
-}
diff --git a/net-misc/whois/whois-5.2.17.ebuild b/net-misc/whois/whois-5.5.10-r1.ebuild
similarity index 54%
rename from net-misc/whois/whois-5.2.17.ebuild
rename to net-misc/whois/whois-5.5.10-r1.ebuild
index 68d961e766..633807559d 100644
--- a/net-misc/whois/whois-5.2.17.ebuild
+++ b/net-misc/whois/whois-5.5.10-r1.ebuild
@@ -1,30 +1,44 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
+
inherit toolchain-funcs
-MY_P=${P/-/_}
+MY_P="${P/-/_}"
DESCRIPTION="improved Whois Client"
-HOMEPAGE="http://www.linux.it/~md/software/"
-SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
-
+HOMEPAGE="https://github.com/rfc1036/whois"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rfc1036/whois.git"
+else
+ #SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
+ SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
-IUSE="iconv idn nls"
+IUSE="iconv idn nls xcrypt"
RESTRICT="test" #59327
-RDEPEND="iconv? ( virtual/libiconv )
- idn? ( net-dns/libidn )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
+RDEPEND="
+ iconv? ( virtual/libiconv )
+ idn? ( net-dns/libidn2:= )
+ nls? ( virtual/libintl )
+ xcrypt? ( >=sys-libs/libxcrypt-4.1:= )
+ !xcrypt? ( virtual/libcrypt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
app-arch/xz-utils
>=dev-lang/perl-5
+ virtual/pkgconfig
nls? ( sys-devel/gettext )"
PATCHES=(
"${FILESDIR}"/${PN}-4.7.2-config-file.patch
+ "${FILESDIR}"/${PN}-5.3.0-libidn_automagic.patch
+ "${FILESDIR}"/${PN}-5.5.6-libxcrypt_automagic.patch
)
src_prepare() {
@@ -40,12 +54,13 @@ src_prepare() {
fi
}
-src_configure() { :;} # expected no-op
+src_configure() { :; } # expected no-op
src_compile() {
unset HAVE_ICONV HAVE_LIBIDN
use iconv && export HAVE_ICONV=1
use idn && export HAVE_LIBIDN=1
+ use xcrypt && export HAVE_XCRYPT=1
tc-export CC
emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
}
diff --git a/net-misc/whois/whois-5.5.11.ebuild b/net-misc/whois/whois-5.5.11.ebuild
new file mode 100644
index 0000000000..290ecaeceb
--- /dev/null
+++ b/net-misc/whois/whois-5.5.11.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+MY_P="${P/-/_}"
+DESCRIPTION="improved Whois Client"
+HOMEPAGE="https://github.com/rfc1036/whois"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rfc1036/whois.git"
+else
+ #SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
+ SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="iconv idn nls xcrypt"
+RESTRICT="test" #59327
+
+RDEPEND="
+ iconv? ( virtual/libiconv )
+ idn? ( net-dns/libidn2:= )
+ nls? ( virtual/libintl )
+ xcrypt? ( >=sys-libs/libxcrypt-4.1:= )
+ !xcrypt? ( virtual/libcrypt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/xz-utils
+ >=dev-lang/perl-5
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.7.2-config-file.patch
+ "${FILESDIR}"/${PN}-5.3.0-libidn_automagic.patch
+ "${FILESDIR}"/${PN}-5.5.6-libxcrypt_automagic.patch
+)
+
+src_prepare() {
+ default
+ if use nls ; then
+ sed -i -e 's:#\(.*pos\):\1:' Makefile || die
+ else
+ sed -i -e '/ENABLE_NLS/s:define:undef:' config.h || die
+
+ # don't generate po files when nls is disabled (bug #419889)
+ sed -i -e '/^all:/s/ pos//' \
+ -e '/^install:/s/ install-pos//' Makefile || die
+ fi
+}
+
+src_configure() { :; } # expected no-op
+
+src_compile() {
+ unset HAVE_ICONV HAVE_LIBIDN
+ use iconv && export HAVE_ICONV=1
+ use idn && export HAVE_LIBIDN=1
+ use xcrypt && export HAVE_XCRYPT=1
+ tc-export CC
+ emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
+}
+
+src_install() {
+ emake BASEDIR="${ED}" prefix=/usr install
+ insinto /etc
+ doins whois.conf
+ dodoc README debian/changelog
+
+ if [[ ${USERLAND} != "GNU" ]]; then
+ mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
+ mv "${ED}"/usr/bin/{whois,mdwhois} || die
+ fi
+}
diff --git a/net-misc/whois/whois-9999.ebuild b/net-misc/whois/whois-9999.ebuild
new file mode 100644
index 0000000000..350b7b60b3
--- /dev/null
+++ b/net-misc/whois/whois-9999.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+MY_P="${P/-/_}"
+DESCRIPTION="improved Whois Client"
+HOMEPAGE="https://github.com/rfc1036/whois"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/rfc1036/whois.git"
+else
+ #SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz"
+ SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="iconv idn nls xcrypt"
+RESTRICT="test" #59327
+
+RDEPEND="
+ iconv? ( virtual/libiconv )
+ idn? ( net-dns/libidn2:= )
+ nls? ( virtual/libintl )
+ xcrypt? ( >=sys-libs/libxcrypt-4.1:= )
+ !xcrypt? ( virtual/libcrypt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/xz-utils
+ >=dev-lang/perl-5
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.7.2-config-file.patch
+ "${FILESDIR}"/${PN}-5.3.0-libidn_automagic.patch
+ "${FILESDIR}"/${PN}-5.5.6-libxcrypt_automagic.patch
+)
+
+src_prepare() {
+ default
+ if use nls ; then
+ sed -i -e 's:#\(.*pos\):\1:' Makefile || die
+ else
+ sed -i -e '/ENABLE_NLS/s:define:undef:' config.h || die
+
+ # don't generate po files when nls is disabled (bug #419889)
+ sed -i -e '/^all:/s/ pos//' \
+ -e '/^install:/s/ install-pos//' Makefile || die
+ fi
+}
+
+src_configure() { :; } # expected no-op
+
+src_compile() {
+ unset HAVE_ICONV HAVE_LIBIDN
+ use iconv && export HAVE_ICONV=1
+ use idn && export HAVE_LIBIDN=1
+ use xcrypt && export HAVE_XCRYPT=1
+ tc-export CC
+ emake CFLAGS="${CFLAGS} ${CPPFLAGS}"
+}
+
+src_install() {
+ emake BASEDIR="${ED}" prefix=/usr install
+ insinto /etc
+ doins whois.conf
+ dodoc README debian/changelog
+
+ if [[ ${USERLAND} != "GNU" ]]; then
+ mv "${ED}"/usr/share/man/man1/{whois,mdwhois}.1 || die
+ mv "${ED}"/usr/bin/{whois,mdwhois} || die
+ fi
+}
diff --git a/net-nds/rpcbind/Manifest b/net-nds/rpcbind/Manifest
index 851801b92e..33851a3036 100644
--- a/net-nds/rpcbind/Manifest
+++ b/net-nds/rpcbind/Manifest
@@ -1,17 +1 @@
-AUX rpcbind-0.2.3-libtirpc.patch 1154 SHA256 8f4e2499eccf96b0e49b040f23fffa06ce5cf11ffad39af07fa91a577eafa32e SHA512 2172e18c02bf4111de59110b00798c423f89620b2576dd2fa2de7530ab1a091e4e7f60a9d18d610778110a965e551bc447c1c2566d131c3b18642fb408c7a4b8 WHIRLPOOL 06006bc418ac3c36b51758b4ef9d04929bec29b9ad8492c362fd0ac5f9feed71784a0edb22c292f5e66c74129705b929585f5f8c6ec67ec669127171fb2060df
-AUX rpcbind-0.2.3-mem-corrupt.patch 2831 SHA256 5960af91ee3e716326f121811f3f3372cf0956e3bb0449404de67eb15321ac03 SHA512 3423067b552e7ea76fe783eb3cd8f4299887312509a6cbdcd56fc20c5bcb28f3737f04b79d63876d1218cc1fcb9c5385806e203d937feb140d16a9c67e8fe263 WHIRLPOOL 63ce4676b2f8f4d870e803e20ca6f93f7a6a03393fde4a22e28f6c9f5d6f6301290610b0cb64921aa04eafc51d20687c830aff981c3c90b2659a7c1adf9a8a43
-AUX rpcbind-0.2.3-remove-P-macro.patch 10070 SHA256 5b8da280f43a10e8de32c3197274fb03089483342396ff91662c16775237ab3a SHA512 6f8a4b98aae39fe0ddbb0750cce98292564d9f0852513e85ff4f140b484fdf3191a6e934980d22c97f7de358f314d0c6331fe5a89b271b1ac38a1e697061219e WHIRLPOOL 66d55250fbc498533420d86b351e91d45b9e0299bdbfc099dad93c7b942ad87f32056e29c84a57b1a612781be9acc6cadb394ed047d720a161b2df1c2a9f6aa5
-AUX rpcbind-0.2.4-CVE-2017-8779.patch 646 SHA256 bfb7f022b44ca83309dec6dfcb1ff4a5e0b0a40078e3688a2c7ceaaaa19a9686 SHA512 a4be0f33b6e680ab0255191f959c911deb7e8a12bd2bb3c82b61943e100d9de64a1a8f0b2e3cd2009e2b83e3d091a6461de28cb564d90a838fe39a7098b638e2 WHIRLPOOL f94f8674889a9285f62037ee34c9ba86a44b1192ef3d3120393070c02c3c3c31bdc92e7609db75a192f398ce8cb61f3795a1fe9e9bd15287be9002d33b8d1a25
-AUX rpcbind.confd 68 SHA256 38bb95aefc38d843d0890d9c15affd28f19f2133c17f463396c62970e7e2dffc SHA512 f11f6785708bde3ace7b55c1585e283ed07078faf310077c3d26e8e584baec6152d3f86f3d99d7a34fd10f22a7de4d8d70568c9e7f914a82eeb786b08b379044 WHIRLPOOL c9ce4d7d02c7573c96ceaa1a07732e9c8966d79e9266a8767cdd7fa56725b7757d25c31c47821e1ff858983955e3d278ba09da377d40efb6499e9830aaefeb3a
-AUX rpcbind.initd 414 SHA256 da992f87b5043e22dfd340b4a5440b76dce29cc14d3ef7b0ce586726fe4b220b SHA512 43f26570fbff0970c5aa0a1ee5f4f561645d31c90e3bb997bd63e05678814f199263a5aaa5051bfe88622a156f8260825ffd905301d158cb410f25631d75cc55 WHIRLPOOL 780614e16dd92e2eb98a4d090abd86f4283079e1abe7fd907aab227f5bbb4050c2c98f4470f15ec4386bd225c3a8738e57420d6ef07ca5c5efa55e9d001eff17
-AUX rpcbind.service 193 SHA256 a7a648529f9480b50dd8e8e5906fa7d97320e7eba25875dba23189ce5e75aa67 SHA512 7ec717ebd69cdf3230d09c51c9b3f926a0860967baccbc2345bf8214a2251441b528bbceaa571c84bdcca17c272d43697567885b517501515d15d42f913f3f49 WHIRLPOOL 23f35d918152baa46278334e8a0fea6540adf96eec70dd7619dbe7a1ffb2975d1146e134ba2b6d2f4b00a9e1cd41ca7bc551ee2cde00413ae5eb07b4d50e6cd0
-DIST rpcbind-0.2.3.tar.bz2 121306 SHA256 9897823a9d820ea011d9ea02054d5ab99469b9ca5346265fee380713c8fed27b SHA512 b91cb4e0849213d344063ccf32d16c49819906b65e4d07c4aa7d3c8842bd83acb408d07aa285da902c389f3c9716f01678012b93a11863eb174a2577cd6ba1d6 WHIRLPOOL f8ff512974e6092faf786ef2f5fe23f404a48c28017809c22a3705cb3dfd22220dc3b230235de8a7b64bc46b21f38562ba18af23539bfff439f6e39d6d44cfb3
-DIST rpcbind-0.2.4.tar.bz2 122781 SHA256 074a9a530dc7c11e0d905aa59bcb0847c009313f02e98d3d798aa9568f414c66 SHA512 f3966a7284e94bdf120a9b3f0dd66efa1fe8761df2313545a031f77b7c06e27d7955d2780469943deb537d34f95c4cf3f30de523ec9fab9f571322d7224b210c WHIRLPOOL 9eec5752e3b80f0c3feccf1667e54fb9630b9fabad6613e3f7030489d7b9cfbb5585e173545274f0b3656d27085f71b7c3290da7a2ec022f1948a62a336e278e
-EBUILD rpcbind-0.2.3-r1.ebuild 1410 SHA256 5b141acec9cc4428b78c737fd74caf00f3c711a3fcfb81a6c7aa825d7b43a8aa SHA512 e9df1c9785881072b6db598a952e74dff2714272260dc721a419083bf29c861197c832e63463deb1907664d8155a7114e095def23d8460f853ad0615d9981cfb WHIRLPOOL 8c2f2a74b3140bece61be09ae2a582a38ac9a08acdd7deda5b4aa44c8a232166fb1eec8b18ad8c5cb1696cb8d0b616c9981f1d65ebb6d33435f01680b74c84fe
-EBUILD rpcbind-0.2.3-r2.ebuild 1478 SHA256 e55e86a95eb2746e00d8da272852bd759b056a5db25a7d10244ccdc8f367dea6 SHA512 c408d69cf97dace84a85069f567646fbf50baa1971fd465b56c9168978ed9a6fad319b199fe6c8b046286189de5881e406a8331c2bd0ad33f83b93a6787d0995 WHIRLPOOL 9643f529e7f4bc638a678a0872d054556c8bcc5b7c0134b2b1a163baa743d0c09d97f751be7520500af10a3a73ac1228fbdc6d70f8fc911c797831358549b6b2
-EBUILD rpcbind-0.2.4-r1.ebuild 1402 SHA256 a2f9aab91c4d22e4ec2dc95efe08893d9b279701abc9a240e6af8fc16fe42a3f SHA512 c2ba774ac77e539b9957cd8affa7a9548020ec2b15f3846945f5d9e74ecd0288ade990617c1c0f3bed1e67c136cb664deb748189baead76c745f23e2e4e58d05 WHIRLPOOL 8cd510f2d28f7cb8472ffa5ff7182463f62e8e6cda8944efeb6b017eecb856c46f24a28b7d2fc04ce023cf792d8c85e73630ca0671976a1166fa16e194f0caa8
-EBUILD rpcbind-0.2.4.ebuild 1316 SHA256 65bec0f36ea131c3656e6d4f119689b8b34b9dff2aba5aef4f1908021f8b4244 SHA512 1a80496539d3727c0ce19423d6e8f29f4d2e747c3864fb55d572312668b6c037b80176bb74a91f19af2edfb8503170e39aa36f28189ac97f71aefd2fbca26550 WHIRLPOOL 96092cd553ea1653ef76bd42f01ea90dd52b96251955b6e7e57ea1a65d2e3b3c46867b31100ca2ba29b89d6d5cc93dd2755edf440f74abd2b542f85ef4402475
-EBUILD rpcbind-9999.ebuild 1327 SHA256 2249fce590fc3f3747c4a595bb502cc3d0d7377346cf57beb65469f069a233ed SHA512 677c6dce60b05a5b04973968e1e1b7a9735df76cb7bb0d6fb5cc6ae713277dafa55beea7d35f70745f52997c37e6535b2b022cfdd2f813283bc96c0fded5c521 WHIRLPOOL c35619e13c63c184981648c77b057f86b9a655cf062a7e7af7b48236592834f3d1817bfdb1903fa77ec90315000e5436f2b80f6a40b1c0be55043ed746c9589f
-MISC ChangeLog 6198 SHA256 ade342025c1f6dbb4481c040578f4c28326b85750dfeb898f363967f2dac8b77 SHA512 62a7c4b76f375afaf6c3f3a977d45159175a9159feb19352f1dab692cf4d0039528d2cf1a697760c0812034808cfd1be1c387975019e90ad349de8b3caca621a WHIRLPOOL 1b3c464a5cc39294268b351a03c762e07e876450b7c453ca3c6934549fd9ca0801c43f1db0e4727bf173b8c32ef657d809fa80c4d490f63bf991000762d81e61
-MISC ChangeLog-2015 5908 SHA256 064fb710a31bc7f3ccca52d220832a71fd12e9d2bc44d924821eb59b9f802577 SHA512 380ae6c889bbabbaed12ab1a4a360c974024acdfbdbea27be8a4edb3d1824951ba17472e9f564debeb9928224d4014b01cddef6fe89e9286ffd941602c8339fa WHIRLPOOL d7e7eb9723819fd77f583f32800a532c190469e79303dfc5c2d48d32ee74c1dfff48d0f15cb08a706d6e6abfe8b1d8d5cbda7273542e68e01eaf32620cd036dc
-MISC metadata.xml 405 SHA256 f00aa4ca742840a4285cf6ee239cc319f88af5ba60d5aa1d3f0b62b2db50f99c SHA512 accad1ef4202c9ebd7292ae6e1e68a1c59ddbfb741779a635058d54aa1efbf8b70b5e045d53dc9dba61256d5981e11c57b540a1c7b8fb38207863a6f2c50a5af WHIRLPOOL 9726f030b21142d38207cfdfb784673473346c719e81cbc53a7170a3f0c4838697f7f83de9757ffbc3700477ebc5b9b9b07e8d0194ec34c26727bbdd1ec4b84a
+DIST rpcbind-1.2.6.tar.bz2 124590 BLAKE2B bb0e9f81e4747f8a732c9e25af561e79f2b6cd1c1955db586833871901b6da73f4b7ef32149a81b75daa81359b9c0554726670460b28857042dd66a2f861cac2 SHA512 fb89c61be4c533fe2e6057749d97079a2d1c9fac0d35d6be1a159a0edbf86092b3fc121f19fa920e75aac5ecdd3f59f5978e6401d5cad16cd438c977736206a7
diff --git a/net-nds/rpcbind/files/rpcbind-0.2.3-libtirpc.patch b/net-nds/rpcbind/files/rpcbind-0.2.3-libtirpc.patch
deleted file mode 100644
index 92ea22f0e4..0000000000
--- a/net-nds/rpcbind/files/rpcbind-0.2.3-libtirpc.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-fix from upstream for building w/newer libtirpc
-
-From 9194122389f2a56b1cd1f935e64307e2e963c2da Mon Sep 17 00:00:00 2001
-From: Steve Dickson
-Date: Mon, 2 Nov 2015 17:05:18 -0500
-Subject: [PATCH rpcbind] handle_reply: Don't use the xp_auth pointer directly
-
-In the latest libtirpc version to access the xp_auth
-one must use the SVC_XP_AUTH macro. To be backwards
-compatible a couple ifdefs were added to use the
-macro when it exists.
-
-Signed-off-by: Steve Dickson
----
- src/rpcb_svc_com.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
-index 4ae93f1..22d6c84 100644
---- a/src/rpcb_svc_com.c
-+++ b/src/rpcb_svc_com.c
-@@ -1295,10 +1295,17 @@ handle_reply(int fd, SVCXPRT *xprt)
- a.rmt_localvers = fi->versnum;
-
- xprt_set_caller(xprt, fi);
-+#if defined(SVC_XP_AUTH)
-+ SVC_XP_AUTH(xprt) = svc_auth_none;
-+#else
- xprt->xp_auth = &svc_auth_none;
-+#endif
- svc_sendreply(xprt, (xdrproc_t) xdr_rmtcall_result, (char *) &a);
-+#if !defined(SVC_XP_AUTH)
- SVCAUTH_DESTROY(xprt->xp_auth);
- xprt->xp_auth = NULL;
-+#endif
-+
- done:
- if (buffer)
- free(buffer);
---
-2.5.2
-
diff --git a/net-nds/rpcbind/files/rpcbind-0.2.3-mem-corrupt.patch b/net-nds/rpcbind/files/rpcbind-0.2.3-mem-corrupt.patch
deleted file mode 100644
index 9c03bda80a..0000000000
--- a/net-nds/rpcbind/files/rpcbind-0.2.3-mem-corrupt.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-https://bugs.gentoo.org/560990
-
-fix from upstream
-
-From d5dace219953c45d26ae42db238052b68540649a Mon Sep 17 00:00:00 2001
-From: Olaf Kirch
-Date: Fri, 30 Oct 2015 10:18:20 -0400
-Subject: [PATCH rpcbind] Fix memory corruption in PMAP_CALLIT code
-
- - A PMAP_CALLIT call comes in on IPv4 UDP
- - rpcbind duplicates the caller's address to a netbuf and stores it in
- FINFO[0].caller_addr. caller_addr->buf now points to a memory region A
- with a size of 16 bytes
- - rpcbind forwards the call to the local service, receives a reply
- - when processing the reply, it does this in xprt_set_caller:
- xprt->xp_rtaddr = *FINFO[0].caller_addr
- It sends out the reply, and then frees the netbuf caller_addr and
- caller_addr.buf.
- However, it does not clear xp_rtaddr, so xp_rtaddr.buf now refers
- to memory region A, which is free.
- - When the next call comes in on the UDP/IPv4 socket, svc_dg_recv will
- be called, which will set xp_rtaddr to the client's address.
- It will reuse the buffer inside xp_rtaddr, ie it will write a
- sockaddr_in to region A
-
-Some time down the road, an incoming TCP connection is accepted,
-allocating a fresh SVCXPRT. The memory region A is inside the
-new SVCXPRT
-
- - While processing the TCP call, another UDP call comes in, again
- overwriting region A with the client's address
- - TCP client closes connection. In svc_destroy, we now trip over
- the garbage left in region A
-
-We ran into the case where a commercial scanner was triggering
-occasional rpcbind segfaults. The core file that was captured showed
-a corrupted xprt->xp_netid pointer that was really a sockaddr_in.
-
-Signed-off-by: Olaf Kirch
-Signed-off-by: Steve Dickson
----
- src/rpcb_svc_com.c | 23 ++++++++++++++++++++++-
- 1 file changed, 22 insertions(+), 1 deletion(-)
-
-diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
-index ff9ce6b..4ae93f1 100644
---- a/src/rpcb_svc_com.c
-+++ b/src/rpcb_svc_com.c
-@@ -1183,12 +1183,33 @@ check_rmtcalls(struct pollfd *pfds, int nfds)
- return (ncallbacks_found);
- }
-
-+/*
-+ * This is really a helper function defined in libtirpc,
-+ * but unfortunately, it hasn't been exported yet.
-+ */
-+static struct netbuf *
-+__rpc_set_netbuf(struct netbuf *nb, const void *ptr, size_t len)
-+{
-+ if (nb->len != len) {
-+ if (nb->len)
-+ mem_free(nb->buf, nb->len);
-+ nb->buf = mem_alloc(len);
-+ if (nb->buf == NULL)
-+ return NULL;
-+
-+ nb->maxlen = nb->len = len;
-+ }
-+ memcpy(nb->buf, ptr, len);
-+ return nb;
-+}
-+
- static void
- xprt_set_caller(SVCXPRT *xprt, struct finfo *fi)
- {
-+ const struct netbuf *caller = fi->caller_addr;
- u_int32_t *xidp;
-
-- *(svc_getrpccaller(xprt)) = *(fi->caller_addr);
-+ __rpc_set_netbuf(svc_getrpccaller(xprt), caller->buf, caller->len);
- xidp = __rpcb_get_dg_xidp(xprt);
- *xidp = fi->caller_xid;
- }
---
-2.5.2
-
diff --git a/net-nds/rpcbind/files/rpcbind-0.2.3-remove-P-macro.patch b/net-nds/rpcbind/files/rpcbind-0.2.3-remove-P-macro.patch
deleted file mode 100644
index 8e1b69beb1..0000000000
--- a/net-nds/rpcbind/files/rpcbind-0.2.3-remove-P-macro.patch
+++ /dev/null
@@ -1,246 +0,0 @@
-From 196e8f3abaa6e8899ba2655c6c2d8751e33a9795 Mon Sep 17 00:00:00 2001
-From: "Yann E. MORIN"
-Date: Wed, 17 Aug 2016 10:16:47 -0400
-Subject: [PATCH] src: remove use of the __P() macro
-
-The __P() macro is a legacy compatibility macro aimed making pre-ANSI
-(i.e. K&R) compilers that do not support function prototypes happy,
-while still allowing such prototypes for ANSI-compliant compilers.
-
-Since virtually all compilers have been ANSI-compliant for a few decades
-now, use of __P() is totally useless.
-
-Furthermore, __P() is defined in the non-standard sys/cdefs.h header.
-This header is present in glibc and uClibc, and both have it included
-from many of their headers. So, sys/cdefs.h is automagically included in
-most cases and its macros are available.
-
-However, the musl C library does not provide this sys/cdefs.h header.
-Thus, the build breaks on musl.
-
-For all the above reasons, get rid of __P() wherever it is used; just
-always declare real function prototypes.
-
-Reviewed-by: Chuck Lever
-Signed-off-by: "Yann E. MORIN"
-Signed-off-by: Steve Dickson
-Cc: Chuck Lever
-Cc: Steve Dickson
-Cc: Mike Frysinger
----
- src/check_bound.c | 2 +-
- src/pmap_svc.c | 10 +++++-----
- src/rpcb_svc.c | 10 +++++-----
- src/rpcb_svc_4.c | 14 ++++++--------
- src/rpcb_svc_com.c | 46 +++++++++++++++++++++++-----------------------
- src/rpcbind.c | 12 ++++++------
- src/util.c | 2 +-
- src/warmstart.c | 4 ++--
- 8 files changed, 49 insertions(+), 51 deletions(-)
-
-diff --git a/src/check_bound.c b/src/check_bound.c
-index c70b845..92bfd36 100644
---- a/src/check_bound.c
-+++ b/src/check_bound.c
-@@ -70,7 +70,7 @@ static struct fdlist *fdhead; /* Link list of the check fd's */
- static struct fdlist *fdtail;
- static char *nullstring = "";
-
--static bool_t check_bound __P((struct fdlist *, char *uaddr));
-+static bool_t check_bound(struct fdlist *, char *uaddr);
-
- /*
- * Returns 1 if the given address is bound for the given addr & transport
-diff --git a/src/pmap_svc.c b/src/pmap_svc.c
-index ad28b93..4c744fe 100644
---- a/src/pmap_svc.c
-+++ b/src/pmap_svc.c
-@@ -60,11 +60,11 @@ static char sccsid[] = "@(#)pmap_svc.c 1.23 89/04/05 Copyr 1984 Sun Micro";
- #include "rpcbind.h"
- #include "xlog.h"
- #include /* svc_getcaller routine definition */
--static struct pmaplist *find_service_pmap __P((rpcprog_t, rpcvers_t,
-- rpcprot_t));
--static bool_t pmapproc_change __P((struct svc_req *, SVCXPRT *, u_long));
--static bool_t pmapproc_getport __P((struct svc_req *, SVCXPRT *));
--static bool_t pmapproc_dump __P((struct svc_req *, SVCXPRT *));
-+static struct pmaplist *find_service_pmap(rpcprog_t, rpcvers_t,
-+ rpcprot_t);
-+static bool_t pmapproc_change(struct svc_req *, SVCXPRT *, u_long);
-+static bool_t pmapproc_getport(struct svc_req *, SVCXPRT *);
-+static bool_t pmapproc_dump(struct svc_req *, SVCXPRT *);
-
- /*
- * Called for all the version 2 inquiries.
-diff --git a/src/rpcb_svc.c b/src/rpcb_svc.c
-index bd92201..709e3fb 100644
---- a/src/rpcb_svc.c
-+++ b/src/rpcb_svc.c
-@@ -53,10 +53,10 @@
- #include "rpcbind.h"
- #include "xlog.h"
-
--static void *rpcbproc_getaddr_3_local __P((void *, struct svc_req *, SVCXPRT *,
-- rpcvers_t));
--static void *rpcbproc_dump_3_local __P((void *, struct svc_req *, SVCXPRT *,
-- rpcvers_t));
-+static void *rpcbproc_getaddr_3_local(void *, struct svc_req *, SVCXPRT *,
-+ rpcvers_t);
-+static void *rpcbproc_dump_3_local(void *, struct svc_req *, SVCXPRT *,
-+ rpcvers_t);
-
- /*
- * Called by svc_getreqset. There is a separate server handle for
-@@ -75,7 +75,7 @@ rpcb_service_3(struct svc_req *rqstp, SVCXPRT *transp)
- } argument;
- char *result;
- xdrproc_t xdr_argument, xdr_result;
-- void *(*local) __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t));
-+ void *(*local)(void *, struct svc_req *, SVCXPRT *, rpcvers_t);
- rpcprog_t setprog = 0;
-
- rpcbs_procinfo(RPCBVERS_3_STAT, rqstp->rq_proc);
-diff --git a/src/rpcb_svc_4.c b/src/rpcb_svc_4.c
-index b673452..5094879 100644
---- a/src/rpcb_svc_4.c
-+++ b/src/rpcb_svc_4.c
-@@ -54,13 +54,11 @@
- #include "rpcbind.h"
- #include "xlog.h"
-
--static void *rpcbproc_getaddr_4_local __P((void *, struct svc_req *, SVCXPRT *,
-- rpcvers_t));
--static void *rpcbproc_getversaddr_4_local __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t));
--static void *rpcbproc_getaddrlist_4_local
-- __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t));
--static void free_rpcb_entry_list __P((rpcb_entry_list_ptr *));
--static void *rpcbproc_dump_4_local __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t));
-+static void *rpcbproc_getaddr_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t);
-+static void *rpcbproc_getversaddr_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t);
-+static void *rpcbproc_getaddrlist_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t);
-+static void free_rpcb_entry_list(rpcb_entry_list_ptr *);
-+static void *rpcbproc_dump_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t);
-
- /*
- * Called by svc_getreqset. There is a separate server handle for
-@@ -78,7 +76,7 @@ rpcb_service_4(struct svc_req *rqstp, SVCXPRT *transp)
- } argument;
- char *result;
- xdrproc_t xdr_argument, xdr_result;
-- void *(*local) __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t));
-+ void *(*local)(void *, struct svc_req *, SVCXPRT *, rpcvers_t);
- rpcprog_t setprog = 0;
-
- rpcbs_procinfo(RPCBVERS_4_STAT, rqstp->rq_proc);
-diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
-index 148fe42..5862c26 100644
---- a/src/rpcb_svc_com.c
-+++ b/src/rpcb_svc_com.c
-@@ -100,29 +100,29 @@ struct finfo {
- static struct finfo FINFO[NFORWARD];
-
-
--static bool_t xdr_encap_parms __P((XDR *, struct encap_parms *));
--static bool_t xdr_rmtcall_args __P((XDR *, struct r_rmtcall_args *));
--static bool_t xdr_rmtcall_result __P((XDR *, struct r_rmtcall_args *));
--static bool_t xdr_opaque_parms __P((XDR *, struct r_rmtcall_args *));
--static int find_rmtcallfd_by_netid __P((char *));
--static SVCXPRT *find_rmtcallxprt_by_fd __P((int));
--static int forward_register __P((u_int32_t, struct netbuf *, int, char *,
-- rpcproc_t, rpcvers_t, u_int32_t *));
--static struct finfo *forward_find __P((u_int32_t));
--static int free_slot_by_xid __P((u_int32_t));
--static int free_slot_by_index __P((int));
--static int netbufcmp __P((struct netbuf *, struct netbuf *));
--static struct netbuf *netbufdup __P((struct netbuf *));
--static void netbuffree __P((struct netbuf *));
--static int check_rmtcalls __P((struct pollfd *, int));
--static void xprt_set_caller __P((SVCXPRT *, struct finfo *));
--static void send_svcsyserr __P((SVCXPRT *, struct finfo *));
--static void handle_reply __P((int, SVCXPRT *));
--static void find_versions __P((rpcprog_t, char *, rpcvers_t *, rpcvers_t *));
--static rpcblist_ptr find_service __P((rpcprog_t, rpcvers_t, char *));
--static char *getowner __P((SVCXPRT *, char *, size_t));
--static int add_pmaplist __P((RPCB *));
--static int del_pmaplist __P((RPCB *));
-+static bool_t xdr_encap_parms(XDR *, struct encap_parms *);
-+static bool_t xdr_rmtcall_args(XDR *, struct r_rmtcall_args *);
-+static bool_t xdr_rmtcall_result(XDR *, struct r_rmtcall_args *);
-+static bool_t xdr_opaque_parms(XDR *, struct r_rmtcall_args *);
-+static int find_rmtcallfd_by_netid(char *);
-+static SVCXPRT *find_rmtcallxprt_by_fd(int);
-+static int forward_register(u_int32_t, struct netbuf *, int, char *,
-+ rpcproc_t, rpcvers_t, u_int32_t *);
-+static struct finfo *forward_find(u_int32_t);
-+static int free_slot_by_xid(u_int32_t);
-+static int free_slot_by_index(int);
-+static int netbufcmp(struct netbuf *, struct netbuf *);
-+static struct netbuf *netbufdup(struct netbuf *);
-+static void netbuffree(struct netbuf *);
-+static int check_rmtcalls(struct pollfd *, int);
-+static void xprt_set_caller(SVCXPRT *, struct finfo *);
-+static void send_svcsyserr(SVCXPRT *, struct finfo *);
-+static void handle_reply(int, SVCXPRT *);
-+static void find_versions(rpcprog_t, char *, rpcvers_t *, rpcvers_t *);
-+static rpcblist_ptr find_service(rpcprog_t, rpcvers_t, char *);
-+static char *getowner(SVCXPRT *, char *, size_t);
-+static int add_pmaplist(RPCB *);
-+static int del_pmaplist(RPCB *);
-
- /*
- * Set a mapping of program, version, netid
-diff --git a/src/rpcbind.c b/src/rpcbind.c
-index c4265cd..87ccdc2 100644
---- a/src/rpcbind.c
-+++ b/src/rpcbind.c
-@@ -136,13 +136,13 @@ char *tcp_uaddr; /* Universal TCP address */
- static char servname[] = "rpcbind";
- static char superuser[] = "superuser";
-
--int main __P((int, char *[]));
-+int main(int, char *[]);
-
--static int init_transport __P((struct netconfig *));
--static void rbllist_add __P((rpcprog_t, rpcvers_t, struct netconfig *,
-- struct netbuf *));
--static void terminate __P((int));
--static void parseargs __P((int, char *[]));
-+static int init_transport(struct netconfig *);
-+static void rbllist_add(rpcprog_t, rpcvers_t, struct netconfig *,
-+ struct netbuf *);
-+static void terminate(int);
-+static void parseargs(int, char *[]);
-
- int
- main(int argc, char *argv[])
-diff --git a/src/util.c b/src/util.c
-index a6c835b..74b0284 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -70,7 +70,7 @@ static struct sockaddr_in *local_in4;
- static struct sockaddr_in6 *local_in6;
- #endif
-
--static int bitmaskcmp __P((void *, void *, void *, int));
-+static int bitmaskcmp(void *, void *, void *, int);
-
- /*
- * For all bits set in "mask", compare the corresponding bits in
-diff --git a/src/warmstart.c b/src/warmstart.c
-index b6eb73e..122a058 100644
---- a/src/warmstart.c
-+++ b/src/warmstart.c
-@@ -58,8 +58,8 @@
- #define PMAPFILE RPCBIND_STATEDIR "/portmap.xdr"
- #endif
-
--static bool_t write_struct __P((char *, xdrproc_t, void *));
--static bool_t read_struct __P((char *, xdrproc_t, void *));
-+static bool_t write_struct(char *, xdrproc_t, void *);
-+static bool_t read_struct(char *, xdrproc_t, void *);
-
- static bool_t
- write_struct(char *filename, xdrproc_t structproc, void *list)
---
-1.8.3.1
-
diff --git a/net-nds/rpcbind/files/rpcbind-0.2.4-CVE-2017-8779.patch b/net-nds/rpcbind/files/rpcbind-0.2.4-CVE-2017-8779.patch
deleted file mode 100644
index cef088badc..0000000000
--- a/net-nds/rpcbind/files/rpcbind-0.2.4-CVE-2017-8779.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
-index 5862c26..e11f61b 100644
---- a/src/rpcb_svc_com.c
-+++ b/src/rpcb_svc_com.c
-@@ -48,6 +48,7 @@
- #include
- #include
- #include
-+#include
- #include
- #include
- #include
-@@ -432,7 +433,7 @@ rpcbproc_taddr2uaddr_com(void *arg, struct svc_req *rqstp /*__unused*/,
- static bool_t
- xdr_encap_parms(XDR *xdrs, struct encap_parms *epp)
- {
-- return (xdr_bytes(xdrs, &(epp->args), (u_int *) &(epp->arglen), ~0));
-+ return (xdr_bytes(xdrs, &(epp->args), (u_int *) &(epp->arglen), RPC_MAXDATASIZE));
- }
-
- /*
diff --git a/net-nds/rpcbind/files/rpcbind.service b/net-nds/rpcbind/files/rpcbind.service
deleted file mode 100644
index 305ea9b10b..0000000000
--- a/net-nds/rpcbind/files/rpcbind.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=RPC Bind
-After=network.target
-Wants=rpcbind.target
-Before=rpcbind.target
-
-[Service]
-Type=forking
-ExecStart=/sbin/rpcbind
-Restart=always
-
-[Install]
-WantedBy=multi-user.target
diff --git a/net-nds/rpcbind/metadata.xml b/net-nds/rpcbind/metadata.xml
index 664c6a547a..7c87940b9c 100644
--- a/net-nds/rpcbind/metadata.xml
+++ b/net-nds/rpcbind/metadata.xml
@@ -1,10 +1,11 @@
-
+
base-system@gentoo.org
diff --git a/net-nds/rpcbind/rpcbind-0.2.3-r1.ebuild b/net-nds/rpcbind/rpcbind-0.2.3-r1.ebuild
deleted file mode 100644
index cdbbee00c4..0000000000
--- a/net-nds/rpcbind/rpcbind-0.2.3-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils systemd
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://linux-nfs.org/~steved/rpcbind.git"
- inherit autotools git-r3
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
- KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86"
-fi
-
-DESCRIPTION="portmap replacement which supports RPC over various protocols"
-HOMEPAGE="https://sourceforge.net/projects/rpcbind/"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="debug selinux systemd tcpd warmstarts"
-
-CDEPEND=">=net-libs/libtirpc-0.2.3:=
- systemd? ( sys-apps/systemd:= )
- tcpd? ( sys-apps/tcp-wrappers )"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-rpcbind )"
-
-src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
- epatch "${FILESDIR}"/${P}-libtirpc.patch
- epatch "${FILESDIR}"/${P}-mem-corrupt.patch #560990
- epatch_user
-}
-
-src_configure() {
- econf \
- --bindir="${EPREFIX}"/sbin \
- --with-statedir="${EPREFIX}"/run/${PN} \
- --with-rpcuser=root \
- --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_unitdir)" "no") \
- $(use_enable tcpd libwrap) \
- $(use_enable debug) \
- $(use_enable warmstarts)
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}"/${PN}.initd ${PN}
- newconfd "${FILESDIR}"/${PN}.confd ${PN}
-
- systemd_dounit "${FILESDIR}"/${PN}.service
-}
diff --git a/net-nds/rpcbind/rpcbind-0.2.3-r2.ebuild b/net-nds/rpcbind/rpcbind-0.2.3-r2.ebuild
deleted file mode 100644
index 1d4183d790..0000000000
--- a/net-nds/rpcbind/rpcbind-0.2.3-r2.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils systemd
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://linux-nfs.org/~steved/rpcbind.git"
- inherit autotools git-r3
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="portmap replacement which supports RPC over various protocols"
-HOMEPAGE="https://sourceforge.net/projects/rpcbind/"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="debug selinux systemd tcpd warmstarts"
-
-CDEPEND=">=net-libs/libtirpc-0.2.3:=
- systemd? ( sys-apps/systemd:= )
- tcpd? ( sys-apps/tcp-wrappers )"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-rpcbind )"
-
-src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
- epatch "${FILESDIR}"/${P}-libtirpc.patch
- epatch "${FILESDIR}"/${P}-mem-corrupt.patch #560990
- epatch "${FILESDIR}"/${P}-remove-P-macro.patch #589666
- epatch_user
-}
-
-src_configure() {
- econf \
- --bindir="${EPREFIX}"/sbin \
- --with-statedir="${EPREFIX}"/run/${PN} \
- --with-rpcuser=root \
- --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_unitdir)" "no") \
- $(use_enable tcpd libwrap) \
- $(use_enable debug) \
- $(use_enable warmstarts)
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}"/${PN}.initd ${PN}
- newconfd "${FILESDIR}"/${PN}.confd ${PN}
-
- systemd_dounit "${FILESDIR}"/${PN}.service
-}
diff --git a/net-nds/rpcbind/rpcbind-0.2.4.ebuild b/net-nds/rpcbind/rpcbind-0.2.4.ebuild
deleted file mode 100644
index 79f8f8fe71..0000000000
--- a/net-nds/rpcbind/rpcbind-0.2.4.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils systemd
-
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://linux-nfs.org/~steved/rpcbind.git"
- inherit autotools git-r3
-else
- SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
- KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86"
-fi
-
-DESCRIPTION="portmap replacement which supports RPC over various protocols"
-HOMEPAGE="https://sourceforge.net/projects/rpcbind/"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="debug selinux systemd tcpd warmstarts"
-
-CDEPEND=">=net-libs/libtirpc-1.0:=
- systemd? ( sys-apps/systemd:= )
- tcpd? ( sys-apps/tcp-wrappers )"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-rpcbind )"
-
-src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
- epatch_user
-}
-
-src_configure() {
- econf \
- --bindir="${EPREFIX}"/sbin \
- --with-statedir="${EPREFIX}"/run/${PN} \
- --with-rpcuser=root \
- --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_unitdir)" "no") \
- $(use_enable tcpd libwrap) \
- $(use_enable debug) \
- $(use_enable warmstarts)
-}
-
-src_install() {
- default
-
- newinitd "${FILESDIR}"/${PN}.initd ${PN}
- newconfd "${FILESDIR}"/${PN}.confd ${PN}
-
- systemd_dounit "${FILESDIR}"/${PN}.service
-}
diff --git a/net-nds/rpcbind/rpcbind-0.2.4-r1.ebuild b/net-nds/rpcbind/rpcbind-1.2.6.ebuild
similarity index 50%
rename from net-nds/rpcbind/rpcbind-0.2.4-r1.ebuild
rename to net-nds/rpcbind/rpcbind-1.2.6.ebuild
index 5c16cb5c98..fb9749bd19 100644
--- a/net-nds/rpcbind/rpcbind-0.2.4-r1.ebuild
+++ b/net-nds/rpcbind/rpcbind-1.2.6.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=7
-inherit eutils systemd
+inherit systemd
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://linux-nfs.org/~steved/rpcbind.git"
inherit autotools git-r3
else
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
DESCRIPTION="portmap replacement which supports RPC over various protocols"
@@ -18,35 +18,39 @@ HOMEPAGE="https://sourceforge.net/projects/rpcbind/"
LICENSE="BSD"
SLOT="0"
-IUSE="debug selinux systemd tcpd warmstarts"
+IUSE="debug remotecalls selinux systemd tcpd warmstarts"
+REQUIRED_USE="systemd? ( warmstarts )"
-CDEPEND=">=net-libs/libtirpc-1.0:=
+DEPEND=">=net-libs/libtirpc-0.2.3:=
systemd? ( sys-apps/systemd:= )
tcpd? ( sys-apps/tcp-wrappers )"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
-RDEPEND="${CDEPEND}
+RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-rpcbind )"
-
-PATCHES=(
- "${FILESDIR}/${P}-CVE-2017-8779.patch"
-)
+BDEPEND="
+ virtual/pkgconfig"
src_prepare() {
+ default
[[ ${PV} == "9999" ]] && eautoreconf
- epatch "${PATCHES[@]}"
- epatch_user
}
src_configure() {
- econf \
- --bindir="${EPREFIX}"/sbin \
- --with-statedir="${EPREFIX}"/run/${PN} \
- --with-rpcuser=root \
- --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_unitdir)" "no") \
- $(use_enable tcpd libwrap) \
- $(use_enable debug) \
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/sbin
+ --sbindir="${EPREFIX}"/sbin
+ --with-statedir="${EPREFIX}"/run/${PN}
+ --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_systemunitdir)" "no")
+ $(use_enable debug)
+ $(use_enable remotecalls rmtcalls)
$(use_enable warmstarts)
+ $(use_enable tcpd libwrap)
+ )
+
+ # Avoid using rpcsvc headers
+ # https://bugs.gentoo.org/705224
+ export ac_cv_header_rpcsvc_mount_h=no
+
+ econf "${myeconfargs[@]}"
}
src_install() {
@@ -54,6 +58,4 @@ src_install() {
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
-
- systemd_dounit "${FILESDIR}"/${PN}.service
}
diff --git a/net-nds/rpcbind/rpcbind-9999.ebuild b/net-nds/rpcbind/rpcbind-9999.ebuild
index 8ed5edc7bb..51778b3ddf 100644
--- a/net-nds/rpcbind/rpcbind-9999.ebuild
+++ b/net-nds/rpcbind/rpcbind-9999.ebuild
@@ -1,16 +1,16 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=7
-inherit eutils systemd
+inherit systemd
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://linux-nfs.org/~steved/rpcbind.git"
inherit autotools git-r3
else
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
DESCRIPTION="portmap replacement which supports RPC over various protocols"
@@ -18,30 +18,39 @@ HOMEPAGE="https://sourceforge.net/projects/rpcbind/"
LICENSE="BSD"
SLOT="0"
-IUSE="debug selinux systemd tcpd warmstarts"
+IUSE="debug remotecalls selinux systemd tcpd warmstarts"
+REQUIRED_USE="systemd? ( warmstarts )"
-CDEPEND=">=net-libs/libtirpc-0.2.3:=
+DEPEND=">=net-libs/libtirpc-0.2.3:=
systemd? ( sys-apps/systemd:= )
tcpd? ( sys-apps/tcp-wrappers )"
-DEPEND="${CDEPEND}
- virtual/pkgconfig"
-RDEPEND="${CDEPEND}
+RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-rpcbind )"
+BDEPEND="
+ virtual/pkgconfig"
src_prepare() {
+ default
[[ ${PV} == "9999" ]] && eautoreconf
- epatch_user
}
src_configure() {
- econf \
- --bindir="${EPREFIX}"/sbin \
- --with-statedir="${EPREFIX}"/run/${PN} \
- --with-rpcuser=root \
- --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_unitdir)" "no") \
- $(use_enable tcpd libwrap) \
- $(use_enable debug) \
+ local myeconfargs=(
+ --bindir="${EPREFIX}"/sbin
+ --sbindir="${EPREFIX}"/sbin
+ --with-statedir="${EPREFIX}"/run/${PN}
+ --with-systemdsystemunitdir=$(usex systemd "$(systemd_get_systemunitdir)" "no")
+ $(use_enable debug)
+ $(use_enable remotecalls rmtcalls)
$(use_enable warmstarts)
+ $(use_enable tcpd libwrap)
+ )
+
+ # Avoid using rpcsvc headers
+ # https://bugs.gentoo.org/705224
+ export ac_cv_header_rpcsvc_mount_h=no
+
+ econf "${myeconfargs[@]}"
}
src_install() {
@@ -49,6 +58,4 @@ src_install() {
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
-
- systemd_dounit "${FILESDIR}"/${PN}.service
}
diff --git a/sys-apps/man-db/Manifest b/sys-apps/man-db/Manifest
index c73dc89076..b705601b6d 100644
--- a/sys-apps/man-db/Manifest
+++ b/sys-apps/man-db/Manifest
@@ -1,6 +1,2 @@
-AUX man-db.cron 217 SHA256 5b2e690a12e6c5335ca3e7d180baa367d54adf18647f0e4a821f14b0ae45ade0 SHA512 81a7082d7f0cdf17d8277af7142aaa98feb8c12cf41bb96c12af53fdd3e436a4d15a57ef76fb90390133cfdb25e1bb1b16e17a39b39b6517afc529b871426331 WHIRLPOOL bda82f5a771cbe68077430798fdb9cacf9d2011f2ae598cba164bf0a2fb95c30348bba94208f78112cfd8bf19741c13699b940650b5c29755a2c13d39e56abe6
-DIST man-db-2.7.6.1.tar.xz 1541316 SHA256 08edbc52f24aca3eebac429b5444efd48b9b90b9b84ca0ed5507e5c13ed10f3f SHA512 623c5e7f8b7c289908b2c926f8777293b8d39aeceef0d2509d701a8b0bfa81408650f655c8608318221786c751a79ee91124b07993de5298cd7fa6d8bb737301 WHIRLPOOL 10ca0e397a53354ba6687c4057c8d8b7f57c0a97b806727ee05285a5aa1d8f2d17eae9f532b0edb364edde149108c765f812e4ecd6a28932cdceef56e0b5dbee
-EBUILD man-db-2.7.6.1-r2.ebuild 3145 SHA256 d69d4a0bd97c49bdbc87543269e4111394a7ef6f49020a4001a771649a0951a2 SHA512 323d3f53ce81d65d6012b310db9b31acb732bb457b0cd1a5e36d5d741668006711e3ed6ca4155c189c0ae59dd747ee36c67c63563ff08a3df0fb06100eac8651 WHIRLPOOL 64b1cff7a4286fd2a09b620be4519a0753cbef2aff3a6f4f9cda5dbba0fb3a3d025a5f5685a4228d23bb3aaefae96d7a13d9d8f99c25600256488ee58687aad0
-MISC ChangeLog 9327 SHA256 cb45d2db7d1cbf34fdbf354f7a6673b5556dbbe81ac6082ef1ee1994fec4ae8f SHA512 aa4100bd98703ab350cea86f9b73c6d8088e6a3f91eaa073db809d079d964387e53038a4438081bf939d06f1addf4d40332847556c0ff8c699b2ad8d2719c2e8 WHIRLPOOL 6fccb055c9e7e41e0c8078940353033c7f1154fc7f7c5c0b9671e0ecc2991c35195aa0e1ff53a52e157b8dd16a7909b76d932ccc210239c9231e24190d51eaa1
-MISC ChangeLog-2015 10778 SHA256 61a539cf1188343ade360c912c661e1519caecb69a988ca71a72851112a5522a SHA512 81a3235e84a62bc6f8d14c753676d1263f93d76707ab0ea4d02f0c445c34c45b0f4ae3a6e81152186abd81a99ca3d414874214cdcd7cfc7261d84d2f664e2e76 WHIRLPOOL 0fa35ef0a80cf94f055c16cb547be92ecbbeaa1bff2d03b48b74e14817fb118a5859d75a02e1c32fce7ed7396b3a062172e88a207a87d7fd3431b62122acf961
-MISC metadata.xml 342 SHA256 c81419f3ac855515743a636bfbd46d0534455d7d2d20f46e907f95dcd04af484 SHA512 553cf56ab0b3b6c9403612a7ccd1db073f557b432c68d60adb4716169250a9986b4c112023f6ae200a6fbc2df31cdafd9ab08e04d92ca35cffb81f690bd43d79 WHIRLPOOL 155a9ad5b173dd5ac75e4c93315b0ddd9ba5ec6299a778c63e2281f7aed499cae99e573585270fdd5d7e29b93160ac967785eeeaa78f9a933147764d56107fff
+DIST man-db-2.10.1.tar.xz 1890536 BLAKE2B b052a7006e1d47dfe7b82f82b6e6e47500ca1c8fa20716af7d3d4193ebde0b109f13f4ed3148c5e4bbc76f34d457ec71bf93ed88f9ab0f5da5b5e1c9066e6d70 SHA512 25a3c4e3d7b171faf0771885a7a7d502c4af801881777231c79d7ee9768c2e48e44afbf5603af13f5ac63e6981cfdb8e36ba8a33d5f926d8122635cf45fcff7a
+DIST man-db-2.9.4.tar.xz 1909020 BLAKE2B 43427e851f0e661ca1cee55211dd7636f4ffde067c75de7715f525029b22c205728f8e86ac49abff60e47a4a4c9e1fbd78e2c87e70bd37778b88594a3897275f SHA512 169f091dd0a1d0dbd1583366f8257afb8f57e030d0f7d4213c14ce0b1fc5debf8b9cf2731de503830cb2826b3a22b3cff7da993d44ec18557935bd293529133c
diff --git a/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
new file mode 100644
index 0000000000..71cbb1c20d
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.9.3-darwin-libdb-intl.patch
@@ -0,0 +1,30 @@
+https://gitlab.com/cjwatson/man-db/-/merge_requests/3
+
+libdb: link against libintl
+
+necessary since gettext is used for translations
+
+Signed-off-by: Fabian Groffen
+
+--- a/libdb/Makefile.am
++++ b/libdb/Makefile.am
+@@ -43,7 +43,7 @@
+ db_xdbm.h \
+ mydbm.h
+
+-libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
++libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS) $(LIBINTL)
+
+ libmandb_la_LDFLAGS = \
+ -avoid-version -release $(VERSION) -rpath $(pkglibdir) -no-undefined
+--- a/libdb/Makefile.in
++++ b/libdb/Makefile.in
+@@ -1541,7 +1541,7 @@
+ db_xdbm.h \
+ mydbm.h
+
+-libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
++libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS) $(LIBINTL)
+ libmandb_la_LDFLAGS = \
+ -avoid-version -release $(VERSION) -rpath $(pkglibdir) -no-undefined
+
diff --git a/sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch b/sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch
new file mode 100644
index 0000000000..8b2ad26d0e
--- /dev/null
+++ b/sys-apps/man-db/files/man-db-2.9.3-sandbox-env-tests.patch
@@ -0,0 +1,11 @@
+--- a/src/tests/man-deleted-directory
++++ b/src/tests/man-deleted-directory
+@@ -8,6 +8,8 @@
+
+ : ${MAN=man}
+
++test -n "$SANDBOX_ACTIVE" && skip "Gentoo: Test known bad under sandbox (#699466)"
++
+ init
+ echo "MANDATORY_MANPATH $abstmpdir/usr/share/man" >"$tmpdir/manpath.config"
+ MANPATH="$abstmpdir/usr/share/man"
diff --git a/sys-apps/man-db/files/man-db.cron b/sys-apps/man-db/files/man-db.cron-r1
similarity index 76%
rename from sys-apps/man-db/files/man-db.cron
rename to sys-apps/man-db/files/man-db.cron-r1
index b3794f2557..7f7932360c 100644
--- a/sys-apps/man-db/files/man-db.cron
+++ b/sys-apps/man-db/files/man-db.cron-r1
@@ -8,4 +8,4 @@ if [ ! -d "${cachedir}" ]; then
chmod 0755 "${cachedir}"
fi
-exec nice mandb --quiet
+exec su man -s /bin/sh -c 'nice mandb --quiet' 2>/dev/null
diff --git a/sys-apps/man-db/man-db-2.10.1.ebuild b/sys-apps/man-db/man-db-2.10.1.ebuild
new file mode 100644
index 0000000000..1098629151
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.10.1.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd prefix tmpfiles
+
+DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
+HOMEPAGE="https://gitlab.com/cjwatson/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://gitlab.com/cjwatson/man-db.git"
+else
+ # TODO: Change tarballs to gitlab too...?
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ 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"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="berkdb +manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="!sys-apps/man
+ >=dev-libs/libpipeline-1.5.0
+ sys-apps/groff
+ !berkdb? ( sys-libs/gdbm:= )
+ berkdb? ( sys-libs/db:= )
+ seccomp? ( sys-libs/libseccomp )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${CDEPEND}"
+BDEPEND="app-arch/xz-utils
+ virtual/pkgconfig
+ nls? (
+ >=app-text/po4a-0.45
+ sys-devel/gettext
+ virtual/libiconv
+ virtual/libintl
+ )"
+RDEPEND="${CDEPEND}
+ acct-group/man
+ acct-user/man
+ selinux? ( sec-policy/selinux-mandb )"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == *9999 ]] ; then
+ git-r3_src_unpack
+
+ # We need to mess with gnulib
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
+ git-r3_src_unpack
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" == *9999 ]] ; then
+ local bootstrap_opts=(
+ --gnulib-srcdir=../gnulib
+ --no-bootstrap-sync
+ --copy
+ --no-git
+ )
+ AUTORECONF="/bin/true" \
+ LIBTOOLIZE="/bin/true" \
+ sh ./bootstrap "${bootstrap_opts[@]}" || die
+
+ eautoreconf
+ fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
+}
+
+src_configure() {
+ # Set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
+ export ac_cv_lib_z_gzopen=$(usex zlib)
+ local myeconfargs=(
+ --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --disable-setuid # bug #662438
+ --enable-cache-owner=man
+ --with-sections="${sections}"
+
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with seccomp libseccomp)
+
+ --with-db=$(usex berkdb db gdbm)
+ )
+
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+ $(use_with nls libintl-prefix "${EPREFIX}"/usr)
+ )
+ ;;
+ esac
+
+ econf "${myeconfargs[@]}"
+
+ # Disable color output from groff so that the manpager can add it. bug #184604
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+
+ cat > 15man-db <<-EOF || die
+ SANDBOX_PREDICT="/var/cache/man"
+ EOF
+}
+
+src_install() {
+ default
+ dodoc docs/{HACKING.md,TODO}
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
+
+ insinto /etc/sandbox.d
+ doins 15man-db
+}
+
+pkg_preinst() {
+ local cachedir="${EROOT}/var/cache/man"
+ # If the system was already exploited, and the attacker is hiding in the
+ # cachedir of the old man-db, let's wipe them out.
+ # see bug #602588 comment 18
+ local _replacing_version=
+ local _setgid_vuln=0
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
+ debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+ else
+ _setgid_vuln=1
+ debug-print "Applying cleanup for security bug #602588"
+ fi
+ done
+ [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+ # Fall back to recreating the cachedir
+ if [[ ! -d ${cachedir} ]] ; then
+ mkdir -p "${cachedir}" || die
+ chown man:man "${cachedir}" || die
+ fi
+
+ # Update the whatis cache
+ if [[ -f ${cachedir}/whatis ]] ; then
+ einfo "Cleaning ${cachedir} from sys-apps/man"
+ find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process man-db.conf
+
+ if [[ -n "${REPLACING_VERSIONS}" ]] ; then
+ local _replacing_version=
+
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+
+ # No need to run it again if we hit one
+ break
+ fi
+ done
+ fi
+}
diff --git a/sys-apps/man-db/man-db-2.7.6.1-r2.ebuild b/sys-apps/man-db/man-db-2.7.6.1-r2.ebuild
deleted file mode 100644
index 11c66d57a0..0000000000
--- a/sys-apps/man-db/man-db-2.7.6.1-r2.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils user versionator
-
-DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
-HOMEPAGE="http://www.nongnu.org/man-db/"
-SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="berkdb +gdbm +manpager nls selinux static-libs zlib"
-
-CDEPEND=">=dev-libs/libpipeline-1.4.0
- berkdb? ( sys-libs/db:= )
- gdbm? ( sys-libs/gdbm )
- !berkdb? ( !gdbm? ( sys-libs/gdbm ) )
- sys-apps/groff
- zlib? ( sys-libs/zlib )
- !sys-apps/man"
-DEPEND="${CDEPEND}
- app-arch/xz-utils
- virtual/pkgconfig
- nls? (
- >=app-text/po4a-0.45
- sys-devel/gettext
- )"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-mandb )
-"
-PDEPEND="manpager? ( app-text/manpager )"
-
-pkg_setup() {
- # Create user now as Makefile in src_install does setuid/chown
- enewgroup man 15
- enewuser man 13 -1 /usr/share/man man
-
- if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
- ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
- fi
-}
-
-src_configure() {
- export ac_cv_lib_z_gzopen=$(usex zlib)
- econf \
- --docdir='$(datarootdir)'/doc/${PF} \
- --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d \
- --enable-setuid \
- --enable-cache-owner=man \
- --with-sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o 1x 2x 3x 4x 5x 6x 7x 8x" \
- $(use_enable nls) \
- $(use_enable static-libs static) \
- --with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
-
- # Disable color output from groff so that the manpager can add it. #184604
- sed -i \
- -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
- src/man_db.conf || die
-}
-
-src_install() {
- default
- dodoc docs/{HACKING,TODO}
- prune_libtool_files
-
- exeinto /etc/cron.daily
- newexe "${FILESDIR}"/man-db.cron man-db #289884
-}
-
-pkg_preinst() {
- local cachedir="${EROOT}var/cache/man"
- # If the system was already exploited, and the attacker is hiding in the
- # cachedir of the old man-db, let's wipe them out.
- # see bug #602588 comment 18
- local _replacing_version=
- local _setgid_vuln=0
- for _replacing_version in ${REPLACING_VERSIONS}; do
- if version_is_at_least '2.7.6.1-r2' "${_replacing_version}"; then
- debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
- else
- _setgid_vuln=1
- debug-print "Applying cleanup for security bug #602588"
- fi
- done
- [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
-
- # Fall back to recreating the cachedir
- if [[ ! -d ${cachedir} ]] ; then
- mkdir -p "${cachedir}" || die
- chown man:man "${cachedir}" || die
- fi
-
- # Update the whatis cache
- if [[ -f ${cachedir}/whatis ]] ; then
- einfo "Cleaning ${cachedir} from sys-apps/man"
- find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
- fi
-}
-
-pkg_postinst() {
- if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
- einfo "Rebuilding man-db from scratch with new database format!"
- mandb --quiet --create
- fi
-}
diff --git a/sys-apps/man-db/man-db-2.9.4-r1.ebuild b/sys-apps/man-db/man-db-2.9.4-r1.ebuild
new file mode 100644
index 0000000000..4dd59206d9
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.9.4-r1.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd prefix tmpfiles
+
+DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
+HOMEPAGE="http://www.nongnu.org/man-db/"
+if [[ "${PV}" = 9999* ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/man-db.git"
+else
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ 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"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="berkdb +gdbm +manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="
+ !sys-apps/man
+ >=dev-libs/libpipeline-1.5.0
+ sys-apps/groff
+ gdbm? ( sys-libs/gdbm:= )
+ !gdbm? ( berkdb? ( sys-libs/db:= ) )
+ !berkdb? ( !gdbm? ( sys-libs/gdbm:= ) )
+ seccomp? ( sys-libs/libseccomp )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${CDEPEND}"
+BDEPEND="
+ app-arch/xz-utils
+ virtual/pkgconfig
+ nls? (
+ >=app-text/po4a-0.45
+ sys-devel/gettext
+ virtual/libiconv
+ virtual/libintl
+ )
+"
+RDEPEND="
+ ${CDEPEND}
+ acct-group/man
+ acct-user/man
+ selinux? ( sec-policy/selinux-mandb )
+"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+ "${FILESDIR}"/man-db-2.9.3-darwin-libdb-intl.patch
+)
+
+pkg_setup() {
+ if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
+ ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE flag settings"
+ fi
+}
+
+src_unpack() {
+ if [[ "${PV}" == *9999 ]] ; then
+ git-r3_src_unpack
+
+ # We need to mess with gnulib :-/
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
+ git-r3_src_unpack
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+ if [[ "${PV}" == *9999 ]] ; then
+ local bootstrap_opts=(
+ --gnulib-srcdir=../gnulib
+ --no-bootstrap-sync
+ --copy
+ --no-git
+ )
+ AUTORECONF="/bin/true" \
+ LIBTOOLIZE="/bin/true" \
+ sh ./bootstrap "${bootstrap_opts[@]}" || die
+
+ eautoreconf
+ fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
+}
+
+src_configure() {
+ # set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
+ export ac_cv_lib_z_gzopen=$(usex zlib)
+ local myeconfargs=(
+ --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --disable-setuid #662438
+ --enable-cache-owner=man
+ --with-sections="${sections}"
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with seccomp libseccomp)
+ --with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+ )
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix ${EPREFIX}/usr)
+ $(use_with nls libintl-prefix ${EPREFIX}/usr)
+ )
+ ;;
+ esac
+ econf "${myeconfargs[@]}"
+
+ # Disable color output from groff so that the manpager can add it. #184604
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+
+ cat > 15man-db <<-EOF || die
+ SANDBOX_PREDICT="/var/cache/man"
+ EOF
+}
+
+src_install() {
+ default
+ dodoc docs/{HACKING,TODO}
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db #289884
+
+ insinto /etc/sandbox.d
+ doins 15man-db
+}
+
+pkg_preinst() {
+ local cachedir="${EROOT}/var/cache/man"
+ # If the system was already exploited, and the attacker is hiding in the
+ # cachedir of the old man-db, let's wipe them out.
+ # see bug #602588 comment 18
+ local _replacing_version=
+ local _setgid_vuln=0
+ for _replacing_version in ${REPLACING_VERSIONS}; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}"; then
+ debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+ else
+ _setgid_vuln=1
+ debug-print "Applying cleanup for security bug #602588"
+ fi
+ done
+ [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+ # Fall back to recreating the cachedir
+ if [[ ! -d ${cachedir} ]] ; then
+ mkdir -p "${cachedir}" || die
+ chown man:man "${cachedir}" || die
+ fi
+
+ # Update the whatis cache
+ if [[ -f ${cachedir}/whatis ]] ; then
+ einfo "Cleaning ${cachedir} from sys-apps/man"
+ find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process man-db.conf
+
+ if [[ $(ver_cut 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+ fi
+}
diff --git a/sys-apps/man-db/man-db-9999.ebuild b/sys-apps/man-db/man-db-9999.ebuild
new file mode 100644
index 0000000000..1098629151
--- /dev/null
+++ b/sys-apps/man-db/man-db-9999.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd prefix tmpfiles
+
+DESCRIPTION="A man replacement that utilizes berkdb instead of flat files"
+HOMEPAGE="https://gitlab.com/cjwatson/man-db https://www.nongnu.org/man-db/"
+if [[ ${PV} == *9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://gitlab.com/cjwatson/man-db.git"
+else
+ # TODO: Change tarballs to gitlab too...?
+ SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+ 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"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="berkdb +manpager nls +seccomp selinux static-libs zlib"
+
+CDEPEND="!sys-apps/man
+ >=dev-libs/libpipeline-1.5.0
+ sys-apps/groff
+ !berkdb? ( sys-libs/gdbm:= )
+ berkdb? ( sys-libs/db:= )
+ seccomp? ( sys-libs/libseccomp )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${CDEPEND}"
+BDEPEND="app-arch/xz-utils
+ virtual/pkgconfig
+ nls? (
+ >=app-text/po4a-0.45
+ sys-devel/gettext
+ virtual/libiconv
+ virtual/libintl
+ )"
+RDEPEND="${CDEPEND}
+ acct-group/man
+ acct-user/man
+ selinux? ( sec-policy/selinux-mandb )"
+PDEPEND="manpager? ( app-text/manpager )"
+
+PATCHES=(
+ "${FILESDIR}"/man-db-2.9.3-sandbox-env-tests.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == *9999 ]] ; then
+ git-r3_src_unpack
+
+ # We need to mess with gnulib
+ EGIT_REPO_URI="https://git.savannah.gnu.org/r/gnulib.git" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/gnulib" \
+ git-r3_src_unpack
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" == *9999 ]] ; then
+ local bootstrap_opts=(
+ --gnulib-srcdir=../gnulib
+ --no-bootstrap-sync
+ --copy
+ --no-git
+ )
+ AUTORECONF="/bin/true" \
+ LIBTOOLIZE="/bin/true" \
+ sh ./bootstrap "${bootstrap_opts[@]}" || die
+
+ eautoreconf
+ fi
+
+ hprefixify src/man_db.conf.in
+ if use prefix ; then
+ {
+ echo "#"
+ echo "# Added settings for Gentoo Prefix"
+ [[ ${CHOST} == *-darwin* ]] && \
+ echo "MANDATORY_MANPATH ${EPREFIX}/MacOSX.sdk/usr/share/man"
+ echo "MANDATORY_MANPATH /usr/share/man"
+ } >> src/man_db.conf.in
+ fi
+}
+
+src_configure() {
+ # Set sections we want to search by default
+ local sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o"
+ sections+=" 1x 2x 3x 4x 5x 6x 7x 8x"
+ case ${CHOST} in
+ *-solaris*)
+ # Solaris tends to use sections named after the pkgs that
+ # owns them, in particular for libc functions we want those
+ # sections
+ local s
+ for s in $(cd /usr/share/man/ && echo man*) ; do
+ s=${s#man}
+ [[ " ${sections} " != *" ${s} "* ]] && sections+=" ${s}"
+ done
+ ;;
+ esac
+
+ export ac_cv_lib_z_gzopen=$(usex zlib)
+ local myeconfargs=(
+ --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ --disable-setuid # bug #662438
+ --enable-cache-owner=man
+ --with-sections="${sections}"
+
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with seccomp libseccomp)
+
+ --with-db=$(usex berkdb db gdbm)
+ )
+
+ case ${CHOST} in
+ *-solaris*|*-darwin*)
+ myeconfargs+=(
+ $(use_with nls libiconv-prefix "${EPREFIX}"/usr)
+ $(use_with nls libintl-prefix "${EPREFIX}"/usr)
+ )
+ ;;
+ esac
+
+ econf "${myeconfargs[@]}"
+
+ # Disable color output from groff so that the manpager can add it. bug #184604
+ sed -i \
+ -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+ src/man_db.conf || die
+
+ cat > 15man-db <<-EOF || die
+ SANDBOX_PREDICT="/var/cache/man"
+ EOF
+}
+
+src_install() {
+ default
+ dodoc docs/{HACKING.md,TODO}
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/man-db.cron-r1 man-db # bug #289884
+
+ insinto /etc/sandbox.d
+ doins 15man-db
+}
+
+pkg_preinst() {
+ local cachedir="${EROOT}/var/cache/man"
+ # If the system was already exploited, and the attacker is hiding in the
+ # cachedir of the old man-db, let's wipe them out.
+ # see bug #602588 comment 18
+ local _replacing_version=
+ local _setgid_vuln=0
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test '2.7.6.1-r2' -le "${_replacing_version}" ; then
+ debug-print "Skipping security bug #602588 ... existing installation (${_replacing_version}) should not be affected!"
+ else
+ _setgid_vuln=1
+ debug-print "Applying cleanup for security bug #602588"
+ fi
+ done
+ [[ ${_setgid_vuln} -eq 1 ]] && rm -rf "${cachedir}"
+
+ # Fall back to recreating the cachedir
+ if [[ ! -d ${cachedir} ]] ; then
+ mkdir -p "${cachedir}" || die
+ chown man:man "${cachedir}" || die
+ fi
+
+ # Update the whatis cache
+ if [[ -f ${cachedir}/whatis ]] ; then
+ einfo "Cleaning ${cachedir} from sys-apps/man"
+ find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process man-db.conf
+
+ if [[ -n "${REPLACING_VERSIONS}" ]] ; then
+ local _replacing_version=
+
+ for _replacing_version in ${REPLACING_VERSIONS} ; do
+ if [[ $(ver_cut 2 ${_replacing_version}) -lt 7 ]] ; then
+ einfo "Rebuilding man-db from scratch with new database format!"
+ su man -s /bin/sh -c 'mandb --quiet --create' 2>/dev/null
+
+ # No need to run it again if we hit one
+ break
+ fi
+ done
+ fi
+}
diff --git a/sys-apps/man-db/metadata.xml b/sys-apps/man-db/metadata.xml
index c4bde02092..e840f33805 100644
--- a/sys-apps/man-db/metadata.xml
+++ b/sys-apps/man-db/metadata.xml
@@ -1,5 +1,5 @@
-
+
base-system@gentoo.org
diff --git a/sys-block/thin-provisioning-tools/Manifest b/sys-block/thin-provisioning-tools/Manifest
index a96a60d2a2..07f841d021 100644
--- a/sys-block/thin-provisioning-tools/Manifest
+++ b/sys-block/thin-provisioning-tools/Manifest
@@ -1,6 +1,2 @@
-DIST thin-provisioning-tools-0.4.1.tar.gz 186979 BLAKE2B d7e60b67f716c1398c4fa7230b3e0b57f62aa47cf6253806e4e3b932b0a71a489cf367ec9eb1e0a620dfab5a7ef0f4c2049a8ee5f5da0d94855fc3618dd03feb SHA512 e148296b55f7ff4ab85dc3b4679c7eab0ee8d56e61415397fc2e46f17bcc16a6a582c17343381320f8582bc4f12311af622d43aabe60e7abb25a882446016b7e
-DIST thin-provisioning-tools-0.6.3.tar.gz 198697 BLAKE2B 0bc9ae1ee650f4f2c553ca72e0569bcf2590174cde2b89084ff4347d78f0dbd08c29bbc9629498f2b8fe2149fb27eeee2e0b5928890224b9ead224fd1a3161d1 SHA512 ccebf5bb1ac2da56a3dab5b7ce8d61f6a71f84b5168c2680618d724340bbf8cf97c935c1bce966a296331d9dc048a855d81775d2a39f10b4096ab3ee835286d9
DIST thin-provisioning-tools-0.7.0.tar.gz 230595 BLAKE2B 00238a682f80600e3a5bb6d0d2a9662bd0fd3ae5404d5895427f169640b469780f554c22c6a93187058e6399c76ba14a6fa8d73f2bb09aa79927dd458b58ffa9 SHA512 cb6c44c7215aadd72292d73e2374d8c0c28566adcb10c7a3de83576dbd28649ebba6e2cc59945a28921e423540969cb21f648c37e375d68f48e56a8be4a4c7b8
-DIST thin-provisioning-tools-0.7.2.tar.gz 265819 BLAKE2B ccaecd37b1bfc2c7da6682651b51a9bdf7ececee806155b31b5342d3009109a510409a853ae54432fc810c4dd8f4a6207eb3cb84fa56bee273ef04ed0e5b34e6 SHA512 563363842ab0b92f563ac7fcaedb18b8fca70b0894ff30d55cc40487d53b035c32d3ef711adb7102ef1a55b26a75510239da2542b791d850a5cbccf1ddf1acdd
-DIST thin-provisioning-tools-0.7.4.tar.gz 276652 BLAKE2B 5ed00d6c2b34524656e37e9db5f41e09e2a17970edfe89a7539cea8bdc87474c1a7f52841aa5ef07dfa5a1792dec3d01aa1e3c2a6bc56ae0556e89edad3a9fb3 SHA512 cf7f15efc1dca4e4961ae72a1cafa46985639619da90d0ef192d14e0c45ae7996365f3f87846cce6d27259f72caf14cba653254414876687e4d14f500687b3cb
-DIST thin-provisioning-tools-0.7.5.tar.gz 278856 BLAKE2B f554a9001bc9dde3510e3702f184d48cd77ddfc04f16c7e054fea8a3a47fdce7796ca4fcdb8d155e3d22526535ae965e344b3c2735f6275a7702044536dff923 SHA512 65268cc0c68428fa89f039c097794f574ef79b1862de3208715b9180ba73b197f37d879b386b110c52d9f2d3e80fb069a8d48ee2939aa1fd2b88f2513babc763
+DIST thin-provisioning-tools-0.9.0.tar.gz 500998 BLAKE2B ac269fb6dfd1baf1572da27582ac2cd763b07aaac130a9467d05581e7a0ba1309d7dbf4c6095407111667e57af2e8183318d558ed23853f9c84b9c151c0878d9 SHA512 e1796fb3948847d72ca8247cae58017507c0a847a00201b93668eeb8fbfea4107c4c2affa5c211c149798a89b10474e83d2bd61a5545a668299be97aed591e0f
diff --git a/sys-block/thin-provisioning-tools/files/0.9.0-remove-boost_iostreams.patch b/sys-block/thin-provisioning-tools/files/0.9.0-remove-boost_iostreams.patch
new file mode 100644
index 0000000000..87a1b4e2f7
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/files/0.9.0-remove-boost_iostreams.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -173,7 +173,7 @@
+ CXXFLAGS+=@CXX_STRERROR_FLAG@
+ CXXFLAGS+=@LFS_FLAGS@
+ INCLUDES+=-I$(TOP_BUILDDIR) -I$(TOP_DIR) -I$(TOP_DIR)/thin-provisioning
+-LIBS:=-laio -lexpat -lboost_iostreams -ldl
++LIBS:=-laio -lexpat -ldl
+
+ ifeq ("@DEVTOOLS@", "yes")
+ LIBS+=-lncurses
diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.6.3-build-fixes.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.6.3-build-fixes.patch
deleted file mode 100644
index ae1148a162..0000000000
--- a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.6.3-build-fixes.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-diff -purN a/Makefile.in b/Makefile.in
---- a/Makefile.in 2016-07-21 15:42:52.000000000 +0100
-+++ b/Makefile.in 2016-10-28 22:45:54.292931031 +0100
-@@ -108,7 +108,7 @@ CFLAGS?=@CFLAGS@
- CFLAGS+=-Wall
- CFLAGS+=@LFS_FLAGS@
- CXXFLAGS?=@CXXFLAGS@
--CXXFLAGS+=-Wall -fno-strict-aliasing -std=gnu++98
-+CXXFLAGS+=-Wall -fno-strict-aliasing
- CXXFLAGS+=@CXXOPTIMISE_FLAG@
- CXXFLAGS+=@CXXDEBUG_FLAG@
- CXXFLAGS+=@CXX_STRERROR_FLAG@
-diff -purN a/thin-provisioning/restore_emitter.cc b/thin-provisioning/restore_emitter.cc
---- a/thin-provisioning/restore_emitter.cc 2016-07-21 15:42:52.000000000 +0100
-+++ b/thin-provisioning/restore_emitter.cc 2016-10-28 22:49:32.662189111 +0100
-@@ -142,7 +142,7 @@ namespace {
- bool device_exists(thin_dev_t dev) const {
- uint64_t key[1] = {dev};
- device_tree::maybe_value v = md_->details_->lookup(key);
-- return v;
-+ return v.is_initialized();
- }
-
- metadata::ptr md_;
-diff -purN a/thin-provisioning/thin_pool.cc b/thin-provisioning/thin_pool.cc
---- a/thin-provisioning/thin_pool.cc 2016-07-21 15:42:52.000000000 +0100
-+++ b/thin-provisioning/thin_pool.cc 2016-10-28 22:50:26.999256645 +0100
-@@ -232,7 +232,7 @@ bool
- thin_pool::device_exists(thin_dev_t dev) const
- {
- uint64_t key[1] = {dev};
-- return md_->details_->lookup(key);
-+ return md_->details_->lookup(key).is_initialized();
- }
-
- //----------------------------------------------------------------
-diff -purN a/unit-tests/Makefile.in b/unit-tests/Makefile.in
---- a/unit-tests/Makefile.in 2016-07-21 15:42:52.000000000 +0100
-+++ b/unit-tests/Makefile.in 2016-10-28 22:45:20.985893955 +0100
-@@ -25,7 +25,7 @@ GMOCK_FLAGS=\
- -Wno-unused-local-typedefs
-
- GMOCK_LIBS=\
-- -Llib -lpdata -lgmock -lpthread -laio
-+ -Llib -lpdata -lgmock -lpthread -laio -lgtest
-
- GMOCK_DEPS=\
- $(wildcard $(GMOCK_DIR)/include/*.h) \
-@@ -80,7 +80,7 @@ TEST_OBJECTS=$(subst .cc,.gmo,$(TEST_SOU
- sed 's,\([^ :]*\)\.o[ :]*,\1.o \1.gmo $* : Makefile ,g' < $*.$$$$ > $*.d; \
- $(RM) $*.$$$$
-
--unit-tests/unit_tests: $(TEST_OBJECTS) lib/libgmock.a lib/libpdata.a
-+unit-tests/unit_tests: $(TEST_OBJECTS) lib/libpdata.a
- @echo " [LD] $<"
- $(V)g++ $(CXXFLAGS) $(LDFLAGS) -o $@ $(TEST_OBJECTS) $(LIBS) $(GMOCK_LIBS) $(LIBEXPAT)
-
diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.4-disabled-tests_build_fix.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.4-disabled-tests_build_fix.patch
deleted file mode 100644
index f9a64b2188..0000000000
--- a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.4-disabled-tests_build_fix.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 8d75be81120b9cf172c95d0153c5f845ed804234 Mon Sep 17 00:00:00 2001
-From: Adam Sampson
-Date: Mon, 16 Oct 2017 13:07:36 +0100
-Subject: [PATCH] [functional-tests] fix build with testing disabled (#88)
-
-The rule for lib/libft.so is only enabled with --enable-testing,
-so the default target shouldn't depend unconditionally on it.
-With the default configure options, the build failed with:
-make: *** No rule to make target 'lib/libft.so', needed by 'all'. Stop.
----
- Makefile.in | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index e745739..02b75dd 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -21,8 +21,13 @@ V=@
- PROGRAMS=\
- bin/pdata_tools
-
-+ifeq ("@TESTING@", "yes")
-+TESTLIBS=\
-+ lib/libft.so
-+endif
-+
- .PHONY: all
--all: $(PROGRAMS) lib/libft.so
-+all: $(PROGRAMS) $(TESTLIBS)
-
- SOURCE=\
- base/output_file_requirements.cc \
diff --git a/sys-block/thin-provisioning-tools/metadata.xml b/sys-block/thin-provisioning-tools/metadata.xml
index 24ce9f15b9..15dea8bd8d 100644
--- a/sys-block/thin-provisioning-tools/metadata.xml
+++ b/sys-block/thin-provisioning-tools/metadata.xml
@@ -1,5 +1,5 @@
-
+
robbat2@gentoo.org
@@ -8,9 +8,6 @@
base-system@gentoo.org
Gentoo Base System
-
-A suite of tools for thin provisioning on Linux.
-
jthornber/thin-provisioning-tools
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.4.1.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.4.1.ebuild
deleted file mode 100644
index 7d843fe9ae..0000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.4.1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit autotools eutils
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-EXT=.tar.gz
-BASE_A=${P}${EXT}
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}${EXT} -> ${BASE_A}"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-
-RDEPEND="dev-libs/expat
- dev-libs/libaio"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
- test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 dev-lang/ruby:1.9 dev-lang/ruby:1.8 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
- dev-util/cucumber
- dev-util/aruba
- )
- dev-libs/boost"
-
-src_prepare() {
- sed -i -e '/^INSTALL_PROGRAM/s:-s::' Makefile.in || die
- sed -i \
- -e '/^unit-tests\/unit_tests:/s:lib/libgmock.a::' \
- -e '/-lgmock/s:$: -lgtest:' \
- unit-tests/Makefile.in || die #493440
- epatch_user
- eautoreconf
-}
-
-src_configure() {
- econf \
- --prefix="${EPREFIX}"/ \
- --bindir="${EPREFIX}"/sbin \
- --with-optimisation='' \
- $(use_enable test testing)
-}
-
-src_compile() {
- MAKEOPTS+=" V="
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" MANPATH="${D}"/usr/share/man install
- dodoc README.md TODO.org
-}
-
-src_test() {
- emake unit-test
-}
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.6.3.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.6.3.ebuild
deleted file mode 100644
index 2945158568..0000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.6.3.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static test"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
- dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
- dev-util/cucumber
- dev-util/aruba
- )
- dev-libs/boost"
-
-PATCHES=( "${FILESDIR}"/${P}-build-fixes.patch )
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- use static && append-ldflags -static
- STRIP=true econf \
- --prefix="${EPREFIX}"/ \
- --bindir="${EPREFIX}"/sbin \
- --with-optimisation='' \
- $(use_enable test testing)
-}
-
-src_compile() {
- MAKEOPTS+=" V="
- default
-}
-
-src_test() {
- emake unit-test
-}
-
-src_install() {
- emake DESTDIR="${D}" DATADIR="${ED}/usr/share" install
- dodoc README.md TODO.org
-}
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild
index 22efe20943..53bf5146d4 100644
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -11,19 +11,18 @@ SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="static test"
+RESTRICT="!test? ( test )"
LIB_DEPEND="dev-libs/expat[static-libs(+)]
dev-libs/libaio[static-libs(+)]"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
+ dev-lang/ruby:2.6
+ >=dev-cpp/gtest-1.8.0
dev-util/cucumber
dev-util/aruba
)
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.2.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.2.ebuild
deleted file mode 100644
index 36d3cd7976..0000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static test"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
- dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
- dev-util/cucumber
- dev-util/aruba
- )
- dev-libs/boost"
-
-PATCHES=( "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch )
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- use static && append-ldflags -static
- STRIP=true econf \
- --prefix="${EPREFIX}"/ \
- --bindir="${EPREFIX}"/sbin \
- --with-optimisation='' \
- $(use_enable test testing)
-}
-
-src_compile() {
- MAKEOPTS+=" V="
- default
-}
-
-src_test() {
- emake unit-test
-}
-
-src_install() {
- emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
- dodoc README.md TODO.org
-}
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.4.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.4.ebuild
deleted file mode 100644
index b0807e8fcf..0000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.4.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static test"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
- dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
- static? ( ${LIB_DEPEND} )
- test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
- dev-util/cucumber
- dev-util/aruba
- )
- dev-libs/boost"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
- "${FILESDIR}/${P}-disabled-tests_build_fix.patch" #634868
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- use static && append-ldflags -static
- STRIP=true econf \
- --prefix="${EPREFIX}"/ \
- --bindir="${EPREFIX}"/sbin \
- --with-optimisation='' \
- $(use_enable test testing)
-}
-
-src_compile() {
- MAKEOPTS+=" V="
- default
-}
-
-src_test() {
- emake unit-test
-}
-
-src_install() {
- emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
- dodoc README.md TODO.org
-}
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.5.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.9.0-r1.ebuild
similarity index 50%
rename from sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.5.ebuild
rename to sys-block/thin-provisioning-tools/thin-provisioning-tools-0.9.0-r1.ebuild
index 5dffbee82a..b00ab93154 100644
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.5.ebuild
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.9.0-r1.ebuild
@@ -1,29 +1,38 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit autotools flag-o-matic
DESCRIPTION="A suite of tools for thin provisioning on Linux"
HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+if [[ ${PV} != *9999 ]]; then
+ SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+else
+ inherit git-r3
+ EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
+fi
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="static test"
+RESTRICT="!test? ( test )"
LIB_DEPEND="dev-libs/expat[static-libs(+)]
dev-libs/libaio[static-libs(+)]"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
+ || (
+ dev-lang/ruby:2.7
+ dev-lang/ruby:2.6
+ dev-lang/ruby:2.5
+ )
+ >=dev-cpp/gtest-1.8.0
dev-util/cucumber
dev-util/aruba
)
@@ -31,6 +40,7 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
+ "${FILESDIR}"/0.9.0-remove-boost_iostreams.patch
)
src_prepare() {
@@ -40,23 +50,24 @@ src_prepare() {
src_configure() {
use static && append-ldflags -static
- STRIP=true econf \
- --prefix="${EPREFIX}"/ \
- --bindir="${EPREFIX}"/sbin \
- --with-optimisation='' \
+ local myeconfargs=(
+ --prefix="${EPREFIX}"/
+ --bindir="${EPREFIX}"/sbin
+ --with-optimisation=''
$(use_enable test testing)
+ )
+ STRIP=true econf "${myeconfargs[@]}"
}
src_compile() {
- MAKEOPTS+=" V="
- default
+ emake V=
}
src_test() {
- emake unit-test
+ emake V= unit-test
}
src_install() {
- emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
+ emake V= DESTDIR="${D}" DATADIR="${ED}/usr/share" install
dodoc README.md TODO.org
}
diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild
index 54a1136b0e..f9480dfe1f 100644
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild
@@ -1,40 +1,46 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-[[ ${PV} == *9999 ]] && SCM="git-r3"
-EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
-inherit autotools flag-o-matic $SCM
+inherit autotools flag-o-matic
DESCRIPTION="A suite of tools for thin provisioning on Linux"
HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
if [[ ${PV} != *9999 ]]; then
SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+else
+ inherit git-r3
+ EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
fi
LICENSE="GPL-3"
SLOT="0"
IUSE="static test"
+RESTRICT="!test? ( test )"
LIB_DEPEND="dev-libs/expat[static-libs(+)]
dev-libs/libaio[static-libs(+)]"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
test? (
- || ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
- >=dev-cpp/gmock-1.6
- >=dev-cpp/gtest-1.6
+ || (
+ dev-lang/ruby:2.7
+ dev-lang/ruby:2.6
+ dev-lang/ruby:2.5
+ )
+ >=dev-cpp/gtest-1.8.0
dev-util/cucumber
dev-util/aruba
)
dev-libs/boost"
-PATCHES=( "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
+)
src_prepare() {
default
@@ -43,23 +49,24 @@ src_prepare() {
src_configure() {
use static && append-ldflags -static
- STRIP=true econf \
- --prefix="${EPREFIX}"/ \
- --bindir="${EPREFIX}"/sbin \
- --with-optimisation='' \
+ local myeconfargs=(
+ --prefix="${EPREFIX}"/
+ --bindir="${EPREFIX}"/sbin
+ --with-optimisation=''
$(use_enable test testing)
+ )
+ STRIP=true econf "${myeconfargs[@]}"
}
src_compile() {
- MAKEOPTS+=" V="
- default
+ emake V=
}
src_test() {
- emake unit-test
+ emake V= unit-test
}
src_install() {
- emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
+ emake V= DESTDIR="${D}" DATADIR="${ED}/usr/share" install
dodoc README.md TODO.org
}
diff --git a/sys-boot/efibootmgr/Manifest b/sys-boot/efibootmgr/Manifest
index bb6f7e6c14..9eb28d6dd1 100644
--- a/sys-boot/efibootmgr/Manifest
+++ b/sys-boot/efibootmgr/Manifest
@@ -1,2 +1,4 @@
DIST efibootmgr-14.tar.bz2 34972 BLAKE2B 78490756c5fd449f4319b79e0818e9d80340bd487f57d0de34f79f48cc24eb7b9c7309b535d00efad4babd40904d4cfb085cca278170625a1e875961e423f5dd SHA512 97935f8752440ce236162e174ea3404e907ebddc5877d597a97813da76ad580689fc2e97044885fc860a12a473af7183242b6120e78e53243d35e569fb002baf
DIST efibootmgr-15.tar.bz2 35476 BLAKE2B 19b7c9ce51f3b930b2d59fa4a594c7a8bf5f1c7aa3224049e88cdafe82991799b1b719ec68c80131027f70c16bd19e38157f5d0bc7761843959410c667aa4070 SHA512 d9d9eef14d373d5da88141e8105f754fea4c039755ed0a0cb9b3c9c2bb285733ad930fd912df42075fe2cf750585699307b067f594d8e65269b3b8a5a00b1cd1
+DIST efibootmgr-16.tar.bz2 36603 BLAKE2B 3d09a9d3c4ecd48010315fccae60ab408c0d08e9c734e86a944130ea03e038835fa08745819f5353efbbe36f5017be64faded4b625ef0a0b55d4ca0d612ef232 SHA512 936318c7163c07b716f89be3d830957d9db68ba1b059223f7ea3d9eafe0dbf1c91b9aee096f5aed70955c6052c3b8547295c0a47f17cdf43788259d87d1990b9
+DIST efibootmgr-17.tar.gz 41643 BLAKE2B a1995a5df74766f762d2eb971fd6095edea8d0a498c9dd1100515866b40c38ae2f299aae51f12767850ec23fbe4709c2c7428dd48755fbec499669b69f6432c9 SHA512 10c7ad9a79f23dcd4708dc4f42701196af7aa11f5e9a6468ea51f7013d4caeba6c92527ba1304f6e3b2ef3b51b3b69ea1a30f81bb099a8aea49eeb30eb631e1d
diff --git a/sys-boot/efibootmgr/efibootmgr-14.ebuild b/sys-boot/efibootmgr/efibootmgr-14.ebuild
index 93b101105a..8266a96d68 100644
--- a/sys-boot/efibootmgr/efibootmgr-14.ebuild
+++ b/sys-boot/efibootmgr/efibootmgr-14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/rhinstaller/efibootmgr/releases/download/${PV}/${P}.
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ia64 x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 x86"
IUSE=""
RDEPEND="sys-apps/pciutils
diff --git a/sys-boot/efibootmgr/efibootmgr-15.ebuild b/sys-boot/efibootmgr/efibootmgr-15.ebuild
index cf12ebd1cd..b51f8d148d 100644
--- a/sys-boot/efibootmgr/efibootmgr-15.ebuild
+++ b/sys-boot/efibootmgr/efibootmgr-15.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/rhinstaller/efibootmgr/releases/download/${PV}/${P}.
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ia64 x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 x86"
IUSE=""
RDEPEND="sys-apps/pciutils
diff --git a/sys-boot/efibootmgr/efibootmgr-16.ebuild b/sys-boot/efibootmgr/efibootmgr-16.ebuild
new file mode 100644
index 0000000000..d16655fc90
--- /dev/null
+++ b/sys-boot/efibootmgr/efibootmgr-16.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs
+
+DESCRIPTION="User-space application to modify the EFI boot manager"
+HOMEPAGE="https://github.com/rhinstaller/efibootmgr"
+SRC_URI="https://github.com/rhinstaller/efibootmgr/releases/download/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ia64 x86"
+IUSE=""
+
+RDEPEND="sys-apps/pciutils
+ >=sys-libs/efivar-25:="
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ default
+ sed -i -e 's/-Werror //' Make.defaults || die
+}
+
+src_configure() {
+ tc-export CC
+ export EFIDIR="Gentoo"
+}
+
+src_compile() {
+ emake PKG_CONFIG="$(tc-getPKG_CONFIG)"
+}
diff --git a/sys-boot/efibootmgr/efibootmgr-17.ebuild b/sys-boot/efibootmgr/efibootmgr-17.ebuild
new file mode 100644
index 0000000000..4443462a56
--- /dev/null
+++ b/sys-boot/efibootmgr/efibootmgr-17.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="User-space application to modify the EFI boot manager"
+HOMEPAGE="https://github.com/rhinstaller/efibootmgr"
+SRC_URI="https://github.com/rhboot/efibootmgr/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ia64 ~riscv x86"
+
+RDEPEND="
+ sys-apps/pciutils
+ >=sys-libs/efivar-37:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-efivar-37-conflict.patch"
+ "${FILESDIR}/${P}-clang.patch"
+)
+
+src_prepare() {
+ default
+ sed -i 's/-Werror //' Make.defaults || die
+}
+
+src_configure() {
+ tc-export CC
+ export EFIDIR="Gentoo"
+}
+
+src_compile() {
+ emake PKG_CONFIG="$(tc-getPKG_CONFIG)"
+}
diff --git a/sys-boot/efibootmgr/files/efibootmgr-17-clang.patch b/sys-boot/efibootmgr/files/efibootmgr-17-clang.patch
new file mode 100644
index 0000000000..687b294c33
--- /dev/null
+++ b/sys-boot/efibootmgr/files/efibootmgr-17-clang.patch
@@ -0,0 +1,82 @@
+From 97668ae0bce776a36ea2001dea63d376be8274ac Mon Sep 17 00:00:00 2001
+From: Peter Jones
+Date: Wed, 6 Mar 2019 13:08:33 -0500
+Subject: [PATCH] Make sure PKGS= is propogated into the submake for "make
+ deps"
+
+When we're doing make deps with "$(CC) -MF", gcc and clang have different
+behavior, both broken in different ways, which we're hitting because of a
+missing -I argument for libefivar's includes. On clang, when a header can't
+be found, it emits a rule with the header as a prerequisite without a path,
+such as efivar.h here:
+
+efibootmgr.o: efibootmgr.c fix_coverity.h efivar.h efiboot.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/list.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efi.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/unparse_path.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efibootmgr.h \
+ error.h
+
+Then the build that utilizes that rule will fail to find the
+prerequisite and tell you something like:
+
+make[1]: *** No rule to make target 'efivar.h', needed by 'efibootmgr.o'. Stop.
+make[1]: Leaving directory '/home/pjones/devel/github.com/efibootmgr/master/src'
+
+With gcc, when a header can't be found, it emits a rule without that header
+as a prerequisite, as such (again with efivar.h):
+
+efibootmgr.o: efibootmgr.c fix_coverity.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/list.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efi.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/unparse_path.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efi.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efibootmgr.h \
+ error.h
+
+And then your build will fail if you haven't adjusted CFLAGS to tell it
+where to find the header.
+
+Both of these would be better just erroring, but at least gcc's doesn't
+insert a *wrong* dependency.
+
+This patch adds "PKGS=efivar efibootmgr popt" for all deps under src/.
+Technically that's overkill, as efibootmgr itself doesn't need popt, but it
+doesn't hurt anything to have the extra part there. The resulting
+.efibootmgr.d file has the prerequisites expressed correctly:
+
+efibootmgr.o: efibootmgr.c fix_coverity.h /usr/include/efivar/efivar.h \
+ /usr/include/efivar/efiboot.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/list.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efi.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/unparse_path.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efi.h \
+ /home/pjones/devel/github.com/efibootmgr/master/src/include/efibootmgr.h \
+ error.h
+
+This fixes the issue described in github PR #96
+
+Signed-off-by: Peter Jones
+---
+ src/Makefile | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index 258bac1..32fa188 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -31,8 +31,13 @@ efibootdump : PKGS=efivar efiboot popt
+ efibootnext : $(call objects-of,$(EFIBOOTNEXT_SOURCES))
+ efibootnext : PKGS=efivar efiboot popt
+
++deps : PKGS=efivar efiboot popt
+ deps : $(ALL_SOURCES)
+- $(MAKE) -f $(TOPDIR)/Make.deps deps SOURCES="$(ALL_SOURCES)" SUBDIR_CFLAGS="$(SUBDIR_CFLAGS)"
++ $(MAKE) -f $(TOPDIR)/Make.deps \
++ SOURCES="$(ALL_SOURCES)" \
++ SUBDIR_CFLAGS="$(SUBDIR_CFLAGS)" \
++ PKGS="$(PKGS)" \
++ deps
+
+ clean :
+ @rm -rfv *.o *.a *.so $(TARGETS)
diff --git a/sys-boot/efibootmgr/files/efibootmgr-17-fix-efivar-37-conflict.patch b/sys-boot/efibootmgr/files/efibootmgr-17-fix-efivar-37-conflict.patch
new file mode 100644
index 0000000000..614195f3c9
--- /dev/null
+++ b/sys-boot/efibootmgr/files/efibootmgr-17-fix-efivar-37-conflict.patch
@@ -0,0 +1,14 @@
+diff --git a/src/efibootmgr.c b/src/efibootmgr.c
+index de38f01..4e1a680 100644
+--- a/src/efibootmgr.c
++++ b/src/efibootmgr.c
+@@ -1536,9 +1536,6 @@ parse_opts(int argc, char **argv)
+ "invalid numeric value %s\n",
+ optarg);
+ }
+- /* XXX efivar-36 accidentally doesn't have a public
+- * header for this */
+- extern int efi_set_verbose(int verbosity, FILE *errlog);
+ efi_set_verbose(opts.verbose - 2, stderr);
+ break;
+ case 'V':
diff --git a/sys-boot/efibootmgr/metadata.xml b/sys-boot/efibootmgr/metadata.xml
index 2202a4d820..9414143fc0 100644
--- a/sys-boot/efibootmgr/metadata.xml
+++ b/sys-boot/efibootmgr/metadata.xml
@@ -1,5 +1,5 @@
-
+
floppym@gentoo.org
diff --git a/sys-fs/dosfstools/Manifest b/sys-fs/dosfstools/Manifest
index 72a32cb333..7981d0a253 100644
--- a/sys-fs/dosfstools/Manifest
+++ b/sys-fs/dosfstools/Manifest
@@ -1,8 +1 @@
-AUX dosfstools-4.0-udevlibs.patch 1132 SHA256 5b06733ca41ef9def498cb75c1636f473b2624c6f8cb9334092cbb0c933b712a SHA512 0ae6fac866f4f634ed733279859c039f789d8420401217c039c06c995cd0be1fc697b24353135ee5c7abf04e4638c810726f0a310979251dd126e70c76739928 WHIRLPOOL d6bfebe17ec7741661409fe9e25a353059792d61f1a0698d01d5382062bcf8201833b1c6f642790adea1cd83c9cce45629002a8cf53eb7ac30cf09efe02e9b1e
-DIST dosfstools-4.0.tar.xz 157564 SHA256 9037738953559d1efe04fc5408b6846216cc0138f7f9d32de80b6ec3c35e7daf SHA512 81acf54dc87e1a8b436848b0c8c596c8b9a2f334c5b3e5496547feb243b70ef320a621a9b5afaa8b054f45a5c2184fae9ae167019f2f83aba417a10954a23a58 WHIRLPOOL eb6de4523ff2fbc7161bd75e0983148faf85d700489647ad8792abd4fb41503b85b2b2b6feb684a14d37c0c04d0307a5d885f5010f8ba386037a8e9eea512f85
-DIST dosfstools-4.1.tar.xz 172936 SHA256 e6b2aca70ccc3fe3687365009dd94a2e18e82b688ed4e260e04b7412471cc173 SHA512 e7a8aab34255d15e6865a7b031971352af1255134fab83389673bcc3cbd6ba255241bd2429070aeb4b927f8d7d73ccf1aeafe94566b133e88e7586897c317b78 WHIRLPOOL 6504926aab2d38b03ac70af06d969c1e9576fa6604939e57182d5e3acc692651080e5b5f5af8b2f9a1c27392a0c26a89da7ab02ad0f530dd38399d5a6393d115
-EBUILD dosfstools-4.0-r1.ebuild 1128 SHA256 3fad55ffdea24dacbb79e4def420d2a03921bdbf67584d2c59cca6ce452a40b5 SHA512 846bed50093c29ad3f47948f3b0a6538f9e05dffccf82131af97f0c6092a05e22b3e97b20c12fcaac3ce5c8d2f3e4544a80cbd3a66ad89b00df09dece366571d WHIRLPOOL d0d667a5933ef17ede2c4846f68654bdbc4ae16691b681d6d5d6ab09af314724840a7819a7b1697ee2c9c60b6e4827b8abd1ba9a946c2968ad2ae083dacb28a5
-EBUILD dosfstools-4.1.ebuild 1012 SHA256 504c4c3f01191d6d0ac584651e4027631a352620ab4f9926afb80bfa929953a8 SHA512 dd6dfb8251c5fa3adbd7cd5febcdbd2143d41eb5b68d4c9bd6444965ac2653a1baab730e3ab9a4aeb82ea82c370ea16c4370d9d19914383277acf5a78d166ceb WHIRLPOOL 27338c32a577df0d2e5d7f7f7bb602a17b45889e8de81fb22a4de953727b732fa61c73b0e8cb9d497186f65163e6b7f74e8026dd81a61b5efd907d5df6f9e8e2
-MISC ChangeLog 6980 SHA256 14b7a237967dbfe4a3b2543a8626c69959c2c350095cd78e6ea093b9d164f258 SHA512 a554c37c1bdf9747654b52aed35bec1bcedc7a42cc05cebf212240e90627658f435c01df31ee79d7f2d4ccaba9b937df6d08d3cf448fc7e92b985f9dfc9c5449 WHIRLPOOL 154f1cf5a1d4c2629d41743d6dcebe58336c0d0ccd7de8e67b119e07f15a572f809af049753435c8484789f6401a5779adbf501205520cecf528c1f3c67b39e2
-MISC ChangeLog-2015 20367 SHA256 458f538cee8d13aef12cda3eee347fe40b24687be906909f316c7bdb29d4e61d SHA512 df112e1d37d1e43e264082109220e81acc0298b44a32ece8dd9a452a5c1100f4d81f90c740b12827260ab2853abaf8ee01a4c07d3f28a0fa345122f425eee200 WHIRLPOOL 051b08bfcc74a948c6ba6930d43afc089621c5871b086cc3b54c5c25fb67dceeb56fcade5fe4e2d34404c2f95273d22afcbd9318da4e89414c9056d54a208cd8
-MISC metadata.xml 424 SHA256 821cc5f833e124bfe1fae683127cd2276a69f49870ea3a9748227311aae6cd74 SHA512 d82795b70fc583b8154a2c3b14b6565cff36924b91fb3888cd2b6c36d8036614be6d67a0ea0fc96f2fa4bfa5516675b8aa74571e578ad8d42c06cb9f503c565d WHIRLPOOL 2555be401c8c866a5182345476c65b148f7b8c2d43c380dcbe3b003258895e82dc49741d773ee5613c0e398a91698c16780261b2839ee566a1cc02eb349053a3
+DIST dosfstools-4.2.tar.gz 320917 BLAKE2B c55c7592aa80f1fe39e838c83e147ad7141ddd0f72c9c000ba7708ecb7287c3a92b4b52f72c8d0d1171b0f9609dfb7861bbbe475c5cbd7011151c93c2b1d3d0d SHA512 3cc0808edb4432428df8a67da4bb314fd1f27adc4a05754c1a492091741a7b6875ebd9f6a509cc4c5ad85643fc40395b6e0cadee548b25cc439cc9b725980156
diff --git a/sys-fs/dosfstools/dosfstools-4.0-r1.ebuild b/sys-fs/dosfstools/dosfstools-4.0-r1.ebuild
deleted file mode 100644
index 4e41940da9..0000000000
--- a/sys-fs/dosfstools/dosfstools-4.0-r1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit autotools toolchain-funcs flag-o-matic
-
-DESCRIPTION="DOS filesystem tools - provides mkdosfs, mkfs.msdos, mkfs.vfat"
-HOMEPAGE="https://github.com/dosfstools/dosfstools"
-SRC_URI="https://github.com/dosfstools/dosfstools/releases/download/v${PV}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="compat +udev"
-
-CDEPEND="udev? ( virtual/libudev )"
-DEPEND="${CDEPEND}
- udev? ( virtual/pkgconfig )"
-RDEPEND="${CDEPEND}"
-
-RESTRICT="test" # there is no test target #239071
-
-PATCHES=(
- "${FILESDIR}/${P}-udevlibs.patch"
-)
-
-src_prepare() {
- epatch "${PATCHES[@]}"
- eautoreconf
-}
-
-src_configure() {
- econf \
- --docdir="${EPREFIX}"/usr/share/doc/${PF} \
- $(use_enable compat compat-symlinks) \
- $(use_with udev)
-}
-
-src_install() {
- default
- if ! use compat; then
- # Keep fsck -t vfat and mkfs -t vfat working, bug 584980.
- dosym fsck.fat /usr/sbin/fsck.vfat
- dosym mkfs.fat /usr/sbin/mkfs.vfat
- fi
-}
diff --git a/sys-fs/dosfstools/dosfstools-4.1.ebuild b/sys-fs/dosfstools/dosfstools-4.1.ebuild
deleted file mode 100644
index 36848b2cec..0000000000
--- a/sys-fs/dosfstools/dosfstools-4.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit toolchain-funcs flag-o-matic
-
-DESCRIPTION="DOS filesystem tools - provides mkdosfs, mkfs.msdos, mkfs.vfat"
-HOMEPAGE="https://github.com/dosfstools/dosfstools"
-SRC_URI="https://github.com/dosfstools/dosfstools/releases/download/v${PV}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-IUSE="compat test +udev"
-
-CDEPEND="udev? ( virtual/libudev )"
-DEPEND="${CDEPEND}
- test? ( app-editors/vim-core )
- udev? ( virtual/pkgconfig )"
-RDEPEND="${CDEPEND}"
-
-src_configure() {
- econf \
- --docdir="${EPREFIX}"/usr/share/doc/${PF} \
- $(use_enable compat compat-symlinks) \
- $(use_with udev)
-}
-
-src_install() {
- default
- if ! use compat; then
- # Keep fsck -t vfat and mkfs -t vfat working, bug 584980.
- dosym fsck.fat /usr/sbin/fsck.vfat
- dosym mkfs.fat /usr/sbin/mkfs.vfat
- fi
-}
diff --git a/sys-fs/dosfstools/dosfstools-4.2.ebuild b/sys-fs/dosfstools/dosfstools-4.2.ebuild
new file mode 100644
index 0000000000..b26ba281f3
--- /dev/null
+++ b/sys-fs/dosfstools/dosfstools-4.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="DOS filesystem tools - provides mkdosfs, mkfs.msdos, mkfs.vfat"
+HOMEPAGE="https://github.com/dosfstools/dosfstools"
+SRC_URI="https://github.com/dosfstools/dosfstools/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="compat +iconv test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ iconv? ( virtual/libiconv )
+ test? ( app-editors/vim-core )
+"
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable compat compat-symlinks)
+ $(use_with iconv)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ if ! use compat ; then
+ # Keep fsck -t vfat and mkfs -t vfat working
+ # bug #584980
+ dosym fsck.fat /usr/sbin/fsck.vfat
+ dosym mkfs.fat /usr/sbin/mkfs.vfat
+ fi
+}
diff --git a/sys-fs/dosfstools/files/dosfstools-4.0-udevlibs.patch b/sys-fs/dosfstools/files/dosfstools-4.0-udevlibs.patch
deleted file mode 100644
index 23204770f7..0000000000
--- a/sys-fs/dosfstools/files/dosfstools-4.0-udevlibs.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7538785afd751de509cd00740adf57fc6d730e33 Mon Sep 17 00:00:00 2001
-From: Lars Wendler
-Date: Tue, 10 May 2016 09:47:57 +0200
-Subject: [PATCH] Don't link to udev via LDFLAGS. There's LDADD for such a
- task.
-
-See also:
-https://www.gnu.org/software/automake/manual/html_node/Linking.html
-
-Signed-off-by: Lars Wendler
----
- src/Makefile.am | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 3d22ba7..a15e6e7 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -34,12 +34,12 @@ mkfs_common_sources = device_info.c device_info.h \
- mkfs_fat_SOURCES = mkfs.fat.c msdos_fs.h $(mkfs_common_sources)
- mkfs_fat_CPPFLAGS = -I$(srcdir)/blkdev
- mkfs_fat_CFLAGS = $(AM_CFLAGS) $(UDEV_CFLAGS)
--mkfs_fat_LDFLAGS = $(UDEV_LIBS)
-+mkfs_fat_LDADD = $(UDEV_LIBS)
-
- testdevinfo_SOURCES = testdevinfo.c $(mkfs_common_sources)
- testdevinfo_CPPFLAGS = -I$(srcdir)/blkdev
- testdevinfo_CFLAGS = $(AM_CFLAGS) $(UDEV_CFLAGS)
--testdevinfo_LDFLAGS = $(UDEV_LIBS)
-+testdevinfo_LDADD = $(UDEV_LIBS)
-
-
- if COMPAT_SYMLINKS
---
-2.8.2
-
diff --git a/sys-fs/dosfstools/metadata.xml b/sys-fs/dosfstools/metadata.xml
index ffedbfb729..2ec1501001 100644
--- a/sys-fs/dosfstools/metadata.xml
+++ b/sys-fs/dosfstools/metadata.xml
@@ -1,11 +1,12 @@
-
+
base-system@gentoo.org
Gentoo Base System
+ cpe:/a:dosfstools_project:dosfstools
dosfstools/dosfstools