libsmbconf: move the non-registry parts of libsmbconf to top level
[kai/samba-autobuild/.git] / source3 / Makefile.in
index 01255df087f94820186f78efd7d6ebf41c9dedec..1924ade8fbcef55473f6f53a6c227db2b271e093 100644 (file)
@@ -17,6 +17,7 @@ localstatedir=@localstatedir@
 datarootdir=@datarootdir@
 
 selftest_prefix=@selftest_prefix@
+selftest_shrdir=@selftest_shrdir@
 smbtorture4_path=@smbtorture4_path@
 
 LIBS=@LIBS@
@@ -74,6 +75,7 @@ POPT_LIBS=@POPTLIBS@
 LIBTALLOC_LIBS=@LIBTALLOC_LIBS@
 LIBTDB_LIBS=@LIBTDB_LIBS@
 LIBNETAPI_LIBS=@LIBNETAPI_LIBS@
+LIBLUA_LIBS=@LIBLUA_LIBS@
 
 INSTALLCMD=@INSTALL@
 INSTALLLIBCMD_SH=@INSTALLLIBCMD_SH@
@@ -139,10 +141,13 @@ PRIVATE_DIR = $(PRIVATEDIR)
 # This is where SWAT images and help files go
 SWATDIR = @swatdir@
 
+# This is where locale(mo) files go
+LOCALEDIR= @localedir@
+
 # the directory where lock files go
 LOCKDIR = @lockdir@
 
-# FHS directories; equal to LOCKDIR if not using --with-fhs
+# FHS directories; equal to LOCKDIR if not using --with-fhs, but also settable
 CACHEDIR = @cachedir@
 STATEDIR = @statedir@
 
@@ -172,7 +177,8 @@ PATH_FLAGS = -DSMB_PASSWD_FILE=\"$(SMB_PASSWD_FILE)\" \
        -DCONFIGDIR=\"$(CONFIGDIR)\" \
        -DCODEPAGEDIR=\"$(CODEPAGEDIR)\" \
        -DCACHEDIR=\"$(CACHEDIR)\" \
-       -DSTATEDIR=\"$(STATEDIR)\"
+       -DSTATEDIR=\"$(STATEDIR)\" \
+       -DLOCALEDIR=\"$(LOCALEDIR)\"
 
 # Note that all executable programs now provide for an optional executable suffix.
 
@@ -186,7 +192,7 @@ BIN_PROGS2 = bin/smbcontrol@EXEEXT@ bin/smbtree@EXEEXT@ bin/tdbbackup@EXEEXT@ \
        bin/nmblookup@EXEEXT@ bin/pdbedit@EXEEXT@ bin/tdbdump@EXEEXT@ \
        bin/tdbtool@EXEEXT@
 BIN_PROGS3 = bin/smbpasswd@EXEEXT@ bin/rpcclient@EXEEXT@ bin/smbcacls@EXEEXT@ \
-       bin/profiles@EXEEXT@ bin/ntlm_auth@EXEEXT@ \
+       bin/profiles@EXEEXT@ bin/ntlm_auth@EXEEXT@ bin/sharesec@EXEEXT@ \
        bin/smbcquotas@EXEEXT@ bin/eventlogadm@EXEEXT@
 BIN_PROGS4 = bin/ldbedit@EXEEXT@ bin/ldbsearch@EXEEXT@ bin/ldbadd@EXEEXT@ \
        bin/ldbdel@EXEEXT@ bin/ldbmodify@EXEEXT@
@@ -203,7 +209,7 @@ BIN_PROGS = @EXTRA_BIN_PROGS@ \
 
 EVERYTHING_PROGS = bin/debug2html@EXEEXT@ bin/smbfilter@EXEEXT@ \
        bin/talloctort@EXEEXT@ bin/replacetort@EXEEXT@ \
-       bin/log2pcap@EXEEXT@ bin/sharesec@EXEEXT@ bin/ndrdump@EXEEXT@ \
+       bin/log2pcap@EXEEXT@ \
        bin/vlp@EXEEXT@ bin/smbiconv@EXEEXT@
 
 PAM_MODULES = @PAM_MODULES@
@@ -224,6 +230,8 @@ MODULES = $(VFS_MODULES) $(PDB_MODULES) $(RPC_MODULES) $(IDMAP_MODULES) \
           $(CHARSET_MODULES) $(AUTH_MODULES) $(NSS_INFO_MODULES) \
          $(GPEXT_MODULES)
 
+EXTRA_ALL_TARGETS = @EXTRA_ALL_TARGETS@
+
 ######################################################################
 # object file lists
 ######################################################################
@@ -237,7 +245,7 @@ SMBLDAP_OBJ = @SMBLDAP@ @SMBLDAPUTIL@
 
 VERSION_OBJ = lib/version.o
 
-WBCOMMON_OBJ = nsswitch/wb_common.o
+WBCOMMON_OBJ = ../nsswitch/wb_common.o
 
 AFS_OBJ = lib/afs.o
 
@@ -249,9 +257,9 @@ PASSCHANGE_OBJ = libsmb/passchange.o
 
 LIBNDR_DRSUAPI_OBJ = ../librpc/ndr/ndr_drsuapi.o \
                     ../librpc/ndr/ndr_compression.o \
-                    librpc/gen_ndr/ndr_drsuapi.o \
+                    ../librpc/gen_ndr/ndr_drsuapi.o \
                     ../librpc/ndr/ndr_drsblobs.o \
-                    librpc/gen_ndr/ndr_drsblobs.o
+                    ../librpc/gen_ndr/ndr_drsblobs.o
 
 ZLIB_OBJ = @ZLIB_OBJS@
 
@@ -265,9 +273,9 @@ DRSUAPI_OBJ = $(LIBNDR_DRSUAPI_OBJ) \
 LIBNDR_OBJ = ../librpc/ndr/ndr_basic.o \
             ../librpc/ndr/ndr.o \
             ../librpc/ndr/ndr_misc.o \
-            librpc/gen_ndr/ndr_misc.o \
-            librpc/gen_ndr/ndr_security.o \
-            librpc/ndr/ndr_sec_helper.o \
+            ../librpc/gen_ndr/ndr_misc.o \
+            ../librpc/gen_ndr/ndr_security.o \
+            ../librpc/ndr/ndr_sec_helper.o \
             librpc/ndr/ndr_string.o \
             librpc/ndr/sid.o \
             ../librpc/ndr/uuid.o \
@@ -275,25 +283,27 @@ LIBNDR_OBJ = ../librpc/ndr/ndr_basic.o \
 
 RPCCLIENT_NDR_OBJ = rpc_client/ndr.o
 
-LIBNDR_GEN_OBJ0 = librpc/gen_ndr/ndr_samr.o \
-                 librpc/gen_ndr/ndr_lsa.o
+LIBNDR_GEN_OBJ0 = ../librpc/gen_ndr/ndr_samr.o \
+                 ../librpc/gen_ndr/ndr_lsa.o
 
