s3-rpc_server: run minimal_includes.pl.
[samba.git] / source3 / Makefile.in
index 7151df90f2645b971ba05e7219299abc04ff98c0..bc5e76792ced21de8cb80b90e176b6fa1b08fdf2 100644 (file)
@@ -97,6 +97,7 @@ TDBTOOL = @TDBTOOL@
 TDBDUMP = @TDBDUMP@
 TDBRESTORE = @TDBRESTORE@
 TDBTORTURE = @TDBTORTURE@
+PTHREADPOOLTEST = @PTHREADPOOLTEST@
 
 INSTALLCMD=@INSTALL@
 INSTALLLIBCMD_SH=@INSTALLLIBCMD_SH@
@@ -139,6 +140,7 @@ CONFIGDIR = @configdir@
 VARDIR = @localstatedir@
 MANDIR = @mandir@
 DATADIR = @datadir@
+SETUPDIR = @datadir@/setup
 
 # The permissions to give the executables and other data
 INSTALLPERMS_BIN = 0755
@@ -177,6 +179,9 @@ CODEPAGEDIR = @codepagedir@
 # the directory where pid files go
 PIDDIR = @piddir@
 
+# the directory where nmbd listens on the unexpected socket
+NMBDSOCKETDIR = @nmbdsocketdir@
+
 FLAGS = -I. \
        -I$(srcdir) \
        @FLAGS1@ \
@@ -185,7 +190,6 @@ FLAGS = -I. \
        $(ISA) \
        -I$(srcdir)/lib \
        -I.. \
-       -I../source4 \
        -D_SAMBA_BUILD_=3
 
 PATH_FLAGS = -DSMB_PASSWD_FILE=\"$(SMB_PASSWD_FILE)\" \
@@ -206,7 +210,10 @@ PATH_FLAGS = -DSMB_PASSWD_FILE=\"$(SMB_PASSWD_FILE)\" \
        -DCODEPAGEDIR=\"$(CODEPAGEDIR)\" \
        -DCACHEDIR=\"$(CACHEDIR)\" \
        -DSTATEDIR=\"$(STATEDIR)\" \
-       -DLOCALEDIR=\"$(LOCALEDIR)\"
+       -DNMBDSOCKETDIR=\"$(NMBDSOCKETDIR)\" \
+       -DLOCALEDIR=\"$(LOCALEDIR)\" \
+       -DDATADIR=\"$(DATADIR)\" \
+       -DSETUPDIR=\"$(SETUPDIR)\"
 
 # Note that all executable programs now provide for an optional executable suffix.
 
@@ -227,7 +234,7 @@ 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@ $(TALLOCTORT) bin/replacetort@EXEEXT@ \
-       $(TDBTORTURE) \
+       $(TDBTORTURE) $(PTHREADPOOLTEST) \
        bin/smbconftort@EXEEXT@ bin/vlp@EXEEXT@
 
 BIN_PROGS = @EXTRA_BIN_PROGS@ \
@@ -315,6 +322,7 @@ LIBNDR_OBJ = ../librpc/ndr/ndr_basic.o \
             ../librpc/ndr/ndr_string.o \
             ../librpc/ndr/uuid.o \
             librpc/ndr/util.o \
+            librpc/gen_ndr/ndr_server_id.o \
             librpc/gen_ndr/ndr_dcerpc.o
 
 LIBNDR_GEN_OBJ0 = librpc/gen_ndr/ndr_samr.o \
@@ -333,58 +341,51 @@ LIBNDR_NTPRINTING_OBJ = librpc/gen_ndr/ndr_ntprinting.o \
                        ../librpc/ndr/ndr_ntprinting.o \
 
 LIBNDR_PREG_OBJ = librpc/gen_ndr/ndr_preg.o \
-                 librpc/ndr/ndr_preg.o
+                 ../librpc/ndr/ndr_preg.o
 
 LIBNDR_XATTR_OBJ = librpc/gen_ndr/ndr_xattr.o \
                   ../librpc/ndr/ndr_xattr.o
 
-LIBCLI_SPOOLSS_OBJ = librpc/gen_ndr/cli_spoolss.o \
-                    librpc/gen_ndr/ndr_spoolss_c.o \
+LIBCLI_SPOOLSS_OBJ = librpc/gen_ndr/ndr_spoolss_c.o \
                     rpc_client/cli_spoolss.o \
                     rpc_client/init_spoolss.o
 
-LIBCLI_EVENTLOG_OBJ = librpc/gen_ndr/cli_eventlog.o \
-                     librpc/gen_ndr/ndr_eventlog_c.o
+LIBCLI_EVENTLOG_OBJ = librpc/gen_ndr/ndr_eventlog_c.o
+
+LIBCLI_WINREG_OBJ = librpc/gen_ndr/ndr_winreg_c.o \
+                   rpc_client/cli_winreg.o
 
-LIBCLI_WINREG_OBJ = librpc/gen_ndr/cli_winreg.o \
-                    librpc/gen_ndr/ndr_winreg_c.o
+LIBCLI_WINREG_INT_OBJ = $(LIBCLI_WINREG_OBJ) \
+                       rpc_client/cli_winreg_int.o
 
 LIBCLI_NTSVCS_OBJ = librpc/gen_ndr/ndr_ntsvcs_c.o
 
-LIBCLI_DRSUAPI_OBJ = librpc/gen_ndr/cli_drsuapi.o \
-                    librpc/gen_ndr/ndr_drsuapi_c.o
+LIBCLI_DRSUAPI_OBJ = librpc/gen_ndr/ndr_drsuapi_c.o
 
 LIBCLI_DFS_OBJ = librpc/gen_ndr/ndr_dfs_c.o
 
-LIBCLI_ECHO_OBJ = librpc/gen_ndr/cli_echo.o \
-                 librpc/gen_ndr/ndr_echo_c.o
+LIBCLI_ECHO_OBJ = librpc/gen_ndr/ndr_echo_c.o
 
