mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-11-09 18:47:16 -08:00
sys-apps/iproute2: Removed old.
Package-Manager: Portage-2.3.46, Repoman-2.3.10
This commit is contained in:
@@ -1,15 +1,5 @@
|
||||
DIST iproute2-4.10.0.tar.xz 626944 BLAKE2B 8d37ae67785cd4a3110f989b0ac635c1cbdc8258afeba5894b58dfcee49fdd9a4c86d8c1693ee5c5a933ce54396dbfed054dbf7fb4888c08563c36c13c282a65 SHA512 e54477e167455e7ef5da4adc168d63eaa96091b63dc987fffe918cbb005eceed18a62283ca99ee2512dc0e960f47ae21b39ffbe399c1612fd9cea147c34c581b
|
||||
DIST iproute2-4.11.0.tar.xz 657100 BLAKE2B 9782adc8240796bba1a96bce6b6d7a8a611cc8a313f39fca459cba8bed32468a575d3739d030bcb5c632f8a58aa3117f0fde180e24ff0f01b4c75348691414e0 SHA512 e6cc3dbe2779670a752ab346c1a432b496033448d1645aa0161b3f7b683b3f9939ab09db12199b794cc64dff257faaf0d151046feea9031a6139176e08b4f4fa
|
||||
DIST iproute2-4.12.0.tar.xz 662424 BLAKE2B 6c6608d4a157e46932834c09e91d6a786a04c45cb9458bdc4616a9393c9007208cbda2a8254b3b704001543328e42b10dfacaa78a4087cfe3f3bf0d26b1ca573 SHA512 275147f71e7c4698654f0d6d0981ab42f6f108066508c15cfcd5d9e0d3aaf8d33291968d9f06cb03f5494d801cfabf8d53308aaf56fc4fa92c52b137e970a3b0
|
||||
DIST iproute2-4.13.0.tar.xz 670340 BLAKE2B 379072c0865e8960b46065454e9bdf3a9cb7af45b32a2fff8e89bef8d60e837419bea60df1343b4bb15db624feb3ce4acbe621b4c44405c43fa729e770bb04a3 SHA512 f96d2839aec1f439bfac504c8e3881c063dacbf4c67b15f0e3da9882d2fa013cba33c23602de3eab624e0eecbb911a13967d60bddcdf097f47a580a5a77b5e3a
|
||||
DIST iproute2-4.14.1.tar.xz 636876 BLAKE2B 232dbe29b9af516d8345c86c044359d3b0cfe73fb88a2ba1dcd05534b52dea37c9155d2b273a4a0d40b55fba8b5503a0fbe5bc71f37864c0a2ba9d6f08b6bf41 SHA512 e593b68c46ef5f98bd6911ee7beb38388a14935a29fefabdeccc96aa012593b6f3a49b3bb1baed7d77e54f1f4a857172e058b73407f4070f158b8713f44f5d2c
|
||||
DIST iproute2-4.15.0.tar.xz 648836 BLAKE2B e7f3a027ec88de7c6ac82c5529b37fdf22311bc9290e71662bc3b1e32d4cb6a1845e2badb961a21b50b5ed1b9d23130e512a011767183f7df1b33eb05101044b SHA512 bcc54b8dc83d7b0e759a2de77eb38fed483d7f7f82698f482e0259000f2f55ba79c556b721730eb999e85c865ad136fd7549304ebe936545e02e848ba7f698bc
|
||||
DIST iproute2-4.16.0.tar.xz 661336 BLAKE2B 4efb08c88a60b1bbbeef807c0731e610032bfb11d022562c1df052d324eb43cb25b9523f49730d22a3f92eb06bd5037c70d8ed0b58276a0cf0854a0f82800b64 SHA512 a8fbc92665a8d4ca6ee1e894bfb27373cf6b16dac9e2ab3831e418fcc9b895acc7d6fc64efa0b0e37b3affd4ef8eacf4dae5715536138d6a05c65ad49a2becad
|
||||
DIST iproute2-4.17.0.tar.xz 675268 BLAKE2B 3d1455c119c9c56b11a64092c152fcea2b161f571006878215425b95deef779fed523368252ce672a1a70251c019edbe6ff2bdac8c3ee8abab1fb29e2a3c669c SHA512 ccd7fb70afd58f1fcd4e17c38a24607207da853c4d6118fda423efa6e51faad3ad03c4d6d58a579c40ef9c68aaf13b1c455e12b0c36e155712d3d4db3c2ff4b5
|
||||
DIST iproute2-4.18.0.tar.xz 692868 BLAKE2B ad40a5fa0aecb7c5eb98c3ee2b3a8da212c4b970ceb5f3781dcf961da249a70424a7c760f0f1a0a7fb2348efc9ac9ab3a9ac28fda3692d26001e2b3521493072 SHA512 c7c8e8e76c78faf63548da641769cf9f51811a308cd8eeec171f5f46423f116ff123033f11a554609825aba6d078c95dbbe36aa7ab23bd8d87b3a0d5100be1a9
|
||||
DIST iproute2-4.4.0.tar.xz 528552 BLAKE2B cad90d2734647a5a5e90b0a8b1337656c6480471caa06beee54fb3abd9c3bc64fc21da349d9b8aa0decf6208de325dd37a9e02fd9e994b024f9142dcd229b87c SHA512 48236fc6103a55d977efa4f93ad7fdfc0944df975ce771d57fd3dcfb13b761b0c05dbe749978ac86c7a471d023bee62a2f1648a6ca75f50da9252acfde174b69
|
||||
DIST iproute2-4.5.0.tar.xz 554500 BLAKE2B b64933bd0bf572796705ce2559b1c6cf7faf2f9ac11e1a94a09a428b0039216df8b2ce72a9783e84825a12baaa08526f724d385c6c7e5f6a0d86c3d1662ab822 SHA512 d12be24cf7a1102be8e449d1e95fa67b784d505e98fcf2f18caedf0136fb378dc439f74a75bc0d6ef5b2893e5ca1968e122054404c1f4d1a212aeb0fba1c5860
|
||||
DIST iproute2-4.6.0.tar.xz 570960 BLAKE2B e49dc56615490aa7d7cec20830b2866c3e00b08a25ab92bf94d30cc1d7e60e5f10982aa379502a0e5279748c9504e67603f0b947376b6d2991838516b55ef4c9 SHA512 1e3868ced65012da6724744eb15e6bb8e2c5bf8d7a46cf2b655526de1a9e1224c7b7e9bd4a88e40516b5648955987eb9001600ca5afbd507bc664f92b51ede9f
|
||||
DIST iproute2-4.7.0.tar.xz 589928 BLAKE2B 8230cb410ddf46a57b646fada24b02b7f808915487047bed5b40b4e78eb4efa2563c07f79b5326f0869fbd288e492efbd000f0adb648df8e8da058445bff895d SHA512 dd884b192ede7f165d565dce6819fb7280eda880d4d53e06a604ab20e7ce343ba37847750172fd52061892e9db3d18bd8ae13d37bd4410e50a8f704cb3fe4ece
|
||||
DIST iproute2-4.8.0.tar.xz 594636 BLAKE2B 4c4559e310e6854bd258c0191cbf234e9631f2215818775907190622cb818bcb818edd112cda28fd5ef19da964fbfedcf0e38778228c71c27f01ac758211f203 SHA512 9b9db053e5d6ae2e7dd17870a3081ef61788a7eeb07473430e1a26c3c948123d33840bd6bb81b4a553ac6913ea89f02ac2a1b7d52ced65523a43991f03e84f49
|
||||
DIST iproute2-4.9.0.tar.xz 613032 BLAKE2B ae8b1bb4d39999e17b3930064e7f18407d0e9172567c2a95e50a0dbdccaeac59e4a880764b61dae9f814ba97092c1d5949e313cfe5d903dadfed26d9b17b03ec SHA512 0d974d7c001eac75def0d90b628e432d9847024843d02a6cd27266ff30e3f7a9c874fa91115da74db5f321c2e815b486a847059ca6df3aa8ea49432ffa39a889
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
From 2ac2f416072d9968a9ea2dd9f48168223a1147b0 Mon Sep 17 00:00:00 2001
|
||||
From: Baruch Siach <baruch@tkos.co.il>
|
||||
Date: Tue, 18 Jul 2017 14:09:06 +0300
|
||||
Subject: [PATCH] Fix build with uClibc-ng
|
||||
|
||||
Add a local definition for IPPROTO_MH to fix build with uClibc-ng. As of
|
||||
version 1.0.25, the uClibc-ng netinet/in.h header does not provide this
|
||||
definition. The kernel provided definition is masked by libc-compat.h. Add
|
||||
this local fix until uClibc-ng syncs netinet/in.h with glibc.
|
||||
|
||||
This partially reverts upstream commit a9ae195a2169 (xfrm: get #define's from
|
||||
linux includes)
|
||||
|
||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||
---
|
||||
Upstream status: non upstreamable; local uClibc-ng compatibility fix
|
||||
---
|
||||
ip/xfrm.h | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/ip/xfrm.h b/ip/xfrm.h
|
||||
index 54d80ce5e949..50b85550fb45 100644
|
||||
--- a/ip/xfrm.h
|
||||
+++ b/ip/xfrm.h
|
||||
@@ -30,6 +30,10 @@
|
||||
#include <linux/xfrm.h>
|
||||
#include <linux/ipsec.h>
|
||||
|
||||
+#ifndef IPPROTO_MH
|
||||
+# define IPPROTO_MH 135
|
||||
+#endif
|
||||
+
|
||||
#define XFRMS_RTA(x) ((struct rtattr*)(((char*)(x)) + NLMSG_ALIGN(sizeof(struct xfrm_usersa_info))))
|
||||
#define XFRMS_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct xfrm_usersa_info))
|
||||
|
||||
--
|
||||
2.13.2
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
Bug: https://bugs.gentoo.org/652986
|
||||
|
||||
https://marc.info/?l=linux-netdev&m=152363743818340&w=2
|
||||
|
||||
--- a/lib/utils.c
|
||||
+++ b/lib/utils.c
|
||||
@@ -568,7 +568,7 @@ static int __get_addr_1(inet_prefix *addr, const char *name, int family)
|
||||
if (strcmp(name, "default") == 0) {
|
||||
if ((family == AF_DECnet) || (family == AF_MPLS))
|
||||
return -1;
|
||||
- addr->family = (family != AF_UNSPEC) ? family : AF_INET;
|
||||
+ addr->family = family;
|
||||
addr->bytelen = af_byte_len(addr->family);
|
||||
addr->bitlen = -2;
|
||||
addr->flags |= PREFIXLEN_SPECIFIED;
|
||||
@@ -579,7 +579,7 @@ static int __get_addr_1(inet_prefix *addr, const char *name, int family)
|
||||
strcmp(name, "any") == 0) {
|
||||
if ((family == AF_DECnet) || (family == AF_MPLS))
|
||||
return -1;
|
||||
- addr->family = AF_UNSPEC;
|
||||
+ addr->family = family;
|
||||
addr->bytelen = 0;
|
||||
addr->bitlen = -2;
|
||||
return 0;
|
||||
--
|
||||
@@ -1,42 +0,0 @@
|
||||
--- iproute2-4.5.0/configure~ 2016-03-14 23:02:31.000000000 +0000
|
||||
+++ iproute2-4.5.0/configure 2016-03-17 13:24:17.634743197 +0000
|
||||
@@ -169,10 +169,25 @@
|
||||
|
||||
check_ipt()
|
||||
{
|
||||
- if ! grep TC_CONFIG_XT Config > /dev/null
|
||||
+ if grep -q TC_CONFIG_XT Config
|
||||
then
|
||||
+ return
|
||||
+ fi
|
||||
+
|
||||
+ cat >$TMPDIR/ipttest.c <<EOF
|
||||
+#include <iptables.h>
|
||||
+int main() { return 0; }
|
||||
+EOF
|
||||
+
|
||||
+ if $CC -std=c90 -I$INCLUDE $IPTC -o $TMPDIR/ipttest $TMPDIR/ipttest.c $IPTL \
|
||||
+ $(${PKG_CONFIG} libiptc --cflags --libs 2>/dev/null) -ldl >/dev/null 2>&1
|
||||
+ then
|
||||
+ echo "TC_CONFIG_IPT:=y" >>Config
|
||||
echo "using iptables"
|
||||
+ else
|
||||
+ echo "no"
|
||||
fi
|
||||
+ rm -f $TMPDIR/ipttest.c $TMPDIR/ipttest
|
||||
}
|
||||
|
||||
check_ipt_lib_dir()
|
||||
--- iproute2-4.5.0/tc/Makefile~ 2016-03-14 23:02:31.000000000 +0000
|
||||
+++ iproute2-4.5.0/tc/Makefile 2016-03-17 13:18:18.686689985 +0000
|
||||
@@ -88,7 +88,9 @@
|
||||
CFLAGS += -DTC_CONFIG_XT_H
|
||||
TCSO += m_xt_old.so
|
||||
else
|
||||
- TCMODULES += m_ipt.o
|
||||
+ ifeq ($(TC_CONFIG_IPT),y)
|
||||
+ TCMODULES += m_ipt.o
|
||||
+ endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -1,143 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.2.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
epatch "${PATCHES[@]}"
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
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_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,143 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.11.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
epatch "${PATCHES[@]}"
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
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_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,151 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.11.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
# Local uclibc-ng compat fix until uclibc-ng upstream can sync
|
||||
# netinet/in.h with glibc. Resolves #626546.
|
||||
if use elibc_uclibc ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.12.0-uclibc-ng-add-ipproto_mh.patch
|
||||
)
|
||||
fi
|
||||
|
||||
epatch "${PATCHES[@]}"
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
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_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,151 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs flag-o-matic multilib
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.11.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
# Local uclibc-ng compat fix until uclibc-ng upstream can sync
|
||||
# netinet/in.h with glibc. Resolves #626546.
|
||||
if use elibc_uclibc ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.12.0-uclibc-ng-add-ipproto_mh.patch
|
||||
)
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
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_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED%/}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED%/}"/sbin/arpd "${ED%/}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,151 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs flag-o-matic multilib
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 elf +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl )
|
||||
elf? ( virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
"${FILESDIR}"/${PN}-4.14.1-configure-nomagic.patch # bug 643722
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.11.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
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
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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_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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake V=1
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED%/}"/sbin/arpd "${ED%/}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,152 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs flag-o-matic multilib
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 elf +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl )
|
||||
elf? ( virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
"${FILESDIR}"/${PN}-4.16.0-configure-nomagic.patch # bug 643722
|
||||
"${FILESDIR}"/${P}-keep-family.patch # bug 652986
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.11.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
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
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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_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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake V=1
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED%/}"/sbin/arpd "${ED%/}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,133 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
use ipv6 || epatch "${FILESDIR}"/${PN}-4.2.0-no-ipv6.patch #326849
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
TC_CONFIG_ATM := $(usex atm y n)
|
||||
TC_CONFIG_XT := $(usex iptables y n)
|
||||
# We've locked in recent enough kernel headers #549948
|
||||
TC_CONFIG_IPSET := y
|
||||
HAVE_BERKELEY_DB := $(usex berkdb y n)
|
||||
HAVE_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,143 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
"${FILESDIR}"/${PN}-4.5.0-no-iptables.patch #577464
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.2.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
epatch "${PATCHES[@]}"
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
TC_CONFIG_ATM := $(usex atm y n)
|
||||
TC_CONFIG_XT := $(usex iptables y n)
|
||||
# We've locked in recent enough kernel headers #549948
|
||||
TC_CONFIG_IPSET := y
|
||||
HAVE_BERKELEY_DB := $(usex berkdb y n)
|
||||
HAVE_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,143 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
"${FILESDIR}"/${PN}-4.5.0-no-iptables.patch #577464
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.2.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
epatch "${PATCHES[@]}"
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
TC_CONFIG_ATM := $(usex atm y n)
|
||||
TC_CONFIG_XT := $(usex iptables y n)
|
||||
# We've locked in recent enough kernel headers #549948
|
||||
TC_CONFIG_IPSET := y
|
||||
HAVE_BERKELEY_DB := $(usex berkdb y n)
|
||||
HAVE_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
@@ -1,143 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils 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="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~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 +iptables ipv6 minimal selinux"
|
||||
|
||||
# We could make libmnl optional, but it's tiny, so eh
|
||||
RDEPEND="
|
||||
!net-misc/arpd
|
||||
!minimal? ( net-libs/libmnl virtual/libelf )
|
||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||
berkdb? ( sys-libs/db:= )
|
||||
atm? ( net-dialup/linux-atm )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
"
|
||||
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
iptables? ( virtual/pkgconfig )
|
||||
>=sys-devel/bison-2.4
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-3.16
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||
"${FILESDIR}"/${PN}-4.5.0-no-iptables.patch #577464
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if ! use ipv6 ; then
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-4.2.0-no-ipv6.patch #326849
|
||||
)
|
||||
fi
|
||||
|
||||
epatch "${PATCHES[@]}"
|
||||
|
||||
sed -i \
|
||||
-e '/^CC :\?=/d' \
|
||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||
-e "/^WFLAGS/s:-Werror::" \
|
||||
-e "/^DBM_INCLUDE/s:=.*:=${T}:" \
|
||||
Makefile || die
|
||||
|
||||
# Use /run instead of /var/run.
|
||||
sed -i \
|
||||
-e 's:/var/run:/run:g' \
|
||||
include/namespace.h \
|
||||
man/man8/ip-netns.8 || die
|
||||
|
||||
# build against system headers
|
||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||
|
||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
cat <<-EOF > Config
|
||||
TC_CONFIG_ATM := $(usex atm y n)
|
||||
TC_CONFIG_XT := $(usex iptables y n)
|
||||
# We've locked in recent enough kernel headers #549948
|
||||
TC_CONFIG_IPSET := y
|
||||
HAVE_BERKELEY_DB := $(usex berkdb y n)
|
||||
HAVE_MNL := $(usex minimal n y)
|
||||
HAVE_ELF := $(usex minimal n y)
|
||||
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)
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use minimal ; then
|
||||
into /
|
||||
dosbin tc/tc
|
||||
dobin ip/ip
|
||||
return 0
|
||||
fi
|
||||
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
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
|
||||
|
||||
rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
|
||||
|
||||
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
|
||||
dodir /var/lib/arpd
|
||||
# bug 47482, arpd doesn't need to be in /sbin
|
||||
dodir /usr/bin
|
||||
mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user