s4-smbtorture: add torture ndr nbt testsuite.
[abartlet/samba.git/.git] / source4 / torture / config.mk
index 4113cab0642bb77f5f1aa433ffea0cfef848e8e1..9ee2edfdd002d99e3088fe5983e089442f3a19fb 100644 (file)
@@ -1,16 +1,15 @@
 [SUBSYSTEM::TORTURE_UTIL]
-PRIVATE_DEPENDENCIES = LIBCLI_RAW LIBPYTHON smbcalls PROVISION
-PUBLIC_DEPENDENCIES = POPT_CREDENTIALS
+PRIVATE_DEPENDENCIES = LIBCLI_RAW
+PUBLIC_DEPENDENCIES = torture POPT_CREDENTIALS
 
-TORTURE_UTIL_OBJ_FILES = $(addprefix torture/, util_smb.o)
+TORTURE_UTIL_OBJ_FILES = $(addprefix $(torturesrcdir)/, util_smb.o)
 
 #################################
 # Start SUBSYSTEM TORTURE_BASIC
 [MODULE::TORTURE_BASIC]
-SUBSYSTEM = torture
+SUBSYSTEM = smbtorture
 INIT_FUNCTION = torture_base_init
-PRIVATE_PROTO_HEADER = \
-               basic/proto.h
+OUTPUT_TYPE = MERGED_OBJ
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB POPT_CREDENTIALS \
                TORTURE_UTIL LIBCLI_RAW \
@@ -18,7 +17,7 @@ PRIVATE_DEPENDENCIES = \
 # End SUBSYSTEM TORTURE_BASIC
 #################################
 