-LIBCLI_INITSHUTDOWN_OBJ = librpc/gen_ndr/cli_initshutdown.o \
-                         librpc/gen_ndr/ndr_initshutdown_c.o
+LIBCLI_INITSHUTDOWN_OBJ = librpc/gen_ndr/ndr_initshutdown_c.o
 
 LIBCLI_DSSETUP_OBJ = librpc/gen_ndr/ndr_dssetup_c.o
 
-LIBCLI_SVCCTL_OBJ = librpc/gen_ndr/cli_svcctl.o \
-                   librpc/gen_ndr/ndr_svcctl_c.o
+LIBCLI_SVCCTL_OBJ = librpc/gen_ndr/ndr_svcctl_c.o
 
-LIBCLI_WKSSVC_OBJ = librpc/gen_ndr/cli_wkssvc.o \
-                   librpc/gen_ndr/ndr_wkssvc_c.o
+LIBCLI_WKSSVC_OBJ = librpc/gen_ndr/ndr_wkssvc_c.o
 
-LIBCLI_SRVSVC_OBJ = librpc/gen_ndr/cli_srvsvc.o \
-                   librpc/gen_ndr/ndr_srvsvc_c.o
+LIBCLI_SRVSVC_OBJ = librpc/gen_ndr/ndr_srvsvc_c.o
 
-LIBCLI_LSA_OBJ = librpc/gen_ndr/cli_lsa.o \
-                librpc/gen_ndr/ndr_lsa_c.o \
+LIBCLI_LSA_OBJ = librpc/gen_ndr/ndr_lsa_c.o \
                 rpc_client/cli_lsarpc.o \
                 rpc_client/init_lsa.o
 
-LIBCLI_SAMR_OBJ = librpc/gen_ndr/cli_samr.o \
-                 librpc/gen_ndr/ndr_samr_c.o \
+LIBCLI_SAMR_OBJ = librpc/gen_ndr/ndr_samr_c.o \
                  rpc_client/cli_samr.o
 
-LIBCLI_NETLOGON_OBJ = librpc/gen_ndr/cli_netlogon.o \
-                     librpc/gen_ndr/ndr_netlogon_c.o \
-                     rpc_client/cli_netlogon.o
+LIBCLI_NETLOGON_OBJ = librpc/gen_ndr/ndr_netlogon_c.o \
+                     rpc_client/cli_netlogon.o \
+                     rpc_client/util_netlogon.o
 
 LIBCLI_EPMAPPER_OBJ = librpc/gen_ndr/ndr_epmapper_c.o
 
@@ -427,7 +428,7 @@ UTIL_OBJ = ../lib/util/rbtree.o ../lib/util/signal.o ../lib/util/time.o \
                   ../lib/util/tevent_werror.o \
                   ../lib/util/smb_threads.o ../lib/util/util_id.o \
                   ../lib/util/blocking.o ../lib/util/rfc1738.o \
-                  ../lib/util/select.o
+                  ../lib/util/select.o ../lib/util/util_pw.o
 
 CRYPTO_OBJ = ../lib/crypto/crc32.o ../lib/crypto/md5.o \
                         ../lib/crypto/hmacmd5.o ../lib/crypto/arcfour.o \
@@ -437,30 +438,36 @@ CRYPTO_OBJ = ../lib/crypto/crc32.o ../lib/crypto/md5.o \
 
 LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
          lib/messages.o librpc/gen_ndr/ndr_messaging.o lib/messages_local.o \
-         lib/messages_ctdbd.o lib/packet.o lib/ctdbd_conn.o \
+         lib/messages_ctdbd.o lib/ctdb_packet.o lib/ctdbd_conn.o \
          lib/interfaces.o lib/memcache.o \
          lib/talloc_dict.o \
          lib/serverid.o \
          lib/util_sconn.o \
          lib/util_transfer_file.o ../lib/async_req/async_sock.o \
+         lib/addrchange.o \
          $(TDB_LIB_OBJ) \
-         $(VERSION_OBJ) lib/charcnv.o lib/debug.o lib/fault.o \
-         lib/interface.o lib/pidfile.o \
+         $(VERSION_OBJ) lib/charcnv.o ../lib/util/charset/convert_string.o \
+         ../lib/util/charset/pull_push.o \
+         lib/fstring.o ../lib/util/debug.o ../lib/util/debug_s3.o ../lib/util/fault.o \
+         lib/interface.o lib/pidfile.o lib/dumpcore.o \
          lib/system.o lib/sendfile.o lib/recvfile.o lib/time.o \
          lib/username.o \
          ../libds/common/flag_mapping.o \
          lib/access.o lib/smbrun.o \
          lib/bitmap.o lib/dprintf.o $(UTIL_REG_OBJ) \
          lib/wins_srv.o \
-         lib/util_str.o lib/clobber.o lib/util_sid.o \
-         lib/util_unistr.o lib/util_file.o \
-         lib/util.o lib/util_names.o \
+         lib/util_str.o ../lib/util/util_str_common.o \
+         ../lib/util/util_str.o \
+         ../lib/util/base64.o lib/util_sid.o \
+         ../lib/util/charset/util_unistr.o \
+         ../lib/util/charset/util_unistr_w.o ../lib/util/charset/codepoints.o ../lib/util/charset/util_str.o lib/util_file.o \
+         lib/util.o lib/util_cmdline.o lib/util_names.o \
          lib/util_sock.o lib/sock_exec.o lib/util_sec.o \
-         lib/substitute.o lib/dbwrap_util.o \
+         lib/substitute.o ../lib/util/substitute.o lib/dbwrap_util.o \
          lib/ms_fnmatch.o lib/errmap_unix.o \
          lib/tallocmsg.o lib/dmallocmsg.o \
          libsmb/clisigning.o libsmb/smb_signing.o \
