s3/s4:build: honor library path from environment
[ira/wip.git] / source3 / Makefile.in
index e02b021fe991796956f5383db56eaf4ef6147805..dd133df3b85db9aae6f086f748a6e9590ecfa54c 100644 (file)
@@ -37,7 +37,7 @@ SHLD_DSO = $(SHLD) $(LDSHFLAGS) $(DSO_EXPORTS) -o $@
 MODULE_EXPORTS=@MODULE_EXPORTS@
 
 # Add $(DEVELOPER_CFLAGS) to $(CFLAGS) to enable extra compiler
-# (GCC) warnings. This is done automtically for --enable-developer,
+# (GCC) warnings. This is done automatically for --enable-developer,
 # --enable-picky-developer and --enable-krb5developer.
 DEVELOPER_CFLAGS=@DEVELOPER_CFLAGS@
 CFLAGS=@CFLAGS@
@@ -53,6 +53,7 @@ AWK=@AWK@
 PICFLAG=@PICFLAG@
 DYNEXP=@DYNEXP@
 PERL=@PERL@
+LIBDL=@LIBDL@
 
 PIDL_ARGS=@PIDL_ARGS@
 
@@ -82,6 +83,13 @@ LIBLUA_LIBS=@LIBLUA_LIBS@
 LIBSMBCLIENT_LIBS=@LIBSMBCLIENT_LIBS@
 LIBSMBSHAREMODES_LIBS=@LIBSMBSHAREMODES_LIBS@
 
+TALLOCTORT = @TALLOCTORT@
+
+TDBBACKUP = @TDBBACKUP@
+TDBTOOL = @TDBTOOL@
+TDBDUMP = @TDBDUMP@
+TDBTORTURE = @TDBTORTURE@
+
 INSTALLCMD=@INSTALL@
 INSTALLLIBCMD_SH=@INSTALLLIBCMD_SH@
 INSTALLLIBCMD_A=@INSTALLLIBCMD_A@
@@ -196,13 +204,13 @@ PATH_FLAGS = -DSMB_PASSWD_FILE=\"$(SMB_PASSWD_FILE)\" \
 
 SBIN_PROGS = bin/smbd@EXEEXT@ bin/nmbd@EXEEXT@ @SWAT_SBIN_TARGETS@ @EXTRA_SBIN_PROGS@
 
-ROOT_SBIN_PROGS = @CIFSMOUNT_PROGS@
+ROOT_SBIN_PROGS = @CIFSMOUNT_PROGS@ @CIFSUMOUNT_PROGS@
 
 BIN_PROGS1 = bin/smbclient@EXEEXT@ bin/net@EXEEXT@ bin/smbspool@EXEEXT@ \
        bin/testparm@EXEEXT@ bin/smbstatus@EXEEXT@ bin/smbget@EXEEXT@
-BIN_PROGS2 = bin/smbcontrol@EXEEXT@ bin/smbtree@EXEEXT@ bin/tdbbackup@EXEEXT@ \
-       bin/nmblookup@EXEEXT@ bin/pdbedit@EXEEXT@ bin/tdbdump@EXEEXT@ \
-       bin/tdbtool@EXEEXT@
+BIN_PROGS2 = bin/smbcontrol@EXEEXT@ bin/smbtree@EXEEXT@ $(TDBBACKUP) \
+       bin/nmblookup@EXEEXT@ bin/pdbedit@EXEEXT@ $(TDBDUMP) \
+       $(TDBTOOL)
 BIN_PROGS3 = bin/smbpasswd@EXEEXT@ bin/rpcclient@EXEEXT@ bin/smbcacls@EXEEXT@ \
        bin/profiles@EXEEXT@ bin/ntlm_auth@EXEEXT@ bin/sharesec@EXEEXT@ \
        bin/smbcquotas@EXEEXT@ bin/eventlogadm@EXEEXT@
