first version of gentest_smb2. Only generates create and close so far.
[idra/samba.git] / source4 / torture / config.mk
1 [SUBSYSTEM::TORTURE_UTIL]
2 PRIVATE_DEPENDENCIES = LIBCLI_RAW LIBPYTHON smbcalls PROVISION
3 PUBLIC_DEPENDENCIES = POPT_CREDENTIALS
4
5 TORTURE_UTIL_OBJ_FILES = $(addprefix $(torturesrcdir)/, util_smb.o)
6
7 #################################
8 # Start SUBSYSTEM TORTURE_BASIC
9 [MODULE::TORTURE_BASIC]
10 SUBSYSTEM = smbtorture
11 INIT_FUNCTION = torture_base_init
12 PRIVATE_DEPENDENCIES = \
13                 LIBCLI_SMB POPT_CREDENTIALS \
14                 TORTURE_UTIL LIBCLI_RAW \
15                 TORTURE_RAW
16 # End SUBSYSTEM TORTURE_BASIC
17 #################################
18
19 TORTURE_BASIC_OBJ_FILES = $(addprefix $(torturesrcdir)/basic/,  \
20                 base.o \
21                 misc.o \
22                 scanner.o \
23                 utable.o \
24                 charset.o \
25                 mangle_test.o \
26                 denytest.o \
27                 aliases.o \
28                 locking.o \
29                 secleak.o \
30                 rename.o \
31                 dir.o \
32                 delete.o \
33                 unlink.o \
34                 disconnect.o \
35                 delaywrite.o \
36                 attr.o \
37                 properties.o)
38
39 $(eval $(call proto_header_template,$(torturesrcdir)/basic/proto.h,$(TORTURE_BASIC_OBJ_FILES:.o=.c)))
40
41 #################################
42 # Start SUBSYSTEM TORTURE_RAW
43 [MODULE::TORTURE_RAW]
44 SUBSYSTEM = smbtorture
45 INIT_FUNCTION = torture_raw_init
46 PRIVATE_DEPENDENCIES = \
47                 LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE \
48                 POPT_CREDENTIALS TORTURE_UTIL
49 # End SUBSYSTEM TORTURE_RAW
50 #################################
51
52 TORTURE_RAW_OBJ_FILES = $(addprefix $(torturesrcdir)/raw/, \
53                 qfsinfo.o \
54                 qfileinfo.o \
55                 setfileinfo.o \
56                 search.o \
57                 close.o \
58                 open.o \
59                 mkdir.o \
60                 oplock.o \
61                 notify.o \
62                 mux.o \
63                 ioctl.o \
64                 chkpath.o \
65                 unlink.o \
66                 read.o \
67                 context.o \
68                 write.o \
69                 lock.o \
70                 pingpong.o \
71                 lockbench.o \
72                 lookuprate.o \
73                 openbench.o \
74                 rename.o \
75                 eas.o \
76                 streams.o \
77                 acls.o \
78                 seek.o \
79                 samba3hide.o \
80                 samba3misc.o \
81                 composite.o \
82                 raw.o \
83                 offline.o)
84
85 $(eval $(call proto_header_template,$(torturesrcdir)/raw/proto.h,$(TORTURE_RAW_OBJ_FILES:.o=.c)))
86
87 mkinclude smb2/config.mk
88 mkinclude winbind/config.mk
89
90 [SUBSYSTEM::TORTURE_NDR]
91
92 TORTURE_NDR_OBJ_FILES = $(addprefix $(torturesrcdir)/ndr/, ndr.o winreg.o atsvc.o lsa.o epmap.o dfs.o netlogon.o drsuapi.o spoolss.o samr.o)
93
94 $(eval $(call proto_header_template,$(torturesrcdir)/ndr/proto.h,$(TORTURE_NDR_OBJ_FILES:.o=.c)))
95
96 [MODULE::torture_rpc]
97 # TORTURE_NET and TORTURE_NBT use functions from torture_rpc...
98 #OUTPUT_TYPE = MERGED_OBJ
99 SUBSYSTEM = smbtorture
100 INIT_FUNCTION = torture_rpc_init
101 PRIVATE_DEPENDENCIES = \
102                 NDR_TABLE RPC_NDR_UNIXINFO dcerpc_samr RPC_NDR_WINREG RPC_NDR_INITSHUTDOWN \
103                 RPC_NDR_OXIDRESOLVER RPC_NDR_EVENTLOG RPC_NDR_ECHO RPC_NDR_SVCCTL \
104                 RPC_NDR_NETLOGON dcerpc_atsvc dcerpc_mgmt RPC_NDR_DRSUAPI \
105                 RPC_NDR_LSA RPC_NDR_EPMAPPER RPC_NDR_DFS RPC_NDR_FRSAPI RPC_NDR_SPOOLSS \
106                 RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_ROT RPC_NDR_DSSETUP \
107                 RPC_NDR_REMACT RPC_NDR_OXIDRESOLVER WB_HELPER LIBSAMBA-NET \
108                 LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP \
109                 dcerpc_server service process_model ntvfs SERVICE_SMB
110
111 torture_rpc_OBJ_FILES = $(addprefix $(torturesrcdir)/rpc/, \
112                 join.o lsa.o lsa_lookup.o session_key.o echo.o dfs.o drsuapi.o \
113                 drsuapi_cracknames.o dssync.o spoolss.o spoolss_notify.o spoolss_win.o \
114                 unixinfo.o samr.o samr_accessmask.o wkssvc.o srvsvc.o svcctl.o atsvc.o \
115                 eventlog.o epmapper.o winreg.o initshutdown.o oxidresolve.o remact.o mgmt.o \
116                 scanner.o autoidl.o countcalls.o testjoin.o schannel.o netlogon.o samlogon.o \
117                 samsync.o bind.o dssetup.o alter_context.o bench.o samba3rpc.o rpc.o async_bind.o \
118                 handles.o frsapi.o)
119
120 $(eval $(call proto_header_template,$(torturesrcdir)/rpc/proto.h,$(torture_rpc_OBJ_FILES:.o=.c)))
121
122 #################################
123 # Start SUBSYSTEM TORTURE_RAP
124 [MODULE::TORTURE_RAP]
125 SUBSYSTEM = smbtorture
126 INIT_FUNCTION = torture_rap_init
127 PRIVATE_DEPENDENCIES = TORTURE_UTIL LIBCLI_SMB
128 # End SUBSYSTEM TORTURE_RAP
129 #################################
130
131 TORTURE_RAP_OBJ_FILES = $(torturesrcdir)/rap/rap.o
132
133 $(eval $(call proto_header_template,$(torturesrcdir)/rap/proto.h,$(TORTURE_RAP_OBJ_FILES:.o=.c)))
134
135 #################################
136 # Start SUBSYSTEM TORTURE_AUTH
137 [MODULE::TORTURE_AUTH]
138 SUBSYSTEM = smbtorture
139 PRIVATE_DEPENDENCIES = \
140                 LIBCLI_SMB gensec auth KERBEROS \
141                 POPT_CREDENTIALS SMBPASSWD
142 # End SUBSYSTEM TORTURE_AUTH
143 #################################
144
145 TORTURE_AUTH_OBJ_FILES = $(addprefix $(torturesrcdir)/auth/, ntlmssp.o pac.o)
146
147 $(eval $(call proto_header_template,$(torturesrcdir)/auth/proto.h,$(TORTURE_AUTH_OBJ_FILES:.o=.c)))
148
149 mkinclude local/config.mk
150
151 #################################
152 # Start MODULE TORTURE_NBENCH
153 [MODULE::TORTURE_NBENCH]
154 SUBSYSTEM = smbtorture
155 INIT_FUNCTION = torture_nbench_init
156 PRIVATE_DEPENDENCIES = TORTURE_UTIL 
157 # End MODULE TORTURE_NBENCH
158 #################################
159
160 TORTURE_NBENCH_OBJ_FILES = $(addprefix $(torturesrcdir)/nbench/, nbio.o nbench.o)
161
162 $(eval $(call proto_header_template,$(torturesrcdir)/nbench/proto.h,$(TORTURE_NBENCH_OBJ_FILES:.o=.c)))
163
164 #################################
165 # Start MODULE TORTURE_UNIX
166 [MODULE::TORTURE_UNIX]
167 SUBSYSTEM = smbtorture
168 INIT_FUNCTION = torture_unix_init
169 PRIVATE_DEPENDENCIES = TORTURE_UTIL 
170 # End MODULE TORTURE_UNIX
171 #################################
172
173 TORTURE_UNIX_OBJ_FILES = $(addprefix $(torturesrcdir)/unix/, unix.o whoami.o unix_info2.o)
174
175 $(eval $(call proto_header_template,$(torturesrcdir)/unix/proto.h,$(TORTURE_UNIX_OBJ_FILES:.o=.c)))
176
177 #################################
178 # Start SUBSYSTEM TORTURE_LDAP
179 [MODULE::TORTURE_LDAP]
180 SUBSYSTEM = smbtorture
181 INIT_FUNCTION = torture_ldap_init
182 PRIVATE_DEPENDENCIES = \
183                 LIBCLI_LDAP LIBCLI_CLDAP SAMDB POPT_CREDENTIALS
184 # End SUBSYSTEM TORTURE_LDAP
185 #################################
186
187 TORTURE_LDAP_OBJ_FILES = $(addprefix $(torturesrcdir)/ldap/, common.o basic.o schema.o uptodatevector.o cldap.o cldapbench.o)
188
189 $(eval $(call proto_header_template,$(torturesrcdir)/ldap/proto.h,$(TORTURE_LDAP_OBJ_FILES:.o=.c)))
190
191 #################################
192 # Start SUBSYSTEM TORTURE_NBT
193 [MODULE::TORTURE_NBT]
194 SUBSYSTEM = smbtorture
195 INIT_FUNCTION = torture_nbt_init
196 PRIVATE_DEPENDENCIES = \
197                 LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL torture_rpc
198 # End SUBSYSTEM TORTURE_NBT
199 #################################
200
201 TORTURE_NBT_OBJ_FILES = $(addprefix $(torturesrcdir)/nbt/, query.o register.o \
202         wins.o winsbench.o winsreplication.o dgram.o nbt.o)
203
204 $(eval $(call proto_header_template,$(torturesrcdir)/nbt/proto.h,$(TORTURE_NBT_OBJ_FILES:.o=.c)))
205
206 #################################
207 # Start SUBSYSTEM TORTURE_NET
208 [MODULE::TORTURE_NET]
209 SUBSYSTEM = smbtorture
210 INIT_FUNCTION = torture_net_init
211 PRIVATE_DEPENDENCIES = \
212                 LIBSAMBA-NET \
213                 POPT_CREDENTIALS \
214                 torture_rpc
215 # End SUBSYSTEM TORTURE_NET
216 #################################
217
218 TORTURE_NET_OBJ_FILES = $(addprefix $(torturesrcdir)/libnet/, libnet.o \
219                                            utils.o userinfo.o userman.o groupinfo.o groupman.o \
220                                            domain.o libnet_lookup.o libnet_user.o libnet_group.o \
221                                            libnet_share.o libnet_rpc.o libnet_domain.o libnet_BecomeDC.o)
222
223 $(eval $(call proto_header_template,$(torturesrcdir)/libnet/proto.h,$(TORTURE_NET_OBJ_FILES:.o=.c)))
224
225 #################################
226 # Start BINARY smbtorture
227 [BINARY::smbtorture]
228 INSTALLDIR = BINDIR
229 PRIVATE_DEPENDENCIES = \
230                 torture \
231                 LIBPOPT \
232                 POPT_SAMBA \
233                 POPT_CREDENTIALS \
234                 dcerpc \
235                 LIBCLI_SMB \
236                 SMBREADLINE
237 # End BINARY smbtorture
238 #################################
239
240 smbtorture_OBJ_FILES = $(torturesrcdir)/smbtorture.o $(torturesrcdir)/torture.o 
241
242 PUBLIC_HEADERS += $(torturesrcdir)/smbtorture.h
243 MANPAGES += $(torturesrcdir)/man/smbtorture.1
244
245 #################################
246 # Start BINARY gentest
247 [BINARY::gentest]
248 INSTALLDIR = BINDIR
249 PRIVATE_DEPENDENCIES = \
250                 LIBSAMBA-HOSTCONFIG \
251                 LIBSAMBA-UTIL \
252                 LIBPOPT \
253                 POPT_SAMBA \
254                 POPT_CREDENTIALS \
255                 LIBCLI_SMB \
256                 LIBCLI_RAW
257 # End BINARY gentest
258 #################################
259
260 gentest_OBJ_FILES = $(torturesrcdir)/gentest.o
261
262 MANPAGES += $(torturesrcdir)/man/gentest.1
263
264 #################################
265 # Start BINARY gentest_smb2
266 [BINARY::gentest_smb2]
267 INSTALLDIR = BINDIR
268 PRIVATE_DEPENDENCIES = \
269                 LIBSAMBA-HOSTCONFIG \
270                 LIBSAMBA-UTIL \
271                 LIBPOPT \
272                 POPT_SAMBA \
273                 POPT_CREDENTIALS \
274                 LIBCLI_SMB \
275                 LIBCLI_RAW
276 # End BINARY gentest_smb2
277 #################################
278
279 gentest_smb2_OBJ_FILES = $(torturesrcdir)/gentest_smb2.o
280
281 #################################
282 # Start BINARY masktest
283 [BINARY::masktest]
284 INSTALLDIR = BINDIR
285 PRIVATE_DEPENDENCIES = \
286                 LIBSAMBA-HOSTCONFIG \
287                 LIBSAMBA-UTIL \
288                 LIBPOPT \
289                 POPT_SAMBA \
290                 POPT_CREDENTIALS \
291                 LIBCLI_SMB
292 # End BINARY masktest
293 #################################
294
295 masktest_OBJ_FILES = $(torturesrcdir)/masktest.o
296
297 MANPAGES += $(torturesrcdir)/man/masktest.1
298
299 #################################
300 # Start BINARY locktest
301 [BINARY::locktest]
302 INSTALLDIR = BINDIR
303 PRIVATE_DEPENDENCIES = \
304                 LIBPOPT \
305                 POPT_SAMBA \
306                 POPT_CREDENTIALS \
307                 LIBSAMBA-UTIL \
308                 LIBCLI_SMB \
309                 LIBSAMBA-HOSTCONFIG
310 # End BINARY locktest
311 #################################
312
313 locktest_OBJ_FILES = $(torturesrcdir)/locktest.o
314
315 MANPAGES += $(torturesrcdir)/man/locktest.1
316
317 GCOV=0
318
319 ifeq ($(MAKECMDGOALS),gcov)
320 GCOV=1
321 endif
322
323 ifeq ($(MAKECMDGOALS),lcov)
324 GCOV=1
325 endif
326
327 ifeq ($(MAKECMDGOALS),testcov-html)
328 GCOV=1
329 endif
330
331 ifeq ($(GCOV),1)
332 CFLAGS += --coverage
333 LDFLAGS += --coverage
334 endif
335
336 COV_TARGET = test
337
338 gcov: test
339         for I in $(sort $(dir $(ALL_OBJS))); \
340                 do $(GCOV) -p -o $$I $$I/*.c; \
341         done
342
343 samba.info: test
344         -rm heimdal/lib/*/{lex,parse}.{gcda,gcno}
345         lcov --base-directory `pwd` --directory . --capture --output-file samba.info
346
347 lcov: samba.info
348         genhtml -o coverage $<
349
350 testcov-html:: lcov
351
352 clean::
353         @rm -f samba.info