-         lib/iconv.o lib/pam_errors.o intl/lang_tdb.o \
+         ../lib/util/charset/iconv.o intl/lang_tdb.o \
          lib/conn_tdb.o lib/adt_tree.o lib/gencache.o \
          lib/sessionid_tdb.o \
          lib/module.o lib/events.o @LIBTEVENT_OBJ0@ \
@@ -474,7 +481,8 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
          libads/krb5_errs.o lib/system_smbd.o lib/audit.o $(LIBNDR_OBJ) \
          lib/file_id.o lib/idmap_cache.o \
          ../libcli/security/dom_sid.o ../libcli/security/security_descriptor.o \
-         ../libcli/security/security_token.o ../libcli/security/util_sid.o
+         ../libcli/security/security_token.o ../libcli/security/util_sid.o \
+         ../libcli/smb/util.o
 
 LIB_DUMMY_OBJ = lib/dummysmbd.o lib/dummyroot.o
 LIB_NONSMBD_OBJ = $(LIB_OBJ) $(LIB_DUMMY_OBJ)
@@ -485,7 +493,7 @@ READLINE_OBJ = ../libcli/smbreadline/smbreadline.o
 # Be sure to include them into your application
 POPT_LIB_OBJ = lib/popt_common.o
 
-PARAM_WITHOUT_REG_OBJ = dynconfig.o param/loadparm.o param/loadparm_server_role.o param/util.o lib/sharesec.o lib/ldap_debug_handler.o
+PARAM_WITHOUT_REG_OBJ = ../dynconfig/dynconfig.o param/loadparm.o param/loadparm_server_role.o param/util.o lib/sharesec.o lib/ldap_debug_handler.o
 PARAM_REG_ADD_OBJ = $(REG_SMBCONF_OBJ) $(LIBSMBCONF_OBJ) $(PRIVILEGES_BASIC_OBJ)
 PARAM_OBJ = $(PARAM_WITHOUT_REG_OBJ) $(PARAM_REG_ADD_OBJ)
 
@@ -512,7 +520,7 @@ LIBADS_OBJ = libads/ldap.o \
              libads/disp_sec.o libads/ldap_utils.o \
             libads/ldap_schema.o libads/util.o libads/ndr.o
 
-LIBADS_SERVER_OBJ = libads/kerberos_verify.o libads/authdata.o \
+LIBADS_SERVER_OBJ = libads/kerberos_verify.o libads/authdata.o ../auth/kerberos/kerberos_pac.o \
                    ../librpc/ndr/ndr_krb5pac.o \
                    librpc/gen_ndr/ndr_krb5pac.o
 
@@ -522,14 +530,14 @@ SECRETS_OBJ = passdb/secrets.o passdb/machine_account_secrets.o passdb/machine_s
              librpc/gen_ndr/ndr_secrets.o
 
 LIBNBT_OBJ = ../libcli/nbt/nbtname.o \
-            ../libcli/netlogon.o \
-            ../libcli/ndr_netlogon.o \
+            ../libcli/netlogon/netlogon.o \
+            ../libcli/netlogon/ndr_netlogon.o \
             librpc/gen_ndr/ndr_nbt.o \
             librpc/gen_ndr/ndr_svcctl.o \
             ../librpc/ndr/ndr_svcctl.o
 
 LIBNMB_OBJ = libsmb/unexpected.o libsmb/namecache.o libsmb/nmblib.o \
-            libsmb/namequery.o ../libcli/nbt/lmhosts.o libsmb/conncache.o \
+            libsmb/namequery.o ../libcli/nbt/lmhosts.o ../libcli/dns/dns_hosts_file.o libsmb/conncache.o \
             libads/dns.o libads/sitename_cache.o
 
 NTERR_OBJ = libsmb/nterr.o libsmb/smberr.o
@@ -577,7 +585,7 @@ SCHANNEL_OBJ = ../libcli/auth/credentials.o \
               $(LIBNDR_SCHANNEL_OBJ)
 
 LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
-            libsmb/clikrb5.o libsmb/clispnego.o \
+            libsmb/clikrb5.o ../libcli/auth/krb5_wrap.o libsmb/clispnego.o \
             ../libcli/auth/spnego_parse.o \
             ../lib/util/asn1.o \
             libsmb/clirap.o libsmb/clierror.o libsmb/climessage.o \
@@ -598,6 +606,7 @@ LIBMSRPC_OBJ = $(SCHANNEL_OBJ) \
               rpc_client/cli_pipe.o \
               librpc/crypto/gse_krb5.o \
               librpc/crypto/gse.o \
+              ../auth/kerberos/gssapi_pac.o \
               librpc/crypto/cli_spnego.o \
               librpc/rpc/rpc_common.o \
               rpc_client/rpc_transport_np.o \
@@ -658,60 +667,65 @@ REG_SMBCONF_OBJ = $(REG_BASE_OBJ) \
 REG_FULL_OBJ = $(REG_SMBCONF_OBJ) \
               $(REG_BACKENDS_EXTRA_OBJ) \
               $(REG_INIT_FULL_OBJ) \
-              registry/reg_eventlog.o \
               registry/reg_perfcount.o \
               librpc/gen_ndr/ndr_perfcount.o
 
 LIB_EVENTLOG_OBJ = lib/eventlog/eventlog.o
 
-RPC_LSARPC_OBJ = rpc_server/srv_lsa_nt.o \
+DCE_RPC_EP_OBJ = librpc/rpc/dcerpc_ep.o
+
+RPC_LSARPC_OBJ = rpc_server/lsa/srv_lsa_nt.o \
                 librpc/gen_ndr/srv_lsa.o
 
