]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/AutoGen/AutoGen.py
This patch is going to retire the top level makefile on BaseTools for supporting...
[mirror_edk2.git] / BaseTools / Source / Python / AutoGen / AutoGen.py
index c4662572a0386898f795b51e0dcb5377ad7632a4..36e43478c7f2b16c7d14da524cf4df234e116b81 100644 (file)
@@ -655,6 +655,8 @@ class WorkspaceAutoGen(AutoGen):
                                     )\r
                     Count += 1\r
                                       \r
+    def _GenFdsCommand(self):\r
+        return (GenMake.TopLevelMakefile(self)._TEMPLATE_.Replace(GenMake.TopLevelMakefile(self)._TemplateDict)).strip()\r
 \r
     ## Create makefile for the platform and modules in it\r
     #\r
@@ -662,15 +664,6 @@ class WorkspaceAutoGen(AutoGen):
     #                                       modules will be created as well\r
     #\r
     def CreateMakeFile(self, CreateDepsMakeFile=False):\r
-        # create makefile for platform\r
-        Makefile = GenMake.TopLevelMakefile(self)\r
-        if Makefile.Generate():\r
-            EdkLogger.debug(EdkLogger.DEBUG_9, "Generated makefile for platform [%s] %s\n" %\r
-                            (self.MetaFile, self.ArchList))\r
-        else:\r
-            EdkLogger.debug(EdkLogger.DEBUG_9, "Skipped the generation of makefile for platform [%s] %s\n" %\r
-                            (self.MetaFile, self.ArchList))\r
-\r
         if CreateDepsMakeFile:\r
             for Pa in self.AutoGenObjectList:\r
                 Pa.CreateMakeFile(CreateDepsMakeFile)\r
@@ -705,6 +698,7 @@ class WorkspaceAutoGen(AutoGen):
     FvDir               = property(_GetFvDir)\r
     MakeFileDir         = property(_GetMakeFileDir)\r
     BuildCommand        = property(_GetBuildCommand)\r
+    GenFdsCommand       = property(_GenFdsCommand)\r
 \r
 ## AutoGen class for platform\r
 #\r
@@ -801,6 +795,9 @@ class PlatformAutoGen(AutoGen):
         self._LibraryAutoGenList = None\r
         self._BuildCommand = None\r
 \r
+        # get library/modules for build\r
+        self.LibraryBuildDirectoryList = []\r
+        self.ModuleBuildDirectoryList = []\r
         # get the original module/package/platform objects\r
         self.BuildDatabase = Workspace.BuildDatabase\r
         return True\r
@@ -827,6 +824,10 @@ class PlatformAutoGen(AutoGen):
         # don't do this twice\r
         self.IsCodeFileCreated = True\r
 \r
+    ## Generate Fds Command\r
+    def _GenFdsCommand(self):\r
+        return self.Workspace.GenFdsCommand\r
+               \r
     ## Create makefile for the platform and mdoules in it\r
     #\r
     #   @param      CreateModuleMakeFile    Flag indicating if the makefile for\r
@@ -844,14 +845,11 @@ class PlatformAutoGen(AutoGen):
         if self.IsMakeFileCreated:\r
             return\r
 \r
-        # create makefile for platform\r
+        # create library/module build dirs for platform\r
         Makefile = GenMake.PlatformMakefile(self)\r
-        if Makefile.Generate():\r
-            EdkLogger.debug(EdkLogger.DEBUG_9, "Generated makefile for platform [%s] [%s]\n" %\r
-                            (self.MetaFile, self.Arch))\r
-        else:\r
-            EdkLogger.debug(EdkLogger.DEBUG_9, "Skipped the generation of makefile for platform [%s] [%s]\n" %\r
-                            (self.MetaFile, self.Arch))\r
+        self.LibraryBuildDirectoryList = Makefile.GetLibraryBuildDirectoryList()\r
+        self.ModuleBuildDirectoryList = Makefile.GetModuleBuildDirectoryList()\r
+\r
         self.IsMakeFileCreated = True\r
 \r
     ## Deal with Shared FixedAtBuild Pcds\r