summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/iproute2
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-connectivity/iproute2')
-rw-r--r--meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch39
-rw-r--r--meta/recipes-connectivity/iproute2/iproute2_5.9.0.bb11
-rw-r--r--meta/recipes-connectivity/iproute2/iproute2_6.8.0.bb (renamed from meta/recipes-connectivity/iproute2/iproute2.inc)66
3 files changed, 46 insertions, 70 deletions
diff --git a/meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch b/meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch
deleted file mode 100644
index 74e3de1ce9..0000000000
--- a/meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From c25f8d1f7a6203dfeb10b39f80ffd314bb84a58d Mon Sep 17 00:00:00 2001
2From: Baruch Siach <baruch@tkos.co.il>
3Date: Thu, 22 Dec 2016 15:26:30 +0200
4Subject: [PATCH] libc-compat.h: add musl workaround
5
6The libc-compat.h kernel header uses glibc specific macros (__GLIBC__ and
7__USE_MISC) to solve conflicts with libc provided headers. This patch makes
8libc-compat.h work for musl libc as well.
9
10Upstream-Status: Pending
11
12Taken From:
13https://git.buildroot.net/buildroot/tree/package/iproute2/0001-Add-the-musl-workaround-to-the-libc-compat.h-copy.patch
14
15Signed-off-by: Baruch Siach <baruch@tkos.co.il>
16Signed-off-by: Maxin B. John <maxin.john@intel.com>
17
18---
19 include/uapi/linux/libc-compat.h | 4 +++-
20 1 file changed, 3 insertions(+), 1 deletion(-)
21
22diff --git a/include/uapi/linux/libc-compat.h b/include/uapi/linux/libc-compat.h
23index a159991..22198fa 100644
24--- a/include/uapi/linux/libc-compat.h
25+++ b/include/uapi/linux/libc-compat.h
26@@ -50,10 +50,12 @@
27 #define _LIBC_COMPAT_H
28
29 /* We have included glibc headers... */
30-#if defined(__GLIBC__)
31+#if 1
32+#define __USE_MISC
33
34 /* Coordinate with glibc net/if.h header. */
35 #if defined(_NET_IF_H) && defined(__USE_MISC)
36+#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 0
37
38 /* GLIBC headers included first so don't define anything
39 * that would already be defined. */
diff --git a/meta/recipes-connectivity/iproute2/iproute2_5.9.0.bb b/meta/recipes-connectivity/iproute2/iproute2_5.9.0.bb
deleted file mode 100644
index 0e6a53e6a4..0000000000
--- a/meta/recipes-connectivity/iproute2/iproute2_5.9.0.bb
+++ /dev/null
@@ -1,11 +0,0 @@
1require iproute2.inc
2
3SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
4 file://0001-libc-compat.h-add-musl-workaround.patch \
5 "
6
7SRC_URI[sha256sum] = "a25dac94bcdcf2f73316c7f812115ea7a5710580bad892b08a83d00c6b33dacf"
8
9# CFLAGS are computed in Makefile and reference CCOPTS
10#
11EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'"
diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc b/meta/recipes-connectivity/iproute2/iproute2_6.8.0.bb
index 403d264308..68f7611943 100644
--- a/meta/recipes-connectivity/iproute2/iproute2.inc
+++ b/meta/recipes-connectivity/iproute2/iproute2_6.8.0.bb
@@ -5,31 +5,41 @@ and tc are the most important. ip controls IPv4 and IPv6 \
5configuration and tc stands for traffic control." 5configuration and tc stands for traffic control."
6HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" 6HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2"
7SECTION = "base" 7SECTION = "base"
8LICENSE = "GPLv2+" 8LICENSE = "GPL-2.0-or-later"
9LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ 9LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
10 file://ip/ip.c;beginline=3;endline=8;md5=689d691d0410a4b64d3899f8d6e31817" 10 "
11 11
12DEPENDS = "flex-native bison-native iptables libcap" 12DEPENDS = "flex-native bison-native iptables libcap"
13 13
14inherit update-alternatives bash-completion pkgconfig 14SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz"
15
16SRC_URI[sha256sum] = "03a6cca3d71a908d1f15f7b495be2b8fe851f941458dc4664900d7f45fcf68ce"
15 17
16CLEANBROKEN = "1" 18inherit update-alternatives bash-completion pkgconfig
17 19
18PACKAGECONFIG ??= "tipc elf devlink" 20PACKAGECONFIG ??= "tipc elf devlink"
19PACKAGECONFIG[tipc] = ",,libmnl," 21PACKAGECONFIG[tipc] = ",,libmnl,"
20PACKAGECONFIG[elf] = ",,elfutils," 22PACKAGECONFIG[elf] = ",,elfutils,"
21PACKAGECONFIG[devlink] = ",,libmnl," 23PACKAGECONFIG[devlink] = ",,libmnl,"
24PACKAGECONFIG[rdma] = ",,libmnl,"
25PACKAGECONFIG[selinux] = ",,libselinux"
26
27IPROUTE2_MAKE_SUBDIRS = "lib tc ip bridge misc genl ${@bb.utils.filter('PACKAGECONFIG', 'devlink tipc rdma', d)}"
22 28
29# CFLAGS are computed in Makefile and reference CCOPTS
30#
23EXTRA_OEMAKE = "\ 31EXTRA_OEMAKE = "\
24 CC='${CC}' \ 32 CC='${CC}' \
25 KERNEL_INCLUDE=${STAGING_INCDIR} \ 33 KERNEL_INCLUDE=${STAGING_INCDIR} \
26 DOCDIR=${docdir}/iproute2 \ 34 DOCDIR=${docdir}/iproute2 \
27 SUBDIRS='lib tc ip bridge misc genl ${@bb.utils.filter('PACKAGECONFIG', 'devlink tipc', d)}' \ 35 SUBDIRS='${IPROUTE2_MAKE_SUBDIRS}' \
28 SBINDIR='${base_sbindir}' \ 36 SBINDIR='${base_sbindir}' \
37 CONF_USR_DIR='${libdir}/iproute2' \
29 LIBDIR='${libdir}' \ 38 LIBDIR='${libdir}' \
39 CCOPTS='${CFLAGS}' \
30" 40"
31 41
32do_configure_append () { 42do_configure:append () {
33 sh configure ${STAGING_INCDIR} 43 sh configure ${STAGING_INCDIR}
34 # Explicitly disable ATM support 44 # Explicitly disable ATM support
35 sed -i -e '/TC_CONFIG_ATM/d' config.mk 45 sed -i -e '/TC_CONFIG_ATM/d' config.mk
@@ -41,41 +51,57 @@ do_install () {
41 install -d ${D}${datadir} 51 install -d ${D}${datadir}
42 mv ${D}/share/* ${D}${datadir}/ || true 52 mv ${D}/share/* ${D}${datadir}/ || true
43 rm ${D}/share -rf || true 53 rm ${D}/share -rf || true
54
55 # Remove support fot ipt and xt in tc. So tc library directory is not needed.
56 rm ${D}${libdir}/tc -rf
44} 57}
45 58
46# The .so files in iproute2-tc are modules, not traditional libraries 59# The .so files in iproute2-tc are modules, not traditional libraries
47INSANE_SKIP_${PN}-tc = "dev-so" 60INSANE_SKIP:${PN}-tc = "dev-so"
48 61
49PACKAGES =+ "\ 62IPROUTE2_PACKAGES =+ "\
63 ${PN}-bridge \
50 ${PN}-devlink \ 64 ${PN}-devlink \
51 ${PN}-genl \ 65 ${PN}-genl \
52 ${PN}-ifstat \ 66 ${PN}-ifstat \
67 ${PN}-ip \
53 ${PN}-lnstat \ 68 ${PN}-lnstat \
54 ${PN}-nstat \ 69 ${PN}-nstat \
70 ${PN}-routel \
55 ${PN}-rtacct \ 71 ${PN}-rtacct \
56 ${PN}-ss \ 72 ${PN}-ss \
57 ${PN}-tc \ 73 ${PN}-tc \
58 ${PN}-tipc \ 74 ${PN}-tipc \
75 ${PN}-rdma \
59" 76"
60 77
61FILES_${PN}-tc = "${base_sbindir}/tc* \ 78PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
79RDEPENDS:${PN} += "${PN}-ip"
80
81FILES:${PN}-tc = "${base_sbindir}/tc* \
62 ${libdir}/tc/*.so" 82 ${libdir}/tc/*.so"
63FILES_${PN}-lnstat = "${base_sbindir}/lnstat \ 83FILES:${PN}-lnstat = "${base_sbindir}/lnstat \
64 ${base_sbindir}/ctstat \ 84 ${base_sbindir}/ctstat \
65 ${base_sbindir}/rtstat" 85 ${base_sbindir}/rtstat"
66FILES_${PN}-ifstat = "${base_sbindir}/ifstat" 86FILES:${PN}-ifstat = "${base_sbindir}/ifstat"
67FILES_${PN}-genl = "${base_sbindir}/genl" 87FILES:${PN}-ip = "${base_sbindir}/ip.* ${libdir}/iproute2"
68FILES_${PN}-rtacct = "${base_sbindir}/rtacct" 88FILES:${PN}-genl = "${base_sbindir}/genl"
69FILES_${PN}-nstat = "${base_sbindir}/nstat" 89FILES:${PN}-rtacct = "${base_sbindir}/rtacct"
70FILES_${PN}-ss = "${base_sbindir}/ss" 90FILES:${PN}-nstat = "${base_sbindir}/nstat"
71FILES_${PN}-tipc = "${base_sbindir}/tipc" 91FILES:${PN}-ss = "${base_sbindir}/ss"
72FILES_${PN}-devlink = "${base_sbindir}/devlink" 92FILES:${PN}-tipc = "${base_sbindir}/tipc"
73 93FILES:${PN}-devlink = "${base_sbindir}/devlink"
74ALTERNATIVE_${PN} = "ip" 94FILES:${PN}-rdma = "${base_sbindir}/rdma"
95FILES:${PN}-routel = "${base_sbindir}/routel"
96FILES:${PN}-bridge = "${base_sbindir}/bridge"
97
98RDEPENDS:${PN}-routel = "python3-core"
99
100ALTERNATIVE:${PN}-ip = "ip"
75ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}" 101ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
76ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip" 102ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
77ALTERNATIVE_PRIORITY = "100" 103ALTERNATIVE_PRIORITY = "100"
78 104
79ALTERNATIVE_${PN}-tc = "tc" 105ALTERNATIVE:${PN}-tc = "tc"
80ALTERNATIVE_LINK_NAME[tc] = "${base_sbindir}/tc" 106ALTERNATIVE_LINK_NAME[tc] = "${base_sbindir}/tc"
81ALTERNATIVE_PRIORITY_${PN}-tc = "100" 107ALTERNATIVE_PRIORITY_${PN}-tc = "100"