mirror of https://github.com/acidanthera/audk.git
build tools will break if PEIM or DXE driver has no valid [Depex] section.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9057 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
179d85c889
commit
030529de20
|
@ -1,7 +1,7 @@
|
||||||
## @file
|
## @file
|
||||||
# Generate AutoGen.h, AutoGen.c and *.depex files
|
# Generate AutoGen.h, AutoGen.c and *.depex files
|
||||||
#
|
#
|
||||||
# Copyright (c) 2007, Intel Corporation
|
# Copyright (c) 2007 - 2009, Intel Corporation
|
||||||
# All rights reserved. This program and the accompanying materials
|
# All rights reserved. This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# are licensed and made available under the terms and conditions of the BSD License
|
||||||
# which accompanies this distribution. The full text of the license may be found at
|
# which accompanies this distribution. The full text of the license may be found at
|
||||||
|
@ -1814,6 +1814,10 @@ class ModuleAutoGen(AutoGen):
|
||||||
else:
|
else:
|
||||||
IgoredAutoGenList.append(str(File))
|
IgoredAutoGenList.append(str(File))
|
||||||
|
|
||||||
|
# Skip the following code for EDK I inf
|
||||||
|
if self.AutoGenVersion < 0x00010005:
|
||||||
|
return
|
||||||
|
|
||||||
for ModuleType in self.DepexList:
|
for ModuleType in self.DepexList:
|
||||||
if len(self.DepexList[ModuleType]) == 0:
|
if len(self.DepexList[ModuleType]) == 0:
|
||||||
continue
|
continue
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
## @file
|
## @file
|
||||||
# This file is used to create a database used by build tool
|
# This file is used to create a database used by build tool
|
||||||
#
|
#
|
||||||
# Copyright (c) 2008, Intel Corporation
|
# Copyright (c) 2008 - 2009, Intel Corporation
|
||||||
# All rights reserved. This program and the accompanying materials
|
# All rights reserved. This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# are licensed and made available under the terms and conditions of the BSD License
|
||||||
# which accompanies this distribution. The full text of the license may be found at
|
# which accompanies this distribution. The full text of the license may be found at
|
||||||
|
@ -1777,6 +1777,14 @@ class InfBuildData(ModuleBuildClassObject):
|
||||||
if self._Depex == None:
|
if self._Depex == None:
|
||||||
self._Depex = tdict(False, 2)
|
self._Depex = tdict(False, 2)
|
||||||
RecordList = self._RawData[MODEL_EFI_DEPEX, self._Arch]
|
RecordList = self._RawData[MODEL_EFI_DEPEX, self._Arch]
|
||||||
|
|
||||||
|
# PEIM and DXE drivers must have a valid [Depex] section
|
||||||
|
if len(self.LibraryClass) == 0 and len(RecordList) == 0:
|
||||||
|
if self.ModuleType == 'DXE_DRIVER' or self.ModuleType == 'PEIM' or self.ModuleType == 'DXE_SMM_DRIVER' or \
|
||||||
|
self.ModuleType == 'DXE_SAL_DRIVER' or self.ModuleType == 'DXE_RUNTIME_DRIVER':
|
||||||
|
EdkLogger.error('build', RESOURCE_NOT_AVAILABLE, "No [Depex] section or no valid expression in [Depex] section for [%s] module" \
|
||||||
|
% self.ModuleType, File=self.MetaFile)
|
||||||
|
|
||||||
Depex = {}
|
Depex = {}
|
||||||
for Record in RecordList:
|
for Record in RecordList:
|
||||||
Record = ReplaceMacros(Record, GlobalData.gEdkGlobal, False)
|
Record = ReplaceMacros(Record, GlobalData.gEdkGlobal, False)
|
||||||
|
|
Loading…
Reference in New Issue