From db0ae34d6da183bce93c3f044abb727b0474c8c2 Mon Sep 17 00:00:00 2001 From: William Deegan Date: Thu, 2 Feb 2023 20:43:57 -0800 Subject: Alter append logic to keep existing append of tuple value yielding -Dkey=value --- SCons/Environment.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) 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: -- cgit v1.2.1