@@ -212,15 +220,15 @@ BIN_PROGS4 = bin/ldbedit@EXEEXT@ bin/ldbsearch@EXEEXT@ bin/ldbadd@EXEEXT@ \
 TORTURE_PROGS = bin/smbtorture@EXEEXT@ bin/msgtest@EXEEXT@ \
        bin/masktest@EXEEXT@ bin/locktest@EXEEXT@ \
        bin/locktest2@EXEEXT@ bin/nsstest@EXEEXT@ bin/vfstest@EXEEXT@ \
-       bin/pdbtest@EXEEXT@ bin/talloctort@EXEEXT@ bin/replacetort@EXEEXT@ \
-       bin/tdbtorture@EXEEXT@ \
+       bin/pdbtest@EXEEXT@ $(TALLOCTORT) bin/replacetort@EXEEXT@ \
+       $(TDBTORTURE) \
        bin/smbconftort@EXEEXT@ bin/vlp@EXEEXT@
 
 BIN_PROGS = @EXTRA_BIN_PROGS@ \
        $(BIN_PROGS1) $(BIN_PROGS2) $(BIN_PROGS3) $(BIN_PROGS4) 
 
 EVERYTHING_PROGS = bin/debug2html@EXEEXT@ bin/smbfilter@EXEEXT@ \
-       bin/talloctort@EXEEXT@ bin/replacetort@EXEEXT@ \
+       $(TALLOCTORT) bin/replacetort@EXEEXT@ \
        bin/log2pcap@EXEEXT@ \
        bin/vlp@EXEEXT@ bin/smbiconv@EXEEXT@ \
        bin/dbwrap_tool@EXEEXT@
@@ -355,7 +363,8 @@ UTIL_OBJ = ../lib/util/rbtree.o ../lib/util/signal.o ../lib/util/time.o \
                   ../lib/util/genrand.o ../lib/util/util_net.o \
                   ../lib/util/become_daemon.o ../lib/util/system.o \
                   ../lib/util/tevent_unix.o ../lib/util/tevent_ntstatus.o \
-                  ../lib/util/smb_threads.o ../lib/util/util_id.o
+                  ../lib/util/smb_threads.o ../lib/util/util_id.o \
+                  ../lib/util/blocking.o
 
 CRYPTO_OBJ = ../lib/crypto/crc32.o ../lib/crypto/md5.o \
                         ../lib/crypto/hmacmd5.o ../lib/crypto/arcfour.o \
@@ -477,7 +486,7 @@ CLDAP_OBJ = libads/cldap.o \
        ../lib/util/idtree.o \
        $(LIBCLI_LDAP_MESSAGE_OBJ) $(LIBCLI_LDAP_NDR_OBJ) $(LIBTSOCKET_OBJ)
 
-TLDAP_OBJ = lib/tldap.o lib/tldap_util.o
+TLDAP_OBJ = lib/tldap.o lib/tldap_util.o lib/util_tsock.o
 
 LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
             libsmb/clikrb5.o libsmb/clispnego.o ../lib/util/asn1.o \
@@ -763,8 +772,14 @@ SMBD_OBJ_SRV = smbd/files.o smbd/chgpasswd.o smbd/connection.o \
               smbd/smb2_flush.o \
               smbd/smb2_read.o \
               smbd/smb2_write.o \
+              smbd/smb2_lock.o \
               smbd/smb2_ioctl.o \
               smbd/smb2_keepalive.o \
+              smbd/smb2_find.o \
+              smbd/smb2_notify.o \
+              smbd/smb2_getinfo.o \
+              smbd/smb2_setinfo.o \
+              smbd/smb2_break.o \
               $(MANGLE_OBJ) @VFS_STATIC@
 
 SMBD_OBJ_BASE = $(PARAM_WITHOUT_REG_OBJ) $(SMBD_OBJ_SRV) $(LIBSMB_OBJ) \