-TORTURE_BASIC_OBJ_FILES = $(addprefix torture/basic/,  \
+TORTURE_BASIC_OBJ_FILES = $(addprefix $(torturesrcdir)/basic/,  \
                base.o \
                misc.o \
                scanner.o \
@@ -38,21 +37,21 @@ TORTURE_BASIC_OBJ_FILES = $(addprefix torture/basic/,  \
                attr.o \
                properties.o)
 
+$(eval $(call proto_header_template,$(torturesrcdir)/basic/proto.h,$(TORTURE_BASIC_OBJ_FILES:.o=.c)))
 
 #################################
 # Start SUBSYSTEM TORTURE_RAW
 [MODULE::TORTURE_RAW]
-SUBSYSTEM = torture
+OUTPUT_TYPE = MERGED_OBJ
+SUBSYSTEM = smbtorture
 INIT_FUNCTION = torture_raw_init
-PRIVATE_PROTO_HEADER = \
-               raw/proto.h
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE \
                POPT_CREDENTIALS TORTURE_UTIL
 # End SUBSYSTEM TORTURE_RAW
 #################################
 
-TORTURE_RAW_OBJ_FILES = $(addprefix torture/raw/, \
+TORTURE_RAW_OBJ_FILES = $(addprefix $(torturesrcdir)/raw/, \
                qfsinfo.o \
                qfileinfo.o \
                setfileinfo.o \
@@ -73,6 +72,7 @@ TORTURE_RAW_OBJ_FILES = $(addprefix torture/raw/, \
                pingpong.o \
                lockbench.o \
                lookuprate.o \
+               tconrate.o \
                openbench.o \
                rename.o \
                eas.o \
@@ -85,146 +85,185 @@ TORTURE_RAW_OBJ_FILES = $(addprefix torture/raw/, \
                raw.o \
                offline.o)
 
+$(eval $(call proto_header_template,$(torturesrcdir)/raw/proto.h,$(TORTURE_RAW_OBJ_FILES:.o=.c)))
 
 mkinclude smb2/config.mk
 mkinclude winbind/config.mk
+mkinclude libnetapi/config.mk
+mkinclude libsmbclient/config.mk
 
 [SUBSYSTEM::TORTURE_NDR]
-PRIVATE_PROTO_HEADER = ndr/proto.h
+PRIVATE_DEPENDENCIES = torture SERVICE_SMB
 
-TORTURE_NDR_OBJ_FILES = $(addprefix torture/ndr/, ndr.o winreg.o atsvc.o lsa.o epmap.o dfs.o netlogon.o drsuapi.o spoolss.o samr.o)
+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 dfsblob.o drsblobs.o nbt.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/ndr/proto.h,$(TORTURE_NDR_OBJ_FILES:.o=.c)))
+
+[SUBSYSTEM::TORTURE_DFS]
+PRIVATE_DEPENDENCIES = torture LIBCLI_SMB NDR_DFSBLOBS TORTURE_UTIL
+
+TORTURE_DFS_OBJ_FILES = $(addprefix $(torturesrcdir)/dfs/, common.o domaindfs.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/dfs/proto.h,$(TORTURE_DFS_OBJ_FILES:.o=.c)))
 
 [MODULE::torture_rpc]
+OUTPUT_TYPE = MERGED_OBJ
 # TORTURE_NET and TORTURE_NBT use functions from torture_rpc...
 #OUTPUT_TYPE = MERGED_OBJ
-SUBSYSTEM = torture
+SUBSYSTEM = smbtorture
 INIT_FUNCTION = torture_rpc_init
-PRIVATE_PROTO_HEADER = \
-               rpc/proto.h
 PRIVATE_DEPENDENCIES = \
                NDR_TABLE RPC_NDR_UNIXINFO dcerpc_samr RPC_NDR_WINREG RPC_NDR_INITSHUTDOWN \
                RPC_NDR_OXIDRESOLVER RPC_NDR_EVENTLOG RPC_NDR_ECHO RPC_NDR_SVCCTL \
                RPC_NDR_NETLOGON dcerpc_atsvc dcerpc_mgmt RPC_NDR_DRSUAPI \
                RPC_NDR_LSA RPC_NDR_EPMAPPER RPC_NDR_DFS RPC_NDR_FRSAPI RPC_NDR_SPOOLSS \
                RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_ROT RPC_NDR_DSSETUP \
-               RPC_NDR_REMACT RPC_NDR_OXIDRESOLVER WB_HELPER LIBSAMBA-NET \
-               LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP \
-               dcerpc_server service process_model ntvfs SERVICE_SMB
+               RPC_NDR_REMACT RPC_NDR_OXIDRESOLVER RPC_NDR_NTSVCS WB_HELPER LIBSAMBA-NET \
+               LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP TORTURE_DFS \
+               dcerpc_server service process_model ntvfs SERVICE_SMB RPC_NDR_BROWSER LIBCLI_DRSUAPI TORTURE_LDB_MODULE
 
-torture_rpc_OBJ_FILES = $(addprefix torture/rpc/, \
-               join.o lsa.o lsa_lookup.o session_key.o echo.o dfs.o drsuapi.o \
-               drsuapi_cracknames.o dssync.o spoolss.o spoolss_notify.o spoolss_win.o \
+torture_rpc_OBJ_FILES = $(addprefix $(torturesrcdir)/rpc/, \
+               join.o lsa.o forest_trust.o lsa_lookup.o session_key.o echo.o dfs.o drsuapi.o \
+               drsuapi_cracknames.o dssync.o dsgetinfo.o spoolss.o spoolss_notify.o spoolss_win.o spoolss_access.o \
                unixinfo.o samr.o samr_accessmask.o wkssvc.o srvsvc.o svcctl.o atsvc.o \
                eventlog.o epmapper.o winreg.o initshutdown.o oxidresolve.o remact.o mgmt.o \
-               scanner.o autoidl.o countcalls.o testjoin.o schannel.o netlogon.o samlogon.o \
-               samsync.o bind.o dssetup.o alter_context.o bench.o samba3rpc.o rpc.o async_bind.o \
-               handles.o frsapi.o)
+               scanner.o autoidl.o countcalls.o testjoin.o schannel.o netlogon.o remote_pac.o samlogon.o \
+               samsync.o multi_bind.o dssetup.o alter_context.o bench.o samba3rpc.o rpc.o async_bind.o \
+               handles.o frsapi.o object_uuid.o ntsvcs.o browser.o bind.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/rpc/proto.h,$(torture_rpc_OBJ_FILES:.o=.c)))
+
+#################################
+# RPC/Local DRSUAPI tests
+mkinclude drs/config.mk
 
 #################################
 # Start SUBSYSTEM TORTURE_RAP
 [MODULE::TORTURE_RAP]
-SUBSYSTEM = torture
+OUTPUT_TYPE = MERGED_OBJ
+SUBSYSTEM = smbtorture
 INIT_FUNCTION = torture_rap_init
-PRIVATE_PROTO_HEADER = \
-               rap/proto.h
-PRIVATE_DEPENDENCIES = TORTURE_UTIL LIBCLI_SMB
+PRIVATE_DEPENDENCIES = TORTURE_UTIL LIBCLI_SMB NDR_RAP
 # End SUBSYSTEM TORTURE_RAP
 #################################
 
-TORTURE_RAP_OBJ_FILES = torture/rap/rap.o
+TORTURE_RAP_OBJ_FILES = $(torturesrcdir)/rap/rap.o $(torturesrcdir)/rap/rpc.o $(torturesrcdir)/rap/printing.o $(torturesrcdir)/rap/sam.o
+
+$(eval $(call proto_header_template,$(torturesrcdir)/rap/proto.h,$(TORTURE_RAP_OBJ_FILES:.o=.c)))
 
 #################################
 # Start SUBSYSTEM TORTURE_AUTH
 [MODULE::TORTURE_AUTH]
-SUBSYSTEM = torture
-PRIVATE_PROTO_HEADER = \
-               auth/proto.h
+OUTPUT_TYPE = MERGED_OBJ
+SUBSYSTEM = smbtorture
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB gensec auth KERBEROS \
-               POPT_CREDENTIALS SMBPASSWD
+               POPT_CREDENTIALS SMBPASSWD torture
 # End SUBSYSTEM TORTURE_AUTH
 #################################
 
-TORTURE_AUTH_OBJ_FILES = $(addprefix torture/auth/, ntlmssp.o pac.o)
+TORTURE_AUTH_OBJ_FILES = $(addprefix $(torturesrcdir)/auth/, ntlmssp.o pac.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/auth/proto.h,$(TORTURE_AUTH_OBJ_FILES:.o=.c)))
 
 mkinclude local/config.mk
 
 #################################
 # Start MODULE TORTURE_NBENCH
 [MODULE::TORTURE_NBENCH]