-LIBNDR_GEN_OBJ1 = librpc/gen_ndr/ndr_netlogon.o
+LIBNDR_GEN_OBJ1 = ../librpc/gen_ndr/ndr_netlogon.o \
+                 ../librpc/ndr/ndr_netlogon.o
 
-LIBNDR_GEN_OBJ = librpc/gen_ndr/ndr_wkssvc.o \
+LIBNDR_GEN_OBJ = ../librpc/gen_ndr/ndr_wkssvc.o \
                 $(LIBNDR_GEN_OBJ0) \
-                librpc/gen_ndr/ndr_dfs.o \
-                librpc/gen_ndr/ndr_echo.o \
-                librpc/gen_ndr/ndr_winreg.o \
-                librpc/gen_ndr/ndr_initshutdown.o \
-                librpc/gen_ndr/ndr_srvsvc.o \
-                librpc/gen_ndr/ndr_eventlog.o \
+                ../librpc/gen_ndr/ndr_dfs.o \
+                ../librpc/gen_ndr/ndr_echo.o \
+                ../librpc/gen_ndr/ndr_winreg.o \
+                ../librpc/gen_ndr/ndr_initshutdown.o \
+                ../librpc/gen_ndr/ndr_srvsvc.o \
+                ../librpc/gen_ndr/ndr_eventlog.o \
                 $(LIBNDR_GEN_OBJ1) \
-                librpc/gen_ndr/ndr_dssetup.o \
+                ../librpc/gen_ndr/ndr_dssetup.o \
                 librpc/gen_ndr/ndr_notify.o \
-                librpc/gen_ndr/ndr_xattr.o \
-                librpc/gen_ndr/ndr_epmapper.o \
-                librpc/gen_ndr/ndr_ntsvcs.o
+                ../librpc/gen_ndr/ndr_xattr.o \
+                ../librpc/gen_ndr/ndr_epmapper.o \
+                ../librpc/gen_ndr/ndr_named_pipe_auth.o \
+                ../librpc/gen_ndr/ndr_ntsvcs.o
 
 RPC_PARSE_OBJ0 = rpc_parse/parse_prs.o rpc_parse/parse_misc.o
 
@@ -303,8 +313,7 @@ RPC_PARSE_OBJ1 = $(RPC_PARSE_OBJ0) rpc_parse/parse_sec.o
 
 RPC_PARSE_OBJ2 = rpc_parse/parse_rpc.o \
                 rpc_client/init_netlogon.o \
-                rpc_client/init_lsa.o \
-                rpc_client/init_srvsvc.o
+                rpc_client/init_lsa.o
 
 LIBREPLACE_OBJ = @LIBREPLACE_OBJS@
 
@@ -320,7 +329,8 @@ UTIL_OBJ = ../lib/util/rbtree.o ../lib/util/signal.o ../lib/util/time.o \
                   ../lib/util/xfile.o ../lib/util/util_strlist.o  \
                   ../lib/util/util_file.o ../lib/util/data_blob.o \
                   ../lib/util/util.o ../lib/util/fsusage.o \
-                  ../lib/util/params.o 
+                  ../lib/util/params.o ../lib/util/talloc_stack.o \
+                  ../lib/util/genrand.o ../lib/util/util_net.o
 
 CRYPTO_OBJ = ../lib/crypto/crc32.o ../lib/crypto/md5.o \
                         ../lib/crypto/hmacmd5.o ../lib/crypto/arcfour.o \
@@ -328,7 +338,7 @@ 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/talloc_stack.o \
+         lib/messages_ctdbd.o lib/packet.o lib/ctdbd_conn.o \
          lib/interfaces.o lib/memcache.o \
          lib/util_transfer_file.o lib/async_req.o \
          lib/async_sock.o \
@@ -336,7 +346,7 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
          $(VERSION_OBJ) lib/charcnv.o lib/debug.o lib/fault.o \
          lib/interface.o lib/pidfile.o \
          lib/system.o lib/sendfile.o lib/recvfile.o lib/time.o \
-         lib/genrand.o lib/username.o \
+         lib/username.o \
          lib/util_pw.o lib/access.o lib/smbrun.o \
          lib/bitmap.o lib/dprintf.o $(UTIL_REG_OBJ) \
          lib/wins_srv.o \
@@ -348,7 +358,8 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
          lib/tallocmsg.o lib/dmallocmsg.o libsmb/smb_signing.o \
          lib/iconv.o lib/pam_errors.o intl/lang_tdb.o lib/conn_tdb.o \
          lib/adt_tree.o lib/gencache.o \
-         lib/module.o lib/events.o lib/ldap_escape.o @CHARSET_STATIC@ \
+         lib/module.o lib/events.o @LIBTEVENT_OBJ0@ \
+         lib/ldap_escape.o @CHARSET_STATIC@ \
          lib/secdesc.o lib/util_seaccess.o lib/secace.o lib/secacl.o \
          libads/krb5_errs.o lib/system_smbd.o lib/audit.o $(LIBNDR_OBJ) \
          lib/file_id.o lib/idmap_cache.o
@@ -389,23 +400,24 @@ LIBADS_OBJ = libads/ldap.o libads/ldap_printer.o \
 
 LIBADS_SERVER_OBJ = libads/kerberos_verify.o libads/authdata.o \
                    ../librpc/ndr/ndr_krb5pac.o \
-                   librpc/gen_ndr/ndr_krb5pac.o
+                   ../librpc/gen_ndr/ndr_krb5pac.o
 
 SECRETS_OBJ = passdb/secrets.o passdb/machine_sid.o
 
 LIBNBT_OBJ = ../libcli/nbt/nbtname.o \
             ../libcli/netlogon.o \
             ../libcli/ndr_netlogon.o \
-            librpc/gen_ndr/ndr_nbt.o \
-            librpc/gen_ndr/ndr_svcctl.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 libsmb/conncache.o libads/dns.o
 
 NTERR_OBJ = libsmb/nterr.o
-DOSERR_OBJ = libsmb/doserr.o
+DOSERR_OBJ = ../libcli/util/doserr.o
 ERRORMAP_OBJ = libsmb/errormap.o
-DCE_RPC_ERR_OBJ = libsmb/dcerpc_err.o
+DCE_RPC_ERR_OBJ = ../librpc/rpc/dcerpc_error.o
 
 LIBSMB_ERR_OBJ0 = $(NTERR_OBJ) $(DOSERR_OBJ) $(ERRORMAP_OBJ) $(DCE_RPC_ERR_OBJ) \
                  libsmb/smbdes.o libsmb/smbencrypt.o libsmb/ntlmssp_parse.o
@@ -425,7 +437,7 @@ LIBSAMBA_OBJ = $(LIBSMB_OBJ0) \
 CLDAP_OBJ = libads/cldap.o
 
 LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
