From a5bbab574f7adc63180af6c9d24546b117d31b80 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Wed, 29 Oct 2008 22:27:30 +0000 Subject: [PATCH] Use 'gawk', not plain 'awk'. We need GNU Awk? Then check for, and use 'gawk', not plain 'awk'. Be a little mre verbose if a tool was not found. /trunk/configure | 7 4 3 0 ++++--- /trunk/scripts/build/kernel/linux.sh | 2 1 1 0 +- /trunk/scripts/functions | 16 8 8 0 ++++++++-------- /trunk/scripts/saveSample.sh | 4 2 2 0 ++-- 4 files changed, 15 insertions(+), 14 deletions(-) --- configure | 7 ++++--- scripts/build/kernel/linux.sh | 2 +- scripts/functions | 16 ++++++++-------- scripts/saveSample.sh | 4 ++-- 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/configure b/configure index 363628ed..8b20f2c4 100755 --- a/configure +++ b/configure @@ -36,7 +36,7 @@ TOOLS_TO_CHECK=' /bin/bash/^GNU bash, version 3\. make/^GNU Make gcc/ -awk/^GNU Awk +gawk/^GNU Awk sed/ bison/ flex/ @@ -83,9 +83,10 @@ has_or_abort() { continue else if [ -n "${regexp}" ]; then - str=$(${tool} --version 2>&1 |grep -E "${regexp}" |head -n 1) + tool_version=$(${tool} --version 2>&1) + str=$(echo "${tool_version}" |grep -E "${regexp}" |head -n 1) if [ -z "${str}" ]; then - echo "wrong version string" + echo "wrong version string: expecting regexp '${regexp}'" where="" continue fi diff --git a/scripts/build/kernel/linux.sh b/scripts/build/kernel/linux.sh index 2313c8b8..0e95d20d 100644 --- a/scripts/build/kernel/linux.sh +++ b/scripts/build/kernel/linux.sh @@ -49,7 +49,7 @@ do_kernel_install() { # Only starting with 2.6.18 does headers_install is usable. We only # have 2.6 version available, so only test for sublevel. - k_sublevel=$(awk '/^SUBLEVEL =/ { print $3 }' "${CT_SRC_DIR}/${CT_KERNEL_FILE}/Makefile") + k_sublevel=$(gawk '/^SUBLEVEL =/ { print $3 }' "${CT_SRC_DIR}/${CT_KERNEL_FILE}/Makefile") [ ${k_sublevel} -ge 18 ] || CT_Abort "Kernel version >= 2.6.18 is needed to install kernel headers." V_OPT="V=${CT_KERNEL_LINUX_VERBOSE_LEVEL}" diff --git a/scripts/functions b/scripts/functions index d69d5499..b1db160f 100644 --- a/scripts/functions +++ b/scripts/functions @@ -319,7 +319,7 @@ CT_DoSetProxy() { # Find all interfaces and build locally accessible networks server_ip=$(ping -c 1 -W 2 "${CT_PROXY_HOST}" |head -n 1 |sed -r -e 's/^[^\(]+\(([^\)]+)\).*$/\1/;' || true) CT_TestOrAbort "SOCKS proxy '${CT_PROXY_HOST}' has no IP." -n "${server_ip}" - /sbin/ifconfig |awk -v server_ip="${server_ip}" ' + /sbin/ifconfig |gawk -v server_ip="${server_ip}" ' BEGIN { split( server_ip, tmp, "\\." ); server_ip_num = tmp[1] * 2^24 + tmp[2] * 2^16 + tmp[3] * 2^8 + tmp[4] * 2^0; @@ -751,13 +751,13 @@ CT_DoSaveState() { CT_DoLog DEBUG " Saving environment and aliases" # We must omit shell functions, and some specific bash variables # that break when restoring the environment, later. We could do - # all the processing in the awk script, but a sed is easier... - set |awk ' - BEGIN { _p = 1; } - $0~/^[^ ]+ \(\)/ { _p = 0; } - _p == 1 - $0 == "}" { _p = 1; } - ' |sed -r -e '/^BASH_(ARGC|ARGV|LINENO|SOURCE|VERSINFO)=/d; + # all the processing in the gawk script, but a sed is easier... + set |gawk ' + BEGIN { _p = 1; } + $0~/^[^ ]+ \(\)/ { _p = 0; } + _p == 1 + $0 == "}" { _p = 1; } + ' |sed -r -e '/^BASH_(ARGC|ARGV|LINENO|SOURCE|VERSINFO)=/d; /^(UID|EUID)=/d; /^(FUNCNAME|GROUPS|PPID|SHELLOPTS)=/d;' >"${state_dir}/env.sh" diff --git a/scripts/saveSample.sh b/scripts/saveSample.sh index b0c55675..5e20e4f4 100755 --- a/scripts/saveSample.sh +++ b/scripts/saveSample.sh @@ -59,8 +59,8 @@ sed -r -e 's|^(CT_PREFIX_DIR)=.*|\1="${HOME}/x-tools/${CT_TARGET}"|;' \ CT_DoAddFileToSample() { source="$1" dest="$2" - inode_s=$(ls -i "${source}" |awk '{ print $1; }') - inode_d=$(ls -i "${dest}" 2>/dev/null |awk '{ print $1; }' || true) + inode_s=$(ls -i "${source}" |gawk '{ print $1; }') + inode_d=$(ls -i "${dest}" 2>/dev/null |gawk '{ print $1; }' || true) if [ "${inode_s}" != "${inode_d}" ]; then cp "${source}" "${dest}" fi