iproute-5.14.0-1

* Wed Oct 20 2021 Andrea Claudi <aclaudi@redhat.com> - 5.14.0-1
- New version 5.14.0 [1999860]
Resolves: rhbz#1999860

Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
This commit is contained in:
Andrea Claudi 2021-10-20 14:51:03 +02:00
parent 477162c605
commit 665ce7375f
11 changed files with 743 additions and 18 deletions

1
.gitignore vendored
View File

@ -13,3 +13,4 @@
/iproute2-5.11.0.tar.xz
/iproute2-5.12.0.tar.xz
/iproute2-5.13.0.tar.xz
/iproute2-5.14.0.tar.xz

View File

@ -0,0 +1,50 @@
From 5e6e93a55d2335b90aacb0107e962610cce64007 Mon Sep 17 00:00:00 2001
Message-Id: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: restore backward compatibility
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2.git commit a3272b93
commit a3272b93725a406bc98b67373da67a4bdf6fcdb0
Author: Luca Boccassi <bluca@debian.org>
Date: Thu Sep 2 12:38:54 2021 +0100
configure: restore backward compatibility
Commit a9c3d70d902a0473ee5c13336317006a52ce8242 broke backward compatibility
by making 'configure' error out if parameters are passed, instead of
ignoring them.
Sometimes packaging systems detect 'configure' and assume it's from
autotools, and pass a bunch of options. Eg:
dh_auto_configure
./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=${prefix}/include --mandir=${prefix}/share/man --infodir=${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules --libdir=${prefix}/lib/x86_64-linux-gnu --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking
Ignore unknown options again instead of erroring out.
Fixes: a9c3d70d902a ("configure: add options ability")
Signed-off-by: Luca Boccassi <bluca@debian.org>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 0a4a0fc9..7f4f3bd9 100755
--- a/configure
+++ b/configure
@@ -518,7 +518,7 @@ else
"")
break ;;
*)
- usage 1 ;;
+ shift 1 ;;
esac
done
fi
--
2.31.1

View File

@ -0,0 +1,76 @@
From 290ce87f0a59ec4ddc83918c073364540057ae64 Mon Sep 17 00:00:00 2001
Message-Id: <290ce87f0a59ec4ddc83918c073364540057ae64.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: fix parsing issue on include_dir option
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit 1d819dcc
commit 1d819dcc741e25958190e31f8186c940713fa0a8
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:49 2021 +0200
configure: fix parsing issue on include_dir option
configure is stuck in an endless loop if '--include_dir' option is used
without a value:
$ ./configure --include_dir
./configure: line 506: shift: 2: shift count out of range
./configure: line 506: shift: 2: shift count out of range
[...]
Fix it splitting 'shift 2' into two consecutive shifts, and making the
second one conditional to the number of remaining arguments.
A check is also provided after the while loop to verify the include dir
exists; this avoid to produce an erroneous configuration.
Fixes: a9c3d70d902a ("configure: add options ability")
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
configure | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
index 7f4f3bd9..ea9051ab 100755
--- a/configure
+++ b/configure
@@ -485,7 +485,7 @@ usage()
{
cat <<EOF
Usage: $0 [OPTIONS]
- --include_dir Path to iproute2 include dir
+ --include_dir <dir> Path to iproute2 include dir
--libbpf_dir Path to libbpf DESTDIR
--libbpf_force Enable/disable libbpf by force. Available options:
on: require link against libbpf, quit config if no libbpf support
@@ -502,8 +502,9 @@ else
while true; do
case "$1" in
--include_dir)
- INCLUDE=$2
- shift 2 ;;
+ shift
+ INCLUDE="$1"
+ [ "$#" -gt 0 ] && shift ;;
--libbpf_dir)
LIBBPF_DIR="$2"
shift 2 ;;
@@ -523,6 +524,8 @@ else
done
fi
+[ -d "$INCLUDE" ] || usage 1
+
echo "# Generated config based on" $INCLUDE >$CONFIG
quiet_config >> $CONFIG
--
2.31.1

View File

