public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Gao, Liming" <liming.gao@intel.com>
To: "Song, BinX" <binx.song@intel.com>,
	"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Subject: Re: [PATCH] BaseTools: Add --version option in Brotli and BrotliCompress
Date: Thu, 13 Apr 2017 06:34:22 +0000	[thread overview]
Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14D71DEC6@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <559D2DF22BC9A3468B4FA1AA547F0EF10255B65D@shsmsx102.ccr.corp.intel.com>

Reviewed-by: Liming Gao <liming.gao@intel.com>

>-----Original Message-----
>From: Song, BinX
>Sent: Thursday, April 13, 2017 9:20 AM
>To: edk2-devel@lists.01.org
>Cc: Gao, Liming <liming.gao@intel.com>; Zhu, Yonghong
><yonghong.zhu@intel.com>
>Subject: [PATCH] BaseTools: Add --version option in Brotli and BrotliCompress
>
>https://bugzilla.tianocore.org/show_bug.cgi?id=464
>V2:
>- Add build version
>
>V1:
>- Add --version option in Brotli and BrotliCompress
>
>Cc: Liming Gao <liming.gao@intel.com>
>Cc: Yonghong Zhu <yonghong.zhu@intel.com>
>Contributed-under: TianoCore Contribution Agreement 1.0
>Signed-off-by: Bell Song <binx.song@intel.com>
>---
> BaseTools/BinWrappers/PosixLike/BrotliCompress     | 29 ++++++++++++++--
>-----
> .../Source/C/BrotliCompress/BrotliCompress.bat     | 30 +++++++++++++------
>---
> BaseTools/Source/C/BrotliCompress/tools/bro.c      | 18 ++++++++++++-
> 3 files changed, 55 insertions(+), 22 deletions(-)
>
>diff --git a/BaseTools/BinWrappers/PosixLike/BrotliCompress
>b/BaseTools/BinWrappers/PosixLike/BrotliCompress
>index 59c6465..49358b2 100755
>--- a/BaseTools/BinWrappers/PosixLike/BrotliCompress
>+++ b/BaseTools/BinWrappers/PosixLike/BrotliCompress
>@@ -11,32 +11,43 @@
> # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
>BASIS,
> # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
>EXPRESS OR IMPLIED.
> #
>-LVL="--quality 9"
>+QLT="-q 9"
>+INPUTFLAG=0
>
> while [ $# != 0 ];do
>   case $1 in
>     -d)
>-      ARGS+="--decompress "
>+      INPUTFLAG=1
>+      ARGS+="$1 "
>     ;;
>     -e)
>+      INPUTFLAG=1
>     ;;
>     -g)
>-      ARGS+="--gap $2 "
>+      ARGS+="$1 $2 "
>       shift
>     ;;
>-    -l)
>-      LVL="--quality $2 "
>+    -o)
>+      ARGS+="$1 $2 "
>       shift
>     ;;
>-    -o)
>-      ARGS+="--output $2 "
>+    -q)
>+      QLT="$1 $2 "
>       shift
>     ;;
>     *)
>-      ARGS+="--input $1 "
>+      if [ $INPUTFLAG -eq 1 ]
>+      then
>+        if [ -z $2 ]
>+          then
>+            ARGS+="$QLT -i $1 "
>+            break;
>+        fi
>+      fi
>+      ARGS+="$1 "
>   esac
>
> shift
> done
>
>-exec Brotli $ARGS $LVL
>+exec Brotli $ARGS
>diff --git a/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>b/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>index 257bf1e..b291ff0 100644
>--- a/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>+++ b/BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>@@ -14,48 +14,54 @@
> @echo off
> @setlocal
>
>-set LVL=--quality 9
>+set QLT=-q 9
>+set INPUTFLAG=0
>
> :Begin
> if "%1"=="" goto End
>
> if "%1"=="-d" (
>-  set ARGS=%ARGS% --decompress
>-  shift
>-  goto Begin
>+  set INPUTFLAG=1
> )
>
> if "%1"=="-e" (
>+  set INPUTFLAG=1
>   shift
>   goto Begin
> )
>
> if "%1"=="-g" (
>-  set ARGS=%ARGS% --gap %2
>+  set ARGS=%ARGS% %1 %2
>   shift
>   shift
>   goto Begin
> )
>
>-if "%1"=="-l" (
>-  set LVL=--quality %2
>+if "%1"=="-o" (
>+  set ARGS=%ARGS% %1 %2
>   shift
>   shift
>   goto Begin
> )
>
>-if "%1"=="-o" (
>-  set ARGS=%ARGS% --output %2
>-  set INTMP=%2
>+if "%1"=="-q" (
>+  set QLT=%1 %2
>   shift
>   shift
>   goto Begin
> )
>
>-set ARGS=%ARGS% --input %1
>+if %INPUTFLAG%==1 (
>+ if "%2"=="" (
>+    set ARGS=%ARGS% %QLT% -i %1
>+    goto End
>+  )
>+)
>+
>+set ARGS=%ARGS% %1
> shift
> goto Begin
>
> :End
>-Brotli %ARGS% %LVL%
>+Brotli %ARGS%
> @echo on
>diff --git a/BaseTools/Source/C/BrotliCompress/tools/bro.c
>b/BaseTools/Source/C/BrotliCompress/tools/bro.c
>index 2fa9f05..ef4592d 100644
>--- a/BaseTools/Source/C/BrotliCompress/tools/bro.c
>+++ b/BaseTools/Source/C/BrotliCompress/tools/bro.c
>@@ -13,6 +13,7 @@
> #include <sys/stat.h>
> #include <sys/types.h>
> #include <time.h>
>+#include <Common/BuildVersion.h>
>
> #include "../dec/decode.h"
> #include "../enc/encode.h"
>@@ -67,6 +68,11 @@ static int ParseQuality(const char* s, int* quality) {
>   return 0;
> }
>
>+#define UTILITY_NAME          "Brotli"
>+#define UTILITY_MAJOR_VERSION 0
>+#define UTILITY_MINOR_VERSION 5
>+#define UTILITY_REVERSION     2
>+
> static void ParseArgv(int argc, char **argv,
>                       char **input_path,
>                       char **output_path,
>@@ -110,6 +116,15 @@ static void ParseArgv(int argc, char **argv,
>       }
>       *verbose = 1;
>       continue;
>+    } else if (!strcmp("--version", argv[k])) {
>+      fprintf(stderr,
>+              "%s Version %d.%d.%d %s\n",
>+              UTILITY_NAME,
>+              UTILITY_MAJOR_VERSION,
>+              UTILITY_MINOR_VERSION,
>+              UTILITY_REVERSION,
>+              __BUILD_VERSION);
>+      exit(1);
>     }
>     if (k < argc - 1) {
>       if (!strcmp("--input", argv[k]) ||
>@@ -177,7 +192,8 @@ error:
>   fprintf(stderr,
>           "Usage: %s [--force] [--quality n] [--gap n] [--decompress]"
>           " [--input filename] [--output filename] [--repeat iters]"
>-          " [--verbose] [--window n] [--custom-dictionary filename]\n",
>+          " [--verbose] [--window n] [--custom-dictionary filename]"
>+          " [--version]\n",
>           argv[0]);
>   exit(1);
> }
>--
>2.10.2.windows.1



  reply	other threads:[~2017-04-13  6:34 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-13  1:19 [PATCH] BaseTools: Add --version option in Brotli and BrotliCompress Song, BinX
2017-04-13  6:34 ` Gao, Liming [this message]
  -- strict thread matches above, loose matches on Subject: below --
2017-04-07  8:50 Song, BinX

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=4A89E2EF3DFEDB4C8BFDE51014F606A14D71DEC6@shsmsx102.ccr.corp.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