s3:libsmb: add smb2cli_read*()
[sfrench/samba-autobuild/.git] / source3 / Makefile.in
index 5e7b63dae9deff5f763e7366cfe97c7189987082..85d3f3ee31e84cfc70ed499d756d04b2f4e32d82 100644 (file)
@@ -121,7 +121,6 @@ BASEDIR= @prefix@
 BINDIR = @bindir@
 # sbindir is mapped to bindir when compiling SAMBA in 2.0.x compatibility mode.
 SBINDIR = @sbindir@
-ROOTSBINDIR = @rootsbindir@
 LIBDIR = @libdir@
 MODULESDIR = @modulesdir@
 INCLUDEDIR=@includedir@
@@ -272,6 +271,7 @@ EXTRA_ALL_TARGETS = @EXTRA_ALL_TARGETS@
 ######################################################################
 
 TDB_LIB_OBJ = lib/util_tdb.o ../lib/util/util_tdb.o \
+         ../lib/util/tdb_wrap.o \
          lib/dbwrap.o lib/dbwrap_tdb.o \
          lib/dbwrap_ctdb.o \
          lib/g_lock.o \
@@ -321,7 +321,7 @@ LIBNDR_OBJ = ../librpc/ndr/ndr_basic.o \
             ../librpc/ndr/ndr_sec_helper.o \
             ../librpc/ndr/ndr_string.o \
             ../librpc/ndr/uuid.o \
-            librpc/ndr/util.o \
+            ../librpc/ndr/util.o \
             librpc/gen_ndr/ndr_server_id.o \
             librpc/gen_ndr/ndr_dcerpc.o
 
@@ -348,7 +348,9 @@ LIBNDR_XATTR_OBJ = librpc/gen_ndr/ndr_xattr.o \
 
 LIBCLI_SPOOLSS_OBJ = librpc/gen_ndr/ndr_spoolss_c.o \
                     rpc_client/cli_spoolss.o \
-                    rpc_client/init_spoolss.o
+                    rpc_client/init_spoolss.o \
+                    rpc_client/cli_winreg_spoolss.o \
+                    printing/nt_printing_os2.o
 
 LIBCLI_EVENTLOG_OBJ = librpc/gen_ndr/ndr_eventlog_c.o
 
@@ -420,7 +422,7 @@ LIBSAMBAUTIL_OBJ = \
 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/util.o ../lib/util/util_paths.o ../lib/util/fsusage.o \
                   ../lib/util/params.o ../lib/util/talloc_stack.o \
                   ../lib/util/genrand.o ../lib/util/util_net.o \
                   ../lib/util/become_daemon.o ../lib/util/system.o \
@@ -428,7 +430,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/util_pw.o
+                  ../lib/util/select.o ../lib/util/util_pw.o ../lib/util/server_id.o
 
 CRYPTO_OBJ = ../lib/crypto/crc32.o ../lib/crypto/md5.o \
                         ../lib/crypto/hmacmd5.o ../lib/crypto/arcfour.o \
@@ -436,10 +438,10 @@ CRYPTO_OBJ = ../lib/crypto/crc32.o ../lib/crypto/md5.o \
                         ../lib/crypto/sha256.o ../lib/crypto/hmacsha256.o \
                         ../lib/crypto/aes.o ../lib/crypto/rijndael-alg-fst.o
 
-LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
+LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) $(LIBTSOCKET_OBJ) \
          lib/messages.o librpc/gen_ndr/ndr_messaging.o lib/messages_local.o \
          lib/messages_ctdbd.o lib/ctdb_packet.o lib/ctdbd_conn.o \
-         lib/interfaces.o lib/memcache.o \
+         ../lib/socket/interfaces.o lib/memcache.o \
          lib/talloc_dict.o \
          lib/serverid.o \
          lib/util_sconn.o \
@@ -454,25 +456,27 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
          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/bitmap.o ../lib/util/dprintf.o $(UTIL_REG_OBJ) \
+         lib/wins_srv.o lib/string_init.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.o lib/util_malloc.o lib/namearray.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/util/substitute.o lib/dbwrap_util.o \
-         lib/ms_fnmatch.o lib/errmap_unix.o \
+         lib/substitute.o lib/substitute_generic.o ../lib/util/substitute.o lib/dbwrap_util.o \
+         lib/ms_fnmatch.o ../lib/util/ms_fnmatch.o lib/errmap_unix.o ../libcli/util/errmap_unix.o \
          lib/tallocmsg.o lib/dmallocmsg.o \
          libsmb/clisigning.o libsmb/smb_signing.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@ \
+         @CCAN_OBJ@ \
          lib/server_contexts.o \
          lib/ldap_escape.o @CHARSET_STATIC@ \
-         lib/secdesc.o ../libcli/security/access_check.o \
+         ../libcli/security/secdesc.o ../libcli/security/access_check.o \
          ../libcli/security/secace.o ../libcli/security/object_tree.o \
          ../libcli/security/sddl.o \
          ../libcli/security/secacl.o @PTHREADPOOL_OBJ@ \
