Rasie a error message if not find pcd defined in module in platform and package
authorhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Mon, 13 Aug 2007 09:33:44 +0000 (09:33 +0000)
committerhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Mon, 13 Aug 2007 09:33:44 +0000 (09:33 +0000)
git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@562 7335b38e-4728-0410-8992-fb3ffe349368

Source/Python/Common/EdkIIWorkspaceBuild.py

index c4f5de6..9392854 100644 (file)
@@ -815,6 +815,8 @@ class WorkspaceBuild(object):
         MaxDatumSize = ''\r
         SkuInfoList = {}\r
         IsOverrided = False\r
+        IsFoundInDsc = False\r
+        IsFoundInDec = False\r
         #\r
         # First get information from platform database\r
         #\r
@@ -828,8 +830,13 @@ class WorkspaceBuild(object):
                 MaxDatumSize = Pcds[(Name, Guid)].MaxDatumSize\r
                 SkuInfoList =  Pcds[(Name, Guid)].SkuInfoList\r
                 IsOverrided = True\r
+                IsFoundInDsc = True\r
                 break\r
-\r
+        if not IsFoundInDsc:\r
+            ErrorMsg = "Pcd '%s' defined in module '%s' is not found in platform" % (Name, ModuleName) \r
+            raise ParserError(PARSER_ERROR, msg = ErrorMsg)\r
+            \r
+        \r
         #\r
         # Second get information from package database\r
         #\r
@@ -838,7 +845,12 @@ class WorkspaceBuild(object):
             if (Name, Guid) in Pcds:\r
                 DatumType = Pcds[(Name, Guid)].DatumType\r
                 Token = Pcds[(Name, Guid)].TokenValue\r
+                IsOverrided = True\r
+                IsFoundInDec = True\r
                 break\r
+        if not IsFoundInDec:\r
+            ErrorMsg = "Pcd '%s' defined in module '%s' is not found in package" % (Name, ModuleName) \r
+            raise ParserError(PARSER_ERROR, msg = ErrorMsg)\r
         \r
         #\r
         # Third get information from <Pcd> of <Compontents> from module database\r
@@ -860,7 +872,6 @@ class WorkspaceBuild(object):
         #\r
         if Guid in PcdsSet.keys():\r
             Value = PcdsSet[Guid]\r
-            IsOverrided = True\r
 \r
         return PcdClassObject(Name, Guid, Type, DatumType, Value, Token, MaxDatumSize, SkuInfoList, IsOverrided)\r
     \r