-            libsmb/clikrb5.o libsmb/clispnego.o libsmb/asn1.o \
+            libsmb/clikrb5.o libsmb/clispnego.o ../lib/util/asn1.o \
             libsmb/clirap.o libsmb/clierror.o libsmb/climessage.o \
             libsmb/clireadwrite.o libsmb/clilist.o libsmb/cliprint.o \
             libsmb/clitrans.o libsmb/clisecdesc.o libsmb/clidgram.o \
@@ -444,26 +456,25 @@ RPC_CLIENT_OBJ1 = rpc_client/cli_netlogon.o
 LIBMSRPC_OBJ = rpc_client/cli_lsarpc.o rpc_client/cli_samr.o \
               $(RPC_CLIENT_OBJ1) rpc_client/cli_reg.o $(RPC_CLIENT_OBJ) \
               rpc_client/cli_spoolss.o rpc_client/cli_spoolss_notify.o  \
-              rpc_client/cli_svcctl.o \
               rpc_client/init_samr.o \
                   librpc/rpc/dcerpc.o \
                   ../librpc/rpc/binding.o
 
-LIBMSRPC_GEN_OBJ = librpc/gen_ndr/cli_lsa.o \
-                  librpc/gen_ndr/cli_dfs.o \
-                  librpc/gen_ndr/cli_echo.o \
-                  librpc/gen_ndr/cli_srvsvc.o \
-                  librpc/gen_ndr/cli_svcctl.o \
-                  librpc/gen_ndr/cli_winreg.o \
-                  librpc/gen_ndr/cli_initshutdown.o \
-                  librpc/gen_ndr/cli_eventlog.o \
-                  librpc/gen_ndr/cli_wkssvc.o \
-                  librpc/gen_ndr/cli_netlogon.o \
-                  librpc/gen_ndr/cli_samr.o \
-                  librpc/gen_ndr/cli_dssetup.o \
-                  librpc/gen_ndr/cli_ntsvcs.o \
-                  librpc/gen_ndr/cli_epmapper.o \
-                  librpc/gen_ndr/cli_drsuapi.o \
+LIBMSRPC_GEN_OBJ = ../librpc/gen_ndr/cli_lsa.o \
+                  ../librpc/gen_ndr/cli_dfs.o \
+                  ../librpc/gen_ndr/cli_echo.o \
+                  ../librpc/gen_ndr/cli_srvsvc.o \
+                  ../librpc/gen_ndr/cli_svcctl.o \
+                  ../librpc/gen_ndr/cli_winreg.o \
+                  ../librpc/gen_ndr/cli_initshutdown.o \
+                  ../librpc/gen_ndr/cli_eventlog.o \
+                  ../librpc/gen_ndr/cli_wkssvc.o \
+                  ../librpc/gen_ndr/cli_netlogon.o \
+                  ../librpc/gen_ndr/cli_samr.o \
+                  ../librpc/gen_ndr/cli_dssetup.o \
+                  ../librpc/gen_ndr/cli_ntsvcs.o \
+                  ../librpc/gen_ndr/cli_epmapper.o \
+                  ../librpc/gen_ndr/cli_drsuapi.o \
                   $(LIBNDR_GEN_OBJ) \
                   $(RPCCLIENT_NDR_OBJ)
 
@@ -517,54 +528,53 @@ REG_FULL_OBJ = $(REG_SMBCONF_OBJ) \
               registry/reg_util_legacy.o
 
 
-RPC_LSA_OBJ = rpc_server/srv_lsa_nt.o librpc/gen_ndr/srv_lsa.o
+RPC_LSA_OBJ = rpc_server/srv_lsa_nt.o ../librpc/gen_ndr/srv_lsa.o
 
 RPC_NETLOG_OBJ = rpc_server/srv_netlog_nt.o \
-                librpc/gen_ndr/srv_netlogon.o
+                ../librpc/gen_ndr/srv_netlogon.o
 
 RPC_SAMR_OBJ = rpc_server/srv_samr_nt.o \
                rpc_server/srv_samr_util.o \
-              librpc/gen_ndr/srv_samr.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/srv_initshutdown_nt.o
 
 RPC_REG_OBJ =  rpc_server/srv_winreg_nt.o \
-              librpc/gen_ndr/srv_winreg.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/srv_dssetup_nt.o ../librpc/gen_ndr/srv_dssetup.o
 
 RPC_SVC_OBJ = rpc_server/srv_srvsvc_nt.o \
-             librpc/gen_ndr/srv_srvsvc.o
+             ../librpc/gen_ndr/srv_srvsvc.o
 
-RPC_WKS_OBJ =  librpc/gen_ndr/srv_wkssvc.o rpc_server/srv_wkssvc_nt.o
+RPC_WKS_OBJ =  ../librpc/gen_ndr/srv_wkssvc.o rpc_server/srv_wkssvc_nt.o
 
-RPC_SVCCTL_OBJ =  rpc_server/srv_svcctl.o rpc_server/srv_svcctl_nt.o \
-                 librpc/gen_ndr/srv_svcctl.o \
+RPC_SVCCTL_OBJ =  rpc_server/srv_svcctl_nt.o \
+                 ../librpc/gen_ndr/srv_svcctl.o \
                   services/svc_spoolss.o services/svc_rcinit.o services/services_db.o \
                   services/svc_netlogon.o services/svc_winreg.o \
                   services/svc_wins.o
 
-RPC_NTSVCS_OBJ = rpc_server/srv_ntsvcs.o rpc_server/srv_ntsvcs_nt.o \
-                librpc/gen_ndr/srv_ntsvcs.o
+RPC_NTSVCS_OBJ = rpc_server/srv_ntsvcs_nt.o \
+                ../librpc/gen_ndr/srv_ntsvcs.o
 
-RPC_DFS_OBJ =  librpc/gen_ndr/srv_dfs.o rpc_server/srv_dfs_nt.o
+RPC_DFS_OBJ =  ../librpc/gen_ndr/srv_dfs.o rpc_server/srv_dfs_nt.o
 
 RPC_SPOOLSS_OBJ = rpc_server/srv_spoolss.o rpc_server/srv_spoolss_nt.o
 
 RPC_EVENTLOG_OBJ = rpc_server/srv_eventlog.o rpc_server/srv_eventlog_nt.o \
-                  rpc_server/srv_eventlog_lib.o librpc/gen_ndr/srv_eventlog.o
+                  rpc_server/srv_eventlog_lib.o ../librpc/gen_ndr/srv_eventlog.o
 
 RPC_PIPE_OBJ = rpc_server/srv_pipe_hnd.o \
                rpc_server/srv_pipe.o rpc_server/srv_lsa_hnd.o
 
-RPC_ECHO_OBJ = rpc_server/srv_echo_nt.o librpc/gen_ndr/srv_echo.o
+RPC_ECHO_OBJ = rpc_server/srv_echo_nt.o ../librpc/gen_ndr/srv_echo.o
 
 RPC_SERVER_OBJ = @RPC_STATIC@ $(RPC_PIPE_OBJ)
 
 RPC_PARSE_OBJ = $(RPC_PARSE_OBJ2) \
                 rpc_parse/parse_spoolss.o \
-               rpc_parse/parse_eventlog.o rpc_parse/parse_buffer.o \
-                rpc_parse/parse_ntsvcs.o rpc_parse/parse_svcctl.o
+               rpc_parse/parse_eventlog.o rpc_parse/parse_buffer.o
 
 RPC_CLIENT_OBJ = rpc_client/cli_pipe.o
 
@@ -638,7 +648,10 @@ VFS_FILEID_OBJ = modules/vfs_fileid.o
 VFS_AIO_FORK_OBJ = modules/vfs_aio_fork.o
 VFS_SYNCOPS_OBJ = modules/vfs_syncops.o
 VFS_ACL_XATTR_OBJ = modules/vfs_acl_xattr.o
+VFS_ACL_TDB_OBJ = modules/vfs_acl_tdb.o
 VFS_SMB_TRAFFIC_ANALYZER_OBJ = modules/vfs_smb_traffic_analyzer.o
+VFS_ONEFS_OBJ = modules/vfs_onefs.o modules/onefs_acl.o modules/onefs_system.o \
+               modules/onefs_open.o modules/onefs_streams.o
 
 PLAINTEXT_AUTH_OBJ = auth/pampass.o auth/pass_check.o
 
@@ -684,7 +697,7 @@ SMBD_OBJ_SRV = smbd/files.o smbd/chgpasswd.o smbd/connection.o \
               $(AFS_SETTOKEN_OBJ) smbd/aio.o smbd/statvfs.o \
               smbd/dmapi.o \
               smbd/file_access.o \
-              smbd/dnsregister.o \
+              smbd/dnsregister.o smbd/globals.o \
               $(MANGLE_OBJ) @VFS_STATIC@
 
 SMBD_OBJ_BASE = $(PARAM_WITHOUT_REG_OBJ) $(SMBD_OBJ_SRV) $(LIBSMB_OBJ) \
@@ -729,7 +742,7 @@ NMBD_OBJ = $(NMBD_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
 SWAT_OBJ1 = web/cgi.o web/diagnose.o web/startstop.o web/statuspage.o \
            web/swat.o web/neg_lang.o
 
-SWAT_OBJ = $(SWAT_OBJ1) $(PARAM_OBJ) $(PRINTING_OBJ) $(LIBSMB_OBJ) \
+SWAT_OBJ = $(SWAT_OBJ1) $(PARAM_OBJ) $(PRINTING_OBJ) $(PRINTBASE_OBJ) $(LIBSMB_OBJ) \
           $(LOCKING_OBJ) $(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(KRBCLIENT_OBJ) \
           $(LIB_NONSMBD_OBJ) $(GROUPDB_OBJ) $(PLAINTEXT_AUTH_OBJ) \
           $(POPT_LIB_OBJ) $(SMBLDAP_OBJ) $(RPC_PARSE_OBJ) $(LIBMSRPC_GEN_OBJ) $(LIBMSRPC_OBJ) \
@@ -772,7 +785,7 @@ SMBPASSWD_OBJ = utils/smbpasswd.o $(PASSWD_UTIL_OBJ) $(PASSCHANGE_OBJ) \
 PDBEDIT_OBJ = utils/pdbedit.o $(PASSWD_UTIL_OBJ) $(PARAM_OBJ) $(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ \
                $(LIBSAMBA_OBJ) \
                $(LIB_NONSMBD_OBJ) $(GROUPDB_OBJ) \
-               $(POPT_LIB_OBJ) $(SMBLDAP_OBJ) libsmb/asn1.o \
+               $(POPT_LIB_OBJ) $(SMBLDAP_OBJ) ../lib/util/asn1.o \
                $(LDB_OBJ)
 
 SMBGET_OBJ = utils/smbget.o $(POPT_LIB_OBJ) $(LIBSMBCLIENT_OBJ1) @LIBWBCLIENT_STATIC@
@@ -782,11 +795,11 @@ DISPLAY_SEC_OBJ= lib/display_sec.o
 RPCCLIENT_OBJ1 = rpcclient/rpcclient.o rpcclient/cmd_lsarpc.o \
                 rpcclient/cmd_samr.o rpcclient/cmd_spoolss.o \
                 rpcclient/cmd_netlogon.o rpcclient/cmd_srvsvc.o \
-                rpcclient/cmd_dfs.o \
+                rpcclient/cmd_dfs.o rpcclient/cmd_epmapper.o \
                 rpcclient/cmd_dssetup.o rpcclient/cmd_echo.o \
                 rpcclient/cmd_shutdown.o rpcclient/cmd_test.o \
                 rpcclient/cmd_wkssvc.o rpcclient/cmd_ntsvcs.o \
-                rpcclient/cmd_drsuapi.o \
+                rpcclient/cmd_drsuapi.o rpcclient/cmd_eventlog.o \
                 $(DISPLAY_SEC_OBJ)
 
 RPCCLIENT_OBJ = $(RPCCLIENT_OBJ1) \
@@ -796,7 +809,7 @@ RPCCLIENT_OBJ = $(RPCCLIENT_OBJ1) \
             $(LIBADS_OBJ) $(POPT_LIB_OBJ) \
             $(SMBLDAP_OBJ) $(DCUTIL_OBJ) $(LDB_OBJ) 
 
-PAM_WINBIND_OBJ = nsswitch/pam_winbind.o $(WBCOMMON_OBJ) \
+PAM_WINBIND_OBJ = ../nsswitch/pam_winbind.o localedir.o $(WBCOMMON_OBJ) \
                  $(LIBREPLACE_OBJ) @BUILD_INIPARSER@
 
 LIBSMBCLIENT_OBJ0 = \
@@ -843,9 +856,10 @@ CLIENT_OBJ = $(CLIENT_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) \
              $(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(SMBLDAP_OBJ) $(GROUPDB_OBJ) $(LDB_OBJ) \
             $(DISPLAY_SEC_OBJ)
 
-LIBSMBCONF_OBJ = lib/smbconf/smbconf.o lib/smbconf/smbconf_util.o \
+LIBSMBCONF_OBJ = ../lib/smbconf/smbconf.o \
+                ../lib/smbconf/smbconf_util.o \
+                ../lib/smbconf/smbconf_txt.o \
                 lib/smbconf/smbconf_reg.o \
-                lib/smbconf/smbconf_txt.o \
                 lib/smbconf/smbconf_init.o
 
 SMBCONFTORT_OBJ0 = lib/smbconf/testsuite.o
@@ -878,7 +892,7 @@ NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
           $(PASSWD_UTIL_OBJ) utils/net_dns.o utils/net_ads_gpo.o \
           utils/net_conf.o utils/net_join.o utils/net_user.o \
           utils/net_group.o utils/net_file.o utils/net_registry.o \
-          auth/token_util.o utils/net_dom.o utils/net_share.o
+          auth/token_util.o utils/net_dom.o utils/net_share.o utils/net_lua.o
 
 # these are not processed by make proto
 NET_OBJ2 = utils/net_registry_util.o utils/net_help_common.o
@@ -902,9 +916,9 @@ CUPS_OBJ = client/smbspool.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
          $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(POPT_LIB_OBJ) \
          $(LIBNDR_GEN_OBJ0)
 
-CIFS_MOUNT_OBJ = client/mount.cifs.o
+CIFS_MOUNT_OBJ = client/mount.cifs.o client/mtab.o
 
-CIFS_UMOUNT_OBJ = client/umount.cifs.o
+CIFS_UMOUNT_OBJ = client/umount.cifs.o client/mtab.o
 
 CIFS_UPCALL_OBJ = client/cifs.upcall.o
 
@@ -916,11 +930,12 @@ SMBTORTURE_OBJ1 = torture/torture.o torture/nbio.o torture/scanner.o torture/uta
 
 SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) \
        $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
+       lib/wb_reqtrans.o lib/wbclient.o \
        $(LIBNDR_GEN_OBJ0)
 
 MASKTEST_OBJ = torture/masktest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
                  $(LIB_NONSMBD_OBJ) \
-                $(LIBNDR_GEN_OBJ0) $(ZLIB_LIBS)
+                $(LIBNDR_GEN_OBJ0)
 
 MSGTEST_OBJ = torture/msgtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
                  $(LIB_NONSMBD_OBJ) \
@@ -928,7 +943,7 @@ MSGTEST_OBJ = torture/msgtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
 
 LOCKTEST_OBJ = torture/locktest.o $(PARAM_OBJ) $(LOCKING_OBJ) $(KRBCLIENT_OBJ) \
                $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) \
-               $(LIBNDR_GEN_OBJ0) $(ZLIB_LIBS)
+               $(LIBNDR_GEN_OBJ0)
 
 NSSTEST_OBJ = torture/nsstest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
                  $(LIB_NONSMBD_OBJ) \
@@ -947,7 +962,7 @@ LOG2PCAP_OBJ = utils/log2pcaphex.o
 
 LOCKTEST2_OBJ = torture/locktest2.o $(PARAM_OBJ) $(LOCKING_OBJ) $(LIBSMB_OBJ) \
                $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
-               $(LIBNDR_GEN_OBJ0) $(ZLIB_LIBS)
+               $(LIBNDR_GEN_OBJ0)
 
 SMBCACLS_OBJ = utils/smbcacls.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
                $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) $(RPC_PARSE_OBJ) \
@@ -981,22 +996,13 @@ REPLACETORT_OBJ = @libreplacedir@/test/testsuite.o \
                @libreplacedir@/test/main.o \
                $(LIBREPLACE_OBJ)
 
-NDRDUMP_OBJ = ../librpc/tools/ndrdump.o \
-             $(PARAM_OBJ) $(LIBNDR_GEN_OBJ) \
-             $(LIBSAMBA_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) \
-                 $(LIBNDR_DRSUAPI_OBJ) $(COMPRESSION_OBJ) \
-             librpc/gen_ndr/ndr_svcctl.o \
-                 librpc/gen_ndr/tables.o ../librpc/ndr/ndr_table.o \
-             ../librpc/ndr/ndr_krb5pac.o \
-                 librpc/gen_ndr/ndr_krb5pac.o libsmb/asn1.o
-
 DEBUG2HTML_OBJ = utils/debug2html.o utils/debugparse.o
 
 SMBFILTER_OBJ = utils/smbfilter.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
                  $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) \
                 $(LIBNDR_GEN_OBJ0)
 
