summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SCons/Environment.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/SCons/Environment.py b/SCons/Environment.py
index e10bec1bb..26f7036fb 100644
--- a/SCons/Environment.py
+++ b/SCons/Environment.py
@@ -269,7 +269,6 @@ def _add_cppdefines(
return False
-
key = 'CPPDEFINES'
try:
defines = env_dict[key]
@@ -330,6 +329,19 @@ def _add_cppdefines(
else:
_add_define(val, defines, prepend)
+ # A tuple appended to anything should yield -Dkey=value
+ elif is_Tuple(val):
+ item = (val[0], val[1])
+ if unique:
+ match = _is_in(item, defines)
+ if match and delete_existing:
+ defines.remove(match)
+ _add_define(item, defines, prepend)
+ elif not match:
+ _add_define(item, defines, prepend)
+ else:
+ _add_define(item, defines, prepend)
+
elif is_Sequence(val):
tmp = []
for item in val: