diff options
author | Fan, ZhijuX <zhijux.fan@intel.com> | 2019-05-29 13:29:34 +0800 |
---|---|---|
committer | Feng, Bob C <bob.c.feng@intel.com> | 2019-06-10 19:48:50 +0800 |
commit | 04797875d1d53e53e31eca4fa01bc3cf6929f39c (patch) | |
tree | 4bdf17a9e6204e220b006499002f53587bd8bfc8 /BaseTools/Source/Python/GenFds/Section.py | |
parent | 6cbed0e36fe734f3fc11d30d652122d7714627c4 (diff) | |
download | edk2-04797875d1d53e53e31eca4fa01bc3cf6929f39c.tar.gz edk2-04797875d1d53e53e31eca4fa01bc3cf6929f39c.tar.bz2 edk2-04797875d1d53e53e31eca4fa01bc3cf6929f39c.zip |
BaseTools:Make BaseTools support new rules to generate RAW FFS FILE
BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=1765
If RAW FFS File Rule has no section for its data.For RAW FFS File,
directly call GenFfs tool to generate FFS file.
Ffs Rule:
[Rule.Common.USER_DEFINED.MicroCode]
FILE RAW = $(NAMED_GUID) {
$(INF_OUTPUT)/$(MODULE_NAME).bin
}
[Rule.Common.USER_DEFINED.LOGO]
FILE RAW = $(NAMED_GUID) {
|.bmp
}
As shown in the rule above,if SectionType and FileType not defined,
FFS files are generated directly, and no other type of file is
generated.
The patch is to make the BaseTools support these two rules
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/GenFds/Section.py')
-rw-r--r-- | BaseTools/Source/Python/GenFds/Section.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/BaseTools/Source/Python/GenFds/Section.py b/BaseTools/Source/Python/GenFds/Section.py index c49a1ac84b..b238956634 100644 --- a/BaseTools/Source/Python/GenFds/Section.py +++ b/BaseTools/Source/Python/GenFds/Section.py @@ -106,7 +106,7 @@ class Section (SectionClassObject): # @param Dict dictionary contains macro and its value
# @retval tuple (File list, boolean)
#
- def GetFileList(FfsInf, FileType, FileExtension, Dict = {}, IsMakefile=False):
+ def GetFileList(FfsInf, FileType, FileExtension, Dict = None, IsMakefile=False, SectionType=None):
IsSect = FileType in Section.SectFileType
if FileExtension is not None:
@@ -134,6 +134,11 @@ class Section (SectionClassObject): else:
GenFdsGlobalVariable.InfLogger ("\nCurrent ARCH \'%s\' of File %s is not in the Support Arch Scope of %s specified by INF %s in FDF" %(FfsInf.CurrentArch, File.File, File.Arch, FfsInf.InfFileName))
+ elif FileType is None and SectionType == BINARY_FILE_TYPE_RAW:
+ for File in FfsInf.BinFileList:
+ if File.Ext == Suffix:
+ FileList.append(File.Path)
+
if (not IsMakefile and Suffix is not None and os.path.exists(FfsInf.EfiOutputPath)) or (IsMakefile and Suffix is not None):
#
# Get Makefile path and time stamp
|