-WINBIND_WINS_NSS_OBJ = nsswitch/wins.o $(PARAM_OBJ) \
+WINBIND_WINS_NSS_OBJ = ../nsswitch/wins.o $(PARAM_OBJ) \
        $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) $(NSSWINS_OBJ) $(KRBCLIENT_OBJ) \
        $(LIBNDR_GEN_OBJ0)
 
@@ -1059,7 +1065,7 @@ WINBINDD_OBJ = \
                $(AFS_OBJ) $(AFS_SETTOKEN_OBJ) \
                $(LIBADS_SERVER_OBJ) $(SERVER_MUTEX_OBJ) $(LDB_OBJ) 
 
-WBINFO_OBJ = nsswitch/wbinfo.o $(LIBSAMBA_OBJ) $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) \
+WBINFO_OBJ = ../nsswitch/wbinfo.o $(LIBSAMBA_OBJ) $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) \
                $(POPT_LIB_OBJ) $(AFS_SETTOKEN_OBJ) \
                lib/winbind_util.o $(WBCOMMON_OBJ) @LIBWBCLIENT_STATIC@
 
@@ -1096,7 +1102,7 @@ LDBADD_OBJ = $(LDB_CMDLINE_OBJ) lib/ldb/tools/ldbadd.o
 LDBDEL_OBJ = $(LDB_CMDLINE_OBJ) lib/ldb/tools/ldbdel.o
 LDBMODIFY_OBJ = $(LDB_CMDLINE_OBJ) lib/ldb/tools/ldbmodify.o
 
-WINBIND_KRB5_LOCATOR_OBJ1 = nsswitch/winbind_krb5_locator.o
+WINBIND_KRB5_LOCATOR_OBJ1 = ../nsswitch/winbind_krb5_locator.o
 WINBIND_KRB5_LOCATOR_OBJ = $(WINBIND_KRB5_LOCATOR_OBJ1) $(LIBREPLACE_OBJ)
 
 POPT_OBJ=../lib/popt/findme.o ../lib/popt/popt.o ../lib/popt/poptconfig.o \
@@ -1121,7 +1127,7 @@ TDBTORTURE_OBJ = @tdbdir@/tools/tdbtorture.o @LIBTDB_STATIC@ $(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) \
-               libsmb/asn1.o libsmb/spnego.o libsmb/clikrb5.o libads/kerberos.o \
+               ../lib/util/asn1.o libsmb/spnego.o libsmb/clikrb5.o libads/kerberos.o \
                $(SERVER_MUTEX_OBJ) $(LIBADS_SERVER_OBJ) \
                $(PASSDB_OBJ) $(GROUPDB_OBJ) \
                $(SMBLDAP_OBJ) $(LIBNMB_OBJ) \
@@ -1154,8 +1160,11 @@ RPC_OPEN_TCP_OBJ = torture/rpc_open_tcp.o \
 ######################################################################
 # now the rules...
 ######################################################################