@@ -850,7 +865,7 @@ SMBPASSWD_OBJ = utils/smbpasswd.o $(PASSWD_UTIL_OBJ) $(PASSCHANGE_OBJ) \
                $(LIBMSRPC_GEN_OBJ) $(LIBMSRPC_OBJ) $(LDB_OBJ)
 
 PDBEDIT_OBJ = utils/pdbedit.o $(PASSWD_UTIL_OBJ) $(PARAM_OBJ) $(PASSDB_OBJ) \
-               $(LIBSAMBA_OBJ) \
+               $(LIBSAMBA_OBJ) $(LIBTSOCKET_OBJ) \
                $(LIB_NONSMBD_OBJ) $(GROUPDB_OBJ) \
                $(POPT_LIB_OBJ) $(SMBLDAP_OBJ) ../lib/util/asn1.o \
                $(LDB_OBJ)
@@ -1003,7 +1018,7 @@ NMBLOOKUP_OBJ = utils/nmblookup.o $(PARAM_OBJ) $(LIBNMB_OBJ) \
 SMBTORTURE_OBJ1 = torture/torture.o torture/nbio.o torture/scanner.o torture/utable.o \
                torture/denytest.o torture/mangle_test.o
 
-SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) \
+SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) $(TLDAP_OBJ) \
        $(LIBSMB_OBJ) $(LDB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
        @LIBWBCLIENT_STATIC@ \
        $(LIBNDR_GEN_OBJ0)
@@ -1129,7 +1144,9 @@ WINBINDD_OBJ1 = \
                winbindd/winbindd_idmap.o \
                winbindd/winbindd_locator.o \
                winbindd/winbindd_ndr.o \
+               winbindd/wb_ping.o \
                auth/token_util.o \
+               ../nsswitch/libwbclient/wb_reqtrans.o \
                smbd/connection.o
 
 WINBINDD_OBJ = \
@@ -1199,7 +1216,7 @@ TDBTOOL_OBJ = @tdbdir@/tools/tdbtool.o $(LIBREPLACE_OBJ) \
 TDBDUMP_OBJ = @tdbdir@/tools/tdbdump.o $(LIBREPLACE_OBJ) \
        $(SOCKET_WRAPPER_OBJ)
 
-TDBTORTURE_OBJ = @tdbdir@/tools/tdbtorture.o $(LIBTDB_OBJ) \
+TDBTORTURE_OBJ = @tdbdir@/tools/tdbtorture.o $(LIBREPLACE_OBJ) \
        $(SOCKET_WRAPPER_OBJ)
 
 
@@ -1208,19 +1225,16 @@ NTLM_AUTH_OBJ1 = utils/ntlm_auth.o utils/ntlm_auth_diagnostics.o
 NTLM_AUTH_OBJ = ${NTLM_AUTH_OBJ1} $(LIBSAMBA_OBJ) $(POPT_LIB_OBJ) \
                ../lib/util/asn1.o libsmb/spnego.o libsmb/clikrb5.o libads/kerberos.o \
                $(LIBADS_SERVER_OBJ) \
-               $(PASSDB_OBJ) $(GROUPDB_OBJ) \
+               $(PASSDB_OBJ) $(LIBTSOCKET_OBJ) $(GROUPDB_OBJ) \
                $(SMBLDAP_OBJ) $(LIBNMB_OBJ) \
                $(LDB_OBJ) $(WBCOMMON_OBJ) \
                $(LIBNDR_GEN_OBJ0) $(LIBNDR_GEN_OBJ1) @BUILD_INIPARSER@
 
 
-VLP_OBJ1 = printing/tests/vlp.o $(RPC_CLIENT_OBJ1) $(RPC_PARSE_OBJ2) $(RPC_CLIENT_OBJ) ../librpc/rpc/binding.o
-
-VLP_OBJ = $(VLP_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) \
-         $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(LIBMSRPC_GEN_OBJ) \
-         $(READLINE_OBJ) $(POPT_LIB_OBJ) \
-         $(PASSDB_OBJ) $(SMBLDAP_OBJ) $(GROUPDB_OBJ) $(LDB_OBJ) \
-         $(DISPLAY_SEC_OBJ)
+VLP_OBJ = printing/tests/vlp.o \
+         ../lib/util/util_tdb.o \
+         $(LIBSAMBAUTIL_OBJ) \
+         param/util.o
 
 RPC_OPEN_TCP_OBJ = torture/rpc_open_tcp.o \
                   $(LIBSMB_OBJ) \
@@ -1283,7 +1297,7 @@ eventlogadm: SHOWFLAGS bin/eventlogadm@EXEEXT@
 
 sharesec: SHOWFLAGS bin/sharesec@EXEEXT@
 
-talloctort : SHOWFLAGS bin/talloctort@EXEEXT@
+talloctort : SHOWFLAGS $(TALLOCTORT)
 
 replacetort : SHOWFLAGS bin/replacetort@EXEEXT@
 
@@ -1895,7 +1909,11 @@ LIBWBCLIENT_OBJ0 = ../nsswitch/libwbclient/wbclient.o \
 
 LIBWBCLIENT_OBJ = $(LIBWBCLIENT_OBJ0) \
                  $(WBCOMMON_OBJ) \
-                 $(LIBREPLACE_OBJ)
+                 $(LIBREPLACE_OBJ) \
+                 ../lib/async_req/async_sock.o \
+                 ../lib/util/tevent_unix.o \
+                 ../lib/util/blocking.o \
+                 $(SOCKET_WRAPPER_OBJ) @LIBTEVENT_OBJ0@
 
 LIBWBCLIENT_SHARED_TARGET=@LIBWBCLIENT_SHARED_TARGET@
 LIBWBCLIENT_SOVER=@LIBWBCLIENT_SOVER@
@@ -2340,19 +2358,7 @@ bin/libbigballofmud.@SHLIBEXT@: $(BINARY_PREREQS) $(LIBBIGBALLOFMUD_OBJ) @LIBTAL
 #
 #-------------------------------------------------------------------
 
-LIBLUA_OBJ0 = lua-5.1.4/src/lapi.o lua-5.1.4/src/lauxlib.o \
-       lua-5.1.4/src/lbaselib.o lua-5.1.4/src/lcode.o \
-       lua-5.1.4/src/ldblib.o lua-5.1.4/src/ldebug.o lua-5.1.4/src/ldo.o \
-       lua-5.1.4/src/ldump.o lua-5.1.4/src/lfunc.o lua-5.1.4/src/lgc.o \
-       lua-5.1.4/src/linit.o lua-5.1.4/src/liolib.o lua-5.1.4/src/llex.o \
-       lua-5.1.4/src/lmathlib.o lua-5.1.4/src/lmem.o \
-       lua-5.1.4/src/loadlib.o lua-5.1.4/src/lobject.o \
-       lua-5.1.4/src/lopcodes.o lua-5.1.4/src/loslib.o \
-       lua-5.1.4/src/lparser.o lua-5.1.4/src/lstate.o \
-       lua-5.1.4/src/lstring.o lua-5.1.4/src/lstrlib.o \
-       lua-5.1.4/src/ltable.o lua-5.1.4/src/ltablib.o lua-5.1.4/src/ltm.o \
-       lua-5.1.4/src/lundump.o lua-5.1.4/src/lvm.o \
-       lua-5.1.4/src/lzio.o lua-5.1.4/src/print.o
+LIBLUA_OBJ0 = @LIBLUA_OBJ0@
 
 LIBLUA_OBJ = $(LIBLUA_OBJ0)
 
@@ -2500,13 +2506,11 @@ bin/winbindd@EXEEXT@: $(BINARY_PREREQS) $(WINBINDD_OBJ) @BUILD_POPT@ @LIBTALLOC_
                $(PASSDB_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) \
                $(ZLIB_LIBS)
 
-bin/vlp@EXEEXT@: $(BINARY_PREREQS) $(VLP_OBJ) @LIBTALLOC_TARGET@ @LIBTDB_TARGET@ @LIBWBCLIENT_TARGET@
+bin/vlp@EXEEXT@: $(BINARY_PREREQS) $(VLP_OBJ) @LIBTDB_TARGET@
        @echo "Linking $@"
        @$(CC) -o $@ $(VLP_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) $(POPT_LIBS) \
-               $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) \
-               $(ZLIB_LIBS)
+               $(LIBTDB_LIBS)
 
 @WINBIND_NSS@: $(BINARY_PREREQS) $(WINBIND_NSS_OBJ)
        @echo "Linking $@"