@@ -483,7 +487,7 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
          ../libcli/security/security_token.o ../libcli/security/util_sid.o \
          ../libcli/smb/util.o
 
-LIB_DUMMY_OBJ = lib/dummysmbd.o lib/dummyroot.o
+LIB_DUMMY_OBJ = lib/smbd_shim.o lib/dummyparam.o
 LIB_NONSMBD_OBJ = $(LIB_OBJ) $(LIB_DUMMY_OBJ)
 
 READLINE_OBJ = ../libcli/smbreadline/smbreadline.o
@@ -539,9 +543,9 @@ LIBNMB_OBJ = libsmb/unexpected.o libsmb/namecache.o libsmb/nmblib.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
+NTERR_OBJ = ../libcli/util/nterr.o libsmb/smberr.o
 DOSERR_OBJ = ../libcli/util/doserr.o
-ERRORMAP_OBJ = libsmb/errormap.o
+ERRORMAP_OBJ = ../libcli/util/errormap.o libsmb/errormap.o
 DCE_RPC_ERR_OBJ = ../librpc/rpc/dcerpc_error.o
 
 LIBSMB_ERR_OBJ0 = $(NTERR_OBJ) $(DOSERR_OBJ) $(ERRORMAP_OBJ) $(DCE_RPC_ERR_OBJ)
@@ -574,7 +578,7 @@ LIBTSOCKET_OBJ = ../lib/tsocket/tsocket.o \
 CLDAP_OBJ = libads/cldap.o \
        ../libcli/cldap/cldap.o \
        ../lib/util/idtree.o \
-       $(LIBCLI_LDAP_MESSAGE_OBJ) $(LIBCLI_LDAP_NDR_OBJ) $(LIBTSOCKET_OBJ)
+       $(LIBCLI_LDAP_MESSAGE_OBJ) $(LIBCLI_LDAP_NDR_OBJ)
 
 TLDAP_OBJ = lib/tldap.o lib/tldap_util.o lib/util_tsock.o
 
@@ -587,12 +591,24 @@ LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
             libsmb/clikrb5.o ../libcli/auth/krb5_wrap.o libsmb/clispnego.o \
             ../libcli/auth/spnego_parse.o \
             ../lib/util/asn1.o \
+            libsmb/reparse_symlink.o \
+            libsmb/clisymlink.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 \
             libsmb/clistr.o libsmb/cliquota.o libsmb/clifsinfo.o libsmb/clidfs.o \
             libsmb/clioplock.o libsmb/clirap2.o \
             libsmb/smb_seal.o libsmb/async_smb.o \
+            libsmb/read_smb.o \
+            libsmb/smb2cli_base.o \
+            libsmb/smb2cli_negprot.o \
+            libsmb/smb2cli_session.o \
+            libsmb/smb2cli_tcon.o \
+            libsmb/smb2cli_create.o \
+            ../libcli/smb/smb2_create_blob.o \
+            libsmb/smb2cli_close.o \
+            libsmb/smb2cli_flush.o \
+            libsmb/smb2cli_read.o \
             libsmb/cli_np_tstream.o \
             libsmb/smbsock_connect.o \
             $(LIBSAMBA_OBJ) \
@@ -724,7 +740,8 @@ NPA_TSTREAM_OBJ = ../libcli/named_pipe_auth/npa_tstream.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/srv_access_check.o
+              rpc_server/rpc_handles.o rpc_server/rpc_contexts.o \
+              rpc_server/srv_access_check.o
 
 RPC_SERVICE = rpc_server/rpc_server.o
 
@@ -776,10 +793,10 @@ PASSDB_OBJ = $(PASSDB_GET_SET_OBJ) passdb/passdb.o passdb/pdb_interface.o \
                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
-CP437_OBJ = modules/CP437.o
-CHARSET_MACOSXFS_OBJ = modules/charset_macosxfs.o
+DEVEL_HELP_WEIRD_OBJ = ../lib/util/charset/weird.o
+CP850_OBJ = ../lib/util/charset/CP850.o
+CP437_OBJ = ../lib/util/charset/CP437.o
+CHARSET_MACOSXFS_OBJ = ../lib/util/charset/charset_macosxfs.o
 
 GROUPDB_OBJ = groupdb/mapping.o groupdb/mapping_tdb.o
 
@@ -829,6 +846,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
@@ -886,7 +904,7 @@ BUILDOPT_OBJ = smbd/build_options.o
 SMBD_OBJ_SRV = smbd/server_reload.o \
               smbd/files.o smbd/connection.o \
               smbd/utmp.o smbd/session.o \
-               smbd/dfree.o smbd/dir.o smbd/password.o smbd/conn.o \
+               smbd/dfree.o smbd/dir.o smbd/password.o smbd/conn.o smbd/conn_idle.o smbd/conn_msg.o \
               smbd/share_access.o smbd/fileio.o \
                smbd/ipc.o smbd/lanman.o smbd/negprot.o \
                smbd/message.o smbd/nttrans.o smbd/pipes.o \