-all:: SHOWFLAGS libs $(SBIN_PROGS) $(BIN_PROGS) $(ROOT_SBIN_PROGS) \
-       $(MODULES) $(NSS_MODULES) $(PAM_MODULES) @EXTRA_ALL_TARGETS@
+all:: SHOWFLAGS basics libs $(SBIN_PROGS) $(BIN_PROGS) $(ROOT_SBIN_PROGS) \
+       $(MODULES) $(NSS_MODULES) $(PAM_MODULES) @CIFSUPCALL_PROGS@ \
+       $(EXTRA_ALL_TARGETS)
+
+basics::
 
 nss_modules:: $(NSS_MODULES)
 
@@ -1167,7 +1176,7 @@ pam_winbind: SHOWFLAGS bin/pam_winbind.@SHLIBEXT@
 
 gpext_modules:: $(GPEXT_MODULES)
 
-torture:: SHOWFLAGS $(TORTURE_PROGS) 
+torture:: SHOWFLAGS basics $(TORTURE_PROGS) 
 
 smbtorture : SHOWFLAGS bin/smbtorture@EXEEXT@
 
@@ -1210,20 +1219,11 @@ modules:: SHOWFLAGS $(MODULES)
 #####################################################################
 ## Perl IDL Compiler
 samba3-idl::
