diff options
author | William Deegan <bill@baddogconsulting.com> | 2023-02-02 20:43:57 -0800 |
---|---|---|
committer | William Deegan <bill@baddogconsulting.com> | 2023-02-02 20:43:57 -0800 |
commit | db0ae34d6da183bce93c3f044abb727b0474c8c2 (patch) | |
tree | 40b9905730c5df838fd7d9efd280c992a779f996 | |
parent | 3a3cf8f4da6416d246e41528416112198f695cab (diff) | |
download | scons-git-db0ae34d6da183bce93c3f044abb727b0474c8c2.tar.gz |
Alter append logic to keep existing append of tuple value yielding -Dkey=value
-rw-r--r-- | SCons/Environment.py | 14 |
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: |