@ -0,0 +1,79 @@
From 5f717b9a1bb8c49e101670682d73bc5ae9ee701a Mon Sep 17 00:00:00 2001
Message-Id: <5f717b9a1bb8c49e101670682d73bc5ae9ee701a.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: fix parsing issue on libbpf_dir option
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit 48c379bc
commit 48c379bc2afd43b3246f68ed46475f5318b1218f
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:50 2021 +0200
configure: fix parsing issue on libbpf_dir option
configure is stuck in an endless loop if '--libbpf_dir' option is used
without a value:
$ ./configure --libbpf_dir
./configure: line 515: shift: 2: shift count out of range
./configure: line 515: shift: 2: shift count out of range
[...]
Fix it splitting 'shift 2' into two consecutive shifts, and making the
second one conditional to the number of remaining arguments.
A check is also provided after the while loop to verify the libbpf dir
exists; also, as LIBBPF_DIR does not have a default value, configure bails
out if the user does not specify a value after --libbpf_dir, thus avoiding
to produce an erroneous configuration.
Fixes: 7ae2585b865a ("configure: convert LIBBPF environment variables to command-line options")
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
configure | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
index ea9051ab..0f304206 100755
--- a/configure
+++ b/configure
@@ -486,7 +486,7 @@ usage()
cat <<EOF
Usage: $0 [OPTIONS]
--include_dir <dir> Path to iproute2 include dir
- --libbpf_dir Path to libbpf DESTDIR
+ --libbpf_dir <dir> Path to libbpf DESTDIR
--libbpf_force Enable/disable libbpf by force. Available options:
on: require link against libbpf, quit config if no libbpf support
off: disable libbpf probing
@@ -506,8 +506,9 @@ else
INCLUDE="$1"
[ "$#" -gt 0 ] && shift ;;
--libbpf_dir)
- LIBBPF_DIR="$2"
- shift 2 ;;
+ shift
+ LIBBPF_DIR="$1"
+ [ "$#" -gt 0 ] && shift ;;
--libbpf_force)
if [ "$2" != 'on' ] && [ "$2" != 'off' ]; then
usage 1
@@ -525,6 +526,9 @@ else
fi
[ -d "$INCLUDE" ] || usage 1
+if [ "${LIBBPF_DIR-unused}" != "unused" ]; then
+ [ -d "$LIBBPF_DIR" ] || usage 1
+fi
echo "# Generated config based on" $INCLUDE >$CONFIG
quiet_config >> $CONFIG
--
2.31.1

View File

@ -0,0 +1,63 @@
From 4f9ade07eafe74db184eb09603e8187f3ca14423 Mon Sep 17 00:00:00 2001
Message-Id: <4f9ade07eafe74db184eb09603e8187f3ca14423.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: fix parsing issue with more than one value per
option
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit c330d097
commit c330d0979440a1dec4a436fd742bb6e28d195526
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:51 2021 +0200
configure: fix parsing issue with more than one value per option
With commit a9c3d70d902a ("configure: add options ability") users are no
more able to provide wrong command lines like:
$ ./configure --include_dir foo bar
The script simply bails out when user provides more than one value for a
single option. However, in doing so, it breaks backward compatibility with
some packaging system, which expects unknown options to be ignored.
Commit a3272b93725a ("configure: restore backward compatibility") fix this
issue, but makes it possible again for users to provide wrong command lines
such as the one above.
This fixes the issue simply ignoring autoconf-like options such as
'--opt=value'.
Fixes: a3272b93725a ("configure: restore backward compatibility")
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
configure | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index 0f304206..9ec19a5b 100755
--- a/configure
+++ b/configure
@@ -517,10 +517,12 @@ else
shift 2 ;;
-h | --help)
usage 0 ;;
+ --*)
+ shift ;;
"")
break ;;
*)
- shift 1 ;;
+ usage 1 ;;
esac
done
fi
--
2.31.1

View File

