Mesa (master): scons: Disable version symlinking for DLLs.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Sat Jan 2 00:06:04 UTC 2010


Module: Mesa
Branch: master
Commit: b2e40643a328e4a60c04acf3e3079befb813c705
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b2e40643a328e4a60c04acf3e3079befb813c705

Author: José Fonseca <jfonseca at vmware.com>
Date:   Fri Jan  1 21:54:51 2010 +0000

scons: Disable version symlinking for DLLs.

Fixes windows build.

---

 scons/gallium.py |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/scons/gallium.py b/scons/gallium.py
index f24959c..0133f9f 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -56,13 +56,17 @@ def install_shared_library(env, source, version = ()):
     source = str(source[0])
     version = tuple(map(str, version))
     target_dir =  os.path.join(env.Dir('#.').srcnode().abspath, env['build'], 'lib')
-    target_name = '.'.join((str(source),) + version)
-    last = env.InstallAs(os.path.join(target_dir, target_name), source)
-    while len(version):
-        version = version[:-1]
+    if env['SHLIBSUFFIX'] == '.so':
         target_name = '.'.join((str(source),) + version)
-        action = SCons.Action.Action(symlink, "$TARGET -> $SOURCE")
-        last = env.Command(os.path.join(target_dir, target_name), last, action) 
+        last = env.InstallAs(os.path.join(target_dir, target_name), source)
+        while len(version):
+            version = version[:-1]
+            target_name = '.'.join((str(source),) + version)
+            action = SCons.Action.Action(symlink, "$TARGET -> $SOURCE")
+            last = env.Command(os.path.join(target_dir, target_name), last, action) 
+    else:
+        target_name = str(source)
+        env.InstallAs(os.path.join(target_dir, target_name), source)
 
 def createInstallMethods(env):
     env.AddMethod(install_program, 'InstallProgram')




More information about the mesa-commit mailing list