summaryrefslogtreecommitdiff
path: root/buildtools
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-03-20 23:41:15 +1100
committerAndrew Tridgell <tridge@samba.org>2010-04-06 20:26:58 +1000
commitdc9010572c1d32a4e1c82afbee2a359c429cc9aa (patch)
treebef5d94aba307ca55c9768f8d6af2f35d7f2bb35 /buildtools
parent9a2ea72d2d1affa853a70131301de96f258178a8 (diff)
downloadsamba-dc9010572c1d32a4e1c82afbee2a359c429cc9aa.tar.gz
samba-dc9010572c1d32a4e1c82afbee2a359c429cc9aa.tar.bz2
samba-dc9010572c1d32a4e1c82afbee2a359c429cc9aa.zip
build: support systems without rpath
Diffstat (limited to 'buildtools')
-rw-r--r--buildtools/wafsamba/samba_autoconf.py9
-rw-r--r--buildtools/wafsamba/samba_utils.py9
2 files changed, 15 insertions, 3 deletions
diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py
index 4ea29d4058..e91409e0a4 100644
--- a/buildtools/wafsamba/samba_autoconf.py
+++ b/buildtools/wafsamba/samba_autoconf.py
@@ -409,3 +409,12 @@ def CURRENT_CFLAGS(bld, target, cflags):
ret = TO_LIST(cflags)
ret.extend(list)
return ret
+
+@conf
+def CHECK_RPATH_SUPPORT(conf):
+ '''see if the system supports rpath'''
+ return conf.CHECK_CODE('int x',
+ define='HAVE_RPATH_SUPPORT',
+ execute=True,
+ msg='Checking for rpath support',
+ cflags='-Wl,-rpath=.')
diff --git a/buildtools/wafsamba/samba_utils.py b/buildtools/wafsamba/samba_utils.py
index 9893a86c30..564b5b82e3 100644
--- a/buildtools/wafsamba/samba_utils.py
+++ b/buildtools/wafsamba/samba_utils.py
@@ -62,13 +62,16 @@ def runonce(function):
def set_rpath(bld):
'''setup the default rpath'''
- rpath = os.path.normpath('%s/%s' % (bld.env['BUILD_DIRECTORY'], LIB_PATH))
- bld.env.append_value('RPATH', '-Wl,-rpath=%s' % rpath)
+ if bld.env.RPATH_ON_BUILD:
+ rpath = os.path.normpath('%s/%s' % (bld.env['BUILD_DIRECTORY'], LIB_PATH))
+ bld.env.append_value('RPATH', '-Wl,-rpath=%s' % rpath)
+ else:
+ os.environ['LD_LIBRARY_PATH'] = os.path.normpath('%s/../shared' % bld.srcnode.abspath(bld.env))
Build.BuildContext.set_rpath = set_rpath
def install_rpath(bld):
'''the rpath value for installation'''
- if bld.env['RPATH_ON_INSTALL']:
+ if bld.env.RPATH_ON_INSTALL:
return ['-Wl,-rpath=%s/lib' % bld.env.PREFIX]
return []