]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/AutoGen/GenC.py
BaseTools: add new command line option to support override PCD value
[mirror_edk2.git] / BaseTools / Source / Python / AutoGen / GenC.py
index 3f0dfd90d9e2fcadcab83331125e0b7d4b2121a7..842d8bd6663a8ad7f6bdc1929dd4ff10e21e9d6d 100644 (file)
@@ -766,6 +766,13 @@ def GetPcdSize(Pcd):
 def CreateModulePcdCode(Info, AutoGenC, AutoGenH, Pcd):\r
     TokenSpaceGuidValue = Pcd.TokenSpaceGuidValue   #Info.GuidList[Pcd.TokenSpaceGuidCName]\r
     PcdTokenNumber = Info.PlatformInfo.PcdTokenNumber\r
+\r
+    if GlobalData.BuildOptionPcd:\r
+        for PcdItem in GlobalData.BuildOptionPcd:\r
+            if (Pcd.TokenSpaceGuidCName, Pcd.TokenCName) == (PcdItem[0], PcdItem[1]):\r
+                Pcd.DefaultValue = PcdItem[2]\r
+                break\r
+\r
     #\r
     # Write PCDs\r
     #\r
@@ -1054,7 +1061,13 @@ def CreateLibraryPcdCode(Info, AutoGenC, AutoGenH, Pcd):
     FixPcdSizeTokenName = '_PCD_SIZE_' + Pcd.TokenCName\r
     PatchPcdSizeTokenName = '_PCD_PATCHABLE_' + Pcd.TokenCName +'_SIZE'\r
     PatchPcdSizeVariableName = '_gPcd_BinaryPatch_Size_' + Pcd.TokenCName\r
-    \r
+\r
+    if GlobalData.BuildOptionPcd:\r
+        for PcdItem in GlobalData.BuildOptionPcd:\r
+            if (Pcd.TokenSpaceGuidCName, Pcd.TokenCName) == (PcdItem[0], PcdItem[1]):\r
+                Pcd.DefaultValue = PcdItem[2]\r
+                break\r
+\r
     #\r
     # Write PCDs\r
     #\r