diff --git a/acct-group/pcap/metadata.xml b/acct-group/pcap/metadata.xml new file mode 100644 index 0000000000..924d866a79 --- /dev/null +++ b/acct-group/pcap/metadata.xml @@ -0,0 +1,16 @@ + + + + + zlogene@gentoo.org + Mikle Kolyada + + + bman@gentoo.org + Aaron Bauman + + + sam@gentoo.org + Sam James + + diff --git a/acct-group/pcap/pcap-0.ebuild b/acct-group/pcap/pcap-0.ebuild new file mode 100644 index 0000000000..7c6ece3961 --- /dev/null +++ b/acct-group/pcap/pcap-0.ebuild @@ -0,0 +1,9 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit acct-group + +DESCRIPTION="Group for capturing network traffic" +ACCT_GROUP_ID=377 diff --git a/acct-user/pcap/metadata.xml b/acct-user/pcap/metadata.xml new file mode 100644 index 0000000000..924d866a79 --- /dev/null +++ b/acct-user/pcap/metadata.xml @@ -0,0 +1,16 @@ + + + + + zlogene@gentoo.org + Mikle Kolyada + + + bman@gentoo.org + Aaron Bauman + + + sam@gentoo.org + Sam James + + diff --git a/acct-user/pcap/pcap-0.ebuild b/acct-user/pcap/pcap-0.ebuild new file mode 100644 index 0000000000..781fd31919 --- /dev/null +++ b/acct-user/pcap/pcap-0.ebuild @@ -0,0 +1,12 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit acct-user + +DESCRIPTION="User for capturing network traffic" +ACCT_USER_ID=377 +ACCT_USER_GROUPS=( pcap ) + +acct-user_add_deps diff --git a/app-admin/eselect/Manifest b/app-admin/eselect/Manifest index e30198740b..c648030ffb 100644 --- a/app-admin/eselect/Manifest +++ b/app-admin/eselect/Manifest @@ -1,2 +1,2 @@ -DIST eselect-1.4.15.tar.xz 178996 BLAKE2B 4354d975c8af2e1de0f0c6efe2badc92584e947f9b73c05aac144caf8f9d74c850d366c7c225112322a504262b5f285f6e2e8d32223f1b2d4bac87db740a148c SHA512 ceb55fecc2bf70e816679af9b20653b29aa9ce24ca2d4cd0c6e02ab214689459bc2ccd5b3968ac49249b8fb6613c6055e7e76598b86c6a114a9abf847c4a2b58 -DIST eselect-1.4.16.tar.xz 178660 BLAKE2B dae97ee324cb67983c5395b5dc54c4b84d2da43f6a0c5c8ab81ff402ab211e9d1f1d3fe5c174b130ac1e11d3dd19e3812056274145415ee029e649cda880cd95 SHA512 264fb6122f5f7c9e73bb2250a94c3c0377e5263e2e5ae653ed58e08ebf6ed1b4aa165ae5c1d70b0156081c4db5672d1ec9d379782919d5b40a2f3e862378ce62 +DIST eselect-1.4.17.tar.xz 178980 BLAKE2B d905ac88bc009080912af75e64c7920d745788866fa3cb35466d68a652efbbd6984d6e1efeed76d9a344aed94705b74c85aa43e9c037d4d548d2e24afa69bd7a SHA512 35dc4c52f44c4f64db9c0dc2aec57b3055a6d36760b1bbbd094ad11b3f9e71a731444802632817b89c3b511f1dc9bb92046b59322d177e13fdc501ed767b591e +DIST eselect-1.4.20.tar.xz 180272 BLAKE2B 424653d00eda45335c3aaae50f6fbf2e89486da4529f657596516352f3b7fcb9859ceb2dc5b9762a34c44fb64e645fa27c46b86453bf50be6e8ae820664a4289 SHA512 9589ed89c4d5d31f71d535886eb50da67b84dec8a13a5df081e7569efee861dede4eaa43a0bfb9930c5b95d4f334e19245cb8820a73f7361527da262da1d1fb2 diff --git a/app-admin/eselect/eselect-1.4.16.ebuild b/app-admin/eselect/eselect-1.4.17.ebuild similarity index 80% rename from app-admin/eselect/eselect-1.4.16.ebuild rename to app-admin/eselect/eselect-1.4.17.ebuild index 777283e95f..aa18836510 100644 --- a/app-admin/eselect/eselect-1.4.16.ebuild +++ b/app-admin/eselect/eselect-1.4.17.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit bash-completion-r1 @@ -11,20 +11,18 @@ SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz" LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc emacs vim-syntax" -RDEPEND="sys-apps/sed +DEPEND="sys-apps/sed || ( sys-apps/coreutils app-misc/realpath )" -DEPEND="${RDEPEND} - doc? ( dev-python/docutils )" -RDEPEND="${RDEPEND} +RDEPEND="${DEPEND} sys-apps/file sys-libs/ncurses:0" - +BDEPEND="doc? ( dev-python/docutils )" PDEPEND="emacs? ( app-emacs/eselect-mode ) vim-syntax? ( app-vim/eselect-syntax )" diff --git a/app-admin/eselect/eselect-1.4.15.ebuild b/app-admin/eselect/eselect-1.4.20.ebuild similarity index 77% rename from app-admin/eselect/eselect-1.4.15.ebuild rename to app-admin/eselect/eselect-1.4.20.ebuild index 3d5786a4bf..68a003da8b 100644 --- a/app-admin/eselect/eselect-1.4.15.ebuild +++ b/app-admin/eselect/eselect-1.4.20.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit bash-completion-r1 @@ -9,22 +9,20 @@ DESCRIPTION="Gentoo's multi-purpose configuration and management tool" HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Eselect" SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz" -LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-3.0 )" +LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc emacs vim-syntax" -RDEPEND="sys-apps/sed +DEPEND="sys-apps/sed || ( sys-apps/coreutils app-misc/realpath )" -DEPEND="${RDEPEND} - doc? ( dev-python/docutils )" -RDEPEND="${RDEPEND} +RDEPEND="${DEPEND} sys-apps/file sys-libs/ncurses:0" - +BDEPEND="doc? ( dev-python/docutils )" PDEPEND="emacs? ( app-emacs/eselect-mode ) vim-syntax? ( app-vim/eselect-syntax )" diff --git a/app-admin/eselect/eselect-9999.ebuild b/app-admin/eselect/eselect-9999.ebuild index 6710d08068..5922f93c46 100644 --- a/app-admin/eselect/eselect-9999.ebuild +++ b/app-admin/eselect/eselect-9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/eselect.git" @@ -10,21 +10,19 @@ inherit autotools git-r3 bash-completion-r1 DESCRIPTION="Gentoo's multi-purpose configuration and management tool" HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Eselect" -LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-3.0 )" +LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )" SLOT="0" IUSE="doc emacs vim-syntax" -RDEPEND="sys-apps/sed +DEPEND="sys-apps/sed || ( sys-apps/coreutils app-misc/realpath )" -DEPEND="${RDEPEND} - doc? ( dev-python/docutils )" -RDEPEND="${RDEPEND} +RDEPEND="${DEPEND} sys-apps/file sys-libs/ncurses:0" - +BDEPEND="doc? ( dev-python/docutils )" PDEPEND="emacs? ( app-emacs/eselect-mode ) vim-syntax? ( app-vim/eselect-syntax )" diff --git a/app-admin/eselect/metadata.xml b/app-admin/eselect/metadata.xml index 1935b3149b..7ee8a2c806 100644 --- a/app-admin/eselect/metadata.xml +++ b/app-admin/eselect/metadata.xml @@ -1,5 +1,5 @@ - + eselect@gentoo.org diff --git a/app-arch/unzip/Manifest b/app-arch/unzip/Manifest index dce593202f..8f65ff09a2 100644 --- a/app-arch/unzip/Manifest +++ b/app-arch/unzip/Manifest @@ -1,2 +1,2 @@ DIST unzip60.tar.gz 1376845 BLAKE2B 5016d300b4452018a391f4ebc03c6960c068df400a0407c0c60bd7bb5ec5012031f916d8b204a6149ba291c2c35beba40d9b43c76fc093026e79471329ab0e47 SHA512 0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d -DIST unzip_6.0-25.debian.tar.xz 23096 BLAKE2B 09cd89165c0354431fa0eb946bb8f8355fa09ef81cd3e3ea03e53ca7f465b323364204ffe11d8e58eeb5b46e40be598d4f709b621d163bfde09070b6847db2a6 SHA512 13c16db420fa4a34be3090a9acdd79b01320da40ac5aa89a9dfca03e64b914b28eb72aff3882d02a8197457bcb8eeb9473c998cf6920e511883c9289a949fb21 +DIST unzip_6.0-26.debian.tar.xz 23708 BLAKE2B 7655396df2f8c4443bbd37a2fab590f1e66b3b8531871a6d95f281ac702e64a0e602f2412a58ff2addf4ce9cae8d146af650a18b02919d120c9db6c49df480b5 SHA512 9a56e400ad0984f87c7ee0548429349be549e35a3cae4c9acb88a8fb97a1d1fbd116cfa3292622ad8b2c67ffe79ae268861ddec1269993ba98f1a6a411b7611f diff --git a/app-arch/unzip/metadata.xml b/app-arch/unzip/metadata.xml index ed43f8ee64..80e20aa4d0 100644 --- a/app-arch/unzip/metadata.xml +++ b/app-arch/unzip/metadata.xml @@ -1,5 +1,5 @@ - + base-system@gentoo.org @@ -10,6 +10,7 @@ cpe:/a:info-zip:unzip + madler/unzip infozip diff --git a/app-arch/unzip/unzip-6.0_p25-r1.ebuild b/app-arch/unzip/unzip-6.0_p26.ebuild similarity index 85% rename from app-arch/unzip/unzip-6.0_p25-r1.ebuild rename to app-arch/unzip/unzip-6.0_p26.ebuild index 6b5a505d3d..b28a3acf9f 100644 --- a/app-arch/unzip/unzip-6.0_p25-r1.ebuild +++ b/app-arch/unzip/unzip-6.0_p26.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit toolchain-funcs flag-o-matic +inherit flag-o-matic multilib toolchain-funcs MY_PV="${PV//.}" MY_PV="${MY_PV%_p*}" @@ -16,7 +16,7 @@ SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz LICENSE="Info-ZIP" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="bzip2 natspec unicode" DEPEND="bzip2? ( app-arch/bzip2 ) @@ -64,7 +64,8 @@ src_configure() { i?86*-dragonfly*) TARGET="freebsd" ;; # mislabelled bsd with x86 asm *bsd* | *dragonfly*) TARGET="bsd" ;; *-darwin*) TARGET="macosx" ;; - *-cygwin*) TARGET="cygwin" ;; + *-solaris*) TARGET="generic" ;; + *-cygwin*) TARGET="generic" ;; *) die "Unknown target; please update the ebuild to handle ${CHOST} " ;; esac @@ -75,7 +76,7 @@ src_configure() { } src_compile() { - ASFLAGS="${ASFLAGS} $(get_abi_var CFLAGS)" \ + ASFLAGS="${ASFLAGS} $(get_abi_CFLAGS)" \ emake -f unix/Makefile ${TARGET} } diff --git a/app-crypt/libmd/Manifest b/app-crypt/libmd/Manifest new file mode 100644 index 0000000000..d757164e6e --- /dev/null +++ b/app-crypt/libmd/Manifest @@ -0,0 +1 @@ +DIST libmd-1.0.4.tar.xz 264472 BLAKE2B ddc2da74635f5cc009c66a58ae82b83e6e0930e18af8a6b0ecec7cbf378246707b493a99fb97d3491d0d626a0d5ef068baea6a3ba2ec311c5a1516ba5b4e2fd5 SHA512 731553ecc5e0e1eb228cced8fccd531fe31fb5c7627ca30013d287e1aeb8222959cf7498fbb7414bbabb967b25d4e8b0edd54fc47f6ccf55fc91087db0725ce3 diff --git a/app-crypt/libmd/libmd-1.0.4.ebuild b/app-crypt/libmd/libmd-1.0.4.ebuild new file mode 100644 index 0000000000..ec9a537d5a --- /dev/null +++ b/app-crypt/libmd/libmd-1.0.4.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal + +DESCRIPTION="Message Digest functions from BSD systems" +HOMEPAGE="https://www.hadrons.org/software/libmd/" +SRC_URI="https://archive.hadrons.org/software/libmd/${P}.tar.xz" + +LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" + +multilib_src_configure() { + ECONF_SOURCE="${S}" econf +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/app-crypt/libmd/libmd-9999.ebuild b/app-crypt/libmd/libmd-9999.ebuild new file mode 100644 index 0000000000..b28c93edaf --- /dev/null +++ b/app-crypt/libmd/libmd-9999.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools multilib-minimal git-r3 + +DESCRIPTION="Message Digest functions from BSD systems" +HOMEPAGE="https://www.hadrons.org/software/libmd/" +EGIT_REPO_URI="https://git.hadrons.org/git/libmd.git" + +LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )" +SLOT="0" + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + ECONF_SOURCE="${S}" econf +} + +multilib_src_install() { + default + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/app-crypt/libmd/metadata.xml b/app-crypt/libmd/metadata.xml new file mode 100644 index 0000000000..85e4ed814f --- /dev/null +++ b/app-crypt/libmd/metadata.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/changelog/updates/2022-03-31-update-pkgs-2020.md b/changelog/updates/2022-03-31-update-pkgs-2020.md new file mode 100644 index 0000000000..9af363115b --- /dev/null +++ b/changelog/updates/2022-03-31-update-pkgs-2020.md @@ -0,0 +1,17 @@ +- elfutils ([0.186](https://sourceware.org/git/?p=elfutils.git;a=blob;f=NEWS;h=490932ae4ef9b5a3af01d2c8c616f14d57586046;hb=983e86fd89e8bf02f2d27ba5dce5bf078af4ceda)) +- jansson ([2.14](https://github.com/akheron/jansson/blob/v2.14/CHANGES)) +- pcre2 ([10.39](https://github.com/PhilipHazel/pcre2/blob/pcre2-10.39/NEWS)) +- libnetfilter_queue ([1.0.5](https://git.netfilter.org/libnetfilter_queue/log/?h=libnetfilter_queue-1.0.5)) +- conntrack-tools ([1.4.6](https://lists.netfilter.org/pipermail/netfilter-announce/2020/000240.html)) +- e2fsprogs ([1.46.4](http://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.46.4)) +- libbsd ([0.11.3](https://gitlab.freedesktop.org/libbsd/libbsd/-/commits/0.11.3/)) +- tcpdump ([4.99.1](https://git.tcpdump.org/tcpdump/blob/5f552b5e6e9fe05f7ad9681d51d0303233daba6a:/CHANGES)) +- open-isns ([0.101](https://github.com/open-iscsi/open-isns/blob/v0.101/ChangeLog)) +- nghttp2 ([1.45.1](https://github.com/nghttp2/nghttp2/releases/tag/v1.45.1)) +- multipath-tools ([0.8.7](https://github.com/opensvc/multipath-tools/commits/0.8.7)) +- bind-tools ([9.16.27](https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_16_27/CHANGES)) +- oniguruma ([6.9.7.1](https://github.com/kkos/oniguruma/releases/tag/v6.9.7.1)) +- unzip ([6.0_p26](https://metadata.ftp-master.debian.org/changelogs//main/u/unzip/unzip_6.0-26_changelog)) +- libpcap ([1.10.1](https://git.tcpdump.org/libpcap/blob/c7642e2cc0c5bd65754685b160d25dc23c76c6bd:/CHANGES)) +- libtasn1 ([4.17.0](https://gitlab.com/gnutls/libtasn1/-/blob/v4.17.0/NEWS)) +- liburing ([2.1](https://github.com/axboe/liburing/commits/liburing-2.1)) diff --git a/dev-lang/tcl/Manifest b/dev-lang/tcl/Manifest index f713242667..166a301b92 100644 --- a/dev-lang/tcl/Manifest +++ b/dev-lang/tcl/Manifest @@ -1,3 +1,2 @@ -DIST tcl-core8.6.8-src.tar.gz 5887483 BLAKE2B 2b8428652e451b817fe63a811f910001929cdcbc8a8361cdf4f7df8e13cbf9b18c94a91c22c0f09cc46dc0174a66c44774b485539a8f24c14faee6658547b6b8 SHA512 36e6079b582c205e8c89435b361ef96550541357f473aea2ca4e6f01bd84e50ebd1474a75a1ae90640b9a5b392fb01ddfa71f0fa28e409b3569d88c32b4ddb69 -DIST tcl-core8.6.9-src.tar.gz 5932010 BLAKE2B ddc0cff12aeeebbf8d1c799db9e154a9ecbe2a2e2afce97c6f15c408301b7a40119bd1c861aa724c178bd9abfe0616c7bcafd9cf6714ed49cf882c9085222cf3 SHA512 306a38a27729b764bae2eae6c4cdd8cd6aee5de6bd924d6a487c8691ee874e4459abc1fa785183c2f6ff4d2d57be98093dd7460c5a668cf994e8f1c31516ae67 -DIST tcl8.5.17-src.tar.gz 4546317 BLAKE2B 27031dd3bd5790d03692e77edf91eb7fae8a40d8d193d8c8ce4e79b21f90e683bfc9d5b71764760223987fb163be844e6096d0aea1058b8ce255731d97e2a0ea SHA512 ad5ddb4cd6378fd6bbea8cd85ceb1cf90392b2e8c49fbfb3e4b35c81d3ae3e3f087697c41fcba8c8e06de1d9e7539397e26d58b864dc01ba65abe4ba4efa9568 +DIST tcl-core8.6.11-src.tar.gz 6041050 BLAKE2B 9c41d5ae5d22627b903d18c5ca607d4a2647d7af65d3029a463cf571d3fbe0bd48e15fef643e81de94296777985a36530a83718d4eb7befca4bc107ab860cc0d SHA512 fe3556c37305e3856743e9a202a320d44b1b3cbc926a1b7a4449ae5baf2f8df92214a9aa06f0a87645d032857fb71458fc864ff007fd73da60463ae5001f2d3f +DIST tcl-core8.6.12-src.tar.gz 6064625 BLAKE2B 30dc780562aa6955e2c417798cc96fabd23e947cee81146dc192156598e3c43f588864aab4392d62901b8964cf59bedb6cad1f064e32b03dd9733b3a0a7b5c8a SHA512 7144a50d19d3855edbda14b538cc94fe26c0dd357b979676c3fe02d599dab61ba777bf14f6aaebb63e238aeff1d0bad25ea7b0ff31b2398468f67fc0a305b9f3 diff --git a/dev-lang/tcl/files/tcl-8.5.13-multilib.patch b/dev-lang/tcl/files/tcl-8.5.13-multilib.patch deleted file mode 100644 index 8c4bc74821..0000000000 --- a/dev-lang/tcl/files/tcl-8.5.13-multilib.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/unix/configure.in -+++ b/unix/configure.in -@@ -645,7 +645,7 @@ - - eval "TCL_LIB_FILE=${TCL_LIB_FILE}" - --TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)' -+TCL_LIBRARY='$(libdir)/tcl$(VERSION)' - PRIVATE_INCLUDE_DIR='$(includedir)' - HTML_DIR='$(DISTDIR)/html' - diff --git a/dev-lang/tcl/files/tcl-8.5.14-conf.patch b/dev-lang/tcl/files/tcl-8.5.14-conf.patch deleted file mode 100644 index a8b3aa0210..0000000000 --- a/dev-lang/tcl/files/tcl-8.5.14-conf.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/unix/tcl.m4 -+++ b/unix/tcl.m4 -@@ -1427,7 +1427,7 @@ dnl AC_CHECK_TOOL(AR, ar) - # get rid of the warnings. - #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES" - -- SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' -+ SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS} -fPIC -Wl,-soname,${@}' - DL_OBJS="tclLoadDl.o" - DL_LIBS="-ldl" - LDFLAGS="$LDFLAGS -Wl,--export-dynamic" diff --git a/dev-lang/tcl/files/tcl-8.6.10-multilib.patch b/dev-lang/tcl/files/tcl-8.6.10-multilib.patch new file mode 100644 index 0000000000..329d5614e7 --- /dev/null +++ b/dev-lang/tcl/files/tcl-8.6.10-multilib.patch @@ -0,0 +1,11 @@ +--- a/unix/configure.in 2020-12-26 10:39:12.107965844 +0100 ++++ b/unix/configure.in 2020-12-26 10:39:44.821378776 +0100 +@@ -773,7 +773,7 @@ + + eval "TCL_LIB_FILE=${TCL_LIB_FILE}" + +-test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)' ++test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(libdir)/tcl$(VERSION)' + PRIVATE_INCLUDE_DIR='$(includedir)' + HTML_DIR='$(DISTDIR)/html' + diff --git a/dev-lang/tcl/files/tcl-8.6.8-libieee.patch b/dev-lang/tcl/files/tcl-8.6.8-libieee.patch deleted file mode 100644 index 942144e68c..0000000000 --- a/dev-lang/tcl/files/tcl-8.6.8-libieee.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/unix/tcl.m4 -+++ b/unix/tcl.m4 -@@ -2470,12 +2470,9 @@ - #-------------------------------------------------------------------- - # On a few very rare systems, all of the libm.a stuff is - # already in libc.a. Set compiler flags accordingly. -- # Also, Linux requires the "ieee" library for math to work -- # right (and it must appear before "-lm"). - #-------------------------------------------------------------------- - - AC_CHECK_FUNC(sin, MATH_LIBS="", MATH_LIBS="-lm") -- AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"]) - - #-------------------------------------------------------------------- - # Interactive UNIX requires -linet instead of -lsocket, plus it diff --git a/dev-lang/tcl/metadata.xml b/dev-lang/tcl/metadata.xml index cd751414a9..04255bbc4e 100644 --- a/dev-lang/tcl/metadata.xml +++ b/dev-lang/tcl/metadata.xml @@ -1,5 +1,5 @@ - + tcltk@gentoo.org diff --git a/dev-lang/tcl/tcl-8.5.17-r1.ebuild b/dev-lang/tcl/tcl-8.5.17-r1.ebuild deleted file mode 100644 index c1959907d8..0000000000 --- a/dev-lang/tcl/tcl-8.5.17-r1.ebuild +++ /dev/null @@ -1,117 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit autotools eutils flag-o-matic multilib toolchain-funcs versionator multilib-minimal - -MY_P="${PN}${PV/_beta/b}" - -DESCRIPTION="Tool Command Language" -HOMEPAGE="http://www.tcl.tk/" -SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz" - -LICENSE="tcltk" -SLOT="0/8.5" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x86-solaris" -IUSE="debug threads" - -RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -SPARENT="${WORKDIR}/${MY_P}" -S="${SPARENT}"/unix - -src_prepare() { - epatch "${FILESDIR}"/${PN}-8.5.13-multilib.patch - - # Bug 125971 - epatch "${FILESDIR}"/${PN}-8.5.14-conf.patch - - # Bug 648570 - epatch "${FILESDIR}"/${PN}-8.6.8-libieee.patch - - # workaround stack check issues, bug #280934 - use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1" - - tc-export CC - - sed \ - -e '/chmod/s:555:755:g' \ - -i Makefile.in || die - - eautoconf - multilib_copy_sources -} - -multilib_src_configure() { - # We went ahead and deleted the whole compat/ subdir which means - # the configure tests to detect broken versions need to pass (else - # we'll fail to build). This comes up when cross-compiling, but - # might as well get a minor configure speed up normally. - export ac_cv_func_memcmp_working="yes" - export tcl_cv_str{str,toul,tod}_unbroken="ok" - export tcl_cv_strtod_buggy="no" - - econf \ - $(use_enable threads) \ - $(use_enable debug symbols) -} - -multilib_src_install() { - #short version number - local v1=$(get_version_component_range 1-2) - local mylibdir=$(get_libdir) - - S= default - - # fix the tclConfig.sh to eliminate refs to the build directory - # and drop unnecessary -L inclusion to default system libdir - - sed \ - -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \ - -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \ - -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ - -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \ - -e "/^TCL_LIB_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then - sed \ - -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \ - -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \ - -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - fi - - # install private headers - insinto /usr/${mylibdir}/tcl${v1}/include/unix - doins *.h - insinto /usr/${mylibdir}/tcl${v1}/include/generic - doins "${SPARENT}"/generic/*.h - rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die - - # install symlink for libraries - dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname) - dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a - - if multilib_is_native_abi; then - dosym tclsh${v1} /usr/bin/tclsh - dodoc "${SPARENT}"/{ChangeLog*,README,changes} - fi -} - -pkg_postinst() { - for version in ${REPLACING_VERSIONS}; do - if ! version_is_at_least 8.5 ${version}; then - echo - ewarn "You're upgrading from <${P}, you must recompile the other" - ewarn "packages on your system that link with tcl after the upgrade" - ewarn "completes. To perform this action, please run revdep-rebuild" - ewarn "in package app-portage/gentoolkit." - ewarn "If you have dev-lang/tk and dev-tcltk/tclx installed you should" - ewarn "upgrade them before this recompilation, too," - echo - fi - done -} diff --git a/dev-lang/tcl/tcl-8.6.9-r1.ebuild b/dev-lang/tcl/tcl-8.6.11.ebuild similarity index 85% rename from dev-lang/tcl/tcl-8.6.9-r1.ebuild rename to dev-lang/tcl/tcl-8.6.11.ebuild index 824abc3e73..371bc4bb27 100644 --- a/dev-lang/tcl/tcl-8.6.9-r1.ebuild +++ b/dev-lang/tcl/tcl-8.6.11.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools flag-o-matic multilib-minimal toolchain-funcs +inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs MY_P="${PN}${PV}" @@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/tcl/${PN}-core${PV}-src.tar.gz" LICENSE="tcltk" SLOT="0/8.6" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="debug +threads" RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]" @@ -23,7 +23,7 @@ SPARENT="${WORKDIR}/${MY_P}" S="${SPARENT}"/unix PATCHES=( - "${FILESDIR}"/${PN}-8.5.13-multilib.patch + "${FILESDIR}"/${PN}-8.6.10-multilib.patch "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971 "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120 ) @@ -38,6 +38,12 @@ src_prepare() { default popd &>/dev/null || die + # httpold tests require netowk + rm ../tests/httpold.test \ + ../tests/env.test \ + ../tests/http.test \ + || die + # workaround stack check issues, bug #280934 use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1" @@ -90,7 +96,7 @@ multilib_src_install() { -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \ -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then + if use prefix && [[ ${CHOST} != *-darwin* ]] ; then sed \ -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \ -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \ @@ -110,7 +116,7 @@ multilib_src_install() { if multilib_is_native_abi; then dosym tclsh${v1} /usr/bin/tclsh - dodoc "${SPARENT}"/{ChangeLog*,README,changes} + dodoc "${SPARENT}"/{ChangeLog*,README.md,changes} fi } diff --git a/dev-lang/tcl/tcl-8.6.8.ebuild b/dev-lang/tcl/tcl-8.6.12.ebuild similarity index 69% rename from dev-lang/tcl/tcl-8.6.8.ebuild rename to dev-lang/tcl/tcl-8.6.12.ebuild index 6cf0541e41..25b370012e 100644 --- a/dev-lang/tcl/tcl-8.6.8.ebuild +++ b/dev-lang/tcl/tcl-8.6.12.ebuild @@ -1,9 +1,11 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -inherit autotools eutils flag-o-matic multilib multilib-minimal toolchain-funcs versionator +# Please bump with dev-lang/tk! + +inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs MY_P="${PN}${PV}" @@ -13,7 +15,7 @@ SRC_URI="mirror://sourceforge/tcl/${PN}-core${PV}-src.tar.gz" LICENSE="tcltk" SLOT="0/8.6" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="debug +threads" RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]" @@ -23,9 +25,9 @@ SPARENT="${WORKDIR}/${MY_P}" S="${SPARENT}"/unix PATCHES=( - "${FILESDIR}"/${PN}-8.5.13-multilib.patch + "${FILESDIR}"/${PN}-8.6.10-multilib.patch "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971 - "${FILESDIR}"/${PN}-8.6.8-libieee.patch + "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120 ) src_prepare() { @@ -38,6 +40,12 @@ src_prepare() { default popd &>/dev/null || die + # httpold tests require netowk + rm ../tests/httpold.test \ + ../tests/env.test \ + ../tests/http.test \ + || die + # workaround stack check issues, bug #280934 use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1" @@ -74,7 +82,7 @@ multilib_src_configure() { multilib_src_install() { #short version number - local v1=$(get_version_component_range 1-2) + local v1=$(ver_cut 1-2) local mylibdir=$(get_libdir) S= default @@ -88,9 +96,9 @@ multilib_src_install() { -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \ -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \ -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \ - -e "/^TCL_LIB_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ + -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \ -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die - if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then + if use prefix && [[ ${CHOST} != *-darwin* ]] ; then sed \ -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \ -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \ @@ -110,21 +118,6 @@ multilib_src_install() { if multilib_is_native_abi; then dosym tclsh${v1} /usr/bin/tclsh - dodoc "${SPARENT}"/{ChangeLog*,README,changes} + dodoc "${SPARENT}"/{ChangeLog*,README.md,changes} fi } - -pkg_postinst() { - for version in ${REPLACING_VERSIONS}; do - if ! version_is_at_least 8.6 ${version}; then - echo - ewarn "You're upgrading from <${P}, you must recompile the other" - ewarn "packages on your system that link with tcl after the upgrade" - ewarn "completes. To perform this action, please run revdep-rebuild" - ewarn "in package app-portage/gentoolkit." - ewarn "If you have dev-lang/tk and dev-tcltk/tclx installed you should" - ewarn "upgrade them before this recompilation, too," - echo - fi - done -} diff --git a/dev-libs/elfutils/Manifest b/dev-libs/elfutils/Manifest index d86f09cabc..6af4e92e7b 100644 --- a/dev-libs/elfutils/Manifest +++ b/dev-libs/elfutils/Manifest @@ -1,2 +1,4 @@ -DIST elfutils-0.177.tar.bz2 8852413 BLAKE2B 03f432342651f7646d73b7847325bd14b722ce34d85df01b1ad072b916af9b9da2d0d119cd24e952073bd584ec76b027ba9b6c7d45fb057372b3e700b1f5741a SHA512 2779987463a22ed220759e25a09c9a1eb84c0f36db37675136e59aa55c7f8f90b7a7d34ffc4e6a4291d7fa73692a1bd1a303a74270b11d1623b4f9868d19498f -DIST elfutils-0.178.tar.bz2 9007557 BLAKE2B 241b611dbfac37f35a670fbe80096c21b870e4b26fcddc8af26fba0373c9cd72eae42aabae2803b7b16c3bf649aeda036b1ea1b40952b43c4021ed23fcb51e80 SHA512 356656ad0db8f6877b461de1a11280de16a9cc5d8dde4381a938a212e828e32755135e5e3171d311c4c9297b728fbd98123048e2e8fbf7fe7de68976a2daabe5 +DIST elfutils-0.185-patches.tar.gz 7625 BLAKE2B 92aff147aa7e45976863e8129e25ecad74ad9bca231c9223897094c5933c3b350eb525a203b492d80c1eabee3b3808b43e30bdb879d7173eac968afa2005e97c SHA512 3f253c4de97190731ac157044572912b76df80f9473f3df335f0383dad6409f987593a749c5284672cf1b20241ac3ed9d77b126f730aaf594725703b6a426906 +DIST elfutils-0.185.tar.bz2 9187627 BLAKE2B 57cfa7e4060975c4bf6170dbd354687a19a92f7069c060db1ac2fa4da5a9d34e8bddd07c7ce376b5c28b5670ad5b8c1df795164cbcfb600a44cf1db60c20c4af SHA512 34de0de1355b11740e036e0fc64f2fc063587c8eb121b19216ee5548d3f0f268d8fc3995176c47190466b9d881007cfa11a9d01e9a50e38af6119492bf8bb47f +DIST elfutils-0.186-patches.tar.gz 3323 BLAKE2B 360365597d3a08d6f4fe843d04bcddd07a44ca93dae2034615abc450517e1be21c81a55aa379c409902e134ae795b38bb7461c65cdba3934ac7ef1e4e0e53091 SHA512 e2d427be505fdc416751a1fbc3bb4f39577859d94ce43990faa83c135fe36be2ddb3a2ef0f1020cfa37060e6d43dc7b8cf3db0d07d62b31bf29cb9a4a5945ce1 +DIST elfutils-0.186.tar.bz2 9230491 BLAKE2B 49573d0a1f3519eab81d1ba3e94354cbc0935a36a94a3fdb22fe223a47b78cca8fd6e322870b0e335a809529fa6f54180b13c67936dec0242123c54ba20c9fc9 SHA512 c9180b27ec62935f18b9431268d176f6023d1bb938731d2af6e7626ae460af6608a70ba68483aa1ec7e6cb0fa0528b661ca8b68bc4f58ea8e18af527c5950c78 diff --git a/dev-libs/elfutils/elfutils-0.178.ebuild b/dev-libs/elfutils/elfutils-0.185.ebuild similarity index 58% rename from dev-libs/elfutils/elfutils-0.178.ebuild rename to dev-libs/elfutils/elfutils-0.185.ebuild index 78a7c8af0d..26aeca00e2 100644 --- a/dev-libs/elfutils/elfutils-0.178.ebuild +++ b/dev-libs/elfutils/elfutils-0.185.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 2003-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -8,34 +8,45 @@ inherit flag-o-matic multilib-minimal DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)" HOMEPAGE="http://elfutils.org/" SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2" +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.185-patches.tar.gz" LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind zstd" -RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] - bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] ) - !dev-libs/libelf" +RDEPEND=">=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}] + bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] ) + elibc_musl? ( + dev-libs/libbsd + sys-libs/argp-standalone + sys-libs/fts-standalone + sys-libs/obstack-standalone + ) + !dev-libs/libelf +" DEPEND="${RDEPEND} valgrind? ( dev-util/valgrind ) " BDEPEND="nls? ( sys-devel/gettext ) >=sys-devel/flex-2.5.4a - sys-devel/m4" - + sys-devel/m4 +" RESTRICT="!test? ( test )" PATCHES=( - "${FILESDIR}"/${PN}-0.118-PaX-support.patch - "${FILESDIR}"/${PN}-0.175-disable-biarch-test-PR24158.patch - "${FILESDIR}"/${PN}-0.177-disable-large.patch + "${WORKDIR}"/${PN}-0.185-patches/ ) src_prepare() { default + if use elibc_musl; then + eapply "${WORKDIR}"/${PN}-0.185-patches/musl/ + fi + if ! use static-libs; then sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die fi @@ -45,6 +56,11 @@ src_prepare() { src_configure() { use test && append-flags -g #407135 + + # Symbol aliases are implemented as asm statements. + # Will require porting: https://gcc.gnu.org/PR48200 + filter-flags '-flto*' + multilib-minimal_src_configure } @@ -54,10 +70,12 @@ multilib_src_configure() { $(use_enable threads thread-safety) \ $(use_enable valgrind) \ --disable-debuginfod \ + --disable-libdebuginfod \ --program-prefix="eu-" \ --with-zlib \ $(use_with bzip2 bzlib) \ - $(use_with lzma) + $(use_with lzma) \ + $(use_with zstd) } multilib_src_test() { diff --git a/dev-libs/elfutils/elfutils-0.177.ebuild b/dev-libs/elfutils/elfutils-0.186.ebuild similarity index 53% rename from dev-libs/elfutils/elfutils-0.177.ebuild rename to dev-libs/elfutils/elfutils-0.186.ebuild index 16919d7eb3..1cb0347622 100644 --- a/dev-libs/elfutils/elfutils-0.177.ebuild +++ b/dev-libs/elfutils/elfutils-0.186.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 2003-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -6,43 +6,62 @@ EAPI=7 inherit flag-o-matic multilib-minimal DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)" -HOMEPAGE="http://elfutils.org/" +HOMEPAGE="https://elfutils.org/" SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2" +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.186-patches.tar.gz" LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 lzma nls static-libs test +threads +utils" - -RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] - bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] ) - !dev-libs/libelf" -DEPEND="${RDEPEND}" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind zstd" + +RDEPEND=">=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}] + bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] ) + elibc_musl? ( + dev-libs/libbsd + sys-libs/argp-standalone + sys-libs/fts-standalone + sys-libs/obstack-standalone + ) + !dev-libs/libelf +" +DEPEND="${RDEPEND} + valgrind? ( dev-util/valgrind ) +" BDEPEND="nls? ( sys-devel/gettext ) >=sys-devel/flex-2.5.4a - sys-devel/m4" - + sys-devel/m4 +" RESTRICT="!test? ( test )" PATCHES=( - "${FILESDIR}"/${PN}-0.118-PaX-support.patch - "${FILESDIR}"/${PN}-0.175-disable-biarch-test-PR24158.patch - "${FILESDIR}"/${PN}-0.177-disable-large.patch + "${WORKDIR}"/${PN}-0.186-patches/ ) src_prepare() { default + if use elibc_musl; then + eapply "${WORKDIR}"/${PN}-0.186-patches/musl/ + fi + if ! use static-libs; then sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die fi + # https://sourceware.org/PR23914 sed -i 's:-Werror::' */Makefile.in || die } src_configure() { use test && append-flags -g #407135 + + # Symbol aliases are implemented as asm statements. + # Will require porting: https://gcc.gnu.org/PR48200 + filter-flags '-flto*' + multilib-minimal_src_configure } @@ -50,10 +69,14 @@ multilib_src_configure() { ECONF_SOURCE="${S}" econf \ $(use_enable nls) \ $(use_enable threads thread-safety) \ + $(use_enable valgrind) \ + --disable-debuginfod \ + --disable-libdebuginfod \ --program-prefix="eu-" \ --with-zlib \ $(use_with bzip2 bzlib) \ - $(use_with lzma) + $(use_with lzma) \ + $(use_with zstd) } multilib_src_test() { diff --git a/dev-libs/elfutils/files/elfutils-0.118-PaX-support.patch b/dev-libs/elfutils/files/elfutils-0.118-PaX-support.patch deleted file mode 100644 index 0ae359fe7d..0000000000 --- a/dev-libs/elfutils/files/elfutils-0.118-PaX-support.patch +++ /dev/null @@ -1,26 +0,0 @@ -Add support for PaX ELF markings - -Patch by Kevin F. Quinn - -http://bugs.gentoo.org/115100 - ---- a/libelf/elf.h -+++ b/libelf/elf.h -@@ -568,6 +568,7 @@ - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ - #define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */ -+#define PT_PAX_FLAGS 0x65041580 /* Indicates PaX flag markings */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ ---- a/src/elflint.c -+++ b/src/elflint.c -@@ -3187,6 +3187,7 @@ - - if (phdr->p_type >= PT_NUM && phdr->p_type != PT_GNU_EH_FRAME - && phdr->p_type != PT_GNU_STACK && phdr->p_type != PT_GNU_RELRO -+ && phdr->p_type != PT_PAX_FLAGS - /* Check for a known machine-specific type. */ - && ebl_segment_type_name (ebl, phdr->p_type, NULL, 0) == NULL) - ERROR (gettext ("\ diff --git a/dev-libs/elfutils/files/elfutils-0.173-reorder.patch b/dev-libs/elfutils/files/elfutils-0.173-reorder.patch deleted file mode 100644 index fd3dede7c2..0000000000 --- a/dev-libs/elfutils/files/elfutils-0.173-reorder.patch +++ /dev/null @@ -1,37 +0,0 @@ -https://bugs.gentoo.org/666954 -https://github.com/rpm-software-management/rpm/issues/423 -https://sourceware.org/ml/elfutils-devel/2019-q2/msg00077.html - -From: Mark Wielaard -Subject: [PATCH] libelf: Mark shdr_flags dirty if offset or size changes during update. -Date: Mon, 13 May 2019 00:13:42 +0200 -Message-Id: <20190512221342.23383-1-mark@klomp.org> - -We forgot to mark the shdr_flags dirty when only the sh_size or -sh_offset changed during elf_update (). This meant that if there were -no other shdr changes we only wrote out the section data, but didn't -write out the shdr table to the file. - -Signed-off-by: Mark Wielaard ---- - libelf/elf32_updatenull.c | 5 +- - ---- a/libelf/elf32_updatenull.c -+++ b/libelf/elf32_updatenull.c -@@ -366,12 +366,15 @@ __elfw2(LIBELFBITS,updatenull_wrlock) (Elf *elf, int *change_bop, size_t shnum) - } - - /* See whether the section size is correct. */ -+ int size_changed = 0; - update_if_changed (shdr->sh_size, (GElf_Word) offset, -- changed); -+ size_changed); -+ changed |= size_changed; - - if (shdr->sh_type != SHT_NOBITS) - size += offset; - -+ scn->shdr_flags |= (offset_changed | size_changed); - scn->flags |= changed; - } - diff --git a/dev-libs/elfutils/files/elfutils-0.175-disable-biarch-test-PR24158.patch b/dev-libs/elfutils/files/elfutils-0.175-disable-biarch-test-PR24158.patch deleted file mode 100644 index 809c3df1ef..0000000000 --- a/dev-libs/elfutils/files/elfutils-0.175-disable-biarch-test-PR24158.patch +++ /dev/null @@ -1,9 +0,0 @@ -https://sourceware.org/PR24158 - -Tets fails when 32-bit elfutils tries to dump 64-bit process. ---- a/tests/run-backtrace-native-biarch.sh -+++ b/tests/run-backtrace-native-biarch.sh -@@ -17,2 +17,3 @@ - -+ELFUTILS_DISABLE_BIARCH=yes # https://sourceware.org/PR24158 - if test -n "$ELFUTILS_DISABLE_BIARCH"; then diff --git a/dev-libs/elfutils/files/elfutils-0.177-disable-large.patch b/dev-libs/elfutils/files/elfutils-0.177-disable-large.patch deleted file mode 100644 index 7829585176..0000000000 --- a/dev-libs/elfutils/files/elfutils-0.177-disable-large.patch +++ /dev/null @@ -1,14 +0,0 @@ -getconf does not disable test on 64-kernel with CFLAGS=-m32 ---- a/tests/run-large-elf-file.sh -+++ b/tests/run-large-elf-file.sh -@@ -19,6 +19,10 @@ - - # Only run on 64bit systems, 32bit systems don't support > 4GB - # ELF files. -+ -+# this detection fails for 64-bit systems with -m32 -+exit 77 -+ - long_bit=$(getconf LONG_BIT) - echo "long_bit: $long_bit" - if test $long_bit -ne 64; then diff --git a/dev-libs/elfutils/metadata.xml b/dev-libs/elfutils/metadata.xml index 10d87faccf..a420f7e0a9 100644 --- a/dev-libs/elfutils/metadata.xml +++ b/dev-libs/elfutils/metadata.xml @@ -1,5 +1,5 @@ - + toolchain@gentoo.org diff --git a/dev-libs/jansson/Manifest b/dev-libs/jansson/Manifest index b4d6143a91..8d590df3b2 100644 --- a/dev-libs/jansson/Manifest +++ b/dev-libs/jansson/Manifest @@ -1,2 +1,2 @@ -DIST jansson-2.12.tar.gz 489154 BLAKE2B cf6bc6d03daba921ec5e033bf57ff0055741cc935adb14d5d4a5f04056fa93c292bf88367db071ef7bb32fbc5d2d6f5f2ce658815a17939bd38ed5c0676ad091 SHA512 e40bdafdfa1fa663f71e00c06d7bfc98cff4ed3581a147894e5272e50fa5f9b9a7af6aaca41ff423a2ddd2554a192b36efcc32f6a3c98c727e9f819b955357cb DIST jansson-2.13.1.tar.gz 531924 BLAKE2B e627bd2ba69bf01b053ff13dee903056db86999f774d6863517e67cef7dc9ddcaa747f2edca9de86bd83f37940a394ac9907f7d58069607ee529af08d8514d57 SHA512 e32be6665e41cf1763608c2f1ac4ce0824d4d7ffa5f4a5824cefde279250fdd399d49ba93d8894e16a473731f629b846554654347f027ca9a0a96ed047f10192 +DIST jansson-2.14.tar.gz 535618 BLAKE2B eb514ff222444d4c0d1ef6b99150e3e43bd4d7a1bec3d66e5ece8bc59ac19a0898d9eb061cacad52afda7fe172ec6df46b5a90952707422f56daae53f82c9427 SHA512 5a592776c7ba8c0b1f5efaf813f77948bbc4bda168a72d221d176af0cf61038e26c1f30795433be10e2fc5069d5763d11852a8574774906a9f8ad261ac30109c diff --git a/dev-libs/jansson/files/jansson-2.13.1-sphinx3.patch b/dev-libs/jansson/files/jansson-2.13.1-sphinx3.patch new file mode 100644 index 0000000000..e611896e9c --- /dev/null +++ b/dev-libs/jansson/files/jansson-2.13.1-sphinx3.patch @@ -0,0 +1,269 @@ +Rebase pull request #543 onto v2.13.1 + +Allows jansson documentation to compile with Sphinx-3.0 + +Squashed commit messages below: + + +pick 798d40c doc: convert refcounting directive to a class + +Directive functions are no longer supported in Sphinx-3.0 +but directive classes have been supported since early 1.x + + +pick 9431889 doc: do not use references for standard C types or file names + +Use double-backtick quoting instead. It has the same effect +(because these links had nowhere to link to) but it does not +result in loud warnings about broken references by default with Sphinx-3.x. + + +pick c329fd7 doc: add return types for function-like macros + +The Sphinx-3.0 c:function:: directive requires the return type. + +Sphinx-3.0 also adds function-like macro support to the c:macro:: +directive, which Sphinx-1.x and Sphinx-2.x do not support, but it +is probably a good idea to keep compatibility with slightly older +Sphinx for now. + +diff --git a/CHANGES b/CHANGES +index a374a86..256fde1 100644 +--- a/CHANGES ++++ b/CHANGES +@@ -8,7 +8,7 @@ Released 2020-05-07 + - Include `jansson_version_str()` and `jansson_version_cmp()` in + shared library. (#534) + +- - Include `scripts/` in tarball. (#535) ++ - Include ``scripts/`` in tarball. (#535) + + + Version 2.13 +@@ -127,7 +127,7 @@ Released 2018-02-09 + + - Work around gcc's -Wimplicit-fallthrough. + +- - Fix CMake detection of `sys/types.h` header (#375). ++ - Fix CMake detection of ``sys/types.h`` header (#375). + + - Fix `jansson.pc` generated by CMake to be more consistent with the one + generated using GNU Autotools (#368). +diff --git a/doc/apiref.rst b/doc/apiref.rst +index c3a814f..94c5726 100644 +--- a/doc/apiref.rst ++++ b/doc/apiref.rst +@@ -145,33 +145,33 @@ Type + .. function:: int json_typeof(const json_t *json) + + Return the type of the JSON value (a :type:`json_type` cast to +- :type:`int`). *json* MUST NOT be *NULL*. This function is actually ++ ``int``). *json* MUST NOT be *NULL*. This function is actually + implemented as a macro for speed. + +-.. function:: json_is_object(const json_t *json) +- json_is_array(const json_t *json) +- json_is_string(const json_t *json) +- json_is_integer(const json_t *json) +- json_is_real(const json_t *json) +- json_is_true(const json_t *json) +- json_is_false(const json_t *json) +- json_is_null(const json_t *json) ++.. function:: int json_is_object(const json_t *json) ++ int json_is_array(const json_t *json) ++ int json_is_string(const json_t *json) ++ int json_is_integer(const json_t *json) ++ int json_is_real(const json_t *json) ++ int json_is_true(const json_t *json) ++ int json_is_false(const json_t *json) ++ int json_is_null(const json_t *json) + + These functions (actually macros) return true (non-zero) for values + of the given type, and false (zero) for values of other types and + for *NULL*. + +-.. function:: json_is_number(const json_t *json) ++.. function:: int json_is_number(const json_t *json) + + Returns true for values of types ``JSON_INTEGER`` and + ``JSON_REAL``, and false for other types and for *NULL*. + +-.. function:: json_is_boolean(const json_t *json) ++.. function:: int json_is_boolean(const json_t *json) + + Returns true for types ``JSON_TRUE`` and ``JSON_FALSE``, and false + for values of other types and for *NULL*. + +-.. function:: json_boolean_value(const json_t *json) ++.. function:: int json_boolean_value(const json_t *json) + + Alias of :func:`json_is_true()`, i.e. returns 1 for ``JSON_TRUE`` + and 0 otherwise. +@@ -594,7 +594,7 @@ A JSON array is an ordered collection of other JSON values. + Appends all elements in *other_array* to the end of *array*. + Returns 0 on success and -1 on error. + +-.. function:: json_array_foreach(array, index, value) ++.. function:: void json_array_foreach(array, index, value) + + Iterate over every element of ``array``, running the block + of code that follows each time with the proper values set to +@@ -732,11 +732,11 @@ allowed in object keys. + recursively merged with the corresponding values in *object* if they are also + objects, instead of overwriting them. Returns 0 on success or -1 on error. + +-.. function:: json_object_foreach(object, key, value) ++.. function:: void json_object_foreach(object, key, value) + + Iterate over every key-value pair of ``object``, running the block + of code that follows each time with the proper values set to +- variables ``key`` and ``value``, of types :type:`const char *` and ++ variables ``key`` and ``value``, of types ``const char *`` and + :type:`json_t *` respectively. Example:: + + /* obj is a JSON object */ +@@ -764,7 +764,7 @@ allowed in object keys. + .. versionadded:: 2.3 + + +-.. function:: json_object_foreach_safe(object, tmp, key, value) ++.. function:: void json_object_foreach_safe(object, tmp, key, value) + + Like :func:`json_object_foreach()`, but it's safe to call + ``json_object_del(object, key)`` during iteration. You need to pass +@@ -1488,17 +1488,17 @@ arguments. + Output a JSON null value. No argument is consumed. + + ``b`` (boolean) [int] +- Convert a C :type:`int` to JSON boolean value. Zero is converted ++ Convert a C ``int`` to JSON boolean value. Zero is converted + to ``false`` and non-zero to ``true``. + + ``i`` (integer) [int] +- Convert a C :type:`int` to JSON integer. ++ Convert a C ``int`` to JSON integer. + + ``I`` (integer) [json_int_t] + Convert a C :type:`json_int_t` to JSON integer. + + ``f`` (real) [double] +- Convert a C :type:`double` to JSON real. ++ Convert a C ``double`` to JSON real. + + ``o`` (any value) [json_t \*] + Output any given JSON value as-is. If the value is added to an +@@ -1625,20 +1625,20 @@ type whose address should be passed. + Expect a JSON null value. Nothing is extracted. + + ``b`` (boolean) [int] +- Convert a JSON boolean value to a C :type:`int`, so that ``true`` ++ Convert a JSON boolean value to a C ``int``, so that ``true`` + is converted to 1 and ``false`` to 0. + + ``i`` (integer) [int] +- Convert a JSON integer to C :type:`int`. ++ Convert a JSON integer to C ``int``. + + ``I`` (integer) [json_int_t] + Convert a JSON integer to C :type:`json_int_t`. + + ``f`` (real) [double] +- Convert a JSON real to C :type:`double`. ++ Convert a JSON real to C ``double``. + + ``F`` (integer or real) [double] +- Convert a JSON number (integer or real) to C :type:`double`. ++ Convert a JSON number (integer or real) to C ``double``. + + ``o`` (any value) [json_t \*] + Store a JSON value with no conversion to a :type:`json_t` pointer. +diff --git a/doc/ext/refcounting.py b/doc/ext/refcounting.py +index bba2684..e72c481 100644 +--- a/doc/ext/refcounting.py ++++ b/doc/ext/refcounting.py +@@ -24,8 +24,8 @@ + """ + + from docutils import nodes ++from docutils.parsers.rst import Directive + +-class refcounting(nodes.emphasis): pass + + def visit(self, node): + self.visit_emphasis(node) +@@ -40,16 +40,25 @@ def html_depart(self, node): + self.body.append('') + + +-def refcounting_directive(name, arguments, options, content, lineno, +- content_offset, block_text, state, state_machine): +- if arguments[0] == 'borrow': +- text = 'Return value: Borrowed reference.' +- elif arguments[0] == 'new': +- text = 'Return value: New reference.' +- else: +- raise Error('Valid arguments: new, borrow') ++class refcounting(nodes.emphasis): ++ pass ++ ++class refcounting_directive(Directive): ++ has_content = False ++ required_arguments = 1 ++ optional_arguments = 0 ++ final_argument_whitespace = False ++ ++ def run(self): ++ if self.arguments[0] == 'borrow': ++ text = 'Return value: Borrowed reference.' ++ elif self.arguments[0] == 'new': ++ text = 'Return value: New reference.' ++ else: ++ raise Error('Valid arguments: new, borrow') ++ ++ return [refcounting(text, text)] + +- return [refcounting(text, text)] + + def setup(app): + app.add_node(refcounting, +@@ -57,4 +66,4 @@ def setup(app): + latex=(visit, depart), + text=(visit, depart), + man=(visit, depart)) +- app.add_directive('refcounting', refcounting_directive, 0, (1, 0, 0)) ++ app.add_directive('refcounting', refcounting_directive) +diff --git a/doc/upgrading.rst b/doc/upgrading.rst +index 9b49046..94ff7de 100644 +--- a/doc/upgrading.rst ++++ b/doc/upgrading.rst +@@ -47,13 +47,13 @@ List of Incompatible Changes + + **Underlying type of JSON integers** + The underlying C type of JSON integers has been changed from +- :type:`int` to the widest available signed integer type, i.e. +- :type:`long long` or :type:`long`, depending on whether +- :type:`long long` is supported on your system or not. This makes ++ ``int`` to the widest available signed integer type, i.e. ++ ``long long`` or ``long``, depending on whether ++ ``long long`` is supported on your system or not. This makes + the whole 64-bit integer range available on most modern systems. + + ``jansson.h`` has a typedef :type:`json_int_t` to the underlying +- integer type. :type:`int` should still be used in most cases when ++ integer type. ``int`` should still be used in most cases when + dealing with smallish JSON integers, as the compiler handles + implicit type coercion. Only when the full 64-bit range is needed, + :type:`json_int_t` should be explicitly used. +@@ -69,8 +69,8 @@ List of Incompatible Changes + + **Unsigned integers in API functions** + Version 2.0 unifies unsigned integer usage in the API. All uses of +- :type:`unsigned int` and :type:`unsigned long` have been replaced +- with :type:`size_t`. This includes flags, container sizes, etc. ++ ``unsigned int`` and ``unsigned long`` have been replaced ++ with ``size_t``. This includes flags, container sizes, etc. + This should not require source code changes, as both +- :type:`unsigned int` and :type:`unsigned long` are usually +- compatible with :type:`size_t`. ++ ``unsigned int`` and ``unsigned long`` are usually ++ compatible with ``size_t``. diff --git a/dev-libs/jansson/files/jansson-2.14-test-symbols.patch b/dev-libs/jansson/files/jansson-2.14-test-symbols.patch new file mode 100644 index 0000000000..a5bf533472 --- /dev/null +++ b/dev-libs/jansson/files/jansson-2.14-test-symbols.patch @@ -0,0 +1,25 @@ +https://bugs.gentoo.org/814944 +https://github.com/akheron/jansson/commit/0677666f65b988b2dd44d02966a08fea490d5883 + +From 0677666f65b988b2dd44d02966a08fea490d5883 Mon Sep 17 00:00:00 2001 +From: Petri Lehtinen +Date: Thu, 9 Sep 2021 21:53:11 +0300 +Subject: [PATCH] Fix the check-exports tests for versioned symbols + +--- + test/suites/api/check-exports | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/suites/api/check-exports b/test/suites/api/check-exports +index 2b6b3c79..5c82064c 100755 +--- a/test/suites/api/check-exports ++++ b/test/suites/api/check-exports +@@ -15,7 +15,7 @@ grep 'json_\|jansson_' $top_srcdir/src/jansson.def \ + nm -D $SOFILE >/dev/null >$test_log/symbols 2>/dev/null \ + || exit 77 # Skip if "nm -D" doesn't seem to work + +-grep ' [DT] ' $test_log/symbols | cut -d' ' -f3 | grep -v '^_' | sort >$test_log/output ++grep ' [DT] ' $test_log/symbols | cut -d' ' -f3 | grep -v '^_' | sed 's/@@libjansson.*//' | sort >$test_log/output + + if ! cmp -s $test_log/exports $test_log/output; then + diff -u $test_log/exports $test_log/output >&2 diff --git a/dev-libs/jansson/jansson-2.13.1.ebuild b/dev-libs/jansson/jansson-2.13.1-r1.ebuild similarity index 68% rename from dev-libs/jansson/jansson-2.13.1.ebuild rename to dev-libs/jansson/jansson-2.13.1-r1.ebuild index 8b9c7d1b6c..0ea1a8080f 100644 --- a/dev-libs/jansson/jansson-2.13.1.ebuild +++ b/dev-libs/jansson/jansson-2.13.1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,11 +11,15 @@ SRC_URI="https://www.digip.org/jansson/releases/${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" IUSE="doc static-libs" -# dev-libs/jansson-2.13.1[doc]: fails to build with >=sphinx-3.0, #731668 -BDEPEND="doc? ( =sphinx-3.0, #731668 + "${FILESDIR}/${P}-sphinx3.patch" +) multilib_src_configure() { ECONF_SOURCE="${S}" econf $(use_enable static-libs static) diff --git a/dev-libs/jansson/jansson-2.12.ebuild b/dev-libs/jansson/jansson-2.14.ebuild similarity index 60% rename from dev-libs/jansson/jansson-2.12.ebuild rename to dev-libs/jansson/jansson-2.14.ebuild index 68ae0abd38..42760f3115 100644 --- a/dev-libs/jansson/jansson-2.12.ebuild +++ b/dev-libs/jansson/jansson-2.14.ebuild @@ -1,23 +1,26 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -inherit multilib-minimal +inherit multilib-minimal toolchain-funcs DESCRIPTION="C library for encoding, decoding and manipulating JSON data" -HOMEPAGE="http://www.digip.org/jansson/" -SRC_URI="http://www.digip.org/jansson/releases/${P}.tar.gz" +HOMEPAGE="https://www.digip.org/jansson/" +SRC_URI="https://github.com/akheron/jansson/releases/download/v${PV}/${P}.tar.gz" LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86" +SLOT="0/4" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" IUSE="doc static-libs" -BDEPEND="doc? ( - + - + zero-one@zer0-one.net David Zero - + proxy-maint@gentoo.org Proxy Maintainers diff --git a/dev-libs/libbsd/Manifest b/dev-libs/libbsd/Manifest index 5a70770bb8..c47ce9ccb0 100644 --- a/dev-libs/libbsd/Manifest +++ b/dev-libs/libbsd/Manifest @@ -1 +1,2 @@ -DIST libbsd-0.10.0.tar.xz 393576 BLAKE2B 66005a511dae7fb799322c813b8ea058ab460e3b9044756d6efad5de741d8f70270496f09803bbce8cd0000ff37e998f18e092037c850826c3c8e3f47ddfdb28 SHA512 b75529785b16c93d31401187f8a58258fbebe565dac071c8311775c913af989f62cd29d5ce2651af3ea6221cffd31cf04826577d3e546ab9ca14340f297777b9 +DIST libbsd-0.11.3.tar.xz 399712 BLAKE2B 1af04b8fcbc0bfa59fba549639d61a33ac934fe7ee42b506d1b0452e0b836b0bfdd3d8739de90465be46fe6a9d326a2d11bcf72280aa19ccba81db5da6d63d89 SHA512 a7015ea1ffa3766b1a4690526a25231898ad8275149b31fb6801082450172249997c36165626d101ffce53b59767a46676eebc0806426922fe4e773a0376c1f5 +DIST libbsd-0.11.5.tar.xz 409972 BLAKE2B 00c89ad1be351e7851538eac2744f5aef87b5937330d514d17af8a20a04bc6eab0e2bda61d0080da1d1439306b3b191ab68b4bc4cd8558ff0adfe402bfbf5b52 SHA512 c52c19eddd53630aca14f9f6221f7b84aa9cc798b4bb91e867822b161793313aab872ac1c0350d29312a72fee6e2061f3910ff918b724ec171d8c9de5837c841 diff --git a/dev-libs/libbsd/libbsd-0.10.0.ebuild b/dev-libs/libbsd/libbsd-0.11.3.ebuild similarity index 67% rename from dev-libs/libbsd/libbsd-0.10.0.ebuild rename to dev-libs/libbsd/libbsd-0.11.3.ebuild index f4a24da079..1551e7d7f7 100644 --- a/dev-libs/libbsd/libbsd-0.10.0.ebuild +++ b/dev-libs/libbsd/libbsd-0.11.3.ebuild @@ -1,28 +1,30 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 + inherit multilib-minimal -DESCRIPTION="An library to provide useful functions commonly found on BSD systems" +DESCRIPTION="Library to provide useful functions commonly found on BSD systems" HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd" SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz" LICENSE="BSD BSD-2 BSD-4 ISC" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" IUSE="static-libs" -DEPEND=">=sys-kernel/linux-headers-3.17" -RDEPEND="" +RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND} + >=sys-kernel/linux-headers-3.17 +" pkg_setup() { local f="${EROOT}/usr/$(get_libdir)/${PN}.a" - local m="You need to remove ${f} by hand or re-emerge sys-libs/glibc first." if ! has_version ${CATEGORY}/${PN}; then if [[ -e ${f} ]]; then eerror "${m}" - die "${m}" + die "You need to remove ${f} by hand or re-emerge sys-libs/glibc first." fi fi } diff --git a/dev-libs/libbsd/libbsd-0.11.5.ebuild b/dev-libs/libbsd/libbsd-0.11.5.ebuild new file mode 100644 index 0000000000..55d75e728b --- /dev/null +++ b/dev-libs/libbsd/libbsd-0.11.5.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal + +DESCRIPTION="Library to provide useful functions commonly found on BSD systems" +HOMEPAGE="https://libbsd.freedesktop.org/wiki/ https://gitlab.freedesktop.org/libbsd/libbsd" +SRC_URI="https://${PN}.freedesktop.org/releases/${P}.tar.xz" + +LICENSE="BSD BSD-2 BSD-4 ISC" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="static-libs" + +RDEPEND="app-crypt/libmd[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND} + >=sys-kernel/linux-headers-3.17 +" + +multilib_src_configure() { + # The build system will install libbsd-ctor.a despite of USE="-static-libs" + # which is correct, see: + # https://gitlab.freedesktop.org/libbsd/libbsd/commit/c5b959028734ca2281250c85773d9b5e1d259bc8 + ECONF_SOURCE="${S}" econf $(use_enable static-libs static) +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-libs/libbsd/metadata.xml b/dev-libs/libbsd/metadata.xml index 1ff7e0b3b4..822dbca255 100644 --- a/dev-libs/libbsd/metadata.xml +++ b/dev-libs/libbsd/metadata.xml @@ -1,5 +1,5 @@ - + freedesktop-bugs@gentoo.org diff --git a/dev-libs/libpcre2/Manifest b/dev-libs/libpcre2/Manifest index 8497efa485..dcba31a9c9 100644 --- a/dev-libs/libpcre2/Manifest +++ b/dev-libs/libpcre2/Manifest @@ -1,3 +1,4 @@ -DIST libpcre2-10.34-patchset-01.tar.xz 1208 BLAKE2B 615b7eff085bd52bb3aed30c90ec5b8cec406f96c58bdfb0304dd59311517662067e68f85bc9930ed6f749820ecfe3c483e261616187bc1077ebb053670d4950 SHA512 d881665701bc330f237d19ee48491a81dc8b952b0b8e529eb83c3ffdf14710f68eb934f872ed76ef6b0bee1864261453e7e71e60e14217c004e4e12c6baa499f -DIST pcre2-10.34.tar.bz2 1714731 BLAKE2B f731339b3acdb084ddb1462cf4638edefbfc4a95e63e44c8c75ded55fd9b98334336dbda5f31bd8e9410e63ccd83dc7e707cc20f03df4d801f182ff4939b6cc6 SHA512 77ad75f8b0b8bbfc2f57932596151bca25b06bd621e0f047e476f38cd127f43e2052460b95c281a7e874aad2b7fd86c8f3413f4a323abb74b9440a42d0ee9524 -DIST pcre2-10.35.tar.bz2 1725214 BLAKE2B f97412258f0d2c09dc18c5973156e616730ae301713a0172fb2f467e5d2857bf64c6d02ac247e797ce4c96e2fb9b122888f71aede3f5eb3540731f6c3c254ed4 SHA512 ecfb8d48e219daff02874783b7b436fe7d70d8471e44eb66e1e29abb7b0aa67547e6b5fba7058b074ac90eef265ece7d12728f80afdda45b6b8124435f4561fd +DIST libpcre2-10.36-patchset-01.tar.xz 1364 BLAKE2B bfef3c876a092e06972107b44794c23b758a030181f3040c8b722db166789eac794783169b468fc71334fd660bc2f1c31422a8cb8e5bdc18a69b72654b1b59b2 SHA512 04324d1efa6d155fa3ffbc328638e4674bea305fef7f57d4369ab4a6399a0f489b4c0ecfb49643feff310d91872e1673e965c48a5c60f1bf54a319f0d275c306 +DIST pcre2-10.37.tar.bz2 1729384 BLAKE2B b4e56041010d7f44e84a63a17b35e87329d258107d8b27ccead10f51e7deacc93cbee64a22c71b9f0b8f244920b3a22fa4d9b786ec441a428e0ad0bb8535773e SHA512 69f4bf4736b986e0fc855eedb292efe72a0df2e803bc0e61a6cf47775eed433bb1b2f28d7e641591ef4603d47beb543a64ed0eef9538d00f0746bc3435c143ec +DIST pcre2-10.38.tar.bz2 1729078 BLAKE2B 9438ff2422afaa83d5a4b2e64d5897068c35add28d66956431f9937191416d6df4903ecf35af72c788480d7def08e0ce17922e9b036698ce1bbe6cacbb799df2 SHA512 3634cb2db6ccba9720c1b69890bcd9eb7057f6a6cb6981f12b3f2d6b2bb4e75e4e5014f566045f9ba1b79edf01fa5c4d81eb333727b9462e843dfb70f3a58f95 +DIST pcre2-10.39.tar.bz2 1730729 BLAKE2B 9ee01ac2704e9cb7a107d402fa0c32828fc66425b62270f6891667bde5fb00c1e779c9730df3522acbd62d11703343bf48265050c09d3754183de314baf7cddd SHA512 b3d898198f4b5ffc3453d2ba56fe2a7298c01c52e5f67d45f1e046fc0dee62e16a4024fcb65839ac9c367beedb531647affd6f8599fbeb102f19423c150d80d4 diff --git a/dev-libs/libpcre2/files/libpcre2-10.37-jit_fixes.patch b/dev-libs/libpcre2/files/libpcre2-10.37-jit_fixes.patch new file mode 100644 index 0000000000..6ee5494f2b --- /dev/null +++ b/dev-libs/libpcre2/files/libpcre2-10.37-jit_fixes.patch @@ -0,0 +1,80 @@ +Index: pcre2/ChangeLog +=================================================================== +--- pcre2/ChangeLog (revision 1314) ++++ pcre2/ChangeLog (revision 1315) +@@ -1,7 +1,14 @@ + Change Log for PCRE2 + -------------------- + ++Version 10.38-RC1 xx-xxx-2021 ++----------------------------- + ++1. Fix invalid single character repetition issues in JIT when the repetition ++is inside a capturing bracket and the bracket is preceeded by character ++literals. ++ ++ + Version 10.37 26-May-2021 + ------------------------- + +Index: pcre2/src/pcre2_jit_compile.c +=================================================================== +--- pcre2/src/pcre2_jit_compile.c (revision 1314) ++++ pcre2/src/pcre2_jit_compile.c (revision 1315) +@@ -1236,15 +1236,16 @@ + + return: current number of iterators enhanced with fast fail + */ +-static int detect_early_fail(compiler_common *common, PCRE2_SPTR cc, int *private_data_start, sljit_s32 depth, int start) ++static int detect_early_fail(compiler_common *common, PCRE2_SPTR cc, int *private_data_start, ++ sljit_s32 depth, int start, BOOL fast_forward_allowed) + { + PCRE2_SPTR begin = cc; + PCRE2_SPTR next_alt; + PCRE2_SPTR end; + PCRE2_SPTR accelerated_start; ++BOOL prev_fast_forward_allowed; + int result = 0; + int count; +-BOOL fast_forward_allowed = TRUE; + + SLJIT_ASSERT(*cc == OP_ONCE || *cc == OP_BRA || *cc == OP_CBRA); + SLJIT_ASSERT(*cc != OP_CBRA || common->optimized_cbracket[GET2(cc, 1 + LINK_SIZE)] != 0); +@@ -1476,6 +1477,7 @@ + case OP_CBRA: + end = cc + GET(cc, 1); + ++ prev_fast_forward_allowed = fast_forward_allowed; + fast_forward_allowed = FALSE; + if (depth >= 4) + break; +@@ -1484,7 +1486,7 @@ + if (*end != OP_KET || (*cc == OP_CBRA && common->optimized_cbracket[GET2(cc, 1 + LINK_SIZE)] == 0)) + break; + +- count = detect_early_fail(common, cc, private_data_start, depth + 1, count); ++ count = detect_early_fail(common, cc, private_data_start, depth + 1, count, prev_fast_forward_allowed); + + if (PRIVATE_DATA(cc) != 0) + common->private_data_ptrs[begin - common->start] = 1; +@@ -13657,7 +13659,7 @@ + private_data_size = common->cbra_ptr + (re->top_bracket + 1) * sizeof(sljit_sw); + + if ((re->overall_options & PCRE2_ANCHORED) == 0 && (re->overall_options & PCRE2_NO_START_OPTIMIZE) == 0 && !common->has_skip_in_assert_back) +- detect_early_fail(common, common->start, &private_data_size, 0, 0); ++ detect_early_fail(common, common->start, &private_data_size, 0, 0, TRUE); + + set_private_data_ptrs(common, &private_data_size, ccend); + +Index: pcre2/src/pcre2_jit_test.c +=================================================================== +--- pcre2/src/pcre2_jit_test.c (revision 1314) ++++ pcre2/src/pcre2_jit_test.c (revision 1315) +@@ -351,6 +351,7 @@ + { MU, A, 0, 0, ".[ab]*a", "xxa" }, + { MU, A, 0, 0, ".[ab]?.", "xx" }, + { MU, A, 0, 0, "_[ab]+_*a", "_aa" }, ++ { MU, A, 0, 0, "#(A+)#\\d+", "#A#A#0" }, + + /* Bracket repeats with limit. */ + { MU, A, 0, 0, "(?:(ab){2}){5}M", "abababababababababababM" }, diff --git a/dev-libs/libpcre2/files/libpcre2-10.38-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch b/dev-libs/libpcre2/files/libpcre2-10.38-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch new file mode 100644 index 0000000000..936bd057a0 --- /dev/null +++ b/dev-libs/libpcre2/files/libpcre2-10.38-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch @@ -0,0 +1,49 @@ +https://github.com/PhilipHazel/pcre2/pull/22 + +--- a/src/pcre2_jit_compile.c ++++ b/src/pcre2_jit_compile.c +@@ -1251,10 +1251,13 @@ SLJIT_ASSERT(*cc == OP_ONCE || *cc == OP_BRA || *cc == OP_CBRA); + SLJIT_ASSERT(*cc != OP_CBRA || common->optimized_cbracket[GET2(cc, 1 + LINK_SIZE)] != 0); + SLJIT_ASSERT(start < EARLY_FAIL_ENHANCE_MAX); + ++next_alt = cc + GET(cc, 1); ++if (*next_alt == OP_ALT) ++ fast_forward_allowed = FALSE; ++ + do + { + count = start; +- next_alt = cc + GET(cc, 1); + cc += 1 + LINK_SIZE + ((*cc == OP_CBRA) ? IMM2_SIZE : 0); + + while (TRUE) +@@ -1512,7 +1515,7 @@ do + { + count++; + +- if (fast_forward_allowed && *next_alt == OP_KET) ++ if (fast_forward_allowed) + { + common->fast_forward_bc_ptr = accelerated_start; + common->private_data_ptrs[(accelerated_start + 1) - common->start] = ((*private_data_start) << 3) | type_skip; +@@ -1562,8 +1565,8 @@ do + else if (result < count) + result = count; + +- fast_forward_allowed = FALSE; + cc = next_alt; ++ next_alt = cc + GET(cc, 1); + } + while (*cc == OP_ALT); + +--- a/src/pcre2_jit_test.c ++++ b/src/pcre2_jit_test.c +@@ -352,6 +352,7 @@ static struct regression_test_case regression_test_cases[] = { + { MU, A, 0, 0, ".[ab]?.", "xx" }, + { MU, A, 0, 0, "_[ab]+_*a", "_aa" }, + { MU, A, 0, 0, "#(A+)#\\d+", "#A#A#0" }, ++ { MU, A, 0, 0, "(?P\\d+)m|M", "4M" }, + + /* Bracket repeats with limit. */ + { MU, A, 0, 0, "(?:(ab){2}){5}M", "abababababababababababM" }, + diff --git a/dev-libs/libpcre2/libpcre2-10.34.ebuild b/dev-libs/libpcre2/libpcre2-10.37-r2.ebuild similarity index 77% rename from dev-libs/libpcre2/libpcre2-10.34.ebuild rename to dev-libs/libpcre2/libpcre2-10.37-r2.ebuild index 073c2ee568..abd807adeb 100644 --- a/dev-libs/libpcre2/libpcre2-10.34.ebuild +++ b/dev-libs/libpcre2/libpcre2-10.37-r2.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit flag-o-matic libtool multilib-minimal toolchain-funcs usr-ldscript +inherit libtool multilib-minimal usr-ldscript -PATCH_SET="${P}-patchset-01.tar.xz" +PATCH_SET="${PN}-10.36-patchset-01.tar.xz" DESCRIPTION="Perl-compatible regular expression library" HOMEPAGE="https://www.pcre.org/" @@ -24,14 +24,13 @@ if [[ -n "${PATCH_SET}" ]] ; then fi LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib" +SLOT="0/3" # libpcre2-posix.so version +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib" REQUIRED_USE="?? ( libedit readline )" BDEPEND=" virtual/pkgconfig - userland_GNU? ( >=sys-apps/findutils-4.4.0 ) " RDEPEND=" bzip2? ( app-arch/bzip2 ) @@ -43,12 +42,19 @@ DEPEND="${RDEPEND}" S="${WORKDIR}/${MY_P}" +PATCHES=( + "${FILESDIR}/${P}-jit_fixes.patch" +) + MULTILIB_CHOST_TOOLS=( /usr/bin/pcre2-config ) src_prepare() { - [[ -d "${WORKDIR}/patches" ]] && eapply "${WORKDIR}"/patches + if [[ -d "${WORKDIR}/patches" ]] ; then + rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die + eapply "${WORKDIR}"/patches + fi default diff --git a/dev-libs/libpcre2/libpcre2-10.38-r1.ebuild b/dev-libs/libpcre2/libpcre2-10.38-r1.ebuild new file mode 100644 index 0000000000..84077f8a1f --- /dev/null +++ b/dev-libs/libpcre2/libpcre2-10.38-r1.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit libtool multilib-minimal usr-ldscript + +PATCH_SET="${PN}-10.36-patchset-01.tar.xz" + +DESCRIPTION="Perl-compatible regular expression library" +HOMEPAGE="https://www.pcre.org/" +MY_P="pcre2-${PV/_rc/-RC}" +if [[ ${PV} != *_rc* ]] ; then + # Only the final releases are available here. + SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2 + https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 + https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2" +else + SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2" +fi + +if [[ -n "${PATCH_SET}" ]] ; then + SRC_URI+=" https://dev.gentoo.org/~whissi/dist/${PN}/${PATCH_SET} + https://dev.gentoo.org/~polynomial-c/dist/${PATCH_SET}" +fi + +LICENSE="BSD" +SLOT="0/3" # libpcre2-posix.so version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib" +REQUIRED_USE="?? ( libedit readline )" + +BDEPEND=" + virtual/pkgconfig +" +RDEPEND=" + bzip2? ( app-arch/bzip2 ) + libedit? ( dev-libs/libedit ) + readline? ( sys-libs/readline:0= ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( "${FILESDIR}"/${P}-fix-fix-incorrect-detection-of-alternatives-in-first-character-search.patch ) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/pcre2-config +) + +src_prepare() { + if [[ -d "${WORKDIR}/patches" ]] ; then + rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die + eapply "${WORKDIR}"/patches + fi + + default + + elibtoolize +} + +multilib_src_configure() { + local myeconfargs=( + --enable-pcre2-8 + --enable-shared + --with-match-limit-depth=$(usex recursion-limit 8192 MATCH_LIMIT) + $(multilib_native_use_enable bzip2 pcre2grep-libbz2) + $(multilib_native_use_enable libedit pcre2test-libedit) + $(multilib_native_use_enable readline pcre2test-libreadline) + $(multilib_native_use_enable zlib pcre2grep-libz) + $(use_enable jit) + $(use_enable jit pcre2grep-jit) + $(use_enable pcre16 pcre2-16) + $(use_enable pcre32 pcre2-32) + $(use_enable static-libs static) + $(use_enable unicode) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_compile() { + emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=") +} + +multilib_src_install() { + emake \ + DESTDIR="${D}" \ + $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \ + install + multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix +} + +multilib_src_install_all() { + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-libs/libpcre2/libpcre2-10.35.ebuild b/dev-libs/libpcre2/libpcre2-10.38.ebuild similarity index 74% rename from dev-libs/libpcre2/libpcre2-10.35.ebuild rename to dev-libs/libpcre2/libpcre2-10.38.ebuild index 89944f501c..6f868c1cfe 100644 --- a/dev-libs/libpcre2/libpcre2-10.35.ebuild +++ b/dev-libs/libpcre2/libpcre2-10.38.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit flag-o-matic libtool multilib-minimal toolchain-funcs usr-ldscript +inherit libtool multilib-minimal usr-ldscript -PATCH_SET="${PN}-10.34-patchset-01.tar.xz" +PATCH_SET="${PN}-10.36-patchset-01.tar.xz" DESCRIPTION="Perl-compatible regular expression library" HOMEPAGE="https://www.pcre.org/" @@ -13,7 +13,8 @@ MY_P="pcre2-${PV/_rc/-RC}" if [[ ${PV} != *_rc* ]] ; then # Only the final releases are available here. SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2 - https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2" + https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 + https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2" else SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2" fi @@ -24,14 +25,13 @@ if [[ -n "${PATCH_SET}" ]] ; then fi LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib" +SLOT="0/3" # libpcre2-posix.so version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib" REQUIRED_USE="?? ( libedit readline )" BDEPEND=" virtual/pkgconfig - userland_GNU? ( >=sys-apps/findutils-4.4.0 ) " RDEPEND=" bzip2? ( app-arch/bzip2 ) @@ -48,7 +48,10 @@ MULTILIB_CHOST_TOOLS=( ) src_prepare() { - [[ -d "${WORKDIR}/patches" ]] && eapply "${WORKDIR}"/patches + if [[ -d "${WORKDIR}/patches" ]] ; then + rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die + eapply "${WORKDIR}"/patches + fi default diff --git a/dev-libs/libpcre2/libpcre2-10.39.ebuild b/dev-libs/libpcre2/libpcre2-10.39.ebuild new file mode 100644 index 0000000000..477a50daf5 --- /dev/null +++ b/dev-libs/libpcre2/libpcre2-10.39.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit libtool multilib-minimal usr-ldscript + +PATCH_SET="${PN}-10.36-patchset-01.tar.xz" + +DESCRIPTION="Perl-compatible regular expression library" +HOMEPAGE="https://www.pcre.org/" +MY_P="pcre2-${PV/_rc/-RC}" +if [[ ${PV} != *_rc* ]] ; then + # Only the final releases are available here. + SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2 + https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2 + https://github.com/PhilipHazel/pcre2/releases/download/${MY_P}/${MY_P}.tar.bz2" +else + SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2" +fi + +if [[ -n "${PATCH_SET}" ]] ; then + SRC_URI+=" https://dev.gentoo.org/~whissi/dist/${PN}/${PATCH_SET} + https://dev.gentoo.org/~polynomial-c/dist/${PATCH_SET}" +fi + +LICENSE="BSD" +SLOT="0/3" # libpcre2-posix.so version +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib" +REQUIRED_USE="?? ( libedit readline )" + +BDEPEND=" + virtual/pkgconfig +" +RDEPEND=" + bzip2? ( app-arch/bzip2 ) + libedit? ( dev-libs/libedit ) + readline? ( sys-libs/readline:0= ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/pcre2-config +) + +src_prepare() { + if [[ -d "${WORKDIR}/patches" ]] ; then + rm "${WORKDIR}"/patches/pcre2-10.36-001-issue2698.patch || die + eapply "${WORKDIR}"/patches + fi + + default + + elibtoolize +} + +multilib_src_configure() { + local myeconfargs=( + --enable-pcre2-8 + --enable-shared + --with-match-limit-depth=$(usex recursion-limit 8192 MATCH_LIMIT) + $(multilib_native_use_enable bzip2 pcre2grep-libbz2) + $(multilib_native_use_enable libedit pcre2test-libedit) + $(multilib_native_use_enable readline pcre2test-libreadline) + $(multilib_native_use_enable zlib pcre2grep-libz) + $(use_enable jit) + $(use_enable jit pcre2grep-jit) + $(use_enable pcre16 pcre2-16) + $(use_enable pcre32 pcre2-32) + $(use_enable static-libs static) + $(use_enable unicode) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_compile() { + emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=") +} + +multilib_src_install() { + emake \ + DESTDIR="${D}" \ + $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \ + install + multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix +} + +multilib_src_install_all() { + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/dev-libs/libpcre2/metadata.xml b/dev-libs/libpcre2/metadata.xml index 1e5257985a..0d201299bd 100644 --- a/dev-libs/libpcre2/metadata.xml +++ b/dev-libs/libpcre2/metadata.xml @@ -1,5 +1,5 @@ - + base-system@gentoo.org @@ -25,6 +25,9 @@ gzip-compressed files (via sys-libs/zlib). + + Reflects binary compatibility for libpcre2-posix.so. + cpe:/a:pcre:pcre pcre diff --git a/dev-libs/libtasn1/Manifest b/dev-libs/libtasn1/Manifest index 5712c8ec93..288626832f 100644 --- a/dev-libs/libtasn1/Manifest +++ b/dev-libs/libtasn1/Manifest @@ -1,3 +1,2 @@ -DIST libtasn1-4.13.tar.gz 1891703 BLAKE2B 5a8bfefe1a3701505c8a1a4920412a6dd15fe771fb848fbd00f0a332388795dc6108a0fa5a282b4212abe0b0642f205bda53c2c39a4a2d65fa71e082fc76a6d2 SHA512 bf5b60a296795e0a8a4a658c0106492393aa7ce698e785256b3427c17215c2a5b6178a61a2043c93ea4334f754eabece20221ac8fef0fd5644086a3891d98a9f -DIST libtasn1-4.15.0.tar.gz 1800713 BLAKE2B 005a36bfdd89a167d469ef834c00d8b89e0fba42c0c973709be93c1d703b8042d5170df855085bac9945b6512dc3abef9405461988d634cb32ec0fe99f49367d SHA512 a8095aebf57a0b482027d06e0ee6978946f267b57bf2db3c891c4656ca35250cc1f72e2e90f4cc0ddbdf6cd2b1783881a62d495a57ad4a98684f8d037307552d -DIST libtasn1-4.16.0.tar.gz 1812442 BLAKE2B 1a79494da959808d1b05099409cab70a08bf8be039f32c2e487ec8cee240d92aca9a3ec137721bac3bfe1ecd59334f4f31e0e0c25c6f06ee850af69842c0fefc SHA512 b356249535d5d592f9b59de39d21e26dd0f3f00ea47c9cef292cdd878042ea41ecbb7c8d2f02ac5839f5210092fe92a25acd343260ddf644887b031b167c2e71 +DIST libtasn1-4.17.0.tar.gz 1906654 BLAKE2B a76798bdb8e68f2ca2337fa2648ff42adb7a9a51f27efefee5b9856e56ac09672237bd9a5b2afe808298e462eda31f2e8d3601c35ac00b84935f307ad981b2b1 SHA512 9cbd920196d1e4c8f5aa613259cded2510d40edb583ce20cc2702e2dee9bf32bee85a159c74600ffbebc2af2787e28ed0fe0adf15fc46839283747f4fe166d3d +DIST libtasn1-4.18.0.tar.gz 1724441 BLAKE2B b5f93a7575dde46741b6fc97183105efbc934e44041735241ba40ecd578c94637741df193dfab0d97e0348e2dde34b8b89a33ed616afa0bf64db6dbddebf1786 SHA512 4f2f4afc7561fda7a1f1c6c525c3c3b08228a1a4aa8c3d3d5e02e993d8f83ccee1dd0f1b201cec0fbfc97043d4b1d7a95ffd34d65422a38b85b931ac7a015831 diff --git a/dev-libs/libtasn1/files/libtasn1-4.15.0-noinst_fuzzer_tool.patch b/dev-libs/libtasn1/files/libtasn1-4.15.0-noinst_fuzzer_tool.patch deleted file mode 100644 index 45360ec8f8..0000000000 --- a/dev-libs/libtasn1/files/libtasn1-4.15.0-noinst_fuzzer_tool.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 49d6e3f0a4b5fd4da31228d23ae9efabef20c1ca Mon Sep 17 00:00:00 2001 -From: Nikos Mavrogiannopoulos -Date: Thu, 21 Nov 2019 16:09:20 +0100 -Subject: [PATCH] fuzz: do not install generated fuzzers and tools - -Signed-off-by: Nikos Mavrogiannopoulos ---- - fuzz/Makefile.am | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/fuzz/Makefile.am b/fuzz/Makefile.am -index ae6616b..aa621ce 100644 ---- a/fuzz/Makefile.am -+++ b/fuzz/Makefile.am -@@ -38,7 +38,7 @@ FUZZERS = \ - - if FUZZING - # fuzzing mode, enabled with ./configure --enable-fuzzing -- bin_PROGRAMS = $(FUZZERS) -+ noinst_PROGRAMS = $(FUZZERS) - AM_LDFLAGS += -fsanitize=fuzzer - MAIN = fuzzer.h - else -@@ -47,7 +47,7 @@ else - TESTS = $(FUZZERS) - check_PROGRAMS = $(FUZZERS) - -- bin_PROGRAMS = corpus2array -+ noinst_PROGRAMS = corpus2array - corpus2array_SOURCES = corpus2array.c - endif - --- -2.22.2 - diff --git a/dev-libs/libtasn1/libtasn1-4.13.ebuild b/dev-libs/libtasn1/libtasn1-4.13.ebuild deleted file mode 100644 index 5c7aec4f7b..0000000000 --- a/dev-libs/libtasn1/libtasn1-4.13.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multilib-minimal libtool - -DESCRIPTION="ASN.1 library" -HOMEPAGE="https://www.gnu.org/software/libtasn1/" -SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" - -LICENSE="GPL-3 LGPL-2.1" -SLOT="0/6" # subslot = libtasn1 soname version -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc static-libs test valgrind" - -RESTRICT="!test? ( test )" - -BDEPEND="sys-apps/help2man - virtual/yacc - test? ( valgrind? ( dev-util/valgrind ) )" - -DOCS=( - AUTHORS - ChangeLog - NEWS - README - THANKS -) - -pkg_setup() { - if use doc; then - DOCS+=( doc/libtasn1.pdf ) - HTML_DOCS=( doc/reference/html/. ) - fi -} - -src_prepare() { - default - elibtoolize # for Solaris shared library -} - -multilib_src_configure() { - ECONF_SOURCE="${S}" econf \ - $(use_enable static-libs static) \ - $(multilib_native_use_enable valgrind valgrind-tests) -} - -multilib_src_install_all() { - einstalldocs - find "${D}" -name '*.la' -delete || die -} diff --git a/dev-libs/libtasn1/libtasn1-4.16.0.ebuild b/dev-libs/libtasn1/libtasn1-4.17.0.ebuild similarity index 84% rename from dev-libs/libtasn1/libtasn1-4.16.0.ebuild rename to dev-libs/libtasn1/libtasn1-4.17.0.ebuild index b77d19fe1f..208c031ba4 100644 --- a/dev-libs/libtasn1/libtasn1-4.16.0.ebuild +++ b/dev-libs/libtasn1/libtasn1-4.17.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,7 +11,7 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" LICENSE="GPL-3 LGPL-2.1" SLOT="0/6" # subslot = libtasn1 soname version -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc static-libs test valgrind" RESTRICT="!test? ( test )" diff --git a/dev-libs/libtasn1/libtasn1-4.15.0-r1.ebuild b/dev-libs/libtasn1/libtasn1-4.18.0.ebuild similarity index 60% rename from dev-libs/libtasn1/libtasn1-4.15.0-r1.ebuild rename to dev-libs/libtasn1/libtasn1-4.18.0.ebuild index ea29654ea9..60774a24ab 100644 --- a/dev-libs/libtasn1/libtasn1-4.15.0-r1.ebuild +++ b/dev-libs/libtasn1/libtasn1-4.18.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools multilib-minimal libtool +inherit multilib-minimal libtool DESCRIPTION="ASN.1 library" HOMEPAGE="https://www.gnu.org/software/libtasn1/" @@ -11,8 +11,8 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" LICENSE="GPL-3 LGPL-2.1" SLOT="0/6" # subslot = libtasn1 soname version -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc static-libs test valgrind" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="static-libs test valgrind" RESTRICT="!test? ( test )" @@ -28,27 +28,17 @@ DOCS=( THANKS ) -PATCHES=( - "${FILESDIR}"/${P}-noinst_fuzzer_tool.patch #701928 -) - -pkg_setup() { - if use doc; then - DOCS+=( doc/libtasn1.pdf ) - HTML_DOCS=( doc/reference/html/. ) - fi -} - src_prepare() { default - #elibtoolize # for Solaris shared library - eautoreconf #701928 + elibtoolize # for Solaris shared library } multilib_src_configure() { - ECONF_SOURCE="${S}" econf \ - $(use_enable static-libs static) \ + local myeconfargs=( + $(use_enable static-libs static) $(multilib_native_use_enable valgrind valgrind-tests) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" } multilib_src_install_all() { diff --git a/dev-libs/libtasn1/metadata.xml b/dev-libs/libtasn1/metadata.xml index 727bab4231..9630ac49ef 100644 --- a/dev-libs/libtasn1/metadata.xml +++ b/dev-libs/libtasn1/metadata.xml @@ -1,5 +1,5 @@ - + Gentoo Base System diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest index 131b1010ee..658056250b 100644 --- a/dev-libs/nspr/Manifest +++ b/dev-libs/nspr/Manifest @@ -1 +1 @@ -DIST nspr-4.25.tar.gz 1079633 BLAKE2B 377e5ec0e60cca13f1ee988adb10870bbb6cb9e4eb61e4434152418d4f8d446741a192d7019298ec2669b8e190cacb6a1ca9c4b2838e9b14dd3590ed40facdd2 SHA512 b9aa576e0da37e8729088fe559d94030cf18f277c1f7a30104d3088a804913343ed884645c0adb62144da475e20934b359f897bf3ae9a6ebb5f9daf283d5a562 +DIST nspr-4.33.tar.gz 1078948 BLAKE2B b46e1c02ab7e5c442288a2cba2868166adb9461950d35fcd76074e3340734057f2b1bbeb3c700f38edf3710323ffd34576dd644814c379033de2a380c54d4fe3 SHA512 8064f826c977f1302a341ca7a7aaf7977b5d10102062c030b1d42b856638e3408ab262447e8c7cfd5a98879b9b1043d17ceae66fbb1e5ed86d6bc3531f26667e diff --git a/dev-libs/nspr/metadata.xml b/dev-libs/nspr/metadata.xml index cf9988e49a..83cf207dd4 100644 --- a/dev-libs/nspr/metadata.xml +++ b/dev-libs/nspr/metadata.xml @@ -1,5 +1,5 @@ - + mozilla@gentoo.org diff --git a/dev-libs/nspr/nspr-4.25.ebuild b/dev-libs/nspr/nspr-4.33.ebuild similarity index 93% rename from dev-libs/nspr/nspr-4.25.ebuild rename to dev-libs/nspr/nspr-4.33.ebuild index 22a70f0cfd..7be0ae41e4 100644 --- a/dev-libs/nspr/nspr-4.25.ebuild +++ b/dev-libs/nspr/nspr-4.33.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -8,13 +8,13 @@ inherit autotools toolchain-funcs multilib-minimal MIN_PV="$(ver_cut 2)" DESCRIPTION="Netscape Portable Runtime" -HOMEPAGE="http://www.mozilla.org/projects/nspr/" +HOMEPAGE="https://www.mozilla.org/projects/nspr/" SRC_URI="https://archive.mozilla.org/pub/nspr/releases/v${PV}/src/${P}.tar.gz" LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" -IUSE="debug elibc_musl" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris ~x86-solaris" +IUSE="debug" MULTILIB_CHOST_TOOLS=( /usr/bin/nspr-config @@ -60,7 +60,7 @@ multilib_src_configure() { # We use the standard BUILD_xxx but nspr uses HOST_xxx tc-export_build_env BUILD_CC export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS} - tc-export AR CC CXX RANLIB + tc-export AR AS CC CXX RANLIB [[ ${CBUILD} != ${CHOST} ]] \ && export CROSS_COMPILE=1 \ || unset CROSS_COMPILE @@ -98,6 +98,7 @@ multilib_src_configure() { # Ancient autoconf needs help finding the right tools. LC_ALL="C" ECONF_SOURCE="${S}/nspr" \ ac_cv_path_AR="${AR}" \ + ac_cv_path_AS="${AS}" \ econf "${myconf[@]}" } diff --git a/dev-libs/oniguruma/Manifest b/dev-libs/oniguruma/Manifest index 78f1b0aef4..d08915a62e 100644 --- a/dev-libs/oniguruma/Manifest +++ b/dev-libs/oniguruma/Manifest @@ -1 +1 @@ -DIST onig-6.9.4.tar.gz 908702 BLAKE2B e6e9939f284569408ba01b8551960bc939bbfdca425f8470499f5bb83ead7b6b09898f6f6a09d5d8c26d74d5416f6e5e9e2f00fbe7aa9eb820edb8aa4a3050cc SHA512 ed8f42f6893966c0ee3c168b4fdbcb04b2286ad69ecab43a754c1dbc8fc4656e01319991d776d7144b6a3f90d050781b321432278d83c74c9565c2743851c85b +DIST onig-6.9.7.1.tar.gz 935705 BLAKE2B 1042d5b211f53ad8983eb6b4e53beb165bc948bbef9a85ad12578a9237a804e3dcd0a8105914156230ec30e11f2c8a0372c37919cdde7b2be104c66a8b22fb52 SHA512 17711e0d451c41e74cb3f8ab4e78b0181578ef42cb35dc64e87871c82a41909334cb4eeb03eccdccf6904f699e6e82b0dbb54077138225b9b95471fcdeb8c486 diff --git a/dev-libs/oniguruma/metadata.xml b/dev-libs/oniguruma/metadata.xml index 2dc293268b..9525dd0504 100644 --- a/dev-libs/oniguruma/metadata.xml +++ b/dev-libs/oniguruma/metadata.xml @@ -1,25 +1,27 @@ - + - - cjk@gentoo.org - Cjk - - - Oniguruma is a regular expression library. The characteristics of - this library is that different character encoding for every regular - expression object can be specified. (Supported character encodings: - ASCII, UTF-8, EUC-JP, Shift_JIS) - - - Reflect ABI of libonig.so. - - - - enable CR+NL as line terminator - - - - kkos/oniguruma - + + arfrever.fta@gmail.com + Arfrever Frehtes Taifersar Arahesis + + + cjk@gentoo.org + Cjk + + + Oniguruma is a regular expression library. The characteristics of + this library is that different character encoding for every regular + expression object can be specified. (Supported character encodings: + ASCII, UTF-8, EUC-JP, Shift_JIS) + + + libonig.so soname version number + + + Enable CR+NL as line terminator + + + kkos/oniguruma + diff --git a/dev-libs/oniguruma/oniguruma-6.9.4.ebuild b/dev-libs/oniguruma/oniguruma-6.9.7.1.ebuild similarity index 65% rename from dev-libs/oniguruma/oniguruma-6.9.4.ebuild rename to dev-libs/oniguruma/oniguruma-6.9.7.1.ebuild index e3be7fef9a..f8569eb11d 100644 --- a/dev-libs/oniguruma/oniguruma-6.9.4.ebuild +++ b/dev-libs/oniguruma/oniguruma-6.9.7.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2020 Gentoo Authors +# Copyright 2003-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -21,20 +21,20 @@ fi LICENSE="BSD-2" SLOT="0/5" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris" IUSE="crnl-as-line-terminator static-libs" +BDEPEND="" +DEPEND="" +RDEPEND="" + if [[ "${PV}" != "9999" ]]; then - S="${WORKDIR}/onig-${PV}" + S="${WORKDIR}/onig-$(ver_cut 1-3)" fi DOCS=(AUTHORS HISTORY README{,_japanese} doc/{API,CALLOUTS.API,CALLOUTS.BUILTIN,FAQ,RE}{,.ja} doc/{SYNTAX.md,UNICODE_PROPERTIES}) src_prepare() { - # https://github.com/kkos/oniguruma/issues/167 - # https://github.com/kkos/oniguruma/commit/603f4db48efb49307b7515500496e9e7a92fb779 - sed -e "/^#define MATCH_AT_ERROR_RETURN(err_code)/s/best_len = err_code; goto match_at_end/do {&;} while(0)/" -i src/regexec.c || die - default if [[ "${PV}" == "9999" ]]; then @@ -44,11 +44,12 @@ src_prepare() { multilib_src_configure() { ECONF_SOURCE="${S}" econf \ + --enable-posix-api \ $(use_enable crnl-as-line-terminator) \ $(use_enable static-libs static) } multilib_src_install_all() { einstalldocs - find "${D}" -name "*.la" -type f -delete || die + find "${ED}" -name "*.la" -delete || die } diff --git a/dev-libs/oniguruma/oniguruma-9999.ebuild b/dev-libs/oniguruma/oniguruma-9999.ebuild index 8efae93944..405b066a53 100644 --- a/dev-libs/oniguruma/oniguruma-9999.ebuild +++ b/dev-libs/oniguruma/oniguruma-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2003-2019 Gentoo Authors +# Copyright 2003-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -24,6 +24,10 @@ SLOT="0/5" KEYWORDS="" IUSE="crnl-as-line-terminator static-libs" +BDEPEND="" +DEPEND="" +RDEPEND="" + if [[ "${PV}" != "9999" ]]; then S="${WORKDIR}/onig-${PV}" fi @@ -40,11 +44,12 @@ src_prepare() { multilib_src_configure() { ECONF_SOURCE="${S}" econf \ + --enable-posix-api \ $(use_enable crnl-as-line-terminator) \ $(use_enable static-libs static) } multilib_src_install_all() { einstalldocs - find "${D}" -name "*.la" -type f -delete || die + find "${ED}" -name "*.la" -delete || die } diff --git a/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0.ebuild b/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0-r1.ebuild similarity index 56% rename from dev-perl/Parse-Yapp/Parse-Yapp-1.210.0.ebuild rename to dev-perl/Parse-Yapp/Parse-Yapp-1.210.0-r1.ebuild index 5b8469c9a5..d046e7f7a6 100644 --- a/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0.ebuild +++ b/dev-perl/Parse-Yapp/Parse-Yapp-1.210.0-r1.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=8 DIST_AUTHOR=WBRASWELL DIST_VERSION=1.21 @@ -11,11 +11,14 @@ inherit perl-module DESCRIPTION="Compiles yacc-like LALR grammars to generate Perl OO parser modules" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris" -IUSE="" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris" -RDEPEND="! - + perl@gentoo.org diff --git a/dev-util/re2c/Manifest b/dev-util/re2c/Manifest index 59708a0ee9..705c45b9de 100644 --- a/dev-util/re2c/Manifest +++ b/dev-util/re2c/Manifest @@ -1 +1,2 @@ -DIST re2c-2.0.3.tar.xz 1288996 BLAKE2B 76913a79ad9c237843ccbe86dd05db755da19fc89351b64d6ece6a9a8d53860f1cc12493748fca5b7391cddff4f4668295fb2613c257c128870ea2e7163811ed SHA512 893c533e9847a6236d55ae65e413ddc48b7531b89f5552a3ad79beeac079317ceca4c35710f3c2d88a6de5a3c0a5070a24a8cffb1b4277578a41697ea0e3bf8c +DIST re2c-2.1.1.tar.xz 1340740 BLAKE2B e0e3cdb7ea78324467a8fe3161fe9b0cc1eb44baf9a554b892e1f7f8b8d089e8dca58da347527c595881e1119344858694c133ba0f1676424914f6518adbf4f4 SHA512 13edbe961e0482677aff52ada93129500c10e134b579365f1d0cd180a898251f3060f1fe0597fc6c900c0ea29b1eb28fc2519b0ebfa2ed496a777bf7e138feae +DIST re2c-2.2.tar.xz 1460740 BLAKE2B f9e5920cb31c7ae8fa9f880be30513eee33ad23bcc7d44b24bbcb93376e13b092f6d0bee3304e49f87430be54b868c43115592a2accfdd94cda0d789b234f43b SHA512 8c4f18fa9a2ef6b0b5c03b73b8b7deafcbd7b17baf72e0008c9344296fcb0abeee6024d4a78ccb15b090e37ae67ddd6f2a68b4932331096328530612112ee37a diff --git a/dev-util/re2c/files/re2c-2.1.1-sh.patch b/dev-util/re2c/files/re2c-2.1.1-sh.patch new file mode 100644 index 0000000000..7caa5d7d1a --- /dev/null +++ b/dev-util/re2c/files/re2c-2.1.1-sh.patch @@ -0,0 +1,48 @@ +Matt noticed errors when running ./configure on dash: + ./configure: 5339: test: x: unexpected operator + ./configure: 5386: test: x: unexpected operator + +The change is to use POSIX '=' comparison instead of bash-specific ==. + +Patch-by: Matt Whitlock +https://bugs.gentoo.org/779187 +--- a/configure.ac 2021-03-27 18:25:24.000000000 +0000 ++++ b/configure.ac 2021-03-30 01:34:01.993467424 +0000 +@@ -65,7 +65,7 @@ + # --enable-benchmarks + AC_ARG_ENABLE([benchmarks], [AS_HELP_STRING([--enable-benchmarks], + [build benchmarks])]) +-AM_CONDITIONAL([WITH_BENCHMARKS], [test "x$enable_benchmarks" == "xyes"]) ++AM_CONDITIONAL([WITH_BENCHMARKS], [test "x$enable_benchmarks" = "xyes"]) + AM_COND_IF([WITH_BENCHMARKS], [ + AC_LANG_PUSH([C++]) + AC_CHECK_HEADERS([benchmark/benchmark.h], [], +@@ -79,7 +79,7 @@ + [AS_HELP_STRING([--enable-benchmarks-regenerate], + [regenerate C code for benchmarks])]) + AM_CONDITIONAL([REGEN_BENCHMARKS], +- [test "x$enable_benchmarks_regenerate" == "xyes"]) ++ [test "x$enable_benchmarks_regenerate" = "xyes"]) + + + # checks for programs +--- a/configure ++++ b/configure +@@ -5336,7 +5336,7 @@ if test "${enable_benchmarks+set}" = set; then : + enableval=$enable_benchmarks; + fi + +- if test "x$enable_benchmarks" == "xyes"; then ++ if test "x$enable_benchmarks" = "xyes"; then + WITH_BENCHMARKS_TRUE= + WITH_BENCHMARKS_FALSE='#' + else +@@ -5383,7 +5383,7 @@ if test "${enable_benchmarks_regenerate+set}" = set; then : + enableval=$enable_benchmarks_regenerate; + fi + +- if test "x$enable_benchmarks_regenerate" == "xyes"; then ++ if test "x$enable_benchmarks_regenerate" = "xyes"; then + REGEN_BENCHMARKS_TRUE= + REGEN_BENCHMARKS_FALSE='#' + else diff --git a/dev-util/re2c/metadata.xml b/dev-util/re2c/metadata.xml index 0093ef8412..24c01d112f 100644 --- a/dev-util/re2c/metadata.xml +++ b/dev-util/re2c/metadata.xml @@ -1,12 +1,9 @@ - + robbat2@gentoo.org - - slyfox@gentoo.org - re2c skvadrik/re2c diff --git a/dev-util/re2c/re2c-2.0.3.ebuild b/dev-util/re2c/re2c-2.1.1-r1.ebuild similarity index 56% rename from dev-util/re2c/re2c-2.0.3.ebuild rename to dev-util/re2c/re2c-2.1.1-r1.ebuild index aba4c616a4..854354f082 100644 --- a/dev-util/re2c/re2c-2.0.3.ebuild +++ b/dev-util/re2c/re2c-2.1.1-r1.ebuild @@ -1,17 +1,31 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 +inherit autotools + DESCRIPTION="tool for generating C-based recognizers from regular expressions" HOMEPAGE="http://re2c.org/" SRC_URI="https://github.com/skvadrik/re2c/releases/download/${PV}/${P}.tar.xz" LICENSE="public-domain" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="debug" +PATCHES=("${FILESDIR}"/${P}-sh.patch) + +src_prepare() { + default + + # Only needed for the sh patch + # Despite the patch modifying the configure directly, + # this is sometimes fragile and triggers maintainer mode anyway. + # bug #779187 + eautoreconf +} + src_configure() { econf \ --enable-golang \ diff --git a/dev-util/re2c/re2c-2.2.ebuild b/dev-util/re2c/re2c-2.2.ebuild new file mode 100644 index 0000000000..2c4d64c193 --- /dev/null +++ b/dev-util/re2c/re2c-2.2.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8,9,10} ) + +inherit autotools python-any-r1 + +DESCRIPTION="tool for generating C-based recognizers from regular expressions" +HOMEPAGE="http://re2c.org/" +SRC_URI="https://github.com/skvadrik/re2c/releases/download/${PV}/${P}.tar.xz" + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="debug test" + +RESTRICT="!test? ( test )" + +# python is used only as a test driver +BDEPEND="test? ( ${PYTHON_DEPS} )" + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_configure() { + econf \ + --enable-golang \ + ac_cv_path_BISON="no" \ + $(use_enable debug) +} + +src_install() { + default + + docompress -x /usr/share/doc/${PF}/examples + dodoc -r README.md CHANGELOG examples +} diff --git a/eclass/autotools-utils.eclass b/eclass/autotools-utils.eclass deleted file mode 100644 index 0addf76a92..0000000000 --- a/eclass/autotools-utils.eclass +++ /dev/null @@ -1,384 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# @ECLASS: autotools-utils.eclass -# @MAINTAINER: -# Maciej Mrozowski -# Michał Górny -# @SUPPORTED_EAPIS: 2 3 4 5 -# @BLURB: common ebuild functions for autotools-based packages -# @DESCRIPTION: -# autotools-utils.eclass is autotools.eclass(5) and base.eclass(5) wrapper -# providing all inherited features along with econf arguments as Bash array, -# out of source build with overridable build dir location, static archives -# handling, libtool files removal. -# -# Please note that autotools-utils does not support mixing of its phase -# functions with regular econf/emake calls. If necessary, please call -# autotools-utils_src_compile instead of the latter. -# -# @EXAMPLE: -# Typical ebuild using autotools-utils.eclass: -# -# @CODE -# EAPI="2" -# -# inherit autotools-utils -# -# DESCRIPTION="Foo bar application" -# HOMEPAGE="http://example.org/foo/" -# SRC_URI="mirror://sourceforge/foo/${P}.tar.bz2" -# -# LICENSE="LGPL-2.1" -# KEYWORDS="" -# SLOT="0" -# IUSE="debug doc examples qt4 static-libs tiff" -# -# CDEPEND=" -# media-libs/libpng:0 -# qt4? ( -# dev-qt/qtcore:4 -# dev-qt/qtgui:4 -# ) -# tiff? ( media-libs/tiff:0 ) -# " -# RDEPEND="${CDEPEND} -# !media-gfx/bar -# " -# DEPEND="${CDEPEND} -# doc? ( app-doc/doxygen ) -# " -# -# # bug 123456 -# AUTOTOOLS_IN_SOURCE_BUILD=1 -# -# DOCS=(AUTHORS ChangeLog README "Read me.txt" TODO) -# -# PATCHES=( -# "${FILESDIR}/${P}-gcc44.patch" # bug 123458 -# "${FILESDIR}/${P}-as-needed.patch" -# "${FILESDIR}/${P}-unbundle_libpng.patch" -# ) -# -# src_configure() { -# local myeconfargs=( -# $(use_enable debug) -# $(use_with qt4) -# $(use_enable threads multithreading) -# $(use_with tiff) -# ) -# autotools-utils_src_configure -# } -# -# src_compile() { -# autotools-utils_src_compile -# use doc && autotools-utils_src_compile docs -# } -# -# src_install() { -# use doc && HTML_DOCS=("${BUILD_DIR}/apidocs/html/") -# autotools-utils_src_install -# if use examples; then -# dobin "${BUILD_DIR}"/foo_example{1,2,3} \\ -# || die 'dobin examples failed' -# fi -# } -# -# @CODE - -# Keep variable names synced with cmake-utils and the other way around! - -case ${EAPI:-0} in - 6) die "${ECLASS}.eclass is banned in EAPI ${EAPI}";; - 4|5) ;; - *) die "EAPI=${EAPI} is not supported" ;; -esac - -# @ECLASS-VARIABLE: AUTOTOOLS_AUTORECONF -# @DEFAULT_UNSET -# @DESCRIPTION: -# Set to a non-empty value before calling inherit to enable running autoreconf -# in src_prepare() and adding autotools dependencies. -# -# This is usually necessary when using live sources or applying patches -# modifying configure.ac or Makefile.am files. Note that in the latter case -# setting this variable is obligatory even though the eclass will work without -# it (to add the necessary dependencies). -# -# The eclass will try to determine the correct autotools to run including a few -# external tools: gettext, glib-gettext, intltool, gtk-doc, gnome-doc-prepare. -# If your tool is not supported, please open a bug and we'll add support for it. -# -# Note that dependencies are added for autoconf, automake and libtool only. -# If your package needs one of the external tools listed above, you need to add -# appropriate packages to DEPEND yourself. -[[ ${AUTOTOOLS_AUTORECONF} ]] || : ${AUTOTOOLS_AUTO_DEPEND:=no} - -# eutils for eqawarn, path_exists -inherit autotools epatch eutils libtool ltprune - -EXPORT_FUNCTIONS src_prepare src_configure src_compile src_install src_test - -# @ECLASS-VARIABLE: BUILD_DIR -# @DEFAULT_UNSET -# @DESCRIPTION: -# Build directory, location where all autotools generated files should be -# placed. For out of source builds it defaults to ${WORKDIR}/${P}_build. -# -# This variable has been called AUTOTOOLS_BUILD_DIR formerly. -# It is set under that name for compatibility. - -# @ECLASS-VARIABLE: AUTOTOOLS_IN_SOURCE_BUILD -# @DEFAULT_UNSET -# @DESCRIPTION: -# Set to enable in-source build. - -# @ECLASS-VARIABLE: ECONF_SOURCE -# @DEFAULT_UNSET -# @DESCRIPTION: -# Specify location of autotools' configure script. By default it uses ${S}. - -# @ECLASS-VARIABLE: DOCS -# @DEFAULT_UNSET -# @DESCRIPTION: -# Array containing documents passed to dodoc command. -# -# In EAPIs 4+, can list directories as well. -# -# Example: -# @CODE -# DOCS=( NEWS README ) -# @CODE - -# @ECLASS-VARIABLE: HTML_DOCS -# @DEFAULT_UNSET -# @DESCRIPTION: -# Array containing documents passed to dohtml command. -# -# Example: -# @CODE -# HTML_DOCS=( doc/html/ ) -# @CODE - -# @ECLASS-VARIABLE: PATCHES -# @DEFAULT_UNSET -# @DESCRIPTION: -# PATCHES array variable containing all various patches to be applied. -# -# Example: -# @CODE -# PATCHES=( "${FILESDIR}"/${P}-mypatch.patch ) -# @CODE - -# @ECLASS-VARIABLE: AUTOTOOLS_PRUNE_LIBTOOL_FILES -# @DEFAULT_UNSET -# @DESCRIPTION: -# Sets the mode of pruning libtool files. The values correspond to -# prune_libtool_files parameters, with leading dashes stripped. -# -# Defaults to pruning the libtool files when static libraries are not -# installed or can be linked properly without them. Libtool files -# for modules (plugins) will be kept in case plugin loader needs them. -# -# If set to 'modules', the .la files for modules will be removed -# as well. This is often the preferred option. -# -# If set to 'all', all .la files will be removed unconditionally. This -# option is discouraged and shall be used only if 'modules' does not -# remove the files. -# -# If set to 'none', no .la files will be pruned ever. Use in corner -# cases only. - -# Determine using IN or OUT source build -_check_build_dir() { - : ${ECONF_SOURCE:=${S}} - # Respect both the old variable and the new one, depending - # on which one was set by the ebuild. - if [[ ! ${BUILD_DIR} && ${AUTOTOOLS_BUILD_DIR} ]]; then - eqawarn "The AUTOTOOLS_BUILD_DIR variable has been renamed to BUILD_DIR." - eqawarn "Please migrate the ebuild to use the new one." - - # In the next call, both variables will be set already - # and we'd have to know which one takes precedence. - _RESPECT_AUTOTOOLS_BUILD_DIR=1 - fi - - if [[ ${_RESPECT_AUTOTOOLS_BUILD_DIR} ]]; then - BUILD_DIR=${AUTOTOOLS_BUILD_DIR:-${WORKDIR}/${P}_build} - else - if [[ -n ${AUTOTOOLS_IN_SOURCE_BUILD} ]]; then - : ${BUILD_DIR:=${ECONF_SOURCE}} - else - : ${BUILD_DIR:=${WORKDIR}/${P}_build} - fi - fi - - # Backwards compatibility for getting the value. - AUTOTOOLS_BUILD_DIR=${BUILD_DIR} - echo ">>> Working in BUILD_DIR: \"${BUILD_DIR}\"" -} - -# @FUNCTION: autotools-utils_src_prepare -# @DESCRIPTION: -# The src_prepare function. -# -# Supporting PATCHES array and user patches. See base.eclass(5) for reference. -autotools-utils_src_prepare() { - debug-print-function ${FUNCNAME} "$@" - - local want_autoreconf=${AUTOTOOLS_AUTORECONF} - - [[ ${PATCHES} ]] && epatch "${PATCHES[@]}" - - at_checksum() { - find '(' -name 'Makefile.am' \ - -o -name 'configure.ac' \ - -o -name 'configure.in' ')' \ - -exec cksum {} + | sort -k2 - } - - [[ ! ${want_autoreconf} ]] && local checksum=$(at_checksum) - epatch_user - if [[ ! ${want_autoreconf} ]]; then - if [[ ${checksum} != $(at_checksum) ]]; then - einfo 'Will autoreconfigure due to user patches applied.' - want_autoreconf=yep - fi - fi - - [[ ${want_autoreconf} ]] && eautoreconf - elibtoolize --patch-only -} - -# @FUNCTION: autotools-utils_src_configure -# @DESCRIPTION: -# The src_configure function. For out of source build it creates build -# directory and runs econf there. Configuration parameters defined -# in myeconfargs are passed here to econf. Additionally following USE -# flags are known: -# -# IUSE="static-libs" passes --enable-shared and either --disable-static/--enable-static -# to econf respectively. - -# @VARIABLE: myeconfargs -# @DEFAULT_UNSET -# @DESCRIPTION: -# Optional econf arguments as Bash array. Should be defined before calling src_configure. -# @CODE -# src_configure() { -# local myeconfargs=( -# --disable-readline -# --with-confdir="/etc/nasty foo confdir/" -# $(use_enable debug cnddebug) -# $(use_enable threads multithreading) -# ) -# autotools-utils_src_configure -# } -# @CODE -autotools-utils_src_configure() { - debug-print-function ${FUNCNAME} "$@" - - [[ -z ${myeconfargs+1} || $(declare -p myeconfargs) == 'declare -a'* ]] \ - || die 'autotools-utils.eclass: myeconfargs has to be an array.' - - # Common args - local econfargs=() - - _check_build_dir - if "${ECONF_SOURCE}"/configure --help 2>&1 | grep -q '^ *--docdir='; then - econfargs+=( - --docdir="${EPREFIX}"/usr/share/doc/${PF} - ) - fi - - # Handle static-libs found in IUSE, disable them by default - if in_iuse static-libs; then - econfargs+=( - --enable-shared - $(use_enable static-libs static) - ) - fi - - # Append user args - econfargs+=("${myeconfargs[@]}") - - mkdir -p "${BUILD_DIR}" || die - pushd "${BUILD_DIR}" > /dev/null || die - econf "${econfargs[@]}" "$@" - popd > /dev/null || die -} - -# @FUNCTION: autotools-utils_src_compile -# @DESCRIPTION: -# The autotools src_compile function, invokes emake in specified BUILD_DIR. -autotools-utils_src_compile() { - debug-print-function ${FUNCNAME} "$@" - - _check_build_dir - pushd "${BUILD_DIR}" > /dev/null || die - emake "$@" || die 'emake failed' - popd > /dev/null || die -} - -# @FUNCTION: autotools-utils_src_install -# @DESCRIPTION: -# The autotools src_install function. Runs emake install, unconditionally -# removes unnecessary static libs (based on shouldnotlink libtool property) -# and removes unnecessary libtool files when static-libs USE flag is defined -# and unset. -# -# DOCS and HTML_DOCS arrays are supported. See base.eclass(5) for reference. -autotools-utils_src_install() { - debug-print-function ${FUNCNAME} "$@" - - _check_build_dir - pushd "${BUILD_DIR}" > /dev/null || die - emake DESTDIR="${D}" "$@" install || die "emake install failed" - popd > /dev/null || die - - # XXX: support installing them from builddir as well? - if declare -p DOCS &>/dev/null; then - # an empty list == don't install anything - if [[ ${DOCS[@]} ]]; then - # dies by itself - dodoc -r "${DOCS[@]}" - fi - else - local f - # same list as in PMS - for f in README* ChangeLog AUTHORS NEWS TODO CHANGES \ - THANKS BUGS FAQ CREDITS CHANGELOG; do - if [[ -s ${f} ]]; then - dodoc "${f}" || die "(default) dodoc ${f} failed" - fi - done - fi - if [[ ${HTML_DOCS} ]]; then - dohtml -r "${HTML_DOCS[@]}" || die "dohtml failed" - fi - - # Remove libtool files and unnecessary static libs - local prune_ltfiles=${AUTOTOOLS_PRUNE_LIBTOOL_FILES} - if [[ ${prune_ltfiles} != none ]]; then - prune_libtool_files ${prune_ltfiles:+--${prune_ltfiles}} - fi -} - -# @FUNCTION: autotools-utils_src_test -# @DESCRIPTION: -# The autotools src_test function. Runs emake check in build directory. -autotools-utils_src_test() { - debug-print-function ${FUNCNAME} "$@" - - _check_build_dir - pushd "${BUILD_DIR}" > /dev/null || die - - if make -ni check "${@}" &>/dev/null; then - emake check "${@}" || die 'emake check failed.' - elif make -ni test "${@}" &>/dev/null; then - emake test "${@}" || die 'emake test failed.' - fi - - popd > /dev/null || die -} diff --git a/eclass/epunt-cxx.eclass b/eclass/epunt-cxx.eclass deleted file mode 100644 index 30802af340..0000000000 --- a/eclass/epunt-cxx.eclass +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# @ECLASS: epunt-cxx.eclass -# @MAINTAINER: -# base-system@gentoo.org -# @BLURB: A function to punt C++ compiler checks from autoconf -# @DESCRIPTION: -# Support for punting C++ compiler checks from autoconf (based -# on ELT-patches). - -if [[ -z ${_EPUNT_CXX_ECLASS} ]]; then - -# eutils for eqawarn -inherit eutils - -DEPEND=">=app-portage/elt-patches-20170317" - -# @FUNCTION: epunt_cxx -# @USAGE: [dir to scan] -# @DESCRIPTION: -# Many configure scripts wrongly bail when a C++ compiler could not be -# detected. If dir is not specified, then it defaults to ${S}. -# -# https://bugs.gentoo.org/73450 -epunt_cxx() { - local dir=$1 - [[ -z ${dir} ]] && dir=${S} - ebegin "Removing useless C++ checks" - local f p any_found - while IFS= read -r -d '' f; do - for p in "${EPREFIX}/usr/share/elt-patches"/nocxx/*.patch ; do - if patch --no-backup-if-mismatch -p1 "${f}" "${p}" >/dev/null ; then - any_found=1 - break - fi - done - done < <(find "${dir}" -name configure -print0) - - if [[ -z ${any_found} ]]; then - eqawarn "epunt_cxx called unnecessarily (no C++ checks to punt)." - fi - eend 0 -} - -_EPUNT_CXX_ECLASS=1 -fi #_EPUNT_CXX_ECLASS diff --git a/eclass/go-module.eclass b/eclass/go-module.eclass index 053861a1a1..817f8a9fd3 100644 --- a/eclass/go-module.eclass +++ b/eclass/go-module.eclass @@ -1,4 +1,4 @@ -# Copyright 2019-2020 Gentoo Authors +# Copyright 2019-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: go-module.eclass @@ -12,20 +12,38 @@ # @DESCRIPTION: # This eclass provides basic settings and functions needed by all software # written in the go programming language that uses modules. +# If the software you are packaging has a file named go.mod in its top level +# directory, it uses modules. +# +# Modules have been the preferred method of tracking dependencies in software +# written in Go since version 1.16, +# so if the software isn't using modules, it should be updated. # -# If the software you are packaging has a file named go.mod in its top -# level directory, it uses modules and your ebuild should inherit this -# eclass. If it does not, your ebuild should use the golang-* eclasses. +# Also, if the top level go.mod file contains a go directive that +# specifies a version of go prior to 1.14, this should be reported +# upstream and updated. # -# If, besides go.mod, your software has a directory named vendor in its +# If the software has a directory named vendor in its # top level directory, the only thing you need to do is inherit the -# eclass. If there is no vendor directory, you need to also populate -# EGO_SUM and call go-module_set_globals as discussed below. +# eclass. If it doesn't, you need to also create a dependency tarball and +# host it somewhere, for example in your dev space. +# +# Here is an example of how to create a dependency tarball. +# The base directory in the GOMODCACHE setting must be go-mod in order +# to match the settings in this eclass. +# +# @CODE +# +# $ cd /path/to/project +# $ GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw +# $ tar -acf project-1.0-deps.tar.xz go-mod +# +# @CODE # # Since Go programs are statically linked, it is important that your ebuild's # LICENSE= setting includes the licenses of all statically linked # dependencies. So please make sure it is accurate. -# You can use a utility like dev-util/golicense (network connectivity is +# You can use a utility like dev-go/golicense (network connectivity is # required) to extract this information from the compiled binary. # # @EXAMPLE: @@ -34,15 +52,9 @@ # # inherit go-module # -# EGO_SUM=( -# "github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59/go.mod" -# "github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59" -# ) -# -# go-module_set_globals -# -# SRC_URI="https://github.com/example/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz -# ${EGO_SUM_SRC_URI}" +# SRC_URI="https://github.com/example/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +# Add this line if you have a dependency tarball. +# SRC_URI+=" ${P}-deps.tar.xz" # # @CODE @@ -55,13 +67,17 @@ if [[ -z ${_GO_MODULE} ]]; then _GO_MODULE=1 -BDEPEND=">=dev-lang/go-1.12" +if [[ ! ${GO_OPTIONAL} ]]; then + BDEPEND=">=dev-lang/go-1.16" + + # Workaround for pkgcheck false positive: https://github.com/pkgcore/pkgcheck/issues/214 + # MissingUnpackerDep: version ...: missing BDEPEND="app-arch/unzip" + # Added here rather than to each affected package, so it can be cleaned up just + # once when pkgcheck is improved. + BDEPEND+=" app-arch/unzip" -# Workaround for pkgcheck false positive: https://github.com/pkgcore/pkgcheck/issues/214 -# MissingUnpackerDep: version ...: missing BDEPEND="app-arch/unzip" -# Added here rather than to each affected package, so it can be cleaned up just -# once when pkgcheck is improved. -BDEPEND+=" app-arch/unzip" + EXPORT_FUNCTIONS src_unpack +fi # Force go to build in module mode. # In this mode the GOPATH environment variable is ignored. @@ -72,12 +88,15 @@ export GO111MODULE=on # See "go help environment" for information on this setting export GOCACHE="${T}/go-build" +# Set the default for the go module cache +# See "go help environment" for information on this setting +export GOMODCACHE="${WORKDIR}/go-mod" + # The following go flags should be used for all builds. +# -modcacherw makes the build cache read/write # -v prints the names of packages as they are compiled # -x prints commands as they are executed -# -mod=readonly do not update go.mod/go.sum but fail if updates are needed -# -mod=vendor use the vendor directory instead of downloading dependencies -export GOFLAGS="-v -x -mod=readonly" +export GOFLAGS="-modcacherw -v -x" # Do not complain about CFLAGS etc since go projects do not use them. QA_FLAGS_IGNORED='.*' @@ -85,16 +104,29 @@ QA_FLAGS_IGNORED='.*' # Go packages should not be stripped with strip(1). RESTRICT+=" strip" -EXPORT_FUNCTIONS src_unpack pkg_postinst - # @ECLASS-VARIABLE: EGO_SUM +# @DEPRECATED: # @DESCRIPTION: -# This is an array based on the go.sum content from inside the target package. -# Each array entry must be quoted and contain information from a single -# line from go.sum. +# This is replaced by a dependency tarball, see above for how to create +# one. +# +# This array is based on the contents of the go.sum file from the top +# level directory of the software you are packaging. Each entry must be +# quoted and contain the first two fields of a line from go.sum. +# +# You can use some combination of sed/awk/cut to extract the +# contents of EGO_SUM or use the dev-go/get-ego-vendor tool. +# +# One manual way to do this is the following: +# +# @CODE +# +# cat go.sum | cut -d" " -f1,2 | awk '{print "\t\"" $0 "\""}' +# +# @CODE # # The format of go.sum is described upstream here: -# https://tip.golang.org/cmd/go/#hdr-Module_authentication_using_go_sum +# https://go.dev/ref/mod#go-sum-files # # For inclusion in EGO_SUM, the h1: value and other future extensions SHOULD be # omitted at this time. The EGO_SUM parser will accept them for ease of ebuild @@ -121,6 +153,7 @@ EXPORT_FUNCTIONS src_unpack pkg_postinst # go.sum copy of the Hash1 values during building of the package. # @ECLASS-VARIABLE: _GOMODULE_GOPROXY_BASEURI +# @DEPRECATED: # @DESCRIPTION: # Golang module proxy service to fetch module files from. Note that the module # proxy generally verifies modules via the Hash1 code. @@ -143,13 +176,37 @@ EXPORT_FUNCTIONS src_unpack pkg_postinst : "${_GOMODULE_GOPROXY_BASEURI:=mirror://goproxy/}" # @ECLASS-VARIABLE: _GOMODULE_GOSUM_REVERSE_MAP +# @DEPRECATED: # @DESCRIPTION: # Mapping back from Gentoo distfile name to upstream distfile path. # Associative array to avoid O(N*M) performance when populating the GOPROXY # directory structure. declare -A -g _GOMODULE_GOSUM_REVERSE_MAP +# @ECLASS-VARIABLE: GO_OPTIONAL +# @DEFAULT_UNSET +# @PRE_INHERIT +# @DESCRIPTION: +# If set to a non-null value before inherit, the Go part of the +# ebuild will be considered optional. No dependencies will be added and +# no phase functions will be exported. You will need to set BDEPEND and +# call go-module_src_unpack in your ebuild. + +# @FUNCTION: ego +# @USAGE: [...] +# @DESCRIPTION: +# Call go, passing the supplied arguments. +# This function dies if go fails. It also supports being called via 'nonfatal'. +# If you need to call go directly in your ebuilds, this is the way it +# should be done. +ego() { + set -- go "$@" + echo "$@" >&2 + "$@" || die -n "${*} failed" +} + # @FUNCTION: go-module_set_globals +# @DEPRECATED: # @DESCRIPTION: # Convert the information in EGO_SUM for other usage in the ebuild. # - Populates EGO_SUM_SRC_URI that can be added to SRC_URI @@ -240,6 +297,7 @@ go-module_set_globals() { } # @FUNCTION: go-module_setup_proxy +# @DEPRECATED: # @DESCRIPTION: # If your ebuild redefines src_unpack and uses EGO_SUM you need to call # this function in src_unpack. @@ -283,11 +341,14 @@ go-module_setup_proxy() { # @FUNCTION: go-module_src_unpack # @DESCRIPTION: # If EGO_SUM is set, unpack the base tarball(s) and set up the -# local go proxy. +# local go proxy. Also warn that this usage is deprecated. # - Otherwise, if EGO_VENDOR is set, bail out. # - Otherwise do a normal unpack. go-module_src_unpack() { if [[ "${#EGO_SUM[@]}" -gt 0 ]]; then + eqawarn "This ebuild uses EGO_SUM which is deprecated" + eqawarn "Please migrate to a dependency tarball" + eqawarn "This will become a fatal error in the future" _go-module_src_unpack_gosum elif [[ "${#EGO_VENDOR[@]}" -gt 0 ]]; then eerror "${EBUILD} is using EGO_VENDOR which is no longer supported" @@ -298,6 +359,7 @@ go-module_src_unpack() { } # @FUNCTION: _go-module_src_unpack_gosum +# @DEPRECATED: # @DESCRIPTION: # Populate a GOPROXY directory hierarchy with distfiles from EGO_SUM and # unpack the base distfiles. @@ -343,6 +405,7 @@ _go-module_src_unpack_gosum() { } # @FUNCTION: _go-module_gosum_synthesize_files +# @DEPRECATED: # @DESCRIPTION: # Given a path & version, populate all Goproxy metadata files which aren't # needed to be downloaded directly. @@ -370,6 +433,7 @@ _go-module_gosum_synthesize_files() { } # @FUNCTION: _go-module_src_unpack_verify_gosum +# @DEPRECATED: # @DESCRIPTION: # Validate the Go modules declared by EGO_SUM are sufficient to cover building # the package, without actually building it yet. @@ -387,7 +451,7 @@ _go-module_src_unpack_verify_gosum() { # This will print 'downloading' messages, but it's accessing content from # the $GOPROXY file:/// URL! einfo "Tidying go.mod/go.sum" - go mod tidy >/dev/null + nonfatal ego mod tidy >/dev/null # This used to call 'go get' to verify by fetching everything from the main # go.mod. However 'go get' also turns out to recursively try to fetch @@ -413,26 +477,12 @@ go-module_live_vendor() { die "${FUNCNAME} only allowed when upstream isn't vendoring" pushd "${S}" >& /dev/null || die - go mod vendor || die + ego mod vendor popd >& /dev/null || die } -# @FUNCTION: go-module_pkg_postinst -# @DESCRIPTION: -# Display a warning about security updates for Go programs. -go-module_pkg_postinst() { - debug-print-function "${FUNCNAME}" "$@" - [[ -n ${REPLACING_VERSIONS} ]] && return 0 - ewarn "${PN} is written in the Go programming language." - ewarn "Since this language is statically linked, security" - ewarn "updates will be handled in individual packages and will be" - ewarn "difficult for us to track as a distribution." - ewarn "For this reason, please update any go packages asap when new" - ewarn "versions enter the tree or go stable if you are running the" - ewarn "stable tree." -} - # @FUNCTION: _go-module_gomod_encode +# @DEPRECATED: # @DESCRIPTION: # Encode the name(path) of a Golang module in the format expected by Goproxy. # diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass index 11a890889e..a0942f0e55 100644 --- a/eclass/linux-info.eclass +++ b/eclass/linux-info.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: linux-info.eclass @@ -33,8 +33,10 @@ # @DESCRIPTION: # A string containing the directory of the target kernel sources. The default value is # "/usr/src/linux" +KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}" # @ECLASS-VARIABLE: CONFIG_CHECK +# @DEFAULT_UNSET # @DESCRIPTION: # A string containing a list of .config options to check for before # proceeding with the install. @@ -57,13 +59,20 @@ # sources. # @ECLASS-VARIABLE: ERROR_ +# @DEFAULT_UNSET # @DESCRIPTION: # A string containing the error message to display when the check against CONFIG_CHECK # fails. should reference the appropriate option used in CONFIG_CHECK. # -# e.g.: ERROR_MTRR="MTRR exists in the .config but shouldn't!!" +# e.g.: ERROR_MTRR="MTRR exists in the .config but shouldn't!!" +# +# CONFIG_CHECK="CFG" with ERROR_="Error Message" will die +# CONFIG_CHECK="~CFG" with ERROR_="Error Message" calls eerror without dieing +# CONFIG_CHECK="~CFG" with WARNING_="Warning Message" calls ewarn without dieing + # @ECLASS-VARIABLE: KBUILD_OUTPUT +# @DEFAULT_UNSET # @DESCRIPTION: # A string passed on commandline, or set from the kernel makefile. It contains the directory # which is to be used as the kernel object directory. @@ -71,36 +80,53 @@ # There are also a couple of variables which are set by this, and shouldn't be # set by hand. These are as follows: +# @ECLASS-VARIABLE: KERNEL_MAKEFILE +# @INTERNAL +# @DESCRIPTION: +# According to upstream documentation, by default, when make looks for the makefile, it tries +# the following names, in order: GNUmakefile, makefile and Makefile. Set this variable to the +# proper Makefile name or the eclass will search in this order for it. +# See https://www.gnu.org/software/make/manual/make.html +: ${KERNEL_MAKEFILE:=""} + # @ECLASS-VARIABLE: KV_FULL +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's a string containing the full kernel version. ie: 2.6.9-gentoo-johnm-r1 # @ECLASS-VARIABLE: KV_MAJOR +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's an integer containing the kernel major version. ie: 2 # @ECLASS-VARIABLE: KV_MINOR +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's an integer containing the kernel minor version. ie: 6 # @ECLASS-VARIABLE: KV_PATCH +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's an integer containing the kernel patch version. ie: 9 # @ECLASS-VARIABLE: KV_EXTRA +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's a string containing the kernel EXTRAVERSION. ie: -gentoo # @ECLASS-VARIABLE: KV_LOCAL +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's a string containing the kernel LOCALVERSION concatenation. ie: -johnm # @ECLASS-VARIABLE: KV_DIR +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's a string containing the kernel source directory, will be null if # KERNEL_DIR is invalid. # @ECLASS-VARIABLE: KV_OUT_DIR +# @OUTPUT_VARIABLE # @DESCRIPTION: # A read-only variable. It's a string containing the kernel object directory, will be KV_DIR unless # KBUILD_OUTPUT is used. This should be used for referencing .config. @@ -111,13 +137,6 @@ inherit toolchain-funcs EXPORT_FUNCTIONS pkg_setup -IUSE="kernel_linux" - -# Overwritable environment Var's -# --------------------------------------- -KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}" - - # Bug fixes # fix to bug #75034 case ${ARCH} in @@ -183,9 +202,11 @@ getfilevar() { unset ARCH # We use nonfatal because we want the caller to take care of things #373151 + # Pass need-config= to make to avoid config check in kernel Makefile. + # Pass dot-config=0 to avoid the config check in kernels prior to 5.4. [[ ${EAPI:-0} == [0123] ]] && nonfatal() { "$@"; } echo -e "e:\\n\\t@echo \$(${1})\\ninclude ${basefname}" | \ - nonfatal emake -C "${basedname}" M="${T}" ${BUILD_FIXES} -s -f - 2>/dev/null + nonfatal emake -C "${basedname}" --no-print-directory M="${T}" dot-config=0 need-config= ${BUILD_FIXES} -s -f - 2>/dev/null ARCH=${myARCH} fi @@ -383,7 +404,7 @@ kernel_is() { linux-info_get_any_version # Now we can continue - local operator test value + local operator case ${1#-} in lt) operator="-lt"; shift;; @@ -395,9 +416,10 @@ kernel_is() { esac [[ $# -gt 3 ]] && die "Error in kernel-2_kernel_is(): too many parameters" - : $(( test = (KV_MAJOR << 16) + (KV_MINOR << 8) + KV_PATCH )) - : $(( value = (${1:-${KV_MAJOR}} << 16) + (${2:-${KV_MINOR}} << 8) + ${3:-${KV_PATCH}} )) - [ ${test} ${operator} ${value} ] + ver_test \ + "${KV_MAJOR:-0}.${KV_MINOR:-0}.${KV_PATCH:-0}" \ + "${operator}" \ + "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" } get_localversion() { @@ -445,7 +467,7 @@ get_version_warning_done= # # The kernel version variables (KV_MAJOR, KV_MINOR, KV_PATCH, KV_EXTRA and KV_LOCAL) are also set. # -# The KV_DIR is set using the KERNEL_DIR env var, the KV_DIR_OUT is set using a valid +# The KV_DIR is set using the KERNEL_DIR env var, the KV_OUT_DIR is set using a valid # KBUILD_OUTPUT (in a decreasing priority list, we look for the env var, makefile var or the # symlink /lib/modules/${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}/build). get_version() { @@ -497,7 +519,9 @@ get_version() { qeinfo " ${KV_DIR}" fi - if [ ! -s "${KV_DIR}/Makefile" ] + kernel_get_makefile + + if [[ ! -s ${KERNEL_MAKEFILE} ]] then if [ -z "${get_version_warning_done}" ]; then get_version_warning_done=1 @@ -513,9 +537,6 @@ get_version() { # do we pass KBUILD_OUTPUT on the CLI? local OUTPUT_DIR=${KBUILD_OUTPUT} - # keep track of it - KERNEL_MAKEFILE="${KV_DIR}/Makefile" - if [[ -z ${OUTPUT_DIR} ]]; then # Decide the function used to extract makefile variables. local mkfunc=$(get_makefile_extract_function "${KERNEL_MAKEFILE}") @@ -526,14 +547,11 @@ get_version() { # And contrary to existing functions I feel we shouldn't trust the # directory name to find version information as this seems insane. - # So we parse ${KERNEL_MAKEFILE}. We should be able to trust that - # the Makefile is simple enough to use the noexec extract function. - # This has been true for every release thus far, and it's faster - # than using make to evaluate the Makefile every time. - KV_MAJOR=$(getfilevar_noexec VERSION "${KERNEL_MAKEFILE}") - KV_MINOR=$(getfilevar_noexec PATCHLEVEL "${KERNEL_MAKEFILE}") - KV_PATCH=$(getfilevar_noexec SUBLEVEL "${KERNEL_MAKEFILE}") - KV_EXTRA=$(getfilevar_noexec EXTRAVERSION "${KERNEL_MAKEFILE}") + # So we parse ${KERNEL_MAKEFILE}. + KV_MAJOR=$(getfilevar VERSION "${KERNEL_MAKEFILE}") + KV_MINOR=$(getfilevar PATCHLEVEL "${KERNEL_MAKEFILE}") + KV_PATCH=$(getfilevar SUBLEVEL "${KERNEL_MAKEFILE}") + KV_EXTRA=$(getfilevar EXTRAVERSION "${KERNEL_MAKEFILE}") if [ -z "${KV_MAJOR}" -o -z "${KV_MINOR}" -o -z "${KV_PATCH}" ] then @@ -610,34 +628,27 @@ get_running_version() { die "${FUNCNAME}() called on non-Linux system, please fix the ebuild" fi - KV_FULL=$(uname -r) - - if [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile && -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source) - KBUILD_OUTPUT=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build) - unset KV_FULL - get_version - return $? - elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/source/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/source) - unset KV_FULL - get_version - return $? - elif [[ -f ${ROOT%/}/lib/modules/${KV_FULL}/build/Makefile ]]; then - KERNEL_DIR=$(readlink -f ${ROOT%/}/lib/modules/${KV_FULL}/build) - unset KV_FULL - get_version - return $? - else - # This handles a variety of weird kernel versions. Make sure to update - # tests/linux-info_get_running_version.sh if you want to change this. - local kv_full=${KV_FULL//[-+_]*} - KV_MAJOR=$(ver_cut 1 ${kv_full}) - KV_MINOR=$(ver_cut 2 ${kv_full}) - KV_PATCH=$(ver_cut 3 ${kv_full}) - KV_EXTRA="${KV_FULL#${KV_MAJOR}.${KV_MINOR}${KV_PATCH:+.${KV_PATCH}}}" - : ${KV_PATCH:=0} + local kv=$(uname -r) + + if [[ -f ${ROOT%/}/lib/modules/${kv}/source/Makefile ]]; then + KERNEL_DIR=$(readlink -f "${ROOT%/}/lib/modules/${kv}/source") + if [[ -f ${ROOT%/}/lib/modules/${kv}/build/Makefile ]]; then + KBUILD_OUTPUT=$(readlink -f "${ROOT%/}/lib/modules/${kv}/build") + fi + get_version && return 0 fi + + KV_FULL=${kv} + + # This handles a variety of weird kernel versions. Make sure to update + # tests/linux-info_get_running_version.sh if you want to change this. + local kv_full=${KV_FULL//[-+_]*} + KV_MAJOR=$(ver_cut 1 ${kv_full}) + KV_MINOR=$(ver_cut 2 ${kv_full}) + KV_PATCH=$(ver_cut 3 ${kv_full}) + KV_EXTRA="${KV_FULL#${KV_MAJOR}.${KV_MINOR}${KV_PATCH:+.${KV_PATCH}}}" + : ${KV_PATCH:=0} + return 0 } @@ -944,20 +955,19 @@ linux-info_pkg_setup() { linux-info_get_any_version - if kernel_is 2 4; then - if [ "$( gcc-major-version )" -eq "4" ] ; then - echo - ewarn "Be warned !! >=sys-devel/gcc-4.0.0 isn't supported with" - ewarn "linux-2.4 (or modules building against a linux-2.4 kernel)!" - echo - ewarn "Either switch to another gcc-version (via gcc-config) or use a" - ewarn "newer kernel that supports gcc-4." - echo - ewarn "Also be aware that bugreports about gcc-4 not working" - ewarn "with linux-2.4 based ebuilds will be closed as INVALID!" - echo - fi - fi - [ -n "${CONFIG_CHECK}" ] && check_extra_config; } + +# @FUNCTION: kernel_get_makefile +# @DESCRIPTION: +# Support the possibility that the Makefile could be one of the following and should +# be checked in the order described here: +# https://www.gnu.org/software/make/manual/make.html +# Order of checking and valid Makefiles names: GNUMakefile, makefile, Makefile +kernel_get_makefile() { + + [[ -s ${KV_DIR}/GNUMakefile ]] && KERNEL_MAKEFILE="${KV_DIR}/GNUMakefile" && return + [[ -s ${KV_DIR}/makefile ]] && KERNEL_MAKEFILE="${KV_DIR}/makefile" && return + [[ -s ${KV_DIR}/Makefile ]] && KERNEL_MAKEFILE="${KV_DIR}/Makefile" && return + +} diff --git a/eclass/lua-single.eclass b/eclass/lua-single.eclass index 11c2790dac..2f4ebaa141 100644 --- a/eclass/lua-single.eclass +++ b/eclass/lua-single.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: lua-single.eclass @@ -8,7 +8,8 @@ # @AUTHOR: # Marek Szuba # Based on python-single-r1.eclass by Michał Górny et al. -# @SUPPORTED_EAPIS: 7 +# @SUPPORTED_EAPIS: 7 8 +# @PROVIDES: lua-utils # @BLURB: An eclass for Lua packages not installed for multiple implementations. # @DESCRIPTION: # An extension of lua.eclass suite for packages which don't support being @@ -34,9 +35,9 @@ # # @EXAMPLE: # @CODE -# EAPI=7 +# EAPI=8 # -# LUA_COMPAT=( lua5-{1..3} ) +# LUA_COMPAT=( lua5-{3..4} ) # # inherit lua-single # @@ -62,15 +63,10 @@ # } # @CODE -case ${EAPI:-0} in - 0|1|2|3|4|5|6) - die "Unsupported EAPI=${EAPI} (too old) for ${ECLASS}" - ;; - 7) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac if [[ ! ${_LUA_SINGLE_R0} ]]; then @@ -95,7 +91,7 @@ EXPORT_FUNCTIONS pkg_setup # # Example: # @CODE -# LUA_COMPAT=( lua5-1 lua5-2 lua5-3 ) +# LUA_COMPAT=( lua5-1 lua5-3 lua5-4 ) # @CODE # # Please note that you can also use bash brace expansion if you like: @@ -120,7 +116,7 @@ EXPORT_FUNCTIONS pkg_setup # # Example: # @CODE -# LUA_COMPAT_OVERRIDE='lua5-2' emerge -1v dev-lua/foo +# LUA_COMPAT_OVERRIDE='luajit' emerge -1v dev-lua/foo # @CODE # @ECLASS-VARIABLE: LUA_REQ_USE @@ -159,7 +155,7 @@ EXPORT_FUNCTIONS pkg_setup # Example value: # @CODE # lua_targets_lua5-1? ( dev-lang/lua:5.1 ) -# lua_targets_lua5-2? ( dev-lang/lua:5.2 ) +# lua_targets_lua5-3? ( dev-lang/lua:5.3 ) # @CODE # @ECLASS-VARIABLE: LUA_REQUIRED_USE @@ -178,7 +174,7 @@ EXPORT_FUNCTIONS pkg_setup # # Example value: # @CODE -# || ( lua_targets_lua5-1 lua_targets_lua5-2 ) +# || ( lua_targets_lua5-1 lua_targets_lua5-3 ) # @CODE # @ECLASS-VARIABLE: LUA_SINGLE_USEDEP @@ -215,7 +211,7 @@ EXPORT_FUNCTIONS pkg_setup # # Example value: # @CODE -# lua_targets_lua5-1(-)?,lua_targets_lua5-2(-)? +# lua_targets_lua5-1(-)?,lua_targets_lua5-3(-)? # @CODE # @FUNCTION: _lua_single_set_globals @@ -353,7 +349,7 @@ _lua_verify_patterns() { local impl pattern for pattern; do - for impl in "${_LUA_ALL_IMPLS[@]}"; do + for impl in "${_LUA_ALL_IMPLS[@]}" "${_LUA_HISTORICAL_IMPLS[@]}"; do [[ ${impl} == ${pattern/./-} ]] && continue 2 done @@ -381,15 +377,15 @@ _lua_verify_patterns() { # @CODE # LUA_COMPAT=( lua5-{1..3} ) # RDEPEND="$(lua_gen_cond_dep \ -# 'dev-lua/backported_core_module[${LUA_USEDEP}]' lua5-1 lua5-2 )" +# 'dev-lua/backported_core_module[${LUA_USEDEP}]' lua5-1 lua5-3 )" # @CODE # # It will cause the variable to look like: # @CODE # RDEPEND="lua_single_target_lua5-1? ( # dev-lua/backported_core_module[lua_targets_lua5-1(-)?,...] ) -# lua_single_target_lua5-2? ( -# dev-lua/backported_core_module[lua_targets_lua5-2(-)?,...] )" +# lua_single_target_lua5-3? ( +# dev-lua/backported_core_module[lua_targets_lua5-3(-)?,...] )" # @CODE lua_gen_cond_dep() { debug-print-function ${FUNCNAME} "${@}" @@ -441,13 +437,13 @@ lua_gen_cond_dep() { # Example: # @CODE # LUA_COMPAT=( lua5-{1..3} ) -# RDEPEND="foo? ( $(lua_gen_impl_dep 'deprecated(+)' lua5-3 ) )" +# RDEPEND="foo? ( $(lua_gen_impl_dep 'deprecated(+)' lua5-4 ) )" # @CODE # # It will cause the variable to look like: # @CODE # RDEPEND="foo? ( -# lua_single_target_lua5-3? ( dev-lang/lua:5.3[deprecated(+)] ) +# lua_single_target_lua5-4? ( dev-lang/lua:5.3[deprecated(+)] ) # )" # @CODE lua_gen_impl_dep() { diff --git a/eclass/lua-utils.eclass b/eclass/lua-utils.eclass index 0589318ef5..3b24f383d7 100644 --- a/eclass/lua-utils.eclass +++ b/eclass/lua-utils.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: lua-utils.eclass @@ -8,7 +8,7 @@ # @AUTHOR: # Marek Szuba # Based on python-utils-r1.eclass by Michał Górny et al. -# @SUPPORTED_EAPIS: 7 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: Utility functions for packages with Lua parts # @DESCRIPTION: # A utility eclass providing functions to query Lua implementations, @@ -17,15 +17,10 @@ # This eclass neither sets any metadata variables nor exports any phase # functions. It can be inherited safely. -case ${EAPI:-0} in - 0|1|2|3|4|5|6) - die "Unsupported EAPI=${EAPI} (too old) for ${ECLASS}" - ;; - 7) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac if [[ ! ${_LUA_UTILS_R0} ]]; then @@ -39,12 +34,20 @@ inherit toolchain-funcs _LUA_ALL_IMPLS=( luajit lua5-1 - lua5-2 lua5-3 lua5-4 ) readonly _LUA_ALL_IMPLS +# @ECLASS-VARIABLE: _LUA_HISTORICAL_IMPLS +# @INTERNAL +# @DESCRIPTION: +# All historical Lua implementations that are no longer supported. +_LUA_HISTORICAL_IMPLS=( + lua5-2 +) +readonly _LUA_HISTORICAL_IMPLS + # @FUNCTION: _lua_set_impls # @INTERNAL # @DESCRIPTION: @@ -212,7 +215,9 @@ _lua_get_library_file() { die "Invalid implementation: ${impl}" ;; esac + libdir=$($(tc-getPKG_CONFIG) --variable libdir ${impl}) || die + libdir="${libdir#${ESYSROOT#${SYSROOT}}}" debug-print "${FUNCNAME}: libdir = ${libdir}, libname = ${libname}" echo "${libdir}/${libname}" @@ -226,8 +231,8 @@ _lua_get_library_file() { # as parameters. # # The optional first parameter may specify the requested Lua -# implementation (either as LUA_TARGETS value, e.g. lua5-2, -# or an ELUA one, e.g. lua5.2). If no implementation passed, +# implementation (either as LUA_TARGETS value, e.g. lua5-4, +# or an ELUA one, e.g. lua5.4). If no implementation passed, # the current one will be obtained from ${ELUA}. _lua_export() { debug-print-function ${FUNCNAME} "${@}" @@ -274,6 +279,7 @@ _lua_export() { local val val=$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD ${impl}) || die + val="${val#${ESYSROOT#${SYSROOT}}}" export LUA_CMOD_DIR=${val} debug-print "${FUNCNAME}: LUA_CMOD_DIR = ${LUA_CMOD_DIR}" @@ -282,6 +288,7 @@ _lua_export() { local val val=$($(tc-getPKG_CONFIG) --variable includedir ${impl}) || die + val="${val#${ESYSROOT#${SYSROOT}}}" export LUA_INCLUDE_DIR=${val} debug-print "${FUNCNAME}: LUA_INCLUDE_DIR = ${LUA_INCLUDE_DIR}" @@ -298,6 +305,7 @@ _lua_export() { local val val=$($(tc-getPKG_CONFIG) --variable INSTALL_LMOD ${impl}) || die + val="${val#${ESYSROOT#${SYSROOT}}}" export LUA_LMOD_DIR=${val} debug-print "${FUNCNAME}: LUA_LMOD_DIR = ${LUA_LMOD_DIR}" diff --git a/eclass/lua.eclass b/eclass/lua.eclass deleted file mode 100644 index 46d9e848c8..0000000000 --- a/eclass/lua.eclass +++ /dev/null @@ -1,381 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# @ECLASS: lua.eclass -# @MAINTAINER: -# William Hubbs -# Marek Szuba -# @AUTHOR: -# Marek Szuba -# Based on python-r1.eclass by Michał Górny et al. -# @SUPPORTED_EAPIS: 7 -# @BLURB: A common eclass for Lua packages -# @DESCRIPTION: -# A common eclass providing helper functions to build and install -# packages supporting being installed for multiple Lua implementations. -# -# This eclass sets correct IUSE. Modification of REQUIRED_USE has to -# be done by the author of the ebuild (but LUA_REQUIRED_USE is -# provided for convenience, see below). The eclass exports LUA_DEPS -# and LUA_USEDEP so you can create correct dependencies for your -# package easily. It also provides methods to easily run a command for -# each enabled Lua implementation and duplicate the sources for them. -# -# Note that since this eclass always inherits lua-utils as well, in ebuilds -# using the former there is no need to explicitly inherit the latter in order -# to use helper functions such as lua_get_CFLAGS. -# -# @EXAMPLE: -# @CODE -# EAPI=7 -# -# LUA_COMPAT=( lua5-{1..3} ) -# -# inherit lua -# -# [...] -# -# REQUIRED_USE="${LUA_REQUIRED_USE}" -# DEPEND="${LUA_DEPS}" -# RDEPEND="${DEPEND} -# dev-lua/foo[${LUA_USEDEP}]" -# BDEPEND="virtual/pkgconfig" -# -# lua_src_install() { -# emake LUA_VERSION="$(lua_get_version)" install -# } -# -# src_install() { -# lua_foreach_impl lua_src_install -# } -# @CODE - -case ${EAPI:-0} in - 0|1|2|3|4|5|6) - die "Unsupported EAPI=${EAPI} (too old) for ${ECLASS}" - ;; - 7) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" - ;; -esac - -if [[ ! ${_LUA_R0} ]]; then - -if [[ ${_LUA_SINGLE_R0} ]]; then - die 'lua.eclass cannot be used with lua-single.eclass.' -fi - -inherit multibuild lua-utils - -fi - -# @ECLASS-VARIABLE: LUA_COMPAT -# @REQUIRED -# @PRE_INHERIT -# @DESCRIPTION: -# This variable contains a list of Lua implementations the package -# supports. It must be set before the `inherit' call. It has to be -# an array. -# -# Example: -# @CODE -# LUA_COMPAT=( lua5-1 lua5-2 lua5-3 ) -# @CODE -# -# Please note that you can also use bash brace expansion if you like: -# @CODE -# LUA_COMPAT=( lua5-{1..3} ) -# @CODE - -# @ECLASS-VARIABLE: LUA_COMPAT_OVERRIDE -# @USER_VARIABLE -# @DEFAULT_UNSET -# @DESCRIPTION: -# This variable can be used when working with ebuilds to override -# the in-ebuild LUA_COMPAT. It is a string listing all -# the implementations which package will be built for. It need be -# specified in the calling environment, and not in ebuilds. -# -# It should be noted that in order to preserve metadata immutability, -# LUA_COMPAT_OVERRIDE does not affect IUSE nor dependencies. -# The state of LUA_TARGETS is ignored, and all the implementations -# in LUA_COMPAT_OVERRIDE are built. Dependencies need to be satisfied -# manually. -# -# Example: -# @CODE -# LUA_COMPAT_OVERRIDE='lua5-2' emerge -1v dev-lua/foo -# @CODE - -# @ECLASS-VARIABLE: LUA_REQ_USE -# @DEFAULT_UNSET -# @PRE_INHERIT -# @DESCRIPTION: -# The list of USE flags required to be enabled on the chosen Lua -# implementations, formed as a USE-dependency string. It should be valid -# for all implementations in LUA_COMPAT, so it may be necessary to -# use USE defaults. -# This must be set before calling `inherit'. -# -# Example: -# @CODE -# LUA_REQ_USE="deprecated" -# @CODE -# -# It will cause the Lua dependencies to look like: -# @CODE -# lua_targets_luaX-Y? ( dev-lang/lua:X.Y[deprecated] ) -# @CODE - -# @ECLASS-VARIABLE: BUILD_DIR -# @OUTPUT_VARIABLE -# @DEFAULT_UNSET -# @DESCRIPTION: -# The current build directory. In global scope, it is supposed to -# contain an initial build directory; if unset, it defaults to ${S}. -# -# In functions run by lua_foreach_impl(), the BUILD_DIR is locally -# set to an implementation-specific build directory. That path is -# created through appending a hyphen and the implementation name -# to the final component of the initial BUILD_DIR. -# -# Example value: -# @CODE -# ${WORKDIR}/foo-1.3-lua5-1 -# @CODE - -# @ECLASS-VARIABLE: LUA_DEPS -# @OUTPUT_VARIABLE -# @DESCRIPTION: -# This is an eclass-generated Lua dependency string for all -# implementations listed in LUA_COMPAT. -# -# Example use: -# @CODE -# RDEPEND="${LUA_DEPS} -# dev-foo/mydep" -# DEPEND="${RDEPEND}" -# @CODE -# -# Example value: -# @CODE -# lua_targets_lua5-1? ( dev-lang/lua:5.1 ) -# lua_targets_lua5-2? ( dev-lang/lua:5.2 ) -# @CODE - -# @ECLASS-VARIABLE: LUA_REQUIRED_USE -# @OUTPUT_VARIABLE -# @DESCRIPTION: -# This is an eclass-generated required-use expression which ensures at -# least one Lua implementation has been enabled. -# -# This expression should be utilized in an ebuild by including it in -# REQUIRED_USE, optionally behind a use flag. -# -# Example use: -# @CODE -# REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )" -# @CODE -# -# Example value: -# @CODE -# || ( lua_targets_lua5-1 lua_targets_lua5-2 ) -# @CODE - -# @ECLASS-VARIABLE: LUA_USEDEP -# @OUTPUT_VARIABLE -# @DESCRIPTION: -# This is an eclass-generated USE-dependency string which can be used to -# depend on another Lua package being built for the same Lua -# implementations. -# -# Example use: -# @CODE -# RDEPEND="dev-lua/foo[${LUA_USEDEP}]" -# @CODE -# -# Example value: -# @CODE -# lua_targets_lua5-1(-)?,lua_targets_lua5-2(-)? -# @CODE - -if [[ ! ${_LUA_R0} ]]; then - -# @FUNCTION: _lua_validate_useflags -# @INTERNAL -# @DESCRIPTION: -# Enforce the proper setting of LUA_TARGETS, if LUA_COMPAT_OVERRIDE -# is not in effect. If it is, just warn that the flags will be ignored. -_lua_validate_useflags() { - debug-print-function ${FUNCNAME} "${@}" - - if [[ ${LUA_COMPAT_OVERRIDE} ]]; then - if [[ ! ${_LUA_COMPAT_OVERRIDE_WARNED} ]]; then - ewarn "WARNING: LUA_COMPAT_OVERRIDE in effect. The following Lua" - ewarn "implementations will be enabled:" - ewarn - ewarn " ${LUA_COMPAT_OVERRIDE}" - ewarn - ewarn "Dependencies won't be satisfied, and LUA_TARGETS will be ignored." - _LUA_COMPAT_OVERRIDE_WARNED=1 - fi - # we do not use flags with LCO - return - fi - - local i - - for i in "${_LUA_SUPPORTED_IMPLS[@]}"; do - use "lua_targets_${i}" && return 0 - done - - eerror "No Lua implementation selected for the build. Please add one" - eerror "of the following values to your LUA_TARGETS" - eerror "(in make.conf or package.use):" - eerror - eerror "${LUA_COMPAT[@]}" - echo - die "No supported Lua implementation in LUA_TARGETS." -} - -# @FUNCTION: _lua_obtain_impls -# @INTERNAL -# @DESCRIPTION: -# Set up the enabled implementation list. -_lua_obtain_impls() { - _lua_validate_useflags - - if [[ ${LUA_COMPAT_OVERRIDE} ]]; then - MULTIBUILD_VARIANTS=( ${LUA_COMPAT_OVERRIDE} ) - return - fi - - MULTIBUILD_VARIANTS=() - - local impl - for impl in "${_LUA_SUPPORTED_IMPLS[@]}"; do - has "${impl}" "${LUA_COMPAT[@]}" && \ - use "lua_targets_${impl}" && MULTIBUILD_VARIANTS+=( "${impl}" ) - done -} - - -# @FUNCTION: _lua_multibuild_wrapper -# @USAGE: [...] -# @INTERNAL -# @DESCRIPTION: -# Initialize the environment for the Lua implementation selected -# for multibuild. -_lua_multibuild_wrapper() { - debug-print-function ${FUNCNAME} "${@}" - - local -x ELUA LUA - _lua_export "${MULTIBUILD_VARIANT}" ELUA LUA - local -x PATH=${PATH} PKG_CONFIG_PATH=${PKG_CONFIG_PATH} - _lua_wrapper_setup - - "${@}" -} - -# @FUNCTION: lua_copy_sources -# @DESCRIPTION: -# Create a single copy of the package sources for each enabled Lua -# implementation. -# -# The sources are always copied from initial BUILD_DIR (or S if unset) -# to implementation-specific build directory matching BUILD_DIR used by -# lua_foreach_abi(). -lua_copy_sources() { - debug-print-function ${FUNCNAME} "${@}" - - local MULTIBUILD_VARIANTS - _lua_obtain_impls - - multibuild_copy_sources -} - -# @FUNCTION: lua_foreach_impl -# @USAGE: [...] -# @DESCRIPTION: -# Run the given command for each of the enabled Lua implementations. -# If additional parameters are passed, they will be passed through -# to the command. -# -# The function will return 0 status if all invocations succeed. -# Otherwise, the return code from first failing invocation will -# be returned. -# -# For each command being run, ELUA, LUA and BUILD_DIR are set -# locally, and the former two are exported to the command environment. -lua_foreach_impl() { - debug-print-function ${FUNCNAME} "${@}" - - local MULTIBUILD_VARIANTS - _lua_obtain_impls - - multibuild_foreach_variant _lua_multibuild_wrapper "${@}" -} - -_LUA_R0=1 -fi - -# @FUNCTION: _lua_set_globals -# @INTERNAL -# @DESCRIPTION: -# Sets all the global output variables provided by this eclass. -# This function must be called once, in global scope. -_lua_set_globals() { - local deps i LUA_PKG_DEP - - _lua_set_impls - - for i in "${_LUA_SUPPORTED_IMPLS[@]}"; do - _lua_export "${i}" LUA_PKG_DEP - deps+="lua_targets_${i}? ( ${LUA_PKG_DEP} ) " - done - - local flags=( "${_LUA_SUPPORTED_IMPLS[@]/#/lua_targets_}" ) - local optflags=${flags[@]/%/(-)?} - - local requse="|| ( ${flags[*]} )" - local usedep=${optflags// /,} - - if [[ ${LUA_DEPS+1} ]]; then - # IUSE is magical, so we can't really check it - # (but we verify LUA_COMPAT already) - - if [[ ${LUA_DEPS} != "${deps}" ]]; then - eerror "LUA_DEPS have changed between inherits (LUA_REQ_USE?)!" - eerror "Before: ${LUA_DEPS}" - eerror "Now : ${deps}" - die "LUA_DEPS integrity check failed" - fi - - # these two are formality -- they depend on LUA_COMPAT only - if [[ ${LUA_REQUIRED_USE} != ${requse} ]]; then - eerror "LUA_REQUIRED_USE have changed between inherits!" - eerror "Before: ${LUA_REQUIRED_USE}" - eerror "Now : ${requse}" - die "LUA_REQUIRED_USE integrity check failed" - fi - - if [[ ${LUA_USEDEP} != "${usedep}" ]]; then - eerror "LUA_USEDEP have changed between inherits!" - eerror "Before: ${LUA_USEDEP}" - eerror "Now : ${usedep}" - die "LUA_USEDEP integrity check failed" - fi - else - IUSE=${flags[*]} - - LUA_DEPS=${deps} - LUA_REQUIRED_USE=${requse} - LUA_USEDEP=${usedep} - readonly LUA_DEPS LUA_REQUIRED_USE - fi -} - -_lua_set_globals -unset -f _lua_set_globals diff --git a/eclass/user-info.eclass b/eclass/user-info.eclass index 15e9238ab4..3838585ab6 100644 --- a/eclass/user-info.eclass +++ b/eclass/user-info.eclass @@ -1,12 +1,18 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: user-info.eclass # @MAINTAINER: # base-system@gentoo.org (Linux) # Michał Górny (NetBSD) +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: Read-only access to user and group information +case ${EAPI} in + 6|7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac + if [[ -z ${_USER_INFO_ECLASS} ]]; then _USER_INFO_ECLASS=1 diff --git a/eclass/user.eclass b/eclass/user.eclass index b70698356a..581704eae8 100644 --- a/eclass/user.eclass +++ b/eclass/user.eclass @@ -1,15 +1,31 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: user.eclass # @MAINTAINER: # base-system@gentoo.org (Linux) # Michał Górny (NetBSD) +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: user management in ebuilds +# @DEPRECATED: acct-user/acct-group packages # @DESCRIPTION: # The user eclass contains a suite of functions that allow ebuilds # to quickly make sure users in the installed system are sane. +case ${EAPI} in + 6|7) ;; + 8) + if [[ ${CATEGORY} != acct-* ]]; then + eerror "In EAPI ${EAPI}, packages must not inherit user.eclass" + eerror "unless they are in the acct-user or acct-group category." + eerror "Migrate your package to GLEP 81 user/group management," + eerror "or inherit user-info if you need only the query functions." + die "Invalid \"inherit user\" in EAPI ${EAPI}" + fi + ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac + if [[ -z ${_USER_ECLASS} ]]; then _USER_ECLASS=1 @@ -18,14 +34,16 @@ inherit user-info # @FUNCTION: _assert_pkg_ebuild_phase # @INTERNAL # @USAGE: +# @DESCRIPTION: +# Raises an alert if the phase is not suitable for user.eclass usage. _assert_pkg_ebuild_phase() { case ${EBUILD_PHASE} in setup|preinst|postinst|prerm|postrm) ;; *) eerror "'$1()' called from '${EBUILD_PHASE}' phase which is not OK:" eerror "You may only call from pkg_{setup,{pre,post}{inst,rm}} functions." - eerror "Package fails at QA and at life. Please file a bug." - die "Bad package! $1 is only for use in some pkg_* functions!" + eerror "Package has serious QA issues. Please file a bug." + die "Bad package! ${1} is only for use in some pkg_* functions!" esac } @@ -74,8 +92,8 @@ enewuser() { _assert_pkg_ebuild_phase ${FUNCNAME} local create_home=1 force_uid= - while [[ $1 == -* ]]; do - case $1 in + while [[ ${1} == -* ]]; do + case ${1} in -F) force_uid=1;; -M) create_home=;; *) die "${FUNCNAME}: invalid option ${1}";; @@ -84,9 +102,9 @@ enewuser() { done # get the username - local euser=$1; shift + local euser=${1}; shift if [[ -z ${euser} ]] ; then - eerror "No username specified !" + eerror "No username specified!" die "Cannot call enewuser without a username" fi @@ -100,7 +118,7 @@ enewuser() { local opts=() # handle uid - local euid=$1; shift + local euid=${1}; shift if [[ -n ${euid} && ${euid} != -1 ]] ; then if [[ ${euid} -gt 0 ]] ; then if [[ -n $(egetent passwd ${euid}) ]] ; then @@ -108,7 +126,7 @@ enewuser() { euid="next" fi else - eerror "Userid given but is not greater than 0 !" + eerror "Userid given but is not greater than 0!" die "${euid} is not a valid UID" fi else @@ -125,10 +143,10 @@ enewuser() { elog " - Userid: ${euid}" # handle shell - local eshell=$1; shift + local eshell=${1}; shift if [[ ! -z ${eshell} ]] && [[ ${eshell} != "-1" ]] ; then if [[ ! -e ${ROOT}${eshell} ]] ; then - eerror "A shell was specified but it does not exist !" + eerror "A shell was specified but it does not exist!" die "${eshell} does not exist in ${ROOT}" fi if [[ ${eshell} == */false || ${eshell} == */nologin ]] ; then @@ -142,7 +160,7 @@ enewuser() { opts+=( -s "${eshell}" ) # handle homedir - local ehome=$1; shift + local ehome=${1}; shift if [[ -z ${ehome} ]] || [[ ${ehome} == "-1" ]] ; then ehome="/dev/null" fi @@ -150,7 +168,7 @@ enewuser() { opts+=( -d "${ehome}" ) # handle groups - local egroups=$1; shift + local egroups=${1}; shift local g egroups_arr IFS="," read -r -a egroups_arr <<<"${egroups}" if [[ ${#egroups_arr[@]} -gt 0 ]] ; then @@ -229,8 +247,8 @@ enewgroup() { _assert_pkg_ebuild_phase ${FUNCNAME} local force_gid= - while [[ $1 == -* ]]; do - case $1 in + while [[ ${1} == -* ]]; do + case ${1} in -F) force_gid=1;; *) die "${FUNCNAME}: invalid option ${1}";; esac @@ -238,9 +256,9 @@ enewgroup() { done # get the group - local egroup=$1; shift + local egroup=${1}; shift if [[ -z ${egroup} ]] ; then - eerror "No group specified !" + eerror "No group specified!" die "Cannot call enewgroup without a group" fi @@ -251,7 +269,7 @@ enewgroup() { elog "Adding group '${egroup}' to your system ..." # handle gid - local egid=$1; shift + local egid=${1}; shift if [[ -n ${egid} && ${egid} != -1 ]] ; then if [[ ${egid} -gt 0 ]] ; then if [[ -n $(egetent group ${egid}) ]] ; then @@ -259,7 +277,7 @@ enewgroup() { egid="next available; requested gid taken" fi else - eerror "Groupid given but is not greater than 0 !" + eerror "Groupid given but is not greater than 0!" die "${egid} is not a valid GID" fi else @@ -323,9 +341,9 @@ esethome() { _assert_pkg_ebuild_phase ${FUNCNAME} # get the username - local euser=$1; shift + local euser=${1}; shift if [[ -z ${euser} ]] ; then - eerror "No username specified !" + eerror "No username specified!" die "Cannot call esethome without a username" fi @@ -336,9 +354,9 @@ esethome() { fi # handle homedir - local ehome=$1; shift + local ehome=${1}; shift if [[ -z ${ehome} ]] ; then - eerror "No home directory specified !" + eerror "No home directory specified!" die "Cannot call esethome without a home directory or '-1'" fi @@ -392,9 +410,9 @@ esetshell() { _assert_pkg_ebuild_phase ${FUNCNAME} # get the username - local euser=$1; shift + local euser=${1}; shift if [[ -z ${euser} ]] ; then - eerror "No username specified !" + eerror "No username specified!" die "Cannot call esetshell without a username" fi @@ -405,9 +423,9 @@ esetshell() { fi # handle shell - local eshell=$1; shift + local eshell=${1}; shift if [[ -z ${eshell} ]] ; then - eerror "No shell specified !" + eerror "No shell specified!" die "Cannot call esetshell without a shell or '-1'" fi @@ -452,9 +470,9 @@ esetcomment() { _assert_pkg_ebuild_phase ${FUNCNAME} # get the username - local euser=$1; shift + local euser=${1}; shift if [[ -z ${euser} ]] ; then - eerror "No username specified !" + eerror "No username specified!" die "Cannot call esetcomment without a username" fi @@ -465,9 +483,9 @@ esetcomment() { fi # handle comment - local ecomment=$1; shift + local ecomment=${1}; shift if [[ -z ${ecomment} ]] ; then - eerror "No comment specified !" + eerror "No comment specified!" die "Cannot call esetcomment without a comment" fi @@ -511,7 +529,7 @@ esetgroups() { [[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} " # get the username - local euser=$1; shift + local euser=${1}; shift # lets see if the username already exists if [[ -z $(egetent passwd "${euser}") ]] ; then @@ -520,7 +538,7 @@ esetgroups() { fi # handle group - local egroups=$1; shift + local egroups=${1}; shift local g egroups_arr=() IFS="," read -r -a egroups_arr <<<"${egroups}" diff --git a/eclass/verify-sig.eclass b/eclass/verify-sig.eclass index e3ef7f2402..dadfd456e1 100644 --- a/eclass/verify-sig.eclass +++ b/eclass/verify-sig.eclass @@ -1,10 +1,10 @@ -# Copyright 2020 Gentoo Authors +# Copyright 2020-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: verify-sig.eclass # @MAINTAINER: # Michał Górny -# @SUPPORTED_EAPIS: 7 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: Eclass to verify upstream signatures on distfiles # @DESCRIPTION: # verify-sig eclass provides a streamlined approach to verifying @@ -20,7 +20,15 @@ # signatures to SRC_URI and set VERIFY_SIG_OPENPGP_KEY_PATH. The eclass # provides verify-sig USE flag to toggle the verification. # +# If you need to use signify, you may want to copy distfiles into WORKDIR to +# work around "Too many levels of symbolic links" error. +# +# A more complete guide can be found at: +# https://mgorny.pl/articles/verify-sig-by-example.html +# +# @EXAMPLE: # Example use: +# # @CODE # inherit verify-sig # @@ -29,18 +37,12 @@ # BDEPEND=" # verify-sig? ( app-crypt/openpgp-keys-example )" # -# VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/example.asc +# VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/example.asc # @CODE -case "${EAPI:-0}" in - 0|1|2|3|4|5|6) - die "Unsupported EAPI=${EAPI} (obsolete) for ${ECLASS}" - ;; - 7) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" - ;; +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac EXPORT_FUNCTIONS src_unpack @@ -49,11 +51,30 @@ if [[ ! ${_VERIFY_SIG_ECLASS} ]]; then IUSE="verify-sig" -BDEPEND=" - verify-sig? ( - app-crypt/gnupg - >=app-portage/gemato-16 - )" +# @ECLASS-VARIABLE: VERIFY_SIG_METHOD +# @PRE_INHERIT +# @DESCRIPTION: +# Signature verification method to use. The allowed value are: +# +# - openpgp -- verify PGP signatures using app-crypt/gnupg (the default) +# - signify -- verify signatures with Ed25519 public key using app-crypt/signify +: ${VERIFY_SIG_METHOD:=openpgp} + +case ${VERIFY_SIG_METHOD} in + openpgp) + BDEPEND=" + verify-sig? ( + app-crypt/gnupg + >=app-portage/gemato-16 + )" + ;; + signify) + BDEPEND="verify-sig? ( app-crypt/signify )" + ;; + *) + die "${ECLASS}: unknown method '${VERIFY_SIG_METHOD}'" + ;; +esac # @ECLASS-VARIABLE: VERIFY_SIG_OPENPGP_KEY_PATH # @DEFAULT_UNSET @@ -61,6 +82,9 @@ BDEPEND=" # Path to key bundle used to perform the verification. This is required # when using default src_unpack. Alternatively, the key path can be # passed directly to the verification functions. +# +# NB: this variable is also used for non-OpenPGP signatures. The name +# contains "OPENPGP" for historical reasons. # @ECLASS-VARIABLE: VERIFY_SIG_OPENPGP_KEYSERVER # @DEFAULT_UNSET @@ -68,6 +92,8 @@ BDEPEND=" # Keyserver used to refresh keys. If not specified, the keyserver # preference from the key will be respected. If no preference # is specified by the key, the GnuPG default will be used. +# +# Supported for OpenPGP only. # @ECLASS-VARIABLE: VERIFY_SIG_OPENPGP_KEY_REFRESH # @USER_VARIABLE @@ -75,6 +101,8 @@ BDEPEND=" # Attempt to refresh keys via WKD/keyserver. Set it to "yes" # in make.conf to enable. Note that this requires working Internet # connection. +# +# Supported for OpenPGP only. : ${VERIFY_SIG_OPENPGP_KEY_REFRESH:=no} # @FUNCTION: verify-sig_verify_detached @@ -94,9 +122,14 @@ verify-sig_verify_detached() { local extra_args=() [[ ${VERIFY_SIG_OPENPGP_KEY_REFRESH} == yes ]] || extra_args+=( -R ) - [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]] && extra_args+=( - --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}" - ) + if [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]]; then + [[ ${VERIFY_SIG_METHOD} == openpgp ]] || + die "${FUNCNAME}: VERIFY_SIG_OPENPGP_KEYSERVER is not supported" + + extra_args+=( + --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}" + ) + fi # GPG upstream knows better than to follow the spec, so we can't # override this directory. However, there is a clean fallback @@ -106,9 +139,17 @@ verify-sig_verify_detached() { local filename=${file##*/} [[ ${file} == - ]] && filename='(stdin)' einfo "Verifying ${filename} ..." - gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \ - gpg --verify "${sig}" "${file}" || - die "PGP signature verification failed" + case ${VERIFY_SIG_METHOD} in + openpgp) + gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \ + gpg --verify "${sig}" "${file}" || + die "PGP signature verification failed" + ;; + signify) + signify -V -p "${key}" -m "${file}" -x "${sig}" || + die "Signify signature verification failed" + ;; + esac } # @FUNCTION: verify-sig_verify_message @@ -130,9 +171,14 @@ verify-sig_verify_message() { local extra_args=() [[ ${VERIFY_SIG_OPENPGP_KEY_REFRESH} == yes ]] || extra_args+=( -R ) - [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]] && extra_args+=( - --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}" - ) + if [[ -n ${VERIFY_SIG_OPENPGP_KEYSERVER+1} ]]; then + [[ ${VERIFY_SIG_METHOD} == openpgp ]] || + die "${FUNCNAME}: VERIFY_SIG_OPENPGP_KEYSERVER is not supported" + + extra_args+=( + --keyserver "${VERIFY_SIG_OPENPGP_KEYSERVER}" + ) + fi # GPG upstream knows better than to follow the spec, so we can't # override this directory. However, there is a clean fallback @@ -142,30 +188,42 @@ verify-sig_verify_message() { local filename=${file##*/} [[ ${file} == - ]] && filename='(stdin)' einfo "Verifying ${filename} ..." - gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \ - gpg --verify --output="${output_file}" "${file}" || - die "PGP signature verification failed" + case ${VERIFY_SIG_METHOD} in + openpgp) + gemato gpg-wrap -K "${key}" "${extra_args[@]}" -- \ + gpg --verify --output="${output_file}" "${file}" || + die "PGP signature verification failed" + ;; + signify) + signify -V -e -p "${key}" -m "${output_file}" -x "${file}" || + die "Signify signature verification failed" + ;; + esac } -# @FUNCTION: verify-sig_verify_signed_checksums -# @USAGE: [] +# @FUNCTION: verify-sig_verify_unsigned_checksums +# @USAGE: # @DESCRIPTION: # Verify the checksums for all files listed in the space-separated list -# (akin to ${A}) using a PGP-signed . -# specified the checksum algorithm (e.g. sha256). can either -# be passed directly, or it defaults to VERIFY_SIG_OPENPGP_KEY_PATH. +# (akin to ${A}) using a . specifies +# the checksum algorithm (e.g. sha256). can be "-" +# for stdin. # -# The function dies if PGP verification fails, the checksum file -# contains unsigned data, one of the files do not match checksums -# or are missing from the checksum file. -verify-sig_verify_signed_checksums() { +# The function dies if one of the files does not match checksums or +# is missing from the checksum file. +# +# Note that this function itself can only verify integrity of the files. +# In order to verify their authenticity, the must +# be verified against a signature first, e.g. using +# verify-sig_verify_detached. If it contains inline signature, use +# verify-sig_verify_signed_checksums instead. +verify-sig_verify_unsigned_checksums() { local checksum_file=${1} local algo=${2} local files=() read -r -d '' -a files <<<"${3}" - local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}} - local chksum_prog chksum_len + case ${algo} in sha256) chksum_prog=sha256sum @@ -176,11 +234,13 @@ verify-sig_verify_signed_checksums() { ;; esac - [[ -n ${key} ]] || - die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset" - + [[ ${checksum_file} == - ]] && checksum_file=/dev/stdin local checksum filename junk ret=0 count=0 while read -r checksum filename junk; do + if [[ ${checksum} == "-----BEGIN" ]]; then + die "${FUNCNAME}: PGP armor found, use verify-sig_verify_signed_checksums instead" + fi + [[ ${#checksum} -eq ${chksum_len} ]] || continue [[ -z ${checksum//[0-9a-f]} ]] || continue has "${filename}" "${files[@]}" || continue @@ -192,7 +252,7 @@ verify-sig_verify_signed_checksums() { else ret=1 fi - done < <(verify-sig_verify_message "${checksum_file}" - "${key}") + done < "${checksum_file}" [[ ${ret} -eq 0 ]] || die "${FUNCNAME}: at least one file did not verify successfully" @@ -200,6 +260,56 @@ verify-sig_verify_signed_checksums() { die "${FUNCNAME}: checksums for some of the specified files were missing" } +# @FUNCTION: _gpg_verify_signed_checksums +# @INTERNAL +# @USAGE: [] +# @DESCRIPTION: +# GnuPG-specific function to verify a signed checksums list. +_gpg_verify_signed_checksums() { + local checksum_file=${1} + local algo=${2} + local files=${3} + local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}} + + verify-sig_verify_unsigned_checksums - "${algo}" "${files}" < <( + verify-sig_verify_message "${checksum_file}" - "${key}" + ) +} + +# @FUNCTION: verify-sig_verify_signed_checksums +# @USAGE: [] +# @DESCRIPTION: +# Verify the checksums for all files listed in the space-separated list +# (akin to ${A}) using a signed . specifies +# the checksum algorithm (e.g. sha256). can either be passed +# directly, or it defaults to VERIFY_SIG_OPENPGP_KEY_PATH. +# +# The function dies if signature verification fails, the checksum file +# contains unsigned data, one of the files do not match checksums or +# are missing from the checksum file. +verify-sig_verify_signed_checksums() { + local checksum_file=${1} + local algo=${2} + local files=() + read -r -d '' -a files <<<"${3}" + local key=${4:-${VERIFY_SIG_OPENPGP_KEY_PATH}} + + [[ -n ${key} ]] || + die "${FUNCNAME}: no key passed and VERIFY_SIG_OPENPGP_KEY_PATH unset" + + case ${VERIFY_SIG_METHOD} in + openpgp) + _gpg_verify_signed_checksums \ + "${checksum_file}" "${algo}" "${files[@]}" "${key}" + ;; + signify) + signify -C -p "${key}" \ + -x "${checksum_file}" "${files[@]}" || + die "Signify signature verification failed" + ;; + esac +} + # @FUNCTION: verify-sig_src_unpack # @DESCRIPTION: # Default src_unpack override that verifies signatures for all diff --git a/net-analyzer/tcpdump/Manifest b/net-analyzer/tcpdump/Manifest index 04a763867c..713c659ac1 100644 --- a/net-analyzer/tcpdump/Manifest +++ b/net-analyzer/tcpdump/Manifest @@ -1,2 +1,2 @@ -DIST tcpdump-4.10.0rc1.tar.gz 1823212 BLAKE2B aa274e548163eacb09a98edbaa1127dbb06b6fe2f6eb23ffa968a577081d9d9323c339a885a198ee08d7dced04302cf50301ca575fbe95e082a6ed89e115de05 SHA512 b226ca569eeda7cee45fc7a1e42766f404d55ebca8133da544ecd75f975701532346f0cfdbefd4fc708fca12a8d094790c99a7276bd9b563885ef036a3912493 -DIST tcpdump-4.9.3.tar.gz 2333119 BLAKE2B 21e13fc40d98cfac0bbd5513580cf98313df1f8fea24c48f045f70d494aea3e75230b8481049660c109f9179015c3164f3e3b31acc76c0bfb1f2da5039f1834e SHA512 3aec673f78b996a4df884b1240e5d0a26a2ca81ee7aca8a2e6d50255bb53476e008a5ced4409e278a956710d8a4d31d85bbb800c9f1aab92b0b1046b59292a22 +DIST tcpdump-4.99.1-upstream.tar.gz 2014324 BLAKE2B 0a10fe68afdfe80d3e7e661352fcaf1c47702df27fbed959f52fb0ec81543a1d4ce6b0de16a8b081de48dd43e09a13f5e1f0fb11d7590f92cbff29dc511bea12 SHA512 53d31355e1a6ef5a65bb3bf72454169fc80adf973a327a5768840e6ccf0550fbeb3c8a41f959635076d871df0619680321910a3a97879607f481cdaa8b7ceda7 +DIST tcpdump-4.99.1-upstream.tar.gz.sig 442 BLAKE2B 9a80b1796ef777bd06d0b8953fe1ff446431d0ff1dffcd58e29a0b771f6734f70f3f0da7c36a1eaa1b6e57719d79c601872a84b7734208a7e8951cad9aca86ee SHA512 b438643701efbbb5579d9d51ed48756a47dd644e0acb10b0edff6d04f3ae4cea6528b40820a656407b73f983b2a634e0165a6c8c0fca3b557394a14e2f2384ab diff --git a/net-analyzer/tcpdump/metadata.xml b/net-analyzer/tcpdump/metadata.xml index 926985b6a8..9060057831 100644 --- a/net-analyzer/tcpdump/metadata.xml +++ b/net-analyzer/tcpdump/metadata.xml @@ -1,13 +1,17 @@ - - + + - - netmon@gentoo.org - Gentoo network monitoring and analysis project + + zlogene@gentoo.org + Mikle Kolyada + + + sam@gentoo.org + Sam James Build with net-libs/libsmi to load MIBs on the fly to decode SNMP packets - Drop privileges to tcpdump:tcpdump when run as root + Drop privileges to pcap:pcap when run as root cpe:/a:tcpdump:tcpdump diff --git a/net-analyzer/tcpdump/tcpdump-4.10.0_rc1.ebuild b/net-analyzer/tcpdump/tcpdump-4.10.0_rc1.ebuild deleted file mode 100644 index c2cf8713ea..0000000000 --- a/net-analyzer/tcpdump/tcpdump-4.10.0_rc1.ebuild +++ /dev/null @@ -1,100 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools user - -DESCRIPTION="A Tool for network monitoring and data acquisition" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/tcpdump -" -LICENSE="BSD" -SRC_URI=" - https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz -" - -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" -IUSE="+drop-root libressl +smi +ssl +samba suid test" -RESTRICT="!test? ( test )" -REQUIRED_USE="test? ( samba )" - -RDEPEND=" - net-libs/libpcap - drop-root? ( sys-libs/libcap-ng ) - smi? ( net-libs/libsmi ) - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.6m:0= ) - libressl? ( dev-libs/libressl:= ) - ) -" -BDEPEND=" - drop-root? ( virtual/pkgconfig ) -" -DEPEND=" - ${RDEPEND} - test? ( - >=net-libs/libpcap-1.9.1 - dev-lang/perl - ) -" -PATCHES=( - "${FILESDIR}"/${PN}-9999-libdir.patch -) -S=${WORKDIR}/${PN}-${P/_} - -pkg_setup() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - -src_prepare() { - default - - eautoreconf -} - -src_configure() { - econf \ - $(use_enable samba smb) \ - $(use_with drop-root cap-ng) \ - $(use_with drop-root chroot '') \ - $(use_with smi) \ - $(use_with ssl crypto "${ESYSROOT}/usr") \ - $(usex drop-root "--with-user=tcpdump" "") -} - -src_test() { - if [[ ${EUID} -ne 0 ]] || ! use drop-root; then - emake check - else - ewarn "If you want to run the test suite, make sure you either" - ewarn "set FEATURES=userpriv or set USE=-drop-root" - fi -} - -src_install() { - dosbin tcpdump - doman tcpdump.1 - dodoc *.awk - dodoc CHANGES CREDITS README.md - - if use suid; then - fowners root:tcpdump /usr/sbin/tcpdump - fperms 4110 /usr/sbin/tcpdump - fi -} - -pkg_preinst() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - -pkg_postinst() { - use suid && elog "To let normal users run tcpdump add them into tcpdump group." -} diff --git a/net-analyzer/tcpdump/tcpdump-4.9.3-r1.ebuild b/net-analyzer/tcpdump/tcpdump-4.9.3-r1.ebuild deleted file mode 100644 index e23d799be4..0000000000 --- a/net-analyzer/tcpdump/tcpdump-4.9.3-r1.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools user - -DESCRIPTION="A Tool for network monitoring and data acquisition" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/tcpdump -" -SRC_URI=" - https://www.tcpdump.org/release/${P}.tar.gz -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" -IUSE="+drop-root libressl smi ssl samba suid test" -RESTRICT="!test? ( test )" - -RDEPEND=" - net-libs/libpcap - drop-root? ( sys-libs/libcap-ng ) - smi? ( net-libs/libsmi ) - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.6m:0= ) - libressl? ( dev-libs/libressl:= ) - ) -" -DEPEND=" - ${RDEPEND} - test? ( - >=net-libs/libpcap-1.9.1 - dev-lang/perl - ) -" -PATCHES=( - "${FILESDIR}"/${PN}-9999-libdir.patch -) - -pkg_setup() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - -src_prepare() { - default - eautoreconf -} - -src_configure() { - econf \ - $(use_enable samba smb) \ - $(use_with drop-root cap-ng) \ - $(use_with drop-root chroot '') \ - $(use_with smi) \ - $(use_with ssl crypto "${ESYSROOT}/usr") \ - $(usex drop-root "--with-user=tcpdump" "") -} - -src_test() { - if [[ ${EUID} -ne 0 ]] || ! use drop-root; then - emake check - else - ewarn "If you want to run the test suite, make sure you either" - ewarn "set FEATURES=userpriv or set USE=-drop-root" - fi -} - -src_install() { - dosbin tcpdump - doman tcpdump.1 - dodoc *.awk - dodoc CHANGES CREDITS README.md - - if use suid; then - fowners root:tcpdump /usr/sbin/tcpdump - fperms 4110 /usr/sbin/tcpdump - fi -} - -pkg_preinst() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - -pkg_postinst() { - use suid && elog "To let normal users run tcpdump add them into tcpdump group." -} diff --git a/net-analyzer/tcpdump/tcpdump-4.9.3.ebuild b/net-analyzer/tcpdump/tcpdump-4.9.3.ebuild deleted file mode 100644 index 3731233ad9..0000000000 --- a/net-analyzer/tcpdump/tcpdump-4.9.3.ebuild +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit flag-o-matic toolchain-funcs user - -DESCRIPTION="A Tool for network monitoring and data acquisition" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/tcpdump -" -SRC_URI=" - https://www.tcpdump.org/release/${P}.tar.gz -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="+drop-root libressl smi ssl samba suid test" -RESTRICT="!test? ( test )" - -RDEPEND=" - drop-root? ( sys-libs/libcap-ng ) - net-libs/libpcap - smi? ( net-libs/libsmi ) - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.6m:0= ) - libressl? ( dev-libs/libressl:= ) - ) -" -DEPEND=" - ${RDEPEND} - drop-root? ( virtual/pkgconfig ) - test? ( - >=net-libs/libpcap-1.9.1 - dev-lang/perl - app-arch/sharutils - ) -" - -pkg_setup() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - -src_configure() { - if use drop-root; then - append-cppflags -DHAVE_CAP_NG_H - export LIBS=$( $(tc-getPKG_CONFIG) --libs libcap-ng ) - fi - - econf \ - $(use_enable samba smb) \ - $(use_with drop-root chroot '') \ - $(use_with smi) \ - $(use_with ssl crypto "${ESYSROOT}/usr") \ - $(usex drop-root "--with-user=tcpdump" "") -} - -src_test() { - if [[ ${EUID} -ne 0 ]] || ! use drop-root; then - emake check - else - ewarn "If you want to run the test suite, make sure you either" - ewarn "set FEATURES=userpriv or set USE=-drop-root" - fi -} - -src_install() { - dosbin tcpdump - doman tcpdump.1 - dodoc *.awk - dodoc CHANGES CREDITS README.md - - if use suid; then - fowners root:tcpdump /usr/sbin/tcpdump - fperms 4110 /usr/sbin/tcpdump - fi -} - -pkg_preinst() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - -pkg_postinst() { - use suid && elog "To let normal users run tcpdump add them into tcpdump group." -} diff --git a/net-analyzer/tcpdump/tcpdump-4.99.1.ebuild b/net-analyzer/tcpdump/tcpdump-4.99.1.ebuild new file mode 100644 index 0000000000..6dc1d3f438 --- /dev/null +++ b/net-analyzer/tcpdump/tcpdump-4.99.1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools + +DESCRIPTION="A tool for network monitoring and data acquisition" +HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpdump" + +if [[ ${PV} == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump" +else + VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc + inherit verify-sig + + # Note: drop -upstream on bump, this is just because we switched to the official + # distfiles for verify-sig + SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz" + SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="BSD" +SLOT="0" +IUSE="+drop-root +smi +ssl +samba suid test" +REQUIRED_USE="test? ( samba )" + +RESTRICT="!test? ( test )" +# Assorted failures: bug #768498 +#RESTRICT="test" + +RDEPEND=" + >=net-libs/libpcap-1.10.1 + drop-root? ( + acct-group/pcap + acct-user/pcap + sys-libs/libcap-ng + ) + smi? ( net-libs/libsmi ) + ssl? ( + >=dev-libs/openssl-0.9.6m:0= + ) + suid? ( + acct-group/pcap + acct-user/pcap + ) +" +DEPEND=" + ${RDEPEND} + test? ( + dev-lang/perl + ) +" +BDEPEND="drop-root? ( virtual/pkgconfig )" + +if [[ ${PV} != *9999* ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )" +fi + +PATCHES=( + "${FILESDIR}"/${PN}-9999-libdir.patch +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + econf \ + $(use_enable samba smb) \ + $(use_with drop-root cap-ng) \ + $(use_with drop-root chroot '') \ + $(use_with smi) \ + $(use_with ssl crypto "${ESYSROOT}/usr") \ + $(usex drop-root "--with-user=pcap" "") +} + +src_test() { + if [[ ${EUID} -ne 0 ]] || ! use drop-root ; then + emake check + else + ewarn "If you want to run the test suite, make sure you either" + ewarn "set FEATURES=userpriv or set USE=-drop-root" + fi +} + +src_install() { + dosbin tcpdump + doman tcpdump.1 + dodoc *.awk + dodoc CHANGES CREDITS README.md + + if use suid ; then + fowners root:pcap /usr/sbin/tcpdump + fperms 4110 /usr/sbin/tcpdump + fi +} + +pkg_postinst() { + use suid && elog "To let normal users run tcpdump, add them to the pcap group." +} diff --git a/net-analyzer/tcpdump/tcpdump-9999.ebuild b/net-analyzer/tcpdump/tcpdump-9999.ebuild index 8352b63b1c..ac9b01e80a 100644 --- a/net-analyzer/tcpdump/tcpdump-9999.ebuild +++ b/net-analyzer/tcpdump/tcpdump-9999.ebuild @@ -1,56 +1,69 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools git-r3 user -DESCRIPTION="A Tool for network monitoring and data acquisition" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/tcpdump -" -LICENSE="BSD" -EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump" +inherit autotools + +DESCRIPTION="A tool for network monitoring and data acquisition" +HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpdump" + +if [[ ${PV} == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump" +else + VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc + inherit verify-sig + + SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz" + SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="BSD" SLOT="0" -KEYWORDS="" -IUSE="+drop-root libressl +smi +ssl +samba suid test" -RESTRICT="!test? ( test )" +IUSE="+drop-root +smi +ssl +samba suid test" REQUIRED_USE="test? ( samba )" +# Assorted failures: bug #768498 +RESTRICT="test" + RDEPEND=" - net-libs/libpcap - drop-root? ( sys-libs/libcap-ng ) + >=net-libs/libpcap-1.10.1 + drop-root? ( + acct-group/pcap + acct-user/pcap + sys-libs/libcap-ng + ) smi? ( net-libs/libsmi ) ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.6m:0= ) - libressl? ( dev-libs/libressl:= ) + >=dev-libs/openssl-0.9.6m:0= + ) + suid? ( + acct-group/pcap + acct-user/pcap ) -" -BDEPEND=" - drop-root? ( virtual/pkgconfig ) " DEPEND=" ${RDEPEND} test? ( - >=net-libs/libpcap-1.9.1 dev-lang/perl ) " +BDEPEND="drop-root? ( virtual/pkgconfig )" + +if [[ ${PV} != *9999* ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )" +fi + PATCHES=( "${FILESDIR}"/${PN}-9999-libdir.patch ) -pkg_setup() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - src_prepare() { default - eautoreconf } @@ -61,11 +74,11 @@ src_configure() { $(use_with drop-root chroot '') \ $(use_with smi) \ $(use_with ssl crypto "${ESYSROOT}/usr") \ - $(usex drop-root "--with-user=tcpdump" "") + $(usex drop-root "--with-user=pcap" "") } src_test() { - if [[ ${EUID} -ne 0 ]] || ! use drop-root; then + if [[ ${EUID} -ne 0 ]] || ! use drop-root ; then emake check else ewarn "If you want to run the test suite, make sure you either" @@ -79,19 +92,12 @@ src_install() { dodoc *.awk dodoc CHANGES CREDITS README.md - if use suid; then - fowners root:tcpdump /usr/sbin/tcpdump + if use suid ; then + fowners root:pcap /usr/sbin/tcpdump fperms 4110 /usr/sbin/tcpdump fi } -pkg_preinst() { - if use drop-root || use suid; then - enewgroup tcpdump - enewuser tcpdump -1 -1 -1 tcpdump - fi -} - pkg_postinst() { - use suid && elog "To let normal users run tcpdump add them into tcpdump group." + use suid && elog "To let normal users run tcpdump, add them to the pcap group." } diff --git a/net-dns/bind-tools/Manifest b/net-dns/bind-tools/Manifest index 421d1ae8c6..fe9aee4cdc 100644 --- a/net-dns/bind-tools/Manifest +++ b/net-dns/bind-tools/Manifest @@ -1,6 +1,6 @@ -DIST bind-9.14.12.tar.gz 6318913 BLAKE2B 38cad65923666afa5d83434c43a1b5577fe9555ca637489f780996a1b439955169c859c690f6fb96b003976eca482fe57c9226797cda5b124dc2073a90ef0515 SHA512 f4e6c50cbe8fdb44cdd8e30b4560b6fe2fccd0fd5bde527a897a66e85065265da0d0aceb95af42d5568dea95d59e68574e5a486bbb7e6c5d0af275538c353ddf -DIST bind-9.11.22.tar.gz 8248081 BLAKE2B d96be60f9f828385e3aaa2d9114480a533a90e420e6d3c57559681458a3ae7d962de85ad2dd6567a2fd601edade3114a80c3cc1e471dfc76cc0857957794c4be SHA512 8ed2ed661b87705bbb7ddde3076a132b4e53971d669600997abfa104404e0c8b4bf04cc04c6be1c2c701123db5e0d4645ab797e5a985a18f5a1d68824a3df3ed -DIST bind-9.16.4.tar.xz 3465172 BLAKE2B 0787920793798ecc5d3197e1e51d41c14170f25608077af8275fd60502e2a6f5365670ca9e611a94a53517b6a0bd55cbb37ac37a4f01063fc409def4e34c39a8 SHA512 b1cf0607b0d7569ea594e02848eed601b8faf31c527fc17d379cfff3cd45c0c8b849364af0312e9b65bc14875aad87de379281603c150a07bf021ec740e92860 -DIST bind-9.16.5.tar.xz 3474044 BLAKE2B 6908ba2d86049bc684b4876d09fe799313f0f44cc1f2ed89f0143523b9fd2a863fd8791b650f7001a5be14acde9306b70dee8c0d25b3d0676aea1a4d2878958f SHA512 789fc19f60e81f67ef13ebacd030ea5d8f8cc42cf5f06a01ee2eefe9b7c6d3b10603a3a6a3df85b0e5d770fcf462ce8dddc3a7e5f7f2dab27aa5879ee5380eb7 -DIST bind-tools-9.16.4-manpages.tar.xz 54768 BLAKE2B bff3b680673a5ebd7aad151bafb5004ca18b2ecda680320aad8821468aa399f48da20746d0e49cdfc0b431d5aedefa621015430b743968c7967bf2a5e878d1e0 SHA512 1930f4c04ae8dbdf10380082c680d59320f9a3eca3a7cbca2cb4fa83f1d4b6b00cc62a43104deb45cc56fe2e1dcc5902d6176daf1545f35d35fe297676afe6ca -DIST bind-9.16.6.tar.xz 3228368 BLAKE2B 0c2265fe0e006679733a4f7610b0c33bb8e2bd32caf26dca8cfedbea0e08df9e7665cbbbf5321199bd2e30b97ad5b0146ae4e8a9a78abadbe6d067bbd1ad8a3a SHA512 37f57db6d1633cc85a4d954a69bbb3372c65ac43fef965df5aee8dcdd32153bb5b0c6d0d5f00f353dd4464c71d74dc8e801937b930e2b8f6799fa77af5f243e0 +DIST bind-9.16.15.tar.xz 5025688 BLAKE2B 8b0723d46f812793f5a52b1ddacf21fe28e183ef8cd166eadf0af163280021fce7c0a6a560d28dacbc6dd4642e41eb5424b4de2c5ff1049a5cfa5d52e3df5beb SHA512 30dad6e2144b3ac53ef0a2d1ed3c8342120f148fc0eb6409113a6d5ed3444eecb917915fdf39c26fd223396fc1e873410a50da305f0b870864f7fbbdccec8033 +DIST bind-9.16.18.tar.xz 5023512 BLAKE2B 7766c1e6ab30ae42f0ba49d96fe0e2675e79aa01c48569d3cf5c122944319fbb88299a193ce06cc0aa67f6085fd80e29472fc7adc845e4bbb7ff6896dae87ed6 SHA512 6ba2f14324ebdc66d2a6d60e929fb47e170dd7662cf4b18ef3ad9da30a61b43c7d5539e931c483ab36e63ae0398aeed255fd672489fb332dccf182df9aa102f9 +DIST bind-9.16.21.tar.xz 5057816 BLAKE2B bc7de285b45084a4904aee7c5c3042c7a2075968f19ed76b932c976f86f60bc8bf0d6cce8889a9adf7e807c8151bd6088ef1b2b00460a4d1cff7a74bb2221d43 SHA512 2cb71e50600fd7409ca7b7e2e9cf4ef6668b07faad7980ac8060e6a76f30a315182d75534ad1dcfb740c225cdf727b2bd6aa9ceb24ab77ffff09b7b5d6eaca2d +DIST bind-9.16.22.tar.xz 5059000 BLAKE2B c4853a8be268f9666f3677adf2e64c6d74f7df44d2dc05df544cead38c6c3b86489d25a66ccea6ce8ca89fa525a1848fe93a8aaa6bb1ee090aa189bf6aad40f3 SHA512 586fb4d5a656d6539033dcdfdd230b36465a2d2e6ada651c1f1548d062a9050e7a962af87e2a56931fe24c65586d29012d4a041dcddbb28f42b4d01fe291d9d1 +DIST bind-9.16.25.tar.xz 5086780 BLAKE2B cb62d0d4e25f508f1a77fae6a11ff144d2436346c45a936d572df4c843cd72ec81cffacd0a81dcb74eb73b8bca7d0762a5746baadda36f260b79b72eade24d18 SHA512 e43c0e59159d3a5642db051f3982d8767fb726426380c32960fefe4b9afd05708ed8f7e80a98b803a580b048e1a368c888e2dd5695fa5fcd7b8b75574a27cb62 +DIST bind-9.16.27.tar.xz 5084340 BLAKE2B 37b49ce81aa5122493a4feb2bb7be53c5d46ff2ce28456aec31ce1332520a09c10bb2293c736bffe7badbc2bc3d156c05f83367678bd101e17b99ca3ff69bebf SHA512 5c71f228db83aa8cc9e65466d6e5afca4a9f80c693358111a003fe09e1a14522175eb2b6a0f11e2a2cd4fdba01f2ae315de52e394a441b3861ca2a011e02af62 diff --git a/net-dns/bind-tools/bind-tools-9.16.6.ebuild b/net-dns/bind-tools/bind-tools-9.16.15.ebuild similarity index 86% rename from net-dns/bind-tools/bind-tools-9.16.6.ebuild rename to net-dns/bind-tools/bind-tools-9.16.15.ebuild index 52d2697f36..892235add4 100644 --- a/net-dns/bind-tools/bind-tools-9.16.6.ebuild +++ b/net-dns/bind-tools/bind-tools-9.16.15.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -12,34 +12,34 @@ MY_P="${MY_PN}-${MY_PV}" DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen" HOMEPAGE="https://www.isc.org/software/bind" -SRC_URI="https://downloads.isc.org/isc/bind9/${MY_PV}/${MY_P}.tar.xz" +SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz" LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+caps doc gssapi idn ipv6 libedit readline xml" # no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687 COMMON_DEPEND=" dev-libs/libuv:= caps? ( sys-libs/libcap ) - !libressl? ( dev-libs/openssl:= ) - libressl? ( dev-libs/libressl:= ) + dev-libs/openssl:= xml? ( dev-libs/libxml2 ) idn? ( net-dns/libidn2:= ) gssapi? ( virtual/krb5 ) libedit? ( dev-libs/libedit ) !libedit? ( readline? ( sys-libs/readline:= ) - )" + ) +" DEPEND="${COMMON_DEPEND}" - RDEPEND="${COMMON_DEPEND}" # sphinx required for man-page and html creation BDEPEND=" doc? ( dev-python/sphinx ) - virtual/pkgconfig" + virtual/pkgconfig +" S="${WORKDIR}/${MY_P}" diff --git a/net-dns/bind-tools/bind-tools-9.16.5.ebuild b/net-dns/bind-tools/bind-tools-9.16.18.ebuild similarity index 90% rename from net-dns/bind-tools/bind-tools-9.16.5.ebuild rename to net-dns/bind-tools/bind-tools-9.16.18.ebuild index a881baa869..fdd10e501a 100644 --- a/net-dns/bind-tools/bind-tools-9.16.5.ebuild +++ b/net-dns/bind-tools/bind-tools-9.16.18.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -16,30 +16,30 @@ SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz" LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+caps doc gssapi idn ipv6 libedit readline xml" # no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687 COMMON_DEPEND=" dev-libs/libuv:= caps? ( sys-libs/libcap ) - !libressl? ( dev-libs/openssl:= ) - libressl? ( dev-libs/libressl:= ) + dev-libs/openssl:= xml? ( dev-libs/libxml2 ) idn? ( net-dns/libidn2:= ) gssapi? ( virtual/krb5 ) libedit? ( dev-libs/libedit ) !libedit? ( readline? ( sys-libs/readline:= ) - )" + ) +" DEPEND="${COMMON_DEPEND}" - RDEPEND="${COMMON_DEPEND}" # sphinx required for man-page and html creation BDEPEND=" doc? ( dev-python/sphinx ) - virtual/pkgconfig" + virtual/pkgconfig +" S="${WORKDIR}/${MY_P}" diff --git a/net-dns/bind-tools/bind-tools-9.16.4.ebuild b/net-dns/bind-tools/bind-tools-9.16.21.ebuild similarity index 86% rename from net-dns/bind-tools/bind-tools-9.16.4.ebuild rename to net-dns/bind-tools/bind-tools-9.16.21.ebuild index decfea5981..fdd10e501a 100644 --- a/net-dns/bind-tools/bind-tools-9.16.4.ebuild +++ b/net-dns/bind-tools/bind-tools-9.16.21.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -12,35 +12,34 @@ MY_P="${MY_PN}-${MY_PV}" DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen" HOMEPAGE="https://www.isc.org/software/bind" -SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz - https://dev.gentoo.org/~chutzpah/dist/misc/${P}-manpages.tar.xz" +SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz" LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+caps doc gssapi idn ipv6 libedit readline xml" # no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687 COMMON_DEPEND=" dev-libs/libuv:= caps? ( sys-libs/libcap ) - !libressl? ( dev-libs/openssl:= ) - libressl? ( dev-libs/libressl:= ) + dev-libs/openssl:= xml? ( dev-libs/libxml2 ) idn? ( net-dns/libidn2:= ) gssapi? ( virtual/krb5 ) libedit? ( dev-libs/libedit ) !libedit? ( readline? ( sys-libs/readline:= ) - )" + ) +" DEPEND="${COMMON_DEPEND}" - RDEPEND="${COMMON_DEPEND}" # sphinx required for man-page and html creation -BDEPEND="${PYTHON_DEPS} +BDEPEND=" doc? ( dev-python/sphinx ) - virtual/pkgconfig" + virtual/pkgconfig +" S="${WORKDIR}/${MY_P}" diff --git a/net-dns/bind-tools/bind-tools-9.14.12.ebuild b/net-dns/bind-tools/bind-tools-9.16.22.ebuild similarity index 72% rename from net-dns/bind-tools/bind-tools-9.14.12.ebuild rename to net-dns/bind-tools/bind-tools-9.16.22.ebuild index 61d9c2df8c..2d254f1dda 100644 --- a/net-dns/bind-tools/bind-tools-9.14.12.ebuild +++ b/net-dns/bind-tools/bind-tools-9.16.22.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -12,30 +12,34 @@ MY_P="${MY_PN}-${MY_PV}" DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen" HOMEPAGE="https://www.isc.org/software/bind" -SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.gz" +SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz" LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="+caps doc gssapi idn ipv6 libedit libressl readline xml" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+caps doc gssapi idn ipv6 libedit readline xml" # no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687 COMMON_DEPEND=" + dev-libs/libuv:= caps? ( sys-libs/libcap ) - !libressl? ( dev-libs/openssl:= ) - libressl? ( dev-libs/libressl:= ) + dev-libs/openssl:= xml? ( dev-libs/libxml2 ) idn? ( net-dns/libidn2:= ) gssapi? ( virtual/krb5 ) libedit? ( dev-libs/libedit ) !libedit? ( readline? ( sys-libs/readline:= ) - )" + ) +" DEPEND="${COMMON_DEPEND}" - RDEPEND="${COMMON_DEPEND}" -BDEPEND="virtual/pkgconfig" +# sphinx required for man-page and html creation +BDEPEND=" + doc? ( dev-python/sphinx ) + virtual/pkgconfig +" S="${WORKDIR}/${MY_P}" @@ -64,8 +68,10 @@ src_configure() { --without-libjson --without-zlib --without-lmdb - --with-openssl="${EPREFIX}"/usr - $(use_with idn libidn2) + --without-maxminddb + --disable-geoip + --with-openssl="${ESYSROOT}"/usr + $(use_with idn libidn2 "${ESYSROOT}"/usr) $(use_with xml libxml2) $(use_with gssapi) $(use_with readline) @@ -104,35 +110,39 @@ src_compile() { emake AR="${AR}" -C bin/dig/ emake AR="${AR}" -C bin/nsupdate/ emake AR="${AR}" -C bin/dnssec/ + emake -C doc/man/ man $(usev doc) } src_install() { + local man_dir="${S}/doc/man" + local html_dir="${man_dir}/_build/html" + dodoc README CHANGES cd "${S}"/bin/delv || die dobin delv - doman delv.1 + doman ${man_dir}/delv.1 cd "${S}"/bin/dig || die dobin dig host nslookup - doman {dig,host,nslookup}.1 + doman ${man_dir}/{dig,host,nslookup}.1 cd "${S}"/bin/nsupdate || die dobin nsupdate - doman nsupdate.1 + doman ${man_dir}/nsupdate.1 if use doc; then docinto html - dodoc nsupdate.html + dodoc ${html_dir}/nsupdate.html fi cd "${S}"/bin/dnssec || die for tool in dsfromkey importkey keyfromlabel keygen \ revoke settime signzone verify; do dobin dnssec-"${tool}" - doman dnssec-"${tool}".8 + doman ${man_dir}/dnssec-"${tool}".8 if use doc; then docinto html - dodoc dnssec-"${tool}".html + dodoc ${html_dir}/dnssec-"${tool}".html fi done } diff --git a/net-dns/bind-tools/bind-tools-9.16.25.ebuild b/net-dns/bind-tools/bind-tools-9.16.25.ebuild new file mode 100644 index 0000000000..95720a1a0c --- /dev/null +++ b/net-dns/bind-tools/bind-tools-9.16.25.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic toolchain-funcs + +MY_PN=${PN//-tools} +MY_PV=${PV/_p/-P} +MY_PV=${MY_PV/_rc/rc} +MY_P="${MY_PN}-${MY_PV}" + +DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen" +HOMEPAGE="https://www.isc.org/software/bind" +SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz" + +LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+caps doc gssapi idn ipv6 libedit readline xml" +# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687 + +COMMON_DEPEND=" + dev-libs/libuv:= + caps? ( sys-libs/libcap ) + dev-libs/openssl:= + xml? ( dev-libs/libxml2 ) + idn? ( net-dns/libidn2:= ) + gssapi? ( virtual/krb5 ) + libedit? ( dev-libs/libedit ) + !libedit? ( + readline? ( sys-libs/readline:= ) + ) +" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" + +# sphinx required for man-page and html creation +BDEPEND=" + doc? ( dev-python/sphinx ) + virtual/pkgconfig +" + +S="${WORKDIR}/${MY_P}" + +# bug 479092, requires networking +RESTRICT="test" + +src_prepare() { + default + + export LDFLAGS="${LDFLAGS} -L${EPREFIX}/usr/$(get_libdir)" + + # Disable tests for now, bug 406399 + sed -i '/^SUBDIRS/s:tests::' bin/Makefile.in lib/Makefile.in || die + + # bug #220361 + rm aclocal.m4 || die + rm -rf libtool.m4/ || die + + eautoreconf +} + +src_configure() { + local myeconfargs=( + --localstatedir="${EPREFIX}"/var + --without-python + --without-libjson + --without-zlib + --without-lmdb + --without-maxminddb + --disable-geoip + --with-openssl="${ESYSROOT}"/usr + $(use_with idn libidn2 "${ESYSROOT}"/usr) + $(use_with xml libxml2) + $(use_with gssapi) + $(use_with readline) + $(use_enable caps linux-caps) + AR="$(type -P $(tc-getAR))" + ) + + # bug 607400 + if use libedit ; then + myeconfargs+=( --with-readline=-ledit ) + elif use readline ; then + myeconfargs+=( --with-readline=-lreadline ) + else + myeconfargs+=( --without-readline ) + fi + + # bug 344029 + append-cflags "-DDIG_SIGCHASE" + + # to expose CMSG_* macros from sys/sockets.h + [[ ${CHOST} == *-solaris* ]] && append-cflags "-D_XOPEN_SOURCE=600" + + # localstatedir for nsupdate -l, bug 395785 + tc-export BUILD_CC + econf "${myeconfargs[@]}" + + # bug #151839 + echo '#undef SO_BSDCOMPAT' >> config.h +} + +src_compile() { + local AR=$(tc-getAR) + + emake AR="${AR}" -C lib/ + emake AR="${AR}" -C bin/delv/ + emake AR="${AR}" -C bin/dig/ + emake AR="${AR}" -C bin/nsupdate/ + emake AR="${AR}" -C bin/dnssec/ + emake -C doc/man/ man $(usev doc) +} + +src_install() { + local man_dir="${S}/doc/man" + local html_dir="${man_dir}/_build/html" + + dodoc README CHANGES + + cd "${S}"/bin/delv || die + dobin delv + doman ${man_dir}/delv.1 + + cd "${S}"/bin/dig || die + dobin dig host nslookup + doman ${man_dir}/{dig,host,nslookup}.1 + + cd "${S}"/bin/nsupdate || die + dobin nsupdate + doman ${man_dir}/nsupdate.1 + if use doc; then + docinto html + dodoc ${html_dir}/nsupdate.html + fi + + cd "${S}"/bin/dnssec || die + for tool in dsfromkey importkey keyfromlabel keygen \ + revoke settime signzone verify; do + dobin dnssec-"${tool}" + doman ${man_dir}/dnssec-"${tool}".8 + if use doc; then + docinto html + dodoc ${html_dir}/dnssec-"${tool}".html + fi + done +} diff --git a/net-dns/bind-tools/bind-tools-9.16.27.ebuild b/net-dns/bind-tools/bind-tools-9.16.27.ebuild new file mode 100644 index 0000000000..a928124efd --- /dev/null +++ b/net-dns/bind-tools/bind-tools-9.16.27.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic toolchain-funcs + +MY_PN=${PN//-tools} +MY_PV=${PV/_p/-P} +MY_PV=${MY_PV/_rc/rc} +MY_P="${MY_PN}-${MY_PV}" + +DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen" +HOMEPAGE="https://www.isc.org/software/bind" +SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz" + +LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+caps doc gssapi idn ipv6 libedit readline xml" +# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687 + +COMMON_DEPEND=" + dev-libs/libuv:= + caps? ( sys-libs/libcap ) + dev-libs/openssl:= + xml? ( dev-libs/libxml2 ) + idn? ( net-dns/libidn2:= ) + gssapi? ( virtual/krb5 ) + libedit? ( dev-libs/libedit ) + !libedit? ( + readline? ( sys-libs/readline:= ) + ) +" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" + +# sphinx required for man-page and html creation +BDEPEND=" + doc? ( dev-python/sphinx ) + virtual/pkgconfig +" + +S="${WORKDIR}/${MY_P}" + +# bug 479092, requires networking +RESTRICT="test" + +src_prepare() { + default + + export LDFLAGS="${LDFLAGS} -L${EPREFIX}/usr/$(get_libdir)" + + # Disable tests for now, bug 406399 + sed -i '/^SUBDIRS/s:tests::' bin/Makefile.in lib/Makefile.in || die + + # Do not disable thread local storage on Solaris, it works with our + # toolchain, and it breaks further configure checks + sed -i -e '/LDFLAGS=/s/-zrelax=transtls//' configure.ac configure || die + + # bug #220361 + rm aclocal.m4 || die + rm -rf libtool.m4/ || die + + eautoreconf +} + +src_configure() { + local myeconfargs=( + --localstatedir="${EPREFIX}"/var + --without-python + --without-libjson + --without-zlib + --without-lmdb + --without-maxminddb + --disable-geoip + --with-openssl="${ESYSROOT}"/usr + $(use_with idn libidn2 "${ESYSROOT}"/usr) + $(use_with xml libxml2) + $(use_with gssapi) + $(use_with readline) + $(use_enable caps linux-caps) + AR="$(type -P $(tc-getAR))" + ) + + # bug 607400 + if use libedit ; then + myeconfargs+=( --with-readline=-ledit ) + elif use readline ; then + myeconfargs+=( --with-readline=-lreadline ) + else + myeconfargs+=( --without-readline ) + fi + + # bug 344029 + append-cflags "-DDIG_SIGCHASE" + + # to expose CMSG_* macros from sys/sockets.h + [[ ${CHOST} == *-solaris* ]] && append-cflags "-D_XOPEN_SOURCE=600" + + # localstatedir for nsupdate -l, bug 395785 + tc-export BUILD_CC + econf "${myeconfargs[@]}" + + # bug #151839 + echo '#undef SO_BSDCOMPAT' >> config.h +} + +src_compile() { + local AR=$(tc-getAR) + + emake AR="${AR}" -C lib/ + emake AR="${AR}" -C bin/delv/ + emake AR="${AR}" -C bin/dig/ + emake AR="${AR}" -C bin/nsupdate/ + emake AR="${AR}" -C bin/dnssec/ + emake -C doc/man/ man $(usev doc) +} + +src_install() { + local man_dir="${S}/doc/man" + local html_dir="${man_dir}/_build/html" + + dodoc README CHANGES + + cd "${S}"/bin/delv || die + dobin delv + doman ${man_dir}/delv.1 + + cd "${S}"/bin/dig || die + dobin dig host nslookup + doman ${man_dir}/{dig,host,nslookup}.1 + + cd "${S}"/bin/nsupdate || die + dobin nsupdate + doman ${man_dir}/nsupdate.1 + if use doc; then + docinto html + dodoc ${html_dir}/nsupdate.html + fi + + cd "${S}"/bin/dnssec || die + for tool in dsfromkey importkey keyfromlabel keygen \ + revoke settime signzone verify; do + dobin dnssec-"${tool}" + doman ${man_dir}/dnssec-"${tool}".8 + if use doc; then + docinto html + dodoc ${html_dir}/dnssec-"${tool}".html + fi + done +} diff --git a/net-dns/bind-tools/metadata.xml b/net-dns/bind-tools/metadata.xml index b77b2edd2d..38322a5df4 100644 --- a/net-dns/bind-tools/metadata.xml +++ b/net-dns/bind-tools/metadata.xml @@ -1,14 +1,14 @@ - + - - idl0r@gentoo.org - Christian Ruppert - zlogene@gentoo.org Mikle Kolyada + + chutzpah@gentoo.org + Patrick McLean + Enable gssapi support diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild index fcd27b22c1..373ac039b6 100644 --- a/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild +++ b/net-firewall/conntrack-tools/conntrack-tools-1.4.5.ebuild @@ -10,7 +10,7 @@ SRC_URI="http://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 ~arm64 hppa x86" +KEYWORDS="~alpha amd64 ~arm64 ~hppa x86" IUSE="doc +cthelper +cttimeout +libtirpc" RDEPEND=" diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.6.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.6-r1.ebuild similarity index 90% rename from net-firewall/conntrack-tools/conntrack-tools-1.4.6.ebuild rename to net-firewall/conntrack-tools/conntrack-tools-1.4.6-r1.ebuild index 7b47745263..228854d83c 100644 --- a/net-firewall/conntrack-tools/conntrack-tools-1.4.6.ebuild +++ b/net-firewall/conntrack-tools/conntrack-tools-1.4.6-r1.ebuild @@ -1,8 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit linux-info + +inherit linux-info systemd DESCRIPTION="Connection tracking userspace tools" HOMEPAGE="http://conntrack-tools.netfilter.org" @@ -10,7 +11,7 @@ SRC_URI="http://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~x86" +KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 ~riscv x86" IUSE="doc +cthelper +cttimeout systemd" RDEPEND=" @@ -29,15 +30,15 @@ RDEPEND=" >=sys-apps/systemd-227 ) " -DEPEND=" - ${RDEPEND} +DEPEND="${RDEPEND}" +BDEPEND=" + sys-devel/bison + sys-devel/flex + virtual/pkgconfig doc? ( app-text/docbook-xml-dtd:4.1.2 app-text/xmlto ) - virtual/pkgconfig - sys-devel/bison - sys-devel/flex " pkg_setup() { @@ -93,6 +94,8 @@ src_install() { insinto /etc/conntrackd doins doc/stats/conntrackd.conf + systemd_dounit "${FILESDIR}/conntrackd.service" + dodoc -r doc/sync doc/stats AUTHORS TODO use doc && dodoc doc/manual/${PN}.html } diff --git a/net-firewall/conntrack-tools/files/conntrackd.service b/net-firewall/conntrack-tools/files/conntrackd.service new file mode 100644 index 0000000000..26f950c0d9 --- /dev/null +++ b/net-firewall/conntrack-tools/files/conntrackd.service @@ -0,0 +1,13 @@ +[Unit] +Description=Conntrack Daemon +Documentation=man:conntrackd(8) man:conntrackd.conf(5) + +[Service] +Type=notify +ExecStart=/usr/sbin/conntrackd -C /etc/conntrackd/conntrackd.conf +Restart=on-failure +ProtectSystem=full +ProtectHome=true + +[Install] +WantedBy=multi-user.target diff --git a/net-firewall/conntrack-tools/metadata.xml b/net-firewall/conntrack-tools/metadata.xml index 57e4187d16..990d814e3f 100644 --- a/net-firewall/conntrack-tools/metadata.xml +++ b/net-firewall/conntrack-tools/metadata.xml @@ -1,5 +1,5 @@ - + netmon@gentoo.org diff --git a/net-libs/libnetfilter_conntrack/Manifest b/net-libs/libnetfilter_conntrack/Manifest index a13a4b3763..6d0823261e 100644 --- a/net-libs/libnetfilter_conntrack/Manifest +++ b/net-libs/libnetfilter_conntrack/Manifest @@ -1,3 +1,2 @@ -DIST libnetfilter_conntrack-1.0.6.tar.bz2 422998 BLAKE2B 7153593e2b6f5e03a5f4579948b0d28e9ab88d39ebe08e97fe8be0eb3f10f64b36d0f85e9e35408019ab22404b3452e4c6d7b2812ea316031f3e0c4367c23019 SHA512 05b3b63928d46ed114048848c48094a762c6a7acc93fcdbe9473e82cc67851ef1a0d33b68b8fd388271b76b519c4d2ac93fd802043fa9a9da46cda5b262a1fc7 -DIST libnetfilter_conntrack-1.0.7.tar.bz2 346219 BLAKE2B 85388bb2b185fa04ce697b07675cfbd84836873a9d09092b16bba318e93da56085ea5a4726a908ed5d1974aa524bee0f912e2be23f6a4c9e9e46641baf0c6a18 SHA512 5be5ed5daba385d11123a4e497c6334c6bb7e668594e667f85596619afe607f8783c088934098a4c07557d86f9b9157ff67d28541c8f4a80a5454307b979c22b DIST libnetfilter_conntrack-1.0.8.tar.bz2 331750 BLAKE2B 614f8d80863d6f7d8110b5faf68debe3a9ba0c6737f02fa0de9d0e53d30771581becb052e7cd990b0632e9264cb9cdeb2af26a41e2b1ab9421218ec616e1f8d8 SHA512 ddc70e7e3f2d764ed1e115e4a03fe8848b8c04bd69eea0952e63131dd4dae3c23f33b8be518673e1ec3b5dbf708f5f86eac97be46fe265d95386a5e902bd0b82 +DIST libnetfilter_conntrack-1.0.9.tar.bz2 373177 BLAKE2B 701393338a0bf852b97d80a1e4ab078dea741f7181246b3dafcbe8cff287b5b9fae72c1c50867ea71baab83fa842471b2c7054fb4702bf35900a352078de8f3a SHA512 e8b03425aaba3b72e6034c215656c34176d0550c08e0455aaeb1365d9141505d0c4feaa8978c8ccf2b7af9db6c9e874ceb866347e533b41cb03a189884f4004c diff --git a/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch b/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch new file mode 100644 index 0000000000..e1ce87df4e --- /dev/null +++ b/net-libs/libnetfilter_conntrack/files/libnetfilter_conntrack-1.0.9-musl.patch @@ -0,0 +1,46 @@ +https://git.netfilter.org/libnetfilter_conntrack/patch/?id=21ee35dde73aec5eba35290587d479218c6dd824 + +From: Robert Marko +Date: Thu, 24 Feb 2022 15:01:11 +0100 +Subject: conntrack: fix build with kernel 5.15 and musl + +Currently, with kernel 5.15 headers and musl building is failing with +redefinition errors due to a conflict between the kernel and musl headers. + +Musl is able to suppres the conflicting kernel header definitions if they +are included after the standard libc ones, however since ICMP definitions +were moved into a separate internal header to avoid duplication this has +stopped working and is breaking the builds. + +It seems that the issue is that which contains the UAPI +suppression defines is included in the internal.h header and not in the +proto.h which actually includes the kernel ICMP headers and thus UAPI +supression defines are not present. + +Solve this by moving the include before the ICMP kernel +includes in the proto.h + +Fixes: bc1cb4b11403 ("conntrack: Move icmp request>reply type mapping to common file") +Signed-off-by: Robert Marko +Signed-off-by: Florian Westphal +--- a/include/internal/internal.h ++++ b/include/internal/internal.h +@@ -14,7 +14,6 @@ + #include + #include + #include +-#include + + #include + #include +--- a/include/internal/proto.h ++++ b/include/internal/proto.h +@@ -2,6 +2,7 @@ + #define _NFCT_PROTO_H_ + + #include ++#include + #include + #include + +cgit v1.2.3 diff --git a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.7.ebuild b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.7.ebuild deleted file mode 100644 index fce41470c4..0000000000 --- a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.7.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit autotools linux-info - -DESCRIPTION="programming interface (API) to the in-kernel connection tracking state table" -HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/" -SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" -IUSE="static-libs" - -RDEPEND=" - >=net-libs/libmnl-1.0.3 - >=net-libs/libnfnetlink-1.0.0 -" -DEPEND=" - ${RDEPEND} - virtual/pkgconfig -" - -DOCS=( README ) - -pkg_setup() { - linux-info_pkg_setup - - if kernel_is lt 2 6 18 ; then - die "${PN} requires at least 2.6.18 kernel version" - fi - - #netfilter core team has changed some option names with kernel 2.6.20 - if kernel_is lt 2 6 20 ; then - CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK" - else - CONFIG_CHECK="~NF_CT_NETLINK" - fi - - check_extra_config -} diff --git a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild index fefe91d642..a42aa6f12f 100644 --- a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild +++ b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.8.ebuild @@ -1,16 +1,17 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 -inherit autotools linux-info -DESCRIPTION="programming interface (API) to the in-kernel connection tracking state table" +inherit linux-info + +DESCRIPTION="Programming interface (API) to the in-kernel connection tracking state table" HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/" SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" IUSE="static-libs" RDEPEND=" @@ -31,7 +32,7 @@ pkg_setup() { die "${PN} requires at least 2.6.18 kernel version" fi - #netfilter core team has changed some option names with kernel 2.6.20 + # netfilter core team has changed some option names with kernel 2.6.20 if kernel_is lt 2 6 20 ; then CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK" else diff --git a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.ebuild b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9.ebuild similarity index 50% rename from net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.ebuild rename to net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9.ebuild index ae46400e1e..a45a3d4567 100644 --- a/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.ebuild +++ b/net-libs/libnetfilter_conntrack/libnetfilter_conntrack-1.0.9.ebuild @@ -1,29 +1,29 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -inherit autotools linux-info +EAPI=8 -DESCRIPTION="programming interface (API) to the in-kernel connection tracking state table" +inherit linux-info + +DESCRIPTION="Programming interface (API) to the in-kernel connection tracking state table" HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_conntrack/" SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86" -IUSE="static-libs" - -RDEPEND=" - >=net-libs/libmnl-1.0.3 - >=net-libs/libnfnetlink-1.0.0 -" -DEPEND=" - ${RDEPEND} - virtual/pkgconfig -" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=">=net-libs/libmnl-1.0.3 + >=net-libs/libnfnetlink-1.0.0" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" DOCS=( README ) +PATCHES=( + "${FILESDIR}"/${P}-musl.patch +) + pkg_setup() { linux-info_pkg_setup @@ -31,7 +31,7 @@ pkg_setup() { die "${PN} requires at least 2.6.18 kernel version" fi - #netfilter core team has changed some option names with kernel 2.6.20 + # netfilter core team has changed some option names with kernel 2.6.20 if kernel_is lt 2 6 20 ; then CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK" else @@ -40,3 +40,9 @@ pkg_setup() { check_extra_config } + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die +} diff --git a/net-libs/libnetfilter_conntrack/metadata.xml b/net-libs/libnetfilter_conntrack/metadata.xml index e5e613464d..442b1af935 100644 --- a/net-libs/libnetfilter_conntrack/metadata.xml +++ b/net-libs/libnetfilter_conntrack/metadata.xml @@ -1,5 +1,5 @@ - + netmon@gentoo.org diff --git a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild b/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild index 8107d628ad..6d07d30b27 100644 --- a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild +++ b/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0-r1.ebuild @@ -1,22 +1,21 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="5" +EAPI=7 -inherit linux-info autotools-utils +inherit linux-info -DESCRIPTION="userspace library that provides the programming interface to the user-space helper infrastructure" +DESCRIPTION="Userspace library for interface to user-space helper for conntrack" HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cthelper/" SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~x86" -IUSE="static-libs" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv x86" +BDEPEND="virtual/pkgconfig" RDEPEND="net-libs/libmnl:=" -DEPEND="${RDEPEND} - virtual/pkgconfig" +DEPEND="${RDEPEND}" PATCHES=( "${FILESDIR}"/${P}-clang-export.patch diff --git a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0.ebuild b/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0.ebuild deleted file mode 100644 index c86870bcbd..0000000000 --- a/net-libs/libnetfilter_cthelper/libnetfilter_cthelper-1.0.0.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit linux-info autotools-utils - -DESCRIPTION="userspace library that provides the programming interface to the user-space helper infrastructure" -HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cthelper/" -SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm hppa x86" -IUSE="static-libs" - -RDEPEND="net-libs/libmnl" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -CONFIG_CHECK="~NF_CT_NETLINK_HELPER" - -pkg_setup() { - linux-info_pkg_setup - kernel_is lt 3 6 0 && ewarn "requires at least 3.6.0 kernel version" -} diff --git a/net-libs/libnetfilter_cthelper/metadata.xml b/net-libs/libnetfilter_cthelper/metadata.xml index ceb2db8aac..c87d66d3a6 100644 --- a/net-libs/libnetfilter_cthelper/metadata.xml +++ b/net-libs/libnetfilter_cthelper/metadata.xml @@ -1,5 +1,5 @@ - + netmon@gentoo.org diff --git a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild b/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild index d897dbebf2..85aa46b43e 100644 --- a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild +++ b/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0-r1.ebuild @@ -1,22 +1,21 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="5" +EAPI=7 -inherit linux-info autotools-utils +inherit linux-info -DESCRIPTION="netlink interface to the connection tracking timeout infrastructure in the kernel packet filter" +DESCRIPTION="netlink interface for conntrack timeout infrastructure in kernel's packet filter" HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cttimeout/" SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~x86" -IUSE="static-libs" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv x86" +BDEPEND="virtual/pkgconfig" RDEPEND="net-libs/libmnl:=" -DEPEND="${RDEPEND} - virtual/pkgconfig" +DEPEND="${RDEPEND}" PATCHES=( "${FILESDIR}"/${P}-clang-export.patch diff --git a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0.ebuild b/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0.ebuild deleted file mode 100644 index 5e8392aebc..0000000000 --- a/net-libs/libnetfilter_cttimeout/libnetfilter_cttimeout-1.0.0.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit linux-info autotools-utils - -DESCRIPTION="netlink interface to the connection tracking timeout infrastructure in the kernel packet filter" -HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_cttimeout/" -SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm hppa x86" -IUSE="static-libs" - -RDEPEND="net-libs/libmnl" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -CONFIG_CHECK="~NF_CT_NETLINK_TIMEOUT" - -pkg_setup() { - linux-info_pkg_setup - kernel_is lt 3 4 0 && ewarn "requires at least 3.4.0 kernel version" -} diff --git a/net-libs/libnetfilter_cttimeout/metadata.xml b/net-libs/libnetfilter_cttimeout/metadata.xml index 430482ee0a..2b012034ed 100644 --- a/net-libs/libnetfilter_cttimeout/metadata.xml +++ b/net-libs/libnetfilter_cttimeout/metadata.xml @@ -1,5 +1,5 @@ - + netmon@gentoo.org diff --git a/net-libs/libnetfilter_queue/Manifest b/net-libs/libnetfilter_queue/Manifest index 5d637be33e..e5407949eb 100644 --- a/net-libs/libnetfilter_queue/Manifest +++ b/net-libs/libnetfilter_queue/Manifest @@ -1,2 +1,3 @@ -DIST libnetfilter_queue-1.0.2.tar.bz2 354201 BLAKE2B 5df5a94ca07a6fb919d8a153143a0e340c323bac6491c3d03f9d871eb3c31e85ab0290cc6f67f678038605e829af0dfbfbb966b1a6b9bb76ea7acc4275a7d3a4 SHA512 89fec4d943b85f35e7cef3b1b9071b1280c6e1b282b7e5cb97eb17d05b9ddd175194639ead986767d27152540fe8e167383a1f7bbfe3cdf874a5a42a2c096f11 DIST libnetfilter_queue-1.0.3.tar.bz2 314857 BLAKE2B c25b0395b13af3cecb960c39bcbc4f10a3f203aad7acaeb277346423310700d9abb5b8a65f27b008e5f45194aa6e0fd6a99c8ad25a1e3200904be70c5c6ddaa4 SHA512 1d9e0202878bc0ae26ceecd0f4fa4c21f89056e5671d46949f92f21c155d589958b7775760fc837547da34eb9a81e537e95c770d25c166e709dad16de4ca452e +DIST libnetfilter_queue-1.0.4.tar.bz2 312699 BLAKE2B 29d553c36af551cbaa3b1b4382ad38d6ea7402efafa5ff4ae99c6f05d0ddd15d24b007a4ccdcbc21b8bd9cea28859668a27a6fae4e6534f68dea79d6d0a02789 SHA512 5d81d8e8190a80c9b42bc851a87cc4f749709803b8c9964508013bafb033f1b51b65222a244885f321a2be90517c6a636533ff72b653935a2b8d819560a51187 +DIST libnetfilter_queue-1.0.5.tar.bz2 313856 BLAKE2B 0d7806fd23961f6b80f6ef63faf0fe10307a34495337a7f6dd4f0eb76b5ba8a96292b86285e0740f83414417810e47f47b1400c7d83fb4d8fc6f58954f4bd9df SHA512 732a44b602e5efaa4f5582ea25ff8f5ec8f4dca5c0e725cd93fe2d441db80416b25c6018147be90acb262d7428eb5b21b3f7b5920e612d115061ec6a19d67f85 diff --git a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild index ad6618c714..5e97c76a1a 100644 --- a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild +++ b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -10,7 +10,7 @@ SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~mips ppc ppc64 ~sparc x86" IUSE="static-libs" RDEPEND=" diff --git a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.2.ebuild b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.4.ebuild similarity index 65% rename from net-libs/libnetfilter_queue/libnetfilter_queue-1.0.2.ebuild rename to net-libs/libnetfilter_queue/libnetfilter_queue-1.0.4.ebuild index 1f9dc32697..288764d2e4 100644 --- a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.2.ebuild +++ b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.4.ebuild @@ -1,8 +1,8 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 -inherit autotools-utils linux-info +EAPI=7 +inherit linux-info DESCRIPTION="API to packets that have been queued by the kernel packet filter" HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_queue/" @@ -10,19 +10,30 @@ SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ppc ~ppc64 ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86" IUSE="static-libs" RDEPEND=" >=net-libs/libmnl-1.0.3 >=net-libs/libnfnetlink-0.0.41 " -DEPEND="${RDEPEND} - virtual/pkgconfig" - +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + app-doc/doxygen + virtual/pkgconfig +" CONFIG_CHECK="~NETFILTER_NETLINK_QUEUE" pkg_setup() { linux-info_pkg_setup kernel_is lt 2 6 14 && ewarn "requires at least 2.6.14 kernel version" } + +src_prepare() { + default + + # hack for script that was not distributed + [[ -x fixmanpages.sh ]] || ln -s $(type -P true) fixmanpages.sh +} diff --git a/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.5.ebuild b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.5.ebuild new file mode 100644 index 0000000000..149830904d --- /dev/null +++ b/net-libs/libnetfilter_queue/libnetfilter_queue-1.0.5.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit linux-info + +DESCRIPTION="API to packets that have been queued by the kernel packet filter" +HOMEPAGE="https://www.netfilter.org/projects/libnetfilter_queue/" +SRC_URI="https://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86" +IUSE="doc static-libs" + +RDEPEND=" + >=net-libs/libmnl-1.0.3 + >=net-libs/libnfnetlink-0.0.41 +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + doc? ( app-doc/doxygen ) + virtual/pkgconfig +" +CONFIG_CHECK="~NETFILTER_NETLINK_QUEUE" + +pkg_setup() { + linux-info_pkg_setup + kernel_is lt 2 6 14 && ewarn "requires at least 2.6.14 kernel version" +} + +src_configure() { + econf $(use_with doc doxygen) +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} diff --git a/net-libs/libnetfilter_queue/metadata.xml b/net-libs/libnetfilter_queue/metadata.xml index 36c0581a52..f090fb2375 100644 --- a/net-libs/libnetfilter_queue/metadata.xml +++ b/net-libs/libnetfilter_queue/metadata.xml @@ -1,5 +1,5 @@ - + netmon@gentoo.org diff --git a/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild b/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild index cc2a2bae06..22064cc960 100644 --- a/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild +++ b/net-libs/libnfnetlink/libnfnetlink-1.0.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -16,7 +16,7 @@ SRC_URI=" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" PATCHES=( "${DISTDIR}/${PATCH_FN}" ) diff --git a/net-libs/libnfnetlink/metadata.xml b/net-libs/libnfnetlink/metadata.xml index 4bdfc11bfc..0c633e16d6 100644 --- a/net-libs/libnfnetlink/metadata.xml +++ b/net-libs/libnfnetlink/metadata.xml @@ -1,5 +1,5 @@ - + netmon@gentoo.org diff --git a/net-libs/libpcap/Manifest b/net-libs/libpcap/Manifest index e437bfba26..87ff3b2564 100644 --- a/net-libs/libpcap/Manifest +++ b/net-libs/libpcap/Manifest @@ -1,2 +1,2 @@ -DIST libpcap-1.10.0-bp.tar.gz 911001 BLAKE2B bbcb1f48c5cbe8bfc46003cbf7c691e0b3a2051e319aa3ec761de045ac11bbacafe1a06b52c4cd332eb85e598a0a1ff5403ae7c3a611cc0cdd2eeab859587487 SHA512 c3d6047192ab1521687d856f2a954a38bfd8d42aedb853559a698ed3c24bfe5698efb6f81c0280b696229165c1088a58471e8d62f071343fcb14b1464f65fe3f -DIST libpcap-1.9.1.tar.gz 849407 BLAKE2B 700d8b3d25c036033c4f9b652cec6a30d4a45aa418c2ec45698018b3d3fe8d0a61f6759f5734e2c7ff9a8f42cce65fbd8b3e1b1efd44776e53674fbc609da59d SHA512 9ab9da20194e0dfb105daa28c8841118118f5a7f68b5e30e31da6c56eec91430c8ee481f1f9d20aec4d33d7ee9e6fb0b5e08a90a8d7e5ace8e6210e29e7eab0f +DIST libpcap-1.10.1-upstream.tar.gz 935221 BLAKE2B 0ec028e5d026a97b92ba6f23f88daf36b827eee08a752a0162fbabd1b5a2a70141ec403b6ff26dc3eb25ca5c6630c9c2f60f05b33161770da3d5e829c4eecdc6 SHA512 56c314f19c2b857742bf8abcb1e78066986aaa95cec339b75a3c8b70a9fa2b5167da98708352f9ec97a1cea2700cfb4e040bda108d58ac46cec9b7deab88d171 +DIST libpcap-1.10.1-upstream.tar.gz.sig 442 BLAKE2B b76bf3c40a923b6c8fb9a356dff49a90e30dd0b0d785f138ac56bf1a41ad3a6fcfa3d5b3d28c12543857c5616b8938108b06313e35e4474d50991b72d9d371c8 SHA512 f9807efd11d99524b247981e5f4f02e1ffbeaa8468a9a22c66f9931a894071b9182164807b9fd11436883d36e8b0c6cc62302852005d958e34b5236e20caa33d diff --git a/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch b/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch deleted file mode 100644 index 0b69e43a3f..0000000000 --- a/net-libs/libpcap/files/libpcap-1.8.1-usbmon.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -1493,10 +1493,9 @@ - AC_DEFINE(PCAP_SUPPORT_USB, 1, [target host supports USB sniffing]) - USB_SRC=pcap-usb-linux.c - AC_MSG_RESULT(yes) -- ac_usb_dev_name=`udevinfo -q name -p /sys/class/usb_device/usbmon 2>/dev/null` -- if test $? -ne 0 ; then -- ac_usb_dev_name="usbmon" -- fi -+ -+ ac_usb_dev_name="usbmon" -+ - AC_DEFINE_UNQUOTED(LINUX_USB_MON_DEV, "/dev/$ac_usb_dev_name", [path for device for USB sniffing]) - AC_MSG_NOTICE(Device for USB sniffing is /dev/$ac_usb_dev_name) - # diff --git a/net-libs/libpcap/files/libpcap-1.9.0-pcap-config-includedir.patch b/net-libs/libpcap/files/libpcap-1.9.0-pcap-config-includedir.patch deleted file mode 100644 index cd2c9fe61f..0000000000 --- a/net-libs/libpcap/files/libpcap-1.9.0-pcap-config-includedir.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- a/pcap-config.in -+++ b/pcap-config.in -@@ -59,13 +59,13 @@ - # - if [ "$show_cflags" = 1 -a "$show_libs" = 1 ] - then -- echo "-I$includedir -L$libdir -lpcap $LIBS" -+ echo "-L$libdir -lpcap $LIBS" - elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ] - then -- echo "-I$includedir -L$libdir $LIBS" -+ echo "-L$libdir $LIBS" - elif [ "$show_cflags" = 1 ] - then -- echo "-I$includedir" -+ echo "" - elif [ "$show_libs" = 1 ] - then - echo "-L$libdir -lpcap $LIBS" -@@ -80,13 +80,13 @@ - # - if [ "$show_cflags" = 1 -a "$show_libs" = 1 ] - then -- echo "-I$includedir -L$libdir $RPATH -l$PACKAGE_NAME" -+ echo "-L$libdir $RPATH -l$PACKAGE_NAME" - elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ] - then -- echo "-I$includedir" -+ echo "" - elif [ "$show_cflags" = 1 ] - then -- echo "-I$includedir" -+ echo "" - elif [ "$show_libs" = 1 ] - then - echo "-L$libdir $RPATH -l$PACKAGE_NAME" diff --git a/net-libs/libpcap/libpcap-1.10.0_pre.ebuild b/net-libs/libpcap/libpcap-1.10.1-r1.ebuild similarity index 59% rename from net-libs/libpcap/libpcap-1.10.0_pre.ebuild rename to net-libs/libpcap/libpcap-1.10.1-r1.ebuild index 3a80522a9f..a810d8d5d9 100644 --- a/net-libs/libpcap/libpcap-1.10.0_pre.ebuild +++ b/net-libs/libpcap/libpcap-1.10.1-r1.ebuild @@ -1,40 +1,50 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 + inherit autotools multilib-minimal DESCRIPTION="A system-independent library for user-level network packet capture" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/libpcap -" -SRC_URI=" - https://github.com/the-tcpdump-group/${PN}/archive/${P/_pre/-bp}.tar.gz -" +HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/libpcap" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc + inherit verify-sig + + # Note: drop -upstream on bump, this is just because we switched to the official + # distfiles for verify-sig + SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz" + SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )" + + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris" +fi LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" -IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug" +IUSE="bluetooth dbus netlink rdma remote static-libs usb yydebug" RDEPEND=" bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] ) dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] ) + remote? ( virtual/libcrypt:=[${MULTILIB_USEDEP}] ) rdma? ( sys-cluster/rdma-core ) usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] ) " -DEPEND=" - ${RDEPEND} -" +DEPEND="${RDEPEND}" BDEPEND=" sys-devel/flex virtual/yacc dbus? ( virtual/pkgconfig ) " -S=${WORKDIR}/${PN}-${P/_pre/-bp} +if [[ ${PV} != *9999* ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )" +fi PATCHES=( "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch diff --git a/net-libs/libpcap/libpcap-1.9.1-r3.ebuild b/net-libs/libpcap/libpcap-1.9.1-r3.ebuild deleted file mode 100644 index 2e669584a7..0000000000 --- a/net-libs/libpcap/libpcap-1.9.1-r3.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools multilib-minimal - -DESCRIPTION="A system-independent library for user-level network packet capture" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/libpcap -" -SRC_URI=" - https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" -IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug" - -RDEPEND=" - bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] ) - rdma? ( sys-cluster/rdma-core ) - usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] ) -" -DEPEND=" - ${RDEPEND} -" -BDEPEND=" - sys-devel/flex - virtual/yacc - dbus? ( virtual/pkgconfig ) -" - -S=${WORKDIR}/${PN}-${P/_} - -PATCHES=( - "${FILESDIR}"/${PN}-1.8.1-usbmon.patch - "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch -) - -src_prepare() { - default - - echo ${PV} > VERSION || die - - eautoreconf -} - -multilib_src_configure() { - ECONF_SOURCE="${S}" \ - econf \ - $(use_enable bluetooth) \ - $(use_enable dbus) \ - $(use_enable rdma) \ - $(use_enable remote) \ - $(use_enable usb) \ - $(use_enable yydebug) \ - $(use_with netlink libnl) \ - --enable-ipv6 -} - -multilib_src_compile() { - emake all shared -} - -multilib_src_install_all() { - dodoc CREDITS CHANGES VERSION TODO README.* doc/README.* - - # remove static libraries (--disable-static does not work) - if ! use static-libs; then - find "${ED}" -name '*.a' -exec rm {} + || die - fi - - find "${ED}" -name '*.la' -delete || die - - # We need this to build pppd on G/FBSD systems - if [[ "${USERLAND}" == "BSD" ]]; then - insinto /usr/include - doins pcap-int.h portability.h - fi -} diff --git a/net-libs/libpcap/libpcap-1.9.1.ebuild b/net-libs/libpcap/libpcap-1.9.1.ebuild deleted file mode 100644 index 4775c7d9c5..0000000000 --- a/net-libs/libpcap/libpcap-1.9.1.ebuild +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit autotools multilib-minimal ltprune - -DESCRIPTION="A system-independent library for user-level network packet capture" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/libpcap -" -SRC_URI=" - https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" -IUSE="bluetooth dbus netlink static-libs usb" - -RDEPEND=" - bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] ) -" -DEPEND=" - ${RDEPEND} - sys-devel/flex - virtual/yacc - dbus? ( virtual/pkgconfig ) -" - -S=${WORKDIR}/${PN}-${P/_} - -PATCHES=( - "${FILESDIR}"/${PN}-1.8.1-usbmon.patch - "${FILESDIR}"/${PN}-1.9.0-pcap-config-includedir.patch -) - -src_prepare() { - default - - echo ${PV} > VERSION || die - - eautoreconf -} - -multilib_src_configure() { - ECONF_SOURCE="${S}" \ - econf \ - $(use_enable bluetooth) \ - $(use_enable dbus) \ - $(use_enable usb) \ - $(use_with netlink libnl) \ - --disable-rdma \ - --enable-ipv6 -} - -multilib_src_compile() { - emake all shared -} - -multilib_src_install_all() { - dodoc CREDITS CHANGES VERSION TODO README.* doc/README.* - - # remove static libraries (--disable-static does not work) - if ! use static-libs; then - find "${ED}" -name '*.a' -exec rm {} + || die - fi - prune_libtool_files - - # We need this to build pppd on G/FBSD systems - if [[ "${USERLAND}" == "BSD" ]]; then - insinto /usr/include - doins pcap-int.h portability.h - fi -} diff --git a/net-libs/libpcap/libpcap-9999.ebuild b/net-libs/libpcap/libpcap-9999.ebuild index b716f85059..531bf51fe6 100644 --- a/net-libs/libpcap/libpcap-9999.ebuild +++ b/net-libs/libpcap/libpcap-9999.ebuild @@ -1,37 +1,49 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools git-r3 multilib-minimal + +inherit autotools multilib-minimal DESCRIPTION="A system-independent library for user-level network packet capture" -EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap" -HOMEPAGE=" - https://www.tcpdump.org/ - https://github.com/the-tcpdump-group/libpcap -" +HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/libpcap" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc + inherit verify-sig + + SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz" + SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris" +fi LICENSE="BSD" SLOT="0" -IUSE="bluetooth dbus netlink rdma -remote static-libs usb -yydebug" -KEYWORDS="" +IUSE="bluetooth dbus netlink rdma remote static-libs usb yydebug" RDEPEND=" bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] ) dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] ) + remote? ( virtual/libcrypt:=[${MULTILIB_USEDEP}] ) rdma? ( sys-cluster/rdma-core ) usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] ) " -DEPEND=" - ${RDEPEND} -" +DEPEND="${RDEPEND}" BDEPEND=" sys-devel/flex virtual/yacc dbus? ( virtual/pkgconfig ) " +if [[ ${PV} != *9999* ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )" +fi + PATCHES=( "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch "${FILESDIR}"/${PN}-1.10.0-usbmon.patch @@ -41,6 +53,10 @@ PATCHES=( src_prepare() { default + if ! [[ -f VERSION ]]; then + echo ${PV} > VERSION || die + fi + eautoreconf } @@ -62,7 +78,7 @@ multilib_src_compile() { } multilib_src_install_all() { - dodoc CREDITS CHANGES VERSION TODO README* + dodoc CREDITS CHANGES VERSION TODO README.* doc/README.* # remove static libraries (--disable-static does not work) if ! use static-libs; then diff --git a/net-libs/libpcap/metadata.xml b/net-libs/libpcap/metadata.xml index 9c9e8fcf34..011e819bab 100644 --- a/net-libs/libpcap/metadata.xml +++ b/net-libs/libpcap/metadata.xml @@ -1,18 +1,22 @@ - - + + - -netmon@gentoo.org -Gentoo network monitoring and analysis project - - -Use dev-libs/libnl to put wireless interfaces in monitor mode. -Enable RDMA capture support using sys-cluster/rdma-core -Enable remote packet capture which may expose libpcap-based applications to attacks by malicious remote capture servers! -Enable parser debugging code - - -cpe:/a:tcpdump:libpcap -the-tcpdump-group/libpcap - + + zlogene@gentoo.org + Mikle Kolyada + + + sam@gentoo.org + Sam James + + + Use dev-libs/libnl to put wireless interfaces in monitor mode. + Enable RDMA capture support using sys-cluster/rdma-core + Enable remote packet capture which may expose libpcap-based applications to attacks by malicious remote capture servers! + Enable parser debugging code + + + cpe:/a:tcpdump:libpcap + the-tcpdump-group/libpcap + diff --git a/net-libs/nghttp2/Manifest b/net-libs/nghttp2/Manifest index 4d09495cf3..575ac2674b 100644 --- a/net-libs/nghttp2/Manifest +++ b/net-libs/nghttp2/Manifest @@ -1,2 +1,3 @@ -DIST nghttp2-1.41.0.tar.xz 1640712 BLAKE2B 8dbd5f80bb9617d792e2eece09f6cae82907ad3a14a90084578b213191015c32ac38de87d9a39246651087b5d0e9c6c624ff806a0690973b5faa8624ee033d8f SHA512 c92e8022ccc876fa311f21bc5bf5af75feff8232efb56a4b2ab198031e974d15b67c16c046188cc76552f75a1b2e7115925d6ce1e42d6f94ae482fe69727466d -DIST nghttp2-1.42.0.tar.xz 3973284 BLAKE2B 39431619bd3c9a66eb217065bb29ceba8f3fda376343687b4774ed5e73c634f51142b407f9515ae5ad4363af5cf57c0199f9bfddf5bc08dc587419ec03cf5b45 SHA512 1d93e6262c5538e26fbf36567230b4a239dbdfee26198b1e1d5862bf4459ae435679674c047407f5c604ddff91d7717d8515532e00bcdb2aa75f27ff97dce60c +DIST nghttp2-1.45.1.tar.xz 4017852 BLAKE2B 17bc5e0a6270494a0296da7f1394d0b89666ca42ad04bcce097740da2b30cdc575f17e681a8320dc2a2161eeebb753f22f228a340fc7cd690fa883d29149bcd8 SHA512 320a8c9f29b58c55df98be4312d415bc406edbdfb0765aa37570cdb472a84f40c4f95a51c44c5488363c16ad6815c75b5503b32e43d94724c54117ff583c7150 +DIST nghttp2-1.46.0.tar.xz 4024972 BLAKE2B 85fe1259b791ff7cda163265f553e0aac8a10ef6674cf6152d5bc7747c7f4f3bc6e9d9c0472534dd7185f093936efed1b4632da64d426b6a7ac432657e8579a1 SHA512 fcf3573bcc421705190c7cf0e3230f6f3028b669cb2976d29cfeb73e706deaae91ce60d0a615472e3f296454049ea5798f1e8defdd260a98895e94fea6a7a16b +DIST nghttp2-1.47.0.tar.xz 4028580 BLAKE2B 4f5302701c8d8a89c3ae72cbb8acb4cbcbe32cd0e2995643e0b669cf802ae28e8f6e52b2d59f69f87e0d12fc64a73c251edbe01c2b0eca2676626a9e456df93f SHA512 ad6266a15789fec966db6be8ac0b9ee6cca257a3bb91fdd34a58acf0e472643a571941b5974d16c98f6ac5bfa6a03c4b70a6dff222fb0cd50909178b7e94ce48 diff --git a/net-libs/nghttp2/metadata.xml b/net-libs/nghttp2/metadata.xml index 474284272d..e79248991e 100644 --- a/net-libs/nghttp2/metadata.xml +++ b/net-libs/nghttp2/metadata.xml @@ -1,5 +1,5 @@ - + polynomial-c@gentoo.org diff --git a/net-libs/nghttp2/nghttp2-1.41.0.ebuild b/net-libs/nghttp2/nghttp2-1.45.1-r1.ebuild similarity index 78% rename from net-libs/nghttp2/nghttp2-1.41.0.ebuild rename to net-libs/nghttp2/nghttp2-1.45.1-r1.ebuild index 1673a2300e..f79b1b5a91 100644 --- a/net-libs/nghttp2/nghttp2-1.41.0.ebuild +++ b/net-libs/nghttp2/nghttp2-1.45.1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # TODO: Add python support. @@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools git-r3 else SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi DESCRIPTION="HTTP/2 C Library" @@ -20,21 +20,20 @@ HOMEPAGE="https://nghttp2.org/" LICENSE="MIT" SLOT="0/1.14" # . SONAMEs -IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml" +IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml" RESTRICT="!test? ( test )" SSL_DEPEND=" - !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] ) - libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] ) + >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}] " RDEPEND=" cxx? ( ${SSL_DEPEND} - dev-libs/boost:=[${MULTILIB_USEDEP},threads] + dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)] ) - hpack-tools? ( >=dev-libs/jansson-2.5 ) - jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] ) + hpack-tools? ( >=dev-libs/jansson-2.5:= ) + jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] ) utils? ( ${SSL_DEPEND} >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] diff --git a/net-libs/nghttp2/nghttp2-1.42.0.ebuild b/net-libs/nghttp2/nghttp2-1.46.0.ebuild similarity index 76% rename from net-libs/nghttp2/nghttp2-1.42.0.ebuild rename to net-libs/nghttp2/nghttp2-1.46.0.ebuild index 5426a55b59..6d92e5272f 100644 --- a/net-libs/nghttp2/nghttp2-1.42.0.ebuild +++ b/net-libs/nghttp2/nghttp2-1.46.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # TODO: Add python support. -EAPI=7 +EAPI=8 inherit multilib-minimal @@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools git-r3 else SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi DESCRIPTION="HTTP/2 C Library" @@ -20,21 +20,20 @@ HOMEPAGE="https://nghttp2.org/" LICENSE="MIT" SLOT="0/1.14" # . SONAMEs -IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml" +IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml" RESTRICT="!test? ( test )" SSL_DEPEND=" - !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] ) - libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] ) + >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}] " RDEPEND=" cxx? ( ${SSL_DEPEND} - dev-libs/boost:=[${MULTILIB_USEDEP},threads] + dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)] ) - hpack-tools? ( >=dev-libs/jansson-2.5 ) - jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] ) + hpack-tools? ( >=dev-libs/jansson-2.5:= ) + jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] ) utils? ( ${SSL_DEPEND} >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] @@ -72,6 +71,6 @@ multilib_src_configure() { multilib_src_install_all() { if ! use static-libs ; then - find "${ED}"/usr -name '*.la' -delete || die + find "${ED}"/usr -type f -name '*.la' -delete || die fi } diff --git a/net-libs/nghttp2/nghttp2-1.47.0.ebuild b/net-libs/nghttp2/nghttp2-1.47.0.ebuild new file mode 100644 index 0000000000..13938062e1 --- /dev/null +++ b/net-libs/nghttp2/nghttp2-1.47.0.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# TODO: Add python support. + +EAPI=8 + +inherit multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git" + inherit autotools git-r3 +else + SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="HTTP/2 C Library" +HOMEPAGE="https://nghttp2.org/" + +LICENSE="MIT" +SLOT="0/1.14" # . SONAMEs +IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml" + +RESTRICT="!test? ( test )" + +SSL_DEPEND=" + >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}] +" +RDEPEND=" + cxx? ( + ${SSL_DEPEND} + dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)] + ) + hpack-tools? ( >=dev-libs/jansson-2.5:= ) + jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] ) + utils? ( + ${SSL_DEPEND} + >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}] + net-dns/c-ares:=[${MULTILIB_USEDEP}] + ) + xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )" +BDEPEND="virtual/pkgconfig" + +src_prepare() { + default + [[ ${PV} == 9999 ]] && eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + --disable-examples + --disable-failmalloc + --disable-python-bindings + --disable-werror + --without-cython + $(use_enable cxx asio-lib) + $(use_enable debug) + $(multilib_native_use_enable hpack-tools) + $(use_enable static-libs static) + $(use_enable threads) + $(multilib_native_use_enable utils app) + $(multilib_native_use_with jemalloc) + $(multilib_native_use_with xml libxml2) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + if ! use static-libs ; then + find "${ED}"/usr -type f -name '*.la' -delete || die + fi +} diff --git a/net-libs/nghttp2/nghttp2-9999.ebuild b/net-libs/nghttp2/nghttp2-9999.ebuild index ad61312be5..6d92e5272f 100644 --- a/net-libs/nghttp2/nghttp2-9999.ebuild +++ b/net-libs/nghttp2/nghttp2-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # TODO: Add python support. -EAPI=7 +EAPI=8 inherit multilib-minimal @@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools git-r3 else SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi DESCRIPTION="HTTP/2 C Library" @@ -20,21 +20,20 @@ HOMEPAGE="https://nghttp2.org/" LICENSE="MIT" SLOT="0/1.14" # . SONAMEs -IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml" +IUSE="cxx debug hpack-tools jemalloc static-libs test +threads utils xml" RESTRICT="!test? ( test )" SSL_DEPEND=" - !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] ) - libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] ) + >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}] " RDEPEND=" cxx? ( ${SSL_DEPEND} - dev-libs/boost:=[${MULTILIB_USEDEP},threads] + dev-libs/boost:=[${MULTILIB_USEDEP},threads(+)] ) - hpack-tools? ( >=dev-libs/jansson-2.5 ) - jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] ) + hpack-tools? ( >=dev-libs/jansson-2.5:= ) + jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] ) utils? ( ${SSL_DEPEND} >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] @@ -72,6 +71,6 @@ multilib_src_configure() { multilib_src_install_all() { if ! use static-libs ; then - find "${ED}"/usr -name '*.la' -delete || die + find "${ED}"/usr -type f -name '*.la' -delete || die fi } diff --git a/sec-policy/selinux-sssd/Manifest b/sec-policy/selinux-sssd/Manifest index 131e71c099..531f9303e2 100644 --- a/sec-policy/selinux-sssd/Manifest +++ b/sec-policy/selinux-sssd/Manifest @@ -1,8 +1,4 @@ DIST patchbundle-selinux-base-policy-2.20200818-r2.tar.bz2 433623 BLAKE2B f0655c45c50347faf1217e5861298dce822e4b726c0b4489d4c70c4815842f7c17ac1b0a302ae5482a3ad25d1d5b6c4c3b6395194e79005f31560d103ad0fce6 SHA512 9fd22683ecd602a429b2d489f7b8c2936409fa060046255b72a4b95c9fdefa2455ba7655945278dc972c22f3ade6617898ed169e22001aaaaded4b47ca51b0c3 DIST patchbundle-selinux-base-policy-2.20210203-r1.tar.bz2 298116 BLAKE2B 50c5523a8b758652af6aa59d548e9499b899898b58f52f74f1667a0c552f2b2d0ed5a44352e59245c7f0ebd199e2391400168d6ab27b4160d726fccded0c56f2 SHA512 ddb877ec3e2883f57e54e7380dd449d4d89a0769a1fb87141786e5de741ac21b2ead60362fd17c25888eb1334c68f71da561f4f29f406f0d4b5d13d378f6baff -DIST patchbundle-selinux-base-policy-2.20210908-r1.tar.bz2 295091 BLAKE2B 649d9a1d9190aac4a42d460b0609175bb7e1a32624d7504ebfa294741ed5fc2eec286471af1b9128f4cdb9845240b37353a8e641e111b9e53250607c34257baf SHA512 5c9cbd97ece391a2ba0f3586bf19811a2425b9c94c9beafa781dd7b175d7572a46e31a46e8f8671a4b7e122186574f5098a247fee62e1be8afc89233d71effb9 -DIST patchbundle-selinux-base-policy-2.20220106-r1.tar.bz2 299683 BLAKE2B 9e48733878e2f809b8634a1e96a4b1bb2fc3e866e562a6ac9449da8d4af591cbe7de380384fabec50c7a7c67733253f82024ce62dee51fc73e35e0653626ff6c SHA512 314c639e08b15a94656e467e81857241b242020884c0e40272cfb422cccc35f2d4a5f067dc6ebdf8926335a65d737c233d1df75f69b356509e07fd60b46b07bf DIST refpolicy-2.20200818.tar.bz2 570896 BLAKE2B 502c00fec39e1b81e42de3f7f942623f8b3fbdeac19f9f01126722a368b7d4f70427d6e4a574754c4f2fa551e4bc75c912dbc515c004f0dcd5eb28ab416498f6 SHA512 e4b527bb7a87b9359fc42eb111d5008103f57c37128998ea0e21ec7b0b8607ffe3f67697450e4c51a0db172ece69083335b279bacef4b1bd0b7748b58caa99a7 DIST refpolicy-2.20210203.tar.bz2 564099 BLAKE2B a94a11ebb78890ba2c98714be2fe9054fdb8ccaf5154f47b881a9575a4a6865e8df475805550d7bba8039b4230c6a0c9f5c6130bf8c35a26bc7c473d550fb40d SHA512 a6ffe718626dd6121023b4cbc424c933d44ca8b662bd708baad307cf6284be0d80fef40cdc8b37f6f17ecb3636fd8d6c1d5d4072c17d835b7f500e17a3acd9fc -DIST refpolicy-2.20210908.tar.bz2 556375 BLAKE2B 12791eeed54204ef075b2d95a738c7d5007d48630d2a60d7e698bcb909dda0abcc15233811a91f4646415ab3daabe2cac46fbfbd04e61f71782e729c0209f99d SHA512 7b84330ca5dd631629302f342a11bf6211cf0711ff3f3273d63ddb072e84c8fe8bef48d511b264affc82090ee51036a09421f81878e10b0c047f572d7720de96 -DIST refpolicy-2.20220106.tar.bz2 560342 BLAKE2B bc0e65466333e02acb48adbb28b8176d3c8e508b2ff97d4f8a876d7c0a65534a62d86c9816ac59f6eed583f4b5c51cf432643edd2dad24dd51eb3cf22e2b75ac SHA512 794327d2dd07196b5f36771f9a961cdf294cf68f690735418d6bdd859499b7007c518cc022ccca9c245a5266b85bdb7cacdcaeefee14e4800937c9101476b373 diff --git a/sec-policy/selinux-sssd/metadata.xml b/sec-policy/selinux-sssd/metadata.xml index 781bc07e6d..9173800ffc 100644 --- a/sec-policy/selinux-sssd/metadata.xml +++ b/sec-policy/selinux-sssd/metadata.xml @@ -1,5 +1,5 @@ - + selinux@gentoo.org diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild index 1ea2f80bdd..414bf67d66 100644 --- a/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild +++ b/sec-policy/selinux-sssd/selinux-sssd-2.20200818-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for sssd" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" + KEYWORDS="amd64 -arm ~arm64 ~mips x86" fi diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild index 1ea2f80bdd..62027e0bdf 100644 --- a/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild +++ b/sec-policy/selinux-sssd/selinux-sssd-2.20210203-r1.ebuild @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for sssd" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" + KEYWORDS="~amd64 -arm ~arm64 ~mips ~x86" fi diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20210908-r1.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20210908-r1.ebuild deleted file mode 100644 index 1ea2f80bdd..0000000000 --- a/sec-policy/selinux-sssd/selinux-sssd-2.20210908-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="sssd" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for sssd" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sec-policy/selinux-sssd/selinux-sssd-2.20220106-r1.ebuild b/sec-policy/selinux-sssd/selinux-sssd-2.20220106-r1.ebuild deleted file mode 100644 index 6bb2ebbfe0..0000000000 --- a/sec-policy/selinux-sssd/selinux-sssd-2.20220106-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="sssd" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for sssd" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" -fi diff --git a/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild b/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild index f1c278220c..69e1d26c00 100644 --- a/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild +++ b/sec-policy/selinux-sssd/selinux-sssd-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for sssd" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + KEYWORDS="~amd64 -arm ~arm64 ~mips ~x86" fi diff --git a/sys-apps/gentoo-functions/Manifest b/sys-apps/gentoo-functions/Manifest index 331a18a8dd..a861b9983d 100644 --- a/sys-apps/gentoo-functions/Manifest +++ b/sys-apps/gentoo-functions/Manifest @@ -1 +1,2 @@ -DIST gentoo-functions-0.13.tar.gz 11334 BLAKE2B 740e6d950b62b777e533d16b707cbf6f9ab0e9de4c92c5e755af186571539949017aadcd7d428b1e635f43052a575f89787b3e92087675b600a6b7350fda24a6 SHA512 61185197e1eb4155d0db9ba024dcb1b9eb0d272e3369f986668634012e35b57c3cdcd7beecd4714b9b48a0e44e8bb73472713949e16827aa05c055ec83d537dd +DIST gentoo-functions-0.14.tar.gz 11330 BLAKE2B 72543941f2954e35d3671c1c482eda44ae00cf0c636a1d706c5b90c56dfbb985d20c156b6de650e5d33ff9fac0abaf9fc50b1172832c2bd5276f6adfe5baf3b8 SHA512 e1e0fee9f3e8b79478aaf2b9a54c8623c858e62f72f2885ea88f7006631cf513bdfaac7122f2a5fc97379bde57851793bf7d6c63a1c63a6923a7f13a73d803fc +DIST gentoo-functions-0.15.tar.gz 11236 BLAKE2B da3df4ee809c33a7aa275757380584abcc70dc5f54d32b2e9d3336a9453cfc935e932df065a65a7458b885a449774713fead5aea99ea5e7ee522e5493d35482b SHA512 b2a42e5b43c487d62e036eade88b5cc8e0f4eb249c783837a0293cdbba4ed8a1eea8742d531885bcc56eefa337853c41d257b6a9880fc0e7420b490bb6f98fd4 diff --git a/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild b/sys-apps/gentoo-functions/gentoo-functions-0.14.ebuild similarity index 64% rename from sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild rename to sys-apps/gentoo-functions/gentoo-functions-0.14.ebuild index 92daae4fe6..a750147b59 100644 --- a/sys-apps/gentoo-functions/gentoo-functions-0.13.ebuild +++ b/sys-apps/gentoo-functions/gentoo-functions-0.14.ebuild @@ -1,4 +1,4 @@ -# Copyright 2014-2020 Gentoo Authors +# Copyright 2014-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -7,8 +7,8 @@ if [[ ${PV} == 9999* ]]; then inherit git-r3 EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git" else - SRC_URI="https://github.com/gentoo/gentoo-functions/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" + SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" fi inherit toolchain-funcs flag-o-matic diff --git a/sys-apps/gentoo-functions/gentoo-functions-0.15.ebuild b/sys-apps/gentoo-functions/gentoo-functions-0.15.ebuild new file mode 100644 index 0000000000..8f51bdc66c --- /dev/null +++ b/sys-apps/gentoo-functions/gentoo-functions-0.15.ebuild @@ -0,0 +1,28 @@ +# Copyright 2014-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git" +else + SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" +fi + +inherit toolchain-funcs flag-o-matic + +DESCRIPTION="base functions required by all Gentoo systems" +HOMEPAGE="https://gitweb.gentoo.org/proj/gentoo-functions.git" + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +src_configure() { + tc-export CC + append-lfs-flags + export ROOTPREFIX="${EPREFIX}" + export PREFIX="${EPREFIX}/usr" +} diff --git a/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild b/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild index 04f1a329e9..6ab30b8f6e 100644 --- a/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild +++ b/sys-apps/gentoo-functions/gentoo-functions-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2014-2020 Gentoo Authors +# Copyright 2014-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -8,7 +8,7 @@ if [[ ${PV} == 9999* ]]; then EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoo-functions.git" else SRC_URI="https://gitweb.gentoo.org/proj/gentoo-functions.git/snapshot/${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" fi inherit toolchain-funcs flag-o-matic diff --git a/sys-apps/gentoo-functions/metadata.xml b/sys-apps/gentoo-functions/metadata.xml index 72a9e91e60..3756aa0576 100644 --- a/sys-apps/gentoo-functions/metadata.xml +++ b/sys-apps/gentoo-functions/metadata.xml @@ -1,5 +1,5 @@ - + williamh@gentoo.org diff --git a/sys-block/open-isns/Manifest b/sys-block/open-isns/Manifest index 7aa31df83d..0f443cd4bd 100644 --- a/sys-block/open-isns/Manifest +++ b/sys-block/open-isns/Manifest @@ -1,3 +1 @@ -DIST open-isns-0.100.tar.gz 300611 BLAKE2B a40e8d2bd6e5ac8ed8475d3d50ed6256871134547a044a6b51102ad47c66c335f06372b29e5585df4e59ecd7a817e5f2e48c5e944eea31333ab9f45d51040306 SHA512 ccf49ba1c60d46ae49b75424a966abc1f7e104c8ffa13013951a58a8f0ccaa1cf550f24fd2743fcaba1211a0ec8033c5df5249b7a108ae5974d4f1144dd3b169 -DIST open-isns-0.98.tar.gz 278410 BLAKE2B f90df85de4d5fd2abdcd267e3c873dff62fcac523ee280e21def057eca366bbba21c2b3bfbf5cc0798b8d0f3b0d5028ebb49000cccc850abdfb85142a7b66c34 SHA512 04263b9ace9d272f4e3776c4e1a034815475590d4b4864217a6200fcd5baea391cd788723db3c17fe0d764efc9769a70a3d2167b00e5998fb4bcb8d5fe2547ed -DIST open-isns-0.99.tar.gz 282831 BLAKE2B 7140daf08fda894bcbed3e25b122909ad0ed86b4f3db2e42a23b97480dea554194d2a33a3ebdf4e2017a57c2023dd8589f2e2fcfa60470cc3a6a3fbfb0d0ccbc SHA512 90a2297535c5e939f83c761173ce5f5f88e68adc31e41e833b23d07b6dc6959572ae7184db0084b861918199a877b251ebae4b4a7456fdd8c93400dc8457adc9 +DIST open-isns-0.101.tar.gz 301912 BLAKE2B 98c9c36640ee4d3796538a00e7ab2e4cfb057abc66a56d27ce2eb133d591ea87bcb0e4ffb31b6d72d8e8c806edffb65600c0ae7cd63c61058f36037e3db79214 SHA512 e5a392127b0d85f36e9e4aa963c0c502af8c5aea0aba6d12abb4425649969dcc20ba6e87a99083626d981438439b17b71a86320f816042d82ed5dbe7e7a63e77 diff --git a/sys-block/open-isns/files/open-isns-0.100-no_Werror.patch b/sys-block/open-isns/files/open-isns-0.100-no_Werror.patch deleted file mode 100644 index 2d966dd3a4..0000000000 --- a/sys-block/open-isns/files/open-isns-0.100-no_Werror.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 40eb9ce75518817762a0eac4a93016ab817add89 Mon Sep 17 00:00:00 2001 -From: Lee Duncan -Date: Sat, 1 Feb 2020 10:23:04 -0800 -Subject: [PATCH] Fix 586 compile issue and remove -Werror - -Using -Werror causes any issue to break the build, whereas -I'd rather let the build continue and address the issue. - -Also, fixed one signed-vs-unsigned compare for time_t, which -shows up only on 586 (32-bit). ---- - configure.ac | 2 +- - isnsdd.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index e4f3995..d956e58 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -17,7 +17,7 @@ AC_PATH_PROG(SH, sh) - dnl C Compiler features - AC_C_INLINE - if test "$GCC" = "yes"; then -- CFLAGS="-Wall -Werror -Wextra $CFLAGS" -+ CFLAGS="-Wall -Wextra $CFLAGS" - CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" - fi - -diff --git a/isnsdd.c b/isnsdd.c -index 58825cc..9cedb9f 100644 ---- a/isnsdd.c -+++ b/isnsdd.c -@@ -401,7 +401,7 @@ check_portal_registration(__attribute__((unused))void *ptr) - continue; - - last_modified = isns_object_last_modified(obj); -- if (last_modified + 2 * interval > now) { -+ if ((time_t)(last_modified + 2 * interval) > now) { - good_portals++; - continue; - } diff --git a/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch b/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch new file mode 100644 index 0000000000..66e52e5481 --- /dev/null +++ b/sys-block/open-isns/files/open-isns-0.100-respect-AR.patch @@ -0,0 +1,30 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -33,6 +33,7 @@ else + SOLIB_VERSION_OPTS = + endif + ++AR = @AR@ + CC = @CC@ + CPPFLAGS= @CPPFLAGS@ + CFLAGS = @CFLAGS@ -I. -Iinclude -I$(srcdir) -I$(srcdir)/include +@@ -161,7 +162,7 @@ solib-message.o: message.c + + ifeq ($(BUILD_STATIC),1) + $(LIB): $(LIBOBJS) +- ar cr $@ $(LIBOBJS) ++ $(AR) cr $@ $(LIBOBJS) + else + $(LIB): + endif +--- a/configure.ac ++++ b/configure.ac +@@ -4,6 +4,7 @@ AC_CONFIG_AUX_DIR([aclocal]) + + AC_CONFIG_HEADER(config.h) + ++AM_PROG_AR + AC_PROG_CC + AC_CANONICAL_HOST + AC_C_BIGENDIAN + diff --git a/sys-block/open-isns/files/open-isns-0.98-libressl-compatibility.patch b/sys-block/open-isns/files/open-isns-0.98-libressl-compatibility.patch deleted file mode 100644 index b4d5ae6378..0000000000 --- a/sys-block/open-isns/files/open-isns-0.98-libressl-compatibility.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/pki.c.orig -+++ b/pki.c -@@ -30,7 +30,7 @@ - #endif - /* OpenSSL 1.1 made a lot of structures opaque, so we need to - * define the 1.1 wrappers in previous versions. */ --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL) - #define EVP_PKEY_base_id(o) ((o)->type) - #define EVP_PKEY_get0_DSA(o) ((o)->pkey.dsa) - static EVP_MD_CTX *EVP_MD_CTX_new(void) diff --git a/sys-block/open-isns/metadata.xml b/sys-block/open-isns/metadata.xml index c3470797ff..1f3be78992 100644 --- a/sys-block/open-isns/metadata.xml +++ b/sys-block/open-isns/metadata.xml @@ -1,5 +1,5 @@ - - + + base-system@gentoo.org diff --git a/sys-block/open-isns/open-isns-0.100.ebuild b/sys-block/open-isns/open-isns-0.101.ebuild similarity index 68% rename from sys-block/open-isns/open-isns-0.100.ebuild rename to sys-block/open-isns/open-isns-0.101.ebuild index 878669c907..bab579725b 100644 --- a/sys-block/open-isns/open-isns-0.100.ebuild +++ b/sys-block/open-isns/open-isns-0.101.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,27 +11,24 @@ SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.g LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="debug libressl ssl static" +KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86" +IUSE="debug ssl static" DEPEND=" ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) + dev-libs/openssl:0= ) " RDEPEND="${DEPEND}" PATCHES=( - "${FILESDIR}/${PN}-0.98-libressl-compatibility.patch" - - # Upstream patches (can usually be removed with next version bump) - "${FILESDIR}"/${P}-no_Werror.patch + "${FILESDIR}/${PN}-0.100-respect-AR.patch" ) src_prepare() { default eautoreconf + touch aclocal/ar-lib || die #775389 } src_configure() { diff --git a/sys-block/open-isns/open-isns-0.98.ebuild b/sys-block/open-isns/open-isns-0.98.ebuild deleted file mode 100644 index d429794c4e..0000000000 --- a/sys-block/open-isns/open-isns-0.98.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit flag-o-matic - -DESCRIPTION="iSNS server and client for Linux" -HOMEPAGE="https://github.com/open-iscsi/open-isns" -SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc ~x86" -IUSE="debug libressl slp ssl static" - -DEPEND=" - ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - slp? ( net-libs/openslp )" -RDEPEND="${DEPEND}" - -PATCHES=( "${FILESDIR}/${P}-libressl-compatibility.patch" ) - -src_configure() { - use debug && append-cppflags -DDEBUG_TCP -DDEBUG_SCSI - append-lfs-flags - econf $(use_with slp) \ - $(use_with ssl security) \ - $(use_enable !static shared) -} - -src_install() { - default - emake DESTDIR="${D}" install_hdrs - emake DESTDIR="${D}" install_lib -} diff --git a/sys-block/open-isns/open-isns-0.99.ebuild b/sys-block/open-isns/open-isns-0.99.ebuild deleted file mode 100644 index e9c2b890b9..0000000000 --- a/sys-block/open-isns/open-isns-0.99.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic - -DESCRIPTION="iSNS server and client for Linux" -HOMEPAGE="https://github.com/open-iscsi/open-isns" -SRC_URI="https://github.com/open-iscsi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="debug libressl slp ssl static" - -DEPEND=" - ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - slp? ( net-libs/openslp )" -RDEPEND="${DEPEND}" - -PATCHES=( "${FILESDIR}/${PN}-0.98-libressl-compatibility.patch" ) - -src_configure() { - use debug && append-cppflags -DDEBUG_TCP -DDEBUG_SCSI - append-lfs-flags - local myeconfargs=( - $(use_with slp) - $(use_with ssl security) - $(use_enable !static shared) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - default - emake DESTDIR="${D}" install_hdrs - emake DESTDIR="${D}" install_lib - keepdir /var/lib/${PN/open-} - if ! use static ; then - find "${ED}" -type f -name "*.a" -delete || die - fi -} diff --git a/sys-devel/binutils-config/Manifest b/sys-devel/binutils-config/Manifest index 11c1fba10e..ec46795d11 100644 --- a/sys-devel/binutils-config/Manifest +++ b/sys-devel/binutils-config/Manifest @@ -1 +1,2 @@ -DIST binutils-config-5.3.2.tar.xz 6840 BLAKE2B 4f02b8d1f3f8d4adca811772edba6167fc0e739f8ff1e895f30745eca45b559da6622bb76a0cac6016d6e864fe7ad6c921c64c7ec1c18c130b3a64a1dd7b9cbc SHA512 03dfecf46fee941b7b9fc35b63ffd22c795ab54f0444f16fc00ed44d27c81f6baaca33170fb700cfc4d767be469f305890882839536363bc466ad200d28d2228 +DIST binutils-config-5.4.1.tar.xz 7328 BLAKE2B 51f0ca625abfd964cc1b6c902017edc9790da1d33a44b3da64e3b2c68ed245fc1c0eb8b3fb999f6acb88e614f47e2f53e19b456b03c069bb61cd0f39e85d786d SHA512 af12644d591152f45d573bee0499b21c293b68a9b81626e9e1d46d5a7dc40e9a24642364bdb2bce52d61cbe3d2e045f4ab6e50a9827648a820bac885f20239cd +DIST binutils-config-5.4.tar.xz 7332 BLAKE2B 1dd0fdebf028e9d95caa395948037d51ac1e627f370921b56fc99a6fe2e2100ddb202c8027ad1e67330306de8b4cbc6a03753105d401198e515b22fca94f760f SHA512 79411afcbec3a6cce960be1b06e4a6efdf55081992f6a92157737f7ef41fc61eaec0005078a4ce0cd78ad6af14583ab85f4f2b7b43808238088d521e1aa31af1 diff --git a/sys-devel/binutils-config/binutils-config-5-r4.ebuild b/sys-devel/binutils-config/binutils-config-5-r4.ebuild deleted file mode 100644 index 39263f45c2..0000000000 --- a/sys-devel/binutils-config/binutils-config-5-r4.ebuild +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" - -inherit prefix - -DESCRIPTION="Utility to change the binutils version being used" -HOMEPAGE="https://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd" -IUSE="" - -# We also RDEPEND on sys-apps/findutils which is in base @system -RDEPEND="sys-apps/gentoo-functions - !/dev/null | awk '$NF == "*" { print $2 }') ; do + binutils-config ${x} + done +} diff --git a/sys-devel/binutils-config/binutils-config-5.3.2.ebuild b/sys-devel/binutils-config/binutils-config-5.4.ebuild similarity index 81% rename from sys-devel/binutils-config/binutils-config-5.3.2.ebuild rename to sys-devel/binutils-config/binutils-config-5.4.ebuild index 2a949b4fb1..11e69fe4f7 100644 --- a/sys-devel/binutils-config/binutils-config-5.3.2.ebuild +++ b/sys-devel/binutils-config/binutils-config-5.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -9,8 +9,8 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git" inherit git-r3 else - SRC_URI="https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" + SRC_URI="https://dev.gentoo.org/~sam/distfiles/${P}.tar.xz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" fi DESCRIPTION="Utility to change the binutils version being used" @@ -24,7 +24,7 @@ IUSE="+native-symlinks" RDEPEND="sys-apps/gentoo-functions" src_compile() { - emake DESTDIR="${D}" PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)" + emake PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)" } src_install() { diff --git a/sys-devel/binutils-config/binutils-config-9999.ebuild b/sys-devel/binutils-config/binutils-config-9999.ebuild new file mode 100644 index 0000000000..0282c67448 --- /dev/null +++ b/sys-devel/binutils-config/binutils-config-9999.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git" + inherit git-r3 +else + SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +DESCRIPTION="Utility to change the binutils version being used" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Toolchain" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+native-symlinks" + +# We also RDEPEND on sys-apps/findutils which is in base @system +RDEPEND="sys-apps/gentoo-functions" + +src_compile() { + emake PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)" +} + +src_install() { + emake DESTDIR="${D}" PV="${PV}" install +} + +pkg_postinst() { + # Re-register all targets. USE flags or new versions can change + # installed symlinks. + local x + for x in $(binutils-config -C -l 2>/dev/null | awk '$NF == "*" { print $2 }') ; do + binutils-config ${x} + done +} diff --git a/sys-devel/binutils-config/files/binutils-config-5 b/sys-devel/binutils-config/files/binutils-config-5 deleted file mode 100755 index d4df601a74..0000000000 --- a/sys-devel/binutils-config/files/binutils-config-5 +++ /dev/null @@ -1,490 +0,0 @@ -#!/bin/bash -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# Format of /etc/env.d/binutils/: -# config-TARGET: CURRENT=version for TARGET -# TARGET-VER: has a TARGET and VER variable - -EPREFIX="@GENTOO_PORTAGE_EPREFIX@" -if [[ ${EPREFIX} == "@"GENTOO_PORTAGE_EPREFIX"@" ]] ; then - EPREFIX="" -fi - -: ${ROOT:=/} -[[ ${ROOT} != */ ]] && ROOT="${ROOT}/" -[[ ${ROOT} != /* ]] && ROOT="${PWD%/}/${ROOT}" - -EROOT="${ROOT%/}${EPREFIX}/" - -cd "${EPREFIX}/" - -trap ":" INT QUIT TSTP - -argv0=${0##*/} -FUNCTIONS_SH="${EPREFIX}/lib/gentoo/functions.sh" -source ${FUNCTIONS_SH} || { - echo "${argv0}: Could not source ${FUNCTIONS_SH}!" 1>&2 - exit 1 -} -esyslog() { :; } -die() { eerror "${argv0}: $*"; exit 1; } -umask 022 - -usage() { -cat << USAGE_END -Usage: ${HILITE}binutils-config${NORMAL} ${GOOD}[options]${NORMAL} ${BRACKET}[binutils profile]${NORMAL} - -${HILITE}General Options:${NORMAL} - ${GOOD}-c, --get-current-profile${NORMAL} Print current profile - ${GOOD}-l, --list-profiles${NORMAL} Print a list of available profiles - ${GOOD}-u, --uninstall${NORMAL} Remove all signs of specified target - ${GOOD}-d, --debug${NORMAL} Execute with debug output - -${HILITE}General Cruft:${NORMAL} - ${GOOD}--linker${NORMAL} Switch to specified linker (if supported) - -Profile names are of the form: ${BRACKET}-${NORMAL} -For example: ${BRACKET}i686-pc-linux-gnu-2.15.92.0.2${NORMAL} - -For more info, please see ${HILITE}binutils-config${NORMAL}(8). -USAGE_END - - exit ${1:-1} -} - -mv_if_diff() { - if cmp -s "$1" "$2" ; then - rm -f "$1" - else - mv -f "$1" "$2" - fi -} -atomic_ln() { - local target=$1 linkdir=$2 linkname=$3 linktmp linkfull - linktmp="${linkdir}/.binutils-config.tmp.${linkname}" - linkfull="${linkdir}/${linkname}" - if [[ -d ${linkfull} ]] ; then - # if linking to a dir, we need a little magic to - # make it atomic since `mv -T` is not portable - rm -rf "${linktmp}" - mkdir -p "${linktmp}" - ln -sf "${target}" "${linktmp}/${linkname}" - mv "${linktmp}/${linkname}" "${linktmp}/../" - rmdir "${linktmp}" - else - # `ln` will expand into unlink();symlink(); which - # is not atomic for a small amount of time, but - # `mv` is a single rename() call - ln -sf "${target}" "${linktmp}" - mv "${linktmp}" "${linkfull}" - fi -} - -setup_env() { - unset TARGET VER LIBPATH - source "${ENV_D}/${PROFILE}" - if [[ -z ${TARGET} ]] ; then - eerror "${PROFILE} is invalid (no \$TARGET defined) :(" - return 1 - fi - if [[ -z ${VER} ]] ; then - eerror "${PROFILE} is invalid (no \$VER defined) :(" - return 1 - fi - - # - # Generate binary symlinks - # - BINPATH="" - BINPATH_LINKS="" - if [[ ${TARGET} != ${HOST} ]] ; then - # - # Newer paths: /usr/${HOST}/${TARGET}/... - # Older paths: /usr/${TARGET}/... - # - if [[ -d "${EROOT}"/usr/${HOST}/${TARGET}/binutils-bin/${VER} ]] ; then - BINPATH="${EPREFIX}"/usr/${HOST}/${TARGET}/binutils-bin/${VER} - BINPATH_LINKS="${EPREFIX}"/usr/libexec/gcc/${TARGET} - fi - fi - if [[ -z ${BINPATH} ]] ; then - BINPATH="${EPREFIX}"/usr/${TARGET}/binutils-bin/${VER} - BINPATH_LINKS="${EPREFIX}"/usr/${TARGET}/bin - fi -} - -# Lists of headers that various versions have installed. -HEADERS=( - ansidecl.h bfd.h bfdlink.h demangle.h dis-asm.h dyn-string.h - fibheap.h hashtab.h libiberty.h objalloc.h plugin-api.h - splay-tree.h symcat.h -) - -switch_profile() { - local x - - ebegin "Switching to ${PROFILE}" - - setup_env || return 1 - - cd "${ROOT}/${BINPATH}" || exit 1 - mkdir -p "${ROOT}/${BINPATH_LINKS}" "${EROOT}/usr/bin" - for x in * ; do - atomic_ln "${BINPATH}/${x}" "${ROOT}/${BINPATH_LINKS}" "${x}" - atomic_ln "${BINPATH_LINKS}/${x}" "${EROOT}/usr/bin" "${TARGET}-${x}" - if [[ ${TARGET} == ${HOST} ]] ; then - atomic_ln "${TARGET}-${x}" "${EROOT}/usr/bin" "${x}" - fi - done - - # - # Generate library / ldscripts symlinks - # - : ${LIBPATH:=${EPREFIX}/usr/lib/binutils/${TARGET}/${VER}} - cd "${ROOT}/${LIBPATH}" || exit 1 - if [[ ${TARGET} == ${HOST} ]] ; then - dstlib=${EROOT}/usr/${HOST}/lib - else - dstlib=${EROOT}/usr/${HOST}/${TARGET}/lib - fi - # When upgrading, we need to clean up ldscripts and libs. - # Don't symlink back in the libs -- the binutils-lib package handles - # these now. - # TODO: Stop requiring even the ldscripts symlink. - mkdir -p "${dstlib}" - rm -rf "${ROOT}/${BINPATH_LINKS}"/ldscripts - atomic_ln "${LIBPATH}/ldscripts" "${dstlib}" "ldscripts" - find -L "${dstlib}" -xtype l -name 'lib*' -delete - # Detect older binutils w/broken rpaths. #562460 - # We can hardcode the "/lib" part since that's what the binutils - # configure scripts have. They did not include any other path. - if [[ $(scanelf -qF '%r#F' "${ROOT}/${BINPATH}/as") == */lib ]] ; then - ewarn "Old cross-binutils detected; please re-emerge to fix (see bug #562460)." - for x in lib* ; do - atomic_ln "${LIBPATH}/${x}" "${dstlib}" "${x}" - done - fi - - # - # Clean out old generated include symlinks - # - INCPATH=${LIBPATH}/include - if [[ -d ${ROOT}/${INCPATH} ]] ; then - cd "${ROOT}/${INCPATH}" || exit 1 - if [[ ${HOST} == ${TARGET} ]] ; then - # The binutils-lib package handles these files now. - for x in libiberty "${HEADERS[@]}" ; do - x="${EROOT}/usr/include/${x}" - if [[ -L ${x} ]] ; then - rm "${x}" - fi - done - else - # Clean out old path -- cannot use '-exec {} +' syntax here - find . -type f -exec rm -f "${EROOT}/usr/${TARGET}/usr/include/{}" \; - rmdir "${EROOT}/usr/${TARGET}/usr/include" >& /dev/null - rmdir "${EROOT}/usr/${TARGET}/usr" >& /dev/null - rmdir "${EROOT}/usr/${TARGET}" >& /dev/null - fi - fi - - # - # Make sure proper paths get updated - # - local env_update_flag="--no-ldconfig" - if [[ ${TARGET} == ${HOST} ]] ; then - # Delete old config now that binutils-libs installs these files. - # Note: This skips ldconfig update if env.d had LDPATH, but meh. - # Most people have upgraded to ld.so.conf.d, and someone else will - # eventually re-run ldconfig for us. - x="${EROOT}"/etc/ld.so.conf.d/05binutils.conf - if [[ -e ${x} ]]; then - rm -f "${x}" - env_update_flag="" - fi - - DATAPATH="${EPREFIX}"/usr/share/binutils-data/${TARGET}/${VER} - local e="${EROOT}"/etc/env.d/05binutils - local ee="${e}.tmp" - rm -f "${ee}" - [[ -d ${ROOT}/${DATAPATH}/man ]] && echo "MANPATH=${DATAPATH}/man" >> "${ee}" - [[ -d ${ROOT}/${DATAPATH}/info ]] && echo "INFOPATH=${DATAPATH}/info" >> "${ee}" - mv_if_diff "${ee}" "${e}" - fi - - local c="${ENV_D}/config-${TARGET}" - local cc="${c}.tmp" - echo "CURRENT=${VER}" > "${cc}" - mv_if_diff "${cc}" "${c}" - - eend 0 - - # - # Regen env.d if need/can be - # - if [[ ${ROOT} == "/" ]] && [[ ${TARGET} == ${HOST} ]] ; then - env-update ${env_update_flag} - echo - ewarn "Please remember to run:" - echo - ewarn " # . ${EPREFIX}/etc/profile" - echo - fi - - return 0 -} - -uninstall_target() { - : ${TARGET:=${UARG}} - - if [[ ${TARGET} == ${HOST} ]] ; then - die "refusing to uninstall native binutils" - fi - - shopt -s nullglob - PROFILE="" - - for PROFILE in "${ENV_D}"/${TARGET}-* ; do - ewarn "Removing all signs of ${PROFILE##*/}" - rm -f "${ENV_D}"/${PROFILE} - done - if [[ -z ${PROFILE} ]] && [[ ! -e ${ENV_D}/config-${TARGET} ]] ; then - die "no profiles exist for '${TARGET}'" - fi - - rm -f "${ENV_D}"/config-${TARGET} - - local x - for x in \ - addr2line ar as c++filt dwp elf2flt elfedit flthdr gprof \ - ld ld.{bfd,gold,real} \ - nm objcopy objdump ranlib readelf size strings strip - do - x=( - "${EROOT}"/usr/bin/${TARGET}-${x} - "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin/${x} - "${EROOT}"/usr/libexec/gcc/${TARGET}/${x} - ) - rm -f "${x[@]}" - done - for x in "${HEADERS[@]}" ; do - rm -f "${EROOT}"/usr/{${HOST}/,}${TARGET}/{usr/,}include/${x} - done - for x in bfd iberty opcodes ; do - rm -f "${EROOT}"/usr/${HOST}/${TARGET}/lib/lib${x}{{-*,}.so,.a,.la} - done - # Delete broken symlinks - local destdir="${EROOT}/usr/${HOST}/${TARGET}" - rm -f "${destdir}"/lib/ldscripts - find -L "${destdir}"/lib -type l -exec rm {} + - rmdir \ - "${destdir}"/{bin,include,lib,usr} \ - "${destdir}" \ - "${EROOT}"/var/db/pkg/cross-${TARGET} \ - "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin \ - "${EROOT}"/usr/libexec/gcc/${TARGET} \ - 2>/dev/null - - rm -f "${ENV_D}"/${TARGET}-* -} - -set_current_profile() { - if [[ ! -f ${ENV_D}/config-${TARGET} ]] ; then - eerror "${argv0}: unable to locate a profile for target: ${TARGET}" - return 1 - fi - - source "${ENV_D}/config-${TARGET}" - - if [[ -z ${CURRENT} ]] ; then - eerror "${argv0}: no binutils profile is active!" - return 1 - fi - - echo "${TARGET}-${CURRENT}" - - return 0 -} -get_current_profile() { echo "${PROFILE}" ; } - -list_profiles() { - local x i target - - if [[ ${ROOT} != / ]] ; then - echo "Using binutils-config info in ${ROOT}" - fi - - set -- "${ENV_D}"/* - target= - i=1 - - for x ; do - # skip broken links and config files - [[ -f ${x} ]] || continue - [[ ${x} == */config-* ]] && continue - - source "${x}" - if [[ ${target} != ${TARGET} ]] ; then - [[ -n ${target} ]] && echo - target=${TARGET} - fi - - x=${x##*/} - if [[ -e ${ENV_D}/config-${TARGET} ]] ; then - source "${ENV_D}/config-${TARGET}" - if [[ ${VER} == ${CURRENT} ]] ; then - [[ ${TARGET} == ${HOST} ]] \ - && x="${x} ${GOOD}*${NORMAL}" \ - || x="${x} ${HILITE}*${NORMAL}" - fi - fi - - # We would align the [...] field like so: - #printf ' [%*ss] %s\n' ${##} "${i}" "${x}" - # but this breaks simple scripting: `binutils -l | awk '{print $2}'` - - # Or we could align the target col like so: - #printf ' [%s]%*s %s\n' "${i}" $(( ${##} - ${#i} )) "" "${x}" - # but i'm not sold that it looks better - - # So keep it simple ... only makes a diff anyways for crazy people - # like me which have 100+ binutils packages installed ... - echo " [$i] ${x}" - ((++i)) - done -} - -switch_linker() { - local bpath ld=$1 - - case ${ld} in - ld.*) ;; - *) die "not supported: linker must start with 'ld.'" ;; - esac - - setup_env || return 1 - bpath="${ROOT}/${BINPATH}" - - # does this binutils even support the requested linker ? - if [[ ! -e ${bpath}/${ld} ]] ; then - die "sorry, but ${PROFILE} doesn't support the ${ld} linker" - fi - - # switch it up - ebegin "Setting default linker to ${ld} for ${PROFILE}" - atomic_ln ${ld} "${bpath}" ld - eend $? -} - -set_HOST() { - # Set HOST to CHOST if it isn't already set - : ${HOST:=${CHOST:-$(portageq envvar CHOST)}} -} - -ENV_D="${EROOT}etc/env.d/binutils" - -DEBUG="no" -NEED_ACTION="yes" -DOIT="switch_profile" -PROFILE="current" -HOST="" -TARGET="" -unset UARG - -select_action() { - if [[ ${NEED_ACTION} != "no" ]] ; then - NEED_ACTION="no" - DOIT=$1 - else - die "one action at a time!" - fi -} - -while [[ $# -gt 0 ]] ; do - x=$1 - shift - case ${x} in - -c|--get-current-profile) select_action get_current_profile ;; - -l|--list|--list-profiles) select_action list_profiles ;; - -u|--uninstall) select_action uninstall_target ;; - --linker) select_action "switch_linker $1"; shift ;; - -d|--debug) DEBUG="yes" ;; - -h|--help) usage 0 ;; - -V|--version) - ver="@PV@" - echo "binutils-config-${ver/@'PV'@/git}" - exit 0 - ;; - -*) - die "invalid switch! Try '--help'." - ;; - *) - if [[ ${UARG+set} == "set" ]] ; then - die "only one profile/target at a time please" - fi - NEED_ACTION="maybe" - UARG=${x} - ;; - esac -done - -[[ ${NEED_ACTION} == "yes" ]] && usage 1 -[[ ${DEBUG} == "yes" ]] && set -x - -# All operations need to know the current HOST to figure out -# what is a native target and what is a cross target -set_HOST - -# All operations need to know the profile the user wants -case ${DOIT} in -switch_profile|switch_linker_*) - # decode user's profile choice - x=${UARG:-$(TARGET=${HOST} set_current_profile)} - PROFILE="" - if [[ -z $(echo ${x} | tr -d '[:digit:]') ]] ; then - # User gave us a # representing the profile - i=1 - for y in "${ENV_D}"/* ; do - [[ ${y/config-} != ${y} ]] && continue - - if [[ -f ${y} ]] && [[ ${x} -eq ${i} ]] ; then - PROFILE=${y##*/} - break - fi - ((++i)) - done - fi - - if [[ -z ${PROFILE} ]] ; then - # User gave us a full HOST-ver - x=${x##*/} - if [[ -f ${ENV_D}/${x} ]] ; then - # Valid HOST-ver yeah! - PROFILE=${x} - else - # Not a valid HOST-ver ... - if [[ ! -f ${ENV_D}/config-${x} ]] ; then - # Maybe they just gave us a ver ... - if [[ -f ${ENV_D}/${HOST}-${x} ]] ; then - x=${HOST}-${x} - else - die "could not locate '$x' in '${ENV_D}/'!" - fi - PROFILE=${x} - else - # Maybe they just gave us a target ... pick active profile - PROFILE=$(TARGET=${x} set_current_profile) - fi - fi - fi - ;; -*) - # lookup current profile as the user gave us a target - PROFILE=$(TARGET=${UARG:-${HOST}} set_current_profile) || exit 1 - ;; -esac - -eval ${DOIT} - -# vim:ts=4 diff --git a/sys-devel/binutils-config/files/binutils-config-5.1 b/sys-devel/binutils-config/files/binutils-config-5.1 deleted file mode 100644 index 26ff278eec..0000000000 --- a/sys-devel/binutils-config/files/binutils-config-5.1 +++ /dev/null @@ -1,482 +0,0 @@ -#!/bin/bash -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# Format of /etc/env.d/binutils/: -# config-TARGET: CURRENT=version for TARGET -# TARGET-VER: has a TARGET and VER variable - -EPREFIX="@GENTOO_PORTAGE_EPREFIX@" -if [[ ${EPREFIX} == "@"GENTOO_PORTAGE_EPREFIX"@" ]] ; then - EPREFIX="" -fi - -: ${ROOT:=/} -[[ ${ROOT} != */ ]] && ROOT="${ROOT}/" -[[ ${ROOT} != /* ]] && ROOT="${PWD%/}/${ROOT}" - -EROOT="${ROOT%/}${EPREFIX}/" - -cd "${EPREFIX}/" - -trap ":" INT QUIT TSTP - -argv0=${0##*/} -FUNCTIONS_SH="${EPREFIX}/lib/gentoo/functions.sh" -source ${FUNCTIONS_SH} || { - echo "${argv0}: Could not source ${FUNCTIONS_SH}!" 1>&2 - exit 1 -} -esyslog() { :; } -die() { eerror "${argv0}: $*"; exit 1; } -umask 022 - -usage() { -cat << USAGE_END -Usage: ${HILITE}binutils-config${NORMAL} ${GOOD}[options]${NORMAL} ${BRACKET}[binutils profile]${NORMAL} - -${HILITE}General Options:${NORMAL} - ${GOOD}-c, --get-current-profile${NORMAL} Print current profile - ${GOOD}-l, --list-profiles${NORMAL} Print a list of available profiles - ${GOOD}-u, --uninstall${NORMAL} Remove all signs of specified target - ${GOOD}-d, --debug${NORMAL} Execute with debug output - -${HILITE}General Cruft:${NORMAL} - ${GOOD}--linker${NORMAL} Switch to specified linker (if supported) - -Profile names are of the form: ${BRACKET}-${NORMAL} -For example: ${BRACKET}i686-pc-linux-gnu-2.15.92.0.2${NORMAL} - -For more info, please see ${HILITE}binutils-config${NORMAL}(8). -USAGE_END - - exit ${1:-1} -} - -mv_if_diff() { - if cmp -s "$1" "$2" ; then - rm -f "$1" - else - mv -f "$1" "$2" - fi -} -atomic_ln() { - local target=$1 linkdir=$2 linkname=$3 linktmp linkfull - linktmp="${linkdir}/.binutils-config.tmp.${linkname}" - linkfull="${linkdir}/${linkname}" - if [[ -d ${linkfull} ]] ; then - # if linking to a dir, we need a little magic to - # make it atomic since `mv -T` is not portable - rm -rf "${linktmp}" - mkdir -p "${linktmp}" - ln -sf "${target}" "${linktmp}/${linkname}" - mv "${linktmp}/${linkname}" "${linktmp}/../" - rmdir "${linktmp}" - else - # `ln` will expand into unlink();symlink(); which - # is not atomic for a small amount of time, but - # `mv` is a single rename() call - ln -sf "${target}" "${linktmp}" - mv "${linktmp}" "${linkfull}" - fi -} - -setup_env() { - unset TARGET VER LIBPATH - source "${ENV_D}/${PROFILE}" - if [[ -z ${TARGET} ]] ; then - eerror "${PROFILE} is invalid (no \$TARGET defined) :(" - return 1 - fi - if [[ -z ${VER} ]] ; then - eerror "${PROFILE} is invalid (no \$VER defined) :(" - return 1 - fi - - # - # Generate binary symlinks - # - BINPATH="" - BINPATH_LINKS="" - if [[ ${TARGET} != ${HOST} ]] ; then - # - # Newer paths: /usr/${HOST}/${TARGET}/... - # Older paths: /usr/${TARGET}/... - # - if [[ -d "${EROOT}"/usr/${HOST}/${TARGET}/binutils-bin/${VER} ]] ; then - BINPATH="${EPREFIX}"/usr/${HOST}/${TARGET}/binutils-bin/${VER} - BINPATH_LINKS="${EPREFIX}"/usr/libexec/gcc/${TARGET} - fi - fi - if [[ -z ${BINPATH} ]] ; then - BINPATH="${EPREFIX}"/usr/${TARGET}/binutils-bin/${VER} - BINPATH_LINKS="${EPREFIX}"/usr/${TARGET}/bin - fi -} - -# Lists of headers that various versions have installed. -HEADERS=( - ansidecl.h bfd.h bfdlink.h demangle.h dis-asm.h dyn-string.h - fibheap.h hashtab.h libiberty.h objalloc.h plugin-api.h - splay-tree.h symcat.h -) - -switch_profile() { - local x - - ebegin "Switching to ${PROFILE}" - - setup_env || return 1 - - cd "${ROOT}/${BINPATH}" || exit 1 - mkdir -p "${ROOT}/${BINPATH_LINKS}" "${EROOT}/usr/bin" - for x in * ; do - atomic_ln "${BINPATH}/${x}" "${ROOT}/${BINPATH_LINKS}" "${x}" - atomic_ln "${BINPATH_LINKS}/${x}" "${EROOT}/usr/bin" "${TARGET}-${x}" - if [[ ${TARGET} == ${HOST} ]] ; then - atomic_ln "${TARGET}-${x}" "${EROOT}/usr/bin" "${x}" - fi - done - - # - # Generate library / ldscripts symlinks - # - : ${LIBPATH:=${EPREFIX}/usr/lib/binutils/${TARGET}/${VER}} - cd "${ROOT}/${LIBPATH}" || exit 1 - if [[ ${TARGET} == ${HOST} ]] ; then - dstlib=${EROOT}/usr/${HOST}/lib - else - dstlib=${EROOT}/usr/${HOST}/${TARGET}/lib - fi - # When upgrading, we need to clean up ldscripts and libs. - # Don't symlink back in the libs -- the binutils-lib package handles - # these now. - # TODO: Stop requiring even the ldscripts symlink. - mkdir -p "${dstlib}" - rm -rf "${ROOT}/${BINPATH_LINKS}"/ldscripts - atomic_ln "${LIBPATH}/ldscripts" "${dstlib}" "ldscripts" - find -L "${dstlib}" -xtype l -name 'lib*' -delete - # Detect older binutils w/broken rpaths. #562460 - # We can hardcode the "/lib" part since that's what the binutils - # configure scripts have. They did not include any other path. - if [[ $(scanelf -qF '%r#F' "${ROOT}/${BINPATH}/as") == */lib ]] ; then - ewarn "Old cross-binutils detected; please re-emerge to fix (see bug #562460)." - for x in lib* ; do - atomic_ln "${LIBPATH}/${x}" "${dstlib}" "${x}" - done - fi - - # - # Clean out old generated include symlinks - # - INCPATH=${LIBPATH}/include - if [[ -d ${ROOT}/${INCPATH} ]] ; then - cd "${ROOT}/${INCPATH}" || exit 1 - if [[ ${HOST} != ${TARGET} ]] ; then - # Clean out old path -- cannot use '-exec {} +' syntax here - find . -type f -exec rm -f "${EROOT}/usr/${TARGET}/usr/include/{}" \; - rmdir "${EROOT}/usr/${TARGET}/usr/include" >& /dev/null - rmdir "${EROOT}/usr/${TARGET}/usr" >& /dev/null - rmdir "${EROOT}/usr/${TARGET}" >& /dev/null - fi - fi - - # - # Make sure proper paths get updated - # - local env_update_flag="--no-ldconfig" - if [[ ${TARGET} == ${HOST} ]] ; then - # Delete old config now that binutils-libs installs these files. - # Note: This skips ldconfig update if env.d had LDPATH, but meh. - # Most people have upgraded to ld.so.conf.d, and someone else will - # eventually re-run ldconfig for us. - x="${EROOT}"/etc/ld.so.conf.d/05binutils.conf - if [[ -e ${x} ]]; then - rm -f "${x}" - env_update_flag="" - fi - - DATAPATH="${EPREFIX}"/usr/share/binutils-data/${TARGET}/${VER} - local e="${EROOT}"/etc/env.d/05binutils - local ee="${e}.tmp" - rm -f "${ee}" - [[ -d ${ROOT}/${DATAPATH}/man ]] && echo "MANPATH=${DATAPATH}/man" >> "${ee}" - [[ -d ${ROOT}/${DATAPATH}/info ]] && echo "INFOPATH=${DATAPATH}/info" >> "${ee}" - mv_if_diff "${ee}" "${e}" - fi - - local c="${ENV_D}/config-${TARGET}" - local cc="${c}.tmp" - echo "CURRENT=${VER}" > "${cc}" - mv_if_diff "${cc}" "${c}" - - eend 0 - - # - # Regen env.d if need/can be - # - if [[ ${ROOT} == "/" ]] && [[ ${TARGET} == ${HOST} ]] ; then - env-update ${env_update_flag} - echo - ewarn "Please remember to run:" - echo - ewarn " # . ${EPREFIX}/etc/profile" - echo - fi - - return 0 -} - -uninstall_target() { - : ${TARGET:=${UARG}} - - if [[ ${TARGET} == ${HOST} ]] ; then - die "refusing to uninstall native binutils" - fi - - shopt -s nullglob - PROFILE="" - - for PROFILE in "${ENV_D}"/${TARGET}-* ; do - ewarn "Removing all signs of ${PROFILE##*/}" - rm -f "${ENV_D}"/${PROFILE} - done - if [[ -z ${PROFILE} ]] && [[ ! -e ${ENV_D}/config-${TARGET} ]] ; then - die "no profiles exist for '${TARGET}'" - fi - - rm -f "${ENV_D}"/config-${TARGET} - - local x - for x in \ - addr2line ar as c++filt dwp elf2flt elfedit flthdr gprof \ - ld ld.{bfd,gold,real} \ - nm objcopy objdump ranlib readelf size strings strip - do - x=( - "${EROOT}"/usr/bin/${TARGET}-${x} - "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin/${x} - "${EROOT}"/usr/libexec/gcc/${TARGET}/${x} - ) - rm -f "${x[@]}" - done - for x in "${HEADERS[@]}" ; do - rm -f "${EROOT}"/usr/{${HOST}/,}${TARGET}/{usr/,}include/${x} - done - for x in bfd iberty opcodes ; do - rm -f "${EROOT}"/usr/${HOST}/${TARGET}/lib/lib${x}{{-*,}.so,.a,.la} - done - # Delete broken symlinks - local destdir="${EROOT}/usr/${HOST}/${TARGET}" - rm -f "${destdir}"/lib/ldscripts - find -L "${destdir}"/lib -type l -exec rm {} + - rmdir \ - "${destdir}"/{bin,include,lib,usr} \ - "${destdir}" \ - "${EROOT}"/var/db/pkg/cross-${TARGET} \ - "${EROOT}"/usr/{${HOST}/,}${TARGET}/bin \ - "${EROOT}"/usr/libexec/gcc/${TARGET} \ - 2>/dev/null - - rm -f "${ENV_D}"/${TARGET}-* -} - -set_current_profile() { - if [[ ! -f ${ENV_D}/config-${TARGET} ]] ; then - eerror "${argv0}: unable to locate a profile for target: ${TARGET}" - return 1 - fi - - source "${ENV_D}/config-${TARGET}" - - if [[ -z ${CURRENT} ]] ; then - eerror "${argv0}: no binutils profile is active!" - return 1 - fi - - echo "${TARGET}-${CURRENT}" - - return 0 -} -get_current_profile() { echo "${PROFILE}" ; } - -list_profiles() { - local x i target - - if [[ ${ROOT} != / ]] ; then - echo "Using binutils-config info in ${ROOT}" - fi - - set -- "${ENV_D}"/* - target= - i=1 - - for x ; do - # skip broken links and config files - [[ -f ${x} ]] || continue - [[ ${x} == */config-* ]] && continue - - source "${x}" - if [[ ${target} != ${TARGET} ]] ; then - [[ -n ${target} ]] && echo - target=${TARGET} - fi - - x=${x##*/} - if [[ -e ${ENV_D}/config-${TARGET} ]] ; then - source "${ENV_D}/config-${TARGET}" - if [[ ${VER} == ${CURRENT} ]] ; then - [[ ${TARGET} == ${HOST} ]] \ - && x="${x} ${GOOD}*${NORMAL}" \ - || x="${x} ${HILITE}*${NORMAL}" - fi - fi - - # We would align the [...] field like so: - #printf ' [%*ss] %s\n' ${##} "${i}" "${x}" - # but this breaks simple scripting: `binutils -l | awk '{print $2}'` - - # Or we could align the target col like so: - #printf ' [%s]%*s %s\n' "${i}" $(( ${##} - ${#i} )) "" "${x}" - # but i'm not sold that it looks better - - # So keep it simple ... only makes a diff anyways for crazy people - # like me which have 100+ binutils packages installed ... - echo " [$i] ${x}" - ((++i)) - done -} - -switch_linker() { - local bpath ld=$1 - - case ${ld} in - ld.*) ;; - *) die "not supported: linker must start with 'ld.'" ;; - esac - - setup_env || return 1 - bpath="${ROOT}/${BINPATH}" - - # does this binutils even support the requested linker ? - if [[ ! -e ${bpath}/${ld} ]] ; then - die "sorry, but ${PROFILE} doesn't support the ${ld} linker" - fi - - # switch it up - ebegin "Setting default linker to ${ld} for ${PROFILE}" - atomic_ln ${ld} "${bpath}" ld - eend $? -} - -set_HOST() { - # Set HOST to CHOST if it isn't already set - : ${HOST:=${CHOST:-$(portageq envvar CHOST)}} -} - -ENV_D="${EROOT}etc/env.d/binutils" - -DEBUG="no" -NEED_ACTION="yes" -DOIT="switch_profile" -PROFILE="current" -HOST="" -TARGET="" -unset UARG - -select_action() { - if [[ ${NEED_ACTION} != "no" ]] ; then - NEED_ACTION="no" - DOIT=$1 - else - die "one action at a time!" - fi -} - -while [[ $# -gt 0 ]] ; do - x=$1 - shift - case ${x} in - -c|--get-current-profile) select_action get_current_profile ;; - -l|--list|--list-profiles) select_action list_profiles ;; - -u|--uninstall) select_action uninstall_target ;; - --linker) select_action "switch_linker $1"; shift ;; - -d|--debug) DEBUG="yes" ;; - -h|--help) usage 0 ;; - -V|--version) - ver="@PV@" - echo "binutils-config-${ver/@'PV'@/git}" - exit 0 - ;; - -*) - die "invalid switch! Try '--help'." - ;; - *) - if [[ ${UARG+set} == "set" ]] ; then - die "only one profile/target at a time please" - fi - NEED_ACTION="maybe" - UARG=${x} - ;; - esac -done - -[[ ${NEED_ACTION} == "yes" ]] && usage 1 -[[ ${DEBUG} == "yes" ]] && set -x - -# All operations need to know the current HOST to figure out -# what is a native target and what is a cross target -set_HOST - -# All operations need to know the profile the user wants -case ${DOIT} in -switch_profile|switch_linker_*) - # decode user's profile choice - x=${UARG:-$(TARGET=${HOST} set_current_profile)} - PROFILE="" - if [[ -z $(echo ${x} | tr -d '[:digit:]') ]] ; then - # User gave us a # representing the profile - i=1 - for y in "${ENV_D}"/* ; do - [[ ${y/config-} != ${y} ]] && continue - - if [[ -f ${y} ]] && [[ ${x} -eq ${i} ]] ; then - PROFILE=${y##*/} - break - fi - ((++i)) - done - fi - - if [[ -z ${PROFILE} ]] ; then - # User gave us a full HOST-ver - x=${x##*/} - if [[ -f ${ENV_D}/${x} ]] ; then - # Valid HOST-ver yeah! - PROFILE=${x} - else - # Not a valid HOST-ver ... - if [[ ! -f ${ENV_D}/config-${x} ]] ; then - # Maybe they just gave us a ver ... - if [[ -f ${ENV_D}/${HOST}-${x} ]] ; then - x=${HOST}-${x} - else - die "could not locate '$x' in '${ENV_D}/'!" - fi - PROFILE=${x} - else - # Maybe they just gave us a target ... pick active profile - PROFILE=$(TARGET=${x} set_current_profile) - fi - fi - fi - ;; -*) - # lookup current profile as the user gave us a target - PROFILE=$(TARGET=${UARG:-${HOST}} set_current_profile) || exit 1 - ;; -esac - -eval ${DOIT} - -# vim:ts=4 diff --git a/sys-devel/binutils-config/files/binutils-config.8 b/sys-devel/binutils-config/files/binutils-config.8 deleted file mode 100644 index 52cf7101e6..0000000000 --- a/sys-devel/binutils-config/files/binutils-config.8 +++ /dev/null @@ -1,73 +0,0 @@ -.TH "BINUTILS-CONFIG" "8" "Jan 2005" "Gentoo" "Gentoo" -.SH "NAME" -binutils-config \- manage active versions of the binutils programs -.SH "DESCRIPTION" -The \fBbinutils-config\fR script allows you to switch between different -versions of binutils when you have installed multiple copies (see -USE=multislot). It also allows you to manage multiple cross-compiling -targets simultaneously. - -Remember, you may have one version of binutils active per \fICTARGET\fR, -and changing the version for one target has no bearing on any other. So -changing an active cross-compiler will not break your native compiler -(i.e. \fICHOST\fR). -.SH "SYNOPSIS" -\fBbinutils-config\fR [\fIcrufty options\fR] \fIPROFILE\fR - -\fBbinutils-config\fR \fB--get-current-profile\fR \fI[TARGET]\fR - -\fBbinutils-config\fR \fB--list-profiles\fR - -\fBbinutils-config\fR \fB--uninstall\fR \fITARGET\fR -.SH "GENERIC OPTIONS" -.TP -\fBPROFILE\fR -Change the system to use the specified binutils version. This may take the -form of the list index number (the number shown on the left in the -\fB\-\-list\-profiles\fR output), a full \fITARGET-VERSION\fR (useful when -working with cross-compilers), just a \fITARGET\fR where the \fIVERSION\fR -is picked from the active, or just a binutils \fIVERSION\fR where the -\fITARGET\fR is assumed to be the native \fIHOST\fR value. -.TP -\fBTARGET\fR -Similiar to \fBPROFILE\fR, but this is only the target and no version info -(i.e. \fICTARGET\fR or \fICHOST\fR). -.TP -\fB\-c\fR, \fB\-\-get\-current\-profile\fR \fI[TARGET]\fR -Display the active profile for \fITARGET\fR. If none is specified, the -host system's \fITARGET\fR will be shown (i.e. \fICHOST\fR). -.TP -\fB\-l\fR, \fB\-\-list\-profiles\fR -Show all the profiles that your system currently has installed and what -versions are active. The active native version is noted with a bright green -asterisk while the active cross-compiler versions are noted with a light blue -asterisk. -.TP -\fB-u\fR, \fB\-\-uninstall\fR \fITARGET\fR -This is really for internal use only. Used to remove all traces of the -\fITARGET\fR binutils from your system. -.SH "CRUFTY OPTIONS" -.TP -\fB\-\-linker\fR \fB\fR -Change the default linker for the specified \fIPROFILE\fR to the \fB\fR. -Common names are \fBld.gold\fR for the newer gold linker and \fBld.bfd\fR for -the classic linker. Note that not all targets support the gold linker. -.SH "REPORTING BUGS" -Please report bugs via https://bugs.gentoo.org/ -.SH "SEE ALSO" -.BR ar (1), -.BR as (1), -.BR ld (1), -.BR nm (1), -.BR objcopy (1), -.BR ranlib (1), -.BR readelf (1), -.BR strings (1), -.BR strip (1) -.SH "FILES" -.nf -.BR /usr/bin/binutils-config -.BR /etc/env.d/binutils/* -.fi -.SH "AUTHORS" -Mike Frysinger diff --git a/sys-devel/binutils-config/files/binutils.eselect b/sys-devel/binutils-config/files/binutils.eselect deleted file mode 100644 index a89655aba1..0000000000 --- a/sys-devel/binutils-config/files/binutils.eselect +++ /dev/null @@ -1,45 +0,0 @@ -# -*-eselect-*- vim: ft=eselect -# Copyright 2005-2015 Gentoo Foundation -# Distributed under the terms of the GNU GPL version 2 or later - -DESCRIPTION="Manage installed versions of sys-devel/binutils" -MAINTAINER="toolchain@gentoo.org" - -### list action - -describe_list() { - echo "List all installed version of binutils" -} - -do_list() { - binutils-config -l -} - -### set action - -describe_set() { - echo "Activate one of the installed binutils" -} - -describe_set_parameters() { - echo "" -} - -describe_set_options() { - echo "target : Target name or number (from 'list' action)" -} - -do_set() { - [[ $# -eq 1 ]] || die -q "Please specify exactly one version to activate!" - binutils-config "$1" -} - -### show action - -describe_show() { - echo "Print the currently active binutils version" -} - -do_show() { - binutils-config -c -} diff --git a/sys-devel/binutils-config/metadata.xml b/sys-devel/binutils-config/metadata.xml index 393442d23f..34de766f7e 100644 --- a/sys-devel/binutils-config/metadata.xml +++ b/sys-devel/binutils-config/metadata.xml @@ -1,5 +1,5 @@ - + toolchain@gentoo.org diff --git a/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch b/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch index c6b63ed327..81364d4d02 100644 --- a/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch +++ b/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch @@ -11,10 +11,10 @@ in this context refers to the binary itself, not to a structured hierarchy. Bundles have the .bundle extension; for example, MyBundle.bundle.) ---- libltdl/m4/libtool.m4 -+++ libltdl/m4/libtool.m4 -@@ -2271,7 +2271,7 @@ - soname_spec='${libname}${release}${major}$shared_ext' +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2645,7 +2645,7 @@ + soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH - shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' diff --git a/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch index 8244eaa7e3..aa1e870649 100644 --- a/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch +++ b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch @@ -7,7 +7,7 @@ http://bugs.gentoo.org/109105 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 -@@ -1375,7 +1375,14 @@ +@@ -2666,7 +2666,14 @@ *) objformat=elf ;; esac fi @@ -22,9 +22,9 @@ http://bugs.gentoo.org/109105 + case $version_type in freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' -@@ -1386,6 +1392,12 @@ - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' +@@ -2678,6 +2685,12 @@ + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; + linux) diff --git a/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch b/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch index b4409815f8..aded304989 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch @@ -1,8 +1,8 @@ * revert old 1.5 behaviour ---- libtool-2.4.6/m4/libtool.m4 -+++ libtool-2.4.6/m4/libtool.m4 -@@ -2272,7 +2272,7 @@ +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2641,7 +2641,7 @@ version_type=darwin need_lib_prefix=no need_version=no diff --git a/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch b/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch new file mode 100644 index 0000000000..02cb1d7eb9 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch @@ -0,0 +1,13 @@ +macOS Big Sur is 11.0, Darwin 20, after a long line of 10.X releases. +macOS Monterey is 12.0. +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -1076,7 +1076,7 @@ + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[[012]][[,.]]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; +- 10.*) ++ 10.*|11.*|12.*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + esac + ;; diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch b/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch index c1ea8a8294..853a22eff5 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch @@ -13,15 +13,10 @@ linker to allow trivial use of the clang address sanitizer. Signed-off-by: Jeremy Huddleston Sequoia Copyright-paperwork-exempt: Yes ---- - build-aux/ltmain.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) -diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in -index 1cbe875..2a5aaad 100644 --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in -@@ -5382,10 +5382,11 @@ func_mode_link () +@@ -5362,10 +5362,11 @@ # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang @@ -34,13 +29,9 @@ index 1cbe875..2a5aaad 100644 func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" - -patch the generated file too to keep help2man from generating man pages -https://bugs.gentoo.org/556512 - --- a/build-aux/ltmain.sh +++ b/build-aux/ltmain.sh -@@ -5382,10 +5382,11 @@ func_mode_link () +@@ -7274,10 +7274,11 @@ # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang @@ -53,6 +44,3 @@ https://bugs.gentoo.org/556512 func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" --- -2.6.2 - diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch b/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch index 55ec5ae9e0..f6c0a3dc89 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch @@ -10,15 +10,10 @@ Starting with gcc-4.8, there's a -fuse-ld flag that can be used to select between bfd & gold. Make sure we pass it through to the linking stage. * build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags through. ---- - build-aux/ltmain.in | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) -diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in -index 2a5aaad..4c24d5d 100644 --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in -@@ -5383,10 +5383,11 @@ func_mode_link () +@@ -5363,10 +5363,11 @@ # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang # -fsanitize=* Clang/GCC memory and address sanitizer @@ -31,13 +26,9 @@ index 2a5aaad..4c24d5d 100644 func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" - -patch the generated file too to keep help2man from generating man pages -https://bugs.gentoo.org/556512 - --- a/build-aux/ltmain.sh +++ b/build-aux/ltmain.sh -@@ -5383,10 +5383,11 @@ func_mode_link () +@@ -7275,10 +7275,11 @@ # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang # -fsanitize=* Clang/GCC memory and address sanitizer @@ -50,5 +41,3 @@ https://bugs.gentoo.org/556512 func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" --- -2.3.2 diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch b/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch index a8fbf28f80..c7720935d8 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch @@ -10,15 +10,10 @@ https://bugzilla.redhat.com/show_bug.cgi?id=985592 to the linker, Fedora uses this option for hardening. Signed-off-by: Pavel Raiskup ---- - build-aux/ltmain.in | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) -diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in -index d5cf07a..0c40da0 100644 --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in -@@ -5360,10 +5360,12 @@ func_mode_link () +@@ -5360,10 +5360,12 @@ # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization @@ -32,13 +27,9 @@ index d5cf07a..0c40da0 100644 func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" - -patch the generated file too to keep help2man from generating man pages -https://bugs.gentoo.org/556512 - --- a/build-aux/ltmain.sh +++ b/build-aux/ltmain.sh -@@ -5360,10 +5360,12 @@ func_mode_link () +@@ -7272,10 +7272,12 @@ # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization @@ -52,6 +43,3 @@ https://bugs.gentoo.org/556512 func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" --- -2.6.2 - diff --git a/sys-devel/libtool/files/libtool-2.4.6-mint.patch b/sys-devel/libtool/files/libtool-2.4.6-mint.patch index 341a0f02ef..4fe5bcede5 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-mint.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-mint.patch @@ -2,10 +2,9 @@ Patch by Alan Hourihane http://bugs.gentoo.org/show_bug.cgi?id=266984 -diff -ur libtool-2.2.6/configure libtool-2.2.6-mint/configure ---- libtool-2.2.6/configure 2008-09-07 17:52:50.000000000 +0000 -+++ libtool-2.2.6/configure 2009-04-21 08:49:27.000000000 +0000 -@@ -4986,6 +4986,11 @@ +--- a/configure ++++ b/configure +@@ -5897,6 +5897,11 @@ lt_cv_sys_max_cmd_len=8192; ;; @@ -17,10 +16,9 @@ diff -ur libtool-2.2.6/configure libtool-2.2.6-mint/configure amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. -diff -ur libtool-2.2.6/libltdl/configure libtool-2.2.6-mint/libltdl/configure ---- libtool-2.2.6/libltdl/configure 2008-09-07 17:53:05.000000000 +0000 -+++ libtool-2.2.6/libltdl/configure 2009-04-21 08:50:08.000000000 +0000 -@@ -4422,6 +4422,11 @@ +--- a/libltdl/configure ++++ b/libltdl/configure +@@ -4782,6 +4782,11 @@ lt_cv_sys_max_cmd_len=8192; ;; @@ -32,10 +30,9 @@ diff -ur libtool-2.2.6/libltdl/configure libtool-2.2.6-mint/libltdl/configure amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. -diff -ur libtool-2.2.6/libltdl/m4/libtool.m4 libtool-2.2.6-mint/libltdl/m4/libtool.m4 ---- libtool-2.2.6/m4/libtool.m4 2008-09-05 11:54:41.000000000 +0000 -+++ libtool-2.2.6/m4/libtool.m4 2009-04-21 08:50:26.000000000 +0000 -@@ -1527,6 +1527,11 @@ +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -1708,6 +1708,11 @@ lt_cv_sys_max_cmd_len=8192; ;; diff --git a/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch index 54461ccc54..b093d74266 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch @@ -1,8 +1,8 @@ https://bugs.gentoo.org/650876 ---- libtool-2.4.6/build-aux/ltmain.sh -+++ libtool-2.4.6/build-aux/ltmain.sh -@@ -7079,6 +7079,16 @@ +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.sh +@@ -7127,6 +7127,16 @@ *" $arg "*) ;; * ) func_append new_inherited_linker_flags " $arg" ;; esac diff --git a/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch b/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch index 0eeffac7a0..580d635d04 100644 --- a/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch +++ b/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch @@ -20,18 +20,10 @@ of '$SED $sed_quote_subst'. (func_mode_link): Likewise. * NEWS: Document. * bootstrap: Sync with funclib.sh. ---- - NEWS | 3 +++ - bootstrap | 61 +++++++++++++++++++++++++++++++++++++++++++------ - build-aux/ltmain.in | 10 ++++---- - gl/build-aux/funclib.sh | 61 +++++++++++++++++++++++++++++++++++++++++++------ - 4 files changed, 117 insertions(+), 18 deletions(-) -diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in -index 0c40da0..24acefd 100644 --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in -@@ -3346,7 +3346,8 @@ else +@@ -3346,7 +3346,8 @@ if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" @@ -41,7 +33,7 @@ index 0c40da0..24acefd 100644 $ECHO "\ # A function that is used when there is no print builtin or printf. -@@ -8596,8 +8597,8 @@ EOF +@@ -8598,8 +8599,8 @@ relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done @@ -52,7 +44,7 @@ index 0c40da0..24acefd 100644 fi # Only actually do things if not in dry run mode. -@@ -8843,7 +8844,8 @@ EOF +@@ -8845,7 +8846,8 @@ done # Quote the link command for shipping. relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" @@ -62,8 +54,6 @@ index 0c40da0..24acefd 100644 if test yes = "$hardcode_automatic"; then relink_command= fi -diff --git a/gl/build-aux/funclib.sh b/gl/build-aux/funclib.sh -index 39d972e..47d8b95 100644 --- a/build-aux/funclib.sh +++ b/build-aux/funclib.sh @@ -1,5 +1,5 @@ @@ -73,7 +63,7 @@ index 39d972e..47d8b95 100644 # General shell script boiler plate, and helper functions. # Written by Gary V. Vaughan, 2004 -@@ -1026,6 +1026,57 @@ func_relative_path () +@@ -1026,6 +1026,57 @@ } @@ -131,7 +121,7 @@ index 39d972e..47d8b95 100644 # func_quote_for_eval ARG... # -------------------------- # Aesthetically quote ARGs to be evaled later. -@@ -1042,12 +1093,8 @@ func_quote_for_eval () +@@ -1042,12 +1093,8 @@ func_quote_for_eval_unquoted_result= func_quote_for_eval_result= while test 0 -lt $#; do @@ -146,20 +136,18 @@ index 39d972e..47d8b95 100644 if test -n "$func_quote_for_eval_unquoted_result"; then func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" else - -patch the generated file too to keep help2man from generating man pages -https://bugs.gentoo.org/556512 - --- a/build-aux/ltmain.sh +++ b/build-aux/ltmain.sh -@@ -1,5 +1,5 @@ +@@ -64,7 +64,7 @@ + # libraries, which are installed to $pkgauxdir. + # Set a version string for this script. -scriptversion=2015-01-20.17; # UTC +scriptversion=2015-10-04.22; # UTC # General shell script boiler plate, and helper functions. # Written by Gary V. Vaughan, 2004 -@@ -1026,6 +1026,57 @@ func_relative_path () +@@ -1091,6 +1091,57 @@ } @@ -217,7 +205,7 @@ https://bugs.gentoo.org/556512 # func_quote_for_eval ARG... # -------------------------- # Aesthetically quote ARGs to be evaled later. -@@ -1042,12 +1093,8 @@ func_quote_for_eval () +@@ -1107,12 +1158,8 @@ func_quote_for_eval_unquoted_result= func_quote_for_eval_result= while test 0 -lt $#; do @@ -232,7 +220,7 @@ https://bugs.gentoo.org/556512 if test -n "$func_quote_for_eval_unquoted_result"; then func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" else -@@ -3346,7 +3346,8 @@ else +@@ -5258,7 +5305,8 @@ if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" @@ -242,7 +230,7 @@ https://bugs.gentoo.org/556512 $ECHO "\ # A function that is used when there is no print builtin or printf. -@@ -8596,8 +8597,8 @@ EOF +@@ -10510,8 +10558,8 @@ relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done @@ -253,7 +241,7 @@ https://bugs.gentoo.org/556512 fi # Only actually do things if not in dry run mode. -@@ -8843,7 +8844,8 @@ EOF +@@ -10757,7 +10805,8 @@ done # Quote the link command for shipping. relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" @@ -263,6 +251,3 @@ https://bugs.gentoo.org/556512 if test yes = "$hardcode_automatic"; then relink_command= fi --- -2.6.2 - diff --git a/sys-devel/libtool/libtool-2.4.6-r6.ebuild b/sys-devel/libtool/libtool-2.4.6-r6.ebuild index f85bb35dda..cf041ceafa 100644 --- a/sys-devel/libtool/libtool-2.4.6-r6.ebuild +++ b/sys-devel/libtool/libtool-2.4.6-r6.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 LIBTOOLIZE="true" #225559 WANT_LIBTOOL="none" @@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then inherit git-r3 else SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" fi DESCRIPTION="A shared library tool for developers" @@ -44,6 +44,7 @@ PATCHES=( "${FILESDIR}"/${PN}-2.4.6-mint.patch "${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch "${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch + "${FILESDIR}"/${PN}-2.4.6-darwin20.patch ) src_prepare() { diff --git a/sys-devel/libtool/libtool-9999.ebuild b/sys-devel/libtool/libtool-9999.ebuild index 140bf7a5cb..ea6a7173be 100644 --- a/sys-devel/libtool/libtool-9999.ebuild +++ b/sys-devel/libtool/libtool-9999.ebuild @@ -1,19 +1,18 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 LIBTOOLIZE="true" #225559 WANT_LIBTOOL="none" -inherit autotools epunt-cxx multilib unpacker prefix +inherit autotools prefix -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git - http://git.savannah.gnu.org/r/${PN}.git" +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git" inherit git-r3 else SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" fi DESCRIPTION="A shared library tool for developers" @@ -24,14 +23,13 @@ SLOT="2" IUSE="vanilla" # Pull in libltdl directly until we convert packages to the new dep. -RDEPEND="sys-devel/gnuconfig - >=sys-devel/autoconf-2.69 - >=sys-devel/automake-1.13 - dev-libs/libltdl:0 - !/dev/null + + pushd libltdl >/dev/null || die AT_NOELIBTOOLIZE=yes eautoreconf - popd >/dev/null + popd >/dev/null || die AT_NOELIBTOOLIZE=yes eautoreconf - epunt_cxx # Make sure timestamps don't trigger a rebuild of man pages. #556512 - if [[ ${PV} != "9999" ]] ; then - touch doc/*.1 + if [[ ${PV} != *9999 ]] ; then + touch doc/*.1 || die export HELP2MAN=false fi } @@ -96,15 +92,10 @@ src_configure() { # Do not bother hardcoding the full path to sed. Just rely on $PATH. #574550 export ac_cv_path_SED="$(basename "$(type -P sed)")" - local myconf - [[ ${CHOST} == *-darwin* ]] && myconf="--program-prefix=g" + [[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g" ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install } -src_test() { - emake check -} - src_install() { default diff --git a/sys-devel/libtool/metadata.xml b/sys-devel/libtool/metadata.xml index 56c1244130..151cc38da6 100644 --- a/sys-devel/libtool/metadata.xml +++ b/sys-devel/libtool/metadata.xml @@ -1,8 +1,11 @@ - + base-system@gentoo.org Gentoo Base System + + cpe:/a:gnu:libtool + diff --git a/sys-fs/e2fsprogs/Manifest b/sys-fs/e2fsprogs/Manifest index 61e146a43a..4a224a4c3d 100644 --- a/sys-fs/e2fsprogs/Manifest +++ b/sys-fs/e2fsprogs/Manifest @@ -1,4 +1,2 @@ -DIST e2fsprogs-1.42.9-mint-r1.patch.xz 9012 BLAKE2B ae6421587c3cca2f9b26805c5f8d236d3fecde78cc7df3776ae9c23c7f254d7240e06507568fdd2154a16113c47609a8143535ab9cb2925426d3c578d077ce26 SHA512 591a7c80d65082eebcdc455028be6ade05c9aae96c94f654106be0facef330a8875dae82891e6e3ad2b48dece2b4e1c1940dbc47cd3eba3e6eea3b5ddba9a8fc -DIST e2fsprogs-1.45.4.tar.xz 5567164 BLAKE2B ab7be15e504b674290a25572d09d1ca4bacebc14d23a0ae400636bdcf3bf117f3aaf82b806ca7fd25dcd6ef9fedff588de7c72134b095e27f7a363f7d70c94c7 SHA512 408f093a6674ef2316c451173481851041957617c550308d2969b983e11d988ddfc120626cd957c0759648bc357edf1d9971e6d46bed109c2af5f8a09bdc5bda -DIST e2fsprogs-1.45.5.tar.xz 5569796 BLAKE2B cf9633caa6c00afa51408364d0c0a1515a9989ad1582fb485a300fd71bf61ec56b57dbb26f152609eaf2d63bfb04fe1e3f271085c26aa0c832c1f467960e6480 SHA512 d1a8611b525742387061f390fb24825dfa175997cc7db05decea913fcc7b97a95a3e787091f2920d4a7d4eb1d813568af734a1610229ead09bcbf9f3e262e4ce -DIST e2fsprogs-1.45.6.tar.xz 5572144 BLAKE2B 24a44d27a02a1fa178083d5ee6034b20fedcac9faf7cf7f5cfcd4e4cee6d38775bc78949b9b00823cbbdacfab783e8e1e739579b9a7236c5425f51b27600743b SHA512 f3abfb6fe7ef632bb81152e2127d601cadd3fa93162178576a1d5ed82c2286627184b207b85a5b2a1793db0addf0885dfc3b9523bb340443224caf9c6d613b84 +DIST e2fsprogs-1.46.4.tar.xz 7035200 BLAKE2B 473f7fd3f521b94cdaa68e37784a518fc1919387dd114f31b5338f1b4c472f86b150229ec3dcae8b73eac95330c0dea729befc8cea08bcf1e455c0b6652d6d2b SHA512 7d9cfdf00ed58e66049585e8382fe4977088956421a0fb8155900c69afd8857309ad2b9301b3f74c9c0afa7287a0ddba2fd1538fcf57858b37a9ab712390016d +DIST e2fsprogs-1.46.5.tar.xz 7040672 BLAKE2B 8d8c02e891c464782a7cff518c41d793fc73366b57e17d80ffc5afd96e6144e354290e667e9710509a9dde4e5dab7e7185c5bf084c5bfd26219f05e5e92e0830 SHA512 53282e1c524f62a95012b1aceef296d494f5238c82c9b08b29fbe6a803dbf7ccfdcd9124eb2f11fe2ff9de26387c78751a92c3217ca414f6db6242098a72d3fa diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.4.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.45.4.ebuild deleted file mode 100644 index 24c687a695..0000000000 --- a/sys-fs/e2fsprogs/e2fsprogs-1.45.4.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript - -DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" -HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="mirror://sourceforge/e2fsprogs/${P}.tar.xz - https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" - -LICENSE="GPL-2 BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~m68k-mint" -IUSE="cron fuse nls static-libs" - -RDEPEND="~sys-libs/${PN}-libs-${PV} - >=sys-apps/util-linux-2.16 - cron? ( sys-fs/lvm2[-device-mapper-only(-)] ) - fuse? ( sys-fs/fuse:0 ) - nls? ( virtual/libintl )" -DEPEND="${RDEPEND}" -BDEPEND=" - nls? ( sys-devel/gettext ) - virtual/pkgconfig - sys-apps/texinfo -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.40-fbsd.patch - "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854 - - # Upstream patches (can usually removed with next version bump) -) - -src_prepare() { - if [[ ${CHOST} == *-mint* ]] ; then - PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch ) - fi - - default - - cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" - - # Get rid of doc -- we don't use them. This also prevents a sandbox - # violation due to mktexfmt invocation - rm -r doc || die "Failed to remove doc dir" - - # blargh ... trick e2fsprogs into using e2fsprogs-libs - sed -i -r \ - -e 's:@LIBINTL@:@LTLIBINTL@:' \ - -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \ - -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \ - MCONFIG.in || die "muck libs" #122368 - sed -i -r \ - -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \ - Makefile.in || die "remove subdirs" - ln -s $(which mk_cmds) lib/ss/ || die - - # Avoid rebuild - echo '#include_next ' > lib/ss/ss_err.h -} - -src_configure() { - # Keep the package from doing silly things #261411 - export VARTEXFONTS="${T}/fonts" - - # needs open64() prototypes and friends - append-cppflags -D_GNU_SOURCE - - local myeconfargs=( - --with-root-prefix="${EPREFIX}" - $(use_with cron crond-dir "${EPREFIX}/etc/cron.d") - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d" - --enable-symlink-install - --enable-elf-shlibs - $(tc-has-tls || echo --disable-tls) - --without-included-gettext - $(use_enable fuse fuse2fs) - $(use_enable nls) - --disable-libblkid - --disable-libuuid - --disable-fsck - --disable-uuidd - ) - ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}" - - if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then - eerror "INTL sanity check failed, aborting build." - eerror "Please post your ${S}/config.log file as an" - eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096" - die "Preventing included intl cruft from building" - fi -} - -src_compile() { - emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds -} - -src_install() { - # need to set root_libdir= manually as any --libdir options in the - # econf above (i.e. multilib) will screw up the default #276465 - emake \ - STRIP=: \ - root_libdir="${EPREFIX}/usr/$(get_libdir)" \ - DESTDIR="${D}" \ - install - - einstalldocs - - insinto /etc - doins "${FILESDIR}"/e2fsck.conf - - # Move shared libraries to /lib/, install static libraries to - # /usr/lib/, and install linker scripts to /usr/lib/. - gen_usr_ldscript -a e2p ext2fs - - # configure doesn't have an option to disable static libs :/ - if ! use static-libs ; then - find "${ED}" -name '*.a' -delete || die - fi -} diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.6.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.45.6.ebuild deleted file mode 100644 index a4eec52c4a..0000000000 --- a/sys-fs/e2fsprogs/e2fsprogs-1.45.6.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript - -DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" -HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="mirror://sourceforge/e2fsprogs/${P}.tar.xz - https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" - -LICENSE="GPL-2 BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~m68k-mint" -IUSE="cron fuse nls static-libs" - -RDEPEND="~sys-libs/${PN}-libs-${PV} - >=sys-apps/util-linux-2.16 - cron? ( sys-fs/lvm2[-device-mapper-only(-)] ) - fuse? ( sys-fs/fuse:0 ) - nls? ( virtual/libintl )" -DEPEND="${RDEPEND}" -BDEPEND=" - nls? ( sys-devel/gettext ) - virtual/pkgconfig - sys-apps/texinfo -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.40-fbsd.patch - "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854 - - # Upstream patches (can usually removed with next version bump) -) - -src_prepare() { - if [[ ${CHOST} == *-mint* ]] ; then - PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch ) - fi - - default - - cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" - - # Get rid of doc -- we don't use them. This also prevents a sandbox - # violation due to mktexfmt invocation - rm -r doc || die "Failed to remove doc dir" - - # blargh ... trick e2fsprogs into using e2fsprogs-libs - sed -i -r \ - -e 's:@LIBINTL@:@LTLIBINTL@:' \ - -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \ - -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \ - MCONFIG.in || die "muck libs" #122368 - sed -i -r \ - -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \ - Makefile.in || die "remove subdirs" - ln -s $(which mk_cmds) lib/ss/ || die - - # Avoid rebuild - echo '#include_next ' > lib/ss/ss_err.h -} - -src_configure() { - # Keep the package from doing silly things #261411 - export VARTEXFONTS="${T}/fonts" - - # needs open64() prototypes and friends - append-cppflags -D_GNU_SOURCE - - local myeconfargs=( - --with-root-prefix="${EPREFIX}" - $(use_with cron crond-dir "${EPREFIX}/etc/cron.d") - --with-systemd-unit-dir="$(systemd_get_systemunitdir)" - --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d" - --enable-symlink-install - --enable-elf-shlibs - $(tc-has-tls || echo --disable-tls) - --without-included-gettext - $(use_enable fuse fuse2fs) - $(use_enable nls) - --disable-libblkid - --disable-libuuid - --disable-fsck - --disable-uuidd - ) - ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}" - - if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then - eerror "INTL sanity check failed, aborting build." - eerror "Please post your ${S}/config.log file as an" - eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096" - die "Preventing included intl cruft from building" - fi -} - -src_compile() { - emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds -} - -src_install() { - # need to set root_libdir= manually as any --libdir options in the - # econf above (i.e. multilib) will screw up the default #276465 - emake \ - STRIP=: \ - root_libdir="${EPREFIX}/usr/$(get_libdir)" \ - DESTDIR="${D}" \ - install - - einstalldocs - - insinto /etc - doins "${FILESDIR}"/e2fsck.conf - - # Move shared libraries to /lib/, install static libraries to - # /usr/lib/, and install linker scripts to /usr/lib/. - gen_usr_ldscript -a e2p ext2fs - - # configure doesn't have an option to disable static libs :/ - if ! use static-libs ; then - find "${ED}" -name '*.a' -delete || die - fi -} diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.5.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.46.4.ebuild similarity index 86% rename from sys-fs/e2fsprogs/e2fsprogs-1.45.5.ebuild rename to sys-fs/e2fsprogs/e2fsprogs-1.46.4.ebuild index 167063502a..225c1d41eb 100644 --- a/sys-fs/e2fsprogs/e2fsprogs-1.45.5.ebuild +++ b/sys-fs/e2fsprogs/e2fsprogs-1.46.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -7,13 +7,12 @@ inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="mirror://sourceforge/e2fsprogs/${P}.tar.xz - https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" +SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" LICENSE="GPL-2 BSD" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~m68k-mint" -IUSE="cron fuse nls static-libs" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +IUSE="cron fuse lto nls static-libs +threads" RDEPEND="~sys-libs/${PN}-libs-${PV} >=sys-apps/util-linux-2.16 @@ -35,10 +34,6 @@ PATCHES=( ) src_prepare() { - if [[ ${CHOST} == *-mint* ]] ; then - PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch ) - fi - default cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" @@ -77,17 +72,18 @@ src_configure() { --enable-symlink-install --enable-elf-shlibs $(tc-has-tls || echo --disable-tls) - --without-included-gettext $(use_enable fuse fuse2fs) $(use_enable nls) --disable-libblkid --disable-libuuid --disable-fsck --disable-uuidd + $(use_enable lto) + $(use_with threads pthread) ) ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}" - if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then + if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then eerror "INTL sanity check failed, aborting build." eerror "Please post your ${S}/config.log file as an" eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096" diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild new file mode 100644 index 0000000000..3e84085d14 --- /dev/null +++ b/sys-fs/e2fsprogs/e2fsprogs-1.46.5.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript multilib-minimal + +DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities" +HOMEPAGE="http://e2fsprogs.sourceforge.net/" +SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz" + +LICENSE="GPL-2 BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="cron fuse lto nls static-libs +threads +tools" + +RDEPEND=" + !sys-libs/${PN}-libs + cron? ( sys-fs/lvm2[-device-mapper-only(-)] ) + fuse? ( sys-fs/fuse:0 ) + nls? ( virtual/libintl ) + tools? ( >=sys-apps/util-linux-2.16 )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + sys-apps/texinfo + nls? ( sys-devel/gettext )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.40-fbsd.patch + "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854 + + # Upstream patches (can usually removed with next version bump) +) + +pkg_setup() { + if use tools ; then + MULTILIB_WRAPPED_HEADERS=( + /usr/include/ext2fs/ext2_types.h + ) + fi +} + +src_prepare() { + default + + cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes" + + # Get rid of doc -- we don't use them. This also prevents a sandbox + # violation due to mktexfmt invocation + rm -r doc || die "Failed to remove doc dir" + + # prevent included intl cruft from building #81096 + sed -i -r \ + -e 's:@LIBINTL@:@LTLIBINTL@:' \ + MCONFIG.in || die 'intl cruft' +} + +multilib_src_configure() { + # Keep the package from doing silly things #261411 + export VARTEXFONTS="${T}/fonts" + + # needs open64() prototypes and friends + append-cppflags -D_GNU_SOURCE + + local myeconfargs=( + --with-root-prefix="${EPREFIX}" + $(use_with cron crond-dir "${EPREFIX}/etc/cron.d") + --with-systemd-unit-dir="$(systemd_get_systemunitdir)" + --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d" + --enable-symlink-install + --enable-elf-shlibs + $(tc-has-tls || echo --disable-tls) + $(multilib_native_use_enable fuse fuse2fs) + $(use_enable nls) + $(multilib_native_use_enable tools e2initrd-helper) + --disable-fsck + --disable-uuidd + $(use_enable lto) + $(use_with threads pthread) + ) + + # we use blkid/uuid from util-linux now + if use kernel_linux ; then + export ac_cv_lib_{uuid_uuid_generate,blkid_blkid_get_cache}=yes + myeconfargs+=( --disable-lib{blkid,uuid} ) + fi + + ac_cv_path_LDCONFIG=: \ + ECONF_SOURCE="${S}" \ + CC="$(tc-getCC)" \ + BUILD_CC="$(tc-getBUILD_CC)" \ + BUILD_LD="$(tc-getBUILD_LD)" \ + econf "${myeconfargs[@]}" + + if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then + eerror "INTL sanity check failed, aborting build." + eerror "Please post your ${S}/config.log file as an" + eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096" + die "Preventing included intl cruft from building" + fi +} + +multilib_src_compile() { + if ! multilib_is_native_abi || ! use tools ; then + emake -C lib/et V=1 + emake -C lib/ss V=1 + if use tools ; then + emake -C lib/ext2fs V=1 + emake -C lib/e2p V=1 + fi + return 0 + fi + + emake V=1 +} + +multilib_src_test() { + if multilib_is_native_abi ; then + emake V=1 check + else + # For non-native, there's no binaries to test. Just libraries. + emake -C lib/et V=1 check + emake -C lib/ss V=1 check + fi +} + +multilib_src_install() { + if ! multilib_is_native_abi || ! use tools ; then + emake -C lib/et V=1 DESTDIR="${D}" install + emake -C lib/ss V=1 DESTDIR="${D}" install + + if use tools ; then + emake -C lib/ext2fs V=1 DESTDIR="${D}" install + emake -C lib/e2p V=1 DESTDIR="${D}" install + fi + else + emake \ + STRIP=: \ + DESTDIR="${D}" \ + install + + # Move shared libraries to /lib/, install static libraries to + # /usr/lib/, and install linker scripts to /usr/lib/. + gen_usr_ldscript -a e2p ext2fs + fi + + gen_usr_ldscript -a com_err ss $(usex kernel_linux '' 'uuid blkid') + + # configure doesn't have an option to disable static libs :/ + if ! use static-libs ; then + find "${ED}" -name '*.a' -delete || die + fi +} + +multilib_src_install_all() { + einstalldocs + + if use tools ; then + insinto /etc + doins "${FILESDIR}"/e2fsck.conf + fi +} diff --git a/sys-fs/e2fsprogs/files/fsck_ext2fs.8 b/sys-fs/e2fsprogs/files/fsck_ext2fs.8 deleted file mode 100644 index aa31cf1db1..0000000000 --- a/sys-fs/e2fsprogs/files/fsck_ext2fs.8 +++ /dev/null @@ -1,96 +0,0 @@ -.TH fsck_ext2fs 8 2006-07-02 "Matthias Andree" "FreeBSD Ports" -.\" -.\" fsck_ext2fs.8 - manual page for fsck_ext2fs wrapper -.\" -.\" (C) Copyright 2006 by Matthias Andree -.\" -.\" License: This file may be redistributed in accordance with the terms -.\" of the GNU General Public License v2. -.\" -.\" Upstream $Id: fsck_ext2fs.8,v 1.3 2006/07/02 11:45:21 emma Exp $ -.\" $FreeBSD: ports/sysutils/e2fsprogs/files/fsck_ext2fs.8,v 1.1 2006/07/04 15:47:51 leeym Exp $ -.\" -.SH NAME -.B fsck_ext2fs -\- compatibility wrapper for e2fsck -.SH SYNOPSIS -.P -.B fsck_ext2fs -[\fB\-Fpfnyv\fR] [\fB\-b\fR \fIblock\fR] -.SH DESCRIPTION -.P -\fBfsck_ext2fs\fR maps the traditional FreeBSD \fBfsck_ffs\fR options to -options with the same functionality for \fBe2fsck,\fR runs \fBe2fsck\fR -and then maps its exit status to values that FreeBSD understands. -\fBe2fsck\fR is a utility to check and repair ext2 and ext3 file -systems. - -.SH OPTIONS -.IP \fB\-F\fR -(check foreground mode required) Immediately exits with status 1 to tell -\fBfsck\fR that ext2fs cannot be checked in the background. \fBfsck\fR -usually runs \fBfsck_*\fR programs twice, first with \fB\-F\fR to find -out if they can do background checking, then either immediately without -\fB\-F\fR for foreground checking or deferred in the background with -\fB\-B\fR. -.IP \fB\-p\fR -(preen mode) This option suppresses adding the \fB\-f\fR option (unless -\fB\-f\fR is also given) and adds the \fB\-p\fR option to the -\fBe2fsck\fR command line. This causes \fBe2fsck\fR to automatically fix -any filesystem problems that can safely be fixed without operator -intervention. Without this option given, \fBe2fsck\fR will be run with -the \fB\-f\fR option to force a check, since interactive scan and repair -mode is the default on FreeBSD, but not on Linux where \fBe2fsck\fR -comes from. -.IP \fB\-f\fR -(force check) This option forces the check of a clean file system while -preening and is passed to \fBe2fsck\fR verbatim. -.IP \fB\-n\fR -("no" mode) This option causes the file system to be opened in read-only -mode and assume "no" as answer to all questions. This is the only way to -safely run \fBfsck\fR on a mounted ext2 or ext3 file system. This option -is passed to \fBe2fsck\fR verbatim. -.IP \fB\-y\fR -("yes" mode) This option is passed verbatim to \fBe2fsck\fR and causes -it to assume "yes" as answer to all questions. This allows the -non-interactive use of e2fsck but is rather aggressive. Use with care. -.IP \fB\-v\fR -(verbose output) This option is passed verbatim to \fBe2fsck\fR and -causes it to verbosely report its progress. -.IP "\fB\-b\fR \fIblock\fR" -(use alternate super block) This option is passed verbatim to -\fBe2fsck\fR and selects an alternate super block, for use when the -primary super block has been damaged. Please see the \fBe2fsck\fR(8) -manual page for details. - -.SH EXIT STATUS -If errors remain after \fBe2fsck\fR, an invalid option or too many -options have been specified, \fBe2fsck\fR was killed with a signal or -the \fIfork\fB system call failed, \fBfsck_ext2fs\fR exits with status -EXIT_FAILURE (usually 1). If \fBe2fsck\fR cannot be started, exits with -status 127. If the file system is clean after \fBe2fsck\fR operation, -exits with status EXIT_SUCCESS (0). - -.SH NOTES -.P -This utility is merely meant as an adaptor so that \fBe2fsck\fR can be -run during the boot process, it does not support all options that -\fBe2fsck\fR offers. If you need one of its advanced options, please run -\fBe2fsck\fR directly. - -.SH FILES -.TP -.I /sbin/e2fsck -is the location of the \fBe2fsck\fR program to run. - -.SH AUTHOR -.P -Matthias Andree wrote the program and this -manual page. -.SH CONFORMING TO -The FreeBSD 6.1 command line interface for \fBfsck_ufs\fR(8). -.SH SEE ALSO -.BR fsck (8), -.BR e2fsck (8) -and -.BR fsck_ufs (8). diff --git a/sys-fs/e2fsprogs/files/fsck_ext2fs.c b/sys-fs/e2fsprogs/files/fsck_ext2fs.c deleted file mode 100644 index f5e3e5e9a8..0000000000 --- a/sys-fs/e2fsprogs/files/fsck_ext2fs.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * fsck_ext2fs - wrapper for e2fsck on FreeBSD - * Copyright (C) 2004,2006 Matthias Andree - * redistributable in accordance with the - * GNU General Public License v2 - * - * $FreeBSD: ports/sysutils/e2fsprogs/files/fsck_ext2fs.c,v 1.5 2006/07/04 15:47:51 leeym Exp $ - * - * Upstream: $Id: fsck_ext2fs.c,v 1.6 2006/07/02 11:37:49 emma Exp $ - * - * format: gindent -kr - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -__attribute__ ((noreturn)) -static int die(const char *tag) -{ - perror(tag); - exit(EXIT_FAILURE); -} - -int main(int argc, char **argv) -{ - int ch, i = 1, force = 0, status, verbose = 0, t; - long block = 0; - enum { normal, preen, yes, no } mode = normal; - char *cmd[256]; - pid_t pid; - - cmd[0] = "/sbin/e2fsck"; - while ((ch = getopt(argc, argv, "BFpfnyb:v")) != -1) { - switch (ch) { - case 'p': - mode = preen; - break; - case 'f': - force = 1; - break; - case 'n': - mode = no; - break; - case 'y': - mode = yes; - break; - case 'b': - block = atol(optarg); - break; - case 'v': - verbose++; - break; - case 'F': - /* e2fsck does not support background checking, - * hence exit with nonzero status to force - * the foreground check. */ - exit(1); - case 'B': - default: - fprintf(stderr, "%s: unknown option -%c\n", - argv[0], optopt); - exit(EXIT_FAILURE); - } - } - - if (force) - cmd[i++] = "-f"; - - switch (mode) { - case normal: - /* FreeBSD needs -f to force a check only in context - * with -p -- so map normal to force to match - * expectations */ - if (!force) - cmd[i++] = "-f"; - break; - case yes: - cmd[i++] = "-y"; - break; - case no: - cmd[i++] = "-n"; - break; - case preen: - cmd[i++] = "-p"; - break; - } - - if (block) { - static char b[30]; - - sprintf(b, "-b %ld", block); - cmd[i++] = b; - } - - /* silently limit verbose to 15 so we don't overflow the cmd array */ - if (verbose > 15) - verbose = 15; - - for (t = verbose; t > 1; t--) - cmd[i++] = "-v"; - - while (optind < argc) { - cmd[i++] = argv[optind++]; - /* sanity check so we don't overflow the cmd buffer */ - if (i+1 == sizeof(cmd)/sizeof(cmd[0])) { - errno = E2BIG; - die(argv[0]); - } - } - - cmd[i++] = 0; - - if (verbose) { - for (i=0; cmd[i]; i++) - fputs(cmd[i], stderr), - fputc(' ', stderr); - fputc('\n', stderr); - } - - pid = fork(); - switch (pid) { - case -1: - /* error */ - die("fork"); - break; - case 0: - /* child */ - (void) execv(cmd[0], cmd); - perror("execve"); - _exit(127); - default: - /* parent */ - if (pid != waitpid(pid, &status, 0)) - die("waitpid"); - if (WIFSIGNALED(status) - || (WIFEXITED(status) && WEXITSTATUS(status) >= 4)) - exit(EXIT_FAILURE); - } - exit(EXIT_SUCCESS); -} diff --git a/sys-fs/e2fsprogs/metadata.xml b/sys-fs/e2fsprogs/metadata.xml index fd229917a0..902c90f4f0 100644 --- a/sys-fs/e2fsprogs/metadata.xml +++ b/sys-fs/e2fsprogs/metadata.xml @@ -1,16 +1,19 @@ - + - - base-system@gentoo.org - Gentoo Base System - - - Install e2scrub_all cron script - Build fuse2fs, a FUSE file system client for ext2/ext3/ext4 file systems - - - cpe:/a:e2fsprogs_project:e2fsprogs - e2fsprogs - + + base-system@gentoo.org + Gentoo Base System + + + Install e2scrub_all cron script + Build fuse2fs, a FUSE file system client for ext2/ext3/ext4 file systems + Build with link time optimization (LTO) + Build extfs tools (mke2fs, e2fsck, tune2fs, etc.) + + + cpe:/a:e2fsprogs_project:e2fsprogs + tytso/e2fsprogs + e2fsprogs + diff --git a/sys-fs/multipath-tools/Manifest b/sys-fs/multipath-tools/Manifest index 3791f6de0f..d2ac6728b5 100644 --- a/sys-fs/multipath-tools/Manifest +++ b/sys-fs/multipath-tools/Manifest @@ -1,3 +1,4 @@ -DIST multipath-tools-0.8.3.tar.gz 465248 BLAKE2B 21a7a18c70150b4422bdd0ae02f26f491845eb06928ab74e631df8c6b3c110d10f43f75b9f8289a7134826c923b7ba58ce54c40497c3b7e6211e53902c8a1b5f SHA512 d9fdc2763f5a1efa15ee07c5d863008c9694623935f62a0e0b56f941df4e0d0ca3f86056fefc9b5ca828b47782127e3d55f2f925b1ed957e02b675bef36f4cae -DIST multipath-tools-0.8.4.tar.gz 480994 BLAKE2B be8368df049218e2eaa1749e7b1c7a930da15f0311ab549b1bbba9c019dcfe39f90a05fd621e0703301ef1d55c98ac8cc74231d82950d9066f19d8764421704b SHA512 720823188c053c1c50269a30e34a9d69099098495bfd607076bcfa2c079565e3f0580c91783f19d42ed82290c0db98e4e19ef620eca4ee5ec7885c49c72d2307 -DIST multipath-tools-0.8.5.tar.gz 494750 BLAKE2B a42d17a47631107433a1d0a9da69a0bb10d2125cb242d2125d67da18f6bc6231c9233b163dc1d07d88dcba9f912830c047fdee5b42435f59ea2976598a72fd75 SHA512 f62a09107ccb18ffab97139fe2dba3dc22450836d8669c4381a8bce4072672a027a3a1e687f33e374429bffa49b3ba4a54d1e52294044d7bc1f82ed5d5aaf760 +DIST multipath-tools-0.8.6.tar.gz 519405 BLAKE2B 5aed36550c76bbde0e874e37356b6c5a80a80b876b56dadb69ce09f0fb049a7097fd1c0aca5076f816848e2c2660f96680d7f16d56918a25299017b39f76f777 SHA512 82e5b7307e599ba6b059679c3987a442fb5be4885f0a27c260a99a07cb336b88d48e314b4ec951944e0200e4731522d8da043d98fa566857ecc6d100791c0e38 +DIST multipath-tools-0.8.7.tar.gz 523535 BLAKE2B 3f59af86f5b9f9ea524bf0c36e4a4bc3e01f557f2e18486b5278fe10e3bcf10dbc7568768c0e95529885bcdca6bcf04021ad5261bd1e6a3aeae5eb95b9d54801 SHA512 c01aea837b13429d17688455b813947342ca1cabba19b22e13ce640c77e68335a6d410280a8298595e239131e6fcbb655fa6de5ff9857eac99aa175046a450cd +DIST multipath-tools-0.8.8-no-compress-man-pages.patch.bz2 2493 BLAKE2B 08d77d6524861a590e07e3e9eedb1039c9b15b589becd912f17f37f728a751c7566699540c025aa1f8a0b2e04db551b0093d066f6e340a15309794fdde197483 SHA512 662f32ba5437be2a3cfffc5a466dccb7923668eeef5f23112b31d6c1b43eca2917579729e975cfbe4cd60ecfaf547f534d304626ac19d165bb2f1a3ae4bb1cc6 +DIST multipath-tools-0.8.8.tar.gz 527412 BLAKE2B 15e24a04ff1c41c8562033ca22214c015ab4c4a9e9833323830b665793c1964b6fcb7b710761bf501f0e99d461d6e6c7dfe80851a0ded4d99693a1561490598f SHA512 f09932da93b6ab06f0f911b09c605ea931fb8cb8b5530ef9999d21a41056fb48e944fc245dfe20096b2746ce1c9ebb5b548e1182079a3b52659d33263a441969 diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.7.5-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.7.5-respect-flags.patch deleted file mode 100644 index fef55ce31e..0000000000 --- a/sys-fs/multipath-tools/files/multipath-tools-0.7.5-respect-flags.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- multipath-tools-0.7.5/Makefile.inc -+++ multipath-tools-0.7.5/Makefile.inc -@@ -91,12 +91,13 @@ - -Wp,-D_FORTIFY_SOURCE=2 $(STACKPROT) \ - --param=ssp-buffer-size=4 - --CFLAGS := $(OPTFLAGS) -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \ -- -MMD -MP $(CFLAGS) -+CFLAGS ?= $(OPTFLAGS) -+CFLAGS += -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \ -+ -MMD -MP - BIN_CFLAGS = -fPIE -DPIE - LIB_CFLAGS = -fPIC - SHARED_FLAGS = -shared --LDFLAGS = -Wl,-z,relro -Wl,-z,now -+LDFLAGS += -Wl,-z,relro -Wl,-z,now - BIN_LDFLAGS = -pie - - # Check whether a function with name $1 has been declared in header file $2. diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-fix-gcc-10-compatibility.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.3-fix-gcc-10-compatibility.patch deleted file mode 100644 index 18ed8d65e0..0000000000 --- a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-fix-gcc-10-compatibility.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/libmultipath/structs.h -+++ b/libmultipath/structs.h -@@ -106,7 +106,7 @@ enum yes_no_undef_states { - * _FIND_MULTIPATHS_F must have the same value as YNU_YES. - * Generate a compile time error if that isn't the case. - */ --char ___error1___[-(_FIND_MULTIPATHS_F != YNU_YES)]; -+extern char ___error1___[-(_FIND_MULTIPATHS_F != YNU_YES)]; - - #define find_multipaths_on(conf) \ - (!!((conf)->find_multipaths & _FIND_MULTIPATHS_F)) diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-json-c-0.14.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.3-json-c-0.14.patch deleted file mode 100644 index 34d02f7b5d..0000000000 --- a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-json-c-0.14.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 8438a9cd8d7ed88645fa8e6a8f19c0fd9ae872a7 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= -Date: Mon, 13 Apr 2020 19:22:02 +0200 -Subject: [PATCH] Add support for upcoming json-c 0.14.0. - -TRUE/FALSE are not defined anymore. 1 and 0 are used instead. -This is backwards compatible, as earlier versions of json-c are -using the same integer values in their present definitions. ---- - libdmmp/libdmmp_private.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libdmmp/libdmmp_private.h b/libdmmp/libdmmp_private.h -index ac85b63f..4378962b 100644 ---- a/libdmmp/libdmmp_private.h -+++ b/libdmmp/libdmmp_private.h -@@ -82,7 +82,7 @@ static out_type func_name(struct dmmp_context *ctx, const char *var_name) { \ - do { \ - json_type j_type = json_type_null; \ - json_object *j_obj_tmp = NULL; \ -- if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != TRUE) { \ -+ if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != 1) { \ - _error(ctx, "Invalid JSON output from multipathd IPC: " \ - "key '%s' not found", key); \ - rc = DMMP_ERR_IPC_ERROR; \ --- -2.26.0 - diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch deleted file mode 100644 index 651cd04f59..0000000000 --- a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 041472afebd1e621be1143f2bfb4c5650df171cc Mon Sep 17 00:00:00 2001 -From: Lars Wendler -Date: Mon, 11 May 2020 11:49:58 +0200 -Subject: [PATCH] multipath-tools: Fix parallel make issues - -build is broken like this (tested with -j16): - - x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -shared -lpthread -ldevmapper -ldl -L../libmultipath -lmultipath -L../libmpathcmd -lmpathcmd -Wl,-soname=libmpathpersist.so.0 -o libmpathpersist.so.0 mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o - building defaults.o because of defaults.c - ... - /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lmultipath - collect2: error: ld returned 1 exit status - make[1]: *** [Makefile:17: libmpathpersist.so.0] Error 1 - make: *** [Makefile:29: libmpathpersist] Error 2 - make: *** Waiting for unfinished jobs.... - -install is broken like this: - - install -m 755 libprio*.so /var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath - install -m 755 libcheckcciss_tur.so libcheckreadsector0.so libchecktur.so libcheckdirectio.so libcheckemc_clariion.so libcheckhp_sw.so libcheckrdac.so /var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath - ... - /usr/bin/install: target '/var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath' is not a directory - /usr/bin/install: target '/var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath' is not a directory - make[1]: *** [Makefile:28: install] Error 1 - make[1]: *** [Makefile:38: install] Error 1 ---- - Makefile | 3 ++- - libmultipath/checkers/Makefile | 1 + - libmultipath/foreign/Makefile | 1 + - libmultipath/prioritizers/Makefile | 1 + - 4 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index 1dee3680..a9ade94f 100644 ---- a/Makefile -+++ b/Makefile -@@ -29,7 +29,8 @@ $(BUILDDIRS): - $(MAKE) -C $@ - - multipath multipathd mpathpersist: libmultipath --mpathpersist: libmpathpersist -+libmpathpersist: libmultipath -+mpathpersist: libmultipath libmpathpersist - - $(BUILDDIRS.clean): - $(MAKE) -C ${@:.clean=} clean -diff --git a/libmultipath/checkers/Makefile b/libmultipath/checkers/Makefile -index 02caea64..f201ca4c 100644 ---- a/libmultipath/checkers/Makefile -+++ b/libmultipath/checkers/Makefile -@@ -24,6 +24,7 @@ libcheck%.so: libsg.o %.o - $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^ - - install: -+ $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir) - $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir) - - uninstall: -diff --git a/libmultipath/foreign/Makefile b/libmultipath/foreign/Makefile -index fae58a0d..567deebd 100644 ---- a/libmultipath/foreign/Makefile -+++ b/libmultipath/foreign/Makefile -@@ -14,6 +14,7 @@ libforeign-%.so: %.o - $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^ - - install: -+ $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir) - $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir) - - uninstall: -diff --git a/libmultipath/prioritizers/Makefile b/libmultipath/prioritizers/Makefile -index 9d0fe03c..b0b0b522 100644 ---- a/libmultipath/prioritizers/Makefile -+++ b/libmultipath/prioritizers/Makefile -@@ -35,6 +35,7 @@ libprio%.so: %.o - $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^ - - install: $(LIBS) -+ $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir) - $(INSTALL_PROGRAM) -m 755 libprio*.so $(DESTDIR)$(libdir) - - uninstall: --- -2.26.2 - diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch deleted file mode 100644 index 5e5258405b..0000000000 --- a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- multipath-tools-0.8.4-d491591/Makefile.inc -+++ multipath-tools-0.8.4-d491591/Makefile.inc -@@ -99,12 +99,13 @@ - -Werror=cast-qual $(ERROR_DISCARDED_QUALIFIERS) \ - $(STACKPROT) --param=ssp-buffer-size=4 - CPPFLAGS := -Wp,-D_FORTIFY_SOURCE=2 --CFLAGS := $(OPTFLAGS) -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \ -- -MMD -MP $(CFLAGS) -+CFLAGS ?= $(OPTFLAGS) -+CFLAGS += -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \ -+ -MMD -MP - BIN_CFLAGS = -fPIE -DPIE - LIB_CFLAGS = -fPIC - SHARED_FLAGS = -shared --LDFLAGS = -Wl,-z,relro -Wl,-z,now -+LDFLAGS += -Wl,-z,relro -Wl,-z,now - BIN_LDFLAGS = -pie - - # Check whether a function with name $1 has been declared in header file $2. diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-no-gziped-docs.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch similarity index 63% rename from sys-fs/multipath-tools/files/multipath-tools-0.8.3-no-gziped-docs.patch rename to sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch index 534a8d33df..d8521436d9 100644 --- a/sys-fs/multipath-tools/files/multipath-tools-0.8.3-no-gziped-docs.patch +++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch @@ -1,5 +1,19 @@ -Do not gzip docs +From 80cca1a75f24ee239ace5577d49ccfec511480ca Mon Sep 17 00:00:00 2001 +From: Sam James +Date: Mon, 12 Jul 2021 06:04:04 +0100 +Subject: [PATCH] Don't compress man pages +--- + kpartx/Makefile | 5 ++--- + libdmmp/Makefile | 13 ++++--------- + libmpathpersist/Makefile | 14 +++++--------- + mpathpersist/Makefile | 5 ++--- + multipath/Makefile | 10 ++++------ + multipathd/Makefile | 5 ++--- + 6 files changed, 19 insertions(+), 33 deletions(-) + +diff --git a/kpartx/Makefile b/kpartx/Makefile +index 2906a98..cd351a4 100644 --- a/kpartx/Makefile +++ b/kpartx/Makefile @@ -21,7 +21,6 @@ all: $(EXEC) @@ -24,55 +38,83 @@ Do not gzip docs $(RM) $(DESTDIR)$(libudevdir)/kpartx_id $(RM) $(DESTDIR)$(libudevdir)/rules.d/11-dm-parts.rules $(RM) $(DESTDIR)$(libudevdir)/rules.d/66-kpartx.rules +diff --git a/libdmmp/Makefile b/libdmmp/Makefile +index 764a0bc..a859786 100644 --- a/libdmmp/Makefile +++ b/libdmmp/Makefile -@@ -40,7 +40,7 @@ install: +@@ -21,13 +21,13 @@ CFLAGS += $(LIB_CFLAGS) -fvisibility=hidden -I$(libdmmpdir) -I$(mpathcmddir) \ + LIBDEPS += $(shell $(PKGCONFIG) --libs json-c) -L$(mpathcmddir) -lmpathcmd -lpthread + + all: $(LIBS) doc +-.PHONY: doc doc.gz clean install uninstall check speed_test dep_clean ++.PHONY: doc clean install uninstall check speed_test dep_clean + + $(LIBS): $(OBJS) + $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ -o $@ $(OBJS) $(LIBDEPS) + $(LN) $@ $(DEVLIB) + +-install: doc.gz ++install: doc + mkdir -p $(DESTDIR)$(usrlibdir) + $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(usrlibdir)/$(LIBS) + $(INSTALL_PROGRAM) -m 644 -D \ +@@ -41,7 +41,7 @@ install: doc.gz $(DESTDIR)$(pkgconfdir)/$(PKGFILE) perl -i -pe 's|__INCLUDEDIR__|$(includedir)|g' \ $(DESTDIR)$(pkgconfdir)/$(PKGFILE) -- @for file in docs/man/*.3.gz; do \ -+ @for file in docs/man/*.3; do \ - $(INSTALL_PROGRAM) -m 644 -D \ - $$file \ - $(DESTDIR)$(man3dir)/ || exit $?; \ -@@ -69,11 +69,11 @@ check: all +- $(INSTALL_PROGRAM) -m 644 -t $(DESTDIR)$(man3dir) docs/man/*.3.gz ++ $(INSTALL_PROGRAM) -m 644 -t $(DESTDIR)$(man3dir) docs/man/*.3 + + uninstall: + $(RM) $(DESTDIR)$(usrlibdir)/$(LIBS) +@@ -55,7 +55,7 @@ uninstall: + + clean: dep_clean + $(RM) core *.a *.o *.gz *.so *.so.* +- $(RM) docs/man/*.gz ++ $(RM) docs/man/* + $(MAKE) -C test clean + + include $(wildcard $(OBJS:.o=.d)) +@@ -66,13 +66,8 @@ check: all speed_test: all $(MAKE) -C test speed_test --doc: docs/man/$(EXTRA_MAN_FILES).gz -+doc: docs/man/$(EXTRA_MAN_FILES) - - TEMPFILE := $(shell mktemp) - --docs/man/$(EXTRA_MAN_FILES).gz: $(HEADERS) -+docs/man/$(EXTRA_MAN_FILES): $(HEADERS) - @for file in $(EXTRA_MAN_FILES); do \ - $(INSTALL_PROGRAM) -v -m 644 -D docs/$$file docs/man/$$file; \ - done -@@ -82,10 +82,7 @@ docs/man/$(EXTRA_MAN_FILES).gz: $(HEADERS) - perl docs/kernel-doc -man "$(TEMPFILE)" | \ - perl docs/split-man.pl docs/man - -rm -f "$(TEMPFILE)" -- @for file in docs/man/*.3; do \ -- gzip -f $$file; \ -- done -- find docs/man -type f -name \*[0-9].gz -+ find docs/man -type f -name \*.[0-9] - - dep_clean: - $(RM) $(OBJS:.o=.d) +-doc.gz: doc $(patsubst %,%.gz,$(wildcard docs/man/*.3)) +- + doc: docs/man/dmmp_strerror.3 + +-docs/man/%.3.gz: docs/man/%.3 +- gzip -c $< >$@ +- + docs/man/dmmp_strerror.3: $(HEADERS) + TEMPFILE=$(shell mktemp); \ + cat $^ | perl docs/doc-preclean.pl >$$TEMPFILE; \ +diff --git a/libmpathpersist/Makefile b/libmpathpersist/Makefile +index 57103e5..37c765a 100644 --- a/libmpathpersist/Makefile +++ b/libmpathpersist/Makefile -@@ -16,8 +16,6 @@ all: $(LIBS) - $(LIBS): $(OBJS) - $(CC) $(LDFLAGS) $(SHARED_FLAGS) $(LIBDEPS) -Wl,-soname=$@ -o $@ $(OBJS) - $(LN) $(LIBS) $(DEVLIB) +@@ -12,7 +12,7 @@ LIBDEPS += -lmultipath -lmpathcmd -ldevmapper -lpthread -ldl + + OBJS = mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o + +-all: $(DEVLIB) man ++all: $(DEVLIB) + + $(LIBS): $(OBJS) $(VERSION_SCRIPT) + $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ \ +@@ -21,10 +21,6 @@ $(LIBS): $(OBJS) $(VERSION_SCRIPT) + $(DEVLIB): $(LIBS) + $(LN) $(LIBS) $@ + +-man: - $(GZIP) mpath_persistent_reserve_in.3 > mpath_persistent_reserve_in.3.gz - $(GZIP) mpath_persistent_reserve_out.3 > mpath_persistent_reserve_out.3.gz - - install: $(LIBS) +- + install: all $(INSTALL_PROGRAM) -d $(DESTDIR)$(syslibdir) -@@ -26,14 +24,14 @@ install: $(LIBS) + $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(syslibdir)/$(LIBS) +@@ -32,14 +28,14 @@ install: all $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(man3dir) $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(includedir) $(LN) $(LIBS) $(DESTDIR)$(syslibdir)/$(DEVLIB) @@ -91,6 +133,8 @@ Do not gzip docs $(RM) $(DESTDIR)$(includedir)/mpath_persist.h $(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB) +diff --git a/mpathpersist/Makefile b/mpathpersist/Makefile +index 5126801..0aba3cb 100644 --- a/mpathpersist/Makefile +++ b/mpathpersist/Makefile @@ -14,13 +14,12 @@ all: $(EXEC) @@ -117,6 +161,8 @@ Do not gzip docs dep_clean: $(RM) $(OBJS:.o=.d) +diff --git a/multipath/Makefile b/multipath/Makefile +index 0828a8f..55b6f7b 100644 --- a/multipath/Makefile +++ b/multipath/Makefile @@ -16,8 +16,6 @@ all: $(EXEC) @@ -149,17 +195,19 @@ Do not gzip docs clean: dep_clean $(RM) core *.o $(EXEC) *.gz +diff --git a/multipathd/Makefile b/multipathd/Makefile +index d053c1e..cf3339f 100644 --- a/multipathd/Makefile +++ b/multipathd/Makefile -@@ -34,7 +34,6 @@ all : $(EXEC) +@@ -38,7 +38,6 @@ all : $(EXEC) $(EXEC): $(OBJS) $(multipathdir)/libmultipath.so $(mpathcmddir)/libmpathcmd.so $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) -o $(EXEC) $(LIBDEPS) - $(GZIP) $(EXEC).8 > $(EXEC).8.gz - install: - $(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir) -@@ -45,11 +44,11 @@ ifdef SYSTEMD + cli_handlers.o: cli_handlers.c + $(CC) $(CFLAGS) -Wno-unused-parameter -c -o $@ $< +@@ -52,11 +51,11 @@ ifdef SYSTEMD $(INSTALL_PROGRAM) -m 644 $(EXEC).socket $(DESTDIR)$(unitdir) endif $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir) @@ -173,3 +221,6 @@ Do not gzip docs $(RM) $(DESTDIR)$(unitdir)/$(EXEC).service $(RM) $(DESTDIR)$(unitdir)/$(EXEC).socket +-- +2.32.0 + diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.7-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.7-respect-flags.patch new file mode 100644 index 0000000000..43c03883ee --- /dev/null +++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.7-respect-flags.patch @@ -0,0 +1,14 @@ +--- a/Makefile.inc ++++ b/Makefile.inc +@@ -101,8 +101,9 @@ OPTFLAGS := -O2 -g $(STACKPROT) --param=ssp-buffer-size=4 + WARNFLAGS := -Werror -Wall -Wextra -Wformat=2 $(WFORMATOVERFLOW) -Werror=implicit-int \ + -Werror=implicit-function-declaration -Werror=format-security \ + $(WNOCLOBBERED) -Werror=cast-qual $(ERROR_DISCARDED_QUALIFIERS) +-CPPFLAGS := -Wp,-D_FORTIFY_SOURCE=2 +-CFLAGS := --std=gnu99 $(CFLAGS) $(OPTFLAGS) $(WARNFLAGS) -pipe \ ++CPPFLAGS ?= -Wp,-D_FORTIFY_SOURCE=2 ++CFLAGS ?= --std=gnu99 $(CFLAGS) $(OPTFLAGS) $(WARNFLAGS) -pipe ++CFLAGS += --std=gnu99 \ + -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \ + -MMD -MP + BIN_CFLAGS = -fPIE -DPIE diff --git a/sys-fs/multipath-tools/metadata.xml b/sys-fs/multipath-tools/metadata.xml index 9a20c9e5bc..1cbf200d6c 100644 --- a/sys-fs/multipath-tools/metadata.xml +++ b/sys-fs/multipath-tools/metadata.xml @@ -1,5 +1,5 @@ - + base-system@gentoo.org @@ -8,4 +8,7 @@ Enable Rados block device support via sys-cluster/ceph + + opensvc/multipath-tools + diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.5.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild similarity index 71% rename from sys-fs/multipath-tools/multipath-tools-0.8.5.ebuild rename to sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild index cd850ca74a..e8862ae677 100644 --- a/sys-fs/multipath-tools/multipath-tools-0.8.5.ebuild +++ b/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild @@ -1,20 +1,19 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" -inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs +inherit linux-info systemd toolchain-funcs udev DESCRIPTION="Device mapper target autoconfig" HOMEPAGE="http://christophe.varoqui.free.fr/" -SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz" +SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" -IUSE="systemd rbd" - -BDEPEND="virtual/pkgconfig" +KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ppc ppc64 x86" +IUSE="systemd rbd test" +RESTRICT="!test? ( test )" RDEPEND=" dev-libs/json-c:= @@ -26,23 +25,17 @@ RDEPEND=" rbd? ( sys-cluster/ceph ) systemd? ( sys-apps/systemd ) " - -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + test? ( dev-util/cmocka )" +BDEPEND="virtual/pkgconfig" CONFIG_CHECK="~DM_MULTIPATH" -RESTRICT="test" - PATCHES=( "${FILESDIR}"/${PN}-0.8.5-respect-flags.patch - "${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch + "${FILESDIR}"/${PN}-0.8.6-no-compress-man-pages.patch ) -get_systemd_pv() { - use systemd && \ - $(tc-getPKG_CONFIG) --modversion systemd -} - src_prepare() { default @@ -63,15 +56,17 @@ src_compile() { # so force the test to go the way we want #411337. emake \ CC="$(tc-getCC)" \ - LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)" + LIB="${EPREFIX}/$(get_libdir)" \ + LIBDM_API_FLUSH=1 \ + PKGCONFIG="$(tc-getPKG_CONFIG)" } src_install() { dodir /sbin /usr/share/man/man{3,5,8} emake \ DESTDIR="${D}" \ + LIB="${EPREFIX}/$(get_libdir)" \ RUN=run \ - SYSTEMD=$(get_systemd_pv) \ unitdir="$(systemd_get_systemunitdir)" \ libudevdir='${prefix}'/"$(get_udevdir)" \ pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \ @@ -81,10 +76,12 @@ src_install() { newinitd "${FILESDIR}"/multipath.rc multipath einstalldocs + + find "${ED}" -type f -name "*.la" -delete || die } pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]]; then + if [[ -z ${REPLACING_VERSIONS} ]] ; then elog "If you need multipath on your system, you must" elog "add 'multipath' into your boot runlevel!" fi diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.3-r2.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.7.ebuild similarity index 67% rename from sys-fs/multipath-tools/multipath-tools-0.8.3-r2.ebuild rename to sys-fs/multipath-tools/multipath-tools-0.8.7.ebuild index ab5b8e5272..35caf3b69f 100644 --- a/sys-fs/multipath-tools/multipath-tools-0.8.3-r2.ebuild +++ b/sys-fs/multipath-tools/multipath-tools-0.8.7.ebuild @@ -1,20 +1,19 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" -inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs +inherit linux-info systemd toolchain-funcs udev DESCRIPTION="Device mapper target autoconfig" HOMEPAGE="http://christophe.varoqui.free.fr/" -SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz" +SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ppc ppc64 x86" -IUSE="systemd rbd" - -BDEPEND="virtual/pkgconfig" +IUSE="systemd rbd test" +RESTRICT="!test? ( test )" RDEPEND=" dev-libs/json-c:= @@ -26,25 +25,17 @@ RDEPEND=" rbd? ( sys-cluster/ceph ) systemd? ( sys-apps/systemd ) " - -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + test? ( dev-util/cmocka )" +BDEPEND="virtual/pkgconfig" CONFIG_CHECK="~DM_MULTIPATH" -RESTRICT="test" - PATCHES=( - "${FILESDIR}"/${PN}-0.7.5-respect-flags.patch - "${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch - "${FILESDIR}"/${PN}-0.8.3-json-c-0.14.patch - "${FILESDIR}"/${PN}-0.8.3-fix-gcc-10-compatibility.patch + "${FILESDIR}"/${PN}-0.8.7-respect-flags.patch + "${FILESDIR}"/${PN}-0.8.6-no-compress-man-pages.patch ) -get_systemd_pv() { - use systemd && \ - $(tc-getPKG_CONFIG) --modversion systemd -} - src_prepare() { default @@ -61,19 +52,22 @@ src_prepare() { } src_compile() { + tc-export CC + # LIBDM_API_FLUSH involves grepping files in /usr/include, # so force the test to go the way we want #411337. emake \ - CC="$(tc-getCC)" \ - LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)" + LIB="${EPREFIX}/$(get_libdir)" \ + LIBDM_API_FLUSH=1 \ + PKGCONFIG="$(tc-getPKG_CONFIG)" } src_install() { - dodir /sbin /usr/share/man/man{5,8} + dodir /sbin /usr/share/man/man{3,5,8} emake \ DESTDIR="${D}" \ + LIB="${EPREFIX}/$(get_libdir)" \ RUN=run \ - SYSTEMD=$(get_systemd_pv) \ unitdir="$(systemd_get_systemunitdir)" \ libudevdir='${prefix}'/"$(get_udevdir)" \ pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \ @@ -83,10 +77,12 @@ src_install() { newinitd "${FILESDIR}"/multipath.rc multipath einstalldocs + + find "${ED}" -type f -name "*.la" -delete || die } pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]]; then + if [[ -z ${REPLACING_VERSIONS} ]] ; then elog "If you need multipath on your system, you must" elog "add 'multipath' into your boot runlevel!" fi diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.8.ebuild similarity index 65% rename from sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild rename to sys-fs/multipath-tools/multipath-tools-0.8.8.ebuild index ab4f6f9cd3..f0a18e273b 100644 --- a/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild +++ b/sys-fs/multipath-tools/multipath-tools-0.8.8.ebuild @@ -1,20 +1,20 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" -inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs +inherit linux-info systemd toolchain-funcs udev DESCRIPTION="Device mapper target autoconfig" HOMEPAGE="http://christophe.varoqui.free.fr/" -SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz" +SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.8.8-no-compress-man-pages.patch.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" -IUSE="systemd rbd" - -BDEPEND="virtual/pkgconfig" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="systemd rbd test" +RESTRICT="!test? ( test )" RDEPEND=" dev-libs/json-c:= @@ -26,25 +26,17 @@ RDEPEND=" rbd? ( sys-cluster/ceph ) systemd? ( sys-apps/systemd ) " - -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + test? ( dev-util/cmocka )" +BDEPEND="virtual/pkgconfig" CONFIG_CHECK="~DM_MULTIPATH" -RESTRICT="test" - PATCHES=( - "${FILESDIR}"/${PN}-0.8.4-respect-flags.patch - "${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch - "${FILESDIR}"/${PN}-0.8.3-json-c-0.14.patch - "${FILESDIR}"/${PN}-0.8.4-parallel_make_fix.patch + "${FILESDIR}"/${PN}-0.8.7-respect-flags.patch + "${WORKDIR}"/${PN}-0.8.8-no-compress-man-pages.patch ) -get_systemd_pv() { - use systemd && \ - $(tc-getPKG_CONFIG) --modversion systemd -} - src_prepare() { default @@ -61,19 +53,22 @@ src_prepare() { } src_compile() { + tc-export CC + # LIBDM_API_FLUSH involves grepping files in /usr/include, # so force the test to go the way we want #411337. emake \ - CC="$(tc-getCC)" \ - LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)" + LIB="${EPREFIX}/$(get_libdir)" \ + LIBDM_API_FLUSH=1 \ + PKGCONFIG="$(tc-getPKG_CONFIG)" } src_install() { dodir /sbin /usr/share/man/man{3,5,8} emake \ DESTDIR="${D}" \ + LIB="${EPREFIX}/$(get_libdir)" \ RUN=run \ - SYSTEMD=$(get_systemd_pv) \ unitdir="$(systemd_get_systemunitdir)" \ libudevdir='${prefix}'/"$(get_udevdir)" \ pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \ @@ -83,10 +78,12 @@ src_install() { newinitd "${FILESDIR}"/multipath.rc multipath einstalldocs + + find "${ED}" -type f -name "*.la" -delete || die } pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]]; then + if [[ -z ${REPLACING_VERSIONS} ]] ; then elog "If you need multipath on your system, you must" elog "add 'multipath' into your boot runlevel!" fi diff --git a/sys-libs/e2fsprogs-libs/Manifest b/sys-libs/e2fsprogs-libs/Manifest index 889ae64f7d..580fc5c761 100644 --- a/sys-libs/e2fsprogs-libs/Manifest +++ b/sys-libs/e2fsprogs-libs/Manifest @@ -1,3 +1 @@ -DIST e2fsprogs-1.45.4.tar.xz 5567164 BLAKE2B ab7be15e504b674290a25572d09d1ca4bacebc14d23a0ae400636bdcf3bf117f3aaf82b806ca7fd25dcd6ef9fedff588de7c72134b095e27f7a363f7d70c94c7 SHA512 408f093a6674ef2316c451173481851041957617c550308d2969b983e11d988ddfc120626cd957c0759648bc357edf1d9971e6d46bed109c2af5f8a09bdc5bda -DIST e2fsprogs-1.45.5.tar.xz 5569796 BLAKE2B cf9633caa6c00afa51408364d0c0a1515a9989ad1582fb485a300fd71bf61ec56b57dbb26f152609eaf2d63bfb04fe1e3f271085c26aa0c832c1f467960e6480 SHA512 d1a8611b525742387061f390fb24825dfa175997cc7db05decea913fcc7b97a95a3e787091f2920d4a7d4eb1d813568af734a1610229ead09bcbf9f3e262e4ce -DIST e2fsprogs-1.45.6.tar.xz 5572144 BLAKE2B 24a44d27a02a1fa178083d5ee6034b20fedcac9faf7cf7f5cfcd4e4cee6d38775bc78949b9b00823cbbdacfab783e8e1e739579b9a7236c5425f51b27600743b SHA512 f3abfb6fe7ef632bb81152e2127d601cadd3fa93162178576a1d5ed82c2286627184b207b85a5b2a1793db0addf0885dfc3b9523bb340443224caf9c6d613b84 +DIST e2fsprogs-1.46.4.tar.xz 7035200 BLAKE2B 473f7fd3f521b94cdaa68e37784a518fc1919387dd114f31b5338f1b4c472f86b150229ec3dcae8b73eac95330c0dea729befc8cea08bcf1e455c0b6652d6d2b SHA512 7d9cfdf00ed58e66049585e8382fe4977088956421a0fb8155900c69afd8857309ad2b9301b3f74c9c0afa7287a0ddba2fd1538fcf57858b37a9ab712390016d diff --git a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.4.ebuild b/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.4.ebuild deleted file mode 100644 index 4333c81041..0000000000 --- a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.4.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs multilib-minimal usr-ldscript - -MY_PN=${PN%-libs} -MY_P="${MY_PN}-${PV}" - -DESCRIPTION="e2fsprogs libraries (common error and subsystem)" -HOMEPAGE="http://e2fsprogs.sourceforge.net/" -SRC_URI="mirror://sourceforge/e2fsprogs/${MY_P}.tar.xz - https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${MY_P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~m68k-mint ~x86-solaris" -IUSE="static-libs" - -RDEPEND="!sys-libs/com_err - !sys-libs/ss - ! - + - - base-system@gentoo.org - Gentoo Base System - - - cpe:/a:e2fsprogs_project:e2fsprogs - e2fsprogs - + + base-system@gentoo.org + Gentoo Base System + + + cpe:/a:e2fsprogs_project:e2fsprogs + tytso/e2fsprogs + e2fsprogs + diff --git a/sys-libs/liburing/Manifest b/sys-libs/liburing/Manifest index 90602b3316..397baaaf05 100644 --- a/sys-libs/liburing/Manifest +++ b/sys-libs/liburing/Manifest @@ -1 +1 @@ -DIST liburing-0.7.tar.bz2 86386 BLAKE2B a4fa00cc8e384f9909f3c628d479774beaffd5ab09c9f321ef22bfbabd273e4c8d4dbb30a3280633e89e1a79e893348e68f0aa2f3b1b4deda56759f77d9b1875 SHA512 9a23bc08e0fa59273264295859dddbe3276b2911df6d937b3c6f7647a250a3175222b5f051f3094efc98e48cacd242511327c5c5b895ebde10c8c87929ba4328 +DIST liburing-2.1.tar.bz2 120806 BLAKE2B 3a09d1504150ed1c111f064187d868fd86ec7c3dbf661f73999f7fbb9c945b528f7ab2e0cfff5d270a1a977f04deedc7c790b6df8708ef2884fbf28c1a9ffd1b SHA512 a658454869b01752b5e499c4f0b50c342a8ff63b3dd1a473a96f9fad03f22a6e4d2354b0e658a4e7e50ea27440a84ee274856b3687803583bc80cb4bc45aec71 diff --git a/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch new file mode 100644 index 0000000000..a652b05214 --- /dev/null +++ b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch @@ -0,0 +1,54 @@ +https://github.com/axboe/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da +https://bugs.gentoo.org/816798 + +From cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001 +From: Guillem Jover +Date: Mon, 13 Sep 2021 23:56:08 +0200 +Subject: [PATCH] test: Use syscall wrappers instead of using syscall(2) + directly + +Some of these syscalls have different entry points depending on the +architecture. Use the wrappers to avoid having to reimplement them +portably. + +Fixes build failures on Debian armel and armhf builds. + +Signed-off-by: Guillem Jover +--- a/test/sqpoll-cancel-hang.c ++++ b/test/sqpoll-cancel-hang.c +@@ -4,7 +4,6 @@ + #include + #include + #include +-#include + #include + #include + #include +@@ -29,8 +28,6 @@ static uint64_t current_time_ms(void) + + #define IORING_OFF_SQES 0x10000000ULL + +-#define sys_io_uring_setup 425 +- + static void kill_and_wait(int pid, int* status) + { + kill(-pid, SIGKILL); +@@ -53,7 +50,7 @@ a5) + void* vma2 = (void*)a3; + void** ring_ptr_out = (void**)a4; + void** sqes_ptr_out = (void**)a5; +- uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params); ++ uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params); + uint32_t sq_ring_sz = setup_params->sq_off.array + + setup_params->sq_entries * sizeof(uint32_t); + uint32_t cq_ring_sz = setup_params->cq_off.cqes + +@@ -135,7 +132,7 @@ void trigger_bug(void) + } + int main(void) + { +- syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); ++ mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); + int pid = fork(); + if (pid < 0) + exit(1); + diff --git a/sys-libs/liburing/liburing-2.1-r1.ebuild b/sys-libs/liburing/liburing-2.1-r1.ebuild new file mode 100644 index 0000000000..ae14b067cb --- /dev/null +++ b/sys-libs/liburing/liburing-2.1-r1.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal toolchain-funcs + +DESCRIPTION="Efficient I/O with io_uring" +HOMEPAGE="https://github.com/axboe/liburing" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/axboe/liburing.git" +else + SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86" +fi +LICENSE="MIT" +SLOT="0/2" # liburing.so major version + +IUSE="static-libs" +# fsync test hangs forever +RESTRICT="test" + +PATCHES=( + # Upstream, bug #816798 + "${FILESDIR}"/${P}-arm-syscall.patch +) + +src_prepare() { + default + + if [[ "${PV}" != *9999 ]] ; then + # Make sure pkgconfig files contain the correct version + # bug #809095 and #833895 + sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || die + fi + + multilib_copy_sources +} + +multilib_src_configure() { + local myconf=( + --prefix="${EPREFIX}/usr" + --libdir="${EPREFIX}/usr/$(get_libdir)" + --libdevdir="${EPREFIX}/usr/$(get_libdir)" + --mandir="${EPREFIX}/usr/share/man" + --cc="$(tc-getCC)" + ) + # No autotools configure! "econf" will fail. + TMPDIR="${T}" ./configure "${myconf[@]}" +} + +multilib_src_compile() { + emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" +} + +multilib_src_install_all() { + einstalldocs + + if ! use static-libs ; then + find "${ED}" -type f -name "*.a" -delete || die + fi +} + +multilib_src_test() { + emake V=1 runtests +} diff --git a/sys-libs/liburing/liburing-0.7-r1.ebuild b/sys-libs/liburing/liburing-9999.ebuild similarity index 62% rename from sys-libs/liburing/liburing-0.7-r1.ebuild rename to sys-libs/liburing/liburing-9999.ebuild index c349d80f97..c7427bfe9a 100644 --- a/sys-libs/liburing/liburing-0.7-r1.ebuild +++ b/sys-libs/liburing/liburing-9999.ebuild @@ -1,16 +1,21 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 inherit multilib-minimal toolchain-funcs DESCRIPTION="Efficient I/O with io_uring" HOMEPAGE="https://github.com/axboe/liburing" -SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~ppc ppc64 sparc x86" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/axboe/liburing.git" +else + SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi LICENSE="MIT" -SLOT="0/1.0.7" # liburing.so version +SLOT="0/2" # liburing.so major version IUSE="static-libs" # fsync test hangs forever @@ -18,6 +23,13 @@ RESTRICT="test" src_prepare() { default + + if [[ "${PV}" != *9999 ]] ; then + # Make sure pkgconfig files contain the correct version + # bug #809095 and #833895 + sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || die + fi + multilib_copy_sources } diff --git a/sys-libs/liburing/metadata.xml b/sys-libs/liburing/metadata.xml index e9a23bab52..52230348c9 100644 --- a/sys-libs/liburing/metadata.xml +++ b/sys-libs/liburing/metadata.xml @@ -1,5 +1,5 @@ - + polynomial-c@gentoo.org diff --git a/virtual/awk/awk-1.ebuild b/virtual/awk/awk-1.ebuild index c405925c8a..1d8e9c62e9 100644 --- a/virtual/awk/awk-1.ebuild +++ b/virtual/awk/awk-1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 +EAPI=7 DESCRIPTION="Virtual for awk implementation" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~x86-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" RDEPEND=" || ( @@ -13,5 +13,4 @@ RDEPEND=" sys-apps/mawk sys-apps/nawk sys-apps/busybox - ) - ! - + - - junghans@gentoo.org - Christoph Junghans - - - base-system@gentoo.org - Gentoo Base System - - + + junghans@gentoo.org + Christoph Junghans + + + base-system@gentoo.org + Gentoo Base System + + + diff --git a/virtual/libudev/libudev-215-r1.ebuild b/virtual/libudev/libudev-215-r1.ebuild deleted file mode 100644 index e85f06c93c..0000000000 --- a/virtual/libudev/libudev-215-r1.ebuild +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit multilib-build - -DESCRIPTION="Virtual for libudev providers" -SLOT="0/1" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" -IUSE="static-libs systemd" -REQUIRED_USE="systemd? ( !static-libs )" - -RDEPEND=" - !systemd? ( || ( - >=sys-fs/eudev-1.3:0/0[${MULTILIB_USEDEP},static-libs(-)?] - >=sys-fs/udev-208-r1:0/0[${MULTILIB_USEDEP},static-libs(-)?] - ) ) - systemd? ( >=sys-apps/systemd-212-r5:0/2[${MULTILIB_USEDEP}] ) -" diff --git a/virtual/libudev/libudev-232-r1.ebuild b/virtual/libudev/libudev-232-r1.ebuild deleted file mode 100644 index 68cec0b50c..0000000000 --- a/virtual/libudev/libudev-232-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit multilib-build - -DESCRIPTION="Virtual for libudev providers" -SLOT="0/1" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" -IUSE="systemd" - -RDEPEND=" - !systemd? ( >=sys-fs/udev-232:0/0[${MULTILIB_USEDEP}] ) - systemd? ( >=sys-apps/systemd-232:0/2[${MULTILIB_USEDEP}] ) -" diff --git a/virtual/libudev/libudev-232-r3.ebuild b/virtual/libudev/libudev-232-r3.ebuild deleted file mode 100644 index 75050714b7..0000000000 --- a/virtual/libudev/libudev-232-r3.ebuild +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit multilib-build - -DESCRIPTION="Virtual for libudev providers" -SLOT="0/1" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" -IUSE="static-libs systemd" - -RDEPEND=" - !systemd? ( || ( - >=sys-fs/eudev-3.2.9:0/0[${MULTILIB_USEDEP},static-libs(-)?] - >=sys-fs/udev-232:0/0[${MULTILIB_USEDEP},static-libs(-)?] - ) ) - systemd? ( >=sys-apps/systemd-232:0/2[${MULTILIB_USEDEP},static-libs(-)?] ) -" diff --git a/virtual/libudev/libudev-232-r2.ebuild b/virtual/libudev/libudev-232-r5.ebuild similarity index 82% rename from virtual/libudev/libudev-232-r2.ebuild rename to virtual/libudev/libudev-232-r5.ebuild index 9456f927db..c835fa223c 100644 --- a/virtual/libudev/libudev-232-r2.ebuild +++ b/virtual/libudev/libudev-232-r5.ebuild @@ -1,18 +1,20 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 + inherit multilib-build DESCRIPTION="Virtual for libudev providers" + SLOT="0/1" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" -IUSE="static-libs systemd" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" +IUSE="systemd" RDEPEND=" !systemd? ( || ( - >=sys-fs/eudev-3.2.9:0/0[${MULTILIB_USEDEP}] >=sys-fs/udev-232:0/0[${MULTILIB_USEDEP}] + >=sys-fs/eudev-3.2.9:0/0[${MULTILIB_USEDEP}] ) ) systemd? ( >=sys-apps/systemd-232:0/2[${MULTILIB_USEDEP}] ) " diff --git a/virtual/libudev/metadata.xml b/virtual/libudev/metadata.xml index b1c8a60ed0..d3d2736bbc 100644 --- a/virtual/libudev/metadata.xml +++ b/virtual/libudev/metadata.xml @@ -1,13 +1,11 @@ - + - - udev-bugs@gentoo.org - eudev@gentoo.org systemd@gentoo.org + diff --git a/virtual/resolvconf/metadata.xml b/virtual/resolvconf/metadata.xml index 7a38bb9009..c3bda71eef 100644 --- a/virtual/resolvconf/metadata.xml +++ b/virtual/resolvconf/metadata.xml @@ -1,5 +1,6 @@ - + + diff --git a/virtual/resolvconf/resolvconf-1.ebuild b/virtual/resolvconf/resolvconf-1.ebuild index 5f85ce1247..3438254add 100644 --- a/virtual/resolvconf/resolvconf-1.ebuild +++ b/virtual/resolvconf/resolvconf-1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 DESCRIPTION="Virtual to select between different resolvconf providers" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" RDEPEND=" || (