@@ -895,12 +913,13 @@ SMBD_OBJ_SRV = smbd/server_reload.o \
               smbd/blocking.o smbd/sec_ctx.o smbd/srvstr.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 \
+              smbd/process.o smbd/service.o param/service.o smbd/error.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 \
+              lib/smbd_shim.o \
               smbd/fake_file.o \
               smbd/quotas.o smbd/ntquotas.o $(AFS_OBJ) smbd/msdfs.o \
               $(AFS_SETTOKEN_OBJ) smbd/aio.o smbd/statvfs.o \
@@ -926,7 +945,6 @@ SMBD_OBJ_SRV = smbd/server_reload.o \
               smbd/smb2_getinfo.o \
               smbd/smb2_setinfo.o \
               smbd/smb2_break.o \
-              ../libcli/smb/smb2_create_blob.o \
               $(MANGLE_OBJ) @VFS_STATIC@
 
 SMBD_OBJ_BASE = $(PARAM_WITHOUT_REG_OBJ) $(SMBD_OBJ_SRV) $(LIBSMB_OBJ) \
@@ -955,6 +973,7 @@ PRINTBACKEND_OBJ = printing/printing.o \
                   printing/nt_printing.o \
                   printing/nt_printing_tdb.o \
                   printing/nt_printing_migrate.o \
+                  printing/nt_printing_migrate_internal.o \
                   printing/nt_printing_ads.o \
                   librpc/gen_ndr/ndr_ntprinting.o \
                    ../librpc/ndr/ndr_ntprinting.o \
@@ -1029,9 +1048,10 @@ SMBPASSWD_OBJ = utils/smbpasswd.o $(PASSWD_UTIL_OBJ) $(PASSCHANGE_OBJ) \
                rpc_client/init_lsa.o
 
 PDBEDIT_OBJ = utils/pdbedit.o $(PASSWD_UTIL_OBJ) $(PARAM_OBJ) $(PASSDB_OBJ) \
-               $(LIBSAMBA_OBJ) $(LIBTSOCKET_OBJ) \
+               $(LIBSAMBA_OBJ) \
                $(LIB_NONSMBD_OBJ) $(GROUPDB_OBJ) \
                $(LIBCLI_LDAP_NDR_OBJ) \
+               $(DRSUAPI_OBJ) $(LIBNDR_GEN_OBJ0) \
                $(POPT_LIB_OBJ) $(SMBLDAP_OBJ) ../lib/util/asn1.o
 
 SMBGET_OBJ = utils/smbget.o $(POPT_LIB_OBJ) $(LIBSMBCLIENT_OBJ1)
@@ -1192,7 +1212,7 @@ NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
           rpc_client/init_samr.o \
           registry/reg_parse.o registry/reg_format.o \
           registry/reg_parse_internal.o registry/reg_import.o \
-          lib/cbuf.o lib/srprs.o
+          lib/cbuf.o lib/srprs.o printing/nt_printing_migrate.o
 
 # these are not processed by make proto
 NET_OBJ2 = utils/net_registry_util.o utils/net_help_common.o
@@ -1226,6 +1246,8 @@ 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_nttrans_create.o \
+               torture/test_notify_online.o \
                torture/test_addrchange.o \
                torture/test_case_insensitive.o \
                torture/test_posix_append.o
@@ -1314,7 +1336,8 @@ 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) $(PAM_ERRORS_OBJ)
+               $(DRSUAPI_OBJ) $(LIBNDR_GEN_OBJ0) \
+               $(PAM_ERRORS_OBJ)
 
 IDMAP_RW_OBJ = winbindd/idmap_rw.o
 
@@ -1342,7 +1365,8 @@ WINBINDD_OBJ1 = \
                winbindd/winbindd_pam.o   \
                winbindd/winbindd_misc.o  \
                winbindd/winbindd_cm.o    \
-               winbindd/winbindd_wins.o  \
+               winbindd/winbindd_wins_byip.o  \
+               winbindd/winbindd_wins_byname.o  \
                winbindd/winbindd_msrpc.o \
                winbindd/winbindd_rpc.o   \
                winbindd/winbindd_reconnect.o \
@@ -1491,10 +1515,11 @@ NTLM_AUTH_OBJ = ${NTLM_AUTH_OBJ1} $(LIBSAMBA_OBJ) $(POPT_LIB_OBJ) \
                ../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) \
+               $(PASSDB_OBJ) $(GROUPDB_OBJ) \
                $(SMBLDAP_OBJ) $(LIBNMB_OBJ) \
                $(WBCOMMON_OBJ) \
                $(LIBCLI_LDAP_NDR_OBJ) \
+               $(DRSUAPI_OBJ) \
                $(LIBNDR_GEN_OBJ0) $(LIBNDR_NETLOGON_OBJ) @BUILD_INIPARSER@
 
 
@@ -1537,7 +1562,7 @@ all:: SHOWFLAGS basics libs $(SBIN_PROGS) $(BIN_PROGS) \
        $(MODULES) $(NSS_MODULES) $(PAM_MODULES) \
        $(EXTRA_ALL_TARGETS)
 