@@ -2570,6 +2574,10 @@ bin/ldapsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ldap.o passdb/pdb_nds.o
        @echo "Building plugin $@"
        @$(SHLD_MODULE) passdb/pdb_ldap.o passdb/pdb_nds.o $(LDAP_LIBS)
 
+bin/ads.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ads.o
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) passdb/pdb_ads.o
+
 bin/tdbsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_tdb.o
        @echo "Building plugin $@"
        @$(SHLD_MODULE) passdb/pdb_tdb.o
@@ -2902,7 +2910,7 @@ bin/dbwrap_tool@EXEEXT@: $(DBWRAP_TOOL_OBJ) @LIBTALLOC_TARGET@ @LIBTDB_TARGET@
 install-dbwrap_tool:: bin/dbwrap_tool@EXEEXT@
        @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $<
 
-install:: installservers installbin @INSTALL_CIFSMOUNT@ @INSTALL_CIFSUPCALL@ installman \
+install:: installservers installbin @INSTALL_CIFSMOUNT@ @INSTALL_CIFSUMOUNT@ @INSTALL_CIFSUPCALL@ installman \
                installscripts installdat installmodules @SWAT_INSTALL_TARGETS@ \
                @INSTALL_PAM_MODULES@ installlibs installmo
 
@@ -2932,6 +2940,10 @@ installcifsmount:: @CIFSMOUNT_PROGS@
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(ROOTSBINDIR)
        @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@
 
