summaryrefslogtreecommitdiffstats
path: root/scons/gallium.py
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2009-06-28 10:54:23 +0100
committerJosé Fonseca <jfonseca@vmware.com>2009-06-28 10:54:23 +0100
commit72ad039d19e033baff774b184ece9ffbfef4a2ff (patch)
tree286a69a87ba6cb7ce50a6e301e7a8884588f65b4 /scons/gallium.py
parent418987ff05f892d3c33ed4ddbe856c496b05ea14 (diff)
downloadexternal_mesa3d-72ad039d19e033baff774b184ece9ffbfef4a2ff.zip
external_mesa3d-72ad039d19e033baff774b184ece9ffbfef4a2ff.tar.gz
external_mesa3d-72ad039d19e033baff774b184ece9ffbfef4a2ff.tar.bz2
scons: Use -Bsymbolic linker option.
This prevents the error relocation R_X86_64_PC32 against symbol `_gl_DispatchTSD' can not be used when making a shared object; recompile with -fPIC when building on x86_64 architecture.
Diffstat (limited to 'scons/gallium.py')
-rw-r--r--scons/gallium.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index ee45af5..b69f2f2 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -448,11 +448,15 @@ def generate(env):
# Linker options
linkflags = []
+ shlinkflags = []
if gcc:
if env['machine'] == 'x86':
linkflags += ['-m32']
if env['machine'] == 'x86_64':
linkflags += ['-m64']
+ shlinkflags += [
+ '-Wl,-Bsymbolic',
+ ]
if platform == 'windows' and msvc:
# See also:
# - http://msdn2.microsoft.com/en-us/library/y0zzbyt4.aspx
@@ -500,6 +504,7 @@ def generate(env):
'/entry:_DllMainCRTStartup',
]
env.Append(LINKFLAGS = linkflags)
+ env.Append(SHLINKFLAGS = shlinkflags)
# Default libs
env.Append(LIBS = [])