diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2021-09-01 09:17:03 +0200 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2021-09-01 09:17:26 +0200 |
commit | 1efc25075df9726cab1467d87848a6eda46adce5 (patch) | |
tree | ba842ab4e40d91965ddbd200a0b503161354bb6f /sys-apps/iproute2 | |
parent | sys-apps/iproute2: Synced live ebuild (diff) | |
download | gentoo-1efc25075df9726cab1467d87848a6eda46adce5.tar.gz gentoo-1efc25075df9726cab1467d87848a6eda46adce5.tar.bz2 gentoo-1efc25075df9726cab1467d87848a6eda46adce5.zip |
sys-apps/iproute2: Removed old
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Diffstat (limited to 'sys-apps/iproute2')
-rw-r--r-- | sys-apps/iproute2/Manifest | 2 | ||||
-rw-r--r-- | sys-apps/iproute2/files/iproute2-5.1.0-portability.patch | 32 | ||||
-rw-r--r-- | sys-apps/iproute2/files/iproute2-5.10.0-configure-nomagic.patch | 226 | ||||
-rw-r--r-- | sys-apps/iproute2/iproute2-5.10.0-r2.ebuild | 168 | ||||
-rw-r--r-- | sys-apps/iproute2/iproute2-5.12.0-r1.ebuild | 170 |
5 files changed, 0 insertions, 598 deletions
diff --git a/sys-apps/iproute2/Manifest b/sys-apps/iproute2/Manifest index 7d50a0780cdf..144ab4b2b343 100644 --- a/sys-apps/iproute2/Manifest +++ b/sys-apps/iproute2/Manifest @@ -1,4 +1,2 @@ -DIST iproute2-5.10.0.tar.xz 798776 BLAKE2B 8c17e65f03427f45b71dc17b289b272545549a6687257498676a23e4fdc4a590a7215bfdba3c7ac4b1ccde6c38ba8e3eb222eea2532374fa9680633aa198d347 SHA512 a468eefa797898b6de452212aa432c0a931434defacae5fb4335754c1292c5d86a8c8dbf3017f90cec266d71a2a17ae469aac17e1a85a5cbddc70814313e4c13 -DIST iproute2-5.12.0.tar.xz 835880 BLAKE2B 8e3e1b7188d7ab5014d06d7edaae2cb0c1dc65862999a2ca9f31902256d7f3d166de8a1c76e4e137acce2b445d72ea6850bfec3640d1919cb82351d45dd3e47e SHA512 9249beb67b30ceef178b60b2b61a5e6c45277e747ae4c865e739b7ab84192549e8e94ebaee43c0a87c0291037746ffb6936346245220786e369201ee13d60fac DIST iproute2-5.13.0.tar.xz 845236 BLAKE2B e1c148e2a720236163e7f4d46aa38d244a02ae36ad86571c5606d54c9ccfd8d0363e2fb793d48cf39aae322b3c36b9f8a43eaf570dbdb8243092926cef3d2786 SHA512 a3286639fb303a7c3c553cb5df0a7336c4c67e53eb05e872d2776b771dbfa36ffdf2df140f570275db6785c882992f469f8eb34a5b506aac876216df7dde245d DIST iproute2-5.14.0.tar.xz 853572 BLAKE2B 52544021798f2cb716a57998d98dadc2441142b02d38c7e274bc17a6e5f994bdb5bd3ebf0b896bfd7e327a44f00f92c2af8e67367cdc0aac70769d563082f543 SHA512 e2b9b0a2c3e6fc4c67cb50b0a9bf710e749648b83369a49bf905edd7e519d76c50c2cc818bb63cc605c409c66075d4d371f2371796e5f7a8f9d04101b80ef75c diff --git a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch b/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch deleted file mode 100644 index e704f65c113f..000000000000 --- a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 202d79fcf4e184818bd074f8c06e94e700670898 Mon Sep 17 00:00:00 2001 -From: Jory Pratt <anarchy@gentoo.org> -Date: Tue, 11 Jun 2019 01:48:01 -0500 -Subject: [PATCH] including sysinfo.h from kernel.h makes no sense whatsoever, - but removing it breaks glibc's userspace header, which includes kernel.h - instead of sysinfo.h from their sys/sysinfo.h. this seems to be a historical - mistake. on musl, including any header that uses kernel.h directly or - indirectly plus sys/sysinfo.h will produce a compile error due to - redefinition of struct sysinfo. so for now, only include it on glibc in order - not to break their headers. - -Signed-off-by: Jory Pratt <anarchy@gentoo.org> ---- - include/uapi/linux/kernel.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/include/uapi/linux/kernel.h b/include/uapi/linux/kernel.h -index d99ffa1..f917115 100644 ---- a/include/uapi/linux/kernel.h -+++ b/include/uapi/linux/kernel.h -@@ -2,7 +2,9 @@ - #ifndef _LINUX_KERNEL_H - #define _LINUX_KERNEL_H - -+#ifdef __GLIBC__ - #include <linux/sysinfo.h> -+#endif - - /* - * 'kernel.h' contains some often-used function prototypes etc --- -2.22.0 diff --git a/sys-apps/iproute2/files/iproute2-5.10.0-configure-nomagic.patch b/sys-apps/iproute2/files/iproute2-5.10.0-configure-nomagic.patch deleted file mode 100644 index cf8ca335f21b..000000000000 --- a/sys-apps/iproute2/files/iproute2-5.10.0-configure-nomagic.patch +++ /dev/null @@ -1,226 +0,0 @@ -The hand-rolled configure script, for multiple options (selinux,mnl,elf), sets -a variable as well as modifying CFLAGS & LDLIBS. - -If config.mk is later amended to disable a feature, the CFLAGS/LDLIBS tweaks -are still in place. - -Push the CFLAGS/LDLIBS changes into new conditional Makefile code, so that they -are only passed when correctly needed. - -Prior Gentoo testcase for reproduction: -USE=minimal ebuild ... compile. -- Linking with libelf, libmnl & libcap based only on presence. -- Links based on libselinux based only on presence. - -Closes: https://bugs.gentoo.org/643722 -Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> - -Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org> -Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org> -Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> -Forward-ported from v4.20.0 to v5.10.0 by Lars Wendler <polynomial-c@gentoo.org> - ---- iproute2-5.10.0/bridge/Makefile -+++ iproute2-5.10.0/bridge/Makefile -@@ -2,6 +2,7 @@ - BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o - - include ../config.mk -+include ../config.include - - all: bridge - ---- iproute2-5.10.0/config.include -+++ iproute2-5.10.0/config.include -@@ -0,0 +1,32 @@ -+# We can only modify CFLAGS/LDLIBS after all the config options are known. -+ifeq ($(IP_CONFIG_SETNS),y) -+ CFLAGS += $(IP_CONFIG_SETNS_CFLAGS) -+endif -+ifeq ($(HAVE_ELF),y) -+ CFLAGS += $(HAVE_ELF_CFLAGS) -+ LDLIBS += $(HAVE_ELF_LDLIBS) -+endif -+ifeq ($(HAVE_SELINUX),y) -+ CFLAGS += $(HAVE_SELINUX_CFLAGS) -+ LDLIBS += $(HAVE_SELINUX_LDLIBS) -+endif -+ifeq ($(HAVE_MNL),y) -+ CFLAGS += $(HAVE_MNL_CFLAGS) -+ LDLIBS += $(HAVE_MNL_LDLIBS) -+endif -+ifeq ($(HAVE_CAP),y) -+ CFLAGS += $(HAVE_CAP_CFLAGS) -+ LDLIBS += $(HAVE_CAP_LDLIBS) -+endif -+ifeq ($(HAVE_LIBBSD),y) -+ CFLAGS += $(HAVE_LIBBSD_CFLAGS) -+ LDLIBS += $(HAVE_LIBBSD_LDLIBS) -+else -+ CFLAGS += -DNEED_STRLCPY -+endif -+ -+# Rules can only be declared after all variables in them are known. -+%.o: %.c -+ $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $< -+ -+# vim: ft=make: ---- iproute2-5.10.0/configure -+++ iproute2-5.10.0/configure -@@ -190,7 +190,7 @@ - if $CC -I$INCLUDE -o $TMPDIR/setnstest $TMPDIR/setnstest.c >/dev/null 2>&1; then - echo "IP_CONFIG_SETNS:=y" >>$CONFIG - echo "yes" -- echo "CFLAGS += -DHAVE_SETNS" >>$CONFIG -+ echo "IP_CONFIG_SETNS_CFLAGS += -DHAVE_SETNS" >>$CONFIG - else - echo "no" - fi -@@ -233,8 +233,8 @@ - echo "HAVE_ELF:=y" >>$CONFIG - echo "yes" - -- echo 'CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG -- echo 'LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG -+ echo 'HAVE_ELF_CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG -+ echo 'HAVE_ELF_LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG - else - echo "no" - fi -@@ -247,8 +247,8 @@ - echo "HAVE_SELINUX:=y" >>$CONFIG - echo "yes" - -- echo 'LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG -- echo 'CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG -+ echo 'HAVE_SELINUX_CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG -+ echo 'HAVE_SELINUX_LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG - else - echo "no" - fi -@@ -260,8 +260,8 @@ - echo "HAVE_MNL:=y" >>$CONFIG - echo "yes" - -- echo 'CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG -- echo 'LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG -+ echo 'HAVE_MNL_CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG -+ echo 'HAVE_MNL_LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG - else - echo "no" - fi -@@ -301,8 +301,8 @@ - echo "no" - else - if ${PKG_CONFIG} libbsd --exists; then -- echo 'CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG -- echo 'LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG -+ echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG -+ echo 'HAVE_LIBBSD_LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG - echo "no" - else - echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG -@@ -318,8 +318,8 @@ - echo "HAVE_CAP:=y" >>$CONFIG - echo "yes" - -- echo 'CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG -- echo 'LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG -+ echo 'HAVE_CAP_CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG -+ echo 'HAVE_CAP_LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG - else - echo "no" - fi -@@ -399,7 +399,3 @@ - - echo -n "libcap support: " - check_cap -- --echo >> $CONFIG --echo "%.o: %.c" >> $CONFIG --echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<' >> $CONFIG ---- iproute2-5.10.0/devlink/Makefile -+++ iproute2-5.10.0/devlink/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - TARGETS := - ---- iproute2-5.10.0/genl/Makefile -+++ iproute2-5.10.0/genl/Makefile -@@ -2,6 +2,7 @@ - GENLOBJ=genl.o - - include ../config.mk -+include ../config.include - SHARED_LIBS ?= y - - CFLAGS += -fno-strict-aliasing ---- iproute2-5.10.0/ip/Makefile -+++ iproute2-5.10.0/ip/Makefile -@@ -16,6 +16,7 @@ - RTMONOBJ=rtmon.o - - include ../config.mk -+include ../config.include - - ALLOBJ=$(IPOBJ) $(RTMONOBJ) - SCRIPTS=ifcfg rtpr routel routef ---- iproute2-5.10.0/lib/Makefile -+++ iproute2-5.10.0/lib/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - CFLAGS += -fPIC - ---- iproute2-5.10.0/misc/Makefile -+++ iproute2-5.10.0/misc/Makefile -@@ -5,6 +5,7 @@ - TARGETS=ss nstat ifstat rtacct lnstat - - include ../config.mk -+include ../config.include - - ifeq ($(HAVE_BERKELEY_DB),y) - TARGETS += arpd ---- iproute2-5.10.0/netem/Makefile -+++ iproute2-5.10.0/netem/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - DISTGEN = maketable normal pareto paretonormal - DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist ---- iproute2-5.10.0/rdma/Makefile -+++ iproute2-5.10.0/rdma/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB - include ../config.mk -+include ../config.include - - TARGETS := - ---- iproute2-5.10.0/tc/Makefile -+++ iproute2-5.10.0/tc/Makefile -@@ -4,6 +4,7 @@ - emp_ematch.tab.o emp_ematch.lex.o - - include ../config.mk -+include ../config.include - - SHARED_LIBS ?= y - ---- iproute2-5.10.0/tipc/Makefile -+++ iproute2-5.10.0/tipc/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - TARGETS := - diff --git a/sys-apps/iproute2/iproute2-5.10.0-r2.ebuild b/sys-apps/iproute2/iproute2-5.10.0-r2.ebuild deleted file mode 100644 index 09e05b28c60b..000000000000 --- a/sys-apps/iproute2/iproute2-5.10.0-r2.ebuild +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-r3 -else - SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb caps elf +iptables ipv6 libbsd minimal selinux" - -# We could make libmnl optional, but it's tiny, so eh -RDEPEND=" - !net-misc/arpd - !minimal? ( net-libs/libmnl:= ) - atm? ( net-dialup/linux-atm ) - berkdb? ( sys-libs/db:= ) - caps? ( sys-libs/libcap ) - elf? ( virtual/libelf:= ) - iptables? ( >=net-firewall/iptables-1.4.20:= ) - libbsd? ( dev-libs/libbsd ) - selinux? ( sys-libs/libselinux ) -" -# We require newer linux-headers for ipset support #549948 and some defines #553876 -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-3.16 -" -BDEPEND=" - app-arch/xz-utils - >=sys-devel/bison-2.4 - sys-devel/flex - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - "${FILESDIR}"/${PN}-5.10.0-configure-nomagic.patch # bug 643722 - "${FILESDIR}"/${PN}-5.1.0-portability.patch - "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch -) - -src_prepare() { - if ! use ipv6 ; then - PATCHES+=( - "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849 - ) - fi - - default - - # Fix version if necessary - local versionfile="include/version.h" - if ! grep -Fq "${PV}" ${versionfile} ; then - einfo "Fixing version string" - sed "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \ - -i ${versionfile} || die - fi - - # echo -n is not POSIX compliant - sed 's@echo -n@printf@' -i configure || die - - sed -i \ - -e '/^CC :\?=/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - -e "/^DBM_INCLUDE/s:=.*:=${T}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - if use minimal ; then - sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die - fi -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c - ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'int main(){return 0;}' > test.c - ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - # run "configure" script first which will create "config.mk"... - econf - - # ...now switch on/off requested features via USE flags - # this is only useful if the test did not set other things, per bug #643722 - cat <<-EOF >> config.mk - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - TC_CONFIG_NO_XT := $(usex iptables n y) - # We've locked in recent enough kernel headers #549948 - TC_CONFIG_IPSET := y - HAVE_BERKELEY_DB := $(usex berkdb y n) - HAVE_CAP := $(usex caps y n) - HAVE_MNL := $(usex minimal n y) - HAVE_ELF := $(usex elf y n) - HAVE_SELINUX := $(usex selinux y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - HAVE_LIBBSD := $(usex libbsd y n) - EOF -} - -src_compile() { - emake V=1 NETNS_RUN_DIR=/run/netns -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - dobin ip/ip - return 0 - fi - - emake \ - DESTDIR="${D}" \ - PREFIX="${EPREFIX}/usr" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - # This local header pulls in a lot of linux headers it - # doesn't directly need. Delete this header that requires - # linux-headers-3.8 until that goes stable. #467716 - sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die - - if use berkdb ; then - keepdir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - elif [[ -d "${ED}"/var/lib/arpd ]]; then - rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die - fi -} diff --git a/sys-apps/iproute2/iproute2-5.12.0-r1.ebuild b/sys-apps/iproute2/iproute2-5.12.0-r1.ebuild deleted file mode 100644 index 14d225e3e580..000000000000 --- a/sys-apps/iproute2/iproute2-5.12.0-r1.ebuild +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs flag-o-matic multilib - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git" - inherit git-r3 -else - SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -DESCRIPTION="kernel routing and traffic control utilities" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2" - -LICENSE="GPL-2" -SLOT="0" -IUSE="atm berkdb bpf caps elf +iptables ipv6 libbsd minimal selinux" - -# We could make libmnl optional, but it's tiny, so eh -RDEPEND=" - !net-misc/arpd - !minimal? ( net-libs/libmnl:= ) - atm? ( net-dialup/linux-atm ) - berkdb? ( sys-libs/db:= ) - bpf? ( dev-libs/libbpf:= ) - caps? ( sys-libs/libcap ) - elf? ( virtual/libelf:= ) - iptables? ( >=net-firewall/iptables-1.4.20:= ) - libbsd? ( dev-libs/libbsd ) - selinux? ( sys-libs/libselinux ) -" -# We require newer linux-headers for ipset support #549948 and some defines #553876 -DEPEND=" - ${RDEPEND} - >=sys-kernel/linux-headers-3.16 -" -BDEPEND=" - app-arch/xz-utils - >=sys-devel/bison-2.4 - sys-devel/flex - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 - "${FILESDIR}"/${PN}-5.12.0-configure-nomagic.patch # bug 643722 - #"${FILESDIR}"/${PN}-5.1.0-portability.patch - "${FILESDIR}"/${PN}-5.7.0-mix-signal.h-include.patch -) - -src_prepare() { - if ! use ipv6 ; then - PATCHES+=( - "${FILESDIR}"/${PN}-4.20.0-no-ipv6.patch #326849 - ) - fi - - default - - # Fix version if necessary - local versionfile="include/version.h" - if [[ "${PV}" != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then - einfo "Fixing version string" - sed "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \ - -i ${versionfile} || die - fi - - # echo -n is not POSIX compliant - sed 's@echo -n@printf@' -i configure || die - - sed -i \ - -e '/^CC :\?=/d' \ - -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \ - -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - -e "/^DBM_INCLUDE/s:=.*:=${T}:" \ - Makefile || die - - # build against system headers - rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc - sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die - - if use minimal ; then - sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die - fi -} - -src_configure() { - tc-export AR CC PKG_CONFIG - - # This sure is ugly. Should probably move into toolchain-funcs at some point. - local setns - pushd "${T}" >/dev/null - printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c - ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n - echo 'int main(){return 0;}' > test.c - ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile - popd >/dev/null - - # run "configure" script first which will create "config.mk"... - LIBBPF_FORCE="$(usex bpf on off)" \ - econf - - # ...now switch on/off requested features via USE flags - # this is only useful if the test did not set other things, per bug #643722 - cat <<-EOF >> config.mk - TC_CONFIG_ATM := $(usex atm y n) - TC_CONFIG_XT := $(usex iptables y n) - TC_CONFIG_NO_XT := $(usex iptables n y) - # We've locked in recent enough kernel headers #549948 - TC_CONFIG_IPSET := y - HAVE_BERKELEY_DB := $(usex berkdb y n) - HAVE_CAP := $(usex caps y n) - HAVE_MNL := $(usex minimal n y) - HAVE_ELF := $(usex elf y n) - HAVE_SELINUX := $(usex selinux y n) - IP_CONFIG_SETNS := ${setns} - # Use correct iptables dir, #144265 #293709 - IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir) - HAVE_LIBBSD := $(usex libbsd y n) - EOF -} - -src_compile() { - emake V=1 NETNS_RUN_DIR=/run/netns -} - -src_install() { - if use minimal ; then - into / - dosbin tc/tc - dobin ip/ip - return 0 - fi - - emake \ - DESTDIR="${D}" \ - PREFIX="${EPREFIX}/usr" \ - LIBDIR="${EPREFIX}"/$(get_libdir) \ - SBINDIR="${EPREFIX}"/sbin \ - CONFDIR="${EPREFIX}"/etc/iproute2 \ - DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \ - MANDIR="${EPREFIX}"/usr/share/man \ - ARPDDIR="${EPREFIX}"/var/lib/arpd \ - install - - dodir /bin - mv "${ED}"/{s,}bin/ip || die #330115 - - dolib.a lib/libnetlink.a - insinto /usr/include - doins include/libnetlink.h - # This local header pulls in a lot of linux headers it - # doesn't directly need. Delete this header that requires - # linux-headers-3.8 until that goes stable. #467716 - sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die - - if use berkdb ; then - keepdir /var/lib/arpd - # bug 47482, arpd doesn't need to be in /sbin - dodir /usr/bin - mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die - elif [[ -d "${ED}"/var/lib/arpd ]]; then - rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die - fi -} |