-basics:: samba3-idl
+basics:: samba3-idl mkparam
 
 nss_modules:: $(NSS_MODULES)
 
@@ -1597,12 +1622,10 @@ modules:: SHOWFLAGS $(MODULES)
 
 IDL_FILES = librpc/idl/messaging.idl \
            librpc/idl/libnetapi.idl \
-           librpc/idl/notify.idl \
            librpc/idl/wbint.idl \
            librpc/idl/perfcount.idl \
            librpc/idl/secrets.idl \
-           librpc/idl/libnet_join.idl \
-           librpc/idl/server_id.idl
+           librpc/idl/libnet_join.idl
 
 samba3-idl::
        @PIDL_OUTPUTDIR="librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
@@ -1616,11 +1639,16 @@ idl_full::
        @PIDL_OUTPUTDIR="librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
         srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh --full $(IDL_FILES)
 
+mkparam:
+        $(PERL) ../script/mkparamdefs.pl $(srcdir)/param/loadparm.c --file param/param_local.h --generate-scope=LOCAL
+        $(PERL) ../script/mkparamdefs.pl $(srcdir)/param/loadparm.c --file param/param_global.h --generate-scope=GLOBAL
+
 #####################################################################
 
 
 everything:: all libtalloc libsmbclient libnetapi debug2html smbfilter talloctort replacetort smbconftort modules torture \
-       $(EVERYTHING_PROGS)
+       $(EVERYTHING_PROGS) \
+       vfs_examples
 
 .SUFFIXES:
 .SUFFIXES: .c .o .lo
@@ -1762,16 +1790,16 @@ lib/version.o: lib/version.c include/version.h
                echo "$(COMPILE_CC_PATH)" 1>&2;\
                $(COMPILE_CC_PATH) >/dev/null 2>&1
 
-smbd/build_options.o: smbd/build_options.c Makefile include/config.h include/build_env.h include/proto.h
+smbd/build_options.o: smbd/build_options.c Makefile include/autoconf/config.h include/build_env.h include/proto.h
        @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
 
-smbd/build_options.c: include/config.h.in script/mkbuildoptions.awk
+smbd/build_options.c: include/autoconf/config.h.in script/mkbuildoptions.awk
        @echo Generating $@
-       @dir=smbd $(MAKEDIR) && $(AWK) -f $(srcdir)/script/mkbuildoptions.awk > $(builddir)/smbd/build_options.c < $(srcdir)/include/config.h.in
+       @dir=smbd $(MAKEDIR) && $(AWK) -f $(srcdir)/script/mkbuildoptions.awk > $(builddir)/smbd/build_options.c < $(srcdir)/include/autoconf/config.h.in
 
 bin/.dummy:
        @if (: >> $@ || : > $@) >/dev/null 2>&1; then :; else \