-RPC_NETLOGON_OBJ = rpc_server/srv_netlog_nt.o \
+RPC_NETLOGON_OBJ = rpc_server/netlogon/srv_netlog_nt.o \
                   librpc/gen_ndr/srv_netlogon.o
 
-RPC_SAMR_OBJ = rpc_server/srv_samr_nt.o \
-               rpc_server/srv_samr_util.o \
-               rpc_server/srv_samr_chgpasswd.o \
+RPC_SAMR_OBJ = rpc_server/samr/srv_samr_nt.o \
+               rpc_server/samr/srv_samr_util.o \
+               rpc_server/samr/srv_samr_chgpasswd.o \
               librpc/gen_ndr/srv_samr.o
 
-RPC_INITSHUTDOWN_OBJ =  librpc/gen_ndr/srv_initshutdown.o rpc_server/srv_initshutdown_nt.o
+RPC_INITSHUTDOWN_OBJ =  librpc/gen_ndr/srv_initshutdown.o rpc_server/initshutdown/srv_initshutdown_nt.o
 
-RPC_WINREG_OBJ =  rpc_server/srv_winreg_nt.o \
+RPC_WINREG_OBJ =  rpc_server/winreg/srv_winreg_nt.o \
                  librpc/gen_ndr/srv_winreg.o
 
-RPC_DSSETUP_OBJ =  rpc_server/srv_dssetup_nt.o librpc/gen_ndr/srv_dssetup.o
+RPC_DSSETUP_OBJ =  rpc_server/dssetup/srv_dssetup_nt.o librpc/gen_ndr/srv_dssetup.o
 
-RPC_SRVSVC_OBJ = rpc_server/srv_srvsvc_nt.o \
+RPC_SRVSVC_OBJ = rpc_server/srvsvc/srv_srvsvc_nt.o \
                 librpc/gen_ndr/srv_srvsvc.o
 
 RPC_WKSSVC_OBJ =  librpc/gen_ndr/srv_wkssvc.o \
-                 rpc_server/srv_wkssvc_nt.o
+                 rpc_server/wkssvc/srv_wkssvc_nt.o
 
-RPC_SVCCTL_OBJ =  rpc_server/srv_svcctl_nt.o \
+RPC_SVCCTL_OBJ =  rpc_server/svcctl/srv_svcctl_nt.o \
+                 rpc_server/svcctl/srv_svcctl_reg.o \
                  librpc/gen_ndr/srv_svcctl.o \
-                  services/svc_spoolss.o services/svc_rcinit.o services/services_db.o \
+                 services/svc_winreg_glue.o \
+                  services/svc_spoolss.o services/svc_rcinit.o  \
                   services/svc_netlogon.o services/svc_winreg.o \
                   services/svc_wins.o
 
-RPC_NTSVCS_OBJ = rpc_server/srv_ntsvcs_nt.o \
+RPC_NTSVCS_OBJ = rpc_server/ntsvcs/srv_ntsvcs_nt.o \
                 librpc/gen_ndr/srv_ntsvcs.o
 
 RPC_NETDFS_OBJ =  librpc/gen_ndr/srv_dfs.o \
-                 rpc_server/srv_dfs_nt.o
+                 rpc_server/dfs/srv_dfs_nt.o
 
-RPC_SPOOLSS_OBJ = rpc_server/srv_spoolss_nt.o \
-                 rpc_server/srv_spoolss_util.o \
+RPC_SPOOLSS_OBJ = rpc_server/spoolss/srv_spoolss_nt.o \
+                 rpc_server/spoolss/srv_spoolss_util.o \
                  librpc/gen_ndr/srv_spoolss.o
 
-RPC_EVENTLOG_OBJ = rpc_server/srv_eventlog_nt.o \
+RPC_EVENTLOG_OBJ = rpc_server/eventlog/srv_eventlog_nt.o \
+                  rpc_server/eventlog/srv_eventlog_reg.o \
                   $(LIB_EVENTLOG_OBJ) librpc/gen_ndr/srv_eventlog.o
 
 NPA_TSTREAM_OBJ = ../libcli/named_pipe_auth/npa_tstream.o \
-                 librpc/gen_ndr/ndr_named_pipe_auth.o
+                 librpc/gen_ndr/ndr_named_pipe_auth.o \
+                 ../auth/auth_sam_reply.o librpc/gen_ndr/ndr_auth.o ../librpc/ndr/ndr_auth.o
 
 RPC_NCACN_NP = rpc_server/srv_pipe_register.o rpc_server/rpc_ncacn_np.o \
-              rpc_server/rpc_handles.o
+              rpc_server/rpc_handles.o rpc_server/srv_access_check.o
 
 RPC_SERVICE = rpc_server/rpc_server.o
 
@@ -722,20 +736,25 @@ RPC_CRYPTO = rpc_server/dcesrv_ntlmssp.o \
 RPC_PIPE_OBJ = rpc_server/srv_pipe.o rpc_server/srv_pipe_hnd.o \
               $(RPC_NCACN_NP) $(RPC_SERVICE) $(RPC_CRYPTO)
 
-RPC_RPCECHO_OBJ = rpc_server/srv_echo_nt.o librpc/gen_ndr/srv_echo.o
+RPC_RPCECHO_OBJ = rpc_server/echo/srv_echo_nt.o librpc/gen_ndr/srv_echo.o
+
+RPC_EPMAPPER_OBJ = rpc_server/epmapper/srv_epmapper.o librpc/gen_ndr/srv_epmapper.o
+
+RPC_SERVER_REGISTER_OBJ = rpc_server/rpc_ep_setup.o $(DCE_RPC_EP_OBJ)
 
 RPC_SERVER_OBJ = $(RPC_LSARPC_OBJ) $(RPC_WINREG_OBJ) $(RPC_INITSHUTDOWN_OBJ) \
                 $(RPC_DSSETUP_OBJ) $(RPC_WKSSVC_OBJ) $(RPC_SVCCTL_OBJ) \
                 $(RPC_NTSVCS_OBJ) $(RPC_NETLOGON_OBJ) $(RPC_NETDFS_OBJ) \
                 $(RPC_SRVSVC_OBJ) $(RPC_SPOOLSS_OBJ) $(RPC_EVENTLOG_OBJ) \
