LIB_PATH_VAR=@LIB_PATH_VAR@
## Dynamic shared libraries build settings
-DSO_EXPORTS_CMD=-Wl,--version-script,$(srcdir)/exports/`basename $@ | sed 's/@SHLIBEXT@$$/syms/'`
+DSO_EXPORTS_CMD=-Wl,--version-script,$(srcdir)/exports/`basename $@ | sed 's/@SHLIBEXT@$$/@SYMSEXT@/'`
DSO_EXPORTS=@DSO_EXPORTS@
SONAME_VER=`grep \^$@ $(builddir)/library-versions | cut -d: -f2`
SHLD_DSO = $(SHLD) $(LDSHFLAGS) $(DSO_EXPORTS) -o $@
LIBTALLOC_SHARED_TARGET=@LIBTALLOC_SHARED_TARGET@
LIBTALLOC_STATIC_TARGET=@LIBTALLOC_STATIC_TARGET@
LIBTALLOC=$(LIBTALLOC_STATIC_TARGET) @LIBTALLOC_SHARED@
+LIBTALLOC_SYMS=$(srcdir)/exports/libtalloc.@SYMSEXT@
+LIBTALLOC_HEADERS=$(srcdir)/@tallocdir@/talloc.h
LIBTDB_SHARED_TARGET=@LIBTDB_SHARED_TARGET@
LIBTDB_STATIC_TARGET=@LIBTDB_STATIC_TARGET@
LIBTDB=$(LIBTDB_STATIC_TARGET) @LIBTDB_SHARED@
-LIBTDB_SYMS=$(srcdir)/exports/libtdb.syms
+LIBTDB_SYMS=$(srcdir)/exports/libtdb.@SYMSEXT@
LIBTDB_HEADERS=$(srcdir)/@tdbdir@/include/tdb.h
LIBSMBCLIENT=bin/libsmbclient.a @LIBSMBCLIENT_SHARED@
LIBSMBSHAREMODES=bin/libsmbsharemodes.a @LIBSMBSHAREMODES_SHARED@
LIBADDNS=bin/libaddns.a @LIBADDNS_SHARED@
-LIBWBCLIENT=@LIBWBCLIENT_SHARED@
+
+LIBWBCLIENT_SHARED_TARGET=@LIBWBCLIENT_SHARED_TARGET@
+LIBWBCLIENT_STATIC_TARGET=@LIBWBCLIENT_STATIC_TARGET@
+LIBWBCLIENT=@LIBWBCLIENT_STATIC@ @LIBWBCLIENT_SHARED@
+LIBWBCLIENT_SYMS=$(srcdir)/exports/libwbclient.@SYMSEXT@
+LIBWBCLIENT_HEADERS=$(srcdir)/nsswitch/libwbclient/wbclient.h
LIBNETAPI_SHARED_TARGET=@LIBNETAPI_SHARED_TARGET@
LIBNETAPI_STATIC_TARGET=@LIBNETAPI_STATIC_TARGET@
LIBNETAPI=$(LIBNETAPI_STATIC_TARGET) @LIBNETAPI_SHARED@
+LIBNETAPI_SYMS=$(srcdir)/exports/libnetapi.@SYMSEXT@
+LIBNETAPI_HEADERS=$(srcdir)/lib/netapi/netapi.h
FLAGS1 = $(CFLAGS) @FLAGS1@ @SAMBA_CPPFLAGS@ $(CPPFLAGS)
FLAGS2 =
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_drsblobs.o
+
+COMPRESSION_OBJ = lib/compression/mszip.o
+
+DRSUAPI_OBJ = $(LIBNDR_DRSUAPI_OBJ) \
+ $(COMPRESSION_OBJ)
LIBNDR_OBJ = librpc/ndr/ndr_basic.o \
librpc/ndr/ndr.o \
librpc/gen_ndr/ndr_winreg.o \
librpc/gen_ndr/ndr_initshutdown.o \
librpc/gen_ndr/ndr_srvsvc.o \
- librpc/gen_ndr/ndr_svcctl.o \
librpc/gen_ndr/ndr_eventlog.o \
librpc/gen_ndr/ndr_netlogon.o \
librpc/gen_ndr/ndr_samr.o \
librpc/gen_ndr/ndr_dssetup.o \
librpc/gen_ndr/ndr_notify.o \
librpc/gen_ndr/ndr_xattr.o \
- librpc/gen_ndr/ndr_ntsvcs.o \
- librpc/gen_ndr/ndr_nbt.o
+ librpc/gen_ndr/ndr_epmapper.o \
+ librpc/gen_ndr/ndr_ntsvcs.o
RPC_PARSE_OBJ0 = rpc_parse/parse_prs.o rpc_parse/parse_misc.o
$(SOCKET_WRAPPER_OBJ) \
$(NSS_WRAPPER_OBJ)
-LIB_WITHOUT_PROTO_OBJ = $(LIBSAMBAUTIL_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/interfaces.o lib/rbtree.o lib/memcache.o \
- lib/util_transfer_file.o lib/async_req.o \
- $(TDB_OBJ)
-
-LIB_WITH_PROTO_OBJ = $(VERSION_OBJ) lib/charcnv.o lib/debug.o lib/fault.o \
+LIB_OBJ = $(LIBSAMBAUTIL_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/interfaces.o lib/rbtree.o lib/memcache.o \
+ lib/util_transfer_file.o lib/async_req.o \
+ $(TDB_OBJ) \
+ $(VERSION_OBJ) lib/charcnv.o lib/debug.o lib/fault.o \
lib/interface.o lib/md4.o \
lib/pidfile.o \
lib/signal.o lib/system.o lib/sendfile.o lib/recvfile.o lib/time.o \
libads/krb5_errs.o lib/system_smbd.o lib/audit.o $(LIBNDR_OBJ) \
lib/file_id.o
-LIB_OBJ = $(LIB_WITHOUT_PROTO_OBJ) $(LIB_WITH_PROTO_OBJ)
-
LIB_DUMMY_OBJ = lib/dummysmbd.o lib/dummyroot.o
LIB_NONSMBD_OBJ = $(LIB_OBJ) $(LIB_DUMMY_OBJ)
libads/krb5_setpw.o libads/ldap_user.o \
libads/ads_struct.o libads/kerberos_keytab.o \
libads/disp_sec.o libads/ads_utils.o libads/ldap_utils.o \
- libads/cldap.o libads/ldap_schema.o libads/util.o libads/ndr.o
+ libads/ldap_schema.o libads/util.o libads/ndr.o
LIBADS_SERVER_OBJ = libads/kerberos_verify.o libads/authdata.o \
librpc/ndr/ndr_krb5pac.o \
SECRETS_OBJ = passdb/secrets.o passdb/machine_sid.o
+LIBNBT_OBJ = libcli/nbt/nbtname.o \
+ librpc/gen_ndr/ndr_nbt.o \
+ librpc/gen_ndr/ndr_svcctl.o
+
LIBNMB_OBJ = libsmb/unexpected.o libsmb/namecache.o libsmb/nmblib.o \
- libsmb/namequery.o libsmb/conncache.o libads/dns.o \
- libcli/nbt/nbtname.o
+ libsmb/namequery.o libsmb/conncache.o libads/dns.o
NTERR_OBJ = libsmb/nterr.o
DOSERR_OBJ = libsmb/doserr.o
LIBSAMBA_OBJ = $(LIBSMB_OBJ0) \
$(LIBSMB_ERR_OBJ)
+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/clirap.o libsmb/clierror.o libsmb/climessage.o \
libsmb/smb_seal.o libsmb/async_smb.o \
$(LIBSAMBA_OBJ) \
$(LIBNMB_OBJ) \
+ $(LIBNBT_OBJ) \
+ $(CLDAP_OBJ) \
+ $(DRSUAPI_OBJ)
RPC_CLIENT_OBJ1 = rpc_client/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)
nmbd/nmbd_workgroupdb.o nmbd/nmbd_synclists.o smbd/connection.o
NMBD_OBJ = $(NMBD_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
- $(PROFILE_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ)
+ $(PROFILE_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
SWAT_OBJ1 = web/cgi.o web/diagnose.o web/startstop.o web/statuspage.o \
web/swat.o web/neg_lang.o
SMBTREE_OBJ = utils/smbtree.o $(PARAM_OBJ) \
$(PROFILE_OBJ) $(LIB_NONSMBD_OBJ) $(LIBSMB_OBJ) \
$(KRBCLIENT_OBJ) $(POPT_LIB_OBJ) \
- rpc_client/cli_pipe.o $(RPC_PARSE_OBJ2) \
+ rpc_client/cli_pipe.o librpc/rpc/binding.o $(RPC_PARSE_OBJ2) \
$(RPC_CLIENT_OBJ1) \
$(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(SMBLDAP_OBJ) $(LDB_OBJ) $(GROUPDB_OBJ) \
$(LIBMSRPC_GEN_OBJ)
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 \
$(DISPLAY_SEC_OBJ)
RPCCLIENT_OBJ = $(RPCCLIENT_OBJ1) \
$(GROUPDB_OBJ) $(KRBCLIENT_OBJ) $(SMBLDAP_OBJ) $(LDB_OBJ)
CLIENT_OBJ1 = client/client.o client/clitar.o rpc_client/cli_pipe.o \
+ librpc/rpc/binding.o \
client/dnsbrowse.o \
$(RPC_CLIENT_OBJ1) \
$(RPC_PARSE_OBJ2)
$(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(LIBMSRPC_GEN_OBJ) \
$(READLINE_OBJ) $(POPT_LIB_OBJ) \
$(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(SMBLDAP_OBJ) $(GROUPDB_OBJ) $(LDB_OBJ) \
- $(DISPLAY_SEC_OBJ)
+ $(DISPLAY_SEC_OBJ)
LIBNETAPI_OBJ1 = lib/netapi/netapi.o \
lib/netapi/cm.o \
lib/netapi/joindomain.o \
lib/netapi/serverinfo.o \
lib/netapi/getdc.o \
- lib/netapi/user.o
+ lib/netapi/user.o \
+ lib/netapi/group.o \
+ lib/netapi/localgroup.o \
+ lib/netapi/samr.o
LIBNETAPI_OBJ = $(LIBNETAPI_OBJ1) $(LIBNET_OBJ) \
$(LIBSMBCONF_OBJ) \
LIBSMBCONF_OBJ = lib/smbconf/smbconf.o lib/smbconf/smbconf_util.o \
lib/smbconf/smbconf_reg.o \
- lib/smbconf/smbconf_txt_simple.o \
+ lib/smbconf/smbconf_txt.o \
lib/smbconf/smbconf_init.o
SMBCONFTORT_OBJ0 = lib/smbconf/testsuite.o
$(POPT_LIB_OBJ)
LIBNET_OBJ = libnet/libnet_join.o \
+ libnet/libnet_samsync.o \
+ libnet/libnet_samsync_ldif.o \
+ libnet/libnet_samsync_passdb.o \
+ libnet/libnet_samsync_display.o \
+ libnet/libnet_samsync_keytab.o \
+ libnet/libnet_dssync.o \
librpc/gen_ndr/ndr_libnet_join.o
NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
utils/netlookup.o utils/net_sam.o utils/net_rpc_shell.o \
utils/net_util.o utils/net_rpc_sh_acct.o utils/net_rpc_audit.o \
$(PASSWD_UTIL_OBJ) utils/net_dns.o utils/net_ads_gpo.o \
- utils/net_conf.o \
- utils/net_registry.o \
- auth/token_util.o utils/net_dom.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
# these are not processed by make proto
-NET_OBJ2 = utils/net_registry_util.o
+NET_OBJ2 = utils/net_registry_util.o utils/net_help_common.o
NET_OBJ = $(NET_OBJ1) \
- $(NET_OBJ2) \
+ $(NET_OBJ2) @FAKE_KASERVER_OBJ@\
$(PARAM_WITHOUT_REG_OBJ) $(LIBSMB_OBJ) \
$(RPC_PARSE_OBJ) $(PASSDB_OBJ) $(GROUPDB_OBJ) \
$(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) $(LIBADDNS_OBJ0) \
$(PRIVILEGES_BASIC_OBJ)
CUPS_OBJ = client/smbspool.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
- $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(POPT_LIB_OBJ)
+ $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(POPT_LIB_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
CIFS_MOUNT_OBJ = client/mount.cifs.o
torture/denytest.o torture/mangle_test.o
SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) \
- $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ)
+ $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
MASKTEST_OBJ = torture/masktest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
- $(LIB_NONSMBD_OBJ)
+ $(LIB_NONSMBD_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
MSGTEST_OBJ = torture/msgtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
- $(LIB_NONSMBD_OBJ)
+ $(LIB_NONSMBD_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
LOCKTEST_OBJ = torture/locktest.o $(PARAM_OBJ) $(LOCKING_OBJ) $(KRBCLIENT_OBJ) \
- $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ)
+ $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
NSSTEST_OBJ = torture/nsstest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
- $(LIB_NONSMBD_OBJ)
+ $(LIB_NONSMBD_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
PDBTEST_OBJ = torture/pdbtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
$(LIB_NONSMBD_OBJ) $(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(GROUPDB_OBJ) \
- $(SMBLDAP_OBJ) $(POPT_LIB_OBJ) $(LDB_OBJ)
-
+ $(SMBLDAP_OBJ) $(POPT_LIB_OBJ) $(LDB_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
VFSTEST_OBJ = torture/cmd_vfs.o torture/vfstest.o $(SMBD_OBJ_BASE) $(READLINE_OBJ)
LOG2PCAP_OBJ = utils/log2pcaphex.o
LOCKTEST2_OBJ = torture/locktest2.o $(PARAM_OBJ) $(LOCKING_OBJ) $(LIBSMB_OBJ) \
- $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ)
+ $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
SMBCACLS_OBJ = utils/smbcacls.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
$(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) $(RPC_PARSE_OBJ) \
$(LIBREPLACE_OBJ)
NDRDUMP_OBJ = librpc/tools/ndrdump.o \
- $(PARAM_OBJ) $(LIBNDR_GEN_OBJ) \
- $(LIBSAMBA_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) \
- libcli/nbt/nbtname.o
+ $(PARAM_OBJ) $(LIBNDR_GEN_OBJ) \
+ $(LIBSAMBA_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) \
+ librpc/gen_ndr/ndr_svcctl.o
DEBUG2HTML_OBJ = utils/debug2html.o utils/debugparse.o
SMBFILTER_OBJ = utils/smbfilter.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
- $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ)
-
-PROTO_OBJ = $(SMBD_OBJ_MAIN) $(LIBNDR_OBJ) $(LIBNDR_GEN_OBJ) \
- $(SMBD_OBJ_SRV) $(NMBD_OBJ1) $(LIBSMB_OBJ) \
- $(SMBTORTURE_OBJ1) $(RPCCLIENT_OBJ1) \
- $(LIBMSRPC_OBJ) \
- $(LIB_WITH_PROTO_OBJ) \
- $(RPC_PIPE_OBJ) $(RPC_PARSE_OBJ) $(KRBCLIENT_OBJ) \
- $(AUTH_OBJ) $(PARAM_WITHOUT_REG_OBJ) $(LOCKING_OBJ) \
- $(PRINTING_OBJ) $(PRINTBACKEND_OBJ) $(OPLOCK_OBJ) $(NOTIFY_OBJ) \
- $(PASSDB_OBJ) $(GROUPDB_OBJ) \
- $(READLINE_OBJ) $(PROFILE_OBJ) $(LIBADS_OBJ) $(LIBADS_SERVER_OBJ) \
- $(AUTH_SAM_OBJ) $(REG_FULL_OBJ) $(POPT_LIB_OBJ) \
- $(RPC_LSA_OBJ) $(RPC_NETLOG_OBJ) $(RPC_SAMR_OBJ) $(RPC_REG_OBJ) $(RPC_DSSETUP_OBJ) \
- $(RPC_SVC_OBJ) $(RPC_WKS_OBJ) $(RPC_DFS_OBJ) $(RPC_SPOOLSS_OBJ) \
- $(RPC_ECHO_OBJ) $(RPC_SVCCTL_OBJ) $(RPC_EVENTLOG_OBJ) $(SMBLDAP_OBJ) \
- $(IDMAP_OBJ) libsmb/spnego.o $(PASSCHANGE_OBJ) \
- $(RPC_NTSVCS_OBJ) $(RPC_INITSHUTDOWN_OBJ) \
- utils/passwd_util.o $(LIBGPO_OBJ) $(NSS_INFO_OBJ) \
- $(RPCCLIENT_NDR_OBJ) \
- $(PRIVILEGES_BASIC_OBJ)
+ $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
WINBIND_WINS_NSS_OBJ = nsswitch/wins.o $(PARAM_OBJ) \
- $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) $(NSSWINS_OBJ) $(KRBCLIENT_OBJ)
+ $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) $(NSSWINS_OBJ) $(KRBCLIENT_OBJ) \
+ librpc/gen_ndr/ndr_samr.o librpc/gen_ndr/ndr_lsa.o
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
LDB_OBJ = ${LDB_COMMON_OBJ} ${LDB_TDB_OBJ} ${LDB_LDAP_OBJ} ${LDB_MODULES_OBJ}
-LDB_CMDLINE_OBJ = $(PARAM_OBJ) $(LIBSMB_OBJ) \
- $(RPC_PARSE_OBJ) $(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(GROUPDB_OBJ) \
- $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) $(LIBADDNS_OBJ0) \
- $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) \
- $(LIBADS_OBJ) $(LIBADS_SERVER_OBJ) $(POPT_LIB_OBJ) \
- $(SMBLDAP_OBJ) $(DCUTIL_OBJ) $(SERVER_MUTEX_OBJ) \
- $(AFS_OBJ) $(AFS_SETTOKEN_OBJ) $(READLINE_OBJ) \
+LDB_CMDLINE_OBJ = $(PARAM_OBJ) \
+ $(POPT_LIB_OBJ) $(LIB_OBJ) $(LIB_DUMMY_OBJ) $(LIBSMB_ERR_OBJ0) \
+ $(RPC_PARSE_OBJ1) $(SECRETS_OBJ) \
$(LDB_OBJ) lib/ldb/tools/cmdline.o
librpc/gen_ndr/ndr_netlogon.o
-VLP_OBJ1 = ../testsuite/printing/vlp.o $(RPC_CLIENT_OBJ1) $(RPC_PARSE_OBJ2) $(RPC_CLIENT_OBJ)
+VLP_OBJ1 = ../testsuite/printing/vlp.o $(RPC_CLIENT_OBJ1) $(RPC_PARSE_OBJ2) $(RPC_CLIENT_OBJ) librpc/rpc/binding.o
VLP_OBJ = $(VLP_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) \
$(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(LIBMSRPC_GEN_OBJ) \
$(PASSDB_OBJ) @LIBWBCLIENT_STATIC@ $(SMBLDAP_OBJ) $(GROUPDB_OBJ) $(LDB_OBJ) \
$(DISPLAY_SEC_OBJ)
+RPC_OPEN_TCP_OBJ = torture/rpc_open_tcp.o \
+ $(LIBSMB_OBJ) \
+ $(PARAM_OBJ) \
+ $(PASSDB_OBJ) \
+ @LIBWBCLIENT_STATIC@ $(SMBLDAP_OBJ) $(LDB_OBJ) $(GROUPDB_OBJ) \
+ $(LIB_NONSMBD_OBJ) \
+ $(KRBCLIENT_OBJ) \
+ $(RPC_PARSE_OBJ2) \
+ $(RPC_CLIENT_OBJ1) \
+ rpc_client/cli_pipe.o \
+ librpc/rpc/binding.o \
+ $(LIBMSRPC_GEN_OBJ)
+
+
######################################################################
# now the rules...
######################################################################
-all : SHOWFLAGS $(SHLIBS) $(SBIN_PROGS) $(BIN_PROGS) $(ROOT_SBIN_PROGS) \
+all:: SHOWFLAGS $(SHLIBS) $(SBIN_PROGS) $(BIN_PROGS) $(ROOT_SBIN_PROGS) \
$(MODULES) $(NSS_MODULES) $(PAM_MODULES) @EXTRA_ALL_TARGETS@
-nss_modules : $(NSS_MODULES)
+nss_modules:: $(NSS_MODULES)
-pam_modules : $(PAM_MODULES)
+pam_modules:: $(PAM_MODULES)
-gpext_modules : SHOWFLAGS $(GPEXT_MODULES)
+pam_smbpass: SHOWFLAGS bin/pam_smbpass.@SHLIBEXT@
-pam_smbpass : SHOWFLAGS bin/pam_smbpass.@SHLIBEXT@
+pam_winbind: SHOWFLAGS bin/pam_winbind.@SHLIBEXT@
-pam_winbind : SHOWFLAGS bin/pam_winbind.@SHLIBEXT@
-
-torture : SHOWFLAGS $(TORTURE_PROGS)
+torture:: SHOWFLAGS $(TORTURE_PROGS)
smbtorture : SHOWFLAGS bin/smbtorture@EXEEXT@
wins : SHOWFLAGS @WINBIND_WINS_NSS@
-modules: SHOWFLAGS $(MODULES)
+modules:: SHOWFLAGS $(MODULES)
#####################################################################
## Perl IDL Compiler
IDL_FILES = lsa.idl dfs.idl echo.idl winreg.idl initshutdown.idl \
srvsvc.idl svcctl.idl eventlog.idl wkssvc.idl netlogon.idl notify.idl \
epmapper.idl messaging.idl xattr.idl misc.idl samr.idl security.idl \
- dssetup.idl krb5pac.idl ntsvcs.idl libnetapi.idl drsuapi.idl nbt.idl
+ dssetup.idl krb5pac.idl ntsvcs.idl libnetapi.idl drsuapi.idl drsblobs.idl \
+ nbt.idl
-idl:
+idl::
@IDL_FILES="$(IDL_FILES)" CPP="$(CPP)" PERL="$(PERL)" \
srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh $(PIDL_ARGS)
#####################################################################
-everything: all libtalloc libsmbclient libnetapi debug2html smbfilter talloctort replacetort smbconftort modules torture \
+everything:: all libtalloc libsmbclient libnetapi debug2html smbfilter talloctort replacetort smbconftort modules torture \
$(EVERYTHING_PROGS)
.SUFFIXES:
.SUFFIXES: .c .o .lo
-SHOWFLAGS:
+SHOWFLAGS::
@echo "Using FLAGS = $(FLAGS)"
@echo " PICFLAG = $(PICFLAG)"
@echo " LIBS = $(LIBS)"
# this adds support for precompiled headers. To use it, install a snapshot
# of gcc-3.4 and run 'make pch' before you do the main build.
-pch: proto_exists
+pch::
rm -f $(PRECOMPILED_HEADER)
$(MAKE) $(PRECOMPILED_HEADER)
$(PRECOMPILED_HEADER): $(srcdir)/include/includes.h
$(COMPILE)
-BINARY_PREREQS = proto_exists bin/.dummy
+BINARY_PREREQS = bin/.dummy
# These dependencies are only approximately correct: we want to make
# sure Samba's paths are updated if ./configure is re-run. Really it
@$(CC) $(FLAGS) -o $@ $(NET_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
@POPTLIBS@ $(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@
bin/profiles@EXEEXT@: $(BINARY_PREREQS) $(PROFILES_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@
@echo Linking $@
bin/ldbedit: $(BINARY_PREREQS) $(LDBEDIT_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
@echo Linking $@
@$(CC) $(FLAGS) -o $@ $(LDBEDIT_OBJ) $(DYNEXP) $(LDFLAGS) \
- $(LIBS) @POPTLIBS@ $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
- $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
+ $(LIBS) @POPTLIBS@ $(LDAP_LIBS) \
@LIBTALLOC_LIBS@ @LIBTDB_LIBS@ @WINBIND_LIBS@
bin/ldbsearch: $(BINARY_PREREQS) $(LDBSEARCH_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
@echo Linking $@
@$(CC) $(FLAGS) -o $@ $(LDBSEARCH_OBJ) $(DYNEXP) $(LDFLAGS) \
- $(LIBS) @POPTLIBS@ $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
- $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
+ $(LIBS) @POPTLIBS@ $(LDAP_LIBS) \
@LIBTALLOC_LIBS@ @LIBTDB_LIBS@ @WINBIND_LIBS@
bin/ldbadd: $(BINARY_PREREQS) $(LDBADD_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
@echo Linking $@
- @$(CC) $(FLAGS) -o $@ $(LDBADD_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
- @POPTLIBS@ $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
- $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
+ @$(CC) $(FLAGS) -o $@ $(LDBADD_OBJ) $(DYNEXP) $(LDFLAGS) \
+ $(LIBS) @POPTLIBS@ $(LDAP_LIBS) \
@LIBTALLOC_LIBS@ @LIBTDB_LIBS@ @WINBIND_LIBS@
bin/ldbmodify: $(BINARY_PREREQS) $(LDBMODIFY_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
@echo Linking $@
- @$(CC) $(FLAGS) -o $@ $(LDBMODIFY_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
- @POPTLIBS@ $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
- $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
+ @$(CC) $(FLAGS) -o $@ $(LDBMODIFY_OBJ) $(DYNEXP) $(LDFLAGS) \
+ $(LIBS) @POPTLIBS@ $(LDAP_LIBS) \
@LIBTALLOC_LIBS@ @LIBTDB_LIBS@ @WINBIND_LIBS@
bin/ldbdel: $(BINARY_PREREQS) $(LDBDEL_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
@echo Linking $@
- @$(CC) $(FLAGS) -o $@ $(LDBDEL_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
- @POPTLIBS@ $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
- $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
+ @$(CC) $(FLAGS) -o $@ $(LDBDEL_OBJ) $(DYNEXP) $(LDFLAGS) \
+ $(LIBS) @POPTLIBS@ $(LDAP_LIBS) \
@LIBTALLOC_LIBS@ @LIBTDB_LIBS@ @WINBIND_LIBS@
-$(LIBTALLOC_SHARED_TARGET): $(BINARY_PREREQS) $(LIBTALLOC_OBJ)
+MKSYMS_SH = $(srcdir)/script/mksyms.sh
+
+$(LIBTALLOC_SYMS): $(LIBTALLOC_HEADERS) $(builddir)/library-versions
+ @$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBTALLOC_HEADERS)
+
+$(LIBTALLOC_SHARED_TARGET): $(BINARY_PREREQS) $(LIBTALLOC_OBJ) $(LIBTALLOC_SYMS)
@echo Linking shared library $@
@$(SHLD_DSO) $(LIBTALLOC_OBJ) \
@SONAMEFLAG@`basename $@`.$(SONAME_VER)
@echo Linking non-shared library $@
@-$(AR) -rc $@ $(LIBTALLOC_OBJ0)
-MKSYMS_SH = $(srcdir)/script/mksyms.sh
-
-$(LIBTDB_SYMS): $(LIBTDB_HEADERS)
- @$(MKSYMS_SH) $(AWK) $@ $(LIBTDB_HEADERS)
+$(LIBTDB_SYMS): $(LIBTDB_HEADERS) $(builddir)/library-versions
+ @$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBTDB_HEADERS)
$(LIBTDB_SHARED_TARGET): $(BINARY_PREREQS) $(LIBTDB_OBJ) $(LIBTDB_SYMS)
@echo Linking shared library $@
@echo Linking non-shared library $@
@-$(AR) -rc $@ $(LIBTDB_OBJ0)
-bin/libwbclient.@SHLIBEXT@: $(BINARY_PREREQS) $(LIBWBCLIENT_OBJ) @LIBTALLOC_SHARED@
+$(LIBWBCLIENT_SYMS): $(LIBWBCLIENT_HEADERS) $(builddir)/library-versions
+ @$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBWBCLIENT_HEADERS)
+
+$(LIBWBCLIENT_SHARED_TARGET): $(BINARY_PREREQS) $(LIBWBCLIENT_OBJ) $(LIBWBCLIENT_SYMS) @LIBTALLOC_SHARED@
@echo Linking shared library $@
@$(SHLD_DSO) @LIBTALLOC_LIBS@ $(LIBWBCLIENT_OBJ) \
@SONAMEFLAG@`basename $@`.$(SONAME_VER)
@ln -s -f `basename $@` $@.$(SONAME_VER)
-bin/libwbclient.a: $(BINARY_PREREQS) $(LIBWBCLIENT_OBJ0) $(WBCOMMON_OBJ)
+$(LIBWBCLIENT_STATIC_TARGET): $(BINARY_PREREQS) $(LIBWBCLIENT_OBJ0) $(WBCOMMON_OBJ)
@echo Linking non-shared library $@
@-$(AR) -rc $@ $(LIBWBCLIENT_OBJ0) $(WBCOMMON_OBJ)
@echo Linking non-shared library $@
@-$(AR) -rc $@ $(LIBADDNS_OBJ)
-$(LIBNETAPI_SHARED_TARGET): $(BINARY_PREREQS) $(LIBNETAPI_OBJ) @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
+$(LIBNETAPI_SYMS): $(LIBNETAPI_HEADERS) $(builddir)/library-versions
+ @$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBNETAPI_HEADERS)
+
+$(LIBNETAPI_SHARED_TARGET): $(BINARY_PREREQS) $(LIBNETAPI_OBJ) $(LIBNETAPI_SYMS) @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
@echo Linking shared library $@
@$(SHLD_DSO) $(LIBNETAPI_OBJ) \
@LIBTALLOC_LIBS@ @LIBTDB_LIBS@ @LIBWBCLIENT_SHARED@ $(LIBS) \
libwbclient: $(LIBWBCLIENT)
libnetapi: $(LIBNETAPI)
+shlibs: $(SHLIBS)
+
# Linker command to link a RPC, VFS, AUTH, CHARSET or PASSDB module.
SHLD_MODULE = $(SHLD) $(LDSHFLAGS) $(MODULE_EXPORTS) \
-o $@ @SONAMEFLAG@`basename $@`
bin/pam_winbind.@SHLIBEXT@: $(BINARY_PREREQS) $(PAM_WINBIND_OBJ)
@echo "Linking shared library $@"
@$(SHLD) $(LDSHFLAGS) -o $@ $(PAM_WINBIND_OBJ) -lpam @INIPARSERLIBS@ \
- @SONAMEFLAG@`basename $@`
+ @PAM_WINBIND_EXTRA_LIBS@ @SONAMEFLAG@`basename $@`
bin/builtin.@SHLIBEXT@: $(BINARY_PREREQS) $(AUTH_BUILTIN_OBJ)
@echo "Building plugin $@"
@echo Linking $@
@$(CC) $(FLAGS) -o $@ $(DYNEXP) script/tests/timelimit.o
-install: installservers installbin @INSTALL_CIFSMOUNT@ @INSTALL_CIFSSPNEGO@ installman \
+bin/rpc_open_tcp@EXEEXT@: $(BINARY_PREREQS) $(RPC_OPEN_TCP_OBJ) @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
+ @echo "Linking $@"
+ @$(CC) $(FLAGS) -o $@ $(RPC_OPEN_TCP_OBJ) $(LDFLAGS) $(DYNEXP) \
+ $(LIBS) @LIBTALLOC_LIBS@ @LIBTDB_SHARED@ @WINBIND_LIBS@ \
+ $(LDAP_LIBS) $(KRB5LIBS) $(NSCD_LIBS)
+
+install:: installservers installbin @INSTALL_CIFSMOUNT@ @INSTALL_CIFSSPNEGO@ installman \
installscripts installdat installmodules @SWAT_INSTALL_TARGETS@ \
installlibtalloc \
installlibtdb \
@INSTALL_LIBSMBCLIENT@ @INSTALL_PAM_MODULES@ \
@INSTALL_LIBSMBSHAREMODES@ @INSTALL_LIBWBCLIENT@ installlibnetapi
-install-everything: install installmodules
+install-everything:: install installmodules
# DESTDIR is used here to prevent packagers wasting their time
# duplicating the Makefile. Remove it and you will have the privelege
# the removal of DESTDIR. Do not remove it even though you think it
# is not used
-installdirs:
+installdirs::
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) $(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(MANDIR)
-installservers: all installdirs
+installservers:: all installdirs
@$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(SBINDIR) $(SBIN_PROGS)
-installbin: all installdirs
+installbin:: all installdirs
@$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $(BIN_PROGS)
-installcifsmount: @CIFSMOUNT_PROGS@
+installcifsmount:: @CIFSMOUNT_PROGS@
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(ROOTSBINDIR)
@$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@
-installcifsspnego: @CIFSSPNEGO_PROGS@
+installcifsspnego:: @CIFSSPNEGO_PROGS@
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(ROOTSBINDIR)
@$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSSPNEGO_PROGS@
# Some symlinks are required for the 'probing' of modules.
# This mechanism should go at some point..
-installmodules: modules installdirs
+installmodules:: modules installdirs
@$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(VFSLIBDIR) $(VFS_MODULES)
@$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES)
@$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(RPCLIBDIR) $(RPC_MODULES)
@$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) builtin.@SHLIBEXT@ guest.@SHLIBEXT@ fixed_challenge.@SHLIBEXT@ name_to_ntstatus.@SHLIBEXT@
@$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(NSSINFOLIBDIR) ../idmap/ad.@SHLIBEXT@ rfc2307.@SHLIBEXT@ sfu.@SHLIBEXT@ sfu20.@SHLIBEXT@
-installscripts: installdirs
+installscripts:: installdirs
@$(SHELL) $(srcdir)/script/installscripts.sh $(INSTALLPERMS_BIN) $(DESTDIR)$(BINDIR) $(SCRIPTS)
-installdat: installdirs
+installdat:: installdirs
@$(SHELL) $(srcdir)/script/installdat.sh $(DESTDIR) $(CODEPAGEDIR) $(srcdir)
-installmsg: installdirs
+installmsg:: installdirs
@$(SHELL) $(srcdir)/script/installmsg.sh $(DESTDIR) $(CODEPAGEDIR) $(srcdir)
-installswat: installdirs installmsg
+installswat:: installdirs installmsg
@$(SHELL) $(srcdir)/script/installswat.sh $(DESTDIR) $(SWATDIR) $(srcdir)
-installclientlib: installdirs libsmbclient
+installclientlib:: installdirs libsmbclient
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) bin/libsmbclient.@SHLIBEXT@ $(DESTDIR)$(LIBDIR)
-$(INSTALLLIBCMD_A) bin/libsmbclient.a $(DESTDIR)$(LIBDIR)
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) ${prefix}/include
-$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(srcdir)/include/libsmbclient.h $(DESTDIR)${prefix}/include
-installlibtalloc: installdirs libtalloc
+installlibtalloc:: installdirs libtalloc
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) $(LIBTALLOC_SHARED_TARGET) $(DESTDIR)$(LIBDIR)
-$(INSTALLLIBCMD_A) $(LIBTALLOC_STATIC_TARGET) $(DESTDIR)$(LIBDIR)
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) ${prefix}/include
- -$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(srcdir)/@tallocdir@/talloc.h $(DESTDIR)${prefix}/include
+ -$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(LIBTALLOC_HEADERS) $(DESTDIR)${prefix}/include
-installlibtdb: installdirs libtdb
+installlibtdb:: installdirs libtdb
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) $(LIBTDB_SHARED_TARGET) $(DESTDIR)$(LIBDIR)
-$(INSTALLLIBCMD_A) $(LIBTDB_STATIC_TARGET) $(DESTDIR)$(LIBDIR)
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) ${prefix}/include
-$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(LIBTDB_HEADERS) $(DESTDIR)${prefix}/include
-installlibsmbsharemodes: installdirs libsmbsharemodes
+installlibsmbsharemodes:: installdirs libsmbsharemodes
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) bin/libsmbsharemodes.@SHLIBEXT@ $(DESTDIR)$(LIBDIR)
-$(INSTALLLIBCMD_A) bin/libsmbsharemodes.a $(DESTDIR)$(LIBDIR)
-$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(srcdir)/include/smb_share_modes.h $(DESTDIR)${prefix}/include
-installlibaddns: installdirs libaddns
+installlibaddns:: installdirs libaddns
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) bin/libaddns.@SHLIBEXT@ $(DESTDIR)$(LIBDIR)
-$(INSTALLLIBCMD_A) bin/libaddns.a $(DESTDIR)$(LIBDIR)
-installlibwbclient: installdirs libwbclient
+installlibwbclient:: installdirs libwbclient
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) bin/libwbclient.@SHLIBEXT@ $(DESTDIR)$(LIBDIR)
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) ${prefix}/include
-$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(srcdir)/nsswitch/libwbclient/wbclient.h $(DESTDIR)${prefix}/include
-installlibnetapi: installdirs libnetapi
+installlibnetapi:: installdirs libnetapi
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
-$(INSTALLLIBCMD_SH) $(LIBNETAPI_SHARED_TARGET) $(DESTDIR)$(LIBDIR)
-$(INSTALLLIBCMD_A) $(LIBNETAPI_STATIC_TARGET) $(DESTDIR)$(LIBDIR)
-$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(srcdir)/lib/netapi/netapi.h $(DESTDIR)${prefix}/include
-installpammodules: $(PAM_MODULES)
+installpammodules:: $(PAM_MODULES)
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(PAMMODULESDIR)
@for module in $(PAM_MODULES); do \
echo "Installing module $${module} as $(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@ "; \
done
# revert to the previously installed version
-revert:
+revert::
@$(SHELL) $(srcdir)/script/revert.sh $(SBINDIR) $(SBIN_PROGS)
@$(SHELL) $(srcdir)/script/revert.sh $(BINDIR) $(BIN_PROGS) $(SCRIPTS)
-installman: installdirs
+installman:: installdirs
@$(SHELL) $(srcdir)/script/installman.sh $(DESTDIR)$(MANDIR) $(srcdir) C "@ROFF@"
.PHONY: showlayout
-showlayout:
+showlayout::
@echo "Samba will be installed into:"
@echo " prefix: $(prefix)"
@echo " bindir: $(BINDIR)"
@echo " swatdir: $(SWATDIR)"
-uninstall: uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ @UNINSTALL_CIFSSPNEGO@ uninstallscripts uninstalldat uninstallswat uninstallmodules uninstalllibtalloc uninstalllibtdb @UNINSTALL_LIBSMBCLIENT@ @UNINSTALL_PAM_MODULES@ @UNINSTALL_LIBSMBSHAREMODES@ uninstalllibnetapi
+uninstall:: uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ @UNINSTALL_CIFSSPNEGO@ uninstallscripts uninstalldat uninstallswat uninstallmodules uninstalllibtalloc uninstalllibtdb @UNINSTALL_LIBSMBCLIENT@ @UNINSTALL_PAM_MODULES@ @UNINSTALL_LIBSMBSHAREMODES@ uninstalllibnetapi
-uninstallman:
+uninstallman::
@$(SHELL) $(srcdir)/script/uninstallman.sh $(DESTDIR)$(MANDIR) $(srcdir) C
-uninstallservers:
+uninstallservers::
@$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(SBINDIR) $(SBIN_PROGS)
-uninstallbin:
+uninstallbin::
@$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $(BIN_PROGS)
-uninstallcifsmount:
+uninstallcifsmount::
@$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@
-uninstallcifsspnego:
+uninstallcifsspnego::
@$(SHELL) script/uninstallbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSSPNEGO_PROGS@
-uninstallmodules:
+uninstallmodules::
@$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(VFSLIBDIR) $(VFS_MODULES)
@$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES)
@$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(RPCLIBDIR) $(RPC_MODULES)
@$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES)
@$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(GPEXTLIBDIR) $(GPEXT_MODULES)
-uninstallscripts:
+uninstallscripts::
@$(SHELL) $(srcdir)/script/uninstallscripts.sh $(INSTALLPERMS_BIN) $(DESTDIR)$(BINDIR) $(SCRIPTS)
-uninstalldat:
+uninstalldat::
@$(SHELL) $(srcdir)/script/uninstalldat.sh $(DESTDIR) $(LIBDIR) $(srcdir)
-uninstallmsg:
+uninstallmsg::
@$(SHELL) $(srcdir)/script/uninstallmsg.sh $(DESTDIR) $(LIBDIR) $(srcdir)
-uninstallswat: uninstallmsg
+uninstallswat:: uninstallmsg
@$(SHELL) $(srcdir)/script/uninstallswat.sh $(DESTDIR) $(SWATDIR) $(srcdir)
-uninstallclientlib:
+uninstallclientlib::
-$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/libsmbclient.@SHLIBEXT@
-$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/libsmbclient.a
-rm -f $(DESTDIR)${prefix}/include/libsmbclient.h
-uninstalllibsmbsharemodes:
+uninstalllibsmbsharemodes::
-$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/libsmbsharemodes.@SHLIBEXT@
-$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/libsmbsharemodes.a
-uninstalllibaddns:
+uninstalllibaddns::
-$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/libaddns.@SHLIBEXT@
-$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/libaddns.a
-uninstalllibnetapi:
+uninstalllibnetapi::
-$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/libnetapi.@SHLIBEXT@
-$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/libnetapi.a
-rm -f $(DESTDIR)${prefix}/include/netapi.h
-uninstallpammodules:
+uninstallpammodules::
@for module in $(PAM_MODULES); do \
echo "Removing $(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@ "; \
rm -f "$(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@"; \
# Toplevel clean files
TOPFILES=dynconfig.o
-clean: delheaders
+clean::
+ -rm -f include/build_env.h
+ -rm -f smbd/build_options.c
-rm -f $(PRECOMPILED_HEADER)
-rm -f core */*~ *~ \
*/*.o */*/*.o */*/*/*.o \
$(LIBTALLOC) $(LIBSMBCLIENT) $(LIBADDNS) \
$(LIBSMBSHAREMODES) $(EVERYTHING_PROGS) $(LIBNETAPI) \
bin/libwbclient.so.0 bin/timelimit \
- .headers.stamp */src/*.o proto_exists \
- $(LIBTDB_SYMS)
+ .headers.stamp */src/*.o \
+ $(LIBTALLOC_SYMS) $(LIBWBCLIENT_SYMS) $(LIBTDB_SYMS) $(LIBNETAPI_SYMS)
-rm -rf t_dir
-# Making this target will just make sure that the prototype files
-# exist, not necessarily that they are up to date. Since they're
-# removed by "make clean" this will always be run when you do anything
-# afterwards.
-proto_exists: include/proto.h include/build_env.h \
- winbindd/winbindd_proto.h web/swat_proto.h \
- libnet/libnet_proto.h \
- client/client_proto.h utils/net_proto.h utils/ntlm_auth_proto.h smbd/build_options.c
- @touch proto_exists
-
-delheaders:
- @echo Removing prototype headers
- @rm -f include/proto.h include/build_env.h \
- winbindd/winbindd_proto.h web/swat_proto.h \
- client/client_proto.h utils/net_proto.h \
- smbd/build_options.c utils/ntlm_auth_proto.h \
- utils/passwd_proto.h libnet/libnet_proto.h
-
-MKPROTO_SH = $(srcdir)/script/mkproto.sh
-
-include/proto.h: smbd/build_options.c
- @echo Building include/proto.h
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _PROTO_H_ $(builddir)/include/proto.h \
- $(PROTO_OBJ)
-
include/build_env.h: script/build_env.sh
@echo Building include/build_env.h
@$(SHELL) $(srcdir)/script/build_env.sh $(srcdir) $(builddir) $(CC) \
> $(builddir)/include/build_env.h
-winbindd/winbindd_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _WINBINDD_PROTO_H_ $(builddir)/winbindd/winbindd_proto.h \
- $(WINBINDD_OBJ1)
-
-web/swat_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _SWAT_PROTO_H_ $(builddir)/web/swat_proto.h \
- $(SWAT_OBJ1)
-
-client/client_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _CLIENT_PROTO_H_ $(builddir)/client/client_proto.h \
- $(CLIENT_OBJ1)
-
-utils/net_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _NET_PROTO_H_ $(builddir)/utils/net_proto.h \
- $(NET_OBJ1)
-
-utils/passwd_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _PASSWD_PROTO_H_ $(builddir)/utils/passwd_proto.h \
- $(PASSWD_UTIL_OBJ)
-
-utils/ntlm_auth_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _NTLM_AUTH_PROTO_H_ $(builddir)/utils/ntlm_auth_proto.h \
- $(NTLM_AUTH_OBJ1)
-
-libnet/libnet_proto.h:
- @cd $(srcdir) && $(SHELL) $(MKPROTO_SH) $(AWK) \
- -h _LIBNET_PROTO_H_ $(builddir)/libnet/libnet_proto.h \
- $(LIBNET_OBJ)
-
-# "make headers" or "make proto" calls a subshell because we need to
-# make sure these commands are executed in sequence even for a
-# parallel make.
-headers:
- $(MAKE) delheaders; \
- $(MAKE) smbd/build_options.c; \
- $(MAKE) include/proto.h; \
- $(MAKE) include/build_env.h; \
- $(MAKE) winbindd/winbindd_proto.h; \
- $(MAKE) web/swat_proto.h; \
- $(MAKE) client/client_proto.h; \
- $(MAKE) utils/ntlm_auth_proto.h; \
- $(MAKE) utils/net_proto.h; \
- $(MAKE) utils/passwd_proto.h; \
- $(MAKE) libnet/libnet_proto.h;
-
-proto: headers
-
-.PHONY: headers proto
+proto::
+ @echo
+ @echo "NOTE: 'proto' is no longer a valid make target as proto.h"
+ @echo "and other prototype headers are not generated anymore."
+ @echo
+
+.PHONY: proto
etags:
etags `find $(srcdir) -name "*.[ch]" | grep -v /.svn/`
ctags:
ctags `find $(srcdir) -name "*.[ch]" | grep -v /.svn/`
-realclean: clean delheaders
+realclean:: clean
-rm -f config.log bin/.dummy script/findsmb script/gen-8bit-gap.sh
-rm -f script/installbin.sh script/uninstallbin.sh
-distclean: realclean
+distclean:: realclean
-rm -f smbadduser
-rm -f include/config.h Makefile
-rm -f config.status config.cache so_locations
-rm -rf .deps TAGS
-realdistclean: distclean
+realdistclean:: distclean
-rm -f include/config.h.in
-rm -f include/version.h
-rm -f configure
# this target is really just for my use. It only works on a limited
# range of machines and is used to produce a list of potentially
# dead (ie. unused) functions in the code. (tridge)
-finddead:
+finddead::
nm */*.o |grep 'U ' | awk '{print $$2}' | sort -u > nmused.txt
nm */*.o |grep 'T ' | awk '{print $$3}' | sort -u > nmfns.txt
comm -13 nmused.txt nmfns.txt
# Samba Testing Framework
# Check shared libs for unresolved symbols
-test_shlibs: $(SHLIBS)
+test_shlibs:: $(SHLIBS)
@echo "Testing $(SHLIBS) "
@export $(LIB_PATH_VAR)=./bin && \
for module in $(SHLIBS); do \
done
# Check for NSS module problems.
-test_nss_modules: nss_modules
+test_nss_modules:: nss_modules
@echo "Testing $(NSS_MODULES) "
@export $(LIB_PATH_VAR)=./bin && \
for module in $(NSS_MODULES); do \
# Check for PAM module problems. Specifically, check that every module we
# built can actually be loaded by a minimal PAM-aware application.
-test_pam_modules: pam_modules
+test_pam_modules:: pam_modules
@echo "Testing $(PAM_MODULES) "
@export $(LIB_PATH_VAR)=./bin && \
for module in $(PAM_MODULES); do \
##
## Targets for 'make test'
##
-test: all torture timelimit
+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}"
-valgrindtest: all torture timelimit
+valgrindtest:: all torture timelimit
@echo Running Test suite with valgrind
@LIB_PATH_VAR=$(LIB_PATH_VAR) \
NMBD_VALGRIND="xterm -n nmbd -e valgrind -q --db-attach=yes --num-callers=30" \