summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source/Python/Common
diff options
context:
space:
mode:
authorMichael D Kinney <michael.d.kinney@intel.com>2019-03-21 17:27:20 -0700
committerFeng, Bob C <bob.c.feng@intel.com>2019-05-21 13:14:14 +0800
commit66b845ae06f1e48c693158ee0b8b4f610d5ada4a (patch)
tree91879e4e8c188ce4315027c13ff48d4b1c06bc0b /BaseTools/Source/Python/Common
parentcc99ea9422beba68d546201fd2d2a2c48cb29a26 (diff)
downloadedk2-66b845ae06f1e48c693158ee0b8b4f610d5ada4a.tar.gz
edk2-66b845ae06f1e48c693158ee0b8b4f610d5ada4a.tar.bz2
edk2-66b845ae06f1e48c693158ee0b8b4f610d5ada4a.zip
BaseTools: Fix private includes for FILE_GUID override
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1648 When a module in a DSC file uses a FILE_GUID override in the module scoped <Defines> section, a copy of the modified INF file is placed in the Conf/.cache directory. The check for private includes uses the INF path to determine if the module is allowed to use the private includes. Since the INF path in this case is not in any package, this check always fails, and no private include paths are possible. The fix is to keep both the OriginalPath and the new Path in the PathClass object, and always use the OriginalPath to see if the module INF is in the package with private includes. Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Common')
-rw-r--r--BaseTools/Source/Python/Common/Misc.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/BaseTools/Source/Python/Common/Misc.py b/BaseTools/Source/Python/Common/Misc.py
index 0e0cb45ebe..d082c58bef 100644
--- a/BaseTools/Source/Python/Common/Misc.py
+++ b/BaseTools/Source/Python/Common/Misc.py
@@ -281,6 +281,7 @@ def ProcessDuplicatedInf(Path, BaseName, Workspace):
#
RtPath.Path = TempFullPath
RtPath.BaseName = BaseName
+ RtPath.OriginalPath = Path
#
# If file exists, compare contents
#
@@ -1405,6 +1406,7 @@ class PathClass(object):
self.TagName = TagName
self.ToolCode = ToolCode
self.ToolChainFamily = ToolChainFamily
+ self.OriginalPath = self
## Convert the object of this class to a string
#