Mercurial > vanilla
annotate network/iproute2/iproute2.sh @ 181:9ae9da1e3854
network/iproute2: initial import, closes #1146
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sat, 16 Mar 2019 10:28:48 +0100 |
parents | |
children | 5298f6a3f180 |
rev | line source |
---|---|
181
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/sh |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr> |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # Permission to use, copy, modify, and/or distribute this software for any |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # purpose with or without fee is hereby granted, provided that the above |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # copyright notice and this permission notice appear in all copies. |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 PKGNAME=iproute2 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 PKGVERSION=4.20.0 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 PKGREVISION=1 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 PKGLICENSE="GPL2" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 PKGSUMMARY="IP routing utilities" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 PKGDOWNLOAD="https://www.kernel.org/pub/linux/utils/net/$PKGNAME/$PKGNAME-$PKGVERSION.tar.xz" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 PKGDEPENDS="core/elfutils" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 PKGOPTIONS="CAP MNL" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 : ${CHOST:=$(uname -m)-linux-musl} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 : ${CBUILD:=$(uname -m)-linux-musl} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 : ${CTARGET:=$(uname -m)-linux-musl} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 : ${CC:=gcc} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 : ${CFLAGS:=-O2 -DHAVE_SETNS -DHAVE_ELF -DNEED_STRLCPY} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 : ${LIBS:=-lelf} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 : ${CAP:=yes} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 : ${MNL:=yes} |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 if [ "$CAP" = "yes" ]; then |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 PKGDEPENDS="core/libcap $PKGDEPENDS" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 CFLAGS="-DHAVE_LIBCAP $CFLAGS" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 LIBS="-lcap $LIBS" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 fi |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 if [ "$MNL" = "yes" ]; then |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 PKGDEPENDS="lib/libmnl $PKGDEPENDS" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 CFLAGS="-DHAVE_LIBMNL $CFLAGS" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 LIBS="-lmnl $LIBS" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 fi |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 build() |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 { |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 rm -rf $PKGNAME-$PKGVERSION |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 tar xvaf $PKGNAME-$PKGVERSION.tar.xz |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 pushd $PKGNAME-$PKGVERSION |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 # custom configure script is not customizable. |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 echo CC="$CC" > config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 echo CFLAGS+="$CFLAGS" >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 echo PKG_CONFIG="pkgconf" >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 echo IP_CONFIG_SETNS=y >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 echo LDLIBS+="$LIBS" >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 echo TC_CONFIG_NO_XT=y >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 if [ "$CAP" = "yes" ]; then |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 echo HAVE_CAP=y >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 fi |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 if [ "$MNL" = "yes" ]; then |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 echo HAVE_MNL=y >> config.mk |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 fi |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 patch -p0 < ../musl.patch |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 make CC="$CC" |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 make SBINDIR=/usr/sbin DESTDIR=$DESTDIR install |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 popd |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 rm -rf $PKGNAME-$PKGVERSION |
9ae9da1e3854
network/iproute2: initial import, closes #1146
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 } |