Added code to pass macro to GenFds tool
authorjwang36 <jwang36@7335b38e-4728-0410-8992-fb3ffe349368>
Wed, 23 Jan 2008 06:02:27 +0000 (06:02 +0000)
committerjwang36 <jwang36@7335b38e-4728-0410-8992-fb3ffe349368>
Wed, 23 Jan 2008 06:02:27 +0000 (06:02 +0000)
git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@971 7335b38e-4728-0410-8992-fb3ffe349368

Source/Python/AutoGen/GenMake.py

index f2e0dd1..77cb998 100755 (executable)
@@ -25,6 +25,7 @@ from Common.BuildToolError import *
 from Common.Misc import *\r
 from BuildInfo import *\r
 from BuildEngine import *\r
+import Common.GlobalData as GlobalData\r
 \r
 ## Regular expression for finding header file inclusions\r
 gIncludePattern = re.compile("^[ #]*include[ ]+[\"<]*([^\"< >\s]+)[>\" ]*$", re.MULTILINE | re.UNICODE)\r
@@ -512,7 +513,7 @@ ${END}\tcd $(BUILD_DIR)
 #\r
 build_fds:\r
 \t-@echo Generating flash image, if any ...\r
-${BEGIN}\tGenFds -f ${fdf_file} -o $(BUILD_DIR) -t $(TOOLCHAIN_TAG) -b $(TARGET) -p ${active_platform} -a ${build_architecture_list}${END}${BEGIN} -r ${fd} ${END}${BEGIN} -i ${fv} ${END} ${log_level}\r
+${BEGIN}\tGenFds -f ${fdf_file} -o $(BUILD_DIR) -t $(TOOLCHAIN_TAG) -b $(TARGET) -p ${active_platform} -a ${build_architecture_list} ${log_level}${END}${BEGIN} -r ${fd} ${END}${BEGIN} -i ${fv} ${END}${BEGIN} -y ${macro} ${END}\r
 \r
 #\r
 # run command for emulator platform only\r
@@ -648,8 +649,11 @@ class Makefile(object):
         self.IntermediateDirectoryList.append("$(FV_DIR)")\r
 \r
         # TRICK: for not generating GenFds call in makefile if no FDF file\r
+        MacroList = []\r
         if PlatformInfo.FdfFile != None and PlatformInfo.FdfFile != "":\r
             FdfFileList = [PlatformInfo.FdfFile]\r
+            for MacroName in GlobalData.gGlobalDefines:\r
+                MacroList.append('"%s=%s"' % (MacroName, GlobalData.gGlobalDefines[MacroName]))    \r
         else:\r
             FdfFileList = []\r
 \r
@@ -693,6 +697,7 @@ class Makefile(object):
             "fd"                        : PlatformInfo.FdTargetList,\r
             "fv"                        : PlatformInfo.FvTargetList,\r
             "log_level"                 : LogOption,\r
+            "macro"                     : MacroList,\r
         }\r
 \r
         self.PrepareDirectory()\r