-                $(RPC_SAMR_OBJ) $(RPC_RPCECHO_OBJ) \
+                $(RPC_SAMR_OBJ) $(RPC_RPCECHO_OBJ) $(RPC_EPMAPPER_OBJ) \
                 $(RPC_PIPE_OBJ) $(NPA_TSTREAM_OBJ) \
                 $(LIBCLI_SPOOLSS_OBJ) \
-                $(LIBCLI_WINREG_OBJ) \
+                $(LIBCLI_WINREG_INT_OBJ) \
                 $(LIBCLI_SRVSVC_OBJ) \
                 $(LIBCLI_LSA_OBJ) \
                 $(LIBCLI_SAMR_OBJ) \
                 $(LIBCLI_NETLOGON_OBJ) \
+                $(RPC_SERVER_REGISTER_OBJ) \
                 $(RPC_CLIENT_SCHANNEL_OBJ) \
                 rpc_client/init_netlogon.o \
                 rpc_client/init_samr.o
@@ -751,11 +770,12 @@ PRIVILEGES_OBJ = lib/privileges.o
 PASSDB_GET_SET_OBJ = passdb/pdb_get_set.o
 
 PASSDB_OBJ = $(PASSDB_GET_SET_OBJ) passdb/passdb.o passdb/pdb_interface.o \
-               passdb/util_wellknown.o passdb/util_builtin.o passdb/pdb_compat.o \
-               passdb/util_unixsids.o passdb/lookup_sid.o \
+               lib/util_wellknown.o lib/util_builtin.o passdb/pdb_compat.o \
+               lib/util_unixsids.o passdb/lookup_sid.o \
                passdb/login_cache.o @PDB_STATIC@ \
                passdb/account_pol.o $(PRIVILEGES_OBJ) \
-               lib/util_nscd.o lib/winbind_util.o $(SERVER_MUTEX_OBJ)
+               lib/util_nscd.o lib/winbind_util.o $(SERVER_MUTEX_OBJ) \
+               passdb/pdb_util.o
 
 DEVEL_HELP_WEIRD_OBJ = modules/weird.o
 CP850_OBJ = modules/CP850.o
@@ -776,9 +796,9 @@ OPLOCK_OBJ = smbd/oplock.o smbd/oplock_irix.o smbd/oplock_linux.o \
             smbd/oplock_onefs.o
 
 NOTIFY_OBJ = smbd/notify.o smbd/notify_inotify.o smbd/notify_internal.o \
-            librpc/gen_ndr/ndr_notify.o
+            librpc/gen_ndr/ndr_notify.o librpc/gen_ndr/ndr_file_id.o
 
-FNAME_UTIL_OBJ = smbd/filename_util.o
+FNAME_UTIL_OBJ = lib/filename_util.o
 
 VFS_DEFAULT_OBJ = modules/vfs_default.o
 VFS_AUDIT_OBJ = modules/vfs_audit.o
@@ -810,6 +830,7 @@ VFS_CACHEPRIME_OBJ = modules/vfs_cacheprime.o
 VFS_PREALLOC_OBJ = modules/vfs_prealloc.o
 VFS_COMMIT_OBJ = modules/vfs_commit.o
 VFS_GPFS_OBJ = modules/vfs_gpfs.o modules/gpfs.o modules/nfs4_acls.o
+VFS_GPFS_HSM_NOTIFY_OBJ = modules/vfs_gpfs_hsm_notify.o
 VFS_NOTIFY_FAM_OBJ = modules/vfs_notify_fam.o
 VFS_READAHEAD_OBJ = modules/vfs_readahead.o
 VFS_TSMSM_OBJ = modules/vfs_tsmsm.o
@@ -832,7 +853,8 @@ VFS_CROSSRENAME_OBJ = modules/vfs_crossrename.o
 VFS_LINUX_XFS_SGID_OBJ = modules/vfs_linux_xfs_sgid.o
 VFS_TIME_AUDIT_OBJ = modules/vfs_time_audit.o
 
-PLAINTEXT_AUTH_OBJ = auth/pampass.o auth/pass_check.o
+PAM_ERRORS_OBJ = ../libcli/auth/pam_errors.o
+PLAINTEXT_AUTH_OBJ = auth/pampass.o auth/pass_check.o $(PAM_ERRORS_OBJ)
 
 SLCACHE_OBJ = libsmb/samlogon_cache.o
 
@@ -859,7 +881,7 @@ AUTH_OBJ = auth/auth.o @AUTH_STATIC@ auth/auth_util.o auth/token_util.o \
 
 MANGLE_OBJ = smbd/mangle.o smbd/mangle_hash.o smbd/mangle_hash2.o
 
-SMBD_OBJ_MAIN = smbd/server.o smbd/server_exit.o
+SMBD_OBJ_MAIN = smbd/server.o smbd/server_exit.o smbd/msg_idmap.o
 
 BUILDOPT_OBJ = smbd/build_options.o
 
@@ -876,7 +898,8 @@ SMBD_OBJ_SRV = smbd/server_reload.o \
               smbd/vfs.o smbd/perfcount.o smbd/statcache.o smbd/seal.o \
                smbd/posix_acls.o lib/sysacls.o \
               smbd/process.o smbd/service.o smbd/error.o \
-              printing/printspoolss.o \
+              rpc_server/epmd.o \
+              printing/printspoolss.o printing/spoolssd.o \
               lib/sysquotas.o lib/sysquotas_linux.o \
               lib/sysquotas_xfs.o lib/sysquotas_4A.o \
               lib/sysquotas_nfs.o \
