<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/BaseTools/BinWrappers/WindowsLike, branch dependabot/github_actions/actions/github-script-9</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fgithub-script-9</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fgithub-script-9'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2022-05-06T04:22:21+00:00</updated>
<entry>
<title>BaseTools: Add FMMT Python Tool</title>
<updated>2022-05-06T04:22:21+00:00</updated>
<author>
<name>Chen, Christine</name>
<email>Yuwei.Chen@intel.com</email>
</author>
<published>2022-04-28T12:49:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=a64b944942d828fe98e4843929662aad7f47bcca'/>
<id>urn:sha1:a64b944942d828fe98e4843929662aad7f47bcca</id>
<content type='text'>
The FMMT python tool is used for firmware files operation, which has
the Fv/FFs-based 'View'&amp;'Add'&amp;'Delete'&amp;'Replace' operation function:

1.Parse a FD(Firmware Device) / FV(Firmware Volume) / FFS(Firmware Files)
2.Add a new FFS into a FV file (both included in a FD file or not)
3.Replace an FFS in a FV file with a new FFS file
4.Delete an FFS in a FV file (both included in a FD file or not)
5.Extract the FFS from a FV file (both included in a FD file or not)

This version of FMMT Python tool does not support PEIM rebase feature,
this feature will be added in future update.

Currently the FMMT C tool is saved in edk2-staging repo, but its
quality and coding style can't meet the Edk2 quality, which is hard to
maintain (Hard/Duplicate Code; Regression bugs; Restrict usage).

The new Python version keeps same functions with origin C version. It
has higher quality and better coding style, and it is much easier to
extend new functions and to maintain.

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1847
RFC Link: https://edk2.groups.io/g/devel/message/82877
Staging Link: https://github.com/tianocore/edk2-staging/tree/PyFMMT

Cc: Bob Feng &lt;bob.c.feng@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Signed-off-by: Yuwei Chen &lt;yuwei.chen@intel.com&gt;
Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
Acked-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>BaseTools: Use pip module if available, CI uses it by default</title>
<updated>2021-02-09T03:56:37+00:00</updated>
<author>
<name>Matthew Carlson</name>
<email>matthewfcarlson@gmail.com</email>
</author>
<published>2021-02-09T00:50:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=1534b6228b0932d745bf6ec9fd4cb010800b92f2'/>
<id>urn:sha1:1534b6228b0932d745bf6ec9fd4cb010800b92f2</id>
<content type='text'>
Use the new edk2-basetools pip module.
Includes a helpful message in setup to let users know which has been
selected.

Cc: Bob Feng &lt;bob.c.feng@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Yuwei Chen &lt;yuwei.chen@intel.com&gt;

Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
Reviewed-by: Yuwei &lt;Chen&lt;yuwei.chen@intel.com&gt;

Signed-off-by: Matthew Carlson &lt;matthewfcarlson@gmail.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Convert Split tool to python</title>
<updated>2021-01-21T10:19:09+00:00</updated>
<author>
<name>Bob Feng</name>
<email>bob.c.feng@intel.com</email>
</author>
<published>2021-01-13T03:12:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=5b4a97bbc39ed8e7eb50038b9cffe2e948e49995'/>
<id>urn:sha1:5b4a97bbc39ed8e7eb50038b9cffe2e948e49995</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3165

There are 2 reasons to convert Split tool from C to Python.
1. We are in the process of moving the Basetools Python code
to a separate repository. But there still are many C tools under
edk2/BaseTools. To make all Basetools be in the separate repo,
we can convert the C tools to Python tools.
2. The original Split tool is very slow. This python tool can reduce
90% time.

Signed-off-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Yuwei Chen &lt;yuwei.chen@intel.com&gt;

Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Reviewed-by: Yuwei Chen &lt;yuwei.chen@intel.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Fix BrotliCompress tool issue</title>
<updated>2020-11-13T06:23:56+00:00</updated>
<author>
<name>Yunhua Feng</name>
<email>fengyunhua@byosoft.com.cn</email>
</author>
<published>2020-11-10T02:41:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=662b42db76a5b195c3aa94ab2946e342a15cd185'/>
<id>urn:sha1:662b42db76a5b195c3aa94ab2946e342a15cd185</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2946

This is the regression issue in BaseTools BrotliCompress after Brotli
is changed to submodule. BrotliCompress should store the source size
and scratch buffer size into the header of the compressed binary data.
But now, BrotliCompress doesn't store them. So, BrotliDecompress
can't work.

To fix this issue, BrotliCompress tool main() function should be provided.
It needs to support the options of -e, -d, -o file, -g gap, -q level.

Cc: Bob Feng &lt;bob.c.feng@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Yuwei Chen &lt;yuwei.chen@intel.com&gt;
Signed-off-by: Yunhua Feng &lt;fengyunhua@byosoft.com.cn&gt;
Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>BaseTools: Rename AmlToHex script to AmlToC</title>
<updated>2020-07-02T10:09:17+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2020-07-01T14:06:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=88228db38ead6836da7a8d24e11569d5fab54c54'/>
<id>urn:sha1:88228db38ead6836da7a8d24e11569d5fab54c54</id>
<content type='text'>
The AmlToHex script and Posix/WindowsLike wrappers convert
an AML file to a .hex file, containing a C array storing
AML bytecode. This ".hex" file can then be included in a
C file, allowing to access the AML bytecode from this C
file.

The EDK2 build system doesn't allow to a depict dependency
orders between files of different languages. For instance,
in a module containing a ".c" file and a ".asl", the ".c"
file may or may not be built prior to the ".asl" file.
This prevents any inclusion of a generated ".hex" in a
".c" file since this later ".hex" file may or may not
have been created yet.

