[edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support

Song, BinX posted 4 patches 7 years, 1 month ago
Only 0 patches received!
BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
BaseTools/Conf/tools_def.template                  |     6 +
.../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
BaseTools/Source/C/BrotliCompress/README.md        |    26 +
BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
.../Source/C/BrotliCompress/common/constants.h     |    47 +
.../Source/C/BrotliCompress/common/dictionary.c    |  9474 ++++++++++++++++
.../Source/C/BrotliCompress/common/dictionary.h    |    29 +
BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
.../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
.../C/BrotliCompress/enc/backward_references.c     |   892 ++
.../C/BrotliCompress/enc/backward_references.h     |    99 +
.../C/BrotliCompress/enc/backward_references_inc.h |   147 +
BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
.../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
.../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
.../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
.../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
.../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
.../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
.../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
.../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
.../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
.../C/BrotliCompress/enc/compress_fragment.h       |    58 +
.../enc/compress_fragment_two_pass.c               |   557 +
.../enc/compress_fragment_two_pass.h               |    51 +
BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
.../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
.../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
.../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
.../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
.../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
.../C/BrotliCompress/enc/find_match_length.h       |    80 +
BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
.../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
.../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
.../enc/hash_longest_match_quickly_inc.h           |   230 +
BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
.../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
.../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
.../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
.../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
.../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
.../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
.../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241 +++++++++++++++++++
BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
BaseTools/Source/C/GNUmakefile                     |     1 +
BaseTools/Source/C/Makefile                        |     1 +
.../BrotliCustomDecompressLib.inf                  |    56 +
.../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
.../BrotliDecompressLib.uni                        |    21 +
.../BrotliDecompressLibInternal.h                  |    71 +
.../GuidedSectionExtraction.c                      |   196 +
.../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
.../Library/BrotliCustomDecompressLib/README.md    |    26 +
.../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
.../BrotliCustomDecompressLib/common/constants.h   |    47 +
.../BrotliCustomDecompressLib/common/dictionary.c  |  9474 ++++++++++++++++
.../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
.../BrotliCustomDecompressLib/common/port.h        |   107 +
.../BrotliCustomDecompressLib/common/types.h       |    72 +
.../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
.../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
.../BrotliCustomDecompressLib/dec/context.h        |   251 +
.../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
.../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
.../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
.../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
.../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
.../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
.../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
.../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
.../BrotliCustomDecompressLib/dec/transform.h      |   300 +
.../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
MdeModulePkg/MdeModulePkg.dec                      |     3 +
MdeModulePkg/MdeModulePkg.dsc                      |     1 +
115 files changed, 60196 insertions(+)
create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
create mode 100644 BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
create mode 100644 BaseTools/Source/C/BrotliCompress/common/constants.h
create mode 100644 BaseTools/Source/C/BrotliCompress/common/dictionary.c
create mode 100644 BaseTools/Source/C/BrotliCompress/common/dictionary.h
create mode 100644 BaseTools/Source/C/BrotliCompress/common/port.h
create mode 100644 BaseTools/Source/C/BrotliCompress/common/types.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
create mode 100644 BaseTools/Source/C/BrotliCompress/dec/transform.h
create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-comparison-study-2015-09-22.pdf
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/backward_references.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/backward_references.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/command.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compressor.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
create mode 100644 BaseTools/Source/C/BrotliCompress/enc/write_bits.h
create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
create mode 100644 BaseTools/Source/C/BrotliCompress/tools/version.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecompressLib.inf
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.uni
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibInternal.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtraction.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-comparison-study-2015-09-22.pdf
[edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Song, BinX 7 years, 1 month ago
Brotli algorithm was released on the website https://github.com/google/brotli.
It has a little less compress ratio than Lzma, but has better decompress performance than it.
Add Brotli algorithm support, include Brotli decompression library and tool set.

Tested on:
OS: Windows
Arch: IA32/X64
Platform: Nt32Pkg
ToolChain: VS2015x86
Target: Release

OS: Ubuntu
Arch: IA32/X64
Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
ToolChain: GCC5
Target: Release

Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Bell Song <binx.song@intel.com>

Bell Song (4):
  MdeModulePkg: Copy Brotli algorithm 3rd party source code for library
  MdeModulePkg: Add Brotli algorithm decompression library
  BaseTools: Copy Brotli algorithm 3rd party source code for tool
  BaseTools: Add Brotli algorithm tool

 BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
 BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
 BaseTools/Conf/tools_def.template                  |     6 +
 .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
 BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
 BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
 BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
 BaseTools/Source/C/BrotliCompress/README.md        |    26 +
 BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
 .../Source/C/BrotliCompress/common/constants.h     |    47 +
 .../Source/C/BrotliCompress/common/dictionary.c    |  9474 ++++++++++++++++
 .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
 BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
 BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
 BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
 BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
 BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
 BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
 BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
 BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
 BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
 BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
 BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
 BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
 BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
 BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
 .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
 .../C/BrotliCompress/enc/backward_references.c     |   892 ++
 .../C/BrotliCompress/enc/backward_references.h     |    99 +
 .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
 .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
 .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
 .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
 .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
 .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
 .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
 .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
 BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
 BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
 .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
 BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
 .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
 .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
 .../enc/compress_fragment_two_pass.c               |   557 +
 .../enc/compress_fragment_two_pass.h               |    51 +
 BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
 BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
 .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
 BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
 BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
 .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
 .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
 .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
 .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
 BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
 .../C/BrotliCompress/enc/find_match_length.h       |    80 +
 BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
 .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
 .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
 .../enc/hash_longest_match_quickly_inc.h           |   230 +
 BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
 BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
 .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
 .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
 .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
 BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
 BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
 BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
 BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
 .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
 BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
 BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
 BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
 BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
 .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
 .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
 .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241 +++++++++++++++++++
 BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
 BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
 BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
 BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
 BaseTools/Source/C/GNUmakefile                     |     1 +
 BaseTools/Source/C/Makefile                        |     1 +
 .../BrotliCustomDecompressLib.inf                  |    56 +
 .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
 .../BrotliDecompressLib.uni                        |    21 +
 .../BrotliDecompressLibInternal.h                  |    71 +
 .../GuidedSectionExtraction.c                      |   196 +
 .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
 .../Library/BrotliCustomDecompressLib/README.md    |    26 +
 .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
 .../BrotliCustomDecompressLib/common/constants.h   |    47 +
 .../BrotliCustomDecompressLib/common/dictionary.c  |  9474 ++++++++++++++++
 .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
 .../BrotliCustomDecompressLib/common/port.h        |   107 +
 .../BrotliCustomDecompressLib/common/types.h       |    72 +
 .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
 .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
 .../BrotliCustomDecompressLib/dec/context.h        |   251 +
 .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
 .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
 .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
 .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
 .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
 .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
 .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
 .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
 .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
 .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
 MdeModulePkg/MdeModulePkg.dec                      |     3 +
 MdeModulePkg/MdeModulePkg.dsc                      |     1 +
 115 files changed, 60196 insertions(+)
 create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
 create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
 create mode 100644 BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
 create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
 create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
 create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
 create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
 create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
 create mode 100644 BaseTools/Source/C/BrotliCompress/common/constants.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/common/dictionary.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/common/dictionary.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/common/port.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/common/types.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/dec/transform.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-comparison-study-2015-09-22.pdf
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/backward_references.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/backward_references.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/command.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compressor.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/enc/write_bits.h
 create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
 create mode 100644 BaseTools/Source/C/BrotliCompress/tools/version.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecompressLib.inf
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.uni
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibInternal.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtraction.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
 create mode 100644 MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-comparison-study-2015-09-22.pdf

-- 
2.10.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Song, BinX 7 years, 1 month ago
Hi All,

The code is also in https://github.com/binxsong/edk2/tree/Brotli_V1

Best Regards,
Bell Song

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Song,
> BinX
> Sent: Thursday, March 23, 2017 10:16 AM
> To: edk2-devel@lists.01.org
> Cc: Gao, Liming <liming.gao@intel.com>
> Subject: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm
> support
> 
> Brotli algorithm was released on the website https://github.com/google/brotli.
> It has a little less compress ratio than Lzma, but has better decompress
> performance than it.
> Add Brotli algorithm support, include Brotli decompression library and tool set.
> 
> Tested on:
> OS: Windows
> Arch: IA32/X64
> Platform: Nt32Pkg
> ToolChain: VS2015x86
> Target: Release
> 
> OS: Ubuntu
> Arch: IA32/X64
> Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
> ToolChain: GCC5
> Target: Release
> 
> Cc: Liming Gao <liming.gao@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Bell Song <binx.song@intel.com>
> 
> Bell Song (4):
>   MdeModulePkg: Copy Brotli algorithm 3rd party source code for library
>   MdeModulePkg: Add Brotli algorithm decompression library
>   BaseTools: Copy Brotli algorithm 3rd party source code for tool
>   BaseTools: Add Brotli algorithm tool
> 
>  BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
>  BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
>  BaseTools/Conf/tools_def.template                  |     6 +
>  .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
>  BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
>  BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
>  BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
>  BaseTools/Source/C/BrotliCompress/README.md        |    26 +
>  BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
>  .../Source/C/BrotliCompress/common/constants.h     |    47 +
>  .../Source/C/BrotliCompress/common/dictionary.c    |  9474
> ++++++++++++++++
>  .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
>  BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
>  BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
>  BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
>  BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
>  BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
>  BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
>  BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
>  BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
>  BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
>  BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
>  BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
>  BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
>  .../C/BrotliCompress/enc/backward_references.c     |   892 ++
>  .../C/BrotliCompress/enc/backward_references.h     |    99 +
>  .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
>  .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
>  .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
>  .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
>  .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
>  .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
>  .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
>  .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
>  BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
>  BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
>  .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
>  BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
>  .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
>  .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
>  .../enc/compress_fragment_two_pass.c               |   557 +
>  .../enc/compress_fragment_two_pass.h               |    51 +
>  BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
>  BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
>  .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
>  BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
>  BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
>  .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
>  .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
>  .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
>  .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
>  BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
>  .../C/BrotliCompress/enc/find_match_length.h       |    80 +
>  BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
>  .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
>  .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
>  .../enc/hash_longest_match_quickly_inc.h           |   230 +
>  BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
>  BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
>  .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
>  .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
>  .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
>  BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
>  BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
>  BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
>  BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
>  .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
>  BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
>  BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
>  BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
>  BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
>  .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
>  .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
>  .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241
> +++++++++++++++++++
>  BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
>  BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
>  BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
>  BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
>  BaseTools/Source/C/GNUmakefile                     |     1 +
>  BaseTools/Source/C/Makefile                        |     1 +
>  .../BrotliCustomDecompressLib.inf                  |    56 +
>  .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
>  .../BrotliDecompressLib.uni                        |    21 +
>  .../BrotliDecompressLibInternal.h                  |    71 +
>  .../GuidedSectionExtraction.c                      |   196 +
>  .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
>  .../Library/BrotliCustomDecompressLib/README.md    |    26 +
>  .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
>  .../BrotliCustomDecompressLib/common/constants.h   |    47 +
>  .../BrotliCustomDecompressLib/common/dictionary.c  |  9474
> ++++++++++++++++
>  .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
>  .../BrotliCustomDecompressLib/common/port.h        |   107 +
>  .../BrotliCustomDecompressLib/common/types.h       |    72 +
>  .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
>  .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
>  .../BrotliCustomDecompressLib/dec/context.h        |   251 +
>  .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
>  .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
>  .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
>  .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
>  .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
>  .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
>  .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
>  .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
>  .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
>  MdeModulePkg/MdeModulePkg.dec                      |     3 +
>  MdeModulePkg/MdeModulePkg.dsc                      |     1 +
>  115 files changed, 60196 insertions(+)
>  create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
>  create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
>  create mode 100644 BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>  create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
>  create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
>  create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
>  create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
>  create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/common/constants.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/common/dictionary.c
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/common/dictionary.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/common/port.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/common/types.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/transform.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-
> comparison-study-2015-09-22.pdf
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/backward_references.c
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/backward_references.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/command.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/compressor.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.h
>  create mode 100644
> BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/write_bits.h
>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/version.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecompress
> Lib.inf
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.uni
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibInter
> nal.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtraction.
> c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
>  create mode 100644
> MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-comparison-
> study-2015-09-22.pdf
> 
> --
> 2.10.2.windows.1
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Gao, Liming 7 years, 1 month ago
Reviewed-by: Liming Gao <liming.gao@intel.com>

>-----Original Message-----
>From: Song, BinX
>Sent: Thursday, March 23, 2017 2:05 PM
>To: edk2-devel@lists.01.org
>Cc: Gao, Liming <liming.gao@intel.com>
>Subject: RE: [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm
>support
>
>Hi All,
>
>The code is also in https://github.com/binxsong/edk2/tree/Brotli_V1
>
>Best Regards,
>Bell Song
>
>> -----Original Message-----
>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
>Song,
>> BinX
>> Sent: Thursday, March 23, 2017 10:16 AM
>> To: edk2-devel@lists.01.org
>> Cc: Gao, Liming <liming.gao@intel.com>
>> Subject: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>algorithm
>> support
>>
>> Brotli algorithm was released on the website
>https://github.com/google/brotli.
>> It has a little less compress ratio than Lzma, but has better decompress
>> performance than it.
>> Add Brotli algorithm support, include Brotli decompression library and tool
>set.
>>
>> Tested on:
>> OS: Windows
>> Arch: IA32/X64
>> Platform: Nt32Pkg
>> ToolChain: VS2015x86
>> Target: Release
>>
>> OS: Ubuntu
>> Arch: IA32/X64
>> Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
>> ToolChain: GCC5
>> Target: Release
>>
>> Cc: Liming Gao <liming.gao@intel.com>
>> Contributed-under: TianoCore Contribution Agreement 1.0
>> Signed-off-by: Bell Song <binx.song@intel.com>
>>
>> Bell Song (4):
>>   MdeModulePkg: Copy Brotli algorithm 3rd party source code for library
>>   MdeModulePkg: Add Brotli algorithm decompression library
>>   BaseTools: Copy Brotli algorithm 3rd party source code for tool
>>   BaseTools: Add Brotli algorithm tool
>>
>>  BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
>>  BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
>>  BaseTools/Conf/tools_def.template                  |     6 +
>>  .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
>>  BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
>>  BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
>>  BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
>>  BaseTools/Source/C/BrotliCompress/README.md        |    26 +
>>  BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
>>  .../Source/C/BrotliCompress/common/constants.h     |    47 +
>>  .../Source/C/BrotliCompress/common/dictionary.c    |  9474
>> ++++++++++++++++
>>  .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
>>  BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
>>  BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
>>  BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
>>  BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
>>  BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
>>  BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
>>  BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
>>  BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
>>  BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
>>  BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
>>  BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
>>  BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
>>  .../C/BrotliCompress/enc/backward_references.c     |   892 ++
>>  .../C/BrotliCompress/enc/backward_references.h     |    99 +
>>  .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
>>  .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
>>  .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
>>  .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
>>  .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
>>  .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
>>  .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
>>  .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
>>  BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
>>  BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
>>  .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
>>  BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
>>  .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
>>  .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
>>  .../enc/compress_fragment_two_pass.c               |   557 +
>>  .../enc/compress_fragment_two_pass.h               |    51 +
>>  BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
>>  BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
>>  .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
>>  BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
>>  BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
>>  .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
>>  .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
>>  .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
>>  .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
>>  BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
>>  .../C/BrotliCompress/enc/find_match_length.h       |    80 +
>>  BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
>>  .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
>>  .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
>>  .../enc/hash_longest_match_quickly_inc.h           |   230 +
>>  BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
>>  BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
>>  .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
>>  .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
>>  .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
>>  BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
>>  BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
>>  BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
>>  BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
>>  .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
>>  BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
>>  BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
>>  BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
>>  BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
>>  .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
>>  .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
>>  .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241
>> +++++++++++++++++++
>>  BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
>>  BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
>>  BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
>>  BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
>>  BaseTools/Source/C/GNUmakefile                     |     1 +
>>  BaseTools/Source/C/Makefile                        |     1 +
>>  .../BrotliCustomDecompressLib.inf                  |    56 +
>>  .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
>>  .../BrotliDecompressLib.uni                        |    21 +
>>  .../BrotliDecompressLibInternal.h                  |    71 +
>>  .../GuidedSectionExtraction.c                      |   196 +
>>  .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
>>  .../Library/BrotliCustomDecompressLib/README.md    |    26 +
>>  .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
>>  .../BrotliCustomDecompressLib/common/constants.h   |    47 +
>>  .../BrotliCustomDecompressLib/common/dictionary.c  |  9474
>> ++++++++++++++++
>>  .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
>>  .../BrotliCustomDecompressLib/common/port.h        |   107 +
>>  .../BrotliCustomDecompressLib/common/types.h       |    72 +
>>  .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
>>  .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
>>  .../BrotliCustomDecompressLib/dec/context.h        |   251 +
>>  .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
>>  .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
>>  .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
>>  .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
>>  .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
>>  .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
>>  .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
>>  .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
>>  .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
>>  MdeModulePkg/MdeModulePkg.dec                      |     3 +
>>  MdeModulePkg/MdeModulePkg.dsc                      |     1 +
>>  115 files changed, 60196 insertions(+)
>>  create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
>>  create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/common/constants.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/common/dictionary.c
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/common/dictionary.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/common/port.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/common/types.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/transform.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-
>> comparison-study-2015-09-22.pdf
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/backward_references.c
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/backward_references.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/command.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/compressor.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
>>  create mode 100644
>>
>BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.h
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.h
>>  create mode 100644
>> BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.h
>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/write_bits.h
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/version.h
>>  create mode 100644
>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecompre
>ss
>> Lib.inf
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
>>  create mode 100644
>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.un
>i
>>  create mode 100644
>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibInt
>er
>> nal.h
>>  create mode 100644
>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtractio
>n.
>> c
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
>>  create mode 100644
>> MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-
>comparison-
>> study-2015-09-22.pdf
>>
>> --
>> 2.10.2.windows.1
>>
>> _______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Michael Zimmermann 7 years ago
How can I use this? If I change my compressed FV's GUID to
3D532050-5CDA-4FD0-879E-0F7F630D5AFB I get the following error:

GenFds.py...
: error F003: No tool found with GUID 3D532050-5CDA-4FD0-879E-0F7F630D5AFB

Thanks
Michael

On Mon, Mar 27, 2017 at 5:15 AM, Gao, Liming <liming.gao@intel.com> wrote:
> Reviewed-by: Liming Gao <liming.gao@intel.com>
>
>>-----Original Message-----
>>From: Song, BinX
>>Sent: Thursday, March 23, 2017 2:05 PM
>>To: edk2-devel@lists.01.org
>>Cc: Gao, Liming <liming.gao@intel.com>
>>Subject: RE: [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm
>>support
>>
>>Hi All,
>>
>>The code is also in https://github.com/binxsong/edk2/tree/Brotli_V1
>>
>>Best Regards,
>>Bell Song
>>
>>> -----Original Message-----
>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
>>Song,
>>> BinX
>>> Sent: Thursday, March 23, 2017 10:16 AM
>>> To: edk2-devel@lists.01.org
>>> Cc: Gao, Liming <liming.gao@intel.com>
>>> Subject: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>>algorithm
>>> support
>>>
>>> Brotli algorithm was released on the website
>>https://github.com/google/brotli.
>>> It has a little less compress ratio than Lzma, but has better decompress
>>> performance than it.
>>> Add Brotli algorithm support, include Brotli decompression library and tool
>>set.
>>>
>>> Tested on:
>>> OS: Windows
>>> Arch: IA32/X64
>>> Platform: Nt32Pkg
>>> ToolChain: VS2015x86
>>> Target: Release
>>>
>>> OS: Ubuntu
>>> Arch: IA32/X64
>>> Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
>>> ToolChain: GCC5
>>> Target: Release
>>>
>>> Cc: Liming Gao <liming.gao@intel.com>
>>> Contributed-under: TianoCore Contribution Agreement 1.0
>>> Signed-off-by: Bell Song <binx.song@intel.com>
>>>
>>> Bell Song (4):
>>>   MdeModulePkg: Copy Brotli algorithm 3rd party source code for library
>>>   MdeModulePkg: Add Brotli algorithm decompression library
>>>   BaseTools: Copy Brotli algorithm 3rd party source code for tool
>>>   BaseTools: Add Brotli algorithm tool
>>>
>>>  BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
>>>  BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
>>>  BaseTools/Conf/tools_def.template                  |     6 +
>>>  .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
>>>  BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
>>>  BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
>>>  BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
>>>  BaseTools/Source/C/BrotliCompress/README.md        |    26 +
>>>  BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
>>>  .../Source/C/BrotliCompress/common/constants.h     |    47 +
>>>  .../Source/C/BrotliCompress/common/dictionary.c    |  9474
>>> ++++++++++++++++
>>>  .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
>>>  BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
>>>  BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
>>>  BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
>>>  BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
>>>  BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
>>>  BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
>>>  BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
>>>  BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
>>>  BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
>>>  BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
>>>  .../C/BrotliCompress/enc/backward_references.c     |   892 ++
>>>  .../C/BrotliCompress/enc/backward_references.h     |    99 +
>>>  .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
>>>  .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
>>>  .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
>>>  .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
>>>  .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
>>>  .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
>>>  .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
>>>  .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
>>>  .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
>>>  BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
>>>  .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
>>>  .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
>>>  .../enc/compress_fragment_two_pass.c               |   557 +
>>>  .../enc/compress_fragment_two_pass.h               |    51 +
>>>  BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
>>>  BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
>>>  .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
>>>  BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
>>>  BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
>>>  .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
>>>  .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
>>>  .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
>>>  .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
>>>  BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
>>>  .../C/BrotliCompress/enc/find_match_length.h       |    80 +
>>>  BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
>>>  .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
>>>  .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
>>>  .../enc/hash_longest_match_quickly_inc.h           |   230 +
>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
>>>  .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
>>>  .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
>>>  .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
>>>  BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
>>>  BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
>>>  .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
>>>  BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
>>>  BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
>>>  BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
>>>  BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
>>>  .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
>>>  .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
>>>  .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241
>>> +++++++++++++++++++
>>>  BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
>>>  BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
>>>  BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
>>>  BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
>>>  BaseTools/Source/C/GNUmakefile                     |     1 +
>>>  BaseTools/Source/C/Makefile                        |     1 +
>>>  .../BrotliCustomDecompressLib.inf                  |    56 +
>>>  .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
>>>  .../BrotliDecompressLib.uni                        |    21 +
>>>  .../BrotliDecompressLibInternal.h                  |    71 +
>>>  .../GuidedSectionExtraction.c                      |   196 +
>>>  .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
>>>  .../Library/BrotliCustomDecompressLib/README.md    |    26 +
>>>  .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
>>>  .../BrotliCustomDecompressLib/common/constants.h   |    47 +
>>>  .../BrotliCustomDecompressLib/common/dictionary.c  |  9474
>>> ++++++++++++++++
>>>  .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
>>>  .../BrotliCustomDecompressLib/common/port.h        |   107 +
>>>  .../BrotliCustomDecompressLib/common/types.h       |    72 +
>>>  .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
>>>  .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
>>>  .../BrotliCustomDecompressLib/dec/context.h        |   251 +
>>>  .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
>>>  .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
>>>  .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
>>>  .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
>>>  .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
>>>  .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
>>>  .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
>>>  .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
>>>  .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208 bytes
>>>  MdeModulePkg/MdeModulePkg.dec                      |     3 +
>>>  MdeModulePkg/MdeModulePkg.dsc                      |     1 +
>>>  115 files changed, 60196 insertions(+)
>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/common/constants.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/common/dictionary.c
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/common/dictionary.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/common/port.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/common/types.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/transform.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-
>>> comparison-study-2015-09-22.pdf
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.c
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/command.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/compressor.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
>>>  create mode 100644
>>>
>>BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/histogram.h
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/metablock.h
>>>  create mode 100644
>>> BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/static_dict.h
>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/write_bits.h
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/version.h
>>>  create mode 100644
>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecompre
>>ss
>>> Lib.inf
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
>>>  create mode 100644
>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.un
>>i
>>>  create mode 100644
>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibInt
>>er
>>> nal.h
>>>  create mode 100644
>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtractio
>>n.
>>> c
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
>>>  create mode 100644
>>> MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-
>>comparison-
>>> study-2015-09-22.pdf
>>>
>>> --
>>> 2.10.2.windows.1
>>>
>>> _______________________________________________
>>> edk2-devel mailing list
>>> edk2-devel@lists.01.org
>>> https://lists.01.org/mailman/listinfo/edk2-devel
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Gao, Liming 7 years ago
Michasel:
  Please delete cache Conf/tools_def.txt, and run edksetup again to apply new tools_def.txt. 

Thanks
Liming
>-----Original Message-----
>From: Michael Zimmermann [mailto:sigmaepsilon92@gmail.com]
>Sent: Thursday, March 30, 2017 5:04 AM
>To: Gao, Liming <liming.gao@intel.com>
>Cc: Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
>Subject: Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>algorithm support
>
>How can I use this? If I change my compressed FV's GUID to
>3D532050-5CDA-4FD0-879E-0F7F630D5AFB I get the following error:
>
>GenFds.py...
>: error F003: No tool found with GUID 3D532050-5CDA-4FD0-879E-
>0F7F630D5AFB
>
>Thanks
>Michael
>
>On Mon, Mar 27, 2017 at 5:15 AM, Gao, Liming <liming.gao@intel.com> wrote:
>> Reviewed-by: Liming Gao <liming.gao@intel.com>
>>
>>>-----Original Message-----
>>>From: Song, BinX
>>>Sent: Thursday, March 23, 2017 2:05 PM
>>>To: edk2-devel@lists.01.org
>>>Cc: Gao, Liming <liming.gao@intel.com>
>>>Subject: RE: [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm
>>>support
>>>
>>>Hi All,
>>>
>>>The code is also in https://github.com/binxsong/edk2/tree/Brotli_V1
>>>
>>>Best Regards,
>>>Bell Song
>>>
>>>> -----Original Message-----
>>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
>>>Song,
>>>> BinX
>>>> Sent: Thursday, March 23, 2017 10:16 AM
>>>> To: edk2-devel@lists.01.org
>>>> Cc: Gao, Liming <liming.gao@intel.com>
>>>> Subject: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>>>algorithm
>>>> support
>>>>
>>>> Brotli algorithm was released on the website
>>>https://github.com/google/brotli.
>>>> It has a little less compress ratio than Lzma, but has better decompress
>>>> performance than it.
>>>> Add Brotli algorithm support, include Brotli decompression library and tool
>>>set.
>>>>
>>>> Tested on:
>>>> OS: Windows
>>>> Arch: IA32/X64
>>>> Platform: Nt32Pkg
>>>> ToolChain: VS2015x86
>>>> Target: Release
>>>>
>>>> OS: Ubuntu
>>>> Arch: IA32/X64
>>>> Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
>>>> ToolChain: GCC5
>>>> Target: Release
>>>>
>>>> Cc: Liming Gao <liming.gao@intel.com>
>>>> Contributed-under: TianoCore Contribution Agreement 1.0
>>>> Signed-off-by: Bell Song <binx.song@intel.com>
>>>>
>>>> Bell Song (4):
>>>>   MdeModulePkg: Copy Brotli algorithm 3rd party source code for library
>>>>   MdeModulePkg: Add Brotli algorithm decompression library
>>>>   BaseTools: Copy Brotli algorithm 3rd party source code for tool
>>>>   BaseTools: Add Brotli algorithm tool
>>>>
>>>>  BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
>>>>  BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
>>>>  BaseTools/Conf/tools_def.template                  |     6 +
>>>>  .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
>>>>  BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
>>>>  BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
>>>>  BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
>>>>  BaseTools/Source/C/BrotliCompress/README.md        |    26 +
>>>>  BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
>>>>  .../Source/C/BrotliCompress/common/constants.h     |    47 +
>>>>  .../Source/C/BrotliCompress/common/dictionary.c    |  9474
>>>> ++++++++++++++++
>>>>  .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
>>>>  BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
>>>>  BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
>>>>  BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
>>>>  BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
>>>>  BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
>>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208
>bytes
>>>>  .../C/BrotliCompress/enc/backward_references.c     |   892 ++
>>>>  .../C/BrotliCompress/enc/backward_references.h     |    99 +
>>>>  .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
>>>>  .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
>>>>  .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
>>>>  .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
>>>>  .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
>>>>  .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
>>>>  .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
>>>>  .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
>>>>  .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
>>>>  .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
>>>>  .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
>>>>  .../enc/compress_fragment_two_pass.c               |   557 +
>>>>  .../enc/compress_fragment_two_pass.h               |    51 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
>>>>  .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
>>>>  BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
>>>>  BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
>>>>  .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
>>>>  .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
>>>>  .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
>>>>  .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
>>>>  .../C/BrotliCompress/enc/find_match_length.h       |    80 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
>>>>  .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
>>>>  .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
>>>>  .../enc/hash_longest_match_quickly_inc.h           |   230 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
>>>>  .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
>>>>  .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
>>>>  .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
>>>>  .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
>>>>  .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
>>>>  .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
>>>>  .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241
>>>> +++++++++++++++++++
>>>>  BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
>>>>  BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
>>>>  BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
>>>>  BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
>>>>  BaseTools/Source/C/GNUmakefile                     |     1 +
>>>>  BaseTools/Source/C/Makefile                        |     1 +
>>>>  .../BrotliCustomDecompressLib.inf                  |    56 +
>>>>  .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
>>>>  .../BrotliDecompressLib.uni                        |    21 +
>>>>  .../BrotliDecompressLibInternal.h                  |    71 +
>>>>  .../GuidedSectionExtraction.c                      |   196 +
>>>>  .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
>>>>  .../Library/BrotliCustomDecompressLib/README.md    |    26 +
>>>>  .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
>>>>  .../BrotliCustomDecompressLib/common/constants.h   |    47 +
>>>>  .../BrotliCustomDecompressLib/common/dictionary.c  |  9474
>>>> ++++++++++++++++
>>>>  .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
>>>>  .../BrotliCustomDecompressLib/common/port.h        |   107 +
>>>>  .../BrotliCustomDecompressLib/common/types.h       |    72 +
>>>>  .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
>>>>  .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
>>>>  .../BrotliCustomDecompressLib/dec/context.h        |   251 +
>>>>  .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
>>>>  .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
>>>>  .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
>>>>  .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
>>>>  .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
>>>>  .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
>>>>  .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
>>>>  .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
>>>>  .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
>>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208
>bytes
>>>>  MdeModulePkg/MdeModulePkg.dec                      |     3 +
>>>>  MdeModulePkg/MdeModulePkg.dsc                      |     1 +
>>>>  115 files changed, 60196 insertions(+)
>>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
>>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/common/constants.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/common/dictionary.c
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/common/dictionary.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/common/port.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/common/types.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/huffman.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/transform.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-
>>>> comparison-study-2015-09-22.pdf
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.c
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/command.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
>>>>  create mode 100644
>>>>
>BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
>>>>  create mode 100644
>>>>
>BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/compressor.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
>>>>  create mode 100644
>>>>
>>>BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc
>.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/histogram.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/histogram.h
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/metablock.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/metablock.h
>>>>  create mode 100644
>>>> BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/static_dict.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/static_dict.h
>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/write_bits.h
>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/tools/version.h
>>>>  create mode 100644
>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecomp
>re
>>>ss
>>>> Lib.inf
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
>>>>  create mode 100644
>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.
>un
>>>i
>>>>  create mode 100644
>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibI
>nt
>>>er
>>>> nal.h
>>>>  create mode 100644
>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtrac
>tio
>>>n.
>>>> c
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
>>>>  create mode 100644
>>>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
>>>>  create mode 100644
>>>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
>>>>  create mode 100644
>>>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
>>>>  create mode 100644
>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-
>>>comparison-
>>>> study-2015-09-22.pdf
>>>>
>>>> --
>>>> 2.10.2.windows.1
>>>>
>>>> _______________________________________________
>>>> edk2-devel mailing list
>>>> edk2-devel@lists.01.org
>>>> https://lists.01.org/mailman/listinfo/edk2-devel
>> _______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Michael Zimmermann 7 years ago
Thanks you that worked. (sorry that I forgot about that)
There were three things I had to workaround:

1) since I'm using -nostdinc I had to remove the sys/types.h include
from MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h and
use BOOLEAN, TRUE and FALSE instead of bool, true and false.

2) I had to chmod +x Brotli and BrotliCompress because basetools forgot that

3) I had to run dos2unix on Brotli and BrotliCompress because bash
doesn't support CRLF line endings.

Thanks
Michael

On Thu, Mar 30, 2017 at 6:45 AM, Gao, Liming <liming.gao@intel.com> wrote:
> Michasel:
>   Please delete cache Conf/tools_def.txt, and run edksetup again to apply new tools_def.txt.
>
> Thanks
> Liming
>>-----Original Message-----
>>From: Michael Zimmermann [mailto:sigmaepsilon92@gmail.com]
>>Sent: Thursday, March 30, 2017 5:04 AM
>>To: Gao, Liming <liming.gao@intel.com>
>>Cc: Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
>>Subject: Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>>algorithm support
>>
>>How can I use this? If I change my compressed FV's GUID to
>>3D532050-5CDA-4FD0-879E-0F7F630D5AFB I get the following error:
>>
>>GenFds.py...
>>: error F003: No tool found with GUID 3D532050-5CDA-4FD0-879E-
>>0F7F630D5AFB
>>
>>Thanks
>>Michael
>>
>>On Mon, Mar 27, 2017 at 5:15 AM, Gao, Liming <liming.gao@intel.com> wrote:
>>> Reviewed-by: Liming Gao <liming.gao@intel.com>
>>>
>>>>-----Original Message-----
>>>>From: Song, BinX
>>>>Sent: Thursday, March 23, 2017 2:05 PM
>>>>To: edk2-devel@lists.01.org
>>>>Cc: Gao, Liming <liming.gao@intel.com>
>>>>Subject: RE: [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm
>>>>support
>>>>
>>>>Hi All,
>>>>
>>>>The code is also in https://github.com/binxsong/edk2/tree/Brotli_V1
>>>>
>>>>Best Regards,
>>>>Bell Song
>>>>
>>>>> -----Original Message-----
>>>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
>>>>Song,
>>>>> BinX
>>>>> Sent: Thursday, March 23, 2017 10:16 AM
>>>>> To: edk2-devel@lists.01.org
>>>>> Cc: Gao, Liming <liming.gao@intel.com>
>>>>> Subject: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>>>>algorithm
>>>>> support
>>>>>
>>>>> Brotli algorithm was released on the website
>>>>https://github.com/google/brotli.
>>>>> It has a little less compress ratio than Lzma, but has better decompress
>>>>> performance than it.
>>>>> Add Brotli algorithm support, include Brotli decompression library and tool
>>>>set.
>>>>>
>>>>> Tested on:
>>>>> OS: Windows
>>>>> Arch: IA32/X64
>>>>> Platform: Nt32Pkg
>>>>> ToolChain: VS2015x86
>>>>> Target: Release
>>>>>
>>>>> OS: Ubuntu
>>>>> Arch: IA32/X64
>>>>> Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
>>>>> ToolChain: GCC5
>>>>> Target: Release
>>>>>
>>>>> Cc: Liming Gao <liming.gao@intel.com>
>>>>> Contributed-under: TianoCore Contribution Agreement 1.0
>>>>> Signed-off-by: Bell Song <binx.song@intel.com>
>>>>>
>>>>> Bell Song (4):
>>>>>   MdeModulePkg: Copy Brotli algorithm 3rd party source code for library
>>>>>   MdeModulePkg: Add Brotli algorithm decompression library
>>>>>   BaseTools: Copy Brotli algorithm 3rd party source code for tool
>>>>>   BaseTools: Add Brotli algorithm tool
>>>>>
>>>>>  BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
>>>>>  BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
>>>>>  BaseTools/Conf/tools_def.template                  |     6 +
>>>>>  .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
>>>>>  BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
>>>>>  BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
>>>>>  BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
>>>>>  BaseTools/Source/C/BrotliCompress/README.md        |    26 +
>>>>>  BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
>>>>>  .../Source/C/BrotliCompress/common/constants.h     |    47 +
>>>>>  .../Source/C/BrotliCompress/common/dictionary.c    |  9474
>>>>> ++++++++++++++++
>>>>>  .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
>>>>>  BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
>>>>>  BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
>>>>>  BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
>>>>>  BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
>>>>>  BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
>>>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208
>>bytes
>>>>>  .../C/BrotliCompress/enc/backward_references.c     |   892 ++
>>>>>  .../C/BrotliCompress/enc/backward_references.h     |    99 +
>>>>>  .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
>>>>>  .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
>>>>>  .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
>>>>>  .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
>>>>>  .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
>>>>>  .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
>>>>>  .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
>>>>>  .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
>>>>>  .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
>>>>>  .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
>>>>>  .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
>>>>>  .../enc/compress_fragment_two_pass.c               |   557 +
>>>>>  .../enc/compress_fragment_two_pass.h               |    51 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
>>>>>  .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
>>>>>  BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
>>>>>  BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
>>>>>  .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
>>>>>  .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
>>>>>  .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
>>>>>  .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
>>>>>  .../C/BrotliCompress/enc/find_match_length.h       |    80 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
>>>>>  .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
>>>>>  .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
>>>>>  .../enc/hash_longest_match_quickly_inc.h           |   230 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
>>>>>  .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
>>>>>  .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
>>>>>  .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
>>>>>  .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
>>>>>  .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
>>>>>  .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
>>>>>  .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241
>>>>> +++++++++++++++++++
>>>>>  BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
>>>>>  BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
>>>>>  BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
>>>>>  BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
>>>>>  BaseTools/Source/C/GNUmakefile                     |     1 +
>>>>>  BaseTools/Source/C/Makefile                        |     1 +
>>>>>  .../BrotliCustomDecompressLib.inf                  |    56 +
>>>>>  .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
>>>>>  .../BrotliDecompressLib.uni                        |    21 +
>>>>>  .../BrotliDecompressLibInternal.h                  |    71 +
>>>>>  .../GuidedSectionExtraction.c                      |   196 +
>>>>>  .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
>>>>>  .../Library/BrotliCustomDecompressLib/README.md    |    26 +
>>>>>  .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
>>>>>  .../BrotliCustomDecompressLib/common/constants.h   |    47 +
>>>>>  .../BrotliCustomDecompressLib/common/dictionary.c  |  9474
>>>>> ++++++++++++++++
>>>>>  .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
>>>>>  .../BrotliCustomDecompressLib/common/port.h        |   107 +
>>>>>  .../BrotliCustomDecompressLib/common/types.h       |    72 +
>>>>>  .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
>>>>>  .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
>>>>>  .../BrotliCustomDecompressLib/dec/context.h        |   251 +
>>>>>  .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
>>>>>  .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
>>>>>  .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
>>>>>  .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
>>>>>  .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
>>>>>  .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
>>>>>  .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
>>>>>  .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
>>>>>  .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
>>>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208
>>bytes
>>>>>  MdeModulePkg/MdeModulePkg.dec                      |     3 +
>>>>>  MdeModulePkg/MdeModulePkg.dsc                      |     1 +
>>>>>  115 files changed, 60196 insertions(+)
>>>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
>>>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/BrotliCompress
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/GNUmakefile
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/README.md
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/common/constants.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/common/dictionary.c
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/common/dictionary.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/common/port.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/common/types.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/context.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/decode.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/huffman.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/dec/huffman.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/dec/transform.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-
>>>>> comparison-study-2015-09-22.pdf
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.c
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/cluster.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/command.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
>>>>>  create mode 100644
>>>>>
>>BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
>>>>>  create mode 100644
>>>>>
>>BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/enc/compressor.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/context.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/encode.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/fast_log.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
>>>>>  create mode 100644
>>>>>
>>>>BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_inc
>>.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/histogram.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/histogram.h
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/memory.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/metablock.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/metablock.h
>>>>>  create mode 100644
>>>>> BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/quality.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/static_dict.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/static_dict.h
>>>>>  create mode 100644
>>>>BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/streams.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/enc/write_bits.h
>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
>>>>>  create mode 100644
>>BaseTools/Source/C/BrotliCompress/tools/version.h
>>>>>  create mode 100644
>>>>>
>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDecomp
>>re
>>>>ss
>>>>> Lib.inf
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
>>>>>  create mode 100644
>>>>>
>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLib.
>>un
>>>>i
>>>>>  create mode 100644
>>>>>
>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibI
>>nt
>>>>er
>>>>> nal.h
>>>>>  create mode 100644
>>>>>
>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtrac
>>tio
>>>>n.
>>>>> c
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
>>>>>  create mode 100644
>>>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.h
>>>>>  create mode 100644
>>>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
>>>>>  create mode 100644
>>>>>
>>MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
>>>>>  create mode 100644
>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-
>>>>comparison-
>>>>> study-2015-09-22.pdf
>>>>>
>>>>> --
>>>>> 2.10.2.windows.1
>>>>>
>>>>> _______________________________________________
>>>>> edk2-devel mailing list
>>>>> edk2-devel@lists.01.org
>>>>> https://lists.01.org/mailman/listinfo/edk2-devel
>>> _______________________________________________
>>> edk2-devel mailing list
>>> edk2-devel@lists.01.org
>>> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli algorithm support
Posted by Gao, Liming 7 years ago
Michael:
  Thanks for point. I will create the patch to fix 2&3. For 1, I am not sure whether there is generic way to handle it. 

Thanks
Liming
>-----Original Message-----
>From: Michael Zimmermann [mailto:sigmaepsilon92@gmail.com]
>Sent: Thursday, March 30, 2017 1:13 PM
>To: Gao, Liming <liming.gao@intel.com>
>Cc: Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
>Subject: Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>algorithm support
>
>Thanks you that worked. (sorry that I forgot about that)
>There were three things I had to workaround:
>
>1) since I'm using -nostdinc I had to remove the sys/types.h include
>from MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>and
>use BOOLEAN, TRUE and FALSE instead of bool, true and false.
>
>2) I had to chmod +x Brotli and BrotliCompress because basetools forgot that
>
>3) I had to run dos2unix on Brotli and BrotliCompress because bash
>doesn't support CRLF line endings.
>
>Thanks
>Michael
>
>On Thu, Mar 30, 2017 at 6:45 AM, Gao, Liming <liming.gao@intel.com> wrote:
>> Michasel:
>>   Please delete cache Conf/tools_def.txt, and run edksetup again to apply
>new tools_def.txt.
>>
>> Thanks
>> Liming
>>>-----Original Message-----
>>>From: Michael Zimmermann [mailto:sigmaepsilon92@gmail.com]
>>>Sent: Thursday, March 30, 2017 5:04 AM
>>>To: Gao, Liming <liming.gao@intel.com>
>>>Cc: Song, BinX <binx.song@intel.com>; edk2-devel@lists.01.org
>>>Subject: Re: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>>>algorithm support
>>>
>>>How can I use this? If I change my compressed FV's GUID to
>>>3D532050-5CDA-4FD0-879E-0F7F630D5AFB I get the following error:
>>>
>>>GenFds.py...
>>>: error F003: No tool found with GUID 3D532050-5CDA-4FD0-879E-
>>>0F7F630D5AFB
>>>
>>>Thanks
>>>Michael
>>>
>>>On Mon, Mar 27, 2017 at 5:15 AM, Gao, Liming <liming.gao@intel.com>
>wrote:
>>>> Reviewed-by: Liming Gao <liming.gao@intel.com>
>>>>
>>>>>-----Original Message-----
>>>>>From: Song, BinX
>>>>>Sent: Thursday, March 23, 2017 2:05 PM
>>>>>To: edk2-devel@lists.01.org
>>>>>Cc: Gao, Liming <liming.gao@intel.com>
>>>>>Subject: RE: [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>algorithm
>>>>>support
>>>>>
>>>>>Hi All,
>>>>>
>>>>>The code is also in https://github.com/binxsong/edk2/tree/Brotli_V1
>>>>>
>>>>>Best Regards,
>>>>>Bell Song
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf
>Of
>>>>>Song,
>>>>>> BinX
>>>>>> Sent: Thursday, March 23, 2017 10:16 AM
>>>>>> To: edk2-devel@lists.01.org
>>>>>> Cc: Gao, Liming <liming.gao@intel.com>
>>>>>> Subject: [edk2] [PATCH 0/4] MdeModulePkg/BaseTools: Add Brotli
>>>>>algorithm
>>>>>> support
>>>>>>
>>>>>> Brotli algorithm was released on the website
>>>>>https://github.com/google/brotli.
>>>>>> It has a little less compress ratio than Lzma, but has better decompress
>>>>>> performance than it.
>>>>>> Add Brotli algorithm support, include Brotli decompression library and
>tool
>>>>>set.
>>>>>>
>>>>>> Tested on:
>>>>>> OS: Windows
>>>>>> Arch: IA32/X64
>>>>>> Platform: Nt32Pkg
>>>>>> ToolChain: VS2015x86
>>>>>> Target: Release
>>>>>>
>>>>>> OS: Ubuntu
>>>>>> Arch: IA32/X64
>>>>>> Platform: OvmfPkgIa32.dsc/OvmfPkgX64.dsc
>>>>>> ToolChain: GCC5
>>>>>> Target: Release
>>>>>>
>>>>>> Cc: Liming Gao <liming.gao@intel.com>
>>>>>> Contributed-under: TianoCore Contribution Agreement 1.0
>>>>>> Signed-off-by: Bell Song <binx.song@intel.com>
>>>>>>
>>>>>> Bell Song (4):
>>>>>>   MdeModulePkg: Copy Brotli algorithm 3rd party source code for
>library
>>>>>>   MdeModulePkg: Add Brotli algorithm decompression library
>>>>>>   BaseTools: Copy Brotli algorithm 3rd party source code for tool
>>>>>>   BaseTools: Add Brotli algorithm tool
>>>>>>
>>>>>>  BaseTools/BinWrappers/PosixLike/Brotli             |    29 +
>>>>>>  BaseTools/BinWrappers/PosixLike/BrotliCompress     |    42 +
>>>>>>  BaseTools/Conf/tools_def.template                  |     6 +
>>>>>>  .../Source/C/BrotliCompress/BrotliCompress.bat     |    48 +
>>>>>>  BaseTools/Source/C/BrotliCompress/GNUmakefile      |    43 +
>>>>>>  BaseTools/Source/C/BrotliCompress/LICENSE          |    19 +
>>>>>>  BaseTools/Source/C/BrotliCompress/Makefile         |    60 +
>>>>>>  BaseTools/Source/C/BrotliCompress/README.md        |    26 +
>>>>>>  BaseTools/Source/C/BrotliCompress/ReadMe.txt       |     2 +
>>>>>>  .../Source/C/BrotliCompress/common/constants.h     |    47 +
>>>>>>  .../Source/C/BrotliCompress/common/dictionary.c    |  9474
>>>>>> ++++++++++++++++
>>>>>>  .../Source/C/BrotliCompress/common/dictionary.h    |    29 +
>>>>>>  BaseTools/Source/C/BrotliCompress/common/port.h    |   107 +
>>>>>>  BaseTools/Source/C/BrotliCompress/common/types.h   |    58 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.c |    48 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/bit_reader.h |   383 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/context.h    |   251 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/decode.c     |  2347 ++++
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/decode.h     |   188 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.c    |   357 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/huffman.h    |    68 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/port.h       |   159 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/prefix.h     |   751 ++
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/state.c      |   168 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/state.h      |   246 +
>>>>>>  BaseTools/Source/C/BrotliCompress/dec/transform.h  |   300 +
>>>>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208
>>>bytes
>>>>>>  .../C/BrotliCompress/enc/backward_references.c     |   892 ++
>>>>>>  .../C/BrotliCompress/enc/backward_references.h     |    99 +
>>>>>>  .../C/BrotliCompress/enc/backward_references_inc.h |   147 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.c   |    35 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/bit_cost.h   |    63 +
>>>>>>  .../Source/C/BrotliCompress/enc/bit_cost_inc.h     |   127 +
>>>>>>  .../C/BrotliCompress/enc/block_encoder_inc.h       |    33 +
>>>>>>  .../Source/C/BrotliCompress/enc/block_splitter.c   |   197 +
>>>>>>  .../Source/C/BrotliCompress/enc/block_splitter.h   |    51 +
>>>>>>  .../C/BrotliCompress/enc/block_splitter_inc.h      |   432 +
>>>>>>  .../C/BrotliCompress/enc/brotli_bit_stream.c       |  1334 +++
>>>>>>  .../C/BrotliCompress/enc/brotli_bit_stream.h       |   107 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.c    |    56 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/cluster.h    |    48 +
>>>>>>  .../Source/C/BrotliCompress/enc/cluster_inc.h      |   315 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/command.h    |   163 +
>>>>>>  .../C/BrotliCompress/enc/compress_fragment.c       |   747 ++
>>>>>>  .../C/BrotliCompress/enc/compress_fragment.h       |    58 +
>>>>>>  .../enc/compress_fragment_two_pass.c               |   557 +
>>>>>>  .../enc/compress_fragment_two_pass.h               |    51 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/compressor.h |   161 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/context.h    |   184 +
>>>>>>  .../Source/C/BrotliCompress/enc/dictionary_hash.h  |  4121 +++++++
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/encode.c     |  1562 +++
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/encode.h     |   221 +
>>>>>>  .../Source/C/BrotliCompress/enc/encode_parallel.h  |    27 +
>>>>>>  .../Source/C/BrotliCompress/enc/entropy_encode.c   |   501 +
>>>>>>  .../Source/C/BrotliCompress/enc/entropy_encode.h   |   122 +
>>>>>>  .../C/BrotliCompress/enc/entropy_encode_static.h   |   539 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/fast_log.h   |   145 +
>>>>>>  .../C/BrotliCompress/enc/find_match_length.h       |    80 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/hash.h       |   717 ++
>>>>>>  .../BrotliCompress/enc/hash_forgetful_chain_inc.h  |   249 +
>>>>>>  .../C/BrotliCompress/enc/hash_longest_match_inc.h  |   241 +
>>>>>>  .../enc/hash_longest_match_quickly_inc.h           |   230 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.c  |    95 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/histogram.h  |    60 +
>>>>>>  .../Source/C/BrotliCompress/enc/histogram_inc.h    |    51 +
>>>>>>  .../Source/C/BrotliCompress/enc/literal_cost.c     |   178 +
>>>>>>  .../Source/C/BrotliCompress/enc/literal_cost.h     |    30 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/memory.c     |   181 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/memory.h     |    62 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.c  |   515 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/metablock.h  |   110 +
>>>>>>  .../Source/C/BrotliCompress/enc/metablock_inc.h    |   183 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/port.h       |   168 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/prefix.h     |    52 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/quality.h    |   130 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h |   160 +
>>>>>>  .../Source/C/BrotliCompress/enc/static_dict.c      |   478 +
>>>>>>  .../Source/C/BrotliCompress/enc/static_dict.h      |    37 +
>>>>>>  .../Source/C/BrotliCompress/enc/static_dict_lut.h  | 11241
>>>>>> +++++++++++++++++++
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/streams.h    |   121 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.c  |    85 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/utf8_util.h  |    32 +
>>>>>>  BaseTools/Source/C/BrotliCompress/enc/write_bits.h |    90 +
>>>>>>  BaseTools/Source/C/BrotliCompress/tools/bro.c      |   538 +
>>>>>>  BaseTools/Source/C/BrotliCompress/tools/version.h  |    14 +
>>>>>>  BaseTools/Source/C/GNUmakefile                     |     1 +
>>>>>>  BaseTools/Source/C/Makefile                        |     1 +
>>>>>>  .../BrotliCustomDecompressLib.inf                  |    56 +
>>>>>>  .../BrotliCustomDecompressLib/BrotliDecompress.c   |   321 +
>>>>>>  .../BrotliDecompressLib.uni                        |    21 +
>>>>>>  .../BrotliDecompressLibInternal.h                  |    71 +
>>>>>>  .../GuidedSectionExtraction.c                      |   196 +
>>>>>>  .../Library/BrotliCustomDecompressLib/LICENSE      |    19 +
>>>>>>  .../Library/BrotliCustomDecompressLib/README.md    |    26 +
>>>>>>  .../Library/BrotliCustomDecompressLib/ReadMe.txt   |     2 +
>>>>>>  .../BrotliCustomDecompressLib/common/constants.h   |    47 +
>>>>>>  .../BrotliCustomDecompressLib/common/dictionary.c  |  9474
>>>>>> ++++++++++++++++
>>>>>>  .../BrotliCustomDecompressLib/common/dictionary.h  |    29 +
>>>>>>  .../BrotliCustomDecompressLib/common/port.h        |   107 +
>>>>>>  .../BrotliCustomDecompressLib/common/types.h       |    72 +
>>>>>>  .../BrotliCustomDecompressLib/dec/bit_reader.c     |    48 +
>>>>>>  .../BrotliCustomDecompressLib/dec/bit_reader.h     |   384 +
>>>>>>  .../BrotliCustomDecompressLib/dec/context.h        |   251 +
>>>>>>  .../Library/BrotliCustomDecompressLib/dec/decode.c |  2348 ++++
>>>>>>  .../Library/BrotliCustomDecompressLib/dec/decode.h |   188 +
>>>>>>  .../BrotliCustomDecompressLib/dec/huffman.c        |   357 +
>>>>>>  .../BrotliCustomDecompressLib/dec/huffman.h        |    69 +
>>>>>>  .../Library/BrotliCustomDecompressLib/dec/port.h   |   159 +
>>>>>>  .../Library/BrotliCustomDecompressLib/dec/prefix.h |   751 ++
>>>>>>  .../Library/BrotliCustomDecompressLib/dec/state.c  |   169 +
>>>>>>  .../Library/BrotliCustomDecompressLib/dec/state.h  |   246 +
>>>>>>  .../BrotliCustomDecompressLib/dec/transform.h      |   300 +
>>>>>>  .../docs/brotli-comparison-study-2015-09-22.pdf    |   Bin 0 -> 215208
>>>bytes
>>>>>>  MdeModulePkg/MdeModulePkg.dec                      |     3 +
>>>>>>  MdeModulePkg/MdeModulePkg.dsc                      |     1 +
>>>>>>  115 files changed, 60196 insertions(+)
>>>>>>  create mode 100644 BaseTools/BinWrappers/PosixLike/Brotli
>>>>>>  create mode 100644
>BaseTools/BinWrappers/PosixLike/BrotliCompress
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/BrotliCompress.bat
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/GNUmakefile
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/LICENSE
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/Makefile
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/README.md
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/ReadMe.txt
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/common/constants.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/common/dictionary.c
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/common/dictionary.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/common/port.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/common/types.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/dec/bit_reader.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/dec/bit_reader.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/context.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/decode.c
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/decode.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/dec/huffman.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/dec/huffman.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/port.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/prefix.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.c
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/dec/state.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/dec/transform.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/docs/brotli-
>>>>>> comparison-study-2015-09-22.pdf
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.c
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/backward_references_inc.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/bit_cost.c
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/bit_cost.h
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/enc/bit_cost_inc.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/block_encoder_inc.h
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.c
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/enc/block_splitter.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/block_splitter_inc.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.c
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/brotli_bit_stream.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/cluster.c
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/cluster.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/cluster_inc.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/command.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.c
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/compress_fragment.h
>>>>>>  create mode 100644
>>>>>>
>>>BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.c
>>>>>>  create mode 100644
>>>>>>
>>>BaseTools/Source/C/BrotliCompress/enc/compress_fragment_two_pass.h
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/enc/compressor.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/context.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/dictionary_hash.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/encode.c
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/encode.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/encode_parallel.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.c
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/entropy_encode_static.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/fast_log.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/find_match_length.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/hash.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/hash_forgetful_chain_inc.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_inc.h
>>>>>>  create mode 100644
>>>>>>
>>>>>BaseTools/Source/C/BrotliCompress/enc/hash_longest_match_quickly_
>inc
>>>.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/histogram.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/histogram.h
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/enc/histogram_inc.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/literal_cost.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/literal_cost.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/memory.c
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/memory.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/metablock.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/metablock.h
>>>>>>  create mode 100644
>>>>>> BaseTools/Source/C/BrotliCompress/enc/metablock_inc.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/port.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/enc/prefix.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/quality.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/ringbuffer.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/static_dict.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/static_dict.h
>>>>>>  create mode 100644
>>>>>BaseTools/Source/C/BrotliCompress/enc/static_dict_lut.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/streams.h
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/utf8_util.c
>>>>>>  create mode 100644
>BaseTools/Source/C/BrotliCompress/enc/utf8_util.h
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/enc/write_bits.h
>>>>>>  create mode 100644 BaseTools/Source/C/BrotliCompress/tools/bro.c
>>>>>>  create mode 100644
>>>BaseTools/Source/C/BrotliCompress/tools/version.h
>>>>>>  create mode 100644
>>>>>>
>>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliCustomDeco
>mp
>>>re
>>>>>ss
>>>>>> Lib.inf
>>>>>>  create mode 100644
>>>>>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompress.c
>>>>>>  create mode 100644
>>>>>>
>>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressL
>ib.
>>>un
>>>>>i
>>>>>>  create mode 100644
>>>>>>
>>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressL
>ibI
>>>nt
>>>>>er
>>>>>> nal.h
>>>>>>  create mode 100644
>>>>>>
>>>>>MdeModulePkg/Library/BrotliCustomDecompressLib/GuidedSectionExtr
>ac
>>>tio
>>>>>n.
>>>>>> c
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/README.md
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/ReadMe.txt
>>>>>>  create mode 100644
>>>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/common/constants.
>h
>>>>>>  create mode 100644
>>>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.c
>>>>>>  create mode 100644
>>>>>>
>>>MdeModulePkg/Library/BrotliCustomDecompressLib/common/dictionary.
>h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/common/port.h
>>>>>>  create mode 100644
>>>>>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/common/types.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.c
>>>>>>  create mode 100644
>>>>>>
>MdeModulePkg/Library/BrotliCustomDecompressLib/dec/bit_reader.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/context.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.c
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/decode.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.c
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/huffman.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/port.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/prefix.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.c
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/state.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/dec/transform.h
>>>>>>  create mode 100644
>>>>>> MdeModulePkg/Library/BrotliCustomDecompressLib/docs/brotli-
>>>>>comparison-
>>>>>> study-2015-09-22.pdf
>>>>>>
>>>>>> --
>>>>>> 2.10.2.windows.1
>>>>>>
>>>>>> _______________________________________________
>>>>>> edk2-devel mailing list
>>>>>> edk2-devel@lists.01.org
>>>>>> https://lists.01.org/mailman/listinfo/edk2-devel
>>>> _______________________________________________
>>>> edk2-devel mailing list
>>>> edk2-devel@lists.01.org
>>>> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel