Reviewed-by: Liming Gao <gaolim...@byosoft.com.cn> > -----邮件原件----- > 发件人: bounce+27952+71863+4905953+8761...@groups.io > <bounce+27952+71863+4905953+8761...@groups.io> 代表 fengyunhua > 发送时间: 2021年2月20日 9:51 > 收件人: devel@edk2.groups.io > 抄送: Bob Feng <bob.c.f...@intel.com>; Liming Gao > <gaolim...@byosoft.com.cn>; Yuwei Chen <yuwei.c...@intel.com> > 主题: [edk2-devel] [PATCH v2] BaseTools: Fix BrotliCompress run issue on > Linux > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3210 > BrotliCompress changed, but not completely on Linux > > Cc: Bob Feng <bob.c.f...@intel.com> > Cc: Liming Gao <gaolim...@byosoft.com.cn> > Cc: Yuwei Chen <yuwei.c...@intel.com> > Signed-off-by: Yunhua Feng <fengyun...@byosoft.com.cn> > --- > .../BinPipWrappers/PosixLike/BrotliCompress | 28 +++++++++++++++++- > BaseTools/BinWrappers/PosixLike/Brotli | 29 ------------------- > .../BinWrappers/PosixLike/BrotliCompress | 28 +++++++++++++++++- > 3 files changed, 54 insertions(+), 31 deletions(-) > delete mode 100755 BaseTools/BinWrappers/PosixLike/Brotli > > diff --git a/BaseTools/BinPipWrappers/PosixLike/BrotliCompress > b/BaseTools/BinPipWrappers/PosixLike/BrotliCompress > index 663860bb3e..426f2a2ef1 100755 > --- a/BaseTools/BinPipWrappers/PosixLike/BrotliCompress > +++ b/BaseTools/BinPipWrappers/PosixLike/BrotliCompress > @@ -8,6 +8,10 @@ > QLT="-q 9 -w 22" > ARGS= > > +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##*/} > + > while test $# -gt 0 > do > case $1 in > @@ -31,4 +35,26 @@ do > shift > done > > -exec Brotli $QLT $ARGS > + > +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] > +then > + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" > +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] > +then > + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] > + then > + 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/$cmd" $QLT $ARGS > + fi > +elif [ -e "$dir/../../Source/C/bin/$cmd" ] > +then > + exec "$dir/../../Source/C/bin/$cmd" $QLT $ARGS > +else > + echo "Unable to find the real '$cmd' to run" > + echo "This message was printed by" > + echo " $0" > + exit 127 > +fi > diff --git a/BaseTools/BinWrappers/PosixLike/Brotli > b/BaseTools/BinWrappers/PosixLike/Brotli > deleted file mode 100755 > index 0945d86d92..0000000000 > --- a/BaseTools/BinWrappers/PosixLike/Brotli > +++ /dev/null > @@ -1,29 +0,0 @@ > -#!/usr/bin/env bash > - > -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" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] > -then > - exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" > -elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] > -then > - if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] > - then > - 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/$cmd" "$@" > - fi > -elif [ -e "$dir/../../Source/C/bin/$cmd" ] > -then > - exec "$dir/../../Source/C/bin/$cmd" "$@" > -else > - echo "Unable to find the real '$cmd' to run" > - echo "This message was printed by" > - echo " $0" > - exit 127 > -fi > - > diff --git a/BaseTools/BinWrappers/PosixLike/BrotliCompress > b/BaseTools/BinWrappers/PosixLike/BrotliCompress > index 663860bb3e..426f2a2ef1 100755 > --- a/BaseTools/BinWrappers/PosixLike/BrotliCompress > +++ b/BaseTools/BinWrappers/PosixLike/BrotliCompress > @@ -8,6 +8,10 @@ > QLT="-q 9 -w 22" > ARGS= > > +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##*/} > + > while test $# -gt 0 > do > case $1 in > @@ -31,4 +35,26 @@ do > shift > done > > -exec Brotli $QLT $ARGS > + > +if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ] > +then > + exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd" > +elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ] > +then > + if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ] > + then > + 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/$cmd" $QLT $ARGS > + fi > +elif [ -e "$dir/../../Source/C/bin/$cmd" ] > +then > + exec "$dir/../../Source/C/bin/$cmd" $QLT $ARGS > +else > + echo "Unable to find the real '$cmd' to run" > + echo "This message was printed by" > + echo " $0" > + exit 127 > +fi > -- > 2.27.0.windows.1 > > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#71868): https://edk2.groups.io/g/devel/message/71868 Mute This Topic: https://groups.io/mt/80773977/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-