autogen.sh, ngindent, platformtest.sh: Fix warnings of "shellcheck"

- SC2006: Use $(..) instead of legacy `..`.
- SC2015: Note that A && B || C is not if-then-else. C may run
          when A is true.
- SC2086: Double quote to prevent globbing and word splitting.
- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.
This commit is contained in:
Alexander Barton 2015-12-19 19:23:50 +01:00
parent fb99d7c92e
commit 804c240320
3 changed files with 56 additions and 36 deletions

View File

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
# #
# ngIRCd -- The Next Generation IRC Daemon # ngIRCd -- The Next Generation IRC Daemon
# Copyright (c)2001-2013 Alexander Barton (alex@barton.de) and Contributors # Copyright (c)2001-2015 Alexander Barton (alex@barton.de) and Contributors
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -95,7 +95,7 @@ Search()
return 0 return 0
fi fi
done done
minor=`expr $minor - 1` minor=$(expr $minor - 1)
done done
return 1 return 1
} }
@ -139,26 +139,26 @@ fi
# Try to detect the needed tools when no environment variable already # Try to detect the needed tools when no environment variable already
# specifies one: # specifies one:
echo "Searching for required tools ..." echo "Searching for required tools ..."
[ -z "$ACLOCAL" ] && ACLOCAL=`Search aclocal 1` [ -z "$ACLOCAL" ] && ACLOCAL=$(Search aclocal 1)
[ "$VERBOSE" = "1" ] && echo " - ACLOCAL=$ACLOCAL" [ "$VERBOSE" = "1" ] && echo " - ACLOCAL=$ACLOCAL"
[ -z "$AUTOHEADER" ] && AUTOHEADER=`Search autoheader 2` [ -z "$AUTOHEADER" ] && AUTOHEADER=$(Search autoheader 2)
[ "$VERBOSE" = "1" ] && echo " - AUTOHEADER=$AUTOHEADER" [ "$VERBOSE" = "1" ] && echo " - AUTOHEADER=$AUTOHEADER"
[ -z "$AUTOMAKE" ] && AUTOMAKE=`Search automake 1` [ -z "$AUTOMAKE" ] && AUTOMAKE=$(Search automake 1)
[ "$VERBOSE" = "1" ] && echo " - AUTOMAKE=$AUTOMAKE" [ "$VERBOSE" = "1" ] && echo " - AUTOMAKE=$AUTOMAKE"
[ -z "$AUTOCONF" ] && AUTOCONF=`Search autoconf 2` [ -z "$AUTOCONF" ] && AUTOCONF=$(Search autoconf 2)
[ "$VERBOSE" = "1" ] && echo " - AUTOCONF=$AUTOCONF" [ "$VERBOSE" = "1" ] && echo " - AUTOCONF=$AUTOCONF"
AUTOCONF_VERSION=`echo $AUTOCONF | cut -d'-' -f2-` AUTOCONF_VERSION=$(echo "$AUTOCONF" | cut -d'-' -f2-)
[ -n "$AUTOCONF_VERSION" -a "$AUTOCONF_VERSION" != "autoconf" ] \ [ -n "$AUTOCONF_VERSION" ] && [ "$AUTOCONF_VERSION" != "autoconf" ] \
&& export AUTOCONF_VERSION || unset AUTOCONF_VERSION && export AUTOCONF_VERSION || unset AUTOCONF_VERSION
[ "$VERBOSE" = "1" ] && echo " - AUTOCONF_VERSION=$AUTOCONF_VERSION" [ "$VERBOSE" = "1" ] && echo " - AUTOCONF_VERSION=$AUTOCONF_VERSION"
AUTOMAKE_VERSION=`echo $AUTOMAKE | cut -d'-' -f2-` AUTOMAKE_VERSION=$(echo $AUTOMAKE | cut -d'-' -f2-)
[ -n "$AUTOMAKE_VERSION" -a "$AUTOMAKE_VERSION" != "automake" ] \ [ -n "$AUTOMAKE_VERSION" ] && [ "$AUTOMAKE_VERSION" != "automake" ] \
&& export AUTOMAKE_VERSION || unset AUTOMAKE_VERSION && export AUTOMAKE_VERSION || unset AUTOMAKE_VERSION
[ "$VERBOSE" = "1" ] && echo " - AUTOMAKE_VERSION=$AUTOMAKE_VERSION" [ "$VERBOSE" = "1" ] && echo " - AUTOMAKE_VERSION=$AUTOMAKE_VERSION"
[ $# -gt 0 ] && CONFIGURE_ARGS=" $*" || CONFIGURE_ARGS="" [ $# -gt 0 ] && CONFIGURE_ARGS=" $*" || CONFIGURE_ARGS=""
[ -z "$GO" -a -n "$CONFIGURE_ARGS" ] && GO=1 [ -z "$GO" ] && [ -n "$CONFIGURE_ARGS" ] && GO=1
# Verify that all tools have been found # Verify that all tools have been found
[ -z "$ACLOCAL" ] && Notfound aclocal [ -z "$ACLOCAL" ] && Notfound aclocal
@ -166,7 +166,7 @@ AUTOMAKE_VERSION=`echo $AUTOMAKE | cut -d'-' -f2-`
[ -z "$AUTOMAKE" ] && Notfound automake [ -z "$AUTOMAKE" ] && Notfound automake
[ -z "$AUTOCONF" ] && Notfound autoconf [ -z "$AUTOCONF" ] && Notfound autoconf
AM_VERSION=`$AUTOMAKE --version | head -n 1 | sed -e 's/.* //g'` AM_VERSION=$($AUTOMAKE --version | head -n 1 | sed -e 's/.* //g')
ifs=$IFS; IFS="."; set $AM_VERSION; IFS=$ifs ifs=$IFS; IFS="."; set $AM_VERSION; IFS=$ifs
AM_MAJOR="$1"; AM_MINOR="$2"; AM_PATCHLEVEL="$3" AM_MAJOR="$1"; AM_MINOR="$2"; AM_PATCHLEVEL="$3"
echo "Detected automake $AM_VERSION ..." echo "Detected automake $AM_VERSION ..."
@ -174,7 +174,7 @@ echo "Detected automake $AM_VERSION ..."
AM_MAKEFILES="src/ipaddr/Makefile.ng src/ngircd/Makefile.ng src/testsuite/Makefile.ng src/tool/Makefile.ng" AM_MAKEFILES="src/ipaddr/Makefile.ng src/ngircd/Makefile.ng src/testsuite/Makefile.ng src/tool/Makefile.ng"
# De-ANSI-fication? # De-ANSI-fication?
if [ "$AM_MAJOR" -eq "1" -a "$AM_MINOR" -lt "12" ]; then if [ "$AM_MAJOR" -eq "1" ] && [ "$AM_MINOR" -lt "12" ]; then
# automake < 1.12 => automatic de-ANSI-fication support available # automake < 1.12 => automatic de-ANSI-fication support available
echo " - Enabling de-ANSI-fication support." echo " - Enabling de-ANSI-fication support."
sed -e "s|^__ng_PROTOTYPES__|AM_C_PROTOTYPES|g" configure.ng >configure.ac sed -e "s|^__ng_PROTOTYPES__|AM_C_PROTOTYPES|g" configure.ng >configure.ac
@ -188,7 +188,7 @@ else
DEANSI_END=" (disabled by ./autogen.sh script)" DEANSI_END=" (disabled by ./autogen.sh script)"
fi fi
# Serial test harness? # Serial test harness?
if [ "$AM_MAJOR" -eq "1" -a "$AM_MINOR" -ge "13" ]; then if [ "$AM_MAJOR" -eq "1" ] && [ "$AM_MINOR" -ge "13" ]; then
# automake >= 1.13 => enforce "serial test harness" # automake >= 1.13 => enforce "serial test harness"
echo " - Enforcing serial test harness." echo " - Enforcing serial test harness."
SERIAL_TESTS="serial-tests" SERIAL_TESTS="serial-tests"
@ -200,7 +200,7 @@ fi
sed -e "s|^__ng_Makefile_am_template__|AUTOMAKE_OPTIONS = ${SERIAL_TESTS} ${DEANSI_START}ansi2knr${DEANSI_END}|g" \ sed -e "s|^__ng_Makefile_am_template__|AUTOMAKE_OPTIONS = ${SERIAL_TESTS} ${DEANSI_START}ansi2knr${DEANSI_END}|g" \
src/portab/Makefile.ng >src/portab/Makefile.am src/portab/Makefile.ng >src/portab/Makefile.am
for makefile_ng in $AM_MAKEFILES; do for makefile_ng in $AM_MAKEFILES; do
makefile_am=`echo "$makefile_ng" | sed -e "s|\.ng\$|\.am|g"` makefile_am=$(echo "$makefile_ng" | sed -e "s|\.ng\$|\.am|g")
sed -e "s|^__ng_Makefile_am_template__|AUTOMAKE_OPTIONS = ${SERIAL_TESTS} ${DEANSI_START}../portab/ansi2knr${DEANSI_END}|g" \ sed -e "s|^__ng_Makefile_am_template__|AUTOMAKE_OPTIONS = ${SERIAL_TESTS} ${DEANSI_START}../portab/ansi2knr${DEANSI_END}|g" \
$makefile_ng >$makefile_am $makefile_ng >$makefile_am
done done
@ -214,10 +214,10 @@ Run $ACLOCAL && \
Run $AUTOHEADER && \ Run $AUTOHEADER && \
Run $AUTOMAKE --add-missing --no-force Run $AUTOMAKE --add-missing --no-force
if [ $? -eq 0 -a -x ./configure ]; then if [ $? -eq 0 ] && [ -x ./configure ]; then
# Success: if we got some parameters we call ./configure and pass # Success: if we got some parameters we call ./configure and pass
# all of them to it. # all of them to it.
NAME=`grep PACKAGE_STRING= configure | cut -d"'" -f2` NAME=$(grep PACKAGE_STRING= configure | cut -d"'" -f2)
if [ "$GO" = "1" ]; then if [ "$GO" = "1" ]; then
[ -n "$PREFIX" ] && p=" --prefix=$PREFIX" || p="" [ -n "$PREFIX" ] && p=" --prefix=$PREFIX" || p=""
c="./configure${p}${CONFIGURE_ARGS}" c="./configure${p}${CONFIGURE_ARGS}"

View File

@ -3,15 +3,15 @@
INDENTARGS="-kr -i8 -ts8 -l80 -c3 -cd41 -ss -ncs -psl" INDENTARGS="-kr -i8 -ts8 -l80 -c3 -cd41 -ss -ncs -psl"
# check if indent(1) is available # check if indent(1) is available
type indent >/dev/null 2>&1 && INDENT="indent" command -v indent >/dev/null 2>&1 && INDENT="indent"
type gindent >/dev/null 2>&1 && INDENT="gindent" command -v gindent >/dev/null 2>&1 && INDENT="gindent"
type gnuindent >/dev/null 2>&1 && INDENT="gnuindent" command -v gnuindent >/dev/null 2>&1 && INDENT="gnuindent"
if [ -z "$INDENT" ]; then if [ -z "$INDENT" ]; then
echo "Error: GNU \"indent\" not found!" echo "Error: GNU \"indent\" not found!"
exit 1 exit 1
fi fi
$INDENT -v $INDENTARGS $* $INDENT -v $INDENTARGS "$@"
# -eof- # -eof-

View File

@ -14,14 +14,14 @@
# suitable for inclusion in doc/Platforms.txt -- please send reports # suitable for inclusion in doc/Platforms.txt -- please send reports
# to the ngIRCd mailing list: <ngircd-ml@ngircd.barton.de>. # to the ngIRCd mailing list: <ngircd-ml@ngircd.barton.de>.
NAME=`basename "$0"` NAME=$(basename "$0")
VERBOSE= VERBOSE=
CLEAN=1 CLEAN=1
PLATFORM= PLATFORM=
COMPILER="unknown" COMPILER="unknown"
VERSION="unknown" VERSION="unknown"
DATE=`date "+%y-%m-%d"` DATE=$(date "+%y-%m-%d")
COMMENT= COMMENT=
R_CONFIGURE= R_CONFIGURE=
@ -30,7 +30,7 @@ R_CHECK=
R_CHECK_Y="?" R_CHECK_Y="?"
R_RUN= R_RUN=
SRC_D=`dirname "$0"` SRC_D=$(dirname "$0")
MY_D="$PWD" MY_D="$PWD"
[ -n "$MAKE" ] || MAKE="make" [ -n "$MAKE" ] || MAKE="make"
@ -80,7 +80,11 @@ if [ -d "$SRC_D/.git" ]; then
if [ $? -eq 0 ] && [ -n "$CLEAN" ]; then if [ $? -eq 0 ] && [ -n "$CLEAN" ]; then
echo "$NAME: Running \"git clean\" ..." echo "$NAME: Running \"git clean\" ..."
cd "$SRC_D" || exit 1 cd "$SRC_D" || exit 1
[ -n "$VERBOSE" ] && git clean -dxf || git clean -dxf >/dev/null if [ -n "$VERBOSE" ]; then
git clean -dxf
else
git clean -dxf >/dev/null
fi
cd "$MY_D" || exit 1 cd "$MY_D" || exit 1
fi fi
fi fi
@ -89,22 +93,38 @@ echo "$NAME: Checking for \"$SRC_D/configure\" script ..."
if [ ! -r "$SRC_D/configure" ]; then if [ ! -r "$SRC_D/configure" ]; then
echo "$NAME: Running \"$SRC_D/autogen.sh\" ..." echo "$NAME: Running \"$SRC_D/autogen.sh\" ..."
cd "$SRC_D" || exit 1 cd "$SRC_D" || exit 1
[ -n "$VERBOSE" ] && ./autogen.sh || ./autogen.sh >/dev/null if [ -n "$VERBOSE" ]; then
./autogen.sh
else
./autogen.sh >/dev/null
fi
cd "$MY_D" || exit 1 cd "$MY_D" || exit 1
fi fi
if [ -r "$SRC_D/configure" ]; then if [ -r "$SRC_D/configure" ]; then
echo "$NAME: Running \"$SRC_D/configure\" script ..." echo "$NAME: Running \"$SRC_D/configure\" script ..."
[ -n "$VERBOSE" ] && "$SRC_D/configure" -C || "$SRC_D/configure" -C >/dev/null if [ -n "$VERBOSE" ]; then
"$SRC_D/configure" -C
else
"$SRC_D/configure" -C >/dev/null
fi
if [ $? -eq 0 ] && [ -r ./Makefile ]; then if [ $? -eq 0 ] && [ -r ./Makefile ]; then
R_CONFIGURE=1 R_CONFIGURE=1
rm -f "src/ngircd/ngircd" rm -f "src/ngircd/ngircd"
echo "$NAME: Running \"$MAKE\" ..." echo "$NAME: Running \"$MAKE\" ..."
[ -n "$VERBOSE" ] && "$MAKE" || "$MAKE" >/dev/null if [ -n "$VERBOSE" ]; then
"$MAKE"
else
"$MAKE" >/dev/null
fi
if [ $? -eq 0 ] && [ -x src/ngircd/ngircd ]; then if [ $? -eq 0 ] && [ -x src/ngircd/ngircd ]; then
R_MAKE=1 R_MAKE=1
echo "$NAME: Running \"$MAKE check\" ..." echo "$NAME: Running \"$MAKE check\" ..."
[ -n "$VERBOSE" ] && "$MAKE" check || "$MAKE" check >/dev/null if [ -n "$VERBOSE" ]; then
"$MAKE" check
else
"$MAKE" check >/dev/null
fi
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
R_CHECK=1 R_CHECK=1
R_RUN=$R_CHECK R_RUN=$R_CHECK
@ -121,13 +141,13 @@ fi
# Get target platform information # Get target platform information
if [ -r "src/config.h" ]; then if [ -r "src/config.h" ]; then
CPU=`grep "HOST_CPU" "src/config.h" | cut -d'"' -f2` CPU=$(grep "HOST_CPU" "src/config.h" | cut -d'"' -f2)
OS=`grep "HOST_OS" "src/config.h" | cut -d'"' -f2` OS=$(grep "HOST_OS" "src/config.h" | cut -d'"' -f2)
VENDOR=`grep "HOST_VENDOR" "src/config.h" | cut -d'"' -f2` VENDOR=$(grep "HOST_VENDOR" "src/config.h" | cut -d'"' -f2)
PLATFORM="$CPU/$VENDOR/$OS" PLATFORM="$CPU/$VENDOR/$OS"
fi fi
if [ -z "$PLATFORM" ]; then if [ -z "$PLATFORM" ]; then
PLATFORM="`uname 2>/dev/null` `uname -r 2>/dev/null`, `uname -m 2>/dev/null`" PLATFORM="$(uname 2>/dev/null) $(uname -r 2>/dev/null), $(uname -m 2>/dev/null)"
fi fi
# Get compiler information # Get compiler information
@ -159,8 +179,8 @@ if [ -r "Makefile" ]; then
| cut -d'(' -f1 | sed -e 's/version //g') | cut -d'(' -f1 | sed -e 's/version //g')
fi fi
if [ "$COMPILER" = "unknown" ]; then if [ "$COMPILER" = "unknown" ]; then
v="`$CC --version 2>/dev/null | head -1`" v="$($CC --version 2>/dev/null | head -1)"
[ -z "$v" ] && v="`$CC -version 2>/dev/null | head -1`" [ -z "$v" ] && v="$($CC -version 2>/dev/null | head -1)"
[ -n "$v" ] && COMPILER="$v" [ -n "$v" ] && COMPILER="$v"
fi fi
fi fi
@ -170,7 +190,7 @@ fi
eval "$(grep "^VERSION = " Makefile | sed -e 's/ //g')" eval "$(grep "^VERSION = " Makefile | sed -e 's/ //g')"
case "$VERSION" in case "$VERSION" in
*~*-*) *~*-*)
VERSION=`echo "$VERSION" | cut -b1-10` VERSION=$(echo "$VERSION" | cut -b1-10)
;; ;;
esac esac
[ -n "$VERSION" ] || VERSION="unknown" [ -n "$VERSION" ] || VERSION="unknown"