Fix a small waf script bug, in the rpath code, that only appears when compiling for the first time.
## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
import Params
all_modules = [
'core',
'common',
'simulator',
'node',
'internet-node',
'devices/p2p',
'applications',
]
def set_options(opt):
opt.sub_options('simulator')
opt.add_option('--disable-rpath',
help=("Don't link programs with rpath"),
action="store_true", default=False,
dest='disable_rpath')
def configure(conf):
conf.sub_config('core')
conf.sub_config('simulator')
conf.env['DISABLE_RPATH'] = Params.g_options.disable_rpath
def build(bld):
## Add a global RPATH pointing to each module, so that programs can find the libs
## Note: this is slightly evil; we get away because our programs
## and libs are not supposed to be installed system wide.
env = bld.env_of_name('default')
if not env['DISABLE_RPATH']:
for module in all_modules:
node = bld.m_curdirnode.find_dir(module)
env.append_value('RPATH', '-Wl,--rpath=%s' % (node.abspath(env),))
bld.add_subdirs(all_modules)