From: Liming Gao <liming.gao@intel.com>
To: edk2-devel@lists.01.org
Subject: [Patch] BaseTools: Update BrotliCompress script to handle the different input format
Date: Fri, 8 Dec 2017 12:39:13 +0800 [thread overview]
Message-ID: <1512707953-13216-1-git-send-email-liming.gao@intel.com> (raw)
After this update, BrotliCompress can support below styles.
BrotliCompress -e InputFile -o OutputFile
BrotliCompress -e -o OutputFile InputFile
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com>
---
BaseTools/BinWrappers/PosixLike/BrotliCompress | 61 +++++++++-------------
.../Source/C/BrotliCompress/BrotliCompress.bat | 18 ++++---
2 files changed, 34 insertions(+), 45 deletions(-)
diff --git a/BaseTools/BinWrappers/PosixLike/BrotliCompress b/BaseTools/BinWrappers/PosixLike/BrotliCompress
index ca32d6a..6e4c8c9 100755
--- a/BaseTools/BinWrappers/PosixLike/BrotliCompress
+++ b/BaseTools/BinWrappers/PosixLike/BrotliCompress
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# This script will exec Brotli tool.
+# This script will exec Brotli tool with -e/-d options.
#
# Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
# This program and the accompanying materials
@@ -13,50 +13,37 @@
#
QLT="-q 9"
INPUTFLAG=0
+ARGS=
-for arg; do
- if [ $1 = -d ]
- then
+while test $# -gt 0
+do
+ case $1 in
+ -e)
INPUTFLAG=1
- fi
- if [ $1 = -e ]
- then
+ ;;
+ -d)
INPUTFLAG=1
- shift
- continue;
- fi
- if [ $1 = -g ]
- then
- ARGS+="$1 $2 "
- shift
- shift
- continue;
- fi
- if [ $1 = -o ]
- then
+ ARGS+="$1 "
+ ;;
+ -o|-g)
ARGS+="$1 $2 "
shift
- shift
- continue;
- fi
- if [ $1 = -q ]
- then
+ ;;
+ -q)
QLT="$1 $2 "
shift
- shift
- continue;
- fi
- if [ $INPUTFLAG -eq 1 ]
- then
- if [ -z $2 ]
+ ;;
+ *)
+ if [ $INPUTFLAG -eq 1 ]
then
- ARGS+="$QLT -i $1 "
- break;
+ ARGS+="-i $1 "
+ INPUTFLAG=0
+ else
+ ARGS+="$1 "
fi
- fi
-
-ARGS+="$1 "
-shift
+ ;;
+ esac
+ shift
done
-exec Brotli $ARGS
+exec Brotli $ARGS $QLT
diff --git a/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat b/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
index b291ff0..b1b4985 100644
--- a/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
+++ b/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
@@ -16,12 +16,16 @@
set QLT=-q 9
set INPUTFLAG=0
+set ARGS=
:Begin
if "%1"=="" goto End
if "%1"=="-d" (
set INPUTFLAG=1
+ set ARGS=%ARGS% %1
+ shift
+ goto Begin
)
if "%1"=="-e" (
@@ -51,17 +55,15 @@ if "%1"=="-q" (
goto Begin
)
-if %INPUTFLAG%==1 (
- if "%2"=="" (
- set ARGS=%ARGS% %QLT% -i %1
- goto End
- )
+if %INPUTFLAG% == 1 (
+ set ARGS=%ARGS% -i %1
+ set INPUTFLAG=0
+) else (
+ set ARGS=%ARGS% %1
)
-
-set ARGS=%ARGS% %1
shift
goto Begin
:End
-Brotli %ARGS%
+Brotli %ARGS% %QLT%
@echo on
--
2.8.0.windows.1
next reply other threads:[~2017-12-08 4:34 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-08 4:39 Liming Gao [this message]
2017-12-08 16:10 ` [Patch] BaseTools: Update BrotliCompress script to handle the different input format Zhu, Yonghong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1512707953-13216-1-git-send-email-liming.gao@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox