summaryrefslogtreecommitdiff
path: root/buildtools/wafsamba/samba_deps.py
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-04-21 17:13:16 +1000
committerAndrew Tridgell <tridge@samba.org>2010-04-21 17:13:16 +1000
commit681f3dad7c32fc5dcf51ceda889d1f115a641aaa (patch)
tree0f26c56dc459568e96a97a9e336768fc66113420 /buildtools/wafsamba/samba_deps.py
parent1d5aee6b91004d71609b3203c919ef39888c86cc (diff)
downloadsamba-681f3dad7c32fc5dcf51ceda889d1f115a641aaa.tar.gz
samba-681f3dad7c32fc5dcf51ceda889d1f115a641aaa.tar.bz2
samba-681f3dad7c32fc5dcf51ceda889d1f115a641aaa.zip
build: added --nonshared-binary=LIST option
This allows you to specify some binaries that should be built without shared libs. A non-shared smbtorture will make testing s3 in the build farm easier
Diffstat (limited to 'buildtools/wafsamba/samba_deps.py')
-rw-r--r--buildtools/wafsamba/samba_deps.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/buildtools/wafsamba/samba_deps.py b/buildtools/wafsamba/samba_deps.py
index 7beec29c1e..8911db3d7c 100644
--- a/buildtools/wafsamba/samba_deps.py
+++ b/buildtools/wafsamba/samba_deps.py
@@ -642,6 +642,19 @@ def calculate_final_deps(bld, tgt_list, loops):
if t.sname in t.final_objects:
t.final_objects.remove(t.sname)
+ # handle any non-shared binaries
+ for t in tgt_list:
+ if t.samba_type == 'BINARY' and bld.NONSHARED_BINARY(t.sname):
+ # replace lib deps with objlist deps
+ for l in t.final_libs:
+ objname = l + '.objlist'
+ t2 = bld.name_to_obj(objname, bld.env)
+ if t2 is None:
+ Logs.error('ERROR: subsystem %s not found' % objname)
+ sys.exit(1)
+ t.final_objects.add(objname)
+ t.final_objects = t.final_objects.union(extended_objects(bld, t2, set()))
+ t.final_libs = set()
# find any library loops
for t in tgt_list: