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: a9c3d70d90 ("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>
This commit is contained in:
parent
e4ca6a4965
commit
1d819dcc74
|
|
@ -485,7 +485,7 @@ usage()
|
||||||
{
|
{
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
Usage: $0 [OPTIONS]
|
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_dir Path to libbpf DESTDIR
|
||||||
--libbpf_force Enable/disable libbpf by force. Available options:
|
--libbpf_force Enable/disable libbpf by force. Available options:
|
||||||
on: require link against libbpf, quit config if no libbpf support
|
on: require link against libbpf, quit config if no libbpf support
|
||||||
|
|
@ -502,8 +502,9 @@ else
|
||||||
while true; do
|
while true; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--include_dir)
|
--include_dir)
|
||||||
INCLUDE=$2
|
shift
|
||||||
shift 2 ;;
|
INCLUDE="$1"
|
||||||
|
[ "$#" -gt 0 ] && shift ;;
|
||||||
--libbpf_dir)
|
--libbpf_dir)
|
||||||
LIBBPF_DIR="$2"
|
LIBBPF_DIR="$2"
|
||||||
shift 2 ;;
|
shift 2 ;;
|
||||||
|
|
@ -523,6 +524,8 @@ else
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[ -d "$INCLUDE" ] || usage 1
|
||||||
|
|
||||||
echo "# Generated config based on" $INCLUDE >$CONFIG
|
echo "# Generated config based on" $INCLUDE >$CONFIG
|
||||||
quiet_config >> $CONFIG
|
quiet_config >> $CONFIG
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue