From c56829fa73f6293daf8b097a8c8c55679e564368 Mon Sep 17 00:00:00 2001 From: Charles Duffy Date: Wed, 20 Jan 2016 05:12:02 +0000 Subject: BaseTools: Improve shell wrapper for C build commands - Avoid obsolescent forms of test builtin (`-a` and `-o`; see APPLICATION USAGE section of http://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html). - Quote all expansions to prevent string-splitting and globbing. - Avoid unspecified "exit -1" (only single-byte integers are valid); instead, use identical exit status to shell command-not-found. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Charles Duffy Reviewed-by: Yonghong Zhu git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19695 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 5e407648358d639ed19d228303527133e4c95c25) --- BaseTools/BinWrappers/PosixLike/BootSectImage | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/EfiLdrImage | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/EfiRom | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenCrc32 | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenFfs | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenFv | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenFw | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenPage | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenSec | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GenVtf | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/GnuGenBootSector | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/LzmaCompress | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/Split | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/TianoCompress | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/VfrCompile | 30 ++++++++++++------------ BaseTools/BinWrappers/PosixLike/VolInfo | 30 ++++++++++++------------ 16 files changed, 240 insertions(+), 240 deletions(-) (limited to 'BaseTools/BinWrappers/PosixLike') diff --git a/BaseTools/BinWrappers/PosixLike/BootSectImage b/BaseTools/BinWrappers/PosixLike/BootSectImage index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/BootSectImage +++ b/BaseTools/BinWrappers/PosixLike/BootSectImage @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/EfiLdrImage b/BaseTools/BinWrappers/PosixLike/EfiLdrImage index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/EfiLdrImage +++ b/BaseTools/BinWrappers/PosixLike/EfiLdrImage @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/EfiRom b/BaseTools/BinWrappers/PosixLike/EfiRom index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/EfiRom +++ b/BaseTools/BinWrappers/PosixLike/EfiRom @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenCrc32 b/BaseTools/BinWrappers/PosixLike/GenCrc32 index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenCrc32 +++ b/BaseTools/BinWrappers/PosixLike/GenCrc32 @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenFfs b/BaseTools/BinWrappers/PosixLike/GenFfs index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenFfs +++ b/BaseTools/BinWrappers/PosixLike/GenFfs @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenFv b/BaseTools/BinWrappers/PosixLike/GenFv index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenFv +++ b/BaseTools/BinWrappers/PosixLike/GenFv @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenFw b/BaseTools/BinWrappers/PosixLike/GenFw index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenFw +++ b/BaseTools/BinWrappers/PosixLike/GenFw @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenPage b/BaseTools/BinWrappers/PosixLike/GenPage index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenPage +++ b/BaseTools/BinWrappers/PosixLike/GenPage @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenSec b/BaseTools/BinWrappers/PosixLike/GenSec index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenSec +++ b/BaseTools/BinWrappers/PosixLike/GenSec @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GenVtf b/BaseTools/BinWrappers/PosixLike/GenVtf index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GenVtf +++ b/BaseTools/BinWrappers/PosixLike/GenVtf @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/GnuGenBootSector b/BaseTools/BinWrappers/PosixLike/GnuGenBootSector index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/GnuGenBootSector +++ b/BaseTools/BinWrappers/PosixLike/GnuGenBootSector @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/LzmaCompress b/BaseTools/BinWrappers/PosixLike/LzmaCompress index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/LzmaCompress +++ b/BaseTools/BinWrappers/PosixLike/LzmaCompress @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/Split b/BaseTools/BinWrappers/PosixLike/Split index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/Split +++ b/BaseTools/BinWrappers/PosixLike/Split @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/TianoCompress b/BaseTools/BinWrappers/PosixLike/TianoCompress index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/TianoCompress +++ b/BaseTools/BinWrappers/PosixLike/TianoCompress @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/VfrCompile b/BaseTools/BinWrappers/PosixLike/VfrCompile index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/VfrCompile +++ b/BaseTools/BinWrappers/PosixLike/VfrCompile @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi diff --git a/BaseTools/BinWrappers/PosixLike/VolInfo b/BaseTools/BinWrappers/PosixLike/VolInfo index 4821d24fa7..0945d86d92 100755 --- a/BaseTools/BinWrappers/PosixLike/VolInfo +++ b/BaseTools/BinWrappers/PosixLike/VolInfo @@ -1,29 +1,29 @@ #!/usr/bin/env bash -#python `dirname $0`/RunToolFromSource.py `basename $0` $* -#exec `dirname $0`/../../../../C/bin/`basename $0` $* -TOOL_BASENAME=`basename $0` +full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here +dir=$(dirname "$full_cmd") +cmd=${full_cmd##*/} -if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ] +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] then - exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME -elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ] + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] then - if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ] + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] then - echo BaseTools C Tool binary was not found \($TOOL_BASENAME\) - echo You may need to run: + echo "BaseTools C Tool binary was not found ($cmd)" + echo "You may need to run:" echo " make -C $EDK_TOOLS_PATH/Source/C" else - exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $* + exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@" fi -elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ] +elif [ -e "$dir/../../Source/C/bin/$cmd" ] then - exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $* + exec "$dir/../../Source/C/bin/$cmd" "$@" else - echo Unable to find the real \'$TOOL_BASENAME\' to run - echo This message was printed by + echo "Unable to find the real '$cmd' to run" + echo "This message was printed by" echo " $0" - exit -1 + exit 127 fi -- cgit v1.2.3