From a3646bd6eca2028bd7c3dece7883a702bd68ff13 Mon Sep 17 00:00:00 2001 From: Alex Burton Date: Fri, 12 May 2023 12:03:15 +1000 Subject: Removed optWithIxes in favour of existing concat function. DINTFDIR is now a list so that it works with concat, although only one di path makes sense. --- SCons/Tool/DCommon.py | 13 ++----------- SCons/Tool/DCommon.xml | 2 +- SCons/Tool/dmd.py | 5 ++--- SCons/Tool/gdc.py | 5 ++--- SCons/Tool/ldc.py | 5 ++--- 5 files changed, 9 insertions(+), 21 deletions(-) diff --git a/SCons/Tool/DCommon.py b/SCons/Tool/DCommon.py index dc12a3c..b4c5d85 100644 --- a/SCons/Tool/DCommon.py +++ b/SCons/Tool/DCommon.py @@ -28,9 +28,9 @@ Common code for the various D tools. Coded by Russel Winder (russel@winder.org.uk) 2012-09-06 """ -import SCons.Util import os.path +import SCons.Util def isD(env, source) -> int: if not source: @@ -57,17 +57,8 @@ def allAtOnceEmitter(target, source, env): env.Clean(target[0], str(target[0]) + '.o') return target, source -def _optWithIxes(pre,x,suf,env,f=lambda x: x, target=None, source=None) -> str: -# a single optional argument version of _concat -# print ("_optWithIxes",str(target),str(source)) - if x in env: - l = f(SCons.PathList.PathList([env[x]]).subst_path(env, target, source)) - return pre + str(l[0]) + suf - else: - return "" - def DObjectEmitter(target,source,env): - if "DINTFDIR" in env: + if "DINTFDIR" in env and len(env["DINTFDIR"]): if (len(target) != 1): raise Exception("expect only one object target") targetBase, targetName = os.path.split(SCons.Util.to_String(target[0])) diff --git a/SCons/Tool/DCommon.xml b/SCons/Tool/DCommon.xml index 30a86f9..636329c 100644 --- a/SCons/Tool/DCommon.xml +++ b/SCons/Tool/DCommon.xml @@ -358,7 +358,7 @@ Suffix of d include files default is .di - + Path where .di files will be generated diff --git a/SCons/Tool/dmd.py b/SCons/Tool/dmd.py index 9755c90..4eb3f89 100644 --- a/SCons/Tool/dmd.py +++ b/SCons/Tool/dmd.py @@ -95,8 +95,7 @@ def generate(env) -> None: env['_DINCFLAGS'] = '${_concat(DINCPREFIX, DPATH, DINCSUFFIX, __env__, RDirs, TARGET, SOURCE)}' env['_DVERFLAGS'] = '${_concat(DVERPREFIX, DVERSIONS, DVERSUFFIX, __env__)}' env['_DDEBUGFLAGS'] = '${_concat(DDEBUGPREFIX, DDEBUG, DDEBUGSUFFIX, __env__)}' - env['_DINTFDIR'] = '${_optWithIxes(DINTFDIRPREFIX, DINTFDIRKEY, DINTFDIRSUFFIX, __env__, Dirs, TARGET, SOURCE)}' - env['_optWithIxes'] = DCommon._optWithIxes + env['_DINTFDIR'] = '${_concat(DINTFDIRPREFIX, DINTFDIR, DINTFDIRSUFFIX, __env__, Dirs, TARGET, SOURCE)}' env['_DFLAGS'] = '${_concat(DFLAGPREFIX, DFLAGS, DFLAGSUFFIX, __env__)}' env['SHDC'] = '$DC' @@ -106,6 +105,7 @@ def generate(env) -> None: env['DFLAGS'] = [] env['DVERSIONS'] = [] env['DDEBUG'] = [] + env['DINTFDIR'] = [] if env['DC']: DCommon.addDPATHToEnv(env, env['DC']) @@ -120,7 +120,6 @@ def generate(env) -> None: env['DFLAGSUFFIX'] = '' env['DFILESUFFIX'] = '.d' env['DIFILESUFFIX'] = '.di' - env['DINTFDIRKEY'] = 'DINTFDIR' env['DINTFDIRPREFIX'] = '-Hd=' env['DINTFDIRSUFFIX'] = '' diff --git a/SCons/Tool/gdc.py b/SCons/Tool/gdc.py index 6b34558..e0f9888 100644 --- a/SCons/Tool/gdc.py +++ b/SCons/Tool/gdc.py @@ -67,8 +67,7 @@ def generate(env) -> None: env['_DINCFLAGS'] = '${_concat(DINCPREFIX, DPATH, DINCSUFFIX, __env__, RDirs, TARGET, SOURCE)}' env['_DVERFLAGS'] = '${_concat(DVERPREFIX, DVERSIONS, DVERSUFFIX, __env__)}' env['_DDEBUGFLAGS'] = '${_concat(DDEBUGPREFIX, DDEBUG, DDEBUGSUFFIX, __env__)}' - env['_DINTFDIR'] = '${_optWithIxes(DINTFDIRPREFIX, DINTFDIRKEY, DINTFDIRSUFFIX, __env__, Dirs, TARGET, SOURCE)}' - env['_optWithIxes'] = DCommon._optWithIxes + env['_DINTFDIR'] = '${_concat(DINTFDIRPREFIX, DINTFDIR, DINTFDIRSUFFIX, __env__, Dirs, TARGET, SOURCE)}' env['_DFLAGS'] = '${_concat(DFLAGPREFIX, DFLAGS, DFLAGSUFFIX, __env__)}' env['SHDC'] = '$DC' @@ -78,6 +77,7 @@ def generate(env) -> None: env['DFLAGS'] = [] env['DVERSIONS'] = [] env['DDEBUG'] = [] + env['DINTFDIR'] = [] if env['DC']: DCommon.addDPATHToEnv(env, env['DC']) @@ -92,7 +92,6 @@ def generate(env) -> None: env['DFLAGSUFFIX'] = '' env['DFILESUFFIX'] = '.d' env['DIFILESUFFIX'] = '.di' - env['DINTFDIRKEY'] = 'DINTFDIR' env['DINTFDIRPREFIX'] = '-Hd' env['DINTFDIRSUFFIX'] = '' diff --git a/SCons/Tool/ldc.py b/SCons/Tool/ldc.py index a86d1b6..8d9f920 100644 --- a/SCons/Tool/ldc.py +++ b/SCons/Tool/ldc.py @@ -71,8 +71,7 @@ def generate(env) -> None: env['_DINCFLAGS'] = '${_concat(DINCPREFIX, DPATH, DINCSUFFIX, __env__, RDirs, TARGET, SOURCE)}' env['_DVERFLAGS'] = '${_concat(DVERPREFIX, DVERSIONS, DVERSUFFIX, __env__)}' env['_DDEBUGFLAGS'] = '${_concat(DDEBUGPREFIX, DDEBUG, DDEBUGSUFFIX, __env__)}' - env['_DINTFDIR'] = '${_optWithIxes(DINTFDIRPREFIX, DINTFDIRKEY, DINTFDIRSUFFIX, __env__, Dirs, TARGET, SOURCE)}' - env['_optWithIxes'] = DCommon._optWithIxes + env['_DINTFDIR'] = '${_concat(DINTFDIRPREFIX, DINTFDIR, DINTFDIRSUFFIX, __env__, Dirs, TARGET, SOURCE)}' env['_DFLAGS'] = '${_concat(DFLAGPREFIX, DFLAGS, DFLAGSUFFIX, __env__)}' env['SHDC'] = '$DC' @@ -82,6 +81,7 @@ def generate(env) -> None: env['DFLAGS'] = [] env['DVERSIONS'] = [] env['DDEBUG'] = [] + env['DINTFDIR'] = [] if env['DC']: DCommon.addDPATHToEnv(env, env['DC']) @@ -96,7 +96,6 @@ def generate(env) -> None: env['DFLAGSUFFIX'] = '' env['DFILESUFFIX'] = '.d' env['DIFILESUFFIX'] = '.di' - env['DINTFDIRKEY'] = 'DINTFDIR' env['DINTFDIRPREFIX'] = '-Hd=' env['DINTFDIRSUFFIX'] = '' -- cgit v0.12