This patch renames the script as AmlToC. It is posted as
a separate patch to prevent git from seeing the renaming
as a deletion plus addition of a new file.
The ending line of the posix-like bin-wrapper script has
also been corrected.

This is a first step toward generating a C file containing
the AML bytecode from an ASL file. This C file will then
be handled by the EDK2 build system to generate an object
file.
Thus, no file inclusion will be required anymore. The C file
requiring the AML bytecode as a C array, and the ASL file,
will be compiled independently. The C array must be defined
as an external symbol. The linker is resolving the
reference to the C array symbol.

To summarize, the flow goes as:
 -1. ASL file is compiled to AML;
 -2. AML file is copied to a ".amli" intermediate file;
 -3. EDK2 build system applies the rule relevant to ".amli"
     files. This is, calling the "AmlToC" script, generating
     a C file from the ".amli" file;
 -4. EDK2 build system applies the rule relevant to C files.
     This is creating an object file.
 -5. EDK2 build system links the object file containing the
     AML bytecode with the object file requiring it.

Signed-off-by: Pierre Gondois &lt;Pierre.Gondois@arm.com&gt;
Suggested-by: Tomas Pilar &lt;Tomas.Pilar@arm.com&gt;

Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Script for converting .aml to .hex</title>
<updated>2020-02-06T13:52:11+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2020-02-05T14:52:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=1549651da623aa35c745bd1f283c907324bd6cc9'/>
<id>urn:sha1:1549651da623aa35c745bd1f283c907324bd6cc9</id>
<content type='text'>
The "-tc" option of the iasl compiler allows to generate a
.hex file containing a C array storing AML bytecode.

An online discussion suggested that this "-tc" option
was specific to the iasl compiler and it shouldn't be relied
on. This conversation is available at:
https://edk2.groups.io/g/devel/topic/39786201#49659

A way to address this issue is to implement a compiler
independent script that takes an AML file as input, and
generates a .hex file.

This patch implements a Python script that converts an AML
file to a .hex file, containing a C array storing AML bytecode.
This scipt has been tested with the AML output from the
following compilers supported by the EDKII implementation:
  * Intel ASL compiler
  * Microsoft ASL compiler

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Add YAML files with path env and tool extdeps</title>
<updated>2019-11-11T21:01:53+00:00</updated>
<author>
<name>Sean Brogan</name>
<email>sean.brogan@microsoft.com</email>
</author>
<published>2019-10-08T01:37:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=f7978bb25869408ab24673beb9f83d9b81f8061c'/>
<id>urn:sha1:f7978bb25869408ab24673beb9f83d9b81f8061c</id>
<content type='text'>
https://bugzilla.tianocore.org/show_bug.cgi?id=2315

Cc: Bob Feng &lt;bob.c.feng@intel.com&gt;
Cc: Liming Gao &lt;liming.gao@intel.com&gt;
Signed-off-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Replace BSD License with BSD+Patent License</title>
<updated>2019-04-09T16:10:20+00:00</updated>
<author>
<name>Michael D Kinney</name>
<email>michael.d.kinney@intel.com</email>
</author>
<published>2019-04-03T23:03:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=2e351cbe8e190271b3716284fc1076551d005472'/>
<id>urn:sha1:2e351cbe8e190271b3716284fc1076551d005472</id>
<content type='text'>
https://bugzilla.tianocore.org/show_bug.cgi?id=1373

Replace BSD 2-Clause License with BSD+Patent License.  This change is
based on the following emails:

  https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html
  https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html

RFCs with detailed process for the license change:

  V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html
  V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html
  V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Update PYTHON env to PYTHON_COMMAND</title>
<updated>2019-02-01T03:09:23+00:00</updated>
<author>
<name>Liming Gao</name>
<email>liming.gao@intel.com</email>
</author>
<published>2018-12-28T08:25:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=7aef7b7cbf16f79fb17c5ace98b1bc7f15bb90fa'/>
<id>urn:sha1:7aef7b7cbf16f79fb17c5ace98b1bc7f15bb90fa</id>
<content type='text'>
Update PYTHON env to PYTHON_COMMAND.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao &lt;liming.gao@intel.com&gt;
Tested-by: Laszlo Ersek &lt;lersek@redhat.com&gt;
Tested-by: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
</content>
</entry>
<entry>
<title>BaseTools: Update windows and linux run scripts file to use Python3</title>
<updated>2019-02-01T03:09:22+00:00</updated>
<author>
<name>Zhijux Fan</name>
<email>zhijux.fan@intel.com</email>
</author>
<published>2018-12-19T05:28:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=9c2d68c0a29909d23266395fc48d0b81b118e341'/>
<id>urn:sha1:9c2d68c0a29909d23266395fc48d0b81b118e341</id>
<content type='text'>
Modify windows script, PosixLike script, edksetup.sh, edksetup.bat to
use Python3 based on PYTHON3_ENABLE environment.

Cc: Bob Feng &lt;bob.c.feng@intel.com&gt;
Cc: Liming Gao &lt;liming.gao@intel.com&gt;
Cc: Yonghong Zhu &lt;yonghong.zhu@intel.com&gt;
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Zhiju.Fan &lt;zhijux.fan@intel.com&gt;
Tested-by: Laszlo Ersek &lt;lersek@redhat.com&gt;
Tested-by: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Reviewed-by: Liming Gao &lt;liming.gao@intel.com&gt;
Reviewed-by: Bob Feng &lt;bob.c.feng@intel.com&gt;
</content>
</entry>
</feed>