@@ -927,7 +950,7 @@ PRINTING_OBJ = printing/pcap.o printing/print_svid.o printing/print_aix.o \
                printing/print_cups.o printing/print_generic.o \
                printing/lpq_parse.o printing/load.o \
                printing/print_iprint.o printing/print_standard.o \
-               printing/printer_list.o
+               printing/printer_list.o librpc/gen_ndr/ndr_printcap.o
 
 PRINTBASE_OBJ = printing/notify.o printing/printing_db.o
 PRINTBACKEND_OBJ = printing/printing.o \
@@ -1117,11 +1140,15 @@ SMBCONFTORT_OBJ = $(SMBCONFTORT_OBJ0) \
                  $(LIBSMB_ERR_OBJ) \
                  $(POPT_LIB_OBJ)
 
+PTHREADPOOLTEST_OBJ = lib/pthreadpool/pthreadpool.o \
+               lib/pthreadpool/tests.o
+
 LIBNET_OBJ = libnet/libnet_join.o \
             libnet/libnet_keytab.o \
             librpc/gen_ndr/ndr_libnet_join.o
 
 LIBNET_DSSYNC_OBJ = libnet/libnet_dssync.o \
+                   libnet/libnet_dssync_passdb.o \
                    libnet/libnet_dssync_keytab.o \
                    ../libcli/drsuapi/repl_decrypt.o
 
@@ -1135,7 +1162,7 @@ LIBNET_SAMSYNC_OBJ = libnet/libnet_samsync.o \
 NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
           utils/net_rap.o utils/net_rpc.o utils/net_rpc_samsync.o \
           utils/net_rpc_join.o utils/net_time.o utils/net_lookup.o \
-          utils/net_cache.o utils/net_groupmap.o utils/net_idmap.o \
+          utils/net_cache.o utils/net_groupmap.o utils/net_idmap.o utils/net_idmap_check.o\
           utils/net_status.o utils/net_rpc_printer.o utils/net_rpc_rights.o \
           utils/net_rpc_service.o utils/net_rpc_registry.o utils/net_usershare.o \
           utils/netlookup.o utils/net_sam.o utils/net_rpc_shell.o \
@@ -1148,6 +1175,7 @@ NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
           utils/net_serverid.o \
           utils/net_eventlog.o \
           utils/net_printing.o \
+          utils/net_rpc_trust.o \
           $(LIBNDR_NTPRINTING_OBJ) \
           $(LIBNDR_PREG_OBJ) \
           $(LIBCLI_SPOOLSS_OBJ) \
@@ -1186,7 +1214,7 @@ NET_OBJ = $(NET_OBJ1) \
          $(LIBSMBCONF_OBJ) \
          $(REGFIO_OBJ) \
          $(PRIVILEGES_BASIC_OBJ) \
-         $(LIB_EVENTLOG_OBJ) localedir.o
+         $(LIB_EVENTLOG_OBJ)
 
 CUPS_OBJ = client/smbspool.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
          $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(POPT_LIB_OBJ) \
@@ -1200,13 +1228,16 @@ SMBTORTURE_OBJ1 = torture/torture.o torture/nbio.o torture/scanner.o torture/uta
                torture/nbench.o \
                torture/test_async_echo.o \
                torture/test_smbsock_any_connect.o \
+               torture/test_notify_online.o \
+               torture/test_addrchange.o \
+               torture/test_case_insensitive.o \
                torture/test_posix_append.o
 
 SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) $(TLDAP_OBJ) \
        $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
        @LIBWBCLIENT_STATIC@ \
         torture/wbc_async.o \
-        lib/wb_reqtrans.o \
+        ../nsswitch/wb_reqtrans.o \
        $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) $(LIBCLI_ECHO_OBJ)
 
 MASKTEST_OBJ = torture/masktest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
@@ -1254,8 +1285,7 @@ SMBCQUOTAS_OBJ = utils/smbcquotas.o $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
 EVTLOGADM_OBJ0 = utils/eventlogadm.o
 
 EVTLOGADM_OBJ  = $(EVTLOGADM_OBJ0) $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) \
-               $(LIBSMB_ERR_OBJ) \
-               registry/reg_eventlog.o $(LIB_EVENTLOG_OBJ) \
+               $(LIBSMB_ERR_OBJ) $(LIB_EVENTLOG_OBJ) \
                librpc/gen_ndr/ndr_eventlog.o \
                librpc/gen_ndr/ndr_lsa.o
 
@@ -1287,7 +1317,7 @@ PAM_SMBPASS_OBJ_0 = pam_smbpass/pam_smb_auth.o pam_smbpass/pam_smb_passwd.o \
                pam_smbpass/pam_smb_acct.o pam_smbpass/support.o ../lib/util/asn1.o
 PAM_SMBPASS_OBJ = $(PAM_SMBPASS_OBJ_0) $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) $(PASSDB_OBJ) $(GROUPDB_OBJ) \
                $(SMBLDAP_OBJ) $(LIBSAMBA_OBJ) \
-               $(LIBTSOCKET_OBJ)
+               $(LIBTSOCKET_OBJ) $(PAM_ERRORS_OBJ)
 
 IDMAP_RW_OBJ = winbindd/idmap_rw.o
 
@@ -1327,6 +1357,7 @@ WINBINDD_OBJ1 = \
                librpc/gen_ndr/ndr_wbint_c.o \
                librpc/gen_ndr/srv_wbint.o \
                librpc/gen_ndr/ndr_wbint.o \
+               librpc/gen_ndr/ndr_idmap.o \
                winbindd/winbindd_async.o \
                winbindd/winbindd_creds.o \
                winbindd/winbindd_cred_cache.o \