@ -0,0 +1,114 @@
From e563a97894c173dcfe2ccdb061c9bfe16526678b Mon Sep 17 00:00:00 2001
Message-Id: <e563a97894c173dcfe2ccdb061c9bfe16526678b.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: simplify options parsing
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit 99245d17
commit 99245d1741a85e4397973782578d4a78673eb348
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:52 2021 +0200
configure: simplify options parsing
This commit simplifies options parsing moving all the code not related to
parsing out of the case statement.
- The conditional shift after the assignments is moved right after the
case, reducing code duplication.
- The semantic checks on the LIBBPF_FORCE value is moved after the loop
like we already did for INCLUDE and LIBBPF_DIR.
- Finally, the loop condition is changed to check remaining arguments, thus
making it possible to get rid of the null string case break.
As a bonus, now the help message states that on or off should follow
--libbpf_force
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
configure | 37 ++++++++++++++++++-------------------
1 file changed, 18 insertions(+), 19 deletions(-)
diff --git a/configure b/configure
index 9ec19a5b..26e06eb8 100755
--- a/configure
+++ b/configure
@@ -485,12 +485,12 @@ usage()
{
cat <<EOF
Usage: $0 [OPTIONS]
- --include_dir <dir> Path to iproute2 include dir
- --libbpf_dir <dir> Path to libbpf DESTDIR
- --libbpf_force Enable/disable libbpf by force. Available options:
- on: require link against libbpf, quit config if no libbpf support
- off: disable libbpf probing
- -h | --help Show this usage info
+ --include_dir <dir> Path to iproute2 include dir
+ --libbpf_dir <dir> Path to libbpf DESTDIR
+ --libbpf_force <on|off> Enable/disable libbpf by force. Available options:
+ on: require link against libbpf, quit config if no libbpf support
+ off: disable libbpf probing
+ -h | --help Show this usage info
EOF
exit $1
}
@@ -499,31 +499,25 @@ EOF
if [ $# -eq 1 ] && [ "$(echo $1 | cut -c 1)" != '-' ]; then
INCLUDE="$1"
else
- while true; do
+ while [ "$#" -gt 0 ]; do
case "$1" in
--include_dir)
shift
- INCLUDE="$1"
- [ "$#" -gt 0 ] && shift ;;
+ INCLUDE="$1" ;;
--libbpf_dir)
shift
- LIBBPF_DIR="$1"
- [ "$#" -gt 0 ] && shift ;;
+ LIBBPF_DIR="$1" ;;
--libbpf_force)
- if [ "$2" != 'on' ] && [ "$2" != 'off' ]; then
- usage 1
- fi
- LIBBPF_FORCE=$2
- shift 2 ;;
+ shift
+ LIBBPF_FORCE="$1" ;;
-h | --help)
usage 0 ;;
--*)
- shift ;;
- "")
- break ;;
+ ;;
*)
usage 1 ;;
esac
+ [ "$#" -gt 0 ] && shift
done
fi
@@ -531,6 +525,11 @@ fi
if [ "${LIBBPF_DIR-unused}" != "unused" ]; then
[ -d "$LIBBPF_DIR" ] || usage 1
fi
+if [ "${LIBBPF_FORCE-unused}" != "unused" ]; then
+ if [ "$LIBBPF_FORCE" != 'on' ] && [ "$LIBBPF_FORCE" != 'off' ]; then
+ usage 1
+ fi
+fi
echo "# Generated config based on" $INCLUDE >$CONFIG
quiet_config >> $CONFIG
--
2.31.1

View File

@ -0,0 +1,53 @@
From 6de1c71cf82d67784a185ba912bdbfa24fa6bce5 Mon Sep 17 00:00:00 2001
Message-Id: <6de1c71cf82d67784a185ba912bdbfa24fa6bce5.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: support --param=value style
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit 4b8bca5f
commit 4b8bca5f9e3e6f210b1036166dc98801e76d8ee5
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:53 2021 +0200
configure: support --param=value style
This commit makes it possible to specify values for configure params
using the common autotools configure syntax '--param=value'.
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
configure | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/configure b/configure
index 26e06eb8..9a2645d9 100755
--- a/configure
+++ b/configure
@@ -504,12 +504,18 @@ else
--include_dir)
shift
INCLUDE="$1" ;;
+ --include_dir=*)
+ INCLUDE="${1#*=}" ;;
--libbpf_dir)
shift
LIBBPF_DIR="$1" ;;
+ --libbpf_dir=*)
+ LIBBPF_DIR="${1#*=}" ;;
--libbpf_force)
shift
LIBBPF_FORCE="$1" ;;
+ --libbpf_force=*)
+ LIBBPF_FORCE="${1#*=}" ;;
-h | --help)
usage 0 ;;
--*)
--
2.31.1

View File

@ -0,0 +1,72 @@
From aad7307a1ca9f2c8df26e1ed5e8a8b9816f87792 Mon Sep 17 00:00:00 2001
Message-Id: <aad7307a1ca9f2c8df26e1ed5e8a8b9816f87792.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: add the --prefix option
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit 0ee1950b
commit 0ee1950b5c38986ea896606810231f5f9d761a00
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:54 2021 +0200
configure: add the --prefix option
This commit add the '--prefix' option to the iproute2 configure script.
This mimics the '--prefix' option that autotools configure provides, and
will be used later to allow users or packagers to set the lib directory.
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
configure | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/configure b/configure
index 9a2645d9..05e23eff 100755
--- a/configure
+++ b/configure
@@ -3,6 +3,7 @@
# This is not an autoconf generated configure
INCLUDE="$PWD/include"
+PREFIX="/usr"
# Output file which is input to Makefile
CONFIG=config.mk
@@ -490,6 +491,7 @@ Usage: $0 [OPTIONS]
--libbpf_force <on|off> Enable/disable libbpf by force. Available options:
on: require link against libbpf, quit config if no libbpf support
off: disable libbpf probing
+ --prefix <dir> Path prefix of the lib files to install
-h | --help Show this usage info
EOF
exit $1
@@ -516,6 +518,11 @@ else
LIBBPF_FORCE="$1" ;;
--libbpf_force=*)
LIBBPF_FORCE="${1#*=}" ;;
+ --prefix)
+ shift
+ PREFIX="$1" ;;
+ --prefix=*)
+ PREFIX="${1#*=}" ;;
-h | --help)
usage 0 ;;
--*)
@@ -536,6 +543,7 @@ if [ "${LIBBPF_FORCE-unused}" != "unused" ]; then
usage 1
fi
fi
+[ -z "$PREFIX" ] && usage 1
echo "# Generated config based on" $INCLUDE >$CONFIG
quiet_config >> $CONFIG
--
2.31.1

View File

