diff options
| author | Pawel Tomulik <ptomulik@meil.pw.edu.pl> | 2015-09-20 02:21:27 (GMT) |
|---|---|---|
| committer | Pawel Tomulik <ptomulik@meil.pw.edu.pl> | 2015-09-20 02:21:27 (GMT) |
| commit | cb508c9a37c2a3cd5fcf55cc1efd4c47a0abdd41 (patch) | |
| tree | c678996a1a5aef0cc6dbe40c8f833f35d80dbbd1 /src/engine/SCons/Defaults.py | |
| parent | 9a43408e4419ba54733222df65a38a9d1a925b6d (diff) | |
| download | SCons-cb508c9a37c2a3cd5fcf55cc1efd4c47a0abdd41.zip SCons-cb508c9a37c2a3cd5fcf55cc1efd4c47a0abdd41.tar.gz SCons-cb508c9a37c2a3cd5fcf55cc1efd4c47a0abdd41.tar.bz2 | |
fix broken soname generator
Diffstat (limited to 'src/engine/SCons/Defaults.py')
| -rw-r--r-- | src/engine/SCons/Defaults.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/engine/SCons/Defaults.py b/src/engine/SCons/Defaults.py index db48969..c8170c3 100644 --- a/src/engine/SCons/Defaults.py +++ b/src/engine/SCons/Defaults.py @@ -482,9 +482,14 @@ class Variable_Method_Caller(object): frame = frame.f_back return None -def __libversionflags_string(versionvar): - return '${("%s" in locals() and %s and "_%sFLAGS" in locals()) ' \ - 'and _%sFLAGS or None}' % (versionvar, versionvar, versionvar, versionvar) +# if env[version_var] id defined, returns env[flags_var], otherwise returns None +def __libversionflags(env, version_var, flags_var): + try: + if env[version_var]: + return env[flags_var] + except KeyError: + pass + return None ConstructionEnvironment = { 'BUILDERS' : {}, @@ -504,8 +509,10 @@ ConstructionEnvironment = { '_CPPINCFLAGS' : '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', '_CPPDEFFLAGS' : '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}', - '__SHLIBVERSIONFLAGS' : __libversionflags_string('SHLIBVERSION'), - '__LDMODULEVERSIONFLAGS' : __libversionflags_string('LDMODULEVERSION'), + '__libversionflags' : __libversionflags, + '__SHLIBVERSIONFLAGS' : '${__libversionflags(__env__,"SHLIBVERSION","_SHLIBVERSIONFLAGS")}', + '__LDMODULEVERSIONFLAGS' : '${__libversionflags(__env__,"LDMODULEVERSION","_LDMODULEVERSIONFLAGS")}', + 'TEMPFILE' : NullCmdGenerator, 'Dir' : Variable_Method_Caller('TARGET', 'Dir'), 'Dirs' : Variable_Method_Caller('TARGET', 'Dirs'), |
