summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGary Oberbrunner <garyo@oberbrunner.com>2012-12-22 20:50:07 (GMT)
committerGary Oberbrunner <garyo@oberbrunner.com>2012-12-22 20:50:07 (GMT)
commitc6b820510ab748fb079a4ef7375ee65a72e52bec (patch)
tree43d7791207c1b3384c5b30996458cef624a79dfa /src
parenta3039311bd6b79c49d9f137ca5e7043ef50f8a77 (diff)
downloadSCons-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__.py14
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)