@ -0,0 +1,151 @@
From d2e278fcff8a699a2dbac8d74758b4e5f86fd5f0 Mon Sep 17 00:00:00 2001
Message-Id: <d2e278fcff8a699a2dbac8d74758b4e5f86fd5f0.1634733799.git.aclaudi@redhat.com>
In-Reply-To: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
References: <5e6e93a55d2335b90aacb0107e962610cce64007.1634733799.git.aclaudi@redhat.com>
From: Andrea Claudi <aclaudi@redhat.com>
Date: Wed, 20 Oct 2021 12:32:38 +0200
Subject: [PATCH] configure: add the --libdir option
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1999860
Upstream Status: iproute2-next.git commit cee0cf84
commit cee0cf84bd32c8d9215f0c155187ad99d52a69b1
Author: Andrea Claudi <aclaudi@redhat.com>
Date: Thu Oct 14 10:50:55 2021 +0200
configure: add the --libdir option
This commit allows users/packagers to choose a lib directory to store
iproute2 lib files.
At the moment iproute2 ship lib files in /usr/lib and offers no way to
modify this setting. However, according to the FHS, distros may choose
"one or more variants of the /lib directory on systems which support
more than one binary format" (e.g. /usr/lib64 on Fedora).
As Luca states in commit a3272b93725a ("configure: restore backward
compatibility"), packaging systems may assume that 'configure' is from
autotools, and try to pass it some parameters.
Allowing the '--libdir=/path/to/libdir' syntax, we can use this to our
advantage, and let the lib directory to be chosen by the distro
packaging system.
Note that LIBDIR uses "\${prefix}/lib" as default value because autoconf
allows this to be expanded to the --prefix value at configure runtime.
"\${prefix}" is replaced with the PREFIX value in check_lib_dir().
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David Ahern <dsahern@kernel.org>
---
Makefile | 7 ++++---
configure | 18 ++++++++++++++++++
2 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
index 5bc11477..45655ca4 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: GPL-2.0
# Top level Makefile for iproute2
+-include config.mk
+
ifeq ("$(origin V)", "command line")
VERBOSE = $(V)
endif
@@ -13,7 +15,6 @@ MAKEFLAGS += --no-print-directory
endif
PREFIX?=/usr
-LIBDIR?=$(PREFIX)/lib
SBINDIR?=/sbin
CONFDIR?=/etc/iproute2
NETNS_RUN_DIR?=/var/run/netns
@@ -60,7 +61,7 @@ SUBDIRS=lib ip tc bridge misc netem genl tipc devlink rdma dcb man vdpa
LIBNETLINK=../lib/libutil.a ../lib/libnetlink.a
LDLIBS += $(LIBNETLINK)
-all: config
+all: config.mk
@set -e; \
for i in $(SUBDIRS); \
do echo; echo $$i; $(MAKE) -C $$i; done
@@ -80,7 +81,7 @@ help:
@echo "Make Arguments:"
@echo " V=[0|1] - set build verbosity level"
-config:
+config.mk:
@if [ ! -f config.mk -o configure -nt config.mk ]; then \
sh configure $(KERNEL_INCLUDE); \
fi
diff --git a/configure b/configure
index 05e23eff..8ddff43c 100755
--- a/configure
+++ b/configure
@@ -4,6 +4,7 @@
INCLUDE="$PWD/include"
PREFIX="/usr"
+LIBDIR="\${prefix}/lib"
# Output file which is input to Makefile
CONFIG=config.mk
@@ -149,6 +150,15 @@ EOF
rm -f $TMPDIR/ipttest.c $TMPDIR/ipttest
}
+check_lib_dir()
+{
+ LIBDIR=$(echo $LIBDIR | sed "s|\${prefix}|$PREFIX|")
+
+ echo -n "lib directory: "
+ echo "$LIBDIR"
+ echo "LIBDIR:=$LIBDIR" >> $CONFIG
+}
+
check_ipt()
{
if ! grep TC_CONFIG_XT $CONFIG > /dev/null; then
@@ -487,6 +497,7 @@ usage()
cat <<EOF
Usage: $0 [OPTIONS]
--include_dir <dir> Path to iproute2 include dir
+ --libdir <dir> Path to iproute2 lib dir
--libbpf_dir <dir> Path to libbpf DESTDIR
--libbpf_force <on|off> Enable/disable libbpf by force. Available options:
on: require link against libbpf, quit config if no libbpf support
@@ -508,6 +519,11 @@ else
INCLUDE="$1" ;;
--include_dir=*)
INCLUDE="${1#*=}" ;;
+ --libdir)
+ shift
+ LIBDIR="$1" ;;
+ --libdir=*)
+ LIBDIR="${1#*=}" ;;
--libbpf_dir)
shift
LIBBPF_DIR="$1" ;;
@@ -544,6 +560,7 @@ if [ "${LIBBPF_FORCE-unused}" != "unused" ]; then
fi
fi
[ -z "$PREFIX" ] && usage 1
+[ -z "$LIBDIR" ] && usage 1
echo "# Generated config based on" $INCLUDE >$CONFIG
quiet_config >> $CONFIG
@@ -568,6 +585,7 @@ if ! grep -q TC_CONFIG_NO_XT $CONFIG; then
fi
echo
+check_lib_dir
if ! grep -q TC_CONFIG_NO_XT $CONFIG; then
echo -n "iptables modules directory: "
check_ipt_lib_dir
--
2.31.1

View File