@@ -1870,7 +1898,7 @@ bin/pdbedit@EXEEXT@: $(BINARY_PREREQS) $(PDBEDIT_OBJ) @BUILD_POPT@ $(LIBTALLOC)
        @echo Linking $@
        @$(CC) -o $@ $(PDBEDIT_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(POPT_LIBS) $(PASSDB_LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) \
-               $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS)
+               $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
 bin/smbget@EXEEXT@: $(BINARY_PREREQS) $(SMBGET_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
        @echo Linking $@
@@ -2026,7 +2054,9 @@ LIBTALLOC_OBJ = $(LIBTALLOC_OBJ0) $(LIBREPLACE_OBJ)
 
 LIBTALLOC_SHARED_TARGET=@LIBTALLOC_SHARED_TARGET@
 LIBTALLOC_SOVER=@LIBTALLOC_SOVER@
+LIBTALLOC_FULLVER=@LIBTALLOC_FULLVER@
 LIBTALLOC_SHARED_TARGET_SONAME=$(LIBTALLOC_SHARED_TARGET).$(LIBTALLOC_SOVER)
+LIBTALLOC_SHARED_TARGET_FULLVER=$(LIBTALLOC_SHARED_TARGET).$(LIBTALLOC_FULLVER)
 LIBTALLOC_STATIC_TARGET=@LIBTALLOC_STATIC_TARGET@
 LIBTALLOC_SYMS=$(srcdir)/exports/libtalloc.@SYMSEXT@
 LIBTALLOC_HEADERS=$(srcdir)/@tallocdir@/talloc.h
@@ -2038,7 +2068,12 @@ $(LIBTALLOC_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBTALLOC_OBJ) $(LIBTALLO
        @echo Linking shared library $@
        @$(SHLD_DSO) $(LIBTALLOC_OBJ) $(LIBREPLACE_LIBS) @SONAMEFLAG@`basename $@`
 
-$(LIBTALLOC_SHARED_TARGET): $(LIBTALLOC_SHARED_TARGET_SONAME)
+$(LIBTALLOC_SHARED_TARGET_FULLVER): $(LIBTALLOC_SHARED_TARGET_SONAME)
+       @rm -f $@
+       @mv -f $(LIBTALLOC_SHARED_TARGET_SONAME) $@
+       @ln -f -s `basename $@` $(LIBTALLOC_SHARED_TARGET_SONAME)
+
+$(LIBTALLOC_SHARED_TARGET): $(LIBTALLOC_SHARED_TARGET_FULLVER)
        @rm -f $@
        @ln -f -s `basename $(LIBTALLOC_SHARED_TARGET_SONAME)` $@
 
@@ -2056,8 +2091,13 @@ cleanlibtalloc::
 
 installlibtalloc:: installdirs libtalloc
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-       -$(INSTALLLIBCMD_SH) $(LIBTALLOC_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
+       -$(INSTALLLIBCMD_SH) $(LIBTALLOC_SHARED_TARGET_FULLVER) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBTALLOC_SHARED_TARGET)`
+       @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBTALLOC_SHARED_TARGET_SONAME)`
+       -if test -r $(LIBTALLOC_SHARED_TARGET_FULLVER) ; then \
+               ln -f -s `basename $(LIBTALLOC_SHARED_TARGET_FULLVER)` \
+                       $(DESTDIR)$(LIBDIR)/`basename $(LIBTALLOC_SHARED_TARGET_SONAME)` ; \
+       fi
        -if test -r $(LIBTALLOC_SHARED_TARGET_SONAME) ; then \
                ln -f -s `basename $(LIBTALLOC_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBTALLOC_SHARED_TARGET)` ; \
@@ -2080,15 +2120,17 @@ shlibs test_shlibs: @LIBTALLOC_SHARED@
 
 showlibtalloc:
        @echo  ""
-       @echo "LIBTALLOC_SHARED               = @LIBTALLOC_SHARED@"
-       @echo "LIBTALLOC_STATIC               = @LIBTALLOC_STATIC@"
-       @echo "LIBTALLOC_LIBS                 = $(LIBTALLOC_LIBS)"
+       @echo "LIBTALLOC_SHARED                = @LIBTALLOC_SHARED@"
+       @echo "LIBTALLOC_STATIC                = @LIBTALLOC_STATIC@"
+       @echo "LIBTALLOC_LIBS                  = $(LIBTALLOC_LIBS)"
        @echo ""
-       @echo "LIBTALLOC_SHARED_TARGET        = $(LIBTALLOC_SHARED_TARGET)"
-       @echo "LIBTALLOC_SOVER                = $(LIBTALLOC_SOVER)"
-       @echo "LIBTALLOC_SHARED TARGET_SONAME = $(LIBTALLOC_SHARED_TARGET_SONAME)"
-       @echo "LIBTALLOC_STATIC_TARGET        = $(LIBTALLOC_STATIC_TARGET)"
-       @echo "LIBTALLOC                      = $(LIBTALLOC)"
+       @echo "LIBTALLOC_SHARED_TARGET         = $(LIBTALLOC_SHARED_TARGET)"
+       @echo "LIBTALLOC_SOVER                 = $(LIBTALLOC_SOVER)"
+       @echo "LIBTALLOC_FULLVER               = $(LIBTALLOC_FULLVER)"
+       @echo "LIBTALLOC_SHARED TARGET_SONAME  = $(LIBTALLOC_SHARED_TARGET_SONAME)"
+       @echo "LIBTALLOC_SHARED TARGET_FULLVER = $(LIBTALLOC_SHARED_TARGET_FULLVER)"
+       @echo "LIBTALLOC_STATIC_TARGET         = $(LIBTALLOC_STATIC_TARGET)"
+       @echo "LIBTALLOC                       = $(LIBTALLOC)"
 
 showlibs:: showlibtalloc
 
@@ -2103,7 +2145,9 @@ LIBTDB_OBJ = $(LIBTDB_OBJ0) $(LIBREPLACE_OBJ)
 
 LIBTDB_SHARED_TARGET=@LIBTDB_SHARED_TARGET@
 LIBTDB_SOVER=@LIBTDB_SOVER@
+LIBTDB_FULLVER=@LIBTDB_FULLVER@
 LIBTDB_SHARED_TARGET_SONAME=$(LIBTDB_SHARED_TARGET).$(LIBTDB_SOVER)
+LIBTDB_SHARED_TARGET_FULLVER=$(LIBTDB_SHARED_TARGET).$(LIBTDB_FULLVER)
 LIBTDB_STATIC_TARGET=@LIBTDB_STATIC_TARGET@
 LIBTDB_SYMS=$(srcdir)/exports/libtdb.@SYMSEXT@
 LIBTDB_HEADERS=$(srcdir)/@tdbdir@/include/tdb.h
@@ -2111,12 +2155,18 @@ LIBTDB_HEADERS=$(srcdir)/@tdbdir@/include/tdb.h
 $(LIBTDB_SYMS): $(LIBTDB_HEADERS)
        @$(MKSYMS_SH) $(AWK) $@ $(LIBTDB_HEADERS)
 
+
 $(LIBTDB_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBTDB_OBJ) $(LIBTDB_SYMS)
        @echo Linking shared library $@
        @$(SHLD_DSO) $(LIBTDB_OBJ) $(LIBREPLACE_LIBS) $(TDB_DEPS) \
                @SONAMEFLAG@`basename $@`
 
-$(LIBTDB_SHARED_TARGET): $(LIBTDB_SHARED_TARGET_SONAME)
+$(LIBTDB_SHARED_TARGET_FULLVER): $(LIBTDB_SHARED_TARGET_SONAME)
+       @rm -f $@
+       @mv -f $(LIBTDB_SHARED_TARGET_SONAME) $(LIBTDB_SHARED_TARGET_FULLVER)
+       @ln -f -s `basename $(LIBTDB_SHARED_TARGET_FULLVER)` $(LIBTDB_SHARED_TARGET_SONAME)
+
+$(LIBTDB_SHARED_TARGET): $(LIBTDB_SHARED_TARGET_FULLVER)
        @rm -f $@
        @ln -f -s `basename $(LIBTDB_SHARED_TARGET_SONAME)` $@
 
@@ -2136,8 +2186,13 @@ cleanlibtdb::
 
 installlibtdb:: installdirs libtdb
        @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-       -$(INSTALLLIBCMD_SH) $(LIBTDB_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
+       -$(INSTALLLIBCMD_SH) $(LIBTDB_SHARED_TARGET_FULLVER) $(DESTDIR)$(LIBDIR)
        @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBTDB_SHARED_TARGET)`
+       @rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBTDB_SHARED_TARGET_SONAME)`
+       -if test -r $(LIBTDB_SHARED_TARGET_FULLVER) ; then \
+               ln -f -s `basename $(LIBTDB_SHARED_TARGET_FULLVER)` \
+                       $(DESTDIR)$(LIBDIR)/`basename $(LIBTDB_SHARED_TARGET_SONAME)` ; \
+       fi
        -if test -r $(LIBTDB_SHARED_TARGET_SONAME) ; then \
                ln -f -s `basename $(LIBTDB_SHARED_TARGET_SONAME)` \
                        $(DESTDIR)$(LIBDIR)/`basename $(LIBTDB_SHARED_TARGET)` ; \
@@ -2160,15 +2215,17 @@ shlibs test_shlibs: @LIBTDB_SHARED@
 
 showlibtdb:
        @echo  ""
-       @echo "LIBTDB_SHARED               = @LIBTDB_SHARED@"
-       @echo "LIBTDB_STATIC               = @LIBTDB_STATIC@"
-       @echo "LIBTDB_LIBS                 = $(LIBTDB_LIBS)"
+       @echo "LIBTDB_SHARED                = @LIBTDB_SHARED@"
+       @echo "LIBTDB_STATIC                = @LIBTDB_STATIC@"
+       @echo "LIBTDB_LIBS                  = $(LIBTDB_LIBS)"
        @echo ""
-       @echo "LIBTDB_SHARED_TARGET        = $(LIBTDB_SHARED_TARGET)"
-       @echo "LIBTDB_SOVER                = $(LIBTDB_SOVER)"
-       @echo "LIBTDB_SHARED TARGET_SONAME = $(LIBTDB_SHARED_TARGET_SONAME)"
-       @echo "LIBTDB_STATIC_TARGET        = $(LIBTDB_STATIC_TARGET)"
-       @echo "LIBTDB                      = $(LIBTDB)"
+       @echo "LIBTDB_SHARED_TARGET         = $(LIBTDB_SHARED_TARGET)"
+       @echo "LIBTDB_SOVER                 = $(LIBTDB_SOVER)"
+       @echo "LIBTDB_FULLVER               = $(LIBTDB_FULLVER)"
+       @echo "LIBTDB_SHARED TARGET_SONAME  = $(LIBTDB_SHARED_TARGET_SONAME)"
+       @echo "LIBTDB_SHARED TARGET_FULLVER = $(LIBTDB_SHARED_TARGET_FULLVER)"
+       @echo "LIBTDB_STATIC_TARGET         = $(LIBTDB_STATIC_TARGET)"
+       @echo "LIBTDB                       = $(LIBTDB)"
 
 showlibs:: showlibtdb
 
@@ -2194,6 +2251,7 @@ LIBWBCLIENT_OBJ = $(LIBWBCLIENT_OBJ0) \
 
 LIBWBCLIENT_SHARED_TARGET=@LIBWBCLIENT_SHARED_TARGET@
 LIBWBCLIENT_SOVER=@LIBWBCLIENT_SOVER@
+LIBWBCLIENT_FULLVER=@LIBWBCLIENT_FULLVER@
 LIBWBCLIENT_SHARED_TARGET_SONAME=$(LIBWBCLIENT_SHARED_TARGET).$(LIBWBCLIENT_SOVER)
 LIBWBCLIENT_STATIC_TARGET=@LIBWBCLIENT_STATIC_TARGET@
 LIBWBCLIENT_SYMS=$(srcdir)/exports/libwbclient.@SYMSEXT@
@@ -2256,6 +2314,7 @@ showlibwbclient:
        @echo ""
        @echo "LIBWBCLIENT_SHARED_TARGET        = $(LIBWBCLIENT_SHARED_TARGET)"
        @echo "LIBWBCLIENT_SOVER                = $(LIBWBCLIENT_SOVER)"
+       @echo "LIBWBCLIENT_FULLVER              = $(LIBWBCLIENT_FULLVER)"
        @echo "LIBWBCLIENT_SHARED TARGET_SONAME = $(LIBWBCLIENT_SHARED_TARGET_SONAME)"
        @echo "LIBWBCLIENT_STATIC_TARGET        = $(LIBWBCLIENT_STATIC_TARGET)"
        @echo "LIBWBCLIENT                      = $(LIBWBCLIENT)"
@@ -2272,6 +2331,7 @@ showlibs:: showlibwbclient
 
 LIBADDNS_SHARED_TARGET=@LIBADDNS_SHARED_TARGET@
 LIBADDNS_SOVER=@LIBADDNS_SOVER@
+LIBADDNS_FULLVER=@LIBADDNS_FULLVER@
 LIBADDNS_SHARED_TARGET_SONAME=$(LIBADDNS_SHARED_TARGET).$(LIBADDNS_SOVER)
 LIBADDNS_STATIC_TARGET=@LIBADDNS_STATIC_TARGET@
 LIBADDNS=@LIBADDNS_STATIC@ @LIBADDNS_SHARED@
@@ -2329,6 +2389,7 @@ showlibaddns:
        @echo ""
        @echo "LIBADDNS_SHARED_TARGET        = $(LIBADDNS_SHARED_TARGET)"
        @echo "LIBADDNS_SOVER                = $(LIBADDNS_SOVER)"
+       @echo "LIBADDNS_FULLVER              = $(LIBADDNS_FULLVER)"
        @echo "LIBADDNS_SHARED TARGET_SONAME = $(LIBADDNS_SHARED_TARGET_SONAME)"
        @echo "LIBADDNS_STATIC_TARGET        = $(LIBADDNS_STATIC_TARGET)"
        @echo "LIBADDNS                      = $(LIBADDNS)"
@@ -2379,6 +2440,7 @@ LIBNETAPI_OBJ  = $(LIBNETAPI_OBJ0) $(LIBNET_OBJ) \
 
 LIBNETAPI_SHARED_TARGET=@LIBNETAPI_SHARED_TARGET@
 LIBNETAPI_SOVER=@LIBNETAPI_SOVER@
+LIBNETAPI_FULLVER=@LIBNETAPI_FULLVER@
 LIBNETAPI_SHARED_TARGET_SONAME=$(LIBNETAPI_SHARED_TARGET).$(LIBNETAPI_SOVER)
 LIBNETAPI_STATIC_TARGET=@LIBNETAPI_STATIC_TARGET@
 LIBNETAPI_SYMS=$(srcdir)/exports/libnetapi.@SYMSEXT@
@@ -2443,6 +2505,7 @@ showlibnetapi:
        @echo ""
        @echo "LIBNETAPI_SHARED_TARGET        = $(LIBNETAPI_SHARED_TARGET)"
        @echo "LIBNETAPI_SOVER                = $(LIBNETAPI_SOVER)"
+       @echo "LIBNETAPI_FULLVER              = $(LIBNETAPI_FULLVER)"
        @echo "LIBNETAPI_SHARED TARGET_SONAME = $(LIBNETAPI_SHARED_TARGET_SONAME)"
        @echo "LIBNETAPI_STATIC_TARGET        = $(LIBNETAPI_STATIC_TARGET)"
        @echo "LIBNETAPI                      = $(LIBNETAPI)"
@@ -2457,6 +2520,7 @@ showlibs:: showlibnetapi
 
 LIBSMBCLIENT_SHARED_TARGET=@LIBSMBCLIENT_SHARED_TARGET@
 LIBSMBCLIENT_SOVER=@LIBSMBCLIENT_SOVER@
+LIBSMBCLIENT_FULLVER=@LIBSMBCLIENT_FULLVER@
 LIBSMBCLIENT_SHARED_TARGET_SONAME=$(LIBSMBCLIENT_SHARED_TARGET).$(LIBSMBCLIENT_SOVER)
 LIBSMBCLIENT_STATIC_TARGET=@LIBSMBCLIENT_STATIC_TARGET@
 LIBSMBCLIENT=@LIBSMBCLIENT_STATIC@ @LIBSMBCLIENT_SHARED@
@@ -2525,6 +2589,7 @@ showlibsmbclient:
        @echo ""
        @echo "LIBSMBCLIENT_SHARED_TARGET        = $(LIBSMBCLIENT_SHARED_TARGET)"
        @echo "LIBSMBCLIENT_SOVER                = $(LIBSMBCLIENT_SOVER)"
+       @echo "LIBSMBCLIENT_FULLVER              = $(LIBSMBCLIENT_FULLVER)"
        @echo "LIBSMBCLIENT_SHARED TARGET_SONAME = $(LIBSMBCLIENT_SHARED_TARGET_SONAME)"
        @echo "LIBSMBCLIENT_STATIC_TARGET        = $(LIBSMBCLIENT_STATIC_TARGET)"
        @echo "LIBSMBCLIENT                      = $(LIBSMBCLIENT)"
@@ -2537,12 +2602,13 @@ showlibs:: showlibsmbclient
 #
 #-------------------------------------------------------------------
 
-LIBSMBSHAREMODES_OBJ0 = libsmb/smb_share_modes.o
+LIBSMBSHAREMODES_OBJ0 = libsmb/smb_share_modes.o ../lib/ccan/hash/hash.o
 
 LIBSMBSHAREMODES_OBJ = $(LIBSMBSHAREMODES_OBJ0)
 
 LIBSMBSHAREMODES_SHARED_TARGET=@LIBSMBSHAREMODES_SHARED_TARGET@
 LIBSMBSHAREMODES_SOVER=@LIBSMBSHAREMODES_SOVER@
+LIBSMBSHAREMODES_FULLVER=@LIBSMBSHAREMODES_FULLVER@
 LIBSMBSHAREMODES_SHARED_TARGET_SONAME=$(LIBSMBSHAREMODES_SHARED_TARGET).$(LIBSMBSHAREMODES_SOVER)
 LIBSMBSHAREMODES_STATIC_TARGET=@LIBSMBSHAREMODES_STATIC_TARGET@
 LIBSMBSHAREMODES=@LIBSMBSHAREMODES_STATIC@ @LIBSMBSHAREMODES_SHARED@
@@ -2607,6 +2673,7 @@ showlibsmbsharemodes:
        @echo ""
        @echo "LIBSMBSHAREMODES_SHARED_TARGET        = $(LIBSMBSHAREMODES_SHARED_TARGET)"
        @echo "LIBSMBSHAREMODES_SOVER                = $(LIBSMBSHAREMODES_SOVER)"
+       @echo "LIBSMBSHAREMODES_FULLVER              = $(LIBSMBSHAREMODES_FULLVER)"
        @echo "LIBSMBSHAREMODES_SHARED TARGET_SONAME = $(LIBSMBSHAREMODES_SHARED_TARGET_SONAME)"
        @echo "LIBSMBSHAREMODES_STATIC_TARGET        = $(LIBSMBSHAREMODES_STATIC_TARGET)"
        @echo "LIBSMBSHAREMODES                      = $(LIBSMBSHAREMODES)"
@@ -2970,6 +3037,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@
@@ -3070,14 +3141,14 @@ bin/ntlm_auth@EXEEXT@: $(BINARY_PREREQS) $(NTLM_AUTH_OBJ) $(PARAM_OBJ) \
        $(LIB_NONSMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(DYNEXP) $(NTLM_AUTH_OBJ) \
-               $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) $(LIBS) \
+               $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) $(LIBS) $(ZLIB_LIBS) \
                $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
                $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) @INIPARSERLIBS@
 
 bin/pam_smbpass.@SHLIBEXT@: $(BINARY_PREREQS) $(PAM_SMBPASS_OBJ) $(LIBCLI_LDAP_NDR_OBJ) $(LIBTALLOC) $(LIBWBCLIENT) $(LIBTDB)
        @echo "Linking shared library $@"
        @$(SHLD) $(LDSHFLAGS) -o $@ $(PAM_SMBPASS_OBJ) $(LIBCLI_LDAP_NDR_OBJ) -lpam $(DYNEXP) \
