diff --git a/scons/scons-local-2.4.0/SCons/Tool/cyglink.py b/scons/scons-local-2.4.0/SCons/Tool/cyglink.py deleted file mode 100644 index 87716cf94..000000000 --- a/scons/scons-local-2.4.0/SCons/Tool/cyglink.py +++ /dev/null @@ -1,94 +0,0 @@ -"""SCons.Tool.cyglink - -Customization of gnulink for Cygwin (http://www.cygwin.com/) - -There normally shouldn't be any need to import this module directly. -It will usually be imported through the generic SCons.Tool.Tool() -selection method. - -""" - -import SCons.Action -import SCons.Util - -import gnulink - -def shlib_generator(target, source, env, for_signature): - cmd = SCons.Util.CLVar(['$SHLINK']) - - dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX') - if dll: cmd.extend(['-o', dll]) - - cmd.extend(['$SHLINKFLAGS', '$__RPATH']) - - implib = env.FindIxes(target, 'IMPLIBPREFIX', 'IMPLIBSUFFIX') - if implib: - cmd.extend([ - '-Wl,--out-implib='+implib.get_string(for_signature), - '-Wl,--export-all-symbols', - '-Wl,--enable-auto-import', - '-Wl,--whole-archive', '$SOURCES', - '-Wl,--no-whole-archive', '$_LIBDIRFLAGS', '$_LIBFLAGS' - ]) - else: - cmd.extend(['$SOURCES', '$_LIBDIRFLAGS', '$_LIBFLAGS']) - - return [cmd] - -def shlib_emitter(target, source, env): - dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX') - no_import_lib = env.get('no_import_lib', 0) - - if not dll or len(target) > 1: - raise SCons.Errors.UserError("A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX")) - - # Remove any "lib" after the prefix - pre = env.subst('$SHLIBPREFIX') - if dll.name[len(pre):len(pre)+3] == 'lib': - dll.name = pre + dll.name[len(pre)+3:] - - orig_target = target - target = [env.fs.File(dll)] - target[0].attributes.shared = 1 - - # Append an import lib target - if not no_import_lib: - # Create list of target libraries as strings - target_strings = env.ReplaceIxes(orig_target[0], - 'SHLIBPREFIX', 'SHLIBSUFFIX', - 'IMPLIBPREFIX', 'IMPLIBSUFFIX') - - implib_target = env.fs.File(target_strings) - implib_target.attributes.shared = 1 - target.append(implib_target) - - return (target, source) - - -shlib_action = SCons.Action.Action(shlib_generator, generator=1) - -def generate(env): - """Add Builders and construction variables for cyglink to an Environment.""" - gnulink.generate(env) - - env['LINKFLAGS'] = SCons.Util.CLVar('-Wl,-no-undefined') - - env['SHLINKCOM'] = shlib_action - env['LDMODULECOM'] = shlib_action - env.Append(SHLIBEMITTER = [shlib_emitter]) - - env['SHLIBPREFIX'] = 'cyg' - env['SHLIBSUFFIX'] = '.dll' - - env['IMPLIBPREFIX'] = 'lib' - env['IMPLIBSUFFIX'] = '.dll.a' - -def exists(env): - return gnulink.exists(env) - - -# Local Variables: -# tab-width:4 -# indent-tabs-mode:nil -# End: -# vim: set expandtab tabstop=4 shiftwidth=4: diff --git a/scons/scons-local-2.4.0/SCons/Tool/link.py b/scons/scons-local-2.4.0/SCons/Tool/link.py deleted file mode 100644 index 6874301dc..000000000 --- a/scons/scons-local-2.4.0/SCons/Tool/link.py +++ /dev/null @@ -1,218 +0,0 @@ -"""SCons.Tool.link - -Tool-specific initialization for the generic Posix linker. - -There normally shouldn't be any need to import this module directly. -It will usually be imported through the generic SCons.Tool.Tool() -selection method. - -""" - -# -# Copyright (c) 2001 - 2015 The SCons Foundation -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# - -__revision__ = "src/engine/SCons/Tool/link.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" - -import re - -import SCons.Defaults -import SCons.Tool -import SCons.Util -import SCons.Warnings - -from SCons.Tool.FortranCommon import isfortran - -from SCons.Tool.DCommon import isD - -cplusplus = __import__('c++', globals(), locals(), []) - -issued_mixed_link_warning = False - -def smart_link(source, target, env, for_signature): - has_cplusplus = cplusplus.iscplusplus(source) - has_fortran = isfortran(env, source) - has_d = isD(env, source) - if has_cplusplus and has_fortran and not has_d: - global issued_mixed_link_warning - if not issued_mixed_link_warning: - msg = "Using $CXX to link Fortran and C++ code together.\n\t" + \ - "This may generate a buggy executable if the '%s'\n\t" + \ - "compiler does not know how to deal with Fortran runtimes." - SCons.Warnings.warn(SCons.Warnings.FortranCxxMixWarning, - msg % env.subst('$CXX')) - issued_mixed_link_warning = True - return '$CXX' - elif has_d: - env['LINKCOM'] = env['DLINKCOM'] - env['SHLINKCOM'] = env['SHDLINKCOM'] - return '$DC' - elif has_fortran: - return '$FORTRAN' - elif has_cplusplus: - return '$CXX' - return '$CC' - -def shlib_emitter(target, source, env): - Verbose = False - platform = env.subst('$PLATFORM') - for tgt in target: - tgt.attributes.shared = 1 - try: - # target[0] comes in as libtest.so. Add the version extensions - version = env.subst('$SHLIBVERSION') - if version: - version_names = shlib_emitter_names(target, source, env) - # mark the target with the shared libraries name, including - # the version number - target[0].attributes.shlibname = version_names[0] - shlib = env.File(version_names[0], directory=target[0].get_dir()) - target[0].attributes.shlibpath = shlib.get_internal_path() - for name in version_names[1:]: - env.SideEffect(name, shlib) - env.Clean(shlib, name) - if Verbose: - print "shlib_emitter: add side effect - ",name - env.Clean(shlib, target[0]) - return ([shlib], source) - except KeyError: - version = None - return (target, source) - -def shlib_emitter_names(target, source, env): - """Return list of file names that are side effects for a versioned library build. The first name in the list is the new name for the target""" - Verbose = False - platform = env.subst('$PLATFORM') - version_names = [] - try: - # target[0] comes in as libtest.so. Add the version extensions - version = env.subst('$SHLIBVERSION') - if version.count(".") != 2: - # We need a version of the form x.y.z to proceed - raise ValueError - if version: - if platform == 'posix' or platform == 'sunos': - versionparts = version.split('.') - if hasattr(target[0].attributes, 'shlibname'): - name = target[0].attributes.shlibname - else: - name = target[0].name - # generate library name with the version number - version_name = name + '.' + version - if Verbose: - print "shlib_emitter_names: target is ", version_name - print "shlib_emitter_names: side effect: ", name - # add version_name to list of names to be a Side effect - version_names.append(version_name) - if Verbose: - print "shlib_emitter_names: versionparts ",versionparts - for ver in versionparts[0:-1]: - name = name + '.' + ver - if Verbose: - print "shlib_emitter_names: side effect: ", name - # add name to list of names to be a Side effect - version_names.append(name) - elif platform == 'darwin': - shlib_suffix = env.subst('$SHLIBSUFFIX') - if hasattr(target[0].attributes, 'shlibname'): - name = target[0].attributes.shlibname - else: - name = target[0].name - # generate library name with the version number - suffix_re = re.escape(shlib_suffix) - version_name = re.sub(suffix_re, '.' + version + shlib_suffix, name) - if Verbose: - print "shlib_emitter_names: target is ", version_name - print "shlib_emitter_names: side effect: ", name - # add version_name to list of names to be a Side effect - version_names.append(version_name) - elif platform == 'cygwin': - shlib_suffix = env.subst('$SHLIBSUFFIX') - if hasattr(target[0].attributes, 'shlibname'): - name = target[0].attributes.shlibname - else: - name = target[0].name - # generate library name with the version number - suffix_re = re.escape(shlib_suffix) - version_name = re.sub(suffix_re, '-' + re.sub('\.', '-', version) + shlib_suffix, name) - if Verbose: - print "shlib_emitter_names: target is ", version_name - print "shlib_emitter_names: side effect: ", name - # add version_name to list of names to be a Side effect - version_names.append(version_name) - - except KeyError: - version = None - return version_names - -def generate(env): - """Add Builders and construction variables for gnulink to an Environment.""" - SCons.Tool.createSharedLibBuilder(env) - SCons.Tool.createProgBuilder(env) - - env['SHLINK'] = '$LINK' - env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS -shared') - env['SHLINKCOM'] = '$SHLINK -o $TARGET $SHLINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' - # don't set up the emitter, cause AppendUnique will generate a list - # starting with None :-( - env.Append(SHLIBEMITTER = [shlib_emitter]) - env['SMARTLINK'] = smart_link - env['LINK'] = "$SMARTLINK" - env['LINKFLAGS'] = SCons.Util.CLVar('') - # __RPATH is only set to something ($_RPATH typically) on platforms that support it. - env['LINKCOM'] = '$LINK -o $TARGET $LINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' - env['LIBDIRPREFIX']='-L' - env['LIBDIRSUFFIX']='' - env['_LIBFLAGS']='${_stripixes(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, LIBPREFIXES, LIBSUFFIXES, __env__)}' - env['LIBLINKPREFIX']='-l' - env['LIBLINKSUFFIX']='' - - if env['PLATFORM'] == 'hpux': - env['SHLIBSUFFIX'] = '.sl' - elif env['PLATFORM'] == 'aix': - env['SHLIBSUFFIX'] = '.a' - - # For most platforms, a loadable module is the same as a shared - # library. Platforms which are different can override these, but - # setting them the same means that LoadableModule works everywhere. - SCons.Tool.createLoadableModuleBuilder(env) - env['LDMODULE'] = '$SHLINK' - # don't set up the emitter, cause AppendUnique will generate a list - # starting with None :-( - env.Append(LDMODULEEMITTER='$SHLIBEMITTER') - env['LDMODULEPREFIX'] = '$SHLIBPREFIX' - env['LDMODULESUFFIX'] = '$SHLIBSUFFIX' - env['LDMODULEFLAGS'] = '$SHLINKFLAGS' - env['LDMODULECOM'] = '$LDMODULE -o $TARGET $LDMODULEFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' - - - -def exists(env): - # This module isn't really a Tool on its own, it's common logic for - # other linkers. - return None - -# Local Variables: -# tab-width:4 -# indent-tabs-mode:nil -# End: -# vim: set expandtab tabstop=4 shiftwidth=4: diff --git a/scons/scons-local-2.4.0/SCons/Action.py b/scons/scons-local-2.4.1/SCons/Action.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Action.py rename to scons/scons-local-2.4.1/SCons/Action.py index 7acde466d..7a4203c89 100644 --- a/scons/scons-local-2.4.0/SCons/Action.py +++ b/scons/scons-local-2.4.1/SCons/Action.py @@ -97,7 +97,7 @@ way for wrapping up the functions. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Action.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Action.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import dis import os diff --git a/scons/scons-local-2.4.0/SCons/Builder.py b/scons/scons-local-2.4.1/SCons/Builder.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Builder.py rename to scons/scons-local-2.4.1/SCons/Builder.py index 4c68d5c3a..6bdd0082c 100644 --- a/scons/scons-local-2.4.0/SCons/Builder.py +++ b/scons/scons-local-2.4.1/SCons/Builder.py @@ -97,7 +97,7 @@ There are the following methods for internal use within this module: # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Builder.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Builder.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import collections @@ -292,8 +292,8 @@ def _node_errors(builder, env, tlist, slist): if t.has_explicit_builder(): if not t.env is None and not t.env is env: action = t.builder.action - t_contents = action.get_contents(tlist, slist, t.env) - contents = action.get_contents(tlist, slist, env) + t_contents = t.builder.action.get_contents(tlist, slist, t.env) + contents = builder.action.get_contents(tlist, slist, env) if t_contents == contents: msg = "Two different environments were specified for target %s,\n\tbut they appear to have the same action: %s" % (t, action.genstring(tlist, slist, t.env)) diff --git a/scons/scons-local-2.4.0/SCons/CacheDir.py b/scons/scons-local-2.4.1/SCons/CacheDir.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/CacheDir.py rename to scons/scons-local-2.4.1/SCons/CacheDir.py index 9e3ec6b22..086d44d3c 100644 --- a/scons/scons-local-2.4.0/SCons/CacheDir.py +++ b/scons/scons-local-2.4.1/SCons/CacheDir.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/CacheDir.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/CacheDir.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """ CacheDir support diff --git a/scons/scons-local-2.4.0/SCons/Conftest.py b/scons/scons-local-2.4.1/SCons/Conftest.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Conftest.py rename to scons/scons-local-2.4.1/SCons/Conftest.py index e9702ff00..87a30229f 100644 --- a/scons/scons-local-2.4.0/SCons/Conftest.py +++ b/scons/scons-local-2.4.1/SCons/Conftest.py @@ -684,6 +684,22 @@ return 0; return ret +def CheckProg(context, prog_name): + """ + Configure check for a specific program. + + Check whether program prog_name exists in path. If it is found, + returns the path for it, otherwise returns None. + """ + context.Display("Checking whether %s program exists..." % prog_name) + path = context.env.WhereIs(prog_name) + if path: + context.Display(path + "\n") + else: + context.Display("no\n") + return path + + # # END OF PUBLIC FUNCTIONS # diff --git a/scons/scons-local-2.4.0/SCons/Debug.py b/scons/scons-local-2.4.1/SCons/Debug.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Debug.py rename to scons/scons-local-2.4.1/SCons/Debug.py index 0aa077d1a..22d09ab6b 100644 --- a/scons/scons-local-2.4.0/SCons/Debug.py +++ b/scons/scons-local-2.4.1/SCons/Debug.py @@ -28,7 +28,7 @@ needed by most users. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Debug.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Debug.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import sys diff --git a/scons/scons-local-2.4.0/SCons/Defaults.py b/scons/scons-local-2.4.1/SCons/Defaults.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Defaults.py rename to scons/scons-local-2.4.1/SCons/Defaults.py index b4cbb9a09..8c86c955b 100644 --- a/scons/scons-local-2.4.0/SCons/Defaults.py +++ b/scons/scons-local-2.4.1/SCons/Defaults.py @@ -33,7 +33,7 @@ from distutils.msvccompiler. # from __future__ import division -__revision__ = "src/engine/SCons/Defaults.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Defaults.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os @@ -482,6 +482,15 @@ class Variable_Method_Caller(object): frame = frame.f_back return None +# 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' : {}, 'SCANNERS' : [], @@ -499,6 +508,12 @@ ConstructionEnvironment = { '_LIBDIRFLAGS' : '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', '_CPPINCFLAGS' : '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', '_CPPDEFFLAGS' : '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}', + + '__libversionflags' : __libversionflags, + '__SHLIBVERSIONFLAGS' : '${__libversionflags(__env__,"SHLIBVERSION","_SHLIBVERSIONFLAGS")}', + '__LDMODULEVERSIONFLAGS' : '${__libversionflags(__env__,"LDMODULEVERSION","_LDMODULEVERSIONFLAGS")}', + '__DSHLIBVERSIONFLAGS' : '${__libversionflags(__env__,"DSHLIBVERSION","_DSHLIBVERSIONFLAGS")}', + 'TEMPFILE' : NullCmdGenerator, 'Dir' : Variable_Method_Caller('TARGET', 'Dir'), 'Dirs' : Variable_Method_Caller('TARGET', 'Dirs'), diff --git a/scons/scons-local-2.4.0/SCons/Environment.py b/scons/scons-local-2.4.1/SCons/Environment.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Environment.py rename to scons/scons-local-2.4.1/SCons/Environment.py index 865c82164..b779302bd 100644 --- a/scons/scons-local-2.4.0/SCons/Environment.py +++ b/scons/scons-local-2.4.1/SCons/Environment.py @@ -31,7 +31,7 @@ Environment # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Environment.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Environment.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import copy @@ -612,7 +612,7 @@ class SubstitutionEnvironment(object): def Override(self, overrides): """ - Produce a modified environment whose variables are overriden by + Produce a modified environment whose variables are overridden by the overrides dictionaries. "overrides" is a dictionary that will override the variables of this environment. diff --git a/scons/scons-local-2.4.0/SCons/Errors.py b/scons/scons-local-2.4.1/SCons/Errors.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Errors.py rename to scons/scons-local-2.4.1/SCons/Errors.py index 998a70d9f..d19d8e46e 100644 --- a/scons/scons-local-2.4.0/SCons/Errors.py +++ b/scons/scons-local-2.4.1/SCons/Errors.py @@ -28,7 +28,7 @@ and user errors in SCons. """ -__revision__ = "src/engine/SCons/Errors.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Errors.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Executor.py b/scons/scons-local-2.4.1/SCons/Executor.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Executor.py rename to scons/scons-local-2.4.1/SCons/Executor.py index 3211fd11d..f7a4ee15e 100644 --- a/scons/scons-local-2.4.0/SCons/Executor.py +++ b/scons/scons-local-2.4.1/SCons/Executor.py @@ -27,7 +27,7 @@ Nodes. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Executor.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Executor.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import collections diff --git a/scons/scons-local-2.4.0/SCons/Job.py b/scons/scons-local-2.4.1/SCons/Job.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Job.py rename to scons/scons-local-2.4.1/SCons/Job.py index 60aa0ae13..08c6c30f5 100644 --- a/scons/scons-local-2.4.0/SCons/Job.py +++ b/scons/scons-local-2.4.1/SCons/Job.py @@ -29,7 +29,7 @@ stop, and wait on jobs. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Job.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Job.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.compat diff --git a/scons/scons-local-2.4.0/SCons/Memoize.py b/scons/scons-local-2.4.1/SCons/Memoize.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Memoize.py rename to scons/scons-local-2.4.1/SCons/Memoize.py index 77a8e161e..8051c6bc3 100644 --- a/scons/scons-local-2.4.0/SCons/Memoize.py +++ b/scons/scons-local-2.4.1/SCons/Memoize.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Memoize.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Memoize.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Memoizer diff --git a/scons/scons-local-2.4.0/SCons/Node/Alias.py b/scons/scons-local-2.4.1/SCons/Node/Alias.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Node/Alias.py rename to scons/scons-local-2.4.1/SCons/Node/Alias.py index 7e13b00d8..3b58d4d88 100644 --- a/scons/scons-local-2.4.0/SCons/Node/Alias.py +++ b/scons/scons-local-2.4.1/SCons/Node/Alias.py @@ -30,7 +30,7 @@ This creates a hash of global Aliases (dummy targets). # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Node/Alias.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Node/Alias.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import collections diff --git a/scons/scons-local-2.4.0/SCons/Node/FS.py b/scons/scons-local-2.4.1/SCons/Node/FS.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Node/FS.py rename to scons/scons-local-2.4.1/SCons/Node/FS.py index b6a1bb52a..bd43676b2 100644 --- a/scons/scons-local-2.4.0/SCons/Node/FS.py +++ b/scons/scons-local-2.4.1/SCons/Node/FS.py @@ -32,7 +32,7 @@ that can be used by scripts or modules looking for the canonical default. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Node/FS.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Node/FS.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import fnmatch import os @@ -2182,7 +2182,12 @@ class Dir(Base): r = [os.path.join(str(dir), x) for x in r] result.extend(r) if exclude: - result = filter(lambda x: not any(fnmatch.fnmatch(str(x), e) for e in SCons.Util.flatten(exclude)), result) + excludes = [] + excludeList = SCons.Util.flatten(exclude) + for x in excludeList: + r = self.glob(x, ondisk, source, strings) + excludes.extend(r) + result = filter(lambda x: not any(fnmatch.fnmatch(str(x), str(e)) for e in SCons.Util.flatten(excludes)), result) return sorted(result, key=lambda a: str(a)) def _glob1(self, pattern, ondisk=True, source=False, strings=False): diff --git a/scons/scons-local-2.4.0/SCons/Node/Python.py b/scons/scons-local-2.4.1/SCons/Node/Python.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Node/Python.py rename to scons/scons-local-2.4.1/SCons/Node/Python.py index b247ff6f7..171752807 100644 --- a/scons/scons-local-2.4.0/SCons/Node/Python.py +++ b/scons/scons-local-2.4.1/SCons/Node/Python.py @@ -27,7 +27,7 @@ Python nodes. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Node/Python.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Node/Python.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Node diff --git a/scons/scons-local-2.4.0/SCons/Node/__init__.py b/scons/scons-local-2.4.1/SCons/Node/__init__.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Node/__init__.py rename to scons/scons-local-2.4.1/SCons/Node/__init__.py index 79db894cf..4cd62d5d5 100644 --- a/scons/scons-local-2.4.0/SCons/Node/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Node/__init__.py @@ -41,7 +41,7 @@ be able to depend on any other type of "thing." # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Node/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Node/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import collections import copy diff --git a/scons/scons-local-2.4.0/SCons/Options/BoolOption.py b/scons/scons-local-2.4.1/SCons/Options/BoolOption.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Options/BoolOption.py rename to scons/scons-local-2.4.1/SCons/Options/BoolOption.py index c8d901f53..62aa952a2 100644 --- a/scons/scons-local-2.4.0/SCons/Options/BoolOption.py +++ b/scons/scons-local-2.4.1/SCons/Options/BoolOption.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Options/BoolOption.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Options/BoolOption.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Options module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/Options/EnumOption.py b/scons/scons-local-2.4.1/SCons/Options/EnumOption.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Options/EnumOption.py rename to scons/scons-local-2.4.1/SCons/Options/EnumOption.py index 58b99ef81..3e689afb0 100644 --- a/scons/scons-local-2.4.0/SCons/Options/EnumOption.py +++ b/scons/scons-local-2.4.1/SCons/Options/EnumOption.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Options/EnumOption.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Options/EnumOption.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Options module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/Options/ListOption.py b/scons/scons-local-2.4.1/SCons/Options/ListOption.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Options/ListOption.py rename to scons/scons-local-2.4.1/SCons/Options/ListOption.py index 00c93d945..c9a7f8f39 100644 --- a/scons/scons-local-2.4.0/SCons/Options/ListOption.py +++ b/scons/scons-local-2.4.1/SCons/Options/ListOption.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Options/ListOption.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Options/ListOption.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Options module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/Options/PackageOption.py b/scons/scons-local-2.4.1/SCons/Options/PackageOption.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Options/PackageOption.py rename to scons/scons-local-2.4.1/SCons/Options/PackageOption.py index 56624f0aa..5a12cbe76 100644 --- a/scons/scons-local-2.4.0/SCons/Options/PackageOption.py +++ b/scons/scons-local-2.4.1/SCons/Options/PackageOption.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Options/PackageOption.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Options/PackageOption.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Options module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/Options/PathOption.py b/scons/scons-local-2.4.1/SCons/Options/PathOption.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Options/PathOption.py rename to scons/scons-local-2.4.1/SCons/Options/PathOption.py index a4b81ecf5..00070b142 100644 --- a/scons/scons-local-2.4.0/SCons/Options/PathOption.py +++ b/scons/scons-local-2.4.1/SCons/Options/PathOption.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Options/PathOption.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Options/PathOption.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Options module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/Options/__init__.py b/scons/scons-local-2.4.1/SCons/Options/__init__.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Options/__init__.py rename to scons/scons-local-2.4.1/SCons/Options/__init__.py index 50997120e..5612ad047 100644 --- a/scons/scons-local-2.4.0/SCons/Options/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Options/__init__.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Options/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Options/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Options module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/PathList.py b/scons/scons-local-2.4.1/SCons/PathList.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/PathList.py rename to scons/scons-local-2.4.1/SCons/PathList.py index b3591445c..61b64ffaf 100644 --- a/scons/scons-local-2.4.0/SCons/PathList.py +++ b/scons/scons-local-2.4.1/SCons/PathList.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/PathList.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/PathList.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """SCons.PathList diff --git a/scons/scons-local-2.4.0/SCons/Platform/__init__.py b/scons/scons-local-2.4.1/SCons/Platform/__init__.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Platform/__init__.py rename to scons/scons-local-2.4.1/SCons/Platform/__init__.py index ca4bc9be9..d8be160dc 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Platform/__init__.py @@ -42,7 +42,7 @@ their own platform definition. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.compat diff --git a/scons/scons-local-2.4.0/SCons/Platform/aix.py b/scons/scons-local-2.4.1/SCons/Platform/aix.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Platform/aix.py rename to scons/scons-local-2.4.1/SCons/Platform/aix.py index 44bccd1cb..f36eab68c 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/aix.py +++ b/scons/scons-local-2.4.1/SCons/Platform/aix.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/aix.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/aix.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import subprocess diff --git a/scons/scons-local-2.4.0/SCons/Platform/cygwin.py b/scons/scons-local-2.4.1/SCons/Platform/cygwin.py similarity index 87% rename from scons/scons-local-2.4.0/SCons/Platform/cygwin.py rename to scons/scons-local-2.4.1/SCons/Platform/cygwin.py index d04bbe7ae..a901ac363 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/cygwin.py +++ b/scons/scons-local-2.4.1/SCons/Platform/cygwin.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/cygwin.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/cygwin.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import posix from SCons.Platform import TempFileMunge @@ -42,8 +42,8 @@ def generate(env): env['PROGSUFFIX'] = '.exe' env['SHLIBPREFIX'] = '' env['SHLIBSUFFIX'] = '.dll' - env['LIBPREFIXES'] = [ '$LIBPREFIX', '$SHLIBPREFIX' ] - env['LIBSUFFIXES'] = [ '$LIBSUFFIX', '$SHLIBSUFFIX' ] + env['LIBPREFIXES'] = [ '$LIBPREFIX', '$SHLIBPREFIX', '$IMPLIBPREFIX' ] + env['LIBSUFFIXES'] = [ '$LIBSUFFIX', '$SHLIBSUFFIX', '$IMPLIBSUFFIX' ] env['TEMPFILE'] = TempFileMunge env['TEMPFILEPREFIX'] = '@' env['MAXLINELENGTH'] = 2048 diff --git a/scons/scons-local-2.4.0/SCons/Platform/darwin.py b/scons/scons-local-2.4.1/SCons/Platform/darwin.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Platform/darwin.py rename to scons/scons-local-2.4.1/SCons/Platform/darwin.py index efd8ba4d6..73f140f4e 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/darwin.py +++ b/scons/scons-local-2.4.1/SCons/Platform/darwin.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/darwin.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/darwin.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import posix import os diff --git a/scons/scons-local-2.4.0/SCons/Platform/hpux.py b/scons/scons-local-2.4.1/SCons/Platform/hpux.py similarity index 93% rename from scons/scons-local-2.4.0/SCons/Platform/hpux.py rename to scons/scons-local-2.4.1/SCons/Platform/hpux.py index 2e2fbca46..36e676415 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/hpux.py +++ b/scons/scons-local-2.4.1/SCons/Platform/hpux.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/hpux.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/hpux.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import posix diff --git a/scons/scons-local-2.4.0/SCons/Platform/irix.py b/scons/scons-local-2.4.1/SCons/Platform/irix.py similarity index 93% rename from scons/scons-local-2.4.0/SCons/Platform/irix.py rename to scons/scons-local-2.4.1/SCons/Platform/irix.py index 3bedbdf19..e947b5484 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/irix.py +++ b/scons/scons-local-2.4.1/SCons/Platform/irix.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/irix.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/irix.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import posix diff --git a/scons/scons-local-2.4.0/SCons/Platform/os2.py b/scons/scons-local-2.4.1/SCons/Platform/os2.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Platform/os2.py rename to scons/scons-local-2.4.1/SCons/Platform/os2.py index 82eb1635b..5f32844d0 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/os2.py +++ b/scons/scons-local-2.4.1/SCons/Platform/os2.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/os2.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/os2.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import win32 def generate(env): diff --git a/scons/scons-local-2.4.0/SCons/Platform/posix.py b/scons/scons-local-2.4.1/SCons/Platform/posix.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Platform/posix.py rename to scons/scons-local-2.4.1/SCons/Platform/posix.py index 84458637d..78e80f301 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/posix.py +++ b/scons/scons-local-2.4.1/SCons/Platform/posix.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/posix.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/posix.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import errno import os diff --git a/scons/scons-local-2.4.0/SCons/Platform/sunos.py b/scons/scons-local-2.4.1/SCons/Platform/sunos.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Platform/sunos.py rename to scons/scons-local-2.4.1/SCons/Platform/sunos.py index 1c1d79773..7646eb7e3 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/sunos.py +++ b/scons/scons-local-2.4.1/SCons/Platform/sunos.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/sunos.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/sunos.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import posix diff --git a/scons/scons-local-2.4.0/SCons/Platform/win32.py b/scons/scons-local-2.4.1/SCons/Platform/win32.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Platform/win32.py rename to scons/scons-local-2.4.1/SCons/Platform/win32.py index 3bad86b9e..f5c787af6 100644 --- a/scons/scons-local-2.4.0/SCons/Platform/win32.py +++ b/scons/scons-local-2.4.1/SCons/Platform/win32.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Platform/win32.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Platform/win32.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/SConf.py b/scons/scons-local-2.4.1/SCons/SConf.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/SConf.py rename to scons/scons-local-2.4.1/SCons/SConf.py index 2ef400361..5a158564f 100644 --- a/scons/scons-local-2.4.0/SCons/SConf.py +++ b/scons/scons-local-2.4.1/SCons/SConf.py @@ -34,7 +34,7 @@ libraries are installed, if some command line options are supported etc. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/SConf.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/SConf.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.compat @@ -444,6 +444,7 @@ class SConfBase(object): 'CheckCXXHeader' : CheckCXXHeader, 'CheckLib' : CheckLib, 'CheckLibWithHeader' : CheckLibWithHeader, + 'CheckProg' : CheckProg, } self.AddTests(default_tests) self.AddTests(custom_tests) @@ -1047,6 +1048,14 @@ def CheckLibWithHeader(context, libs, header, language, context.did_show_result = 1 return not res +def CheckProg(context, prog_name): + """Simple check if a program exists in the path. Returns the path + for the application, or None if not found. + """ + res = SCons.Conftest.CheckProg(context, prog_name) + context.did_show_result = 1 + return res + # Local Variables: # tab-width:4 # indent-tabs-mode:nil diff --git a/scons/scons-local-2.4.0/SCons/SConsign.py b/scons/scons-local-2.4.1/SCons/SConsign.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/SConsign.py rename to scons/scons-local-2.4.1/SCons/SConsign.py index e31a3eb71..7ce8c5ec2 100644 --- a/scons/scons-local-2.4.0/SCons/SConsign.py +++ b/scons/scons-local-2.4.1/SCons/SConsign.py @@ -27,7 +27,7 @@ Writing and reading information to the .sconsign file or files. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/SConsign.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/SConsign.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.compat diff --git a/scons/scons-local-2.4.0/SCons/Scanner/C.py b/scons/scons-local-2.4.1/SCons/Scanner/C.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Scanner/C.py rename to scons/scons-local-2.4.1/SCons/Scanner/C.py index 33e114555..bdccb34d3 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/C.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/C.py @@ -27,7 +27,7 @@ This module implements the depenency scanner for C/C++ code. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/C.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/C.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Node.FS import SCons.Scanner diff --git a/scons/scons-local-2.4.0/SCons/Scanner/D.py b/scons/scons-local-2.4.1/SCons/Scanner/D.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Scanner/D.py rename to scons/scons-local-2.4.1/SCons/Scanner/D.py index 2c51a0974..0b917d582 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/D.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/D.py @@ -30,7 +30,7 @@ Coded by Andy Friesen # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/D.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/D.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import re diff --git a/scons/scons-local-2.4.0/SCons/Scanner/Dir.py b/scons/scons-local-2.4.1/SCons/Scanner/Dir.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Scanner/Dir.py rename to scons/scons-local-2.4.1/SCons/Scanner/Dir.py index 756542384..6956d64fc 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/Dir.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/Dir.py @@ -20,7 +20,7 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Scanner/Dir.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/Dir.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Node.FS import SCons.Scanner diff --git a/scons/scons-local-2.4.0/SCons/Scanner/Fortran.py b/scons/scons-local-2.4.1/SCons/Scanner/Fortran.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Scanner/Fortran.py rename to scons/scons-local-2.4.1/SCons/Scanner/Fortran.py index a1f39277f..97cd3b261 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/Fortran.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/Fortran.py @@ -26,7 +26,7 @@ This module implements the dependency scanner for Fortran code. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Scanner/Fortran.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/Fortran.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import re diff --git a/scons/scons-local-2.4.0/SCons/Scanner/IDL.py b/scons/scons-local-2.4.1/SCons/Scanner/IDL.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Scanner/IDL.py rename to scons/scons-local-2.4.1/SCons/Scanner/IDL.py index 6758bd2e3..0df939ca1 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/IDL.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/IDL.py @@ -28,7 +28,7 @@ Definition Language) files. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/IDL.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/IDL.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Node.FS import SCons.Scanner diff --git a/scons/scons-local-2.4.0/SCons/Scanner/LaTeX.py b/scons/scons-local-2.4.1/SCons/Scanner/LaTeX.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Scanner/LaTeX.py rename to scons/scons-local-2.4.1/SCons/Scanner/LaTeX.py index aed074c97..487627ca0 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/LaTeX.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/LaTeX.py @@ -27,7 +27,7 @@ This module implements the dependency scanner for LaTeX code. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/LaTeX.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/LaTeX.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re diff --git a/scons/scons-local-2.4.0/SCons/Scanner/Prog.py b/scons/scons-local-2.4.1/SCons/Scanner/Prog.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Scanner/Prog.py rename to scons/scons-local-2.4.1/SCons/Scanner/Prog.py index c0511dcd1..d464c89fd 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/Prog.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/Prog.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/Prog.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/Prog.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Node import SCons.Node.FS diff --git a/scons/scons-local-2.4.0/SCons/Scanner/RC.py b/scons/scons-local-2.4.1/SCons/Scanner/RC.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Scanner/RC.py rename to scons/scons-local-2.4.1/SCons/Scanner/RC.py index f73b47ee5..ea3893b2b 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/RC.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/RC.py @@ -28,7 +28,7 @@ Definition Language) files. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/RC.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/RC.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Node.FS import SCons.Scanner diff --git a/scons/scons-local-2.4.0/SCons/Scanner/__init__.py b/scons/scons-local-2.4.1/SCons/Scanner/__init__.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Scanner/__init__.py rename to scons/scons-local-2.4.1/SCons/Scanner/__init__.py index d51cb9eda..aca07e2c3 100644 --- a/scons/scons-local-2.4.0/SCons/Scanner/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Scanner/__init__.py @@ -27,7 +27,7 @@ The Scanner package for the SCons software construction utility. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Scanner/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Scanner/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import re diff --git a/scons/scons-local-2.4.0/SCons/Script/Interactive.py b/scons/scons-local-2.4.1/SCons/Script/Interactive.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Script/Interactive.py rename to scons/scons-local-2.4.1/SCons/Script/Interactive.py index afcde0c3d..afb35af02 100644 --- a/scons/scons-local-2.4.0/SCons/Script/Interactive.py +++ b/scons/scons-local-2.4.1/SCons/Script/Interactive.py @@ -20,7 +20,7 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Script/Interactive.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Script/Interactive.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """ SCons interactive mode diff --git a/scons/scons-local-2.4.0/SCons/Script/Main.py b/scons/scons-local-2.4.1/SCons/Script/Main.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Script/Main.py rename to scons/scons-local-2.4.1/SCons/Script/Main.py index 6684fbd0a..d1ed77a5f 100644 --- a/scons/scons-local-2.4.0/SCons/Script/Main.py +++ b/scons/scons-local-2.4.1/SCons/Script/Main.py @@ -34,7 +34,7 @@ deprecated_python_version = (2, 7, 0) # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Script/Main.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Script/Main.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.compat @@ -484,6 +484,9 @@ def GetOption(name): def SetOption(name, value): return OptionsParser.values.set_option(name, value) +def PrintHelp(file=None): + OptionsParser.print_help(file=file) + # class Stats(object): def __init__(self): diff --git a/scons/scons-local-2.4.0/SCons/Script/SConsOptions.py b/scons/scons-local-2.4.1/SCons/Script/SConsOptions.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Script/SConsOptions.py rename to scons/scons-local-2.4.1/SCons/Script/SConsOptions.py index 7e458aa22..6d02b0a65 100644 --- a/scons/scons-local-2.4.0/SCons/Script/SConsOptions.py +++ b/scons/scons-local-2.4.1/SCons/Script/SConsOptions.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Script/SConsOptions.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Script/SConsOptions.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import optparse import re @@ -268,7 +268,7 @@ class SConsOptionParser(optparse.OptionParser): preserve_unknown_options = False def error(self, msg): - # overriden OptionValueError exception handler + # overridden OptionValueError exception handler self.print_usage(sys.stderr) sys.stderr.write("SCons Error: %s\n" % msg) sys.exit(2) diff --git a/scons/scons-local-2.4.0/SCons/Script/SConscript.py b/scons/scons-local-2.4.1/SCons/Script/SConscript.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Script/SConscript.py rename to scons/scons-local-2.4.1/SCons/Script/SConscript.py index ead6f2ea1..2d66f5c5a 100644 --- a/scons/scons-local-2.4.0/SCons/Script/SConscript.py +++ b/scons/scons-local-2.4.1/SCons/Script/SConscript.py @@ -28,7 +28,7 @@ files. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import division -__revision__ = "src/engine/SCons/Script/SConscript.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Script/SConscript.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons import SCons.Action @@ -499,9 +499,9 @@ class SConsEnvironment(SCons.Environment.Base): name = self.subst(name) return SCons.Script.Main.GetOption(name) - def Help(self, text): + def Help(self, text, append=False): text = self.subst(text, raw=1) - SCons.Script.HelpFunction(text) + SCons.Script.HelpFunction(text, append=append) def Import(self, *vars): try: diff --git a/scons/scons-local-2.4.0/SCons/Script/__init__.py b/scons/scons-local-2.4.1/SCons/Script/__init__.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Script/__init__.py rename to scons/scons-local-2.4.1/SCons/Script/__init__.py index c21882fb2..f9c4e514e 100644 --- a/scons/scons-local-2.4.0/SCons/Script/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Script/__init__.py @@ -34,13 +34,14 @@ it goes here. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Script/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Script/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import time start_time = time.time() import collections import os +import StringIO import sys # Special chicken-and-egg handling of the "--debug=memoizer" flag: @@ -107,6 +108,7 @@ QuestionTask = Main.QuestionTask #SConscriptSettableOptions = Main.SConscriptSettableOptions AddOption = Main.AddOption +PrintHelp = Main.PrintHelp GetOption = Main.GetOption SetOption = Main.SetOption Progress = Main.Progress @@ -258,12 +260,25 @@ def _Set_Default_Targets(env, tlist): # help_text = None -def HelpFunction(text): +def HelpFunction(text, append=False): global help_text - if SCons.Script.help_text is None: - SCons.Script.help_text = text - else: - help_text = help_text + text + if help_text is None: + if append: + s = StringIO.StringIO() + PrintHelp(s) + help_text = s.getvalue() + s.close() + else: + help_text = "" +# +# Was in original patch but this text is arbitrary and breaks tests +# so I removed it (Deegan) +# help_text = help_text + "\nLocal Build Variables:\n" + text +# else: +# help_text = help_text + text + + help_text= help_text + text + # # Will be non-zero if we are reading an SConscript file. @@ -318,6 +333,7 @@ GlobalDefaultEnvironmentFunctions = [ 'Ignore', 'Install', 'InstallAs', + 'InstallVersionedLib', 'Literal', 'Local', 'ParseDepends', diff --git a/scons/scons-local-2.4.0/SCons/Sig.py b/scons/scons-local-2.4.1/SCons/Sig.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Sig.py rename to scons/scons-local-2.4.1/SCons/Sig.py index e949cfb18..6069d55d4 100644 --- a/scons/scons-local-2.4.0/SCons/Sig.py +++ b/scons/scons-local-2.4.1/SCons/Sig.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Sig.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Sig.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Place-holder for the old SCons.Sig module hierarchy diff --git a/scons/scons-local-2.4.0/SCons/Subst.py b/scons/scons-local-2.4.1/SCons/Subst.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Subst.py rename to scons/scons-local-2.4.1/SCons/Subst.py index da0fa68da..8a3a35963 100644 --- a/scons/scons-local-2.4.0/SCons/Subst.py +++ b/scons/scons-local-2.4.1/SCons/Subst.py @@ -26,7 +26,7 @@ SCons string substitution. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Subst.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Subst.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import collections import re diff --git a/scons/scons-local-2.4.0/SCons/Taskmaster.py b/scons/scons-local-2.4.1/SCons/Taskmaster.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Taskmaster.py rename to scons/scons-local-2.4.1/SCons/Taskmaster.py index b303f7936..f77bde1fb 100644 --- a/scons/scons-local-2.4.0/SCons/Taskmaster.py +++ b/scons/scons-local-2.4.1/SCons/Taskmaster.py @@ -47,7 +47,7 @@ interface and the SCons build engine. There are two key classes here: target(s) that it decides need to be evaluated and/or built. """ -__revision__ = "src/engine/SCons/Taskmaster.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Taskmaster.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from itertools import chain import operator diff --git a/scons/scons-local-2.4.0/SCons/Tool/386asm.py b/scons/scons-local-2.4.1/SCons/Tool/386asm.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/386asm.py rename to scons/scons-local-2.4.1/SCons/Tool/386asm.py index 06d271e7c..56b8b3858 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/386asm.py +++ b/scons/scons-local-2.4.1/SCons/Tool/386asm.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/386asm.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/386asm.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.PharLapCommon import addPharLapPaths import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/BitKeeper.py b/scons/scons-local-2.4.1/SCons/Tool/BitKeeper.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/BitKeeper.py rename to scons/scons-local-2.4.1/SCons/Tool/BitKeeper.py index 9df9f5918..88fabd1e2 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/BitKeeper.py +++ b/scons/scons-local-2.4.1/SCons/Tool/BitKeeper.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/BitKeeper.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/BitKeeper.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/CVS.py b/scons/scons-local-2.4.1/SCons/Tool/CVS.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/CVS.py rename to scons/scons-local-2.4.1/SCons/Tool/CVS.py index 14bc18e40..e85223680 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/CVS.py +++ b/scons/scons-local-2.4.1/SCons/Tool/CVS.py @@ -29,7 +29,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/CVS.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/CVS.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/DCommon.py b/scons/scons-local-2.4.1/SCons/Tool/DCommon.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/DCommon.py rename to scons/scons-local-2.4.1/SCons/Tool/DCommon.py index db0366051..c38334932 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/DCommon.py +++ b/scons/scons-local-2.4.1/SCons/Tool/DCommon.py @@ -28,7 +28,7 @@ Coded by Russel Winder (russel@winder.org.uk) # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/DCommon.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/DCommon.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/FortranCommon.py b/scons/scons-local-2.4.1/SCons/Tool/FortranCommon.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/FortranCommon.py rename to scons/scons-local-2.4.1/SCons/Tool/FortranCommon.py index b8ff7d94c..45bd6485e 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/FortranCommon.py +++ b/scons/scons-local-2.4.1/SCons/Tool/FortranCommon.py @@ -27,7 +27,7 @@ Stuff for processing Fortran, common to all fortran dialects. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/FortranCommon.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/FortranCommon.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import re import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/GettextCommon.py b/scons/scons-local-2.4.1/SCons/Tool/GettextCommon.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/GettextCommon.py rename to scons/scons-local-2.4.1/SCons/Tool/GettextCommon.py index af9b074b7..36f8fa23a 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/GettextCommon.py +++ b/scons/scons-local-2.4.1/SCons/Tool/GettextCommon.py @@ -24,7 +24,7 @@ Used by several tools of `gettext` toolset. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/GettextCommon.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/GettextCommon.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Warnings import re @@ -306,23 +306,6 @@ class RPaths(object): - Tuple of strings, which represent paths relative to current working directory (for given environment). """ - # os.path.relpath is available only on python >= 2.6. We use our own - # implementation. It's taken from BareNecessities package: - # http://jimmyg.org/work/code/barenecessities/index.html - from posixpath import curdir - def relpath(path, start=curdir): - import posixpath - """Return a relative version of a path""" - if not path: - raise ValueError("no path specified") - start_list = posixpath.abspath(start).split(posixpath.sep) - path_list = posixpath.abspath(path).split(posixpath.sep) - # Work out how much of the filepath is shared by start and path. - i = len(posixpath.commonprefix([start_list, path_list])) - rel_list = [posixpath.pardir] * (len(start_list)-i) + path_list[i:] - if not rel_list: - return posixpath.curdir - return posixpath.join(*rel_list) import os import SCons.Node.FS rpaths = () @@ -330,7 +313,7 @@ class RPaths(object): for node in nodes: rpath = None if isinstance(node, SCons.Node.FS.Base): - rpath = relpath(node.get_abspath(), cwd) + rpath = os.path.relpath(node.get_abspath(), cwd) # FIXME: Other types possible here? if rpath is not None: rpaths += (rpath,) diff --git a/scons/scons-local-2.4.0/SCons/Tool/JavaCommon.py b/scons/scons-local-2.4.1/SCons/Tool/JavaCommon.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/JavaCommon.py rename to scons/scons-local-2.4.1/SCons/Tool/JavaCommon.py index 8b1e48efc..0c149957f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/JavaCommon.py +++ b/scons/scons-local-2.4.1/SCons/Tool/JavaCommon.py @@ -27,7 +27,7 @@ Stuff for processing Java. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/JavaCommon.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/JavaCommon.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/__init__.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/__init__.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/__init__.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/__init__.py index 90cb0bc74..6340a3048 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/__init__.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/MSCommon/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """ Common functions for Microsoft Visual Studio and Visual C/C++. diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/arch.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/arch.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/arch.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/arch.py index 5bc7ea596..804721521 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/arch.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/arch.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/MSCommon/arch.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/arch.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Module to define supported Windows chip architectures. """ diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/common.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/common.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/common.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/common.py index 60d7d408d..a7bc4070e 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/common.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/common.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/MSCommon/common.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/common.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """ Common helper functions for working with the Microsoft tool chain. @@ -84,8 +84,8 @@ def is_win64(): return _is_win64 -def read_reg(value): - return SCons.Util.RegGetValue(SCons.Util.HKEY_LOCAL_MACHINE, value)[0] +def read_reg(value, hkroot=SCons.Util.HKEY_LOCAL_MACHINE): + return SCons.Util.RegGetValue(hkroot, value)[0] def has_reg(value): """Return True if the given key exists in HKEY_LOCAL_MACHINE, False diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/netframework.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/netframework.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/netframework.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/netframework.py index 0606e27bc..6062e1178 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/netframework.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/netframework.py @@ -20,7 +20,7 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/MSCommon/netframework.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/netframework.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """ """ diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/sdk.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/sdk.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/sdk.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/sdk.py index 537f367c6..1b605b967 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/sdk.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/sdk.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/MSCommon/sdk.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/sdk.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Module to detect the Platform/Windows SDK diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/vc.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/vc.py similarity index 87% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/vc.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/vc.py index 02a32a0ff..7f124082c 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/vc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/vc.py @@ -30,11 +30,12 @@ # * test on 64 bits XP + VS 2005 (and VS 6 if possible) # * SDK # * Assembly -__revision__ = "src/engine/SCons/Tool/MSCommon/vc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/vc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Module for Visual C/C++ detection and configuration. """ import SCons.compat +import SCons.Util import os import platform @@ -137,36 +138,50 @@ def get_host_target(env): _VCVER = ["14.0", "14.0Exp", "12.0", "12.0Exp", "11.0", "11.0Exp", "10.0", "10.0Exp", "9.0", "9.0Exp","8.0", "8.0Exp","7.1", "7.0", "6.0"] _VCVER_TO_PRODUCT_DIR = { - '14.0' : [ - r'Microsoft\VisualStudio\14.0\Setup\VC\ProductDir'], - '14.0Exp' : [ - r'Microsoft\VCExpress\14.0\Setup\VC\ProductDir'], - '12.0' : [ - r'Microsoft\VisualStudio\12.0\Setup\VC\ProductDir'], - '12.0Exp' : [ - r'Microsoft\VCExpress\12.0\Setup\VC\ProductDir'], - '11.0': [ - r'Microsoft\VisualStudio\11.0\Setup\VC\ProductDir'], - '11.0Exp' : [ - r'Microsoft\VCExpress\11.0\Setup\VC\ProductDir'], - '10.0': [ - r'Microsoft\VisualStudio\10.0\Setup\VC\ProductDir'], - '10.0Exp' : [ - r'Microsoft\VCExpress\10.0\Setup\VC\ProductDir'], - '9.0': [ - r'Microsoft\VisualStudio\9.0\Setup\VC\ProductDir'], - '9.0Exp' : [ - r'Microsoft\VCExpress\9.0\Setup\VC\ProductDir'], - '8.0': [ - r'Microsoft\VisualStudio\8.0\Setup\VC\ProductDir'], - '8.0Exp': [ - r'Microsoft\VCExpress\8.0\Setup\VC\ProductDir'], - '7.1': [ - r'Microsoft\VisualStudio\7.1\Setup\VC\ProductDir'], - '7.0': [ - r'Microsoft\VisualStudio\7.0\Setup\VC\ProductDir'], - '6.0': [ - r'Microsoft\VisualStudio\6.0\Setup\Microsoft Visual C++\ProductDir'] + '14.0' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\14.0\Setup\VC\ProductDir')], + '14.0Exp' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VCExpress\14.0\Setup\VC\ProductDir')], + '12.0' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\12.0\Setup\VC\ProductDir'), + ], + '12.0Exp' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VCExpress\12.0\Setup\VC\ProductDir'), + ], + '11.0': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\11.0\Setup\VC\ProductDir'), + ], + '11.0Exp' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VCExpress\11.0\Setup\VC\ProductDir'), + ], + '10.0': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\10.0\Setup\VC\ProductDir'), + ], + '10.0Exp' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VCExpress\10.0\Setup\VC\ProductDir'), + ], + '9.0': [ + (SCons.Util.HKEY_CURRENT_USER, r'Microsoft\DevDiv\VCForPython\9.0\installdir',), + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\9.0\Setup\VC\ProductDir',), + ], + '9.0Exp' : [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VCExpress\9.0\Setup\VC\ProductDir'), + ], + '8.0': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\8.0\Setup\VC\ProductDir'), + ], + '8.0Exp': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VCExpress\8.0\Setup\VC\ProductDir'), + ], + '7.1': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\7.1\Setup\VC\ProductDir'), + ], + '7.0': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\7.0\Setup\VC\ProductDir'), + ], + '6.0': [ + (SCons.Util.HKEY_LOCAL_MACHINE, r'Microsoft\VisualStudio\6.0\Setup\Microsoft Visual C++\ProductDir'), + ] } def msvc_version_to_maj_min(msvc_version): @@ -216,18 +231,25 @@ def find_vc_pdir(msvc_version): If for some reason the requested version could not be found, an exception which inherits from VisualCException will be raised.""" root = 'Software\\' - if common.is_win64(): - root = root + 'Wow6432Node\\' try: hkeys = _VCVER_TO_PRODUCT_DIR[msvc_version] except KeyError: debug("Unknown version of MSVC: %s" % msvc_version) raise UnsupportedVersion("Unknown version %s" % msvc_version) - for key in hkeys: - key = root + key + for hkroot, key in hkeys: try: - comps = common.read_reg(key) + comps = None + if common.is_win64(): + try: + # ordinally at win64, try Wow6432Node first. + comps = common.read_reg(root + 'Wow6432Node\\' + key, hkroot) + except WindowsError, e: + # at Microsoft Visual Studio for Python 2.7, value is not in Wow6432Node + pass + if not comps: + # not Win64, or Microsoft Visual Studio for Python 2.7 + comps = common.read_reg(root + key, hkroot) except WindowsError, e: debug('find_vc_dir(): no VC registry key %s' % repr(key)) else: diff --git a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/vs.py b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/vs.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/MSCommon/vs.py rename to scons/scons-local-2.4.1/SCons/Tool/MSCommon/vs.py index 619cbe58d..86cd3a49b 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/MSCommon/vs.py +++ b/scons/scons-local-2.4.1/SCons/Tool/MSCommon/vs.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/MSCommon/vs.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/MSCommon/vs.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """Module to detect Visual Studio and/or Visual C/C++ """ diff --git a/scons/scons-local-2.4.0/SCons/Tool/Perforce.py b/scons/scons-local-2.4.1/SCons/Tool/Perforce.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/Perforce.py rename to scons/scons-local-2.4.1/SCons/Tool/Perforce.py index ddff25fed..409c7bea8 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/Perforce.py +++ b/scons/scons-local-2.4.1/SCons/Tool/Perforce.py @@ -29,7 +29,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/Perforce.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/Perforce.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os diff --git a/scons/scons-local-2.4.0/SCons/Tool/PharLapCommon.py b/scons/scons-local-2.4.1/SCons/Tool/PharLapCommon.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/PharLapCommon.py rename to scons/scons-local-2.4.1/SCons/Tool/PharLapCommon.py index 576dea1ae..46acb2ceb 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/PharLapCommon.py +++ b/scons/scons-local-2.4.1/SCons/Tool/PharLapCommon.py @@ -29,7 +29,7 @@ Phar Lap ETS tool chain. Right now, this is linkloc and # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/PharLapCommon.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/PharLapCommon.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/RCS.py b/scons/scons-local-2.4.1/SCons/Tool/RCS.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/RCS.py rename to scons/scons-local-2.4.1/SCons/Tool/RCS.py index d63bcd4c1..177e8285d 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/RCS.py +++ b/scons/scons-local-2.4.1/SCons/Tool/RCS.py @@ -29,7 +29,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/RCS.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/RCS.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/SCCS.py b/scons/scons-local-2.4.1/SCons/Tool/SCCS.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/SCCS.py rename to scons/scons-local-2.4.1/SCons/Tool/SCCS.py index 76f69e7f9..772c8897e 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/SCCS.py +++ b/scons/scons-local-2.4.1/SCons/Tool/SCCS.py @@ -29,7 +29,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/SCCS.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/SCCS.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/Subversion.py b/scons/scons-local-2.4.1/SCons/Tool/Subversion.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/Subversion.py rename to scons/scons-local-2.4.1/SCons/Tool/Subversion.py index 85470b17f..cfcf7e77f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/Subversion.py +++ b/scons/scons-local-2.4.1/SCons/Tool/Subversion.py @@ -29,7 +29,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/Subversion.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/Subversion.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/__init__.py b/scons/scons-local-2.4.1/SCons/Tool/__init__.py similarity index 61% rename from scons/scons-local-2.4.0/SCons/Tool/__init__.py rename to scons/scons-local-2.4.1/SCons/Tool/__init__.py index bb9729a1c..ac2413459 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Tool/__init__.py @@ -35,7 +35,7 @@ tool definition. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import imp import sys @@ -236,150 +236,436 @@ def createStaticLibBuilder(env): return static_lib -def VersionShLibLinkNames(version, libname, env): - """Generate names of symlinks to the versioned shared library""" +def _call_linker_cb(env, callback, args, result = None): + """Returns the result of env['LINKCALLBACKS'][callback](*args) + if env['LINKCALLBACKS'] is a dictionary and env['LINKCALLBACKS'][callback] + is callable. If these conditions are not met, return the value provided as + the *result* argument. This function is mainly used for generating library + info such as versioned suffixes, symlink maps, sonames etc. by delegating + the core job to callbacks configured by current linker tool""" + Verbose = False - platform = env.subst('$PLATFORM') - shlib_suffix = env.subst('$SHLIBSUFFIX') - shlink_flags = SCons.Util.CLVar(env.subst('$SHLINKFLAGS')) - linknames = [] - if version.count(".") != 2: - # We need a version string of the form x.y.z to proceed - # Several changes need to be made to support versions like x.y - raise ValueError - - if platform == 'darwin': - # For libfoo.x.y.z.dylib, linknames libfoo.so - suffix_re = re.escape('.' + version + shlib_suffix) - linkname = re.sub(suffix_re, shlib_suffix, libname) - if Verbose: - print "VersionShLibLinkNames: linkname = ",linkname - linknames.append(linkname) - elif platform == 'posix' or platform == 'sunos': - if sys.platform.startswith('openbsd'): - # OpenBSD uses x.y shared library versioning numbering convention - # and doesn't use symlinks to backwards-compatible libraries - return [] - # For libfoo.so.x.y.z, linknames libfoo.so libfoo.so.x.y libfoo.so.x - suffix_re = re.escape(shlib_suffix + '.' + version) - # First linkname has no version number - linkname = re.sub(suffix_re, shlib_suffix, libname) - if Verbose: - print "VersionShLibLinkNames: linkname = ",linkname - linknames.append(linkname) - versionparts = version.split('.') - major_name = linkname + "." + versionparts[0] - minor_name = major_name + "." + versionparts[1] - #Only add link for major_name - #for linkname in [major_name, minor_name]: - for linkname in [major_name, ]: - if Verbose: - print "VersionShLibLinkNames: linkname ",linkname, ", target ",libname - linknames.append(linkname) - # note: no Windows case here (win32 or cygwin); - # MSVC doesn't support this type of versioned shared libs. - # (could probably do something for MinGW though) - return linknames - -def VersionedSharedLibrary(target = None, source= None, env=None): - """Build a shared library. If the environment has SHLIBVERSION -defined make a versioned shared library and create the appropriate -symlinks for the platform we are on""" - Verbose = False - try: - version = env.subst('$SHLIBVERSION') - except KeyError: - version = None - - # libname includes the version number if one was given - libname = getattr(target[0].attributes, 'shlibname', target[0].name) - platform = env.subst('$PLATFORM') - shlib_suffix = env.subst('$SHLIBSUFFIX') - shlink_flags = SCons.Util.CLVar(env.subst('$SHLINKFLAGS')) if Verbose: - print "VersionShLib: libname = ",libname - print "VersionShLib: platform = ",platform - print "VersionShLib: shlib_suffix = ",shlib_suffix - print "VersionShLib: target = ",str(target[0]) - - if version: - # set the shared library link flags - if platform == 'posix': - shlink_flags += [ '-Wl,-Bsymbolic' ] - # OpenBSD doesn't usually use SONAME for libraries - if not sys.platform.startswith('openbsd'): - # continue setup of shlink flags for all other POSIX systems - suffix_re = re.escape(shlib_suffix + '.' + version) - (major, age, revision) = version.split(".") - # soname will have only the major version number in it - soname = re.sub(suffix_re, shlib_suffix, libname) + '.' + major - shlink_flags += [ '-Wl,-soname=%s' % soname ] - if Verbose: - print " soname ",soname,", shlink_flags ",shlink_flags - elif platform == 'sunos': - suffix_re = re.escape(shlib_suffix + '.' + version) - (major, age, revision) = version.split(".") - soname = re.sub(suffix_re, shlib_suffix, libname) + '.' + major - shlink_flags += [ '-h', soname ] - elif platform == 'cygwin': - shlink_flags += [ '-Wl,-Bsymbolic', - '-Wl,--out-implib,${TARGET.base}.a' ] - elif platform == 'darwin': - shlink_flags += [ '-current_version', '%s' % version, - '-compatibility_version', '%s' % version, - '-undefined', 'dynamic_lookup' ] + print '_call_linker_cb: args=%r' % args + print '_call_linker_cb: callback=%r' % callback + + try: + cbfun = env['LINKCALLBACKS'][callback] + except (KeyError, TypeError): if Verbose: - print "VersionShLib: shlink_flags = ",shlink_flags - envlink = env.Clone() - envlink['SHLINKFLAGS'] = shlink_flags + print '_call_linker_cb: env["LINKCALLBACKS"][%r] not found or can not be used' % callback + pass else: - envlink = env - - result = SCons.Defaults.ShLinkAction(target, source, envlink) - - if version: - # here we need the full pathname so the links end up in the right directory - libname = getattr(target[0].attributes, 'shlibpath', target[0].get_internal_path()) if Verbose: - print "VerShLib: target lib is = ", libname - print "VerShLib: name is = ", target[0].name - print "VerShLib: dir is = ", target[0].dir.path - linknames = VersionShLibLinkNames(version, libname, env) - if Verbose: - print "VerShLib: linknames ",linknames - # Here we just need the file name w/o path as the target of the link - lib_ver = getattr(target[0].attributes, 'shlibname', target[0].name) - # make symlink of adjacent names in linknames - for count in range(len(linknames)): - linkname = linknames[count] - if count > 0: - try: - os.remove(lastlinkname) - except: - pass - os.symlink(os.path.basename(linkname),lastlinkname) - if Verbose: - print "VerShLib: made sym link of %s -> %s" % (lastlinkname,linkname) - lastlinkname = linkname - # finish chain of sym links with link to the actual library - if len(linknames)>0: - try: - os.remove(lastlinkname) - except: - pass - os.symlink(lib_ver,lastlinkname) + print '_call_linker_cb: env["LINKCALLBACKS"][%r] found' % callback + print '_call_linker_cb: env["LINKCALLBACKS"][%r]=%r' % (callback, cbfun) + if(callable(cbfun)): if Verbose: - print "VerShLib: made sym link of %s -> %s" % (linkname, lib_ver) + print '_call_linker_cb: env["LINKCALLBACKS"][%r] is callable' % callback + result = cbfun(env, *args) return result -# Fix http://scons.tigris.org/issues/show_bug.cgi?id=2903 : -# Ensure we still depend on SCons.Defaults.ShLinkAction command line which is $SHLINKCOM. -# This was tricky because we don't want changing LIBPATH to cause a rebuild, but -# changing other link args should. LIBPATH has $( ... $) around it but until this -# fix, when the varlist was added to the build sig those ignored parts weren't getting -# ignored. -ShLibAction = SCons.Action.Action(VersionedSharedLibrary, None, varlist=['SHLINKCOM']) +def _call_env_subst(env, string, *args, **kw): + kw2 = {} + for k in ('raw', 'target', 'source', 'conv', 'executor'): + try: kw2[k] = kw[k] + except KeyError: pass + return env.subst(string, *args, **kw2) + +class _ShLibInfoSupport(object): + def get_libtype(self): + return 'ShLib' + def get_lib_prefix(self, env, *args, **kw): + return _call_env_subst(env,'$SHLIBPREFIX', *args, **kw) + def get_lib_suffix(self, env, *args, **kw): + return _call_env_subst(env,'$SHLIBSUFFIX', *args, **kw) + def get_lib_version(self, env, *args, **kw): + return _call_env_subst(env,'$SHLIBVERSION', *args, **kw) + def get_lib_noversionsymlinks(self, env, *args, **kw): + return _call_env_subst(env,'$SHLIBNOVERSIONSYMLINKS', *args, **kw) + +class _LdModInfoSupport(object): + def get_libtype(self): + return 'LdMod' + def get_lib_prefix(self, env, *args, **kw): + return _call_env_subst(env,'$LDMODULEPREFIX', *args, **kw) + def get_lib_suffix(self, env, *args, **kw): + return _call_env_subst(env,'$LDMODULESUFFIX', *args, **kw) + def get_lib_version(self, env, *args, **kw): + return _call_env_subst(env,'$LDMODULEVERSION', *args, **kw) + def get_lib_noversionsymlinks(self, env, *args, **kw): + return _call_env_subst(env,'$LDMODULENOVERSIONSYMLINKS', *args, **kw) + +class _ImpLibInfoSupport(object): + def get_libtype(self): + return 'ImpLib' + def get_lib_prefix(self, env, *args, **kw): + return _call_env_subst(env,'$IMPLIBPREFIX', *args, **kw) + def get_lib_suffix(self, env, *args, **kw): + return _call_env_subst(env,'$IMPLIBSUFFIX', *args, **kw) + def get_lib_version(self, env, *args, **kw): + version = _call_env_subst(env,'$IMPLIBVERSION', *args, **kw) + if not version: + try: lt = kw['implib_libtype'] + except KeyError: pass + else: + if lt == 'ShLib': + version = _call_env_subst(env,'$SHLIBVERSION', *args, **kw) + elif lt == 'LdMod': + version = _call_env_subst(env,'$LDMODULEVERSION', *args, **kw) + return version + def get_lib_noversionsymlinks(self, env, *args, **kw): + disable = None + try: env['IMPLIBNOVERSIONSYMLINKS'] + except KeyError: + try: lt = kw['implib_libtype'] + except KeyError: pass + else: + if lt == 'ShLib': + disable = _call_env_subst(env,'$SHLIBNOVERSIONSYMLINKS', *args, **kw) + elif lt == 'LdMod': + disable = _call_env_subst(env,'$LDMODULENOVERSIONSYMLINKS', *args, **kw) + else: + disable = _call_env_subst(env,'$IMPLIBNOVERSIONSYMLINKS', *args, **kw) + return disable + +class _LibInfoGeneratorBase(object): + """Generator base class for library-related info such as suffixes for + versioned libraries, symlink maps, sonames etc. It handles commonities + of SharedLibrary and LoadableModule + """ + _support_classes = { 'ShLib' : _ShLibInfoSupport, + 'LdMod' : _LdModInfoSupport, + 'ImpLib' : _ImpLibInfoSupport } + def __init__(self, libtype, infoname): + self.set_libtype(libtype) + self.set_infoname(infoname) + + def set_libtype(self, libtype): + try: + support_class = self._support_classes[libtype] + except KeyError: + raise ValueError('unsupported libtype %r' % libtype) + self._support = support_class() + + def get_libtype(self): + return self._support.get_libtype() + + def set_infoname(self, infoname): + self.infoname = infoname + + def get_infoname(self): + return self.infoname + + def get_lib_prefix(self, env, *args, **kw): + return self._support.get_lib_prefix(env,*args,**kw) + + def get_lib_suffix(self, env, *args, **kw): + return self._support.get_lib_suffix(env,*args,**kw) + + def get_lib_version(self, env, *args, **kw): + return self._support.get_lib_version(env,*args,**kw) + + def get_lib_noversionsymlinks(self, env, *args, **kw): + return self._support.get_lib_noversionsymlinks(env,*args,**kw) + + # Returns name of generator linker callback that shall be used to generate + # our info for a versioned library. For example, if our libtype is 'ShLib' + # and infoname is 'Prefix', it would return 'VersionedShLibPrefix'. + def get_versioned_lib_info_generator(self, **kw): + try: libtype = kw['generator_libtype'] + except KeyError: libtype = self.get_libtype() + infoname = self.get_infoname() + return 'Versioned%s%s' % (libtype, infoname) + + def generate_versioned_lib_info(self, env, args, result = None, **kw): + callback = self.get_versioned_lib_info_generator(**kw) + return _call_linker_cb(env, callback, args, result) + +class _LibPrefixGenerator(_LibInfoGeneratorBase): + """Library prefix generator, used as target_prefix in SharedLibrary and + LoadableModule builders""" + def __init__(self, libtype): + super(_LibPrefixGenerator, self).__init__(libtype, 'Prefix') + + def __call__(self, env, sources = None, **kw): + Verbose = False + + if sources and 'source' not in kw: + kw2 = kw.copy() + kw2['source'] = sources + else: + kw2 = kw + + prefix = self.get_lib_prefix(env,**kw2) + if Verbose: + print "_LibPrefixGenerator: input prefix=%r" % prefix + + version = self.get_lib_version(env, **kw2) + if Verbose: + print "_LibPrefixGenerator: version=%r" % version + + if version: + prefix = self.generate_versioned_lib_info(env, [prefix, version], prefix, **kw2) + + if Verbose: + print "_LibPrefixGenerator: return prefix=%r" % prefix + return prefix + +ShLibPrefixGenerator = _LibPrefixGenerator('ShLib') +LdModPrefixGenerator = _LibPrefixGenerator('LdMod') +ImpLibPrefixGenerator = _LibPrefixGenerator('ImpLib') + +class _LibSuffixGenerator(_LibInfoGeneratorBase): + """Library suffix generator, used as target_suffix in SharedLibrary and + LoadableModule builders""" + def __init__(self, libtype): + super(_LibSuffixGenerator, self).__init__(libtype, 'Suffix') + + def __call__(self, env, sources = None, **kw): + Verbose = False + + if sources and 'source' not in kw: + kw2 = kw.copy() + kw2['source'] = sources + else: + kw2 = kw + + suffix = self.get_lib_suffix(env, **kw2) + if Verbose: + print "_LibSuffixGenerator: input suffix=%r" % suffix + + version = self.get_lib_version(env, **kw2) + if Verbose: + print "_LibSuffixGenerator: version=%r" % version + + if version: + suffix = self.generate_versioned_lib_info(env, [suffix, version], suffix, **kw2) + + if Verbose: + print "_LibSuffixGenerator: return suffix=%r" % suffix + return suffix + +ShLibSuffixGenerator = _LibSuffixGenerator('ShLib') +LdModSuffixGenerator = _LibSuffixGenerator('LdMod') +ImpLibSuffixGenerator = _LibSuffixGenerator('ImpLib') + +class _LibSymlinkGenerator(_LibInfoGeneratorBase): + """Library symlink map generator. It generates a list of symlinks that + should be created by SharedLibrary or LoadableModule builders""" + def __init__(self, libtype): + super(_LibSymlinkGenerator, self).__init__(libtype, 'Symlinks') + + def __call__(self, env, libnode, **kw): + Verbose = False + + if libnode and 'target' not in kw: + kw2 = kw.copy() + kw2['target'] = libnode + else: + kw2 = kw + + if Verbose: + print "_LibSymLinkGenerator: libnode=%r" % libnode.get_path() + + symlinks = None + + version = self.get_lib_version(env, **kw2) + disable = self.get_lib_noversionsymlinks(env, **kw2) + if Verbose: + print '_LibSymlinkGenerator: version=%r' % version + print '_LibSymlinkGenerator: disable=%r' % disable + + if version and not disable: + prefix = self.get_lib_prefix(env,**kw2) + suffix = self.get_lib_suffix(env,**kw2) + symlinks = self.generate_versioned_lib_info(env, [libnode, version, prefix, suffix], **kw2) + + if Verbose: + print '_LibSymlinkGenerator: return symlinks=%r' % StringizeLibSymlinks(symlinks) + return symlinks + +ShLibSymlinkGenerator = _LibSymlinkGenerator('ShLib') +LdModSymlinkGenerator = _LibSymlinkGenerator('LdMod') +ImpLibSymlinkGenerator = _LibSymlinkGenerator('ImpLib') + +class _LibNameGenerator(_LibInfoGeneratorBase): + """Generates "unmangled" library name from a library file node. + + Generally, it's thought to revert modifications done by prefix/suffix + generators (_LibPrefixGenerator/_LibSuffixGenerator) used by a library + builder. For example, on gnulink the suffix generator used by SharedLibrary + builder appends $SHLIBVERSION to $SHLIBSUFFIX producing node name which + ends with "$SHLIBSUFFIX.$SHLIBVERSION". Correspondingly, the implementation + of _LibNameGenerator replaces "$SHLIBSUFFIX.$SHLIBVERSION" with + "$SHLIBSUFFIX" in the node's basename. So that, if $SHLIBSUFFIX is ".so", + $SHLIBVERSION is "0.1.2" and the node path is "/foo/bar/libfoo.so.0.1.2", + the _LibNameGenerator shall return "libfoo.so". Other link tools may + implement it's own way of library name unmangling. + """ + def __init__(self, libtype): + super(_LibNameGenerator, self).__init__(libtype, 'Name') + + def __call__(self, env, libnode, **kw): + """Returns "demangled" library name""" + Verbose = False + + if libnode and 'target' not in kw: + kw2 = kw.copy() + kw2['target'] = libnode + else: + kw2 = kw + + if Verbose: + print "_LibNameGenerator: libnode=%r" % libnode.get_path() + + version = self.get_lib_version(env, **kw2) + if Verbose: + print '_LibNameGenerator: version=%r' % version + + name = None + if version: + prefix = self.get_lib_prefix(env,**kw2) + suffix = self.get_lib_suffix(env,**kw2) + name = self.generate_versioned_lib_info(env, [libnode, version, prefix, suffix], **kw2) + + if not name: + name = os.path.basename(libnode.get_path()) + + if Verbose: + print '_LibNameGenerator: return name=%r' % name + + return name + +ShLibNameGenerator = _LibNameGenerator('ShLib') +LdModNameGenerator = _LibNameGenerator('LdMod') +ImpLibNameGenerator = _LibNameGenerator('ImpLib') + +class _LibSonameGenerator(_LibInfoGeneratorBase): + """Library soname generator. Returns library soname (e.g. libfoo.so.0) for + a given node (e.g. /foo/bar/libfoo.so.0.1.2)""" + def __init__(self, libtype): + super(_LibSonameGenerator, self).__init__(libtype, 'Soname') + + def __call__(self, env, libnode, **kw): + """Returns a SONAME based on a shared library's node path""" + Verbose = False + + if libnode and 'target' not in kw: + kw2 = kw.copy() + kw2['target'] = libnode + else: + kw2 = kw + + if Verbose: + print "_LibSonameGenerator: libnode=%r" % libnode.get_path() + + soname = _call_env_subst(env, '$SONAME', **kw2) + if not soname: + version = self.get_lib_version(env,**kw2) + if Verbose: + print "_LibSonameGenerator: version=%r" % version + if version: + prefix = self.get_lib_prefix(env,**kw2) + suffix = self.get_lib_suffix(env,**kw2) + soname = self.generate_versioned_lib_info(env, [libnode, version, prefix, suffix], **kw2) + + if not soname: + # fallback to library name (as returned by appropriate _LibNameGenerator) + soname = _LibNameGenerator(self.get_libtype())(env, libnode) + if Verbose: + print "_LibSonameGenerator: FALLBACK: soname=%r" % soname + + if Verbose: + print "_LibSonameGenerator: return soname=%r" % soname + + return soname + +ShLibSonameGenerator = _LibSonameGenerator('ShLib') +LdModSonameGenerator = _LibSonameGenerator('LdMod') + +def StringizeLibSymlinks(symlinks): + """Converts list with pairs of nodes to list with pairs of node paths + (strings). Used mainly for debugging.""" + if SCons.Util.is_List(symlinks): + try: + return [ (k.get_path(), v.get_path()) for k,v in symlinks ] + except (TypeError, ValueError): + return symlinks + else: + return symlinks + +def EmitLibSymlinks(env, symlinks, libnode, **kw): + """Used by emitters to handle (shared/versioned) library symlinks""" + Verbose = False + + # nodes involved in process... all symlinks + library + nodes = list(set([ x for x,y in symlinks ] + [libnode])) + + clean_targets = kw.get('clean_targets', []) + if not SCons.Util.is_List(clean_targets): + clean_targets = [ clean_targets ] + + for link, linktgt in symlinks: + env.SideEffect(link, linktgt) + if(Verbose): + print "EmitLibSymlinks: SideEffect(%r,%r)" % (link.get_path(), linktgt.get_path()) + clean_list = filter(lambda x : x != linktgt, nodes) + env.Clean(list(set([linktgt] + clean_targets)), clean_list) + if(Verbose): + print "EmitLibSymlinks: Clean(%r,%r)" % (linktgt.get_path(), map(lambda x : x.get_path(), clean_list)) + +def CreateLibSymlinks(env, symlinks): + """Physically creates symlinks. The symlinks argument must be a list in + form [ (link, linktarget), ... ], where link and linktarget are SCons + nodes. + """ + + Verbose = False + for link, linktgt in symlinks: + linktgt = link.get_dir().rel_path(linktgt) + link = link.get_path() + if(Verbose): + print "CreateLibSymlinks: preparing to add symlink %r -> %r" % (link, linktgt) + # Delete the (previously created) symlink if exists. Let only symlinks + # to be deleted to prevent accidental deletion of source files... + if env.fs.islink(link): + env.fs.unlink(link) + if(Verbose): + print "CreateLibSymlinks: removed old symlink %r" % link + # If a file or directory exists with the same name as link, an OSError + # will be thrown, which should be enough, I think. + env.fs.symlink(linktgt, link) + if(Verbose): + print "CreateLibSymlinks: add symlink %r -> %r" % (link, linktgt) + return 0 + +def LibSymlinksActionFunction(target, source, env): + for tgt in target: + symlinks = getattr(getattr(tgt,'attributes', None), 'shliblinks', None) + if symlinks: + CreateLibSymlinks(env, symlinks) + return 0 + +def LibSymlinksStrFun(target, source, env, *args): + cmd = None + for tgt in target: + symlinks = getattr(getattr(tgt,'attributes', None), 'shliblinks', None) + if symlinks: + if cmd is None: cmd = "" + if cmd: cmd += "\n" + cmd += "Create symlinks for: %r" % tgt.get_path() + try: + linkstr = ', '.join([ "%r->%r" %(k,v) for k,v in StringizeLibSymlinks(symlinks)]) + except (KeyError, ValueError): + pass + else: + cmd += ": %s" % linkstr + return cmd + + +LibSymlinksAction = SCons.Action.Action(LibSymlinksActionFunction, LibSymlinksStrFun) def createSharedLibBuilder(env): """This is a utility function that creates the SharedLibrary @@ -393,11 +679,12 @@ def createSharedLibBuilder(env): except KeyError: import SCons.Defaults action_list = [ SCons.Defaults.SharedCheck, - ShLibAction ] + SCons.Defaults.ShLinkAction, + LibSymlinksAction ] shared_lib = SCons.Builder.Builder(action = action_list, emitter = "$SHLIBEMITTER", - prefix = '$SHLIBPREFIX', - suffix = '$SHLIBSUFFIX', + prefix = ShLibPrefixGenerator, + suffix = ShLibSuffixGenerator, target_scanner = ProgramScanner, src_suffix = '$SHOBJSUFFIX', src_builder = 'SharedObject') @@ -417,11 +704,12 @@ def createLoadableModuleBuilder(env): except KeyError: import SCons.Defaults action_list = [ SCons.Defaults.SharedCheck, - SCons.Defaults.LdModuleLinkAction ] + SCons.Defaults.LdModuleLinkAction, + LibSymlinksAction ] ld_module = SCons.Builder.Builder(action = action_list, emitter = "$LDMODULEEMITTER", - prefix = '$LDMODULEPREFIX', - suffix = '$LDMODULESUFFIX', + prefix = LdModPrefixGenerator, + suffix = LdModSuffixGenerator, target_scanner = ProgramScanner, src_suffix = '$SHOBJSUFFIX', src_builder = 'SharedObject') diff --git a/scons/scons-local-2.4.0/SCons/Tool/aixc++.py b/scons/scons-local-2.4.1/SCons/Tool/aixc++.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/aixc++.py rename to scons/scons-local-2.4.1/SCons/Tool/aixc++.py index 864fcdffe..a3fa10216 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/aixc++.py +++ b/scons/scons-local-2.4.1/SCons/Tool/aixc++.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/aixc++.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/aixc++.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/aixcc.py b/scons/scons-local-2.4.1/SCons/Tool/aixcc.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/aixcc.py rename to scons/scons-local-2.4.1/SCons/Tool/aixcc.py index 02e06499f..8c7d71bb0 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/aixcc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/aixcc.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/aixcc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/aixcc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/aixf77.py b/scons/scons-local-2.4.1/SCons/Tool/aixf77.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/aixf77.py rename to scons/scons-local-2.4.1/SCons/Tool/aixf77.py index 5327cf737..7603a4a53 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/aixf77.py +++ b/scons/scons-local-2.4.1/SCons/Tool/aixf77.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/aixf77.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/aixf77.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/aixlink.py b/scons/scons-local-2.4.1/SCons/Tool/aixlink.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/aixlink.py rename to scons/scons-local-2.4.1/SCons/Tool/aixlink.py index 7ad9cc61e..2e6e65254 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/aixlink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/aixlink.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/aixlink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/aixlink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/applelink.py b/scons/scons-local-2.4.1/SCons/Tool/applelink.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/applelink.py rename to scons/scons-local-2.4.1/SCons/Tool/applelink.py index 9ef1b7519..e48689c2e 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/applelink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/applelink.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/applelink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/applelink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/ar.py b/scons/scons-local-2.4.1/SCons/Tool/ar.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/ar.py rename to scons/scons-local-2.4.1/SCons/Tool/ar.py index 2d7f7b981..ca0dc2429 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ar.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ar.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ar.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ar.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/as.py b/scons/scons-local-2.4.1/SCons/Tool/as.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/as.py rename to scons/scons-local-2.4.1/SCons/Tool/as.py index 6c7304f1c..1b122d0f6 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/as.py +++ b/scons/scons-local-2.4.1/SCons/Tool/as.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/as.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/as.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/bcc32.py b/scons/scons-local-2.4.1/SCons/Tool/bcc32.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/bcc32.py rename to scons/scons-local-2.4.1/SCons/Tool/bcc32.py index a8295a350..15e21222b 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/bcc32.py +++ b/scons/scons-local-2.4.1/SCons/Tool/bcc32.py @@ -27,7 +27,7 @@ XXX # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/bcc32.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/bcc32.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/c++.py b/scons/scons-local-2.4.1/SCons/Tool/c++.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/c++.py rename to scons/scons-local-2.4.1/SCons/Tool/c++.py index 580bf9cd0..00630fe6f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/c++.py +++ b/scons/scons-local-2.4.1/SCons/Tool/c++.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/c++.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/c++.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/cc.py b/scons/scons-local-2.4.1/SCons/Tool/cc.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/cc.py rename to scons/scons-local-2.4.1/SCons/Tool/cc.py index 7332ad0ce..c34dad2bb 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/cc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/cc.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/cc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/cc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Tool import SCons.Defaults diff --git a/scons/scons-local-2.4.0/SCons/Tool/cvf.py b/scons/scons-local-2.4.1/SCons/Tool/cvf.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/cvf.py rename to scons/scons-local-2.4.1/SCons/Tool/cvf.py index 89ac9fb4b..51c137fbe 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/cvf.py +++ b/scons/scons-local-2.4.1/SCons/Tool/cvf.py @@ -27,7 +27,7 @@ Tool-specific initialization for the Compaq Visual Fortran compiler. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/cvf.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/cvf.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import fortran diff --git a/scons/scons-local-2.4.1/SCons/Tool/cyglink.py b/scons/scons-local-2.4.1/SCons/Tool/cyglink.py new file mode 100644 index 000000000..5230910ae --- /dev/null +++ b/scons/scons-local-2.4.1/SCons/Tool/cyglink.py @@ -0,0 +1,232 @@ +"""SCons.Tool.cyglink + +Customization of gnulink for Cygwin (http://www.cygwin.com/) + +There normally shouldn't be any need to import this module directly. +It will usually be imported through the generic SCons.Tool.Tool() +selection method. + +""" +import re +import os + +import SCons.Action +import SCons.Util +import SCons.Tool + +import gnulink +import link + +def _lib_generator(target, source, env, for_signature, **kw): + try: cmd = kw['cmd'] + except KeyError: cmd = SCons.Util.CLVar(['$SHLINK']) + + try: vp = kw['varprefix'] + except KeyError: vp = 'SHLIB' + + dll = env.FindIxes(target, '%sPREFIX' % vp, '%sSUFFIX' % vp) + if dll: cmd.extend(['-o', dll]) + + cmd.extend(['$SHLINKFLAGS', '$__%sVERSIONFLAGS' % vp, '$__RPATH']) + + implib = env.FindIxes(target, 'IMPLIBPREFIX', 'IMPLIBSUFFIX') + if implib: + cmd.extend([ + '-Wl,--out-implib='+implib.get_string(for_signature), + '-Wl,--export-all-symbols', + '-Wl,--enable-auto-import', + '-Wl,--whole-archive', '$SOURCES', + '-Wl,--no-whole-archive', '$_LIBDIRFLAGS', '$_LIBFLAGS' + ]) + else: + cmd.extend(['$SOURCES', '$_LIBDIRFLAGS', '$_LIBFLAGS']) + + return [cmd] + + +def shlib_generator(target, source, env, for_signature): + return _lib_generator(target, source, env, for_signature, + varprefix='SHLIB', + cmd = SCons.Util.CLVar(['$SHLINK'])) + +def ldmod_generator(target, source, env, for_signature): + return _lib_generator(target, source, env, for_signature, + varprefix='LDMODULE', + cmd = SCons.Util.CLVar(['$LDMODULE'])) + +def _lib_emitter(target, source, env, **kw): + Verbose = False + + if Verbose: + print "_lib_emitter: target[0]=%r" % target[0].get_path() + + try: vp = kw['varprefix'] + except KeyError: vp = 'SHLIB' + + try: libtype = kw['libtype'] + except KeyError: libtype = 'ShLib' + + dll = env.FindIxes(target, '%sPREFIX' % vp, '%sSUFFIX' % vp) + no_import_lib = env.get('no_import_lib', 0) + + if Verbose: + print "_lib_emitter: dll=%r" % dll.get_path() + + if not dll or len(target) > 1: + raise SCons.Errors.UserError("A shared library should have exactly one target with the suffix: %s" % env.subst("$%sSUFFIX" % vp)) + + # Remove any "lib" after the prefix + pre = env.subst('$%sPREFIX' % vp) + if dll.name[len(pre):len(pre)+3] == 'lib': + dll.name = pre + dll.name[len(pre)+3:] + + if Verbose: + print "_lib_emitter: dll.name=%r" % dll.name + + orig_target = target + target = [env.fs.File(dll)] + target[0].attributes.shared = 1 + + if Verbose: + print "_lib_emitter: after target=[env.fs.File(dll)]: target[0]=%r" % target[0].get_path() + + # Append an import lib target + if not no_import_lib: + # Create list of target libraries as strings + target_strings = env.ReplaceIxes(orig_target[0], + '%sPREFIX' % vp, '%sSUFFIX' % vp, + 'IMPLIBPREFIX', 'IMPLIBSUFFIX') + if Verbose: + print "_lib_emitter: target_strings=%r" % target_strings + + implib_target = env.fs.File(target_strings) + if Verbose: + print "_lib_emitter: implib_target=%r" % implib_target.get_path() + implib_target.attributes.shared = 1 + target.append(implib_target) + + symlinks = SCons.Tool.ImpLibSymlinkGenerator(env, implib_target, + implib_libtype=libtype, + generator_libtype=libtype+'ImpLib') + if Verbose: + print "_lib_emitter: implib symlinks=%r" % SCons.Tool.StringizeLibSymlinks(symlinks) + if symlinks: + SCons.Tool.EmitLibSymlinks(env, symlinks, implib_target, clean_targets = target[0]) + implib_target.attributes.shliblinks = symlinks + + return (target, source) + +def shlib_emitter(target, source, env): + return _lib_emitter(target, source, env, varprefix='SHLIB', libtype='ShLib') + +def ldmod_emitter(target, source, env): + return _lib_emitter(target, source, env, varprefix='LDMODULE', libtype='LdMod') + +def _versioned_lib_suffix(env, suffix, version): + """Generate versioned shared library suffix from a unversioned one. + If suffix='.dll', and version='0.1.2', then it returns '-0-1-2.dll'""" + Verbose = False + if Verbose: + print "_versioned_lib_suffix: suffix= ", suffix + print "_versioned_lib_suffix: version= ", version + cygversion = re.sub('\.', '-', version) + if not suffix.startswith('-' + cygversion): + suffix = '-' + cygversion + suffix + if Verbose: + print "_versioned_lib_suffix: return suffix= ", suffix + return suffix + +def _versioned_implib_name(env, libnode, version, prefix, suffix, **kw): + return link._versioned_lib_name(env, libnode, version, prefix, suffix, + SCons.Tool.ImpLibPrefixGenerator, + SCons.Tool.ImpLibSuffixGenerator, + implib_libtype=kw['libtype']) + +def _versioned_implib_symlinks(env, libnode, version, prefix, suffix, **kw): + """Generate link names that should be created for a versioned shared lirbrary. + Returns a list in the form [ (link, linktarget), ... ] + """ + Verbose = False + + if Verbose: + print "_versioned_implib_symlinks: libnode=%r" % libnode.get_path() + print "_versioned_implib_symlinks: version=%r" % version + + try: libtype = kw['libtype'] + except KeyError: libtype = 'ShLib' + + + linkdir = os.path.dirname(libnode.get_path()) + if Verbose: + print "_versioned_implib_symlinks: linkdir=%r" % linkdir + + name = SCons.Tool.ImpLibNameGenerator(env, libnode, + implib_libtype=libtype, + generator_libtype=libtype+'ImpLib') + if Verbose: + print "_versioned_implib_symlinks: name=%r" % name + + major = version.split('.')[0] + + link0 = env.fs.File(os.path.join(linkdir, name)) + symlinks = [(link0, libnode)] + + if Verbose: + print "_versioned_implib_symlinks: return symlinks=%r" % SCons.Tool.StringizeLibSymlinks(symlinks) + + return symlinks + +shlib_action = SCons.Action.Action(shlib_generator, generator=1) +ldmod_action = SCons.Action.Action(ldmod_generator, generator=1) + +def generate(env): + """Add Builders and construction variables for cyglink to an Environment.""" + gnulink.generate(env) + + env['LINKFLAGS'] = SCons.Util.CLVar('-Wl,-no-undefined') + + env['SHLINKCOM'] = shlib_action + env['LDMODULECOM'] = ldmod_action + env.Append(SHLIBEMITTER = [shlib_emitter]) + env.Append(LDMODULEEMITTER = [ldmod_emitter]) + + env['SHLIBPREFIX'] = 'cyg' + env['SHLIBSUFFIX'] = '.dll' + + env['IMPLIBPREFIX'] = 'lib' + env['IMPLIBSUFFIX'] = '.dll.a' + + # Variables used by versioned shared libraries + env['_SHLIBVERSIONFLAGS'] = '$SHLIBVERSIONFLAGS' + env['_LDMODULEVERSIONFLAGS'] = '$LDMODULEVERSIONFLAGS' + + # SHLIBVERSIONFLAGS and LDMODULEVERSIONFLAGS are same as in gnulink... + + # LINKCALLBACKS are NOT inherited from gnulink + env['LINKCALLBACKS'] = { + 'VersionedShLibSuffix' : _versioned_lib_suffix, + 'VersionedLdModSuffix' : _versioned_lib_suffix, + 'VersionedImpLibSuffix' : _versioned_lib_suffix, + 'VersionedShLibName' : link._versioned_shlib_name, + 'VersionedLdModName' : link._versioned_ldmod_name, + 'VersionedShLibImpLibName' : lambda *args: _versioned_implib_name(*args, libtype='ShLib'), + 'VersionedLdModImpLibName' : lambda *args: _versioned_implib_name(*args, libtype='LdMod'), + 'VersionedShLibImpLibSymlinks' : lambda *args: _versioned_implib_symlinks(*args, libtype='ShLib'), + 'VersionedLdModImpLibSymlinks' : lambda *args: _versioned_implib_symlinks(*args, libtype='LdMod'), + } + + # these variables were set by gnulink but are not used in cyglink + try: del env['_SHLIBSONAME'] + except KeyError: pass + try: del env['_LDMODULESONAME'] + except KeyError: pass + +def exists(env): + return gnulink.exists(env) + + +# Local Variables: +# tab-width:4 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=4 shiftwidth=4: diff --git a/scons/scons-local-2.4.0/SCons/Tool/default.py b/scons/scons-local-2.4.1/SCons/Tool/default.py similarity index 93% rename from scons/scons-local-2.4.0/SCons/Tool/default.py rename to scons/scons-local-2.4.1/SCons/Tool/default.py index 35e872c6a..102121392 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/default.py +++ b/scons/scons-local-2.4.1/SCons/Tool/default.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/default.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/default.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/dmd.py b/scons/scons-local-2.4.1/SCons/Tool/dmd.py similarity index 86% rename from scons/scons-local-2.4.0/SCons/Tool/dmd.py rename to scons/scons-local-2.4.1/SCons/Tool/dmd.py index 327da1504..c5561518e 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/dmd.py +++ b/scons/scons-local-2.4.1/SCons/Tool/dmd.py @@ -58,7 +58,7 @@ Lib tool variables: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/dmd.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/dmd.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import subprocess @@ -114,7 +114,7 @@ def generate(env): env['DSHLINK'] = '$DC' env['DSHLINKFLAGS'] = SCons.Util.CLVar('$DLINKFLAGS -shared -defaultlib=libphobos2.so') - env['SHDLINKCOM'] = '$DLINK -of$TARGET $DSHLINKFLAGS $__DRPATH $SOURCES $_DLIBDIRFLAGS $_DLIBFLAGS' + env['SHDLINKCOM'] = '$DLINK -of$TARGET $DSHLINKFLAGS $__DSHLIBVERSIONFLAGS $__DRPATH $SOURCES $_DLIBDIRFLAGS $_DLIBFLAGS' env['DLIBLINKPREFIX'] = '' if env['PLATFORM'] == 'win32' else '-L-l' env['DLIBLINKSUFFIX'] = '.lib' if env['PLATFORM'] == 'win32' else '' @@ -139,6 +139,17 @@ def generate(env): env['DRPATHSUFFIX'] = '' env['_DRPATH'] = '${_concat(DRPATHPREFIX, RPATH, DRPATHSUFFIX, __env__)}' + # Support for versioned libraries + env['_DSHLIBVERSIONFLAGS'] = '$DSHLIBVERSIONFLAGS -L-soname=$_DSHLIBSONAME' + env['_DSHLIBSONAME'] = '${DShLibSonameGenerator(__env__,TARGET)}' + # NOTE: this is a quick hack, the soname will only work if there is + # c/c++ linker loaded which provides callback for the ShLibSonameGenerator + env['DShLibSonameGenerator'] = SCons.Tool.ShLibSonameGenerator + # NOTE: this is only for further reference, currently $DSHLIBVERSION does + # not work, the user must use $SHLIBVERSION + env['DSHLIBVERSION'] = '$SHLIBVERSION' + env['DSHLIBVERSIONFLAGS'] = [] + SCons.Tool.createStaticLibBuilder(env) diff --git a/scons/scons-local-2.4.0/SCons/Tool/docbook/__init__.py b/scons/scons-local-2.4.1/SCons/Tool/docbook/__init__.py similarity index 100% rename from scons/scons-local-2.4.0/SCons/Tool/docbook/__init__.py rename to scons/scons-local-2.4.1/SCons/Tool/docbook/__init__.py diff --git a/scons/scons-local-2.4.0/SCons/Tool/dvi.py b/scons/scons-local-2.4.1/SCons/Tool/dvi.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/dvi.py rename to scons/scons-local-2.4.1/SCons/Tool/dvi.py index aba71684a..9ad1beedf 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/dvi.py +++ b/scons/scons-local-2.4.1/SCons/Tool/dvi.py @@ -27,7 +27,7 @@ Common DVI Builder definition for various other Tool modules that use it. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/dvi.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/dvi.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Builder import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/dvipdf.py b/scons/scons-local-2.4.1/SCons/Tool/dvipdf.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/dvipdf.py rename to scons/scons-local-2.4.1/SCons/Tool/dvipdf.py index 0a6dde7db..9af25987b 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/dvipdf.py +++ b/scons/scons-local-2.4.1/SCons/Tool/dvipdf.py @@ -30,7 +30,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/dvipdf.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/dvipdf.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Defaults diff --git a/scons/scons-local-2.4.0/SCons/Tool/dvips.py b/scons/scons-local-2.4.1/SCons/Tool/dvips.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/dvips.py rename to scons/scons-local-2.4.1/SCons/Tool/dvips.py index f72f2fed7..59a16f458 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/dvips.py +++ b/scons/scons-local-2.4.1/SCons/Tool/dvips.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/dvips.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/dvips.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/f03.py b/scons/scons-local-2.4.1/SCons/Tool/f03.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/f03.py rename to scons/scons-local-2.4.1/SCons/Tool/f03.py index 77165ad7d..b84850a25 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/f03.py +++ b/scons/scons-local-2.4.1/SCons/Tool/f03.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/f03.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/f03.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/f77.py b/scons/scons-local-2.4.1/SCons/Tool/f77.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/f77.py rename to scons/scons-local-2.4.1/SCons/Tool/f77.py index 593c51772..b6c138a47 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/f77.py +++ b/scons/scons-local-2.4.1/SCons/Tool/f77.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/f77.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/f77.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Scanner.Fortran diff --git a/scons/scons-local-2.4.0/SCons/Tool/f90.py b/scons/scons-local-2.4.1/SCons/Tool/f90.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/f90.py rename to scons/scons-local-2.4.1/SCons/Tool/f90.py index c4a8df36c..059f6390f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/f90.py +++ b/scons/scons-local-2.4.1/SCons/Tool/f90.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/f90.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/f90.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Scanner.Fortran diff --git a/scons/scons-local-2.4.0/SCons/Tool/f95.py b/scons/scons-local-2.4.1/SCons/Tool/f95.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/f95.py rename to scons/scons-local-2.4.1/SCons/Tool/f95.py index f361e1d7b..dffbbda17 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/f95.py +++ b/scons/scons-local-2.4.1/SCons/Tool/f95.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/f95.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/f95.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/filesystem.py b/scons/scons-local-2.4.1/SCons/Tool/filesystem.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/filesystem.py rename to scons/scons-local-2.4.1/SCons/Tool/filesystem.py index df5757934..c9493e97b 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/filesystem.py +++ b/scons/scons-local-2.4.1/SCons/Tool/filesystem.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/filesystem.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/filesystem.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons from SCons.Tool.install import copyFunc diff --git a/scons/scons-local-2.4.0/SCons/Tool/fortran.py b/scons/scons-local-2.4.1/SCons/Tool/fortran.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/fortran.py rename to scons/scons-local-2.4.1/SCons/Tool/fortran.py index 7a513218c..43635d866 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/fortran.py +++ b/scons/scons-local-2.4.1/SCons/Tool/fortran.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/fortran.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/fortran.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import re diff --git a/scons/scons-local-2.4.0/SCons/Tool/g++.py b/scons/scons-local-2.4.1/SCons/Tool/g++.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/g++.py rename to scons/scons-local-2.4.1/SCons/Tool/g++.py index 824686232..f1a23f1bb 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/g++.py +++ b/scons/scons-local-2.4.1/SCons/Tool/g++.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/g++.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/g++.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re diff --git a/scons/scons-local-2.4.0/SCons/Tool/g77.py b/scons/scons-local-2.4.1/SCons/Tool/g77.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/g77.py rename to scons/scons-local-2.4.1/SCons/Tool/g77.py index e09cf16f4..3e1af3c91 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/g77.py +++ b/scons/scons-local-2.4.1/SCons/Tool/g77.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/g77.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/g77.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util from SCons.Tool.FortranCommon import add_all_to_env, add_f77_to_env diff --git a/scons/scons-local-2.4.0/SCons/Tool/gas.py b/scons/scons-local-2.4.1/SCons/Tool/gas.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/gas.py rename to scons/scons-local-2.4.1/SCons/Tool/gas.py index f987b95d1..373a336da 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gas.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gas.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/gas.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gas.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" as_module = __import__('as', globals(), locals(), []) diff --git a/scons/scons-local-2.4.0/SCons/Tool/gcc.py b/scons/scons-local-2.4.1/SCons/Tool/gcc.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/gcc.py rename to scons/scons-local-2.4.1/SCons/Tool/gcc.py index d2375c6e4..06aba5860 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gcc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gcc.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/gcc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gcc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import cc import os diff --git a/scons/scons-local-2.4.0/SCons/Tool/gdc.py b/scons/scons-local-2.4.1/SCons/Tool/gdc.py similarity index 84% rename from scons/scons-local-2.4.0/SCons/Tool/gdc.py rename to scons/scons-local-2.4.1/SCons/Tool/gdc.py index 7a6750172..e1d2c9c66 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gdc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gdc.py @@ -46,7 +46,7 @@ Lib tool variables: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/gdc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gdc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Defaults @@ -97,7 +97,7 @@ def generate(env): env['DSHLINK'] = '$DC' env['DSHLINKFLAGS'] = SCons.Util.CLVar('$DLINKFLAGS -shared') - env['SHDLINKCOM'] = '$DLINK -o $TARGET $DSHLINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' + env['SHDLINKCOM'] = '$DLINK -o $TARGET $DSHLINKFLAGS $__DSHLIBVERSIONFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' env['DLIB'] = 'lib' if env['PLATFORM'] == 'win32' else 'ar cr' env['DLIBCOM'] = '$DLIB $_DLIBFLAGS {0}$TARGET $SOURCES $_DLINKLIBFLAGS'.format('-c ' if env['PLATFORM'] == 'win32' else '') @@ -115,6 +115,17 @@ def generate(env): env['RPATHSUFFIX'] = '' env['_RPATH'] = '${_concat(RPATHPREFIX, RPATH, RPATHSUFFIX, __env__)}' + # Support for versioned libraries + env['_DSHLIBVERSIONFLAGS'] = '$DSHLIBVERSIONFLAGS -Wl,-soname=$_DSHLIBSONAME' + env['_DSHLIBSONAME'] = '${DShLibSonameGenerator(__env__,TARGET)}' + # NOTE: this is a quick hack, the soname will only work if there is + # c/c++ linker loaded which provides callback for the ShLibSonameGenerator + env['DShLibSonameGenerator'] = SCons.Tool.ShLibSonameGenerator + # NOTE: this is only for further reference, currently $DSHLIBVERSION does + # not work, the user must use $SHLIBVERSION + env['DSHLIBVERSION'] = '$SHLIBVERSION' + env['DSHLIBVERSIONFLAGS'] = '$SHLIBVERSIONFLAGS' + SCons.Tool.createStaticLibBuilder(env) diff --git a/scons/scons-local-2.4.0/SCons/Tool/gettext.py b/scons/scons-local-2.4.1/SCons/Tool/gettext.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/gettext.py rename to scons/scons-local-2.4.1/SCons/Tool/gettext.py index e53ebdba4..43f88e948 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gettext.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gettext.py @@ -23,7 +23,7 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/gettext.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gettext.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" ############################################################################# def generate(env,**kw): diff --git a/scons/scons-local-2.4.0/SCons/Tool/gfortran.py b/scons/scons-local-2.4.1/SCons/Tool/gfortran.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/gfortran.py rename to scons/scons-local-2.4.1/SCons/Tool/gfortran.py index 02da30238..0538cedb3 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gfortran.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gfortran.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/gfortran.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gfortran.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/gnulink.py b/scons/scons-local-2.4.1/SCons/Tool/gnulink.py similarity index 81% rename from scons/scons-local-2.4.0/SCons/Tool/gnulink.py rename to scons/scons-local-2.4.1/SCons/Tool/gnulink.py index 81c013042..109330321 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gnulink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gnulink.py @@ -31,12 +31,17 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/gnulink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gnulink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util +import SCons.Tool +import os +import sys +import re import link + def generate(env): """Add Builders and construction variables for gnulink to an Environment.""" link.generate(env) @@ -49,6 +54,14 @@ def generate(env): env['RPATHPREFIX'] = '-Wl,-rpath=' env['RPATHSUFFIX'] = '' env['_RPATH'] = '${_concat(RPATHPREFIX, RPATH, RPATHSUFFIX, __env__)}' + + # OpenBSD doesn't usually use SONAME for libraries + use_soname = not sys.platform.startswith('openbsd') + link._setup_versioned_lib_variables(env, tool = 'gnulink', use_soname = use_soname) + env['LINKCALLBACKS'] = link._versioned_lib_callbacks() + + # For backward-compatiblity with older SCons versions + env['SHLIBVERSIONFLAGS'] = SCons.Util.CLVar('-Wl,-Bsymbolic') def exists(env): # TODO: sync with link.smart_link() to choose a linker diff --git a/scons/scons-local-2.4.0/SCons/Tool/gs.py b/scons/scons-local-2.4.1/SCons/Tool/gs.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/gs.py rename to scons/scons-local-2.4.1/SCons/Tool/gs.py index 3e2eeccf1..ddb22e680 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/gs.py +++ b/scons/scons-local-2.4.1/SCons/Tool/gs.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/gs.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/gs.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/hpc++.py b/scons/scons-local-2.4.1/SCons/Tool/hpc++.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/hpc++.py rename to scons/scons-local-2.4.1/SCons/Tool/hpc++.py index eb23e94f0..bd2b5f9ea 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/hpc++.py +++ b/scons/scons-local-2.4.1/SCons/Tool/hpc++.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/hpc++.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/hpc++.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/hpcc.py b/scons/scons-local-2.4.1/SCons/Tool/hpcc.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/hpcc.py rename to scons/scons-local-2.4.1/SCons/Tool/hpcc.py index 827460dd5..19c22d852 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/hpcc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/hpcc.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/hpcc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/hpcc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/hplink.py b/scons/scons-local-2.4.1/SCons/Tool/hplink.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/hplink.py rename to scons/scons-local-2.4.1/SCons/Tool/hplink.py index e3512a22f..931f8cfb5 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/hplink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/hplink.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/hplink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/hplink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/icc.py b/scons/scons-local-2.4.1/SCons/Tool/icc.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/icc.py rename to scons/scons-local-2.4.1/SCons/Tool/icc.py index d6e3663ca..3e639adf2 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/icc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/icc.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/icc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/icc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import cc diff --git a/scons/scons-local-2.4.0/SCons/Tool/icl.py b/scons/scons-local-2.4.1/SCons/Tool/icl.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/icl.py rename to scons/scons-local-2.4.1/SCons/Tool/icl.py index 88c68815d..bee5bcbcb 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/icl.py +++ b/scons/scons-local-2.4.1/SCons/Tool/icl.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/icl.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/icl.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Tool.intelc diff --git a/scons/scons-local-2.4.0/SCons/Tool/ifl.py b/scons/scons-local-2.4.1/SCons/Tool/ifl.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/ifl.py rename to scons/scons-local-2.4.1/SCons/Tool/ifl.py index ef5bdd61f..8c287fc98 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ifl.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ifl.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ifl.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ifl.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults from SCons.Scanner.Fortran import FortranScan diff --git a/scons/scons-local-2.4.0/SCons/Tool/ifort.py b/scons/scons-local-2.4.1/SCons/Tool/ifort.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/ifort.py rename to scons/scons-local-2.4.1/SCons/Tool/ifort.py index 275c5c884..3400a8951 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ifort.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ifort.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ifort.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ifort.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults from SCons.Scanner.Fortran import FortranScan diff --git a/scons/scons-local-2.4.0/SCons/Tool/ilink.py b/scons/scons-local-2.4.1/SCons/Tool/ilink.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/ilink.py rename to scons/scons-local-2.4.1/SCons/Tool/ilink.py index b2c3513de..e3828ca7c 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ilink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ilink.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ilink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ilink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/ilink32.py b/scons/scons-local-2.4.1/SCons/Tool/ilink32.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/ilink32.py rename to scons/scons-local-2.4.1/SCons/Tool/ilink32.py index a2f1e67ba..7a63b36d6 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ilink32.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ilink32.py @@ -27,7 +27,7 @@ XXX # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ilink32.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ilink32.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Tool import SCons.Tool.bcc32 diff --git a/scons/scons-local-2.4.0/SCons/Tool/install.py b/scons/scons-local-2.4.1/SCons/Tool/install.py similarity index 75% rename from scons/scons-local-2.4.0/SCons/Tool/install.py rename to scons/scons-local-2.4.1/SCons/Tool/install.py index 0b3642cd5..9ae78fa0a 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/install.py +++ b/scons/scons-local-2.4.1/SCons/Tool/install.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/install.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/install.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import re @@ -38,6 +38,7 @@ import shutil import stat import SCons.Action +import SCons.Tool from SCons.Util import make_path_relative # @@ -141,98 +142,35 @@ def copyFuncVersionedLib(dest, source, env): shutil.copy2(source, dest) st = os.stat(source) os.chmod(dest, stat.S_IMODE(st[stat.ST_MODE]) | stat.S_IWRITE) - versionedLibLinks(dest, source, env) + installShlibLinks(dest, source, env) return 0 -def versionedLibVersion(dest, source, env): - """Check if dest is a version shared library name. Return version, libname, & install_dir if it is.""" - Verbose = False - platform = env.subst('$PLATFORM') - if not (platform == 'posix' or platform == 'darwin' or platform == 'sunos'): - return (None, None, None) +def listShlibLinksToInstall(dest, source, env): + install_links = [] + source = env.arg2nodes(source) + dest = env.fs.File(dest) + install_dir = dest.get_dir() + for src in source: + symlinks = getattr(getattr(src,'attributes',None), 'shliblinks', None) + if symlinks: + for link, linktgt in symlinks: + link_base = os.path.basename(link.get_path()) + linktgt_base = os.path.basename(linktgt.get_path()) + install_link = env.fs.File(link_base, install_dir) + install_linktgt = env.fs.File(linktgt_base, install_dir) + install_links.append((install_link, install_linktgt)) + return install_links - if (hasattr(source[0], 'attributes') and - hasattr(source[0].attributes, 'shlibname')): - libname = source[0].attributes.shlibname - else: - libname = os.path.basename(str(dest)) - install_dir = os.path.dirname(str(dest)) - shlib_suffix = env.subst('$SHLIBSUFFIX') - # See if the source name is a versioned shared library, get the version number - result = False - - version_re = re.compile("[0-9]+\\.[0-9]+\\.[0-9a-zA-Z]+") - version_File = None - if platform == 'posix' or platform == 'sunos': - # handle unix names - versioned_re = re.compile(re.escape(shlib_suffix + '.') + "[0-9]+\\.[0-9]+\\.[0-9a-zA-Z]+") - result = versioned_re.findall(libname) - if result: - version_File = version_re.findall(versioned_re.findall(libname)[-1])[-1] - elif platform == 'darwin': - # handle OSX names - versioned_re = re.compile("\\.[0-9]+\\.[0-9]+\\.[0-9a-zA-Z]+" + re.escape(shlib_suffix) ) - result = versioned_re.findall(libname) - if result: - version_File = version_re.findall(versioned_re.findall(libname)[-1])[-1] - - if Verbose: - print "install: version_File ", version_File - # result is False if we did not find a versioned shared library name, so return and empty list - if not result: - return (None, libname, install_dir) - - version = None - # get version number from the environment - try: - version = env.subst('$SHLIBVERSION') - except KeyError: - version = None - - if version != version_File: - #raise SCons.Errors.UserError("SHLIBVERSION '%s' does not match the version # '%s' in the filename" % (version, version_File) ) - print "SHLIBVERSION '%s' does not match the version # '%s' in the filename, proceeding based on file name" % (version, version_File) - version = version_File - return (version, libname, install_dir) - -def versionedLibLinks(dest, source, env): +def installShlibLinks(dest, source, env): """If we are installing a versioned shared library create the required links.""" Verbose = False - linknames = [] - version, libname, install_dir = versionedLibVersion(dest, source, env) - if version != None: - # libname includes the version number if one was given - linknames = SCons.Tool.VersionShLibLinkNames(version,libname,env) - if Verbose: - print "versionedLibLinks: linknames ",linknames - # Here we just need the file name w/o path as the target of the link - lib_ver = libname - # make symlink of adjacent names in linknames - for count in range(len(linknames)): - linkname = linknames[count] - fulllinkname = os.path.join(install_dir, linkname) - if Verbose: - print "full link name ",fulllinkname - if count > 0: - try: - os.remove(lastlinkname) - except: - pass - os.symlink(os.path.basename(fulllinkname),lastlinkname) - if Verbose: - print "versionedLibLinks: made sym link of %s -> %s" % (lastlinkname,os.path.basename(fulllinkname)) - lastlinkname = fulllinkname - # finish chain of sym links with link to the actual library - if len(linknames)>0: - try: - os.remove(lastlinkname) - except: - pass - os.symlink(lib_ver,lastlinkname) - if Verbose: - print "versionedLibLinks: made sym link of %s -> %s" % (lib_ver,lastlinkname) + symlinks = listShlibLinksToInstall(dest, source, env) + if Verbose: + print 'installShlibLinks: symlinks=%r' % SCons.Tool.StringizeLibSymlinks(symlinks) + if symlinks: + SCons.Tool.CreateLibSymlinks(env, symlinks) return def installFunc(target, source, env): @@ -306,22 +244,11 @@ def add_versioned_targets_to_INSTALLED_FILES(target, source, env): Verbose = False _INSTALLED_FILES.extend(target) if Verbose: - print "ver lib emitter ",repr(target) + print "add_versioned_targets_to_INSTALLED_FILES: target=%r" % map(str, target) - # see if we have a versioned shared library, if so generate side effects - version, libname, install_dir = versionedLibVersion(target[0], source, env) - if version != None: - # generate list of link names - linknames = SCons.Tool.VersionShLibLinkNames(version,libname,env) - for linkname in linknames: - if Verbose: - print "make side effect of %s" % os.path.join(install_dir, linkname) - fulllinkname = os.path.join(install_dir, linkname) - env.SideEffect(fulllinkname,target[0]) - env.Clean(target[0],fulllinkname) - _INSTALLED_FILES.append(fulllinkname) - if Verbose: - print "installed list ", _INSTALLED_FILES + symlinks = listShlibLinksToInstall(target[0], source, env) + if symlinks: + SCons.Tool.EmitLibSymlinks(env, symlinks, target[0]) _UNIQUE_INSTALLED_FILES = None return (target, source) diff --git a/scons/scons-local-2.4.0/SCons/Tool/intelc.py b/scons/scons-local-2.4.1/SCons/Tool/intelc.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/intelc.py rename to scons/scons-local-2.4.1/SCons/Tool/intelc.py index 256f32e6c..ebf25345a 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/intelc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/intelc.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import division -__revision__ = "src/engine/SCons/Tool/intelc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/intelc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import math, sys, os.path, glob, string, re diff --git a/scons/scons-local-2.4.0/SCons/Tool/ipkg.py b/scons/scons-local-2.4.1/SCons/Tool/ipkg.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/ipkg.py rename to scons/scons-local-2.4.1/SCons/Tool/ipkg.py index bf2b49671..b7f16740a 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ipkg.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ipkg.py @@ -33,7 +33,7 @@ packages fake_root. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ipkg.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ipkg.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os diff --git a/scons/scons-local-2.4.0/SCons/Tool/jar.py b/scons/scons-local-2.4.1/SCons/Tool/jar.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/jar.py rename to scons/scons-local-2.4.1/SCons/Tool/jar.py index 50d3fc0dd..885720974 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/jar.py +++ b/scons/scons-local-2.4.1/SCons/Tool/jar.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/jar.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/jar.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Subst import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/javac.py b/scons/scons-local-2.4.1/SCons/Tool/javac.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/javac.py rename to scons/scons-local-2.4.1/SCons/Tool/javac.py index bb5720891..bbaa47d77 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/javac.py +++ b/scons/scons-local-2.4.1/SCons/Tool/javac.py @@ -30,7 +30,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/javac.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/javac.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/javah.py b/scons/scons-local-2.4.1/SCons/Tool/javah.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/javah.py rename to scons/scons-local-2.4.1/SCons/Tool/javah.py index 1d667b9ef..4c20393b0 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/javah.py +++ b/scons/scons-local-2.4.1/SCons/Tool/javah.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/javah.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/javah.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/latex.py b/scons/scons-local-2.4.1/SCons/Tool/latex.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/latex.py rename to scons/scons-local-2.4.1/SCons/Tool/latex.py index 69413cc32..e329d3f2c 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/latex.py +++ b/scons/scons-local-2.4.1/SCons/Tool/latex.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/latex.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/latex.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Defaults diff --git a/scons/scons-local-2.4.0/SCons/Tool/ldc.py b/scons/scons-local-2.4.1/SCons/Tool/ldc.py similarity index 86% rename from scons/scons-local-2.4.0/SCons/Tool/ldc.py rename to scons/scons-local-2.4.1/SCons/Tool/ldc.py index c1b558ff3..b37f2d72f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/ldc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/ldc.py @@ -46,7 +46,7 @@ Lib tool variables: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/ldc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/ldc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import subprocess @@ -105,7 +105,7 @@ def generate(env): # Hack for Fedora the packages of which use the wrong name :-( if os.path.exists('/usr/lib64/libphobos-ldc.so') or os.path.exists('/usr/lib32/libphobos-ldc.so') or os.path.exists('/usr/lib/libphobos-ldc.so') : env['DSHLINKFLAGS'] = SCons.Util.CLVar('$DLINKFLAGS -shared -defaultlib=phobos-ldc') - env['SHDLINKCOM'] = '$DLINK -of=$TARGET $DSHLINKFLAGS $__DRPATH $SOURCES $_DLIBDIRFLAGS $_DLIBFLAGS' + env['SHDLINKCOM'] = '$DLINK -of=$TARGET $DSHLINKFLAGS $__DSHLIBVERSIONFLAGS $__DRPATH $SOURCES $_DLIBDIRFLAGS $_DLIBFLAGS' env['DLIBLINKPREFIX'] = '' if env['PLATFORM'] == 'win32' else '-L-l' env['DLIBLINKSUFFIX'] = '.lib' if env['PLATFORM'] == 'win32' else '' @@ -131,6 +131,17 @@ def generate(env): env['DRPATHSUFFIX'] = '' env['_DRPATH'] = '${_concat(DRPATHPREFIX, RPATH, DRPATHSUFFIX, __env__)}' + # Support for versioned libraries + env['_DSHLIBVERSIONFLAGS'] = '$DSHLIBVERSIONFLAGS -L-soname=$_DSHLIBSONAME' + env['_DSHLIBSONAME'] = '${DShLibSonameGenerator(__env__,TARGET)}' + # NOTE: this is a quick hack, the soname will only work if there is + # c/c++ linker loaded which provides callback for the ShLibSonameGenerator + env['DShLibSonameGenerator'] = SCons.Tool.ShLibSonameGenerator + # NOTE: this is only for further reference, currently $DSHLIBVERSION does + # not work, the user must use $SHLIBVERSION + env['DSHLIBVERSION'] = '$SHLIBVERSION' + env['DSHLIBVERSIONFLAGS'] = [] + SCons.Tool.createStaticLibBuilder(env) diff --git a/scons/scons-local-2.4.0/SCons/Tool/lex.py b/scons/scons-local-2.4.1/SCons/Tool/lex.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/lex.py rename to scons/scons-local-2.4.1/SCons/Tool/lex.py index 9f6557de7..9baecb574 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/lex.py +++ b/scons/scons-local-2.4.1/SCons/Tool/lex.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/lex.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/lex.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.1/SCons/Tool/link.py b/scons/scons-local-2.4.1/SCons/Tool/link.py new file mode 100644 index 000000000..08dce9942 --- /dev/null +++ b/scons/scons-local-2.4.1/SCons/Tool/link.py @@ -0,0 +1,325 @@ +"""SCons.Tool.link + +Tool-specific initialization for the generic Posix linker. + +There normally shouldn't be any need to import this module directly. +It will usually be imported through the generic SCons.Tool.Tool() +selection method. + +""" + +# +# Copyright (c) 2001 - 2015 The SCons Foundation +# +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +# + +__revision__ = "src/engine/SCons/Tool/link.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" + +import sys +import re +import os + +import SCons.Tool +import SCons.Util +import SCons.Warnings + +from SCons.Tool.FortranCommon import isfortran + +from SCons.Tool.DCommon import isD + +cplusplus = __import__('c++', globals(), locals(), []) + +issued_mixed_link_warning = False + +def smart_link(source, target, env, for_signature): + has_cplusplus = cplusplus.iscplusplus(source) + has_fortran = isfortran(env, source) + has_d = isD(env, source) + if has_cplusplus and has_fortran and not has_d: + global issued_mixed_link_warning + if not issued_mixed_link_warning: + msg = "Using $CXX to link Fortran and C++ code together.\n\t" + \ + "This may generate a buggy executable if the '%s'\n\t" + \ + "compiler does not know how to deal with Fortran runtimes." + SCons.Warnings.warn(SCons.Warnings.FortranCxxMixWarning, + msg % env.subst('$CXX')) + issued_mixed_link_warning = True + return '$CXX' + elif has_d: + env['LINKCOM'] = env['DLINKCOM'] + env['SHLINKCOM'] = env['SHDLINKCOM'] + return '$DC' + elif has_fortran: + return '$FORTRAN' + elif has_cplusplus: + return '$CXX' + return '$CC' + +def _lib_emitter(target, source, env, **kw): + Verbose = False + if Verbose: + print "_lib_emitter: target[0]=%r" % target[0].get_path() + for tgt in target: + tgt.attributes.shared = 1 + + try: + symlink_generator = kw['symlink_generator'] + except KeyError: + pass + else: + if Verbose: + print "_lib_emitter: symlink_generator=%r" % symlink_generator + symlinks = symlink_generator(env, target[0]) + if Verbose: + print "_lib_emitter: symlinks=%r" % symlinks + + if symlinks: + SCons.Tool.EmitLibSymlinks(env, symlinks, target[0]) + target[0].attributes.shliblinks = symlinks + return (target, source) + +def shlib_emitter(target, source, env): + return _lib_emitter(target, source, env, symlink_generator = SCons.Tool.ShLibSymlinkGenerator) + +def ldmod_emitter(target, source, env): + return _lib_emitter(target, source, env, symlink_generator = SCons.Tool.LdModSymlinkGenerator) + +# This is generic enough to be included here... +def _versioned_lib_name(env, libnode, version, prefix, suffix, prefix_generator, suffix_generator, **kw): + """For libnode='/optional/dir/libfoo.so.X.Y.Z' it returns 'libfoo.so'""" + Verbose = False + + if Verbose: + print "_versioned_lib_name: libnode=%r" % libnode.get_path() + print "_versioned_lib_name: version=%r" % version + print "_versioned_lib_name: prefix=%r" % prefix + print "_versioned_lib_name: suffix=%r" % suffix + print "_versioned_lib_name: suffix_generator=%r" % suffix_generator + + versioned_name = os.path.basename(libnode.get_path()) + if Verbose: + print "_versioned_lib_name: versioned_name=%r" % versioned_name + + versioned_prefix = prefix_generator(env, **kw) + versioned_suffix = suffix_generator(env, **kw) + if Verbose: + print "_versioned_lib_name: versioned_prefix=%r" % versioned_prefix + print "_versioned_lib_name: versioned_suffix=%r" % versioned_suffix + + versioned_prefix_re = '^' + re.escape(versioned_prefix) + versioned_suffix_re = re.escape(versioned_suffix) + '$' + name = re.sub(versioned_prefix_re, prefix, versioned_name) + name = re.sub(versioned_suffix_re, suffix, name) + if Verbose: + print "_versioned_lib_name: name=%r" % name + return name + +def _versioned_shlib_name(env, libnode, version, prefix, suffix, **kw): + pg = SCons.Tool.ShLibPrefixGenerator + sg = SCons.Tool.ShLibSuffixGenerator + return _versioned_lib_name(env, libnode, version, prefix, suffix, pg, sg, **kw) + +def _versioned_ldmod_name(env, libnode, version, prefix, suffix, **kw): + pg = SCons.Tool.LdModPrefixGenerator + sg = SCons.Tool.LdModSuffixGenerator + return _versioned_lib_name(env, libnode, version, prefix, suffix, pg, sg, **kw) + +def _versioned_lib_suffix(env, suffix, version): + """For suffix='.so' and version='0.1.2' it returns '.so.0.1.2'""" + Verbose = False + if Verbose: + print "_versioned_lib_suffix: suffix=%r" % suffix + print "_versioned_lib_suffix: version=%r" % version + if not suffix.endswith(version): + suffix = suffix + '.' + version + if Verbose: + print "_versioned_lib_suffix: return suffix=%r" % suffix + return suffix + +def _versioned_lib_soname(env, libnode, version, prefix, suffix, name_func): + """For libnode='/optional/dir/libfoo.so.X.Y.Z' it returns 'libfoo.so.X'""" + Verbose = False + if Verbose: + print "_versioned_lib_soname: version=%r" % version + name = name_func(env, libnode, version, prefix, suffix) + if Verbose: + print "_versioned_lib_soname: name=%r" % name + major = version.split('.')[0] + soname = name + '.' + major + if Verbose: + print "_versioned_lib_soname: soname=%r" % soname + return soname + +def _versioned_shlib_soname(env, libnode, version, prefix, suffix): + return _versioned_lib_soname(env, libnode, version, prefix, suffix, _versioned_shlib_name) + +def _versioned_ldmod_soname(env, libnode, version, prefix, suffix): + return _versioned_lib_soname(env, libnode, version, prefix, suffix, _versioned_ldmod_name) + +def _versioned_lib_symlinks(env, libnode, version, prefix, suffix, name_func, soname_func): + """Generate link names that should be created for a versioned shared lirbrary. + Returns a dictionary in the form { linkname : linktarget } + """ + Verbose = False + + if Verbose: + print "_versioned_lib_symlinks: libnode=%r" % libnode.get_path() + print "_versioned_lib_symlinks: version=%r" % version + + if sys.platform.startswith('openbsd'): + # OpenBSD uses x.y shared library versioning numbering convention + # and doesn't use symlinks to backwards-compatible libraries + if Verbose: + print "_versioned_lib_symlinks: return symlinks=%r" % None + return None + + linkdir = libnode.get_dir() + if Verbose: + print "_versioned_lib_symlinks: linkdir=%r" % linkdir.get_path() + + name = name_func(env, libnode, version, prefix, suffix) + if Verbose: + print "_versioned_lib_symlinks: name=%r" % name + + soname = soname_func(env, libnode, version, prefix, suffix) + + link0 = env.fs.File(soname, linkdir) + link1 = env.fs.File(name, linkdir) + + # We create direct symlinks, not daisy-chained. + if link0 == libnode: + # This enables SHLIBVERSION without periods (e.g. SHLIBVERSION=1) + symlinks = [ (link1, libnode) ] + else: + # This handles usual SHLIBVERSION, i.e. '1.2', '1.2.3', etc. + symlinks = [ (link0, libnode), (link1, libnode) ] + + if Verbose: + print "_versioned_lib_symlinks: return symlinks=%r" % SCons.Tool.StringizeLibSymlinks(symlinks) + + return symlinks + +def _versioned_shlib_symlinks(env, libnode, version, prefix, suffix): + nf = _versioned_shlib_name + sf = _versioned_shlib_soname + return _versioned_lib_symlinks(env, libnode, version, prefix, suffix, nf, sf) + +def _versioned_ldmod_symlinks(env, libnode, version, prefix, suffix): + nf = _versioned_ldmod_name + sf = _versioned_ldmod_soname + return _versioned_lib_symlinks(env, libnode, version, prefix, suffix, nf, sf) + +def _versioned_lib_callbacks(): + return { + 'VersionedShLibSuffix' : _versioned_lib_suffix, + 'VersionedLdModSuffix' : _versioned_lib_suffix, + 'VersionedShLibSymlinks' : _versioned_shlib_symlinks, + 'VersionedLdModSymlinks' : _versioned_ldmod_symlinks, + 'VersionedShLibName' : _versioned_shlib_name, + 'VersionedLdModName' : _versioned_ldmod_name, + 'VersionedShLibSoname' : _versioned_shlib_soname, + 'VersionedLdModSoname' : _versioned_ldmod_soname, + }.copy() + +# Setup all variables required by the versioning machinery +def _setup_versioned_lib_variables(env, **kw): + + tool = None + try: tool = kw['tool'] + except KeyError: pass + + use_soname = False + try: use_soname = kw['use_soname'] + except KeyError: pass + + # The $_SHLIBVERSIONFLAGS define extra commandline flags used when + # building VERSIONED shared libraries. It's always set, but used only + # when VERSIONED library is built (see __SHLIBVERSIONFLAGS in SCons/Defaults.py). + if use_soname: + # If the linker uses SONAME, then we need this little automata + if tool == 'sunlink': + env['_SHLIBVERSIONFLAGS'] = '$SHLIBVERSIONFLAGS -h $_SHLIBSONAME' + env['_LDMODULEVERSIONFLAGS'] = '$LDMODULEVERSIONFLAGS -h $_LDMODULESONAME' + else: + env['_SHLIBVERSIONFLAGS'] = '$SHLIBVERSIONFLAGS -Wl,-soname=$_SHLIBSONAME' + env['_LDMODULEVERSIONFLAGS'] = '$LDMODULEVERSIONFLAGS -Wl,-soname=$_LDMODULESONAME' + env['_SHLIBSONAME'] = '${ShLibSonameGenerator(__env__,TARGET)}' + env['_LDMODULESONAME'] = '${LdModSonameGenerator(__env__,TARGET)}' + env['ShLibSonameGenerator'] = SCons.Tool.ShLibSonameGenerator + env['LdModSonameGenerator'] = SCons.Tool.LdModSonameGenerator + else: + env['_SHLIBVERSIONFLAGS'] = '$SHLIBVERSIONFLAGS' + env['_LDMODULEVERSIONFLAGS'] = '$LDMODULEVERSIONFLAGS' + + # LDOMDULVERSIONFLAGS should always default to $SHLIBVERSIONFLAGS + env['LDMODULEVERSIONFLAGS'] = '$SHLIBVERSIONFLAGS' + + +def generate(env): + """Add Builders and construction variables for gnulink to an Environment.""" + SCons.Tool.createSharedLibBuilder(env) + SCons.Tool.createProgBuilder(env) + + env['SHLINK'] = '$LINK' + env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS -shared') + env['SHLINKCOM'] = '$SHLINK -o $TARGET $SHLINKFLAGS $__SHLIBVERSIONFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' + # don't set up the emitter, cause AppendUnique will generate a list + # starting with None :-( + env.Append(SHLIBEMITTER = [shlib_emitter]) + env['SMARTLINK'] = smart_link + env['LINK'] = "$SMARTLINK" + env['LINKFLAGS'] = SCons.Util.CLVar('') + # __RPATH is only set to something ($_RPATH typically) on platforms that support it. + env['LINKCOM'] = '$LINK -o $TARGET $LINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' + env['LIBDIRPREFIX']='-L' + env['LIBDIRSUFFIX']='' + env['_LIBFLAGS']='${_stripixes(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, LIBPREFIXES, LIBSUFFIXES, __env__)}' + env['LIBLINKPREFIX']='-l' + env['LIBLINKSUFFIX']='' + + if env['PLATFORM'] == 'hpux': + env['SHLIBSUFFIX'] = '.sl' + elif env['PLATFORM'] == 'aix': + env['SHLIBSUFFIX'] = '.a' + + # For most platforms, a loadable module is the same as a shared + # library. Platforms which are different can override these, but + # setting them the same means that LoadableModule works everywhere. + SCons.Tool.createLoadableModuleBuilder(env) + env['LDMODULE'] = '$SHLINK' + env.Append(LDMODULEEMITTER = [ldmod_emitter]) + env['LDMODULEPREFIX'] = '$SHLIBPREFIX' + env['LDMODULESUFFIX'] = '$SHLIBSUFFIX' + env['LDMODULEFLAGS'] = '$SHLINKFLAGS' + env['LDMODULECOM'] = '$LDMODULE -o $TARGET $LDMODULEFLAGS $__LDMODULEVERSIONFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' + env['LDMODULEVERSION'] = '$SHLIBVERSION' + env['LDMODULENOVERSIONSYMLINKS'] = '$SHLIBNOVERSIONSYMLINKS' + +def exists(env): + # This module isn't really a Tool on its own, it's common logic for + # other linkers. + return None + +# Local Variables: +# tab-width:4 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=4 shiftwidth=4: diff --git a/scons/scons-local-2.4.0/SCons/Tool/linkloc.py b/scons/scons-local-2.4.1/SCons/Tool/linkloc.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/linkloc.py rename to scons/scons-local-2.4.1/SCons/Tool/linkloc.py index d2c218f7b..a8415b893 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/linkloc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/linkloc.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/linkloc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/linkloc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re @@ -86,6 +86,7 @@ def generate(env): env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS') env['SHLINKCOM'] = '${SUBST_CMD_FILE("$SHLINK $SHLINKFLAGS $_LIBDIRFLAGS $_LIBFLAGS -dll $TARGET $SOURCES")}' env['SHLIBEMITTER']= None + env['LDMODULEEMITTER']= None env['LINK'] = "linkloc" env['LINKFLAGS'] = SCons.Util.CLVar('') env['LINKCOM'] = '${SUBST_CMD_FILE("$LINK $LINKFLAGS $_LIBDIRFLAGS $_LIBFLAGS -exe $TARGET $SOURCES")}' diff --git a/scons/scons-local-2.4.0/SCons/Tool/m4.py b/scons/scons-local-2.4.1/SCons/Tool/m4.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/m4.py rename to scons/scons-local-2.4.1/SCons/Tool/m4.py index dfc466530..de9c3f649 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/m4.py +++ b/scons/scons-local-2.4.1/SCons/Tool/m4.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/m4.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/m4.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/masm.py b/scons/scons-local-2.4.1/SCons/Tool/masm.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/masm.py rename to scons/scons-local-2.4.1/SCons/Tool/masm.py index 7036de62e..3e00d3340 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/masm.py +++ b/scons/scons-local-2.4.1/SCons/Tool/masm.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/masm.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/masm.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/midl.py b/scons/scons-local-2.4.1/SCons/Tool/midl.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/midl.py rename to scons/scons-local-2.4.1/SCons/Tool/midl.py index 0d9307346..a46c1eb95 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/midl.py +++ b/scons/scons-local-2.4.1/SCons/Tool/midl.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/midl.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/midl.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/mingw.py b/scons/scons-local-2.4.1/SCons/Tool/mingw.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/mingw.py rename to scons/scons-local-2.4.1/SCons/Tool/mingw.py index 236ce32b2..0afd55935 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/mingw.py +++ b/scons/scons-local-2.4.1/SCons/Tool/mingw.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/mingw.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/mingw.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path @@ -146,6 +146,7 @@ def generate(env): env['SHLINKCOM'] = shlib_action env['LDMODULECOM'] = shlib_action env.Append(SHLIBEMITTER = [shlib_emitter]) + env.Append(LDMODULEEMITTER = [shlib_emitter]) env['AS'] = 'as' env['WIN32DEFPREFIX'] = '' diff --git a/scons/scons-local-2.4.0/SCons/Tool/msgfmt.py b/scons/scons-local-2.4.1/SCons/Tool/msgfmt.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/msgfmt.py rename to scons/scons-local-2.4.1/SCons/Tool/msgfmt.py index 4cfe6868d..9904f1168 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/msgfmt.py +++ b/scons/scons-local-2.4.1/SCons/Tool/msgfmt.py @@ -21,7 +21,7 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/msgfmt.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/msgfmt.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Builder import BuilderBase ############################################################################# diff --git a/scons/scons-local-2.4.0/SCons/Tool/msginit.py b/scons/scons-local-2.4.1/SCons/Tool/msginit.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/msginit.py rename to scons/scons-local-2.4.1/SCons/Tool/msginit.py index 53046d6e7..7afd804a3 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/msginit.py +++ b/scons/scons-local-2.4.1/SCons/Tool/msginit.py @@ -24,7 +24,7 @@ Tool specific initialization of msginit tool. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/msginit.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/msginit.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Warnings import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/msgmerge.py b/scons/scons-local-2.4.1/SCons/Tool/msgmerge.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/msgmerge.py rename to scons/scons-local-2.4.1/SCons/Tool/msgmerge.py index e2d06f4de..a1b4b73fe 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/msgmerge.py +++ b/scons/scons-local-2.4.1/SCons/Tool/msgmerge.py @@ -24,7 +24,7 @@ Tool specific initialization for `msgmerge` tool. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/msgmerge.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/msgmerge.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" ############################################################################# def _update_or_init_po_files(target, source, env): diff --git a/scons/scons-local-2.4.0/SCons/Tool/mslib.py b/scons/scons-local-2.4.1/SCons/Tool/mslib.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/mslib.py rename to scons/scons-local-2.4.1/SCons/Tool/mslib.py index a82e88db5..c4f1b0e5b 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/mslib.py +++ b/scons/scons-local-2.4.1/SCons/Tool/mslib.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/mslib.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/mslib.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/mslink.py b/scons/scons-local-2.4.1/SCons/Tool/mslink.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/mslink.py rename to scons/scons-local-2.4.1/SCons/Tool/mslink.py index 690630346..ce561fa17 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/mslink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/mslink.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/mslink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/mslink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path @@ -263,6 +263,7 @@ def generate(env): env['_SHLINK_SOURCES'] = windowsShlinkSources env['SHLINKCOM'] = compositeShLinkAction env.Append(SHLIBEMITTER = [windowsLibEmitter]) + env.Append(LDMODULEEMITTER = [windowsLibEmitter]) env['LINK'] = 'link' env['LINKFLAGS'] = SCons.Util.CLVar('/nologo') env['_PDB'] = pdbGenerator diff --git a/scons/scons-local-2.4.0/SCons/Tool/mssdk.py b/scons/scons-local-2.4.1/SCons/Tool/mssdk.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/mssdk.py rename to scons/scons-local-2.4.1/SCons/Tool/mssdk.py index 38368171d..66bf75d66 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/mssdk.py +++ b/scons/scons-local-2.4.1/SCons/Tool/mssdk.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/mssdk.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/mssdk.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" """engine.SCons.Tool.mssdk diff --git a/scons/scons-local-2.4.0/SCons/Tool/msvc.py b/scons/scons-local-2.4.1/SCons/Tool/msvc.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/msvc.py rename to scons/scons-local-2.4.1/SCons/Tool/msvc.py index 03d65ee67..bf4de4578 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/msvc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/msvc.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/msvc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/msvc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re diff --git a/scons/scons-local-2.4.0/SCons/Tool/msvs.py b/scons/scons-local-2.4.1/SCons/Tool/msvs.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/msvs.py rename to scons/scons-local-2.4.1/SCons/Tool/msvs.py index 0ad4c780f..d47a93956 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/msvs.py +++ b/scons/scons-local-2.4.1/SCons/Tool/msvs.py @@ -30,7 +30,7 @@ selection method. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/msvs.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/msvs.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.compat diff --git a/scons/scons-local-2.4.0/SCons/Tool/mwcc.py b/scons/scons-local-2.4.1/SCons/Tool/mwcc.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/mwcc.py rename to scons/scons-local-2.4.1/SCons/Tool/mwcc.py index a130d0fd8..31d815ef8 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/mwcc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/mwcc.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/mwcc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/mwcc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/mwld.py b/scons/scons-local-2.4.1/SCons/Tool/mwld.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/mwld.py rename to scons/scons-local-2.4.1/SCons/Tool/mwld.py index 8f6f3a2b0..434f26036 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/mwld.py +++ b/scons/scons-local-2.4.1/SCons/Tool/mwld.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/mwld.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/mwld.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Tool @@ -56,6 +56,7 @@ def generate(env): env['SHLINKFLAGS'] = '$LINKFLAGS' env['SHLINKCOM'] = shlib_action env['SHLIBEMITTER']= shlib_emitter + env['LDMODULEEMITTER']= shlib_emitter def exists(env): diff --git a/scons/scons-local-2.4.0/SCons/Tool/nasm.py b/scons/scons-local-2.4.1/SCons/Tool/nasm.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/nasm.py rename to scons/scons-local-2.4.1/SCons/Tool/nasm.py index 86a7ef81c..663e91897 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/nasm.py +++ b/scons/scons-local-2.4.1/SCons/Tool/nasm.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/nasm.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/nasm.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/__init__.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/__init__.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/__init__.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/__init__.py index 2107d5f72..d0a8dca05 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/__init__.py @@ -25,7 +25,7 @@ SCons Packaging Tool. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/packaging/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Environment from SCons.Variables import * diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/ipk.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/ipk.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/ipk.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/ipk.py index 51c3381e3..ae4d7fc83 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/ipk.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/ipk.py @@ -24,7 +24,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/ipk.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/ipk.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Builder import SCons.Node.FS diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/msi.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/msi.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/msi.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/msi.py index 41b7c7770..cc563b832 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/msi.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/msi.py @@ -25,7 +25,7 @@ The msi packager. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/packaging/msi.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/msi.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import SCons diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/rpm.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/rpm.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/rpm.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/rpm.py index f7e25770f..cf3ea8193 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/rpm.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/rpm.py @@ -25,7 +25,7 @@ The rpm packager. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/packaging/rpm.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/rpm.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os @@ -168,7 +168,7 @@ def build_specfile_sections(spec): 'X_RPM_POSTUNINSTALL' : '%%postun\n%s\n\n', 'X_RPM_VERIFY' : '%%verify\n%s\n\n', - # These are for internal use but could possibly be overriden + # These are for internal use but could possibly be overridden 'X_RPM_PREP' : '%%prep\n%s\n\n', 'X_RPM_BUILD' : '%%build\n%s\n\n', 'X_RPM_INSTALL' : '%%install\n%s\n\n', diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/src_tarbz2.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/src_tarbz2.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/src_tarbz2.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/src_tarbz2.py index 438fc2099..6314e6438 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/src_tarbz2.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/src_tarbz2.py @@ -26,7 +26,7 @@ The tarbz2 SRC packager. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/src_tarbz2.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/src_tarbz2.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.packaging import putintopackageroot diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/src_targz.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/src_targz.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/src_targz.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/src_targz.py index 6a85869c2..7431fb79c 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/src_targz.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/src_targz.py @@ -26,7 +26,7 @@ The targz SRC packager. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/src_targz.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/src_targz.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.packaging import putintopackageroot diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/src_zip.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/src_zip.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/src_zip.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/src_zip.py index e1a1d4963..99f8c06ae 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/src_zip.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/src_zip.py @@ -26,7 +26,7 @@ The zip SRC packager. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/src_zip.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/src_zip.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.packaging import putintopackageroot diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/tarbz2.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/tarbz2.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/tarbz2.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/tarbz2.py index 79f82198d..02568d5b3 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/tarbz2.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/tarbz2.py @@ -26,7 +26,7 @@ The tarbz2 SRC packager. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/tarbz2.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/tarbz2.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.packaging import stripinstallbuilder, putintopackageroot diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/targz.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/targz.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/targz.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/targz.py index eeb3d6a32..09b17268b 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/targz.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/targz.py @@ -26,7 +26,7 @@ The targz SRC packager. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/targz.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/targz.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.packaging import stripinstallbuilder, putintopackageroot diff --git a/scons/scons-local-2.4.0/SCons/Tool/packaging/zip.py b/scons/scons-local-2.4.1/SCons/Tool/packaging/zip.py similarity index 93% rename from scons/scons-local-2.4.0/SCons/Tool/packaging/zip.py rename to scons/scons-local-2.4.1/SCons/Tool/packaging/zip.py index 6c4037d52..bc263fb3d 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/packaging/zip.py +++ b/scons/scons-local-2.4.1/SCons/Tool/packaging/zip.py @@ -26,7 +26,7 @@ The zip SRC packager. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/packaging/zip.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/packaging/zip.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Tool.packaging import stripinstallbuilder, putintopackageroot diff --git a/scons/scons-local-2.4.0/SCons/Tool/pdf.py b/scons/scons-local-2.4.1/SCons/Tool/pdf.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/pdf.py rename to scons/scons-local-2.4.1/SCons/Tool/pdf.py index 0ccb49b0d..b2d378e54 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/pdf.py +++ b/scons/scons-local-2.4.1/SCons/Tool/pdf.py @@ -28,7 +28,7 @@ Add an explicit action to run epstopdf to convert .eps files to .pdf # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/pdf.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/pdf.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Builder import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/pdflatex.py b/scons/scons-local-2.4.1/SCons/Tool/pdflatex.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/pdflatex.py rename to scons/scons-local-2.4.1/SCons/Tool/pdflatex.py index 42188f414..f4cb4ae5a 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/pdflatex.py +++ b/scons/scons-local-2.4.1/SCons/Tool/pdflatex.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/pdflatex.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/pdflatex.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/pdftex.py b/scons/scons-local-2.4.1/SCons/Tool/pdftex.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/pdftex.py rename to scons/scons-local-2.4.1/SCons/Tool/pdftex.py index e38a27866..84adf475d 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/pdftex.py +++ b/scons/scons-local-2.4.1/SCons/Tool/pdftex.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/pdftex.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/pdftex.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import SCons.Action diff --git a/scons/scons-local-2.4.0/SCons/Tool/qt.py b/scons/scons-local-2.4.1/SCons/Tool/qt.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/qt.py rename to scons/scons-local-2.4.1/SCons/Tool/qt.py index b8233c06c..923f719ef 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/qt.py +++ b/scons/scons-local-2.4.1/SCons/Tool/qt.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/qt.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/qt.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re @@ -320,6 +320,7 @@ def generate(env): # correctly later by our emitter. env.AppendUnique(PROGEMITTER =[AutomocStatic], SHLIBEMITTER=[AutomocShared], + LDMODULEEMITTER=[AutomocShared], LIBEMITTER =[AutomocStatic], # Of course, we need to link against the qt libraries CPPPATH=["$QT_CPPPATH"], diff --git a/scons/scons-local-2.4.0/SCons/Tool/rmic.py b/scons/scons-local-2.4.1/SCons/Tool/rmic.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/rmic.py rename to scons/scons-local-2.4.1/SCons/Tool/rmic.py index 6045b7fcc..dbacda302 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/rmic.py +++ b/scons/scons-local-2.4.1/SCons/Tool/rmic.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/rmic.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/rmic.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/rpcgen.py b/scons/scons-local-2.4.1/SCons/Tool/rpcgen.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/Tool/rpcgen.py rename to scons/scons-local-2.4.1/SCons/Tool/rpcgen.py index 1a3de76e9..eec6bf625 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/rpcgen.py +++ b/scons/scons-local-2.4.1/SCons/Tool/rpcgen.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/rpcgen.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/rpcgen.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" from SCons.Builder import Builder import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/rpm.py b/scons/scons-local-2.4.1/SCons/Tool/rpm.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/rpm.py rename to scons/scons-local-2.4.1/SCons/Tool/rpm.py index 46b31124b..400639e95 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/rpm.py +++ b/scons/scons-local-2.4.1/SCons/Tool/rpm.py @@ -33,7 +33,7 @@ tar.gz consisting of the source file and a specfile. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/rpm.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/rpm.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import re diff --git a/scons/scons-local-2.4.0/SCons/Tool/rpmutils.py b/scons/scons-local-2.4.1/SCons/Tool/rpmutils.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/rpmutils.py rename to scons/scons-local-2.4.1/SCons/Tool/rpmutils.py index 10b556005..82247bc68 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/rpmutils.py +++ b/scons/scons-local-2.4.1/SCons/Tool/rpmutils.py @@ -35,7 +35,7 @@ exact syntax. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/rpmutils.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/rpmutils.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import platform diff --git a/scons/scons-local-2.4.0/SCons/Tool/sgiar.py b/scons/scons-local-2.4.1/SCons/Tool/sgiar.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/sgiar.py rename to scons/scons-local-2.4.1/SCons/Tool/sgiar.py index 6be4c6509..1e7a4bd1d 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sgiar.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sgiar.py @@ -33,7 +33,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sgiar.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sgiar.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool diff --git a/scons/scons-local-2.4.0/SCons/Tool/sgic++.py b/scons/scons-local-2.4.1/SCons/Tool/sgic++.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/sgic++.py rename to scons/scons-local-2.4.1/SCons/Tool/sgic++.py index 8ae115a2a..556009a43 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sgic++.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sgic++.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sgic++.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sgic++.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/sgicc.py b/scons/scons-local-2.4.1/SCons/Tool/sgicc.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/sgicc.py rename to scons/scons-local-2.4.1/SCons/Tool/sgicc.py index ec26bf11f..f236b786c 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sgicc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sgicc.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sgicc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sgicc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import cc diff --git a/scons/scons-local-2.4.0/SCons/Tool/sgilink.py b/scons/scons-local-2.4.1/SCons/Tool/sgilink.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/sgilink.py rename to scons/scons-local-2.4.1/SCons/Tool/sgilink.py index 828f6d0ee..b0249d249 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sgilink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sgilink.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sgilink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sgilink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/sunar.py b/scons/scons-local-2.4.1/SCons/Tool/sunar.py similarity index 88% rename from scons/scons-local-2.4.0/SCons/Tool/sunar.py rename to scons/scons-local-2.4.1/SCons/Tool/sunar.py index 9c3e48106..6f7fe70c5 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sunar.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sunar.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sunar.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sunar.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Defaults import SCons.Tool @@ -51,9 +51,6 @@ def generate(env): env['ARFLAGS'] = SCons.Util.CLVar('r') env['ARCOM'] = '$AR $ARFLAGS $TARGET $SOURCES' - env['SHLINK'] = '$LINK' - env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS -G') - env['SHLINKCOM'] = '$SHLINK $SHLINKFLAGS -o $TARGET $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' env['LIBPREFIX'] = 'lib' env['LIBSUFFIX'] = '.a' diff --git a/scons/scons-local-2.4.0/SCons/Tool/sunc++.py b/scons/scons-local-2.4.1/SCons/Tool/sunc++.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/sunc++.py rename to scons/scons-local-2.4.1/SCons/Tool/sunc++.py index 75fe4355c..8dc4d23b1 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sunc++.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sunc++.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sunc++.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sunc++.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons diff --git a/scons/scons-local-2.4.0/SCons/Tool/suncc.py b/scons/scons-local-2.4.1/SCons/Tool/suncc.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/suncc.py rename to scons/scons-local-2.4.1/SCons/Tool/suncc.py index b543b956d..b40a8d736 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/suncc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/suncc.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/suncc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/suncc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/sunf77.py b/scons/scons-local-2.4.1/SCons/Tool/sunf77.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/sunf77.py rename to scons/scons-local-2.4.1/SCons/Tool/sunf77.py index bff5c1a5d..a169c4fde 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sunf77.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sunf77.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sunf77.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sunf77.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/sunf90.py b/scons/scons-local-2.4.1/SCons/Tool/sunf90.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/sunf90.py rename to scons/scons-local-2.4.1/SCons/Tool/sunf90.py index b0e31d116..bb737f78d 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sunf90.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sunf90.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sunf90.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sunf90.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/sunf95.py b/scons/scons-local-2.4.1/SCons/Tool/sunf95.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/sunf95.py rename to scons/scons-local-2.4.1/SCons/Tool/sunf95.py index 5263f5ae7..52cbaa886 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sunf95.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sunf95.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sunf95.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sunf95.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Util diff --git a/scons/scons-local-2.4.0/SCons/Tool/sunlink.py b/scons/scons-local-2.4.1/SCons/Tool/sunlink.py similarity index 88% rename from scons/scons-local-2.4.0/SCons/Tool/sunlink.py rename to scons/scons-local-2.4.1/SCons/Tool/sunlink.py index d8a941f10..90f95bd9f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/sunlink.py +++ b/scons/scons-local-2.4.1/SCons/Tool/sunlink.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/sunlink.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/sunlink.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import os.path @@ -66,6 +66,10 @@ def generate(env): env['RPATHSUFFIX'] = '' env['_RPATH'] = '${_concat(RPATHPREFIX, RPATH, RPATHSUFFIX, __env__)}' + # Support for versioned libraries + link._setup_versioned_lib_variables(env, tool = 'sunlink', use_soname = True) + env['LINKCALLBACKS'] = link._versioned_lib_callbacks() + def exists(env): return ccLinker diff --git a/scons/scons-local-2.4.0/SCons/Tool/swig.py b/scons/scons-local-2.4.1/SCons/Tool/swig.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/swig.py rename to scons/scons-local-2.4.1/SCons/Tool/swig.py index 83cd31593..74c5a8ee5 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/swig.py +++ b/scons/scons-local-2.4.1/SCons/Tool/swig.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/swig.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/swig.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re @@ -44,6 +44,8 @@ import SCons.Tool import SCons.Util import SCons.Node +swigs = [ 'swig', 'swig3.0', 'swig2.0' ] + SwigAction = SCons.Action.Action('$SWIGCOM', '$SWIGCOMSTR') def swigSuffixEmitter(env, source): @@ -128,9 +130,10 @@ def _swigEmitter(target, source, env): target.extend(java_files) return (target, source) -def _get_swig_version(env): +def _get_swig_version(env, swig): """Run the SWIG command line tool to get and return the version number""" - pipe = SCons.Action._subproc(env, [env['SWIG'], '-version'], + swig = env.subst(swig) + pipe = SCons.Action._subproc(env, SCons.Util.CLVar(swig) + ['-version'], stdin = 'devnull', stderr = 'devnull', stdout = subprocess.PIPE) @@ -160,8 +163,9 @@ def generate(env): java_file.add_action('.i', SwigAction) java_file.add_emitter('.i', _swigEmitter) - env['SWIG'] = 'swig' - env['SWIGVERSION'] = _get_swig_version(env) + if 'SWIG' not in env: + env['SWIG'] = env.Detect(swigs) or swigs[0] + env['SWIGVERSION'] = _get_swig_version(env, env['SWIG']) env['SWIGFLAGS'] = SCons.Util.CLVar('') env['SWIGDIRECTORSUFFIX'] = '_wrap.h' env['SWIGCFILESUFFIX'] = '_wrap$CFILESUFFIX' diff --git a/scons/scons-local-2.4.0/SCons/Tool/tar.py b/scons/scons-local-2.4.1/SCons/Tool/tar.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/Tool/tar.py rename to scons/scons-local-2.4.1/SCons/Tool/tar.py index 50afeae94..e96743866 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/tar.py +++ b/scons/scons-local-2.4.1/SCons/Tool/tar.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/tar.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/tar.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Action import SCons.Builder diff --git a/scons/scons-local-2.4.0/SCons/Tool/tex.py b/scons/scons-local-2.4.1/SCons/Tool/tex.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/tex.py rename to scons/scons-local-2.4.1/SCons/Tool/tex.py index 9dd462ece..92542d606 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/tex.py +++ b/scons/scons-local-2.4.1/SCons/Tool/tex.py @@ -32,7 +32,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/tex.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/tex.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import re diff --git a/scons/scons-local-2.4.0/SCons/Tool/textfile.py b/scons/scons-local-2.4.1/SCons/Tool/textfile.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Tool/textfile.py rename to scons/scons-local-2.4.1/SCons/Tool/textfile.py index 9c2b3a1f8..87a3ad8f2 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/textfile.py +++ b/scons/scons-local-2.4.1/SCons/Tool/textfile.py @@ -44,7 +44,7 @@ Textfile/Substfile builder for SCons. is unpredictible whether the expansion will occur. """ -__revision__ = "src/engine/SCons/Tool/textfile.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/textfile.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons diff --git a/scons/scons-local-2.4.0/SCons/Tool/tlib.py b/scons/scons-local-2.4.1/SCons/Tool/tlib.py similarity index 94% rename from scons/scons-local-2.4.0/SCons/Tool/tlib.py rename to scons/scons-local-2.4.1/SCons/Tool/tlib.py index 904043907..4951bddfe 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/tlib.py +++ b/scons/scons-local-2.4.1/SCons/Tool/tlib.py @@ -27,7 +27,7 @@ XXX # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/tlib.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/tlib.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Tool import SCons.Tool.bcc32 diff --git a/scons/scons-local-2.4.0/SCons/Tool/wix.py b/scons/scons-local-2.4.1/SCons/Tool/wix.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/wix.py rename to scons/scons-local-2.4.1/SCons/Tool/wix.py index 1291f184a..0fa3ea7e9 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/wix.py +++ b/scons/scons-local-2.4.1/SCons/Tool/wix.py @@ -30,7 +30,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/wix.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/wix.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import SCons.Builder import SCons.Action diff --git a/scons/scons-local-2.4.0/SCons/Tool/xgettext.py b/scons/scons-local-2.4.1/SCons/Tool/xgettext.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Tool/xgettext.py rename to scons/scons-local-2.4.1/SCons/Tool/xgettext.py index ed6245d47..4edd4aa80 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/xgettext.py +++ b/scons/scons-local-2.4.1/SCons/Tool/xgettext.py @@ -24,7 +24,7 @@ Tool specific initialization of `xgettext` tool. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Tool/xgettext.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/xgettext.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" ############################################################################# class _CmdRunner(object): diff --git a/scons/scons-local-2.4.0/SCons/Tool/yacc.py b/scons/scons-local-2.4.1/SCons/Tool/yacc.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/yacc.py rename to scons/scons-local-2.4.1/SCons/Tool/yacc.py index 4b8d9380a..c05140f0f 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/yacc.py +++ b/scons/scons-local-2.4.1/SCons/Tool/yacc.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/yacc.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/yacc.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Tool/zip.py b/scons/scons-local-2.4.1/SCons/Tool/zip.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/Tool/zip.py rename to scons/scons-local-2.4.1/SCons/Tool/zip.py index 750769a45..02999c2d4 100644 --- a/scons/scons-local-2.4.0/SCons/Tool/zip.py +++ b/scons/scons-local-2.4.1/SCons/Tool/zip.py @@ -31,7 +31,7 @@ selection method. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Tool/zip.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Tool/zip.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path diff --git a/scons/scons-local-2.4.0/SCons/Util.py b/scons/scons-local-2.4.1/SCons/Util.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Util.py rename to scons/scons-local-2.4.1/SCons/Util.py index 343f0a795..be86831df 100644 --- a/scons/scons-local-2.4.0/SCons/Util.py +++ b/scons/scons-local-2.4.1/SCons/Util.py @@ -24,7 +24,7 @@ Various utility functions go here. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Util.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Util.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import sys diff --git a/scons/scons-local-2.4.0/SCons/Variables/BoolVariable.py b/scons/scons-local-2.4.1/SCons/Variables/BoolVariable.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Variables/BoolVariable.py rename to scons/scons-local-2.4.1/SCons/Variables/BoolVariable.py index 1594559e5..c7310a759 100644 --- a/scons/scons-local-2.4.0/SCons/Variables/BoolVariable.py +++ b/scons/scons-local-2.4.1/SCons/Variables/BoolVariable.py @@ -34,7 +34,7 @@ Usage example: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Variables/BoolVariable.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Variables/BoolVariable.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __all__ = ['BoolVariable',] diff --git a/scons/scons-local-2.4.0/SCons/Variables/EnumVariable.py b/scons/scons-local-2.4.1/SCons/Variables/EnumVariable.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Variables/EnumVariable.py rename to scons/scons-local-2.4.1/SCons/Variables/EnumVariable.py index bc95cf640..734d48c18 100644 --- a/scons/scons-local-2.4.0/SCons/Variables/EnumVariable.py +++ b/scons/scons-local-2.4.1/SCons/Variables/EnumVariable.py @@ -37,7 +37,7 @@ Usage example: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Variables/EnumVariable.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Variables/EnumVariable.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __all__ = ['EnumVariable',] diff --git a/scons/scons-local-2.4.0/SCons/Variables/ListVariable.py b/scons/scons-local-2.4.1/SCons/Variables/ListVariable.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Variables/ListVariable.py rename to scons/scons-local-2.4.1/SCons/Variables/ListVariable.py index 1faee7296..5541f303d 100644 --- a/scons/scons-local-2.4.0/SCons/Variables/ListVariable.py +++ b/scons/scons-local-2.4.1/SCons/Variables/ListVariable.py @@ -46,7 +46,7 @@ Usage example: # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Variables/ListVariable.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Variables/ListVariable.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" # Know Bug: This should behave like a Set-Type, but does not really, # since elements can occur twice. diff --git a/scons/scons-local-2.4.0/SCons/Variables/PackageVariable.py b/scons/scons-local-2.4.1/SCons/Variables/PackageVariable.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Variables/PackageVariable.py rename to scons/scons-local-2.4.1/SCons/Variables/PackageVariable.py index b7a59fe0e..a0244e4a3 100644 --- a/scons/scons-local-2.4.0/SCons/Variables/PackageVariable.py +++ b/scons/scons-local-2.4.1/SCons/Variables/PackageVariable.py @@ -50,7 +50,7 @@ Usage example: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Variables/PackageVariable.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Variables/PackageVariable.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __all__ = ['PackageVariable',] diff --git a/scons/scons-local-2.4.0/SCons/Variables/PathVariable.py b/scons/scons-local-2.4.1/SCons/Variables/PathVariable.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/Variables/PathVariable.py rename to scons/scons-local-2.4.1/SCons/Variables/PathVariable.py index b095cbc45..a7c68a88a 100644 --- a/scons/scons-local-2.4.0/SCons/Variables/PathVariable.py +++ b/scons/scons-local-2.4.1/SCons/Variables/PathVariable.py @@ -68,7 +68,7 @@ Usage example: # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/Variables/PathVariable.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Variables/PathVariable.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __all__ = ['PathVariable',] diff --git a/scons/scons-local-2.4.0/SCons/Variables/__init__.py b/scons/scons-local-2.4.1/SCons/Variables/__init__.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Variables/__init__.py rename to scons/scons-local-2.4.1/SCons/Variables/__init__.py index a00d4f8b8..57447d79a 100644 --- a/scons/scons-local-2.4.0/SCons/Variables/__init__.py +++ b/scons/scons-local-2.4.1/SCons/Variables/__init__.py @@ -26,7 +26,7 @@ customizable variables to an SCons build. # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/engine/SCons/Variables/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Variables/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os.path import sys diff --git a/scons/scons-local-2.4.0/SCons/Warnings.py b/scons/scons-local-2.4.1/SCons/Warnings.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/Warnings.py rename to scons/scons-local-2.4.1/SCons/Warnings.py index 615bc4550..5edef279d 100644 --- a/scons/scons-local-2.4.0/SCons/Warnings.py +++ b/scons/scons-local-2.4.1/SCons/Warnings.py @@ -27,7 +27,7 @@ This file implements the warnings framework for SCons. """ -__revision__ = "src/engine/SCons/Warnings.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/Warnings.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import sys diff --git a/scons/scons-local-2.4.0/SCons/__init__.py b/scons/scons-local-2.4.1/SCons/__init__.py similarity index 85% rename from scons/scons-local-2.4.0/SCons/__init__.py rename to scons/scons-local-2.4.1/SCons/__init__.py index 019cbf925..d7ec281b2 100644 --- a/scons/scons-local-2.4.0/SCons/__init__.py +++ b/scons/scons-local-2.4.1/SCons/__init__.py @@ -27,15 +27,15 @@ The main package for the SCons software construction utility. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" -__version__ = "2.4.0" +__version__ = "2.4.1" -__build__ = "rel_2.4.0:3365:9259ea1c13d7" +__build__ = "rel_2.4.1:3453:73fefd3ea0b0" -__buildsys__ = "hpmicrodog" +__buildsys__ = "ubuntu1404-32bit" -__date__ = "2015/09/21 14:03:43" +__date__ = "2015/11/09 03:25:05" __developer__ = "bdbaddog" diff --git a/scons/scons-local-2.4.0/SCons/compat/__init__.py b/scons/scons-local-2.4.1/SCons/compat/__init__.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/compat/__init__.py rename to scons/scons-local-2.4.1/SCons/compat/__init__.py index 2352d4c50..62f28f216 100644 --- a/scons/scons-local-2.4.0/SCons/compat/__init__.py +++ b/scons/scons-local-2.4.1/SCons/compat/__init__.py @@ -60,7 +60,7 @@ function defined below loads the module as the "real" name (without the rest of our code will find our pre-loaded compatibility module. """ -__revision__ = "src/engine/SCons/compat/__init__.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/compat/__init__.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import os import sys diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_builtins.py b/scons/scons-local-2.4.1/SCons/compat/_scons_builtins.py similarity index 98% rename from scons/scons-local-2.4.0/SCons/compat/_scons_builtins.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_builtins.py index bf2005faf..b42fc2df7 100644 --- a/scons/scons-local-2.4.0/SCons/compat/_scons_builtins.py +++ b/scons/scons-local-2.4.1/SCons/compat/_scons_builtins.py @@ -51,7 +51,7 @@ the FUNCTIONS or DATA output, that means those names are already built in to this version of Python and we don't need to add them from this module. """ -__revision__ = "src/engine/SCons/compat/_scons_builtins.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/compat/_scons_builtins.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import builtins diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_collections.py b/scons/scons-local-2.4.1/SCons/compat/_scons_collections.py similarity index 96% rename from scons/scons-local-2.4.0/SCons/compat/_scons_collections.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_collections.py index 1f1306500..4a0d96b9e 100644 --- a/scons/scons-local-2.4.0/SCons/compat/_scons_collections.py +++ b/scons/scons-local-2.4.1/SCons/compat/_scons_collections.py @@ -30,7 +30,7 @@ used by SCons, in an interface that looks enough like collections for our purposes. """ -__revision__ = "src/engine/SCons/compat/_scons_collections.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/compat/_scons_collections.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" # Use exec to hide old names from fixers. exec("""if True: diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_dbm.py b/scons/scons-local-2.4.1/SCons/compat/_scons_dbm.py similarity index 93% rename from scons/scons-local-2.4.0/SCons/compat/_scons_dbm.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_dbm.py index 3bc0768f0..080c424b9 100644 --- a/scons/scons-local-2.4.0/SCons/compat/_scons_dbm.py +++ b/scons/scons-local-2.4.1/SCons/compat/_scons_dbm.py @@ -30,7 +30,7 @@ that the whichdb.whichdb() implementstation in the various 2.X versions of Python won't blow up even if dbm wasn't compiled in. """ -__revision__ = "src/engine/SCons/compat/_scons_dbm.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/compat/_scons_dbm.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" class error(Exception): pass diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_hashlib.py b/scons/scons-local-2.4.1/SCons/compat/_scons_hashlib.py similarity index 97% rename from scons/scons-local-2.4.0/SCons/compat/_scons_hashlib.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_hashlib.py index de93e4bac..626253019 100644 --- a/scons/scons-local-2.4.0/SCons/compat/_scons_hashlib.py +++ b/scons/scons-local-2.4.1/SCons/compat/_scons_hashlib.py @@ -31,7 +31,7 @@ purposes, anyway). In fact, this module will raise an ImportError if the underlying md5 module isn't available. """ -__revision__ = "src/engine/SCons/compat/_scons_hashlib.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/compat/_scons_hashlib.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import md5 from string import hexdigits diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_io.py b/scons/scons-local-2.4.1/SCons/compat/_scons_io.py similarity index 93% rename from scons/scons-local-2.4.0/SCons/compat/_scons_io.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_io.py index 72cd3b6d3..25cf11960 100644 --- a/scons/scons-local-2.4.0/SCons/compat/_scons_io.py +++ b/scons/scons-local-2.4.1/SCons/compat/_scons_io.py @@ -29,7 +29,7 @@ functionality. It only wraps the portions of io functionality used by SCons, in an interface that looks enough like io for our purposes. """ -__revision__ = "src/engine/SCons/compat/_scons_io.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/compat/_scons_io.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" # Use the "imp" module to protect the imports below from fixers. import imp diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_sets.py b/scons/scons-local-2.4.1/SCons/compat/_scons_sets.py similarity index 100% rename from scons/scons-local-2.4.0/SCons/compat/_scons_sets.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_sets.py diff --git a/scons/scons-local-2.4.0/SCons/compat/_scons_subprocess.py b/scons/scons-local-2.4.1/SCons/compat/_scons_subprocess.py similarity index 100% rename from scons/scons-local-2.4.0/SCons/compat/_scons_subprocess.py rename to scons/scons-local-2.4.1/SCons/compat/_scons_subprocess.py diff --git a/scons/scons-local-2.4.0/SCons/cpp.py b/scons/scons-local-2.4.1/SCons/cpp.py similarity index 99% rename from scons/scons-local-2.4.0/SCons/cpp.py rename to scons/scons-local-2.4.1/SCons/cpp.py index cf80a4b7c..56bb003ab 100644 --- a/scons/scons-local-2.4.0/SCons/cpp.py +++ b/scons/scons-local-2.4.1/SCons/cpp.py @@ -21,7 +21,7 @@ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/cpp.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/cpp.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" __doc__ = """ SCons C Pre-Processor module diff --git a/scons/scons-local-2.4.0/SCons/dblite.py b/scons/scons-local-2.4.1/SCons/dblite.py similarity index 100% rename from scons/scons-local-2.4.0/SCons/dblite.py rename to scons/scons-local-2.4.1/SCons/dblite.py diff --git a/scons/scons-local-2.4.0/SCons/exitfuncs.py b/scons/scons-local-2.4.1/SCons/exitfuncs.py similarity index 95% rename from scons/scons-local-2.4.0/SCons/exitfuncs.py rename to scons/scons-local-2.4.1/SCons/exitfuncs.py index 19c8e8e06..ae07ec0c0 100644 --- a/scons/scons-local-2.4.0/SCons/exitfuncs.py +++ b/scons/scons-local-2.4.1/SCons/exitfuncs.py @@ -27,7 +27,7 @@ Register functions which are executed when SCons exits for any reason. # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -__revision__ = "src/engine/SCons/exitfuncs.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/engine/SCons/exitfuncs.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import atexit diff --git a/scons/scons-local-2.4.0/scons-2.4.0-py2.7.egg-info b/scons/scons-local-2.4.1/scons-2.4.1-py2.7.egg-info similarity index 96% rename from scons/scons-local-2.4.0/scons-2.4.0-py2.7.egg-info rename to scons/scons-local-2.4.1/scons-2.4.1-py2.7.egg-info index 7a848af0f..9e50367c6 100644 --- a/scons/scons-local-2.4.0/scons-2.4.0-py2.7.egg-info +++ b/scons/scons-local-2.4.1/scons-2.4.1-py2.7.egg-info @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: scons -Version: 2.4.0 +Version: 2.4.1 Summary: Open Source next-generation build tool. Home-page: http://www.scons.org/ Author: Steven Knight diff --git a/scons/scons-time.py b/scons/scons-time.py index f37d90694..054e73ebe 100755 --- a/scons/scons-time.py +++ b/scons/scons-time.py @@ -32,7 +32,7 @@ from __future__ import division from __future__ import nested_scopes -__revision__ = "src/script/scons-time.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/script/scons-time.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" import getopt import glob diff --git a/scons/scons.py b/scons/scons.py index 0e59647dc..e2f66bd82 100755 --- a/scons/scons.py +++ b/scons/scons.py @@ -23,15 +23,15 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/script/scons.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/script/scons.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" -__version__ = "2.4.0" +__version__ = "2.4.1" -__build__ = "rel_2.4.0:3365:9259ea1c13d7" +__build__ = "rel_2.4.1:3453:73fefd3ea0b0" -__buildsys__ = "hpmicrodog" +__buildsys__ = "ubuntu1404-32bit" -__date__ = "2015/09/21 14:03:43" +__date__ = "2015/11/09 03:25:05" __developer__ = "bdbaddog" diff --git a/scons/sconsign.py b/scons/sconsign.py index 35dad8a00..775f23b05 100755 --- a/scons/sconsign.py +++ b/scons/sconsign.py @@ -23,15 +23,15 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -__revision__ = "src/script/sconsign.py rel_2.4.0:3365:9259ea1c13d7 2015/09/21 14:03:43 bdbaddog" +__revision__ = "src/script/sconsign.py rel_2.4.1:3453:73fefd3ea0b0 2015/11/09 03:25:05 bdbaddog" -__version__ = "2.4.0" +__version__ = "2.4.1" -__build__ = "rel_2.4.0:3365:9259ea1c13d7" +__build__ = "rel_2.4.1:3453:73fefd3ea0b0" -__buildsys__ = "hpmicrodog" +__buildsys__ = "ubuntu1404-32bit" -__date__ = "2015/09/21 14:03:43" +__date__ = "2015/11/09 03:25:05" __developer__ = "bdbaddog"