-SUBSYSTEM = torture
+OUTPUT_TYPE = MERGED_OBJ
+SUBSYSTEM = smbtorture
 INIT_FUNCTION = torture_nbench_init
 PRIVATE_DEPENDENCIES = TORTURE_UTIL 
-PRIVATE_PROTO_HEADER = \
-               nbench/proto.h
 # End MODULE TORTURE_NBENCH
 #################################
 
-TORTURE_NBENCH_OBJ_FILES = $(addprefix torture/nbench/, nbio.o nbench.o)
+TORTURE_NBENCH_OBJ_FILES = $(addprefix $(torturesrcdir)/nbench/, nbio.o nbench.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/nbench/proto.h,$(TORTURE_NBENCH_OBJ_FILES:.o=.c)))
 
 #################################
 # Start MODULE TORTURE_UNIX
 [MODULE::TORTURE_UNIX]
-SUBSYSTEM = torture
+SUBSYSTEM = smbtorture
+OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = torture_unix_init
 PRIVATE_DEPENDENCIES = TORTURE_UTIL 
-PRIVATE_PROTO_HEADER = \
-               unix/proto.h
 # End MODULE TORTURE_UNIX
 #################################
 
-TORTURE_UNIX_OBJ_FILES = $(addprefix torture/unix/, unix.o whoami.o unix_info2.o)
+TORTURE_UNIX_OBJ_FILES = $(addprefix $(torturesrcdir)/unix/, unix.o whoami.o unix_info2.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/unix/proto.h,$(TORTURE_UNIX_OBJ_FILES:.o=.c)))
 
 #################################
 # Start SUBSYSTEM TORTURE_LDAP
 [MODULE::TORTURE_LDAP]
-SUBSYSTEM = torture
+SUBSYSTEM = smbtorture
+OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = torture_ldap_init
-PRIVATE_PROTO_HEADER = \
-               ldap/proto.h
 PRIVATE_DEPENDENCIES = \
-               LIBCLI_LDAP LIBCLI_CLDAP SAMDB POPT_CREDENTIALS
+               LIBCLI_LDAP LIBCLI_CLDAP SAMDB POPT_CREDENTIALS torture LDB_WRAP
 # End SUBSYSTEM TORTURE_LDAP
 #################################
 
-TORTURE_LDAP_OBJ_FILES = $(addprefix torture/ldap/, common.o basic.o schema.o uptodatevector.o cldap.o cldapbench.o)
+TORTURE_LDAP_OBJ_FILES = $(addprefix $(torturesrcdir)/ldap/, common.o basic.o schema.o uptodatevector.o \
+       cldap.o cldapbench.o ldap_sort.o nested_search.o)
 
+$(eval $(call proto_header_template,$(torturesrcdir)/ldap/proto.h,$(TORTURE_LDAP_OBJ_FILES:.o=.c)))
 
 #################################
 # Start SUBSYSTEM TORTURE_NBT
 [MODULE::TORTURE_NBT]
-SUBSYSTEM = torture
+SUBSYSTEM = smbtorture
+OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = torture_nbt_init
-PRIVATE_PROTO_HEADER = \
-               nbt/proto.h
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL torture_rpc
 # End SUBSYSTEM TORTURE_NBT
 #################################
 