-               $(LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
+               $(LIBS) $(LDAP_LIBS) $(NSCD_LIBS) $(ZLIB_LIBS) \
                $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS)
 
 bin/tdbbackup@EXEEXT@: $(BINARY_PREREQS) $(TDBBACKUP_OBJ) $(LIBTALLOC) $(LIBTDB)
@@ -3320,6 +3391,8 @@ cleanlibs::
 clean:: cleanlibs
        -rm -f include/build_env.h
        -rm -f smbd/build_options.c
+       -rm -f param/param_local.h
+       -rm -f param/param_global.h
        -rm -f $(PRECOMPILED_HEADER)
        -rm -f core */*~ *~ \
                */*.o */*/*.o */*/*/*.o */*/*/*/*.o \
@@ -3354,12 +3427,12 @@ realclean:: clean
 
 distclean:: realclean
        -rm -f smbadduser
-       -rm -f include/config.h Makefile
+       -rm -f include/autoconf/config.h Makefile
        -rm -f config.status config.cache so_locations
        -rm -rf .deps TAGS
 
 realdistclean:: distclean
-       -rm -f include/config.h.in
+       -rm -f include/autoconf/config.h.in
        -rm -f include/version.h
        -rm -f configure
 
@@ -3504,3 +3577,14 @@ bin/smbtorture4: $(BINARY_PREREQS)
 
 bin/ndrdump4: $(BINARY_PREREQS)
        $(MAKE) -f Makefile-smbtorture4 bin/ndrdump4
+
+.PHONY: vfs_examples
+
+vfs_examples:
+       ( \
+       cd ../examples/VFS && \
+       ./autogen.sh && \
+       ./configure && \
+       make clean && \
+       make \
+       )