diff options
Diffstat (limited to 'BaseTools/Source/Python/Workspace')
-rw-r--r-- | BaseTools/Source/Python/Workspace/WorkspaceCommon.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/BaseTools/Source/Python/Workspace/WorkspaceCommon.py b/BaseTools/Source/Python/Workspace/WorkspaceCommon.py index b79280bc2e..22abda8743 100644 --- a/BaseTools/Source/Python/Workspace/WorkspaceCommon.py +++ b/BaseTools/Source/Python/Workspace/WorkspaceCommon.py @@ -20,6 +20,8 @@ from Workspace.BuildClassObject import StructurePcd from Common.BuildToolError import RESOURCE_NOT_AVAILABLE
from Common.BuildToolError import OPTION_MISSING
from Common.BuildToolError import BUILD_ERROR
+from Common.BuildToolError import PREBUILD_ERROR
+import Common.EdkLogger as EdkLogError
class OrderedListDict(OrderedDict):
def __init__(self, *args, **kwargs):
@@ -138,6 +140,12 @@ def GetModuleLibInstances(Module, Platform, BuildDatabase, Arch, Target, Toolcha return []
LibraryModule = BuildDatabase[LibraryPath, Arch, Target, Toolchain]
+ if LibraryModule.ModuleEntryPointList and LibraryModule.ModuleType != Module.ModuleType:
+ EdkLogError.error(
+ "build", PREBUILD_ERROR,
+ "Driver's ModuleType must be consistent [%s]" % (str(Module)),
+ File=str(FileName),
+ ExtraData="consumed by [%s]" % str(LibraryModule))
# for those forced library instance (NULL library), add a fake library class
if LibraryClassName.startswith("NULL"):
LibraryModule.LibraryClass.append(LibraryClassObject(LibraryClassName, [ModuleType]))
|