-       @PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
-        srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh librpc/idl/lsa.idl \
-               ../librpc/idl/dfs.idl ../librpc/idl/echo.idl ../librpc/idl/winreg.idl \
-               ../librpc/idl/initshutdown.idl librpc/idl/srvsvc.idl ../librpc/idl/svcctl.idl \
-               ../librpc/idl/eventlog.idl ../librpc/idl/wkssvc.idl librpc/idl/netlogon.idl \
-               ../librpc/idl/notify.idl ../librpc/idl/epmapper.idl librpc/idl/messaging.idl \
-               ../librpc/idl/xattr.idl ../librpc/idl/misc.idl librpc/idl/samr.idl \
-               ../librpc/idl/security.idl ../librpc/idl/dssetup.idl ../librpc/idl/krb5pac.idl \
-               ../librpc/idl/ntsvcs.idl librpc/idl/libnetapi.idl ../librpc/idl/drsuapi.idl \
-               ../librpc/idl/drsblobs.idl ../librpc/idl/nbt.idl
-
-librpc/gen_ndr/tables.c:: librpc/gen_ndr/*.h
-       @echo "Generating $@"
-       @$(PERL) ../librpc/tables.pl $^ > $@
+       @PIDL_OUTPUTDIR="../librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
+        srcdir="$(srcdir)" ../librpc/build_idl.sh ../librpc/idl/*.idl
+       @PIDL_OUTPUTDIR="librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
+        srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh \
+               librpc/idl/messaging.idl librpc/idl/libnetapi.idl librpc/idl/notify.idl
 
 #####################################################################
 
@@ -1301,6 +1301,13 @@ dynconfig.o: dynconfig.c Makefile
                echo "$(COMPILE_CC_PATH)" 1>&2;\
                $(COMPILE_CC_PATH) >/dev/null 2>&1
 
+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;\
@@ -1365,12 +1372,12 @@ bin/smbclient@EXEEXT@: $(BINARY_PREREQS) $(CLIENT_OBJ) @BUILD_POPT@ @LIBTALLOC_S
                $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) $(DNSSD_LIBS) \
                $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(WINBIND_LIBS) $(ZLIB_LIBS)
 
-bin/net@EXEEXT@: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@ @LIBNETAPI_SHARED@
+bin/net@EXEEXT@: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@ @LIBNETAPI_SHARED@ @LIBLUA_SHARED@
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(NET_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
                $(POPT_LIBS) $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
                $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
-               @INIPARSERLIBS@ $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(WINBIND_LIBS) $(LIBNETAPI_LIBS) \
+               @INIPARSERLIBS@ $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(WINBIND_LIBS) $(LIBNETAPI_LIBS)  $(LIBLUA_LIBS) -lm \
                $(ZLIB_LIBS)
 
 bin/profiles@EXEEXT@: $(BINARY_PREREQS) $(PROFILES_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@
@@ -1544,11 +1551,6 @@ bin/locktest2@EXEEXT@: $(BINARY_PREREQS) $(LOCKTEST2_OBJ) @BUILD_POPT@ @LIBTALLO
                $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
                $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
 
-bin/ndrdump@EXEEXT@: $(BINARY_PREREQS) $(NDRDUMP_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@
-       @echo Linking $@
-       @$(CC) $(FLAGS) -o $@ $(NDRDUMP_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
-               $(POPT_LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
-
 bin/debug2html@EXEEXT@: $(BINARY_PREREQS) $(DEBUG2HTML_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(DEBUG2HTML_OBJ) $(LDFLAGS) $(DYNEXP) \
@@ -1646,7 +1648,7 @@ installlibtalloc:: installdirs libtalloc
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBTALLOC_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBTALLOC_SHARED_TARGET)`
-       -if test -e $(LIBTALLOC_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBTALLOC_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBTALLOC_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBTALLOC_SHARED_TARGET)` ; \
        fi
@@ -1713,7 +1715,7 @@ installlibtdb:: installdirs libtdb
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBTDB_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBTDB_SHARED_TARGET)`
-       -if test -e $(LIBTDB_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBTDB_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBTDB_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBTDB_SHARED_TARGET)` ; \
        fi
@@ -1739,13 +1741,13 @@ shlibs test_shlibs: @LIBTDB_SHARED@
 #
 #-------------------------------------------------------------------
 
-LIBWBCLIENT_OBJ0 = nsswitch/libwbclient/wbclient.o \
-                 nsswitch/libwbclient/wbc_util.o \
-                 nsswitch/libwbclient/wbc_pwd.o \
-                 nsswitch/libwbclient/wbc_idmap.o \
-                 nsswitch/libwbclient/wbc_sid.o \
-                 nsswitch/libwbclient/wbc_guid.o \
-                 nsswitch/libwbclient/wbc_pam.o
+LIBWBCLIENT_OBJ0 = ../nsswitch/libwbclient/wbclient.o \
+                 ../nsswitch/libwbclient/wbc_util.o \
+                 ../nsswitch/libwbclient/wbc_pwd.o \
+                 ../nsswitch/libwbclient/wbc_idmap.o \
+                 ../nsswitch/libwbclient/wbc_sid.o \
+                 ../nsswitch/libwbclient/wbc_guid.o \
+                 ../nsswitch/libwbclient/wbc_pam.o
 LIBWBCLIENT_OBJ = $(LIBWBCLIENT_OBJ0) \
                  $(WBCOMMON_OBJ) \
                  @LIBTALLOC_STATIC@ $(LIBREPLACE_OBJ)
@@ -1756,7 +1758,7 @@ LIBWBCLIENT_SHARED_TARGET_SONAME=$(LIBWBCLIENT_SHARED_TARGET).$(LIBWBCLIENT_SOVE
 LIBWBCLIENT_STATIC_TARGET=@LIBWBCLIENT_STATIC_TARGET@
 LIBWBCLIENT=@LIBWBCLIENT_STATIC@ @LIBWBCLIENT_SHARED@
 LIBWBCLIENT_SYMS=$(srcdir)/exports/libwbclient.@SYMSEXT@
-LIBWBCLIENT_HEADERS=$(srcdir)/nsswitch/libwbclient/wbclient.h
+LIBWBCLIENT_HEADERS=$(srcdir)/../nsswitch/libwbclient/wbclient.h
 
 $(LIBWBCLIENT_SYMS): $(LIBWBCLIENT_HEADERS)
        @$(MKSYMS_SH) $(AWK) $@ $(LIBWBCLIENT_HEADERS)
@@ -1787,7 +1789,7 @@ installlibwbclient:: installdirs libwbclient
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBWBCLIENT_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBWBCLIENT_SHARED_TARGET)`
-       -if test -e $(LIBWBCLIENT_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBWBCLIENT_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBWBCLIENT_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBWBCLIENT_SHARED_TARGET)` ; \
        fi
@@ -1847,7 +1849,7 @@ installlibaddns:: installdirs libaddns
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBADDNS_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBADDNS_SHARED_TARGET)`
-       -if test -e $(LIBADDNS_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBADDNS_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBADDNS_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBADDNS_SHARED_TARGET)` ; \
        fi
@@ -1934,7 +1936,7 @@ installlibnetapi:: installdirs libnetapi
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBNETAPI_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBNETAPI_SHARED_TARGET)`
-       -if test -e $(LIBNETAPI_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBNETAPI_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBNETAPI_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBNETAPI_SHARED_TARGET)` ; \
        fi
@@ -1998,7 +2000,7 @@ installlibsmbclient:: installdirs libsmbclient
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBSMBCLIENT_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBSMBCLIENT_SHARED_TARGET)`
-       -if test -e $(LIBSMBCLIENT_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBSMBCLIENT_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBSMBCLIENT_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBSMBCLIENT_SHARED_TARGET)` ; \
        fi
@@ -2070,7 +2072,7 @@ installlibsmbsharemodes:: installdirs libsmbsharemodes
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
        -$(INSTALLLIBCMD_SH) $(LIBSMBSHAREMODES_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBSMBSHAREMODES_SHARED_TARGET)`
-       -if test -e $(LIBSMBSHAREMODES_SHARED_TARGET_SONAME) ; then \
+       -if test -r $(LIBSMBSHAREMODES_SHARED_TARGET_SONAME) ; then \
                ln -s -f `basename $(LIBSMBSHAREMODES_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBSMBSHAREMODES_SHARED_TARGET)` ; \
        fi
@@ -2110,6 +2112,82 @@ bin/libbigballofmud.@SHLIBEXT@: $(BINARY_PREREQS) $(LIBBIGBALLOFMUD_OBJ) @LIBTAL
 # it can be fixed or if they just can't be called from a static
 # library.
 
+#-------------------------------------------------------------------
+#
+# libsmblua
+#
+#-------------------------------------------------------------------
+
+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_OBJ = $(LIBLUA_OBJ0)
+
+LIBLUA_SHARED_TARGET=@LIBLUA_SHARED_TARGET@
+LIBLUA_SOVER=@LIBLUA_SOVER@
+LIBLUA_SHARED_TARGET_SONAME=$(LIBLUA_SHARED_TARGET).$(LIBLUA_SOVER)
+LIBLUA_STATIC_TARGET=@LIBLUA_STATIC_TARGET@
+LIBLUA=$(LIBLUA_STATIC_TARGET) @LIBLUA_SHARED@
+LIBLUA_SYMS=$(srcdir)/exports/liblua.@SYMSEXT@
+LIBLUA_HEADERS=$(srcdir)/lua-5.1.4/src/lua.h
+
+$(LIBLUA_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBLUA_OBJ) $(LIBLUA_SYMS) @LIBTALLOC_SHARED@ @LIBTDB_SHARED@
+       @echo Linking shared library $@
+       @$(SHLD_DSO) $(LIBLUA_OBJ) \
+               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+               $(KRB5LIBS) $(LDAP_LIBS) \
+               @SONAMEFLAG@`basename $@`
+
+$(LIBLUA_SHARED_TARGET): $(LIBLUA_SHARED_TARGET_SONAME)
+       @rm -f $@
+       @ln -s -f `basename $(LIBLUA_SHARED_TARGET_SONAME)` $@
+
+$(LIBLUA_STATIC_TARGET): $(BINARY_PREREQS) $(LIBLUA_OBJ0)
+       @echo Linking non-shared library $@
+       @-$(AR) -rc $@ $(LIBLUA_OBJ0)
+
+liblua: $(LIBLUA)
+
+cleanliblua::
+       -rm -f \
+               $(LIBLUA_SHARED_TARGET) \
+               $(LIBLUA_SHARED_TARGET_SONAME) \
+               $(LIBLUA_STATIC_TARGET)
+
+installliblua:: installdirs liblua
+       @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
+       -$(INSTALLLIBCMD_SH) $(LIBLUA_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
+       @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET)`
+       -if test -e $(LIBLUA_SHARED_TARGET_SONAME) ; then \
+               ln -s -f `basename $(LIBLUA_SHARED_TARGET_SONAME)` \
+                       $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET)` ; \
+       fi
+       -$(INSTALLLIBCMD_A) $(LIBLUA_STATIC_TARGET) $(DESTDIR)$(LIBDIR)
+       @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) ${prefix}/include
+       -$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(LIBLUA_HEADERS) $(DESTDIR)${prefix}/include
+
+uninstallliblua::
+       -rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET)`
+       -$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET_SONAME)`
+       -$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_STATIC_TARGET)`
+       -rm -f $(DESTDIR)${prefix}/include/smb_share_modes.h
+
+libs:: liblua
+installlibs:: @INSTALL_LIBLUA@
+uninstalllibs:: @UNINSTALL_LIBLUA@
+cleanlibs:: cleanliblua
+shlibs test_shlibs: @LIBLUA_SHARED@
 
 
 #####################################################################
@@ -2450,6 +2528,14 @@ bin/smb_traffic_analyzer.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_SMB_TRAFFIC_ANALYZE
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_SMB_TRAFFIC_ANALYZER_OBJ)
 
+bin/acl_tdb.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_ACL_TDB_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_ACL_TDB_OBJ)
+
+bin/onefs.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_ONEFS_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_ONEFS_OBJ) @ONEFS_LIBS@
+
 bin/registry.@SHLIBEXT@: $(BINARY_PREREQS) libgpo/gpext/registry.o
        @echo "Building plugin $@"
        @$(SHLD_MODULE) libgpo/gpext/registry.o
@@ -2543,7 +2629,7 @@ bin/test_lp_load@EXEEXT@: $(BINARY_PREREQS) $(TEST_LP_LOAD_OBJ) @BUILD_POPT@ @LI
 
 install:: installservers installbin @INSTALL_CIFSMOUNT@ @INSTALL_CIFSUPCALL@ installman \
                installscripts installdat installmodules @SWAT_INSTALL_TARGETS@ \
-               @INSTALL_PAM_MODULES@ installlibs
+               @INSTALL_PAM_MODULES@ installlibs installmo
 
 install-everything:: install installmodules
 
@@ -2556,7 +2642,10 @@ install-everything:: install installmodules
 # is not used
 
 installdirs::
-       @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) $(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(MANDIR) $(CODEPAGEDIR) $(MODULESDIR)
+       @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) \
+               $(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) \
+               $(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(STATEDIR) \
+               $(CACHEDIR) $(MANDIR) $(CODEPAGEDIR) $(MODULESDIR) $(LOCALEDIR)
 
 installservers:: all installdirs
        @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(SBINDIR) $(SBIN_PROGS)
@@ -2622,6 +2711,9 @@ revert::
 installman:: installdirs
        @$(SHELL) $(srcdir)/script/installman.sh $(DESTDIR)$(MANDIR) $(srcdir) C "@ROFF@"
 
+installmo:: all installdirs
+       @$(SHELL) $(srcdir)/script/installmo.sh $(DESTDIR) $(LOCALEDIR) $(srcdir)
+
 .PHONY: showlayout
 
 showlayout::
@@ -2636,12 +2728,17 @@ showlayout::
        @echo "  privatedir:  $(PRIVATE_DIR)"
        @echo "  configdir:   $(CONFIGDIR)"
        @echo "  lockdir:     $(LOCKDIR)"
+       @echo "  statedir:    $(STATEDIR)"
+       @echo "  cachedir:    $(CACHEDIR)"
        @echo "  piddir:      $(PIDDIR)"
        @echo "  swatdir:     $(SWATDIR)"
        @echo "  codepagedir: $(CODEPAGEDIR)"
 
 
-uninstall:: uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ @UNINSTALL_CIFSUPCALL@ uninstallscripts uninstalldat uninstallswat uninstallmodules uninstalllibs @UNINSTALL_PAM_MODULES@
+uninstall:: uninstallmo uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ @UNINSTALL_CIFSUPCALL@ uninstallscripts uninstalldat uninstallswat uninstallmodules uninstalllibs @UNINSTALL_PAM_MODULES@
+
+uninstallmo::
+       @$(SHELL) $(srcdir)/script/uninstallmo.sh $(DESTDIR) $(LOCALEDIR) $(srcdir)
 
 uninstallman::
        @$(SHELL) $(srcdir)/script/uninstallman.sh $(DESTDIR)$(MANDIR) $(srcdir) C
@@ -2686,7 +2783,7 @@ uninstallpammodules::
        done
 
 # Toplevel clean files
-TOPFILES=dynconfig.o
+TOPFILES=dynconfig.o localedir.o
 
 cleanlibs::
        -rm -f ../lib/*/*.o ../lib/*/*/*.o \
