]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
BaseTools: Fixed issue of incorrect Module Unique Name
[mirror_edk2.git] / BaseTools / Source / Python / AutoGen / ModuleAutoGen.py
index 0654b11ad8e41443385f3d847062adaf83b4c577..076ce0e39c37cc4661d4aa27dfe07ae751842925 100644 (file)
@@ -295,7 +295,7 @@ class ModuleAutoGen(AutoGen):
         ModuleNames = self.DataPipe.Get("M_Name")\r
         if not ModuleNames:\r
             return self.Name\r
-        return ModuleNames.get(self.Name,self.Name)\r
+        return ModuleNames.get((self.Name,self.MetaFile),self.Name)\r
 \r
     # Macros could be used in build_rule.txt (also Makefile)\r
     @cached_property\r
@@ -1113,6 +1113,21 @@ class ModuleAutoGen(AutoGen):
     def IncludePathLength(self):\r
         return sum(len(inc)+1 for inc in self.IncludePathList)\r
 \r
+    ## Get the list of include paths from the packages\r
+    #\r
+    #   @IncludesList     list             The list path\r
+    #\r
+    @cached_property\r
+    def PackageIncludePathList(self):\r
+        IncludesList = []\r
+        for Package in self.Module.Packages:\r
+            PackageDir = mws.join(self.WorkspaceDir, Package.MetaFile.Dir)\r
+            IncludesList = Package.Includes\r
+            if Package._PrivateIncludes:\r
+                if not self.MetaFile.Path.startswith(PackageDir):\r
+                    IncludesList = list(set(Package.Includes).difference(set(Package._PrivateIncludes)))\r
+        return IncludesList\r
+\r
     ## Get HII EX PCDs which maybe used by VFR\r
     #\r
     #  efivarstore used by VFR may relate with HII EX PCDs\r