+installcifsumount:: @CIFSUMOUNT_PROGS@
+       @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(ROOTSBINDIR)
+       @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSUMOUNT_PROGS@
+
 installcifsupcall:: @CIFSUPCALL_PROGS@
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(SBINDIR)
        @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(SBINDIR) @CIFSUPCALL_PROGS@
@@ -3011,7 +3023,7 @@ showlayout::
        @echo "  codepagedir: $(CODEPAGEDIR)"
 
 
-uninstall:: uninstallmo uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ @UNINSTALL_CIFSUPCALL@ uninstallscripts uninstalldat uninstallswat uninstallmodules uninstalllibs @UNINSTALL_PAM_MODULES@
+uninstall:: uninstallmo uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ @UNINSTALL_CIFSUMOUNT@ @UNINSTALL_CIFSUPCALL@ uninstallscripts uninstalldat uninstallswat uninstallmodules uninstalllibs @UNINSTALL_PAM_MODULES@
 
 uninstallmo::
        @$(SHELL) $(srcdir)/script/uninstallmo.sh $(DESTDIR) $(LOCALEDIR) $(srcdir)
@@ -3028,6 +3040,9 @@ uninstallbin::
 uninstallcifsmount::
        @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@
 
+uninstallcifsumount::
+       @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSUMOUNT_PROGS@
+
 uninstallcifsupcall::
        @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSUPCALL_PROGS@
 
@@ -3064,8 +3079,9 @@ TOPFILES=dynconfig.o localedir.o
 
 cleanlibs::
        -rm -f ../lib/*/*.o ../lib/*/*/*.o \
-               ../libcli/*.o ../libcli/*/*.o \
-               ../librpc/*/*.o
+               ../libcli/*.o ../libcli/*/*.o ../libcli/*/*/*.o \
+               ../librpc/*/*.o \
+               ../libgpo/*.o ../libgpo/*/*.o
 
 clean:: cleanlibs
        -rm -f include/build_env.h