@@ -2720,10 +2817,43 @@ proto::
 etags::
        etags `find $(srcdir) -name "*.[ch]"`
        etags --append `find $(srcdir)/../lib -name "*.[ch]"`
-       etags --append `find $(srcdir)/../source4 -name "*.[ch]"`
+       etags --append `find $(srcdir)/../librpc -name "*.[ch]"`
+       etags --append `find $(srcdir)/../libcli -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/client -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/auth -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/rpc_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/kdc -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/winbind -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/scripting -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/heimdal_build -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/libcli -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/ntp_signd -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/ldap_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/smb_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/include -name "*.[ch]"`
+       etags --append `find $(srcdir)/../nsswitch -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/cldap_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/utils -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/librpc -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/libnet -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/web_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/heimdal -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/wrepl_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/dynconfig -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/param -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/lib -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/nbt_server -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/build -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/ntvfs -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/torture -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/cluster -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/ntptr -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/smbd -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/script -name "*.[ch]"`
+       etags --append `find $(srcdir)/../source4/dsdb -name "*.[ch]"`
 
 ctags::
-       ctags `find $(srcdir)/.. -name "*.[ch]"`
+       ctags `find $(srcdir)/.. -name "*.[ch]" | grep -v include/proto\.h`
 
 realclean:: clean
        -rm -f config.log bin/.dummy script/findsmb script/gen-8bit-gap.sh
@@ -2765,7 +2895,8 @@ Makefile: $(srcdir)/Makefile.in config.status
 # Check shared libs for unresolved symbols
 test_shlibs:
        @echo "Testing $? "
-       @export $(LIB_PATH_VAR)=./bin && \
+       @$(LIB_PATH_VAR)=./bin && \
+       export $(LIB_PATH_VAR) && \
        for module in $?; do \
                ./script/tests/dlopen.sh $${module} \
                        || exit 1; \
@@ -2774,7 +2905,8 @@ test_shlibs:
 # Check for NSS module problems.
 test_nss_modules:: nss_modules
        @echo "Testing $(NSS_MODULES) "
-       @export $(LIB_PATH_VAR)=./bin && \
+       @$(LIB_PATH_VAR)=./bin && \
+       export $(LIB_PATH_VAR) && \
        for module in $(NSS_MODULES); do \
                ./script/tests/dlopen.sh $${module} \
                        || exit 1; \
@@ -2784,7 +2916,8 @@ test_nss_modules:: nss_modules
 # built can actually be loaded by a minimal PAM-aware application.
 test_pam_modules:: pam_modules
        @echo "Testing $(PAM_MODULES) "
-       @export $(LIB_PATH_VAR)=./bin && \
+       @$(LIB_PATH_VAR)=./bin && \
+       export $(LIB_PATH_VAR) && \
        for module in $(PAM_MODULES); do \
                ./script/tests/dlopen.sh -lpam -ldl bin/$${module}.@SHLIBEXT@ \
                        || exit 1; \
@@ -2796,7 +2929,7 @@ test_pam_modules:: pam_modules
 ##
 test:: all torture timelimit
        @echo Running Test suite
-       @LIB_PATH_VAR=$(LIB_PATH_VAR) PERL="$(PERL)" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all "${smbtorture4_path}"
+       @LIB_PATH_VAR=$(LIB_PATH_VAR) PERL="$(PERL)" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all "${smbtorture4_path}" ${selftest_shrdir}
 
 valgrindtest:: all torture timelimit
        @echo Running Test suite with valgrind
@@ -2808,9 +2941,10 @@ valgrindtest:: all torture timelimit
         PERL="$(PERL)" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all "${smbtorture4_path}"
 
 SELFTEST_FORMAT = plain
+selftestdir = ../selftest
 
 selftest:: all torture timelimit
-       @../selftest/selftest.pl --prefix=st --target=samba3 \
+       @$(selftestdir)/selftest.pl --prefix=st --target=samba3 \
                --testlist="$(srcdir)/selftest/tests.sh|" \
                --expected-failures=$(srcdir)/selftest/knownfail \
                --exclude=$(srcdir)/selftest/skip \