d189b62fc46657f82665319029d14f10ed508865
[obnox/samba/samba-obnox.git] / source4 / torture / wscript_build
1 #!/usr/bin/env python
2
3
4 bld.SAMBA_SUBSYSTEM('TORTURE_UTIL',
5         source='util_smb.c',
6         public_deps='torture popt POPT_CREDENTIALS',
7         deps='smbclient-raw'
8         )
9
10
11 bld.SAMBA_MODULE('TORTURE_BASIC',
12         source='basic/base.c basic/misc.c basic/scanner.c basic/utable.c basic/charset.c basic/mangle_test.c basic/denytest.c basic/aliases.c basic/locking.c basic/secleak.c basic/rename.c basic/dir.c basic/delete.c basic/unlink.c basic/disconnect.c basic/delaywrite.c basic/attr.c basic/properties.c',
13         subsystem='smbtorture',
14         deps='LIBCLI_SMB popt POPT_CREDENTIALS TORTURE_UTIL smbclient-raw TORTURE_RAW',
15         internal_module=True,
16         autoproto='basic/proto.h',
17         init_function='torture_base_init'
18         )
19
20
21 bld.SAMBA_MODULE('TORTURE_RAW',
22         source='raw/qfsinfo.c raw/qfileinfo.c raw/setfileinfo.c raw/search.c raw/close.c raw/open.c raw/mkdir.c raw/oplock.c raw/notify.c raw/mux.c raw/ioctl.c raw/chkpath.c raw/unlink.c raw/read.c raw/context.c raw/session.c raw/write.c raw/lock.c raw/pingpong.c raw/lockbench.c raw/lookuprate.c raw/tconrate.c raw/openbench.c raw/rename.c raw/eas.c raw/streams.c raw/acls.c raw/seek.c raw/samba3hide.c raw/samba3misc.c raw/composite.c raw/raw.c raw/offline.c',
23         autoproto='raw/proto.h',
24         subsystem='smbtorture',
25         init_function='torture_raw_init',
26         deps='LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE popt POPT_CREDENTIALS TORTURE_UTIL',
27         internal_module=True
28         )
29
30 bld.RECURSE('smb2')
31 bld.RECURSE('winbind')
32 bld.RECURSE('libnetapi')
33 bld.RECURSE('libsmbclient')
34
35 ntvfs_specific = dict(source='', deps='')
36
37 # Yes, the spoolss_notify test uses the NTVFS file server to run the SMB server expected
38 # to handle the RPC callback!
39 if bld.CONFIG_SET('WITH_NTVFS_FILESERVER'):
40         ntvfs_specific['source'] += ' rpc/spoolss_notify.c'
41         ntvfs_specific['deps'] += ' SMB_SERVER dcerpc_server ntvfs'
42
43 bld.SAMBA_SUBSYSTEM('TORTURE_NDR',
44         source='''ndr/ndr.c
45                   ndr/winreg.c
46                   ndr/atsvc.c
47                   ndr/lsa.c
48                   ndr/epmap.c
49                   ndr/dfs.c
50                   ndr/netlogon.c
51                   ndr/drsuapi.c
52                   ndr/spoolss.c
53                   ndr/ntprinting.c
54                   ndr/samr.c
55                   ndr/dfsblob.c
56                   ndr/drsblobs.c
57                   ndr/nbt.c
58                   ndr/ntlmssp.c
59                   ndr/string.c
60                   ndr/backupkey.c
61                   ndr/witness.c
62                   ndr/clusapi.c
63                   ndr/negoex.c
64                   ''',
65         autoproto='ndr/proto.h',
66         deps='torture'
67         )
68
69 if bld.CONFIG_SET('HAVE_GNUTLS_3_4_7'):
70     torture_rpc_backupkey = 'rpc/backupkey.c'
71 else:
72     torture_rpc_backupkey = 'rpc/backupkey_heimdal.c'
73
74 bld.SAMBA_MODULE('torture_rpc',
75                  source='''
76                         rpc/join.c
77                         rpc/lsa.c
78                         rpc/forest_trust.c
79                         rpc/lsa_lookup.c
80                         rpc/session_key.c
81                         rpc/echo.c
82                         rpc/dfs.c
83                         rpc/drsuapi.c
84                         rpc/drsuapi_cracknames.c
85                         rpc/dsgetinfo.c
86                         rpc/spoolss.c
87                         rpc/spoolss_win.c
88                         rpc/spoolss_access.c
89                         rpc/unixinfo.c
90                         rpc/samr.c
91                         rpc/samr_accessmask.c
92                         rpc/samr_priv.c
93                         rpc/wkssvc.c
94                         rpc/srvsvc.c
95                         rpc/svcctl.c
96                         rpc/atsvc.c
97                         rpc/eventlog.c
98                         rpc/epmapper.c
99                         rpc/winreg.c
100                         rpc/initshutdown.c
101                         rpc/oxidresolve.c
102                         rpc/remact.c
103                         rpc/mgmt.c
104                         rpc/scanner.c
105                         rpc/autoidl.c
106                         rpc/countcalls.c
107                         rpc/testjoin.c
108                         rpc/schannel.c
109                         rpc/netlogon.c
110                         rpc/remote_pac.c
111                         rpc/samlogon.c
112                         rpc/samsync.c
113                         rpc/dssetup.c
114                         rpc/alter_context.c
115                         rpc/bench.c
116                         rpc/samba3rpc.c
117                         rpc/rpc.c
118                         rpc/async_bind.c
119                         rpc/handles.c
120                         rpc/frsapi.c
121                         rpc/object_uuid.c
122                         rpc/ntsvcs.c
123                         rpc/browser.c
124                         rpc/bind.c
125                         rpc/fsrvp.c
126                         rpc/clusapi.c
127                         rpc/witness.c
128                         ''' + torture_rpc_backupkey + ntvfs_specific['source'],
129                  autoproto='rpc/proto.h',
130                  subsystem='smbtorture',
131                  init_function='torture_rpc_init',
132                  deps='''
133                       ndr-table
134                       RPC_NDR_UNIXINFO
135                       dcerpc-samr
136                       RPC_NDR_WINREG
137                       RPC_NDR_INITSHUTDOWN
138                       RPC_NDR_OXIDRESOLVER
139                       RPC_NDR_EVENTLOG
140                       RPC_NDR_ECHO
141                       RPC_NDR_SVCCTL
142                       RPC_NDR_NETLOGON
143                       dcerpc-atsvc
144                       RPC_NDR_DRSUAPI
145                       RPC_NDR_LSA
146                       RPC_NDR_EPMAPPER
147                       RPC_NDR_DFS
148                       RPC_NDR_FRSAPI
149                       RPC_NDR_SPOOLSS
150                       RPC_NDR_SRVSVC
151                       RPC_NDR_WKSSVC
152                       RPC_NDR_ROT
153                       RPC_NDR_DSSETUP
154                       RPC_NDR_REMACT
155                       RPC_NDR_OXIDRESOLVER
156                       RPC_NDR_NTSVCS
157                       WB_HELPER
158                       samba-net
159                       LIBCLI_AUTH
160                       popt
161                       POPT_CREDENTIALS
162                       TORTURE_LDAP
163                       TORTURE_UTIL
164                       TORTURE_RAP
165                       service
166                       process_model
167                       RPC_NDR_BROWSER
168                       LIBCLI_DRSUAPI
169                       TORTURE_DFS
170                       RPC_NDR_FSRVP
171                       RPC_NDR_CLUSAPI
172                       RPC_NDR_WITNESS
173                       RPC_NDR_BACKUPKEY
174                       ''' + ntvfs_specific['deps'],
175                  internal_module=True)
176
177 bld.RECURSE('drs')
178 bld.RECURSE('dns')
179
180 bld.SAMBA_MODULE('TORTURE_RAP',
181         source='rap/rap.c rap/rpc.c rap/printing.c rap/sam.c',
182         autoproto='rap/proto.h',
183         subsystem='smbtorture',
184         init_function='torture_rap_init',
185         deps='TORTURE_UTIL LIBCLI_SMB NDR_RAP LIBCLI_RAP',
186         internal_module=True
187         )
188
189 bld.SAMBA_MODULE('TORTURE_DFS',
190         source='dfs/domaindfs.c dfs/common.c',
191         autoproto='dfs/proto.h',
192         subsystem='smbtorture',
193         init_function='torture_dfs_init',
194         deps='TORTURE_UTIL LIBCLI_SMB',
195         internal_module=True
196         )
197
198
199 bld.SAMBA_MODULE('TORTURE_AUTH',
200         source='auth/ntlmssp.c auth/pac.c auth/smbencrypt.c',
201         autoproto='auth/proto.h',
202         subsystem='smbtorture',
203         deps='LIBCLI_SMB gensec auth4 authkrb5 popt POPT_CREDENTIALS smbpasswdparser torture com_err gensec_ntlmssp',
204         internal_module=True
205         )
206
207 bld.RECURSE('local')
208 bld.RECURSE('krb5')
209
210 bld.SAMBA_MODULE('TORTURE_NBENCH',
211         source='nbench/nbio.c nbench/nbench.c',
212         autoproto='nbench/proto.h',
213         subsystem='smbtorture',
214         init_function='torture_nbench_init',
215         deps='TORTURE_UTIL',
216         internal_module=True
217         )
218
219
220 bld.SAMBA_MODULE('TORTURE_UNIX',
221         source='unix/unix.c unix/whoami.c unix/unix_info2.c',
222         autoproto='unix/proto.h',
223         subsystem='smbtorture',
224         init_function='torture_unix_init',
225         deps='TORTURE_UTIL',
226         internal_module=True
227         )
228
229
230 bld.SAMBA_MODULE('TORTURE_LDAP',
231         source='ldap/common.c ldap/basic.c ldap/schema.c ldap/uptodatevector.c ldap/cldap.c ldap/netlogon.c ldap/cldapbench.c ldap/ldap_sort.c ldap/nested_search.c',
232         subsystem='smbtorture',
233         deps='cli-ldap cli_cldap samdb popt POPT_CREDENTIALS torture ldbsamba',
234         internal_module=True,
235         autoproto='ldap/proto.h',
236         init_function='torture_ldap_init'
237         )
238
239
240 bld.SAMBA_MODULE('TORTURE_NBT',
241         source='nbt/query.c nbt/register.c nbt/wins.c nbt/winsbench.c nbt/winsreplication.c nbt/dgram.c nbt/nbt.c',
242         autoproto='nbt/proto.h',
243         subsystem='smbtorture',
244         init_function='torture_nbt_init',
245         deps='LIBCLI_SMB cli-nbt LIBCLI_DGRAM LIBCLI_WREPL torture_rpc',
246         internal_module=True
247         )
248
249
250 bld.SAMBA_MODULE('TORTURE_NET',
251         source='libnet/libnet.c libnet/utils.c libnet/userinfo.c libnet/userman.c libnet/groupinfo.c libnet/groupman.c libnet/domain.c libnet/libnet_lookup.c libnet/libnet_user.c libnet/libnet_group.c libnet/libnet_share.c libnet/libnet_rpc.c libnet/libnet_domain.c libnet/libnet_BecomeDC.c',
252         autoproto='libnet/proto.h',
253         subsystem='smbtorture',
254         init_function='torture_net_init',
255         deps='samba-net popt POPT_CREDENTIALS torture_rpc PROVISION',
256         internal_module=True
257         )
258
259
260 bld.SAMBA_MODULE('TORTURE_NTP',
261         source='ntp/ntp_signd.c',
262         autoproto='ntp/proto.h',
263         subsystem='smbtorture',
264         init_function='torture_ntp_init',
265         deps='popt POPT_CREDENTIALS torture_rpc',
266         internal_module=True
267         )
268
269 bld.SAMBA_MODULE('TORTURE_VFS',
270         source='vfs/vfs.c vfs/fruit.c',
271         subsystem='smbtorture',
272         deps='LIBCLI_SMB POPT_CREDENTIALS TORTURE_UTIL smbclient-raw TORTURE_RAW',
273         internal_module=True,
274         autoproto='vfs/proto.h',
275         init_function='torture_vfs_init'
276         )
277
278 TORTURE_MODULES = 'TORTURE_BASIC TORTURE_RAW torture_rpc TORTURE_RAP TORTURE_AUTH TORTURE_NBENCH TORTURE_UNIX TORTURE_LDAP TORTURE_NBT TORTURE_NET TORTURE_NTP torture_registry TORTURE_VFS'
279
280 bld.SAMBA_SUBSYSTEM('torturemain',
281                     source='smbtorture.c torture.c shell.c',
282                     subsystem_name='smbtorture',
283                     deps='torture popt POPT_SAMBA POPT_CREDENTIALS dcerpc LIBCLI_SMB SMBREADLINE ' + TORTURE_MODULES,
284                     )
285
286 bld.SAMBA_BINARY('smbtorture',
287                  source=[],
288                  manpages='man/smbtorture.1',
289                  public_headers='smbtorture.h',
290                  deps='torturemain torture popt POPT_SAMBA POPT_CREDENTIALS dcerpc LIBCLI_SMB SMBREADLINE ' + TORTURE_MODULES,
291                  pyembed=True
292                  )
293
294 bld.SAMBA_BINARY('gentest',
295         source='gentest.c',
296         manpages='man/gentest.1',
297         deps='samba-hostconfig samba-util popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB smbclient-raw param_options'
298         )
299
300
301 bld.SAMBA_BINARY('masktest',
302         source='masktest.c',
303         manpages='man/masktest.1',
304         deps='samba-hostconfig samba-util popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB param_options'
305         )
306
307
308 bld.SAMBA_BINARY('locktest',
309         source='locktest.c',
310         # COV_TARGET='test',
311         #ldflags='--coverage',
312         #cflags='--coverage',
313         # GCOV='1',
314         manpages='man/locktest.1',
315         deps='popt POPT_SAMBA POPT_CREDENTIALS samba-util LIBCLI_SMB samba-hostconfig param_options',
316         )
317