summaryrefslogtreecommitdiff
path: root/buildtools/wafsamba/samba_deps.py
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-11-03 12:23:43 +1100
committerAndrew Tridgell <tridge@samba.org>2010-11-03 02:17:30 +0000
commitef1afae2cec531797750be32907705566aa2d228 (patch)
tree4ab84096c873c6e00e7d3c7fcf45f365da76982f /buildtools/wafsamba/samba_deps.py
parentc1cc1568b86660cd890428172616a38abfa695f5 (diff)
downloadsamba-ef1afae2cec531797750be32907705566aa2d228.tar.gz
samba-ef1afae2cec531797750be32907705566aa2d228.tar.bz2
samba-ef1afae2cec531797750be32907705566aa2d228.zip
waf: more agressively expand subsystem syslib deps
this solves an openchange build problem with an indirect dependency on talloc when talloc is a syslib Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Wed Nov 3 02:17:30 UTC 2010 on sn-devel-104
Diffstat (limited to 'buildtools/wafsamba/samba_deps.py')
-rw-r--r--buildtools/wafsamba/samba_deps.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/buildtools/wafsamba/samba_deps.py b/buildtools/wafsamba/samba_deps.py
index 13b11ff096..60f2fa98cd 100644
--- a/buildtools/wafsamba/samba_deps.py
+++ b/buildtools/wafsamba/samba_deps.py
@@ -90,7 +90,12 @@ def build_dependencies(self):
if self.samba_type in ['SUBSYSTEM']:
# this is needed for the ccflags of libs that come from pkg_config
- self.uselib = list(self.direct_syslibs)
+ self.uselib = list(self.final_syslibs)
+ self.uselib.extend(list(self.direct_syslibs))
+ for lib in self.final_libs:
+ t = self.bld.name_to_obj(lib, self.bld.env)
+ self.uselib.extend(list(t.final_syslibs))
+ self.uselib = unique_list(self.uselib)
if getattr(self, 'uselib', None):
up_list = []
@@ -352,10 +357,10 @@ def show_final_deps(bld, tgt_list):
targets = LOCAL_CACHE(bld, 'TARGET_TYPE')
for t in tgt_list:
- if not targets[t.sname] in ['LIBRARY', 'BINARY', 'PYTHON']:
+ if not targets[t.sname] in ['LIBRARY', 'BINARY', 'PYTHON', 'SUBSYSTEM']:
continue
debug('deps: final dependencies for target %s: uselib=%s uselib_local=%s add_objects=%s',
- t.sname, t.uselib, t.uselib_local, t.add_objects)
+ t.sname, t.uselib, getattr(t, 'uselib_local', []), getattr(t, 'add_objects', []))
def add_samba_attributes(bld, tgt_list):
@@ -860,7 +865,7 @@ def calculate_final_deps(bld, tgt_list, loops):
# add in any syslib dependencies
for t in tgt_list:
- if not t.samba_type in ['BINARY','PYTHON','LIBRARY']:
+ if not t.samba_type in ['BINARY','PYTHON','LIBRARY','SUBSYSTEM']:
continue
syslibs = set()
for d in t.final_objects: