Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/iproute2/
Date: Mon, 10 Oct 2016 11:16:10
Message-Id: 1476098156.4ed6b68ca3858480dfe9bd4ddf8c4372b812edb2.polynomial-c@gentoo
1 commit: 4ed6b68ca3858480dfe9bd4ddf8c4372b812edb2
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Mon Oct 10 11:15:56 2016 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Mon Oct 10 11:15:56 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ed6b68c
7
8 sys-apps/iproute2: Bump to version 4.8.0
9
10 Package-Manager: portage-2.3.1
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 sys-apps/iproute2/Manifest | 1 +
14 sys-apps/iproute2/iproute2-4.8.0.ebuild | 139 ++++++++++++++++++++++++++++++++
15 2 files changed, 140 insertions(+)
16
17 diff --git a/sys-apps/iproute2/Manifest b/sys-apps/iproute2/Manifest
18 index bbf4c3b..0a7acbd 100644
19 --- a/sys-apps/iproute2/Manifest
20 +++ b/sys-apps/iproute2/Manifest
21 @@ -11,3 +11,4 @@ DIST iproute2-4.4.0.tar.xz 528552 SHA256 bc91c367288a19f78ef800cd6840363be1f22da
22 DIST iproute2-4.5.0.tar.xz 554500 SHA256 3f15292f53e465cb5bd6652961343ca64eb6936309ae75be5d5a541435bc494a SHA512 d12be24cf7a1102be8e449d1e95fa67b784d505e98fcf2f18caedf0136fb378dc439f74a75bc0d6ef5b2893e5ca1968e122054404c1f4d1a212aeb0fba1c5860 WHIRLPOOL dc660bde36fed126b27fb69a59c02405b5299b92a6b519ebdce74d817f88be82114bb10217ca34bbc26a89e664ff243e606a84bcb00db41088bce824542def40
23 DIST iproute2-4.6.0.tar.xz 570960 SHA256 74fc6a8ad085be095a159f8158bbaf385b42af9e101619f233f1ae466829d406 SHA512 1e3868ced65012da6724744eb15e6bb8e2c5bf8d7a46cf2b655526de1a9e1224c7b7e9bd4a88e40516b5648955987eb9001600ca5afbd507bc664f92b51ede9f WHIRLPOOL 1b0ff7988d6d5567137aca9d41e2cc3183f3620f8b874113ff9e6ca9508349550e388e423c54b165e73ed54ccb7a366ef8d032a930f27722eccbd5ff6879032e
24 DIST iproute2-4.7.0.tar.xz 589928 SHA256 8f60dbcfb33a79daae0638f53bdcaa4310c0aa59ae39af8a234020dc69bb7b92 SHA512 dd884b192ede7f165d565dce6819fb7280eda880d4d53e06a604ab20e7ce343ba37847750172fd52061892e9db3d18bd8ae13d37bd4410e50a8f704cb3fe4ece WHIRLPOOL 191335f76f816ec1c86b2b9cac398129a475993e5a6366d0d0a35287eb07ae61d873e1a8a25a0083b28953011d8dfd492e7a718bacfd7f872130cdb2e3a5729d
25 +DIST iproute2-4.8.0.tar.xz 594636 SHA256 a30959c8421bc8ef42719bed41d14e1d7cfdbad80d7d70c5c42ad31f2c2cb389 SHA512 9b9db053e5d6ae2e7dd17870a3081ef61788a7eeb07473430e1a26c3c948123d33840bd6bb81b4a553ac6913ea89f02ac2a1b7d52ced65523a43991f03e84f49 WHIRLPOOL 83015c0bcfc6739ce688307a6824047910d453265883d4fbb9bec67c8720a5f478d2d72e5095ffc75191e64f3525a25f019032f20fc428b622e4a5c1b8fcbe3d
26
27 diff --git a/sys-apps/iproute2/iproute2-4.8.0.ebuild b/sys-apps/iproute2/iproute2-4.8.0.ebuild
28 new file mode 100644
29 index 00000000..4b4f69e
30 --- /dev/null
31 +++ b/sys-apps/iproute2/iproute2-4.8.0.ebuild
32 @@ -0,0 +1,139 @@
33 +# Copyright 1999-2016 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +# $Id$
36 +
37 +EAPI="5"
38 +
39 +inherit eutils toolchain-funcs flag-o-matic multilib
40 +
41 +if [[ ${PV} == "9999" ]] ; then
42 + EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
43 + inherit git-2
44 +else
45 + SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
46 + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
47 +fi
48 +
49 +DESCRIPTION="kernel routing and traffic control utilities"
50 +HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
51 +
52 +LICENSE="GPL-2"
53 +SLOT="0"
54 +IUSE="atm berkdb +iptables ipv6 minimal selinux"
55 +
56 +# We could make libmnl optional, but it's tiny, so eh
57 +RDEPEND="!net-misc/arpd
58 + !minimal? ( net-libs/libmnl )
59 + iptables? ( >=net-firewall/iptables-1.4.20:= )
60 + berkdb? ( sys-libs/db:= )
61 + atm? ( net-dialup/linux-atm )
62 + selinux? ( sys-libs/libselinux )"
63 +# We require newer linux-headers for ipset support #549948 and some defines #553876
64 +DEPEND="${RDEPEND}
65 + app-arch/xz-utils
66 + iptables? ( virtual/pkgconfig )
67 + sys-devel/bison
68 + sys-devel/flex
69 + >=sys-kernel/linux-headers-3.16
70 + elibc_glibc? ( >=sys-libs/glibc-2.7 )"
71 +
72 +PATCHES=(
73 + "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
74 + "${FILESDIR}"/${PN}-4.5.0-no-iptables.patch #577464
75 +)
76 +
77 +src_prepare() {
78 + if ! use ipv6 ; then
79 + PATCHES+=(
80 + "${FILESDIR}"/${PN}-4.2.0-no-ipv6.patch #326849
81 + )
82 + fi
83 +
84 + epatch "${PATCHES[@]}"
85 +
86 + sed -i \
87 + -e '/^CC :=/d' \
88 + -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
89 + -e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
90 + -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
91 + -e "/^WFLAGS/s:-Werror::" \
92 + -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
93 + Makefile || die
94 +
95 + # Use /run instead of /var/run.
96 + sed -i \
97 + -e 's:/var/run:/run:g' \
98 + include/namespace.h \
99 + man/man8/ip-netns.8 || die
100 +
101 + # build against system headers
102 + rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
103 + sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
104 +
105 + use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
106 +}
107 +
108 +src_configure() {
109 + tc-export AR CC PKG_CONFIG
110 +
111 + # This sure is ugly. Should probably move into toolchain-funcs at some point.
112 + local setns
113 + pushd "${T}" >/dev/null
114 + echo 'main(){return setns();};' > test.c
115 + ${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
116 + echo 'main(){};' > test.c
117 + ${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
118 + popd >/dev/null
119 +
120 + cat <<-EOF > Config
121 + TC_CONFIG_ATM := $(usex atm y n)
122 + TC_CONFIG_XT := $(usex iptables y n)
123 + # We've locked in recent enough kernel headers #549948
124 + TC_CONFIG_IPSET := y
125 + HAVE_BERKELEY_DB := $(usex berkdb y n)
126 + HAVE_MNL := $(usex minimal n y)
127 + HAVE_SELINUX := $(usex selinux y n)
128 + IP_CONFIG_SETNS := ${setns}
129 + # Use correct iptables dir, #144265 #293709
130 + IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
131 + EOF
132 +}
133 +
134 +src_install() {
135 + if use minimal ; then
136 + into /
137 + dosbin tc/tc
138 + dobin ip/ip
139 + return 0
140 + fi
141 +
142 + emake \
143 + DESTDIR="${D}" \
144 + LIBDIR="${EPREFIX}"/$(get_libdir) \
145 + SBINDIR="${EPREFIX}"/sbin \
146 + CONFDIR="${EPREFIX}"/etc/iproute2 \
147 + DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
148 + MANDIR="${EPREFIX}"/usr/share/man \
149 + ARPDDIR="${EPREFIX}"/var/lib/arpd \
150 + install
151 +
152 + rm "${ED}"/usr/share/doc/${PF}/*.{sgml,tex} || die #455988
153 +
154 + dodir /bin
155 + mv "${ED}"/{s,}bin/ip || die #330115
156 +
157 + dolib.a lib/libnetlink.a
158 + insinto /usr/include
159 + doins include/libnetlink.h
160 + # This local header pulls in a lot of linux headers it
161 + # doesn't directly need. Delete this header that requires
162 + # linux-headers-3.8 until that goes stable. #467716
163 + sed -i '/linux\/netconf.h/d' "${ED}"/usr/include/libnetlink.h || die
164 +
165 + if use berkdb ; then
166 + dodir /var/lib/arpd
167 + # bug 47482, arpd doesn't need to be in /sbin
168 + dodir /usr/bin
169 + mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
170 + fi
171 +}