@@ -3139,7 +3155,7 @@ test_shlibs:
        @$(LIB_PATH_VAR)=./bin && \
        export $(LIB_PATH_VAR) && \
        for module in $?; do \
-               ./script/tests/dlopen.sh $${module} \
+               ./script/tests/dlopen.sh $(LIBDL) $${module} \
                        || exit 1; \
        done
 
@@ -3149,7 +3165,7 @@ test_nss_modules:: nss_modules
        @$(LIB_PATH_VAR)=./bin && \
        export $(LIB_PATH_VAR) && \
        for module in $(NSS_MODULES); do \
-               ./script/tests/dlopen.sh $${module} \
+               ./script/tests/dlopen.sh $(LIBDL) $${module} \
                        || exit 1; \
        done
 
@@ -3160,7 +3176,7 @@ test_pam_modules:: pam_modules
        @$(LIB_PATH_VAR)=./bin && \
        export $(LIB_PATH_VAR) && \
        for module in $(PAM_MODULES); do \
-               ./script/tests/dlopen.sh -lpam -ldl bin/$${module}.@SHLIBEXT@ \
+               ./script/tests/dlopen.sh -lpam $(LIBDL) bin/$${module}.@SHLIBEXT@ \
                        || exit 1; \
        done
 
@@ -3173,7 +3189,7 @@ TEST_EXTRA_ARGS = ${smbtorture4_option} ${selftest_shrdir} ${selftest_custom_con
 
 test:: all torture timelimit
        @echo Running Test suite
-       @LIB_PATH_VAR=$(LIB_PATH_VAR) PERL="$(PERL)" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all ${TEST_EXTRA_ARGS}
+       @LIB_PATH_VAR=$(LIB_PATH_VAR) PERL="$(PERL)" NSS_WRAPPER_WINBIND_SO_PATH="$(srcdir)/@WINBIND_NSS@" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all ${TEST_EXTRA_ARGS}
 
 valgrindtest:: all torture timelimit
        @echo Running Test suite with valgrind
@@ -3187,18 +3203,22 @@ valgrindtest:: all torture timelimit
 SELFTEST_FORMAT = plain
 selftestdir = ../selftest
 
-S3_LD_LIBPATH_OVERRIDE = $(LIB_PATH_VAR)="$(builddir)/bin"
+S3_LD_LIBPATH_OVERRIDE = $(LIB_PATH_VAR)="$(builddir)/bin:$$$(LIB_PATH_VAR)"
 
 selftest:: all torture timelimit
        @LIB_PATH_VAR=$(LIB_PATH_VAR) $(S3_LD_LIBPATH_OVERRIDE) \
                SAMBA4SHAREDDIR="$(builddir)/bin/shared" SMBTORTURE4=$(smbtorture4_path) \
                PERL="$(PERL)" PYTHON="$(PYTHON)" \
+               NSS_WRAPPER_WINBIND_SO_PATH="$(srcdir)/@WINBIND_NSS@" \
                $(PERL) $(selftestdir)/selftest.pl \
                --prefix=${selftest_prefix} --target=samba3 \
                --testlist="$(srcdir)/selftest/tests.sh|" \
-               --expected-failures=$(srcdir)/selftest/knownfail \
                --exclude=$(srcdir)/selftest/skip \
-               --socket-wrapper $(TESTS) --format=$(SELFTEST_FORMAT) --immediate
+               --socket-wrapper $(TESTS) | \
+               $(PERL) $(selftestdir)/filter-subunit.pl \
+               --expected-failures=$(srcdir)/selftest/knownfail | \
+               $(PERL) $(selftestdir)/format-subunit.pl --format=$(SELFTEST_FORMAT) \
+               --immediate
 
 selftest-%:
        $(MAKE) selftest TESTS=$*