diff options
author | Gary Oberbrunner <garyo@oberbrunner.com> | 2012-12-22 20:50:07 (GMT) |
---|---|---|
committer | Gary Oberbrunner <garyo@oberbrunner.com> | 2012-12-22 20:50:07 (GMT) |
commit | c6b820510ab748fb079a4ef7375ee65a72e52bec (patch) | |
tree | 43d7791207c1b3384c5b30996458cef624a79dfa /src | |
parent | a3039311bd6b79c49d9f137ca5e7043ef50f8a77 (diff) | |
download | SCons-c6b820510ab748fb079a4ef7375ee65a72e52bec.zip SCons-c6b820510ab748fb079a4ef7375ee65a72e52bec.tar.gz SCons-c6b820510ab748fb079a4ef7375ee65a72e52bec.tar.bz2 |
Make VersionedSharedLib and its test not fail on Windows
Diffstat (limited to 'src')
-rw-r--r-- | src/engine/SCons/Tool/__init__.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/engine/SCons/Tool/__init__.py b/src/engine/SCons/Tool/__init__.py index 83c2fb5..89aabb5 100644 --- a/src/engine/SCons/Tool/__init__.py +++ b/src/engine/SCons/Tool/__init__.py @@ -273,11 +273,14 @@ def VersionShLibLinkNames(version, libname, env): 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 + """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: @@ -339,9 +342,10 @@ symlinks for the platform we are on""" print "VerShLib: made sym link of %s -> %s" % (lastname,linkname) lastname = linkname # finish chain of sym links with link to the actual library - os.symlink(lib_ver,lastname) - if Verbose: - print "VerShLib: made sym link of %s -> %s" % (lib_ver,linkname) + if len(linknames)>0: + os.symlink(lib_ver,lastname) + if Verbose: + print "VerShLib: made sym link of %s -> %s" % (lib_ver,linkname) return result ShLibAction = SCons.Action.Action(VersionedSharedLibrary, None) |