@ -1,33 +1,46 @@
%global cbq_version v0.7.3
Summary: Advanced IP routing and network device configuration tools
Name: iproute
Version: 5.13.0
Release: 2%{?dist}
Version: 5.14.0
Release: 1%{?dist}%{?buildid}
%if 0%{?rhel}
Group: Applications/System
%endif
URL: https://kernel.org/pub/linux/utils/net/%{name}2/
Source0: https://kernel.org/pub/linux/utils/net/%{name}2/%{name}2-%{version}.tar.xz
%if ! 0%{?fedora}
Source1: iproute2.sh
Source2: rt_dsfield.deprecated
%endif
Patch0: 0001-configure-restore-backward-compatibility.patch
Patch1: 0002-configure-fix-parsing-issue-on-include_dir-option.patch
Patch2: 0003-configure-fix-parsing-issue-on-libbpf_dir-option.patch
Patch3: 0004-configure-fix-parsing-issue-with-more-than-one-value.patch
Patch4: 0005-configure-simplify-options-parsing.patch
Patch5: 0006-configure-support-param-value-style.patch
Patch6: 0007-configure-add-the-prefix-option.patch
Patch7: 0008-configure-add-the-libdir-option.patch
License: GPLv2+ and Public Domain
BuildRequires: gcc
BuildRequires: bison
BuildRequires: elfutils-libelf-devel
BuildRequires: flex
BuildRequires: gcc
BuildRequires: iptables-devel >= 1.4.5
BuildRequires: libbpf-devel
BuildRequires: libcap-devel
BuildRequires: libdb-devel
BuildRequires: libmnl-devel
BuildRequires: libselinux-devel
BuildRequires: pkgconfig
BuildRequires: make
BuildRequires: pkgconfig
%if ! 0%{?_module_build}
%if 0%{?fedora}
BuildRequires: linux-atm-libs-devel
%endif
%endif
Provides: /sbin/ip
Provides: iproute-doc = %{version}-%{release}
Recommends: %{name}-tc
Requires: libbpf
Requires: psmisc
Obsoletes: iproute-doc < %{version}-%{release}
Provides: /sbin/ip
%description
The iproute package contains networking utilities (ip and rtmon, for example)
@ -36,6 +49,9 @@ kernel.
%package tc
Summary: Linux Traffic Control utility
%if 0%{?rhel}
Group: Applications/System
%endif
License: GPLv2+
Requires: %{name}%{?_isa} = %{version}-%{release}
Provides: /sbin/tc
@ -45,9 +61,26 @@ The Traffic Control utility manages queueing disciplines, their classes and
attached filters and actions. It is the standard tool to configure QoS in
Linux.
%if ! 0%{?_module_build}
%package doc
Summary: Documentation for iproute2 utilities with examples
%if 0%{?rhel}
Group: Applications/System
%endif
License: GPLv2+
Requires: %{name} = %{version}-%{release}
%description doc
The iproute documentation contains howtos and examples of settings.
%endif
%package devel
Summary: iproute development files
%if 0%{?rhel}
Group: Development/Libraries
%endif
License: GPLv2+
Requires: %{name} = %{version}-%{release}
Provides: iproute-static = %{version}-%{release}
%description devel
@ -65,18 +98,32 @@ export SBINDIR='%{_sbindir}'
export LIBDIR='%{_libdir}'
%make_install
echo '.so man8/tc-cbq.8' > %{buildroot}%{_mandir}/man8/cbq.8
# libnetlink
install -D -m644 include/libnetlink.h %{buildroot}%{_includedir}/libnetlink.h
install -D -m644 lib/libnetlink.a %{buildroot}%{_libdir}/libnetlink.a
# drop these files, iproute-doc package extracts files directly from _builddir
rm -rf '%{buildroot}%{_docdir}'
# RHEL-specific stuff
%if ! 0%{?fedora}
# use TC_LIB_DIR environment variable
install -D -m644 %{SOURCE1} %{buildroot}%{_sysconfdir}/profile.d/iproute2.sh
# append deprecated values to rt_dsfield for compatibility reasons
cat %{SOURCE2} >>%{buildroot}%{_sysconfdir}/iproute2/rt_dsfield
%endif
%files
%dir %{_sysconfdir}/iproute2
%license COPYING
%doc README
%doc README README.devel
%{_mandir}/man7/*
%exclude %{_mandir}/man7/tc-*
%{_mandir}/man8/*
%exclude %{_mandir}/man8/tc*
%exclude %{_mandir}/man8/cbq*
%attr(644,root,root) %config(noreplace) %{_sysconfdir}/iproute2/*
%{_sbindir}/*
%exclude %{_sbindir}/tc
@ -84,13 +131,23 @@ install -D -m644 lib/libnetlink.a %{buildroot}%{_libdir}/libnetlink.a
%files tc
%license COPYING
%if ! 0%{?fedora}
%{_sysconfdir}/profile.d/iproute2.sh
%endif
%{_mandir}/man7/tc-*
%{_mandir}/man8/tc*
%{_mandir}/man8/cbq*
%dir %{_libdir}/tc/
%{_libdir}/tc/*
%{_sbindir}/tc
%{_datadir}/bash-completion/completions/tc
%if ! 0%{?_module_build}
%files doc
%license COPYING
%doc examples
%endif
%files devel
%license COPYING
%{_mandir}/man3/*
@ -99,17 +156,25 @@ install -D -m644 lib/libnetlink.a %{buildroot}%{_libdir}/libnetlink.a
%{_includedir}/iproute2/bpf_elf.h
%changelog
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.13.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Oct 20 2021 Andrea Claudi <aclaudi@redhat.com> - 5.14.0-1
- New version 5.14.0 [1999860]
* Wed Jun 30 2021 Andrea Claudi <aclaudi@redhat.com> - 5.13.0-1
- Update to 5.13.0 (#1977463)
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 5.13.0-4.el9
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Tue Apr 27 2021 Andrea Claudi <aclaudi@redhat.com> - 5.12.0-1
- Update to 5.12.0 (#1954257)
* Fri Jul 16 2021 Andrea Claudi <aclaudi@redhat.com> - 5.13.0-3.el9
- Fix changelog (Andrea Claudi) [1947854]
- Add RHEL gating configuration (Aleksandra Fedorova)
* Fri Feb 26 2021 Andrea Claudi <aclaudi@redhat.com> - 5.11.0-1
- New version 5.11.0 (#1931731)
* Thu Jul 15 2021 Andrea Claudi <aclaudi@redhat.com> - 5.13.0-2.el9
- Remove Recommends: iproute-tc from spec file (Andrea Claudi) [1947854]
* Wed Jun 30 2021 Andrea Claudi <aclaudi@redhat.com> - 5.13.0-1.el9
- New version 5.13.0 (#1977898)
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 5.10.0-3.el9
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.10.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

View File

@ -2,3 +2,4 @@ SHA512 (iproute2-5.10.0.tar.xz) = a468eefa797898b6de452212aa432c0a931434defacae5
SHA512 (iproute2-5.11.0.tar.xz) = 8d0e7efc20db70af2d344962610b7fb7f464da567f63e094a2e2a9915f6e9087a2282163d2c73eb2065aaec4f0b0cf19614253798153b31e34b06f57e704f3ed
SHA512 (iproute2-5.12.0.tar.xz) = 9249beb67b30ceef178b60b2b61a5e6c45277e747ae4c865e739b7ab84192549e8e94ebaee43c0a87c0291037746ffb6936346245220786e369201ee13d60fac
SHA512 (iproute2-5.13.0.tar.xz) = a3286639fb303a7c3c553cb5df0a7336c4c67e53eb05e872d2776b771dbfa36ffdf2df140f570275db6785c882992f469f8eb34a5b506aac876216df7dde245d
SHA512 (iproute2-5.14.0.tar.xz) = e2b9b0a2c3e6fc4c67cb50b0a9bf710e749648b83369a49bf905edd7e519d76c50c2cc818bb63cc605c409c66075d4d371f2371796e5f7a8f9d04101b80ef75c