summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--scons/gallium.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index f24959c1205..0133f9f0463 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')