summaryrefslogtreecommitdiff
path: root/BaseTools/Source/Python/Common/Expression.py
diff options
context:
space:
mode:
authorYonghong Zhu <yonghong.zhu@intel.com>2016-03-23 17:34:13 +0800
committerYonghong Zhu <yonghong.zhu@intel.com>2016-03-29 15:21:46 +0800
commitc8d07c5eeb481e777ad48dc1737d1ab1be67bd44 (patch)
treead2b7dc887bd7d9bfa0b4f3c9f8e7dde8eb8640a /BaseTools/Source/Python/Common/Expression.py
parentf423d76021df725814a9bebcfeeb8cf57e3c8beb (diff)
downloadedk2-platforms-c8d07c5eeb481e777ad48dc1737d1ab1be67bd44.tar.xz
BaseTools: Add two new sections for PCD in the build report
Build Spec updated to add two new sections for PCD in the build report. 1.Conditional directives section:If the DSC or FDF file contains conditional directive statements. 2.Unused PCDs section: If the DSC or FDF file define values for PCDs that are not used by any module and are not used in conditional directive statements. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Common/Expression.py')
-rw-r--r--BaseTools/Source/Python/Common/Expression.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/BaseTools/Source/Python/Common/Expression.py b/BaseTools/Source/Python/Common/Expression.py
index 3c8d14e6ce..7b3030c5fa 100644
--- a/BaseTools/Source/Python/Common/Expression.py
+++ b/BaseTools/Source/Python/Common/Expression.py
@@ -1,7 +1,7 @@
## @file
# This file is used to parse and evaluate expression in directive or PCD value.
#
-# Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2011 - 2016, Intel Corporation. All rights reserved.<BR>
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
@@ -76,6 +76,10 @@ def ReplaceExprMacro(String, Macros, ExceptionList = None):
InQuote = True
MacroStartPos = String.find('$(')
if MacroStartPos < 0:
+ for Pcd in gPlatformPcds.keys():
+ if Pcd in String:
+ if Pcd not in gConditionalPcds:
+ gConditionalPcds.append(Pcd)
continue
RetStr = ''
while MacroStartPos >= 0: