diff options
Diffstat (limited to 'third_party/waf/waflib/extras/local_rpath.py')
-rw-r--r-- | third_party/waf/waflib/extras/local_rpath.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/third_party/waf/waflib/extras/local_rpath.py b/third_party/waf/waflib/extras/local_rpath.py new file mode 100644 index 00000000000..8942e97708f --- /dev/null +++ b/third_party/waf/waflib/extras/local_rpath.py @@ -0,0 +1,18 @@ +#! /usr/bin/env python +# encoding: utf-8 +# Thomas Nagy, 2011 (ita) + +from waflib.TaskGen import after_method, feature + +@after_method('propagate_uselib_vars') +@feature('cprogram', 'cshlib', 'cxxprogram', 'cxxshlib', 'fcprogram', 'fcshlib') +def add_rpath_stuff(self): + all = self.to_list(getattr(self, 'use', [])) + while all: + name = all.pop() + try: + tg = self.bld.get_tgen_by_name(name) + except: + continue + self.env.append_value('RPATH', tg.link_task.outputs[0].parent.abspath()) + all.extend(self.to_list(getattr(tg, 'use', []))) |