-TORTURE_NBT_OBJ_FILES = $(addprefix torture/nbt/, query.o register.o \
+TORTURE_NBT_OBJ_FILES = $(addprefix $(torturesrcdir)/nbt/, query.o register.o \
        wins.o winsbench.o winsreplication.o dgram.o nbt.o)
 
+$(eval $(call proto_header_template,$(torturesrcdir)/nbt/proto.h,$(TORTURE_NBT_OBJ_FILES:.o=.c)))
 
 #################################
 # Start SUBSYSTEM TORTURE_NET
 [MODULE::TORTURE_NET]
-SUBSYSTEM = torture
+SUBSYSTEM = smbtorture
+OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = torture_net_init
-PRIVATE_PROTO_HEADER = \
-               libnet/proto.h
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-NET \
                POPT_CREDENTIALS \
-               torture_rpc
+               torture_rpc \
+               PROVISION
 # End SUBSYSTEM TORTURE_NET
 #################################
 
-TORTURE_NET_OBJ_FILES = $(addprefix torture/libnet/, libnet.o \
+TORTURE_NET_OBJ_FILES = $(addprefix $(torturesrcdir)/libnet/, libnet.o \
                                           utils.o userinfo.o userman.o groupinfo.o groupman.o \
                                           domain.o libnet_lookup.o libnet_user.o libnet_group.o \
                                           libnet_share.o libnet_rpc.o libnet_domain.o libnet_BecomeDC.o)
 
+$(eval $(call proto_header_template,$(torturesrcdir)/libnet/proto.h,$(TORTURE_NET_OBJ_FILES:.o=.c)))
+
+#################################
+# Start SUBSYSTEM TORTURE_NTP
+[MODULE::TORTURE_NTP]
+SUBSYSTEM = smbtorture
+OUTPUT_TYPE = MERGED_OBJ
+INIT_FUNCTION = torture_ntp_init
+PRIVATE_DEPENDENCIES = \
+               POPT_CREDENTIALS \
+               torture_rpc 
+# End SUBSYSTEM TORTURE_NTP
+#################################
+
+TORTURE_NTP_OBJ_FILES = $(addprefix $(torturesrcdir)/ntp/, ntp_signd.o)
+
+$(eval $(call proto_header_template,$(torturesrcdir)/ntp/proto.h,$(TORTURE_NET_OBJ_FILES:.o=.c)))
 
 #################################
 # Start BINARY smbtorture
@@ -241,10 +280,13 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY smbtorture
 #################################
 
-smbtorture_OBJ_FILES = torture/smbtorture.o torture/torture.o 
+smbtorture_OBJ_FILES = \
+               $(torturesrcdir)/smbtorture.o \
+               $(torturesrcdir)/torture.o  \
+               $(torturesrcdir)/shell.o
 
-PUBLIC_HEADERS += torture/smbtorture.h
-MANPAGES += torture/man/smbtorture.1
+PUBLIC_HEADERS += $(torturesrcdir)/smbtorture.h
+MANPAGES += $(torturesrcdir)/man/smbtorture.1
 
 #################################
 # Start BINARY gentest
@@ -261,9 +303,9 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY gentest
 #################################
 
-gentest_OBJ_FILES = torture/gentest.o
+gentest_OBJ_FILES = $(torturesrcdir)/gentest.o
 
-MANPAGES += torture/man/gentest.1
+MANPAGES += $(torturesrcdir)/man/gentest.1
 
 #################################
 # Start BINARY masktest
@@ -279,9 +321,9 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY masktest
 #################################
 
-masktest_OBJ_FILES = torture/masktest.o
+masktest_OBJ_FILES = $(torturesrcdir)/masktest.o
 
-MANPAGES += torture/man/masktest.1
+MANPAGES += $(torturesrcdir)/man/masktest.1
 
 #################################
 # Start BINARY locktest
@@ -297,9 +339,9 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY locktest
 #################################
 
-locktest_OBJ_FILES = torture/locktest.o
+locktest_OBJ_FILES = $(torturesrcdir)/locktest.o
 
-MANPAGES += torture/man/locktest.1
+MANPAGES += $(torturesrcdir)/man/locktest.1
 
 GCOV=0
 
@@ -327,11 +369,11 @@ gcov: test
                do $(GCOV) -p -o $$I $$I/*.c; \
        done
 
-samba.info: test
-       -rm heimdal/lib/*/{lex,parse}.{gcda,gcno}
-       lcov --base-directory `pwd` --directory . --capture --output-file samba.info
+samba4.info: test
+       -rm heimdal/lib/*/{lex,parse,sel-lex}.{gcda,gcno}
+       cd .. && lcov --base-directory `pwd`/source4 --directory source4 --directory nsswitch --directory libcli --directory librpc --directory lib --capture --output-file source4/samba4.info
 
-lcov: samba.info
+lcov: samba4.info
        genhtml -o coverage $<
 
 testcov-html:: lcov