BaseTools: Fix some build and report file issue
1. increment build not skip make file when not change any file 2. report file generate abundant blank line 3. Build encounter Database is locked on some platform, using database auto commit 4. Fv BaseAddress must have if set Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
committed by
Yonghong Zhu
parent
0e3bfc6f7a
commit
8be15c61e8
@ -321,6 +321,8 @@ def main():
|
||||
continue
|
||||
for RegionData in RegionObj.RegionDataList:
|
||||
if FvObj.UiFvName.upper() == RegionData.upper():
|
||||
if not FvObj.BaseAddress:
|
||||
FvObj.BaseAddress = '0x%x' % (int(FdObj.BaseAddress, 0) + RegionObj.Offset)
|
||||
if FvObj.FvRegionInFD:
|
||||
if FvObj.FvRegionInFD != RegionObj.Size:
|
||||
EdkLogger.error("GenFds", FORMAT_INVALID, "The FV %s's region is specified in multiple FD with different value." %FvObj.UiFvName)
|
||||
@ -607,16 +609,21 @@ class GenFds :
|
||||
ModuleList = []
|
||||
FileGuidList = []
|
||||
GuidPattern = gGuidPattern
|
||||
VariableGuidSet = set()
|
||||
for Arch in ArchList:
|
||||
PlatformDataBase = BuildDb.BuildObject[GenFdsGlobalVariable.ActivePlatform, Arch, GenFdsGlobalVariable.TargetName, GenFdsGlobalVariable.ToolChainTag]
|
||||
PkgList = GenFdsGlobalVariable.WorkSpace.GetPackageList(GenFdsGlobalVariable.ActivePlatform, Arch, GenFdsGlobalVariable.TargetName, GenFdsGlobalVariable.ToolChainTag)
|
||||
for P in PkgList:
|
||||
PkgGuidDict.update(P.Guids)
|
||||
for Name, Guid in PlatformDataBase.Pcds:
|
||||
for Name, Guid in sorted(PlatformDataBase.Pcds):
|
||||
Pcd = PlatformDataBase.Pcds[Name, Guid]
|
||||
if Pcd.Type in [TAB_PCDS_DYNAMIC_HII, TAB_PCDS_DYNAMIC_EX_HII]:
|
||||
for SkuId in Pcd.SkuInfoList:
|
||||
Sku = Pcd.SkuInfoList[SkuId]
|
||||
if Sku.VariableGuid in VariableGuidSet:
|
||||
continue
|
||||
else:
|
||||
VariableGuidSet.add(Sku.VariableGuid)
|
||||
if Sku.VariableGuid and Sku.VariableGuid in PkgGuidDict.keys():
|
||||
GuidDict[Sku.VariableGuid] = PkgGuidDict[Sku.VariableGuid]
|
||||
for ModuleFile in PlatformDataBase.Modules:
|
||||
|
Reference in New Issue
Block a user