Merge branch 'rpath_fix' into 'master'

Fix local_rpath tool

See merge request ita1024/waf!2246
This commit is contained in:
ita1024 2019-06-19 20:25:07 +00:00
commit 3b14e8f513
1 changed files with 5 additions and 3 deletions

View File

@ -2,18 +2,20 @@
# encoding: utf-8 # encoding: utf-8
# Thomas Nagy, 2011 (ita) # Thomas Nagy, 2011 (ita)
import copy
from waflib.TaskGen import after_method, feature from waflib.TaskGen import after_method, feature
@after_method('propagate_uselib_vars') @after_method('propagate_uselib_vars')
@feature('cprogram', 'cshlib', 'cxxprogram', 'cxxshlib', 'fcprogram', 'fcshlib') @feature('cprogram', 'cshlib', 'cxxprogram', 'cxxshlib', 'fcprogram', 'fcshlib')
def add_rpath_stuff(self): def add_rpath_stuff(self):
all = self.to_list(getattr(self, 'use', [])) all = copy.copy(self.to_list(getattr(self, 'use', [])))
while all: while all:
name = all.pop() name = all.pop()
try: try:
tg = self.bld.get_tgen_by_name(name) tg = self.bld.get_tgen_by_name(name)
except: except:
continue continue
self.env.append_value('RPATH', tg.link_task.outputs[0].parent.abspath()) if hasattr(tg, 'link_task'):
all.extend(self.to_list(getattr(tg, 'use', []))) self.env.append_value('RPATH', tg.link_task.outputs[0].parent.abspath())
all.extend(self.to_list(getattr(tg, 'use', [])))