LOGFILEBASE=@LOGFILEBASE@
SOCKET_DIR=@SOCKET_DIR@
PRIVILEGED_SOCKET_DIR=@PRIVILEGED_SOCKET_DIR@
-#WINBINDD_SOCKET_DIR=@WINBINDD_SOCKET_DIR@
-#WINBINDD_PRIVILEGED_SOCKET_DIR=@WINBINDD_PRIVILEGED_SOCKET_DIR@
+WINBINDD_SOCKET_DIR=@WINBINDD_SOCKET_DIR@
+WINBINDD_PRIVILEGED_SOCKET_DIR=@WINBINDD_PRIVILEGED_SOCKET_DIR@
NMBDSOCKETDIR=@NMBDSOCKETDIR@
#NTP_SIGND_SOCKET_DIR=@NTP_SIGND_SOCKET_DIR@
NCALRPCDIR=@NCALRPCDIR@
LIB_PATH_VAR=@LIB_PATH_VAR@
## Dynamic shared libraries build settings
-DSO_EXPORTS_CMD=-Wl,--version-script,$(srcdir)/exports/`basename $@ | sed 's/@SHLIBEXT@\(.[0-9]\{1,\}\)\{0,1\}$$/@SYMSEXT@/'`
+DSO_EXPORTS_CMD=-Wl,--version-script,$(srcdir)/exports/`basename $@ | sed 's:\.@SHLIBEXT@[\.0-9]*$$:.@SYMSEXT@:'`
DSO_EXPORTS=@DSO_EXPORTS@
SHLD_DSO = $(SHLD) $(LDSHFLAGS) $(DSO_EXPORTS) -o $@
-DCACHEDIR=\"$(CACHEDIR)\" \
-DSTATEDIR=\"$(STATEDIR)\" \
-DNMBDSOCKETDIR=\"$(NMBDSOCKETDIR)\" \
+ -DWINBINDD_SOCKET_DIR=\"$(WINBINDD_SOCKET_DIR)\" \
+ -DWINBINDD_PRIVILEGED_SOCKET_DIR=\"$(WINBINDD_PRIVILEGED_SOCKET_DIR)\" \
-DLOCALEDIR=\"$(LOCALEDIR)\" \
-DDATADIR=\"$(DATADIR)\" \
-DSETUPDIR=\"$(SETUPDIR)\"
bin/smbta-util@EXEEXT@
BIN_PROGS2 = bin/smbcontrol@EXEEXT@ bin/smbtree@EXEEXT@ $(TDBBACKUP) \
bin/nmblookup@EXEEXT@ bin/pdbedit@EXEEXT@ $(TDBDUMP) \
- $(TDBRESTORE) \
- $(TDBTOOL)
+ $(TDBRESTORE) $(TDBTOOL) bin/dbwrap_tool@EXEEXT@
BIN_PROGS3 = bin/smbpasswd@EXEEXT@ bin/rpcclient@EXEEXT@ bin/smbcacls@EXEEXT@ \
bin/profiles@EXEEXT@ bin/ntlm_auth@EXEEXT@ bin/sharesec@EXEEXT@ \
bin/smbcquotas@EXEEXT@ bin/eventlogadm@EXEEXT@
EVERYTHING_PROGS = bin/debug2html@EXEEXT@ bin/smbfilter@EXEEXT@ \
$(TALLOCTORT) bin/replacetort@EXEEXT@ \
bin/log2pcap@EXEEXT@ \
- bin/vlp@EXEEXT@ bin/smbiconv@EXEEXT@ \
+ bin/vlp@EXEEXT@ \
bin/dbwrap_tool@EXEEXT@ \
bin/dbwrap_torture@EXEEXT@
TDB_VALIDATE_OBJ = lib/tdb_validate.o
-SMBLDAP_OBJ = @SMBLDAP@ @SMBLDAPUTIL@
+SMBLDAP_OBJ = @SMBLDAP@
VERSION_OBJ = lib/version.o
../librpc/ndr/uuid.o \
../librpc/ndr/util.o \
librpc/gen_ndr/ndr_server_id.o \
+ librpc/gen_ndr/ndr_file_id.o \
librpc/gen_ndr/ndr_dcerpc.o
LIBNDR_GEN_OBJ0 = librpc/gen_ndr/ndr_samr.o \
lib/substitute.o lib/substitute_generic.o ../lib/util/substitute.o lib/dbwrap/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/smb_signing.o \
+ ../libcli/smb/smb_signing.o \
../lib/util/charset/iconv.o ../lib/util/charset/weird.o \
../lib/util/charset/charset_macosxfs.o intl/lang_tdb.o \
lib/conn_tdb.o lib/adt_tree.o lib/gencache.o \
# Be sure to include them into your application
POPT_LIB_OBJ = lib/popt_common.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_WITHOUT_REG_OBJ = ../dynconfig/dynconfig.o param/loadparm.o param/loadparm_ctx.o ../lib/param/loadparm_server_role.o param/util.o lib/sharesec.o lib/ldap_debug_handler.o ../lib/param/loadparm.o ../lib/param/util.o
PARAM_REG_ADD_OBJ = $(REG_SMBCONF_OBJ) $(LIBSMBCONF_OBJ) $(PRIVILEGES_BASIC_OBJ)
PARAM_OBJ = $(PARAM_WITHOUT_REG_OBJ) $(PARAM_REG_ADD_OBJ)
LIBNBT_OBJ = ../libcli/nbt/nbtname.o \
../libcli/netlogon/netlogon.o \
- ../libcli/netlogon/ndr_netlogon.o \
librpc/gen_ndr/ndr_nbt.o \
+ ../librpc/ndr/ndr_nbt.o \
librpc/gen_ndr/ndr_svcctl.o \
../librpc/ndr/ndr_svcctl.o
libsmb/ntlmssp.o \
libsmb/ntlmssp_wrap.o \
../auth/gensec/gensec.o \
- ../libcli/auth/ntlmssp.o \
- ../libcli/auth/ntlmssp_sign.o \
+ ../auth/gensec/gensec_start.o \
+ ../auth/credentials/credentials.o \
+ ../auth/credentials/credentials_samba3.o \
+ ../auth/ntlmssp/ntlmssp.o \
+ ../auth/ntlmssp/ntlmssp_sign.o \
+ ../auth/ntlmssp/gensec_ntlmssp.o \
$(LIBNDR_NTLMSSP_OBJ) \
- ../libcli/auth/ntlmssp_ndr.o \
- ../libcli/auth/ntlmssp_server.o
+ ../auth/ntlmssp/ntlmssp_ndr.o \
+ ../auth/ntlmssp/ntlmssp_server.o
LIBSAMBA_OBJ = $(LIBSMB_OBJ0) \
$(LIBSMB_ERR_OBJ)
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/clisigning.o \
- libsmb/smb2cli_base.o \
- libsmb/smb2cli_negprot.o \
+ libsmb/async_smb.o \
+ libsmb/clisigning.o \
+ ../libcli/smb/smb_seal.o \
+ ../libcli/smb/read_smb.o \
+ ../libcli/smb/smbXcli_base.o \
+ ../libcli/smb/smb1cli_trans.o \
libsmb/smb2cli_session.o \
libsmb/smb2cli_tcon.o \
libsmb/smb2cli_create.o \
registry/reg_util_internal.o \
lib/util_nttoken.o \
$(REG_BACKENDS_BASE_OBJ) \
+ registry/reg_parse_internal.o \
+ lib/cbuf.o lib/srprs.o \
$(REG_INIT_BASIC_OBJ)
REG_SMBCONF_OBJ = $(REG_BASE_OBJ) \
RPC_LSARPC_OBJ = rpc_server/lsa/srv_lsa_nt.o \
librpc/gen_ndr/srv_lsa.o \
- rpc_client/util_lsarpc.o
+ ../libcli/lsarpc/util_lsarpc.o
RPC_NETLOGON_OBJ = rpc_server/netlogon/srv_netlog_nt.o \
librpc/gen_ndr/srv_netlogon.o
RPC_CLIENT_SCHANNEL_OBJ = rpc_client/cli_pipe_schannel.o
-LOCKING_OBJ = locking/locking.o locking/brlock.o locking/posix.o
+LOCKING_OBJ = locking/locking.o locking/brlock.o locking/posix.o \
+ librpc/gen_ndr/ndr_open_files.o
PRIVILEGES_BASIC_OBJ = ../libcli/security/privileges.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_file_id.o
+ librpc/gen_ndr/ndr_notify.o
FNAME_UTIL_OBJ = lib/filename_util.o
LIBSMBCLIENT_OBJ = $(LIBSMBCLIENT_OBJ1)
-# This shared library is intended for linking with unit test programs
-# to test Samba internals. It's called libbigballofmud.so to
-# discourage casual usage.
-
-LIBBIGBALLOFMUD_MAJOR = 0
-
-LIBBIGBALLOFMUD_OBJ = $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) \
- $(LIBSMB_OBJ) $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) $(PASSDB_OBJ) \
- $(GROUPDB_OBJ) $(KRBCLIENT_OBJ) $(SMBLDAP_OBJ)
-
CLIENT_OBJ1 = client/client.o client/clitar.o \
client/dnsbrowse.o \
$(LIBMSRPC_OBJ)
rpc_client/init_netlogon.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 printing/nt_printing_migrate.o
+ registry/reg_import.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
torture/test_case_insensitive.o \
torture/test_posix_append.o \
torture/test_smb2.o \
- torture/test_authinfo_structs.o
+ torture/test_authinfo_structs.o \
+ torture/t_strappend.o
SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) $(TLDAP_OBJ) \
$(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
@LIBWBCLIENT_STATIC@ \
torture/wbc_async.o \
../nsswitch/wb_reqtrans.o \
- rpc_client/util_lsarpc.o \
+ ../libcli/lsarpc/util_lsarpc.o \
$(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) $(LIBCLI_ECHO_OBJ)
MASKTEST_OBJ = torture/masktest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
VFSTEST_OBJ = torture/cmd_vfs.o torture/vfstest.o $(SMBD_OBJ_BASE) $(READLINE_OBJ)
-SMBICONV_OBJ = $(PARAM_OBJ) torture/smbiconv.o $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) $(LIBSMB_ERR_OBJ)
-
LOG2PCAP_OBJ = utils/log2pcaphex.o
LOCKTEST2_OBJ = torture/locktest2.o $(PARAM_OBJ) $(LOCKING_OBJ) $(LIBSMB_OBJ) \
$(PASSDB_OBJ) $(GROUPDB_OBJ) \
$(SMBLDAP_OBJ) $(LIBNMB_OBJ) \
$(WBCOMMON_OBJ) \
- $(LIBCLI_LDAP_NDR_OBJ) \
+ $(LIBNBT_OBJ) \
+ $(CLDAP_OBJ) \
$(DRSUAPI_OBJ) \
$(LIBNDR_GEN_OBJ0) $(LIBNDR_NETLOGON_OBJ) @BUILD_INIPARSER@
librpc/idl/wbint.idl \
librpc/idl/perfcount.idl \
librpc/idl/secrets.idl \
+ librpc/idl/open_files.idl \
librpc/idl/libnet_join.idl
samba3-idl::
@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:
+mkparam: ../lib/param/param_local.h ../lib/param/param_global.h param/param_global.h ../lib/param/param_proto.h ../lib/param/s3_param.h
+
+../lib/param/param_local.h:
$(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/param_functions.c --file ../lib/param/param_local.h --generate-scope=LOCAL
+../lib/param/param_global.h:
+ $(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/loadparm.c --file ../lib/param/param_global.h --generate-scope=GLOBAL
+param/param_global.h:
$(PERL) ../script/mkparamdefs.pl $(srcdir)/param/loadparm.c --file param/param_global.h --generate-scope=GLOBAL
+../lib/param/param_proto.h:
+ $(PERL) ../source4/script/mkproto.pl $(srcdir)/../lib/param/loadparm.c --public ../lib/param/param_proto.h --private ../lib/param/param_proto.h
+../lib/param/s3_param.h:
+ $(PERL) ../script/mks3param.pl $(srcdir)/../lib/param/loadparm.c --file ../lib/param/s3_param.h
+
#####################################################################
echo "$(COMPILE_CC_PATH)" 1>&2;\
$(COMPILE_CC_PATH) >/dev/null 2>&1
+../nsswitch/wb_common.o: ../nsswitch/wb_common.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
+
### Start section of object files that require PTHREAD_CFLAGS
../nsswitch/wins.o: ../nsswitch/wins.c
@echo Compiling $*.c
@SMBD_LIBS@ $(NSCD_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
$(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
-bin/smbiconv@EXEEXT@: $(BINARY_PREREQS) $(SMBICONV_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
- @echo Linking $@
- @$(CC) -o $@ $(SMBICONV_OBJ) $(LDFLAGS) $(TERMLDFLAGS) \
- $(TERMLIBS) $(DYNEXP) $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
- $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
-
bin/log2pcap@EXEEXT@: $(BINARY_PREREQS) $(LOG2PCAP_OBJ) @BUILD_POPT@ $(LIBTALLOC)
@echo Linking $@
@$(CC) -o $@ $(LOG2PCAP_OBJ) $(LDFLAGS) $(DYNEXP) \
showlibs:: showlibsmbsharemodes
-#-------------------------------------------------------------------
-#
-# libbigballofmud
-#
-#-------------------------------------------------------------------
-
-# This is probably wrong for anything other than the GNU linker.
-bin/libbigballofmud.@SHLIBEXT@: $(BINARY_PREREQS) $(LIBBIGBALLOFMUD_OBJ) $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
- @echo Linking shared library $@
- @$(SHLD) $(LDSHFLAGS) -o $@ $(LIBBIGBALLOFMUD_OBJ) \
- $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) \
- $(PASSDB_LIBS) $(IDMAP_LIBS) $(KRB5LIBS) $(LDAP_LIBS) -lz \
- @SONAMEFLAG@`basename $@`.$(LIBBIGBALLOFMUD_MAJOR)
- ln -snf libbigballofmud.so bin/libbigballofmud.so.0
-
-# It would be nice to build a static bigballofmud too, but when I try
-# I get linker errors about dl_open and similar things. I'm not sure if
-# it can be fixed or if they just can't be called from a static
-# library.
-
#####################################################################
#
# shared modules
@$(SHLD_MODULE) $(AUTH_SAM_OBJ)
bin/ldapsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ldap.o passdb/pdb_nds.o \
- passdb/pdb_ipa.o
+ passdb/pdb_ipa.o passdb/pdb_ldap_util.o \
+ passdb/pdb_ldap_schema.o
@echo "Building plugin $@"
@$(SHLD_MODULE) passdb/pdb_ldap.o passdb/pdb_nds.o passdb/pdb_ipa.o \
- $(LDAP_LIBS)
+ passdb/pdb_ldap_util.o passdb/pdb_ldap_schema.o $(LDAP_LIBS)
bin/ads.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ads.o
@echo "Building plugin $@"
@$(CC) -o $@ $(LDFLAGS) $(TDBTORTURE_OBJ) $(DYNEXP) \
$(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
-bin/t_strcmp@EXEEXT@: $(BINARY_PREREQS) $(LIBTALLOC) bin/libbigballofmud.@SHLIBEXT@ torture/t_strcmp.o
- $(CC) -o $@ $(DYNEXP) $(LIBS) $(LIBTALLOC_LIBS) \
- torture/t_strcmp.o -L ./bin -lbigballofmud $(LIBWBCLIENT_LIBS)
-
-bin/t_strstr@EXEEXT@: $(BINARY_PREREQS) $(LIBTALLOC) bin/libbigballofmud.@SHLIBEXT@ torture/t_strstr.o
- $(CC) -o $@ $(DYNEXP) $(LIBS) $(LIBTALLOC_LIBS) \
- torture/t_strstr.o -L ./bin -lbigballofmud $(LIBWBCLIENT_LIBS)
-
-bin/t_strappend@EXEEXT@: $(BINARY_PREREQS) $(LIBTALLOC) bin/libbigballofmud.@SHLIBEXT@ torture/t_strappend.o
- $(CC) -o $@ $(DYNEXP) $(LIBS) $(LIBTALLOC_LIBS) \
- torture/t_strappend.o -L ./bin -lbigballofmud $(LIBWBCLIENT_LIBS)
-
-bin/t_stringoverflow@EXEEXT@: $(BINARY_PREREQS) bin/libbigballofmud.@SHLIBEXT@ torture/t_stringoverflow.o
- $(CC) -o $@ $(DYNEXP) torture/t_stringoverflow.o \
- -L./bin -lbigballofmud $(LIBWBCLIENT_LIBS)
-
bin/timelimit@EXEEXT@: script/tests/timelimit.o
@echo Linking $@
@$(CC) -o $@ $(DYNEXP) script/tests/timelimit.o
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) \
$(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) \
$(VARDIR) $(PRIVATE_DIR) $(PIDDIR) $(LOCKDIR) $(STATEDIR) \
- $(NMBDSOCKETDIR) \
+ $(NMBDSOCKETDIR) $(WINBINDD_SOCKET_DIR) $(WINBINDD_PRIVILEGED_SOCKET_DIR) \
$(CACHEDIR) $(MANDIR) $(CODEPAGEDIR) $(MODULESDIR) $(LOCALEDIR)
installservers:: all installdirs
@echo " LOGFILEBASE: $(LOGFILEBASE)"
@echo " SOCKET_DIR: $(SOCKET_DIR)"
@echo " PRIVILEGED_SOCKET_DIR: $(PRIVILEGED_SOCKET_DIR)"
-# @echo " WINBINDD_SOCKET_DIR: $(WINBINDD_SOCKET_DIR)"
-# @echo " WINBINDD_PRIVILEGED_SOCKET_DIR: $(WINBINDD_PRIVILEGED_SOCKET_DIR)"
+ @echo " WINBINDD_SOCKET_DIR: $(WINBINDD_SOCKET_DIR)"
+ @echo " WINBINDD_PRIVILEGED_SOCKET_DIR: $(WINBINDD_PRIVILEGED_SOCKET_DIR)"
@echo " NMBDSOCKETDIR: $(NMBDSOCKETDIR)"
# @echo " NTP_SIGND_SOCKET_DIR: $(NTP_SIGND_SOCKET_DIR)"
@echo " NCALRPCDIR: $(NCALRPCDIR)"
-rm -f smbd/build_options.c
-rm -f param/param_local.h
-rm -f param/param_global.h
+ -rm -f ../lib/param/param_local.h
+ -rm -f ../lib/param/param_global.h
+ -rm -f ../lib/param/param_proto.h
+ -rm -f ../lib/param/s3_param.h
-rm -f $(PRECOMPILED_HEADER)
-rm -f core */*~ *~ \
*/*.o */*/*.o */*/*/*.o */*/*/*/*.o \