summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source/Python/Common/Misc.py
diff options
context:
space:
mode:
authorYunhua Feng <yunhuax.feng@intel.com>2018-08-24 16:39:14 +0800
committerYonghong Zhu <yonghong.zhu@intel.com>2018-10-13 09:57:13 +0800
commit8be15c61e88709c55970c5d5272d19bd9bba67fb (patch)
tree0824e902da705ba8eb6a30d590fc2e27fd95ee73 /BaseTools/Source/Python/Common/Misc.py
parent0e3bfc6f7a2b7b52cb684736d878e249edbff5cb (diff)
downloadedk2-8be15c61e88709c55970c5d5272d19bd9bba67fb.tar.gz
edk2-8be15c61e88709c55970c5d5272d19bd9bba67fb.tar.bz2
edk2-8be15c61e88709c55970c5d5272d19bd9bba67fb.zip
BaseTools: Fix some build and report file issue
1. increment build not skip make file when not change any file 2. report file generate abundant blank line 3. Build encounter Database is locked on some platform, using database auto commit 4. Fv BaseAddress must have if set Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Common/Misc.py')
-rw-r--r--BaseTools/Source/Python/Common/Misc.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/BaseTools/Source/Python/Common/Misc.py b/BaseTools/Source/Python/Common/Misc.py
index 71ab6da529..370b4bbb49 100644
--- a/BaseTools/Source/Python/Common/Misc.py
+++ b/BaseTools/Source/Python/Common/Misc.py
@@ -1597,15 +1597,19 @@ def CheckPcdDatum(Type, Value):
return False, "Invalid value [%s] of type [%s]; must be one of TRUE, True, true, 0x1, 0x01, 1"\
", FALSE, False, false, 0x0, 0x00, 0" % (Value, Type)
elif Type in [TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64]:
- if Value and int(Value, 0) < 0:
- return False, "PCD can't be set to negative value[%s] for datum type [%s]" % (Value, Type)
try:
- Value = int(Value, 0)
- if Value > MAX_VAL_TYPE[Type]:
- return False, "Too large PCD value[%s] for datum type [%s]" % (Value, Type)
+ Val = int(Value, 0)
except:
- return False, "Invalid value [%s] of type [%s];"\
- " must be a hexadecimal, decimal or octal in C language format." % (Value, Type)
+ try:
+ Val = int(Value.lstrip('0'))
+ except:
+ return False, "Invalid value [%s] of type [%s];" \
+ " must be a hexadecimal, decimal or octal in C language format." % (Value, Type)
+ if Val > MAX_VAL_TYPE[Type]:
+ return False, "Too large PCD value[%s] for datum type [%s]" % (Value, Type)
+ if Val < 0:
+ return False, "PCD can't be set to negative value[%s] for datum type [%s]" % (Value, Type)
+
else:
return True, "StructurePcd"