This patch is going to correct the external PCD database generation rule to support the case that all binary driver are only listed in FDF file.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Feng, Bob C <bob.c.feng@intel.com>
Reviewed-by: Yingke Liu <yingke.d.liu@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15893 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Feng, Bob C
2014-08-26 02:52:24 +00:00
committed by bobfeng
parent fad213a3db
commit a0a2cd1ea6
4 changed files with 209 additions and 16 deletions

View File

@ -2008,7 +2008,7 @@ class InfBuildData(ModuleBuildClassObject):
return self._Defs
## Retrieve binary files
def _GetBinaryFiles(self):
def _GetBinaries(self):
if self._Binaries == None:
self._Binaries = []
RecordList = self._RawData[MODEL_EFI_BINARY_FILE, self._Arch, self._Platform]
@ -2035,6 +2035,20 @@ class InfBuildData(ModuleBuildClassObject):
self._Binaries.append(File)
return self._Binaries
## Retrieve binary files with error check.
def _GetBinaryFiles(self):
Binaries = self._GetBinaries()
if GlobalData.gIgnoreSource and Binaries == []:
ErrorInfo = "The INF file does not contain any Binaries to use in creating the image\n"
EdkLogger.error('build', RESOURCE_NOT_AVAILABLE, ExtraData=ErrorInfo, File=self.MetaFile)
return Binaries
## Check whether it exists the binaries with current ARCH in AsBuild INF
def _IsSupportedArch(self):
if self._GetBinaries() and not self._GetSourceFiles():
return True
else:
return False
## Retrieve source files
def _GetSourceFiles(self):
if self._Sources == None:
@ -2537,6 +2551,7 @@ class InfBuildData(ModuleBuildClassObject):
Depex = property(_GetDepex)
DepexExpression = property(_GetDepexExpression)
IsBinaryModule = property(_IsBinaryModule)
IsSupportedArch = property(_IsSupportedArch)
## Database
#