@@ -1337,6 +1368,7 @@ WINBINDD_OBJ1 = \
                winbindd/winbindd_ndr.o \
                winbindd/wb_ping.o \
                winbindd/wb_lookupsid.o \
+               winbindd/wb_lookupsids.o \
                winbindd/wb_lookupname.o \
                winbindd/wb_sid2uid.o \
                winbindd/wb_sid2gid.o \
@@ -1357,11 +1389,13 @@ WINBINDD_OBJ1 = \
                winbindd/wb_next_grent.o \
                winbindd/wb_dsgetdcname.o \
                winbindd/winbindd_lookupsid.o \
+               winbindd/winbindd_lookupsids.o \
                winbindd/winbindd_lookupname.o \
                winbindd/winbindd_sid_to_uid.o \
                winbindd/winbindd_sid_to_gid.o \
                winbindd/winbindd_uid_to_sid.o \
                winbindd/winbindd_gid_to_sid.o \
+               winbindd/winbindd_sids_to_xids.o \
                winbindd/winbindd_allocate_uid.o \
                winbindd/winbindd_allocate_gid.o \
                winbindd/winbindd_getpwsid.o \
@@ -1401,7 +1435,7 @@ WINBINDD_OBJ1 = \
                auth/server_info_sam.o \
                auth/user_info.o \
                auth/pampass.o \
-               lib/wb_reqtrans.o
+               ../nsswitch/wb_reqtrans.o
 
 WINBINDD_OBJ = \
                $(WINBINDD_OBJ1) $(PASSDB_OBJ) $(GROUPDB_OBJ) \
@@ -1420,7 +1454,8 @@ WINBINDD_OBJ = \
                $(LIBCLI_SAMR_OBJ) \
                $(LIBCLI_NETLOGON_OBJ) \
                rpc_client/init_netlogon.o \
-               rpc_client/init_samr.o
+               rpc_client/init_samr.o \
+               $(PAM_ERRORS_OBJ)
 
 WBINFO_OBJ = ../nsswitch/wbinfo.o $(LIBSAMBA_OBJ) $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) \
                $(POPT_LIB_OBJ) $(AFS_SETTOKEN_OBJ) \
@@ -1456,7 +1491,7 @@ TDBTORTURE_OBJ = @tdbdir@/tools/tdbtorture.o $(LIBREPLACE_OBJ) \
 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 ../libcli/auth/spnego_parse.o libsmb/clikrb5.o libads/kerberos.o \
+               ../lib/util/asn1.o ../libcli/auth/spnego_parse.o libsmb/clikrb5.o ../libcli/auth/krb5_wrap.o libads/kerberos.o \
                libsmb/samlogon_cache.o \
                $(LIBADS_SERVER_OBJ) \
                $(PASSDB_OBJ) $(LIBTSOCKET_OBJ) $(GROUPDB_OBJ) \
@@ -1547,6 +1582,8 @@ replacetort : SHOWFLAGS bin/replacetort@EXEEXT@
 
 smbconftort : SHOWFLAGS bin/smbconftort@EXEEXT@
 
+pthreadpooltest : SHOWFLAGS bin/pthreadpooltest@EXEEXT@
+
 timelimit : SHOWFLAGS bin/timelimit@EXEEXT@
 
 nsswitch : SHOWFLAGS bin/winbindd@EXEEXT@ bin/wbinfo@EXEEXT@ @WINBIND_NSS@ \
@@ -1568,7 +1605,7 @@ IDL_FILES = librpc/idl/messaging.idl \
            librpc/idl/perfcount.idl \
            librpc/idl/secrets.idl \
            librpc/idl/libnet_join.idl \
-           librpc/idl/preg.idl
+           librpc/idl/server_id.idl
 
 samba3-idl::
        @PIDL_OUTPUTDIR="librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
@@ -1670,7 +1707,7 @@ BINARY_PREREQS = bin/.dummy
 # but since we also require "make install prefix=/opt/samba" *not* to
 # rebuild it's a bit hard.
 
-dynconfig.o: dynconfig.c Makefile
+../dynconfig/dynconfig.o: ../dynconfig/dynconfig.c Makefile
        @echo Compiling $*.c
        @$(COMPILE_CC_PATH) && exit 0;\
                echo "The following command failed:" 1>&2;\
@@ -1714,13 +1751,6 @@ libsmb/libsmb_thread_posix.o: libsmb/libsmb_thread_posix.c
                $(COMPILE_CC) $(PTHREAD_CFLAGS) >/dev/null 2>&1
 ### End section of object files that require PTHREAD_CFLAGS
 
-localedir.o: localedir.c Makefile
-       @echo Compiling $*.c
-       @$(COMPILE_CC_PATH) && exit 0;\
-               echo "The following command failed:" 1>&2;\
-               echo "$(COMPILE_CC_PATH)" 1>&2;\
-               $(COMPILE_CC_PATH) >/dev/null 2>&1
-
 lib/pidfile.o: lib/pidfile.c
        @echo Compiling $*.c
        @$(COMPILE_CC_PATH) && exit 0;\
@@ -1879,6 +1909,10 @@ bin/smbconftort@EXEEXT@: $(SMBCONFTORT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
                $(DYNEXP) $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
                $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
 
+bin/pthreadpooltest@EXEEXT@: $(PTHREADPOOLTEST_OBJ)
+       @echo Linking $@
+       @$(CC) -o $@ $(PTHREADPOOLTEST_OBJ) $(LDFLAGS) -lpthread
+
 bin/masktest@EXEEXT@: $(BINARY_PREREQS) $(MASKTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(MASKTEST_OBJ) $(LDFLAGS) $(DYNEXP) \
@@ -2746,9 +2780,11 @@ bin/sam.@SHLIBEXT@: $(BINARY_PREREQS) $(AUTH_SAM_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(AUTH_SAM_OBJ)
 
-bin/ldapsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ldap.o passdb/pdb_nds.o
+bin/ldapsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ldap.o passdb/pdb_nds.o \
+                       passdb/pdb_ipa.o
        @echo "Building plugin $@"
-       @$(SHLD_MODULE) passdb/pdb_ldap.o passdb/pdb_nds.o $(LDAP_LIBS)
+       @$(SHLD_MODULE) passdb/pdb_ldap.o passdb/pdb_nds.o passdb/pdb_ipa.o \
+                       $(LDAP_LIBS)
 
 bin/ads.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ads.o
        @echo "Building plugin $@"
@@ -2895,7 +2931,7 @@ bin/solarisacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_SOLARISACL_OBJ)
 
 bin/zfsacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_ZFSACL_OBJ)
        @echo "Building plugin $@"
-       @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ)
+       @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ) @ZFSACL_LIBS@
 
 bin/irixacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_IRIXACL_OBJ)
        @echo "Building plugin $@"
@@ -2937,6 +2973,10 @@ bin/gpfs.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_GPFS_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_GPFS_OBJ)
 
+bin/gpfs_hsm_notify.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_GPFS_HSM_NOTIFY_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_GPFS_HSM_NOTIFY_OBJ)
+
 bin/notify_fam.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_NOTIFY_FAM_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_NOTIFY_FAM_OBJ) @SMB_FAM_LIBS@
@@ -3150,6 +3190,7 @@ installdirs::
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) \
                $(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) \
                $(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(STATEDIR) \
+               $(NMBDSOCKETDIR) \
                $(CACHEDIR) $(MANDIR) $(CODEPAGEDIR) $(MODULESDIR) $(LOCALEDIR)
 
 installservers:: all installdirs
@@ -3228,6 +3269,7 @@ showlayout::
        @echo "  statedir:    $(STATEDIR)"
        @echo "  cachedir:    $(CACHEDIR)"
        @echo "  piddir:      $(PIDDIR)"
+       @echo "  nmbdsocketdir: $(NMBSOCKETDIR)"
        @echo "  swatdir:     $(SWATDIR)"
        @echo "  datadir:     ${DATADIR}"
        @echo "  codepagedir: $(CODEPAGEDIR)"
@@ -3274,16 +3316,13 @@ uninstallpammodules::
                rm -f "$(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@"; \
        done
 
-# Toplevel clean files
-TOPFILES=dynconfig.o localedir.o
-
 cleanlibs::
        -rm -f ../lib/*/*.o ../lib/*/*/*.o \
                ../lib/*/*.ho \
                ../libcli/*.o ../libcli/*/*.o ../libcli/*/*/*.o \
                ../librpc/*/*.o \
                ../libgpo/*.o ../libgpo/*/*.o \
-               ../libds/*.o ../libds/*/*.o
+               ../libds/*.o ../libds/*/*.o ../dynconfig/*.o
 
 clean:: cleanlibs
        -rm -f include/build_env.h
@@ -3391,18 +3430,13 @@ test_pam_modules:: pam_modules
 
 TEST_EXTRA_ARGS = ${smbtorture4_option} ${selftest_shrdir} ${selftest_custom_conf}
 
-oldtest:: all torture timelimit
-       @echo Running Test suite
-       @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
-       @LIB_PATH_VAR=$(LIB_PATH_VAR) \
+       @$(MAKE) test \
         NMBD_VALGRIND="xterm -n nmbd -e valgrind -q --db-attach=yes --num-callers=30" \
         WINBINDD_VALGRIND="xterm -n winbindd -e valgrind -q --db-attach=yes --num-callers=30" \
         SMBD_VALGRIND="xterm -n smbd -e valgrind -q --db-attach=yes --num-callers=30" \
-        VALGRIND="valgrind -q --num-callers=30 --log-file=${selftest_prefix}/valgrind.log" \
-        PERL="$(PERL)" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all ${TEST_EXTRA_ARGS}
+        VALGRIND="valgrind -q --num-callers=30 --log-file=${selftest_prefix}/valgrind.log"
 
 selftestdir = ../selftest
 
@@ -3429,7 +3463,7 @@ buildfarm-test:
 subunit-test:
        $(MAKE) test SUBUNIT_FORMATTER=cat
 
-SELFTEST_TESTENV = dc
+SELFTEST_TESTENV = s3dc
 
 testenv:
        $(MAKE) test SELFTEST_TESTENV=$(SELFTEST_TESTENV) TESTS="--testenv"
@@ -3470,21 +3504,10 @@ libnetapi_examples: libnetapi
 clean_libnetapi_examples:
        $(MAKE) -C lib/netapi/examples clean
 
-../source4/configure: ../buildtools/scripts/configure.waf
-       cd ../source4 && ./autogen.sh
-
-samba4-configure: ../source4/configure
-       @CFLAGS='' $(MAKE) -C ../source4 reconfigure || ( cd ../source4 && \
-               CFLAGS='' ./configure.developer --nonshared-binary=smbtorture --enable-auto-reconfigure )
-
-.PHONY: samba4-configure
-
-bin/smbtorture4: $(BINARY_PREREQS) samba4-configure
-       cd ../source4 && $(MAKE) bin/smbtorture
-       cp ../source4/bin/smbtorture bin/smbtorture4
+.PHONY: bin/smbtorture4 bin/ndrdump4
 
-bin/ndrdump4: $(BINARY_PREREQS) samba4-configure
-       cd ../source4 && $(MAKE) bin/ndrdump
-       cp ../source4/bin/ndrdump bin/ndrdump4
+bin/smbtorture4: $(BINARY_PREREQS)
+       $(MAKE) -f Makefile-smbtorture4 bin/smbtorture4
 
-.PHONY: bin/smbtorture4
+bin/ndrdump4: $(BINARY_PREREQS)
+       $(MAKE) -f Makefile-smbtorture4 bin/ndrdump4