1 #########################################################################
2 # Makefile.in for Samba - rewritten for autoconf support
3 # Copyright Andrew Tridgell 1992-1998
4 # Copyright (C) 2001 by Martin Pool <mbp@samba.org>
5 # Copyright Andrew Barteltt 2002
6 # Copyright (C) 2003 Anthony Liguori <aliguor@us.ibm.com>
7 ###########################################################################
10 exec_prefix=@
exec_prefix@
20 LDSHFLAGS
=@LDSHFLAGS@ @LDFLAGS@ @CFLAGS@
25 TERMLDFLAGS
=@TERMLDFLAGS@
30 LINK
=$(CC
) $(FLAGS
) $(LDFLAGS
)
39 # XXX: Perhaps this should be @SHELL@ instead -- apparently autoconf
40 # will search for a POSIX-compliant shell, and that might not be
41 # /bin/sh on some platforms. I guess it's not a big problem -- mbp
43 # See the autoconf manual "Installation Directory Variables" for a
44 # discussion of thesubtle use of these variables.
48 # sbindir is mapped to bindir when compiling SAMBA in 2.0.x compatibility mode.
51 VFSLIBDIR
= $(LIBDIR
)/vfs
52 PDBLIBDIR
= $(LIBDIR
)/pdb
53 RPCLIBDIR
= $(LIBDIR
)/rpc
54 CONFIGDIR
= @configdir@
55 VARDIR
= @localstatedir@
58 # The permissions to give the executables
61 # set these to where to find various files
62 # These can be overridden by command line switches (see smbd(8))
63 # or in smb.conf (see smb.conf(5))
64 LOGFILEBASE
= @logfilebase@
65 CONFIGFILE
= $(CONFIGDIR
)/smb.conf
66 LMHOSTSFILE
= $(CONFIGDIR
)/lmhosts
68 # This is where smbpasswd et al go
69 PRIVATEDIR
= @privatedir@
71 SMB_PASSWD_FILE
= $(PRIVATEDIR
)/smbpasswd
72 PRIVATE_DIR
= $(PRIVATEDIR
)
74 # This is where SWAT images and help files go
77 # the directory where lock files go
80 # the directory where pid files go
82 # man pages language(s)
83 man_langs
= "@manlangs@"
89 FLAGS1
= $(CFLAGS
) @FLAGS1@
-Iinclude
-I
$(srcdir)/include -I
$(srcdir)/ubiqx
-I
$(srcdir)/smbwrapper
-I.
$(CPPFLAGS
) -I
$(srcdir)
93 FLAGS5
= $(FLAGS1
) $(FLAGS2
) $(FLAGS3
) $(FLAGS4
)
94 FLAGS
= $(ISA
) $(FLAGS5
)
95 FLAGS32
= $(ISA32
) $(FLAGS5
)
97 PASSWD_FLAGS
= -DSMB_PASSWD_FILE
=\"$(SMB_PASSWD_FILE
)\" -DPRIVATE_DIR
=\"$(PRIVATE_DIR
)\"
98 PATH_FLAGS1
= -DCONFIGFILE
=\"$(CONFIGFILE
)\" -DSBINDIR
=\"$(SBINDIR
)\"
99 PATH_FLAGS2
= $(PATH_FLAGS1
) -DBINDIR
=\"$(BINDIR
)\" -DDRIVERFILE
=\"$(DRIVERFILE
)\"
100 PATH_FLAGS3
= $(PATH_FLAGS2
) -DLMHOSTSFILE
=\"$(LMHOSTSFILE
)\"
101 PATH_FLAGS4
= $(PATH_FLAGS3
) -DSWATDIR
=\"$(SWATDIR
)\" -DLOCKDIR
=\"$(LOCKDIR
)\" -DPIDDIR
=\"$(PIDDIR
)\"
102 PATH_FLAGS5
= $(PATH_FLAGS4
) -DLIBDIR
=\"$(LIBDIR
)\" \
103 -DLOGFILEBASE
=\"$(LOGFILEBASE
)\" -DSHLIBEXT
=\"@SHLIBEXT@
\"
104 PATH_FLAGS6
= $(PATH_FLAGS5
) -DCONFIGDIR
=\"$(CONFIGDIR
)\"
105 PATH_FLAGS
= $(PATH_FLAGS6
) $(PASSWD_FLAGS
)
107 # Note that all executable programs now provide for an optional executable suffix.
109 SBIN_PROGS
= bin
/smbd@EXEEXT@ bin
/nmbd@EXEEXT@ bin
/swat@EXEEXT@ \
110 bin
/wrepld@EXEEXT@ @EXTRA_SBIN_PROGS@
112 BIN_PROGS1
= bin
/smbclient@EXEEXT@ bin
/net@EXEEXT@ bin
/smbspool@EXEEXT@ \
113 bin
/testparm@EXEEXT@ bin
/testprns@EXEEXT@ bin
/smbstatus@EXEEXT@
114 BIN_PROGS2
= bin
/smbcontrol@EXEEXT@ bin
/smbtree@EXEEXT@ bin
/tdbbackup@EXEEXT@ \
115 bin
/nmblookup@EXEEXT@ bin
/pdbedit@EXEEXT@
116 BIN_PROGS3
= bin
/smbpasswd@EXEEXT@ bin
/rpcclient@EXEEXT@ bin
/smbcacls@EXEEXT@ \
117 bin
/profiles@EXEEXT@ bin
/smbgroupedit@EXEEXT@ bin
/ntlm_auth@EXEEXT@ \
120 TORTURE_PROGS
= bin
/smbtorture@EXEEXT@ bin
/msgtest@EXEEXT@ \
121 bin
/masktest@EXEEXT@ bin
/locktest@EXEEXT@ \
122 bin
/locktest2@EXEEXT@ bin
/nsstest@EXEEXT@ bin
/vfstest@EXEEXT@
124 BIN_PROGS
= $(BIN_PROGS1
) $(BIN_PROGS2
) $(BIN_PROGS3
) @EXTRA_BIN_PROGS@
126 SHLIBS
= @SHLIB_PROGS@ @LIBSMBCLIENT@
128 SCRIPTS
= $(srcdir)/script
/smbtar
$(srcdir)/script
/addtosmbpass
$(srcdir)/script
/convert_smbpasswd \
129 $(builddir
)/script
/findsmb
131 QUOTAOBJS
=@QUOTAOBJS@
133 VFS_MODULES
= bin
/vfs_audit.@SHLIBEXT@ bin
/vfs_recycle.@SHLIBEXT@ bin
/vfs_netatalk.@SHLIBEXT@ bin
/vfs_fake_perms.@SHLIBEXT@
134 PDB_MODULES
= @MODULE_MYSQL@ @MODULE_XML@
135 MODULES
= bin
/developer.@SHLIBEXT@
137 ######################################################################
139 ######################################################################
141 TDBBASE_OBJ
= tdb
/tdb.o tdb
/spinlock.o
142 TDB_OBJ
= $(TDBBASE_OBJ
) tdb
/tdbutil.o
144 LIB_OBJ
= lib
/charcnv.o lib
/debug.o lib
/fault.o \
145 lib
/getsmbpass.o lib
/interface.o lib
/md4.o \
146 lib
/interfaces.o lib
/pidfile.o lib
/replace.o \
147 lib
/signal.o lib
/system.o lib
/sendfile.o lib
/time.o \
148 lib
/ufc.o lib
/genrand.o lib
/username.o \
149 lib
/util_getent.o lib
/util_pw.o lib
/access.o lib
/smbrun.o \
150 lib
/bitmap.o lib
/crc32.o lib
/snprintf.o lib
/dprintf.o \
151 lib
/xfile.o lib
/wins_srv.o \
152 lib
/util_str.o lib
/util_sid.o lib
/util_uuid.o \
153 lib
/util_unistr.o lib
/util_file.o lib
/data_blob.o \
154 lib
/util.o lib
/util_sock.o lib
/util_sec.o \
155 lib
/talloc.o lib
/hash.o lib
/substitute.o lib
/fsusage.o \
156 lib
/ms_fnmatch.o lib
/select.o lib
/messages.o \
157 lib
/tallocmsg.o lib
/dmallocmsg.o \
158 lib
/md5.o lib
/hmacmd5.o lib
/iconv.o lib
/smbpasswd.o \
159 nsswitch
/wb_client.o nsswitch
/wb_common.o \
160 lib
/pam_errors.o intl
/lang_tdb.o lib
/account_pol.o \
161 lib
/adt_tree.o lib
/gencache.o
$(TDB_OBJ
) \
162 lib
/module.o lib
/genparser.o lib
/genparser_samba.o
164 LIB_SMBD_OBJ
= lib
/system_smbd.o lib
/util_smbd.o
166 READLINE_OBJ
= lib
/readline.o
168 POPT_LIB_OBJ
= lib
/popt_common.o
170 UBIQX_OBJ
= ubiqx
/ubi_BinTree.o ubiqx
/ubi_Cache.o ubiqx
/ubi_SplayTree.o \
171 ubiqx
/ubi_dLinkList.o ubiqx
/ubi_sLinkList.o
173 PARAM_OBJ
= param
/loadparm.o param
/params.o dynconfig.o
175 LIBADS_OBJ
= libads
/ldap.o libads
/ldap_printer.o libads
/sasl.o \
176 libads
/krb5_setpw.o libads
/kerberos.o libads
/ldap_user.o \
177 libads
/ads_struct.o libads
/ads_status.o \
178 libads
/disp_sec.o libads
/ads_utils.o libads
/ldap_utils.o \
181 LIBADS_SERVER_OBJ
= libads
/util.o libads
/kerberos_verify.o
183 SECRETS_OBJ
= passdb
/secrets.o
185 LIBSMB_OBJ
= libsmb
/clientgen.o libsmb
/cliconnect.o libsmb
/clifile.o \
186 libsmb
/clikrb5.o libsmb
/clispnego.o libsmb
/asn1.o \
187 libsmb
/clirap.o libsmb
/clierror.o libsmb
/climessage.o \
188 libsmb
/clireadwrite.o libsmb
/clilist.o libsmb
/cliprint.o \
189 libsmb
/clitrans.o libsmb
/clisecdesc.o libsmb
/clidgram.o \
190 libsmb
/namequery.o libsmb
/nmblib.o libsmb
/clistr.o \
191 libsmb
/nterr.o libsmb
/smbdes.o libsmb
/smbencrypt.o \
192 libsmb
/smberr.o libsmb
/credentials.o libsmb
/pwd_cache.o \
193 libsmb
/clioplock.o libsmb
/errormap.o libsmb
/clirap2.o \
194 libsmb
/passchange.o libsmb
/unexpected.o libsmb
/doserr.o \
195 libsmb
/namecache.o libsmb
/trustdom_cache.o libsmb
/ntlmssp.o \
198 LIBMSRPC_OBJ
= rpc_client
/cli_lsarpc.o rpc_client
/cli_samr.o \
199 rpc_client
/cli_netlogon.o rpc_client
/cli_srvsvc.o \
200 rpc_client
/cli_wkssvc.o rpc_client
/cli_dfs.o \
201 rpc_client
/cli_reg.o rpc_client
/cli_pipe.o \
202 rpc_client
/cli_spoolss.o rpc_client
/cli_spoolss_notify.o \
203 rpc_client
/cli_ds.o libsmb
/namequery_dc.o
205 LIBMSRPC_SERVER_OBJ
= libsmb
/trust_passwd.o
207 REGOBJS_OBJ
= registry
/reg_objects.o
208 REGISTRY_OBJ
= registry
/reg_frontend.o registry
/reg_cachehook.o registry
/reg_printing.o \
211 RPC_LSA_OBJ
= rpc_server
/srv_lsa.o rpc_server
/srv_lsa_nt.o
213 RPC_NETLOG_OBJ
= rpc_server
/srv_netlog.o rpc_server
/srv_netlog_nt.o
215 RPC_SAMR_OBJ
= rpc_server
/srv_samr.o rpc_server
/srv_samr_nt.o \
216 rpc_server
/srv_samr_util.o
218 RPC_REG_OBJ
= rpc_server
/srv_reg.o rpc_server
/srv_reg_nt.o
220 RPC_SVC_OBJ
= rpc_server
/srv_srvsvc.o rpc_server
/srv_srvsvc_nt.o
222 RPC_WKS_OBJ
= rpc_server
/srv_wkssvc.o rpc_server
/srv_wkssvc_nt.o
224 RPC_DFS_OBJ
= rpc_server
/srv_dfs.o rpc_server
/srv_dfs_nt.o
225 RPC_SPOOLSS_OBJ
= rpc_server
/srv_spoolss.o rpc_server
/srv_spoolss_nt.o
227 RPC_PIPE_OBJ
= rpc_server
/srv_pipe_hnd.o rpc_server
/srv_util.o \
228 rpc_server
/srv_pipe.o rpc_server
/srv_lsa_hnd.o
230 # These are like they are to avoid a dependency on GNU MAKE
232 @LSA_DYNAMIC_YES@ bin
/librpc_lsarpc.@SHLIBEXT@\
233 @NETLOG_DYNAMIC_YES@ bin
/librpc_NETLOGON.@SHLIBEXT@ \
234 @SAMR_DYNAMIC_YES@ bin
/librpc_samr.@SHLIBEXT@ \
235 @SVC_DYNAMIC_YES@ bin
/librpc_srvsvc.@SHLIBEXT@ \
236 @WKS_DYNAMIC_YES@ bin
/librpc_wkssvc.@SHLIBEXT@ \
237 @REG_DYNAMIC_YES@ bin
/librpc_winreg.@SHLIBEXT@ \
238 @SPOOLSS_DYNAMIC_YES@ bin
/librpc_spoolss.@SHLIBEXT@ \
239 @DFS_DYNAMIC_YES@ bin
/librpc_netdfs.@SHLIBEXT@
242 RPC_SERVER_OBJ
= $(RPC_PIPE_OBJ
) \
243 @LSA_DYNAMIC_NO@
$(RPC_LSA_OBJ
) \
244 @NETLOG_DYNAMIC_NO@
$(RPC_NETLOG_OBJ
) \
245 @SAMR_DYNAMIC_NO@
$(RPC_SAMR_OBJ
) \
246 @SVC_DYNAMIC_NO@
$(RPC_SVC_OBJ
) \
247 @WKS_DYNAMIC_NO@
$(RPC_WKS_OBJ
) \
248 @REG_DYNAMIC_NO@
$(RPC_REG_OBJ
) \
249 @SPOOLSS_DYNAMIC_NO@
$(RPC_SPOOLSS_OBJ
) \
250 @DFS_DYNAMIC_NO@
$(RPC_DFS_OBJ
)
253 # this includes only the low level parse code, not stuff
254 # that requires knowledge of security contexts
255 RPC_PARSE_OBJ1
= rpc_parse
/parse_prs.o rpc_parse
/parse_sec.o \
256 rpc_parse
/parse_misc.o
258 RPC_PARSE_OBJ
= rpc_parse
/parse_lsa.o rpc_parse
/parse_net.o \
259 rpc_parse
/parse_reg.o rpc_parse
/parse_rpc.o \
260 rpc_parse
/parse_samr.o rpc_parse
/parse_srv.o \
261 rpc_parse
/parse_wks.o rpc_parse
/parse_ds.o \
262 rpc_parse
/parse_spoolss.o rpc_parse
/parse_dfs.o \
266 RPC_CLIENT_OBJ
= rpc_client
/cli_pipe.o
268 LOCKING_OBJ
= locking
/locking.o locking
/brlock.o locking
/posix.o
270 PASSDB_GET_SET_OBJ
= passdb
/pdb_get_set.o
272 PASSDB_OBJ
= $(PASSDB_GET_SET_OBJ
) passdb
/passdb.o passdb
/pdb_interface.o \
273 passdb
/machine_sid.o passdb
/pdb_smbpasswd.o \
274 passdb
/pdb_tdb.o passdb
/pdb_ldap.o \
275 passdb
/pdb_unix.o passdb
/util_sam_sid.o \
276 passdb
/pdb_compat.o passdb
/pdb_nisplus.o
278 XML_OBJ
= modules
/xml.o
279 MYSQL_OBJ
= modules
/mysql.o
280 DEVEL_HELP_OBJ
= modules
/developer.o
282 SAM_STATIC_MODULES
= sam
/sam_plugin.o sam
/sam_skel.o sam
/sam_ads.o
284 SAM_OBJ
= sam
/account.o sam
/get_set_account.o sam
/get_set_group.o \
285 sam
/get_set_domain.o sam
/interface.o
$(SAM_STATIC_MODULES
)
287 SAMTEST_OBJ
= torture
/samtest.o torture
/cmd_sam.o
$(SAM_OBJ
) $(LIB_OBJ
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(READLINE_OBJ
) lib
/util_seaccess.o
$(LIBADS_OBJ
) $(PASSDB_OBJ
) $(SECRETS_OBJ
) $(GROUPDB_OBJ
)
289 GROUPDB_OBJ
= groupdb
/mapping.o
291 # passdb/smbpass.o passdb/ldap.o passdb/nispass.o
293 PROFILE_OBJ
= profile
/profile.o
295 OPLOCK_OBJ
= smbd
/oplock.o smbd
/oplock_irix.o smbd
/oplock_linux.o
297 NOTIFY_OBJ
= smbd
/notify.o smbd
/notify_hash.o smbd
/notify_kernel.o
299 PLAINTEXT_AUTH_OBJ
= auth
/pampass.o auth
/pass_check.o
301 UNIGRP_OBJ
= libsmb
/netlogon_unigrp.o
303 AUTH_OBJ
= auth
/auth.o auth
/auth_sam.o auth
/auth_server.o auth
/auth_domain.o \
304 auth
/auth_rhosts.o auth
/auth_unix.o auth
/auth_util.o auth
/auth_winbind.o \
305 auth
/auth_builtin.o auth
/auth_compat.o auth
/auth_ntlmssp.o \
306 $(PLAINTEXT_AUTH_OBJ
) $(UNIGRP_OBJ
)
308 MANGLE_OBJ
= smbd
/mangle.o smbd
/mangle_hash.o smbd
/mangle_map.o smbd
/mangle_hash2.o
310 SMBD_OBJ_MAIN
= smbd
/server.o
312 SMBD_OBJ_SRV
= smbd
/files.o smbd
/chgpasswd.o smbd
/connection.o \
313 smbd
/utmp.o smbd
/session.o \
314 smbd
/dfree.o smbd
/dir.o smbd
/password.o smbd
/conn.o smbd
/fileio.o \
315 smbd
/ipc.o smbd
/lanman.o smbd
/negprot.o \
316 smbd
/message.o smbd
/nttrans.o smbd
/pipes.o \
317 smbd
/reply.o smbd
/sesssetup.o smbd
/trans2.o smbd
/uid.o \
318 smbd
/dosmode.o smbd
/filename.o smbd
/open.o smbd
/close.o \
319 smbd
/blocking.o smbd
/sec_ctx.o \
320 smbd
/vfs.o smbd
/vfs-wrap.o smbd
/statcache.o \
321 smbd
/posix_acls.o lib
/sysacls.o lib
/server_mutex.o \
322 smbd
/process.o smbd
/service.o smbd
/error.o \
323 printing
/printfsp.o lib
/util_seaccess.o smbd
/srvstr.o \
324 smbd
/build_options.o \
325 smbd
/change_trust_pw.o \
328 SMBD_OBJ_BASE
= $(SMBD_OBJ_SRV
) $(MSDFS_OBJ
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
329 $(RPC_SERVER_OBJ
) $(RPC_PARSE_OBJ
) $(SECRETS_OBJ
) \
330 $(LOCKING_OBJ
) $(PASSDB_OBJ
) $(PRINTING_OBJ
) $(PROFILE_OBJ
) \
331 $(LIB_OBJ
) $(PRINTBACKEND_OBJ
) $(QUOTAOBJS
) $(OPLOCK_OBJ
) \
332 $(NOTIFY_OBJ
) $(GROUPDB_OBJ
) $(AUTH_OBJ
) \
333 $(LIBMSRPC_OBJ
) $(LIBMSRPC_SERVER_OBJ
) \
334 $(LIBADS_OBJ
) $(LIBADS_SERVER_OBJ
) \
335 $(LIB_SMBD_OBJ
) $(REGISTRY_OBJ
) $(POPT_LIB_OBJ
)
338 PRINTING_OBJ
= printing
/pcap.o printing
/print_svid.o \
339 printing
/print_cups.o printing
/print_generic.o \
340 printing
/lpq_parse.o printing
/load.o
342 PRINTBACKEND_OBJ
= printing
/printing.o printing
/nt_printing.o printing
/notify.o \
343 printing
/printing_db.o
345 MSDFS_OBJ
= msdfs
/msdfs.o
347 SMBD_OBJ
= $(SMBD_OBJ_MAIN
) $(SMBD_OBJ_BASE
)
349 NMBD_OBJ1
= nmbd
/asyncdns.o nmbd
/nmbd.o nmbd
/nmbd_become_dmb.o \
350 nmbd
/nmbd_become_lmb.o nmbd
/nmbd_browserdb.o \
351 nmbd
/nmbd_browsesync.o nmbd
/nmbd_elections.o \
352 nmbd
/nmbd_incomingdgrams.o nmbd
/nmbd_incomingrequests.o \
353 nmbd
/nmbd_lmhosts.o nmbd
/nmbd_logonnames.o nmbd
/nmbd_mynames.o \
354 nmbd
/nmbd_namelistdb.o nmbd
/nmbd_namequery.o \
355 nmbd
/nmbd_nameregister.o nmbd
/nmbd_namerelease.o \
356 nmbd
/nmbd_nodestatus.o nmbd
/nmbd_packets.o \
357 nmbd
/nmbd_processlogon.o nmbd
/nmbd_responserecordsdb.o \
358 nmbd
/nmbd_sendannounce.o nmbd
/nmbd_serverlistdb.o \
359 nmbd
/nmbd_subnetdb.o nmbd
/nmbd_winsproxy.o nmbd
/nmbd_winsserver.o \
360 nmbd
/nmbd_workgroupdb.o nmbd
/nmbd_synclists.o
362 NMBD_OBJ
= $(NMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
363 $(PROFILE_OBJ
) $(LIB_OBJ
) $(SECRETS_OBJ
) $(POPT_LIB_OBJ
)
365 WREPL_OBJ1
= wrepld
/server.o wrepld
/process.o wrepld
/parser.o wrepld
/socket.o \
368 WREPL_OBJ
= $(WREPL_OBJ1
) $(PARAM_OBJ
) $(UBIQX_OBJ
) \
369 $(PROFILE_OBJ
) $(LIB_OBJ
)
371 SWAT_OBJ1
= web
/cgi.o web
/diagnose.o web
/startstop.o web
/statuspage.o \
372 web
/swat.o web
/neg_lang.o
374 SWAT_OBJ
= $(SWAT_OBJ1
) $(PRINTING_OBJ
) $(LIBSMB_OBJ
) $(LOCKING_OBJ
) \
375 $(PARAM_OBJ
) $(PASSDB_OBJ
) $(SECRETS_OBJ
) \
376 $(UBIQX_OBJ
) $(LIB_OBJ
) $(GROUPDB_OBJ
) $(PLAINTEXT_AUTH_OBJ
)
378 SMBSH_OBJ
= smbwrapper
/smbsh.o smbwrapper
/shared.o \
379 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
381 STATUS_OBJ
= utils
/status.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
382 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) $(POPT_LIB_OBJ
)
384 SMBCONTROL_OBJ
= utils
/smbcontrol.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
385 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) printing
/notify.o \
386 printing
/printing_db.o
388 SMBTREE_OBJ
= utils
/smbtree.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
389 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) $(LIBSMB_OBJ
)
391 TESTPARM_OBJ
= utils
/testparm.o \
392 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) $(POPT_LIB_OBJ
)
394 TESTPRNS_OBJ
= utils
/testprns.o
$(PARAM_OBJ
) $(PRINTING_OBJ
) $(UBIQX_OBJ
) \
397 SMBPASSWD_OBJ
= utils
/smbpasswd.o
$(PARAM_OBJ
) $(SECRETS_OBJ
) \
398 $(LIBSMB_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
)\
399 $(UBIQX_OBJ
) $(LIB_OBJ
)
401 PDBEDIT_OBJ
= utils
/pdbedit.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(PASSDB_OBJ
) \
402 $(UBIQX_OBJ
) $(LIB_OBJ
) $(GROUPDB_OBJ
) $(SECRETS_OBJ
) \
405 SMBGROUPEDIT_OBJ
= utils
/smbgroupedit.o
$(GROUPDB_OBJ
) $(PARAM_OBJ
) \
406 $(LIBSMB_OBJ
) $(PASSDB_OBJ
) $(SECRETS_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
408 RPCCLIENT_OBJ1
= rpcclient
/rpcclient.o rpcclient
/cmd_lsarpc.o \
409 rpcclient
/cmd_samr.o rpcclient
/cmd_spoolss.o \
410 rpcclient
/cmd_netlogon.o rpcclient
/cmd_srvsvc.o \
411 rpcclient
/cmd_dfs.o rpcclient
/cmd_reg.o \
412 rpcclient
/display_sec.o rpcclient
/cmd_ds.o
414 RPCCLIENT_OBJ
= $(RPCCLIENT_OBJ1
) \
415 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
416 $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
) $(LIBMSRPC_OBJ
) \
417 $(READLINE_OBJ
) $(GROUPDB_OBJ
) \
418 $(LIBADS_OBJ
) $(SECRETS_OBJ
) $(POPT_LIB_OBJ
)
420 PAM_WINBIND_OBJ
= nsswitch
/pam_winbind.po nsswitch
/wb_common.po lib
/snprintf.po
422 SMBW_OBJ1
= smbwrapper
/smbw.o \
423 smbwrapper
/smbw_dir.o smbwrapper
/smbw_stat.o \
424 smbwrapper
/realcalls.o smbwrapper
/shared.o \
425 smbwrapper
/smbw_cache.o
427 SMBW_OBJ
= $(SMBW_OBJ1
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
428 $(UBIQX_OBJ
) $(LIB_OBJ
)
430 SMBWRAPPER_OBJ1
= smbwrapper
/wrapped.o
432 SMBWRAPPER_OBJ
= $(SMBW_OBJ
) $(SMBWRAPPER_OBJ1
)
434 LIBSMBCLIENT_OBJ
= libsmb
/libsmbclient.o libsmb
/libsmb_compat.o \
435 libsmb
/libsmb_cache.o
$(LIB_OBJ
) \
436 $(LIBSMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
)
438 # This shared library is intended for linking with unit test programs
439 # to test Samba internals. It's called libbigballofmud.so to
440 # discourage casual usage.
442 LIBBIGBALLOFMUD_MAJOR
= 0
444 LIBBIGBALLOFMUD_OBJ
= $(LIB_OBJ
) $(UBIQX_OBJ
) $(PARAM_OBJ
) $(SECRETS_OBJ
) \
445 $(LIBSMB_OBJ
) $(LIBMSRPC_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
) \
448 LIBBIGBALLOFMUD_PICOBJS
= $(LIBBIGBALLOFMUD_OBJ
:.o
=.po
)
450 CLIENT_OBJ1
= client
/client.o client
/clitar.o
452 CLIENT_OBJ
= $(CLIENT_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
453 $(READLINE_OBJ
) $(POPT_LIB_OBJ
)
455 NET_OBJ1
= utils
/net.o utils
/net_ads.o utils
/net_ads_cldap.o utils
/net_help.o \
456 utils
/net_rap.o utils
/net_rpc.o utils
/net_rpc_samsync.o \
457 utils
/net_rpc_join.o utils
/net_time.o utils
/net_lookup.o \
460 NET_OBJ
= $(NET_OBJ1
) $(SECRETS_OBJ
) $(LIBSMB_OBJ
) \
461 $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) \
462 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
463 $(LIBMSRPC_OBJ
) $(LIBMSRPC_SERVER_OBJ
) \
464 $(LIBADS_OBJ
) $(LIBADS_SERVER_OBJ
) $(POPT_LIB_OBJ
)
466 CUPS_OBJ
= client
/smbspool.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
468 MOUNT_OBJ
= client
/smbmount.o \
469 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
471 MNT_OBJ
= client
/smbmnt.o
473 UMOUNT_OBJ
= client
/smbumount.o
475 NMBLOOKUP_OBJ
= utils
/nmblookup.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) \
476 $(LIBSMB_OBJ
) $(LIB_OBJ
)
478 SMBTORTURE_OBJ1
= torture
/torture.o torture
/nbio.o torture
/scanner.o torture
/utable.o \
479 torture
/denytest.o torture
/mangle_test.o
481 SMBTORTURE_OBJ
= $(SMBTORTURE_OBJ1
) \
482 $(LIBSMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
484 MASKTEST_OBJ
= torture
/masktest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
485 $(UBIQX_OBJ
) $(LIB_OBJ
)
487 MSGTEST_OBJ
= torture
/msgtest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
488 $(UBIQX_OBJ
) $(LIB_OBJ
)
490 LOCKTEST_OBJ
= torture
/locktest.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
491 $(UBIQX_OBJ
) $(LIB_OBJ
)
493 NSSTEST_OBJ
= torture
/nsstest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
494 $(UBIQX_OBJ
) $(LIB_OBJ
)
496 VFSTEST_OBJ
= torture
/cmd_vfs.o torture
/vfstest.o
$(SMBD_OBJ_BASE
) $(READLINE_OBJ
)
498 VFS_AUDIT_OBJ
= modules
/vfs_audit.o
499 VFS_RECYCLE_OBJ
= modules
/vfs_recycle.o
500 VFS_NETATALK_OBJ
= modules
/vfs_netatalk.o
501 VFS_FAKE_PERMS_OBJ
= modules
/vfs_fake_perms.o
503 LOCKTEST2_OBJ
= torture
/locktest2.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
504 $(UBIQX_OBJ
) $(LIB_OBJ
)
506 SMBCACLS_OBJ
= utils
/smbcacls.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
507 $(UBIQX_OBJ
) $(LIB_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_GET_SET_OBJ
) \
508 $(LIBMSRPC_OBJ
) $(SECRETS_OBJ
)
510 TALLOCTORT_OBJ
= lib
/talloctort.o
$(LIB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
)
512 RPCTORTURE_OBJ
= torture
/rpctorture.o \
513 rpcclient
/display.o \
514 rpcclient
/cmd_lsarpc.o \
515 rpcclient
/cmd_wkssvc.o \
516 rpcclient
/cmd_samr.o \
517 rpcclient
/cmd_srvsvc.o \
518 rpcclient
/cmd_netlogon.o \
519 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
520 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_GET_SET_OBJ
)
522 DEBUG2HTML_OBJ
= utils
/debug2html.o ubiqx
/debugparse.o
524 SMBFILTER_OBJ
= utils
/smbfilter.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
525 $(UBIQX_OBJ
) $(LIB_OBJ
)
527 PROTO_OBJ
= $(SMBD_OBJ_MAIN
) \
528 $(SMBD_OBJ_SRV
) $(NMBD_OBJ1
) $(SWAT_OBJ1
) $(LIB_OBJ
) $(LIBSMB_OBJ
) \
529 $(SMBW_OBJ1
) $(SMBWRAPPER_OBJ1
) $(SMBTORTURE_OBJ1
) $(RPCCLIENT_OBJ1
) \
530 $(LIBMSRPC_OBJ
) $(LIBMSRPC_SERVER_OBJ
) $(RPC_CLIENT_OBJ
) \
531 $(RPC_PIPE_OBJ
) $(RPC_PARSE_OBJ
) \
532 $(AUTH_OBJ
) $(PARAM_OBJ
) $(LOCKING_OBJ
) $(SECRETS_OBJ
) \
533 $(PRINTING_OBJ
) $(PRINTBACKEND_OBJ
) $(OPLOCK_OBJ
) $(NOTIFY_OBJ
) \
534 $(QUOTAOBJS
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) $(MSDFS_OBJ
) \
535 $(READLINE_OBJ
) $(PROFILE_OBJ
) $(LIBADS_OBJ
) $(LIBADS_SERVER_OBJ
) \
536 $(LIB_SMBD_OBJ
) $(SAM_OBJ
) $(REGISTRY_OBJ
) $(POPT_LIB_OBJ
) \
537 $(RPC_LSA_OBJ
) $(RPC_NETLOG_OBJ
) $(RPC_SAMR_OBJ
) $(RPC_REG_OBJ
) \
538 $(RPC_SVC_OBJ
) $(RPC_WKS_OBJ
) $(RPC_DFS_OBJ
) $(RPC_SPOOLSS_OBJ
)
540 NSS_OBJ_0
= nsswitch
/wins.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIBSMB_OBJ
) \
541 $(LIB_OBJ
) $(NSSWINS_OBJ
)
543 NSS_OBJ
= $(NSS_OBJ_0
:.o
=.po
)
545 PICOBJS
= $(SMBWRAPPER_OBJ
:.o
=.po
)
546 PICOBJS32
= $(SMBWRAPPER_OBJ
:.o
=.po32
)
547 LIBSMBCLIENT_PICOBJS
= $(LIBSMBCLIENT_OBJ
:.o
=.po
)
549 PAM_SMBPASS_OBJ_0
= pam_smbpass
/pam_smb_auth.o pam_smbpass
/pam_smb_passwd.o \
550 pam_smbpass
/pam_smb_acct.o pam_smbpass
/support.o \
551 libsmb
/smbencrypt.o libsmb
/smbdes.o libsmb
/nterr.o \
552 $(PARAM_OBJ
) $(LIB_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) \
553 $(SECRETS_OBJ
) $(UBIQX_OBJ
)
555 PAM_SMBPASS_PICOOBJ
= $(PAM_SMBPASS_OBJ_0
:.o
=.po
)
558 nsswitch
/winbindd.o \
559 nsswitch
/winbindd_user.o \
560 nsswitch
/winbindd_group.o \
561 nsswitch
/winbindd_idmap.o \
562 nsswitch
/winbindd_util.o \
563 nsswitch
/winbindd_cache.o \
564 nsswitch
/winbindd_pam.o \
565 nsswitch
/winbindd_sid.o \
566 nsswitch
/winbindd_misc.o \
567 nsswitch
/winbindd_cm.o \
568 nsswitch
/winbindd_wins.o \
569 nsswitch
/winbindd_rpc.o \
570 nsswitch
/winbindd_ads.o \
571 nsswitch
/winbindd_dual.o
574 $(WINBINDD_OBJ1
) $(PASSDB_GET_SET_OBJ
) \
575 $(LIBNMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
576 $(LIBSMB_OBJ
) $(LIBMSRPC_OBJ
) $(RPC_PARSE_OBJ
) \
577 $(PROFILE_OBJ
) $(UNIGRP_OBJ
) \
578 $(SECRETS_OBJ
) $(LIBADS_OBJ
)
580 WBINFO_OBJ
= nsswitch
/wbinfo.o libsmb
/smbencrypt.o libsmb
/smbdes.o
582 WINBIND_NSS_OBJ
= nsswitch
/winbind_nss.o nsswitch
/wb_common.o @WINBIND_NSS_EXTRA_OBJS@
584 WINBIND_NSS_PICOBJS
= $(WINBIND_NSS_OBJ
:.o
=.po
)
586 POPT_OBJS
=popt
/findme.o popt
/popt.o popt
/poptconfig.o \
587 popt
/popthelp.o popt
/poptparse.o
589 TDBBACKUP_OBJ
= tdb
/tdbbackup.o
$(TDBBASE_OBJ
)
591 NTLM_AUTH_OBJ
= utils
/ntlm_auth.o
$(LIBSMB_OBJ
) $(POPT_LIB_OBJ
)
593 ######################################################################
595 ######################################################################
596 all : SHOWFLAGS proto_exists
$(SBIN_PROGS
) $(BIN_PROGS
) $(SHLIBS
) \
597 $(TORTURE_PROGS
) @EXTRA_ALL_TARGETS@
599 pam_smbpass
: SHOWFLAGS bin
/pam_smbpass.@SHLIBEXT@
601 smbwrapper
: SHOWFLAGS @SMBWRAPPER@
603 torture
: SHOWFLAGS
$(TORTURE_PROGS
)
605 smbtorture
: SHOWFLAGS bin
/smbtorture@EXEEXT@
607 masktest
: SHOWFLAGS bin
/masktest@EXEEXT@
609 msgtest
: SHOWFLAGS bin
/msgtest@EXEEXT@
611 locktest
: SHOWFLAGS bin
/locktest@EXEEXT@
613 smbcacls
: SHOWFLAGS bin
/smbcacls@EXEEXT@
615 locktest2
: SHOWFLAGS bin
/locktest2@EXEEXT@
617 rpctorture
: SHOWFLAGS bin
/rpctorture@EXEEXT@
619 debug2html
: SHOWFLAGS bin
/debug2html@EXEEXT@
621 smbfilter
: SHOWFLAGS bin
/smbfilter@EXEEXT@
623 talloctort
: SHOWFLAGS bin
/talloctort@EXEEXT@
625 nsswitch
: SHOWFLAGS bin
/winbindd@EXEEXT@ bin
/wbinfo@EXEEXT@ nsswitch
/libnss_winbind.so nsswitch
/pam_winbind.so
627 wins
: SHOWFLAGS nsswitch
/libnss_wins.@SHLIBEXT@
629 modules
: SHOWFLAGS proto_exists
$(VFS_MODULES
) $(PDB_MODULES
) $(MODULES
) \
631 everything
: all libsmbclient debug2html smbfilter talloctort
634 .SUFFIXES
: .c .o .po .po32 .lo
637 @echo
"Using FLAGS = $(FLAGS)"
638 @echo
" FLAGS32 = $(FLAGS32)"
639 @echo
" LIBS = $(LIBS)"
640 @echo
" LDSHFLAGS = $(LDSHFLAGS)"
641 @echo
" LDFLAGS = $(LDFLAGS)"
643 MAKEDIR
= || exec false
; \
644 if
test -d
"$$dir"; then
:; else \
645 echo mkdir
"$$dir"; \
646 mkdir
-p
"$$dir" >/dev
/null
2>&1 || \
649 exec false
; fi || exec false
652 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
653 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
655 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) -c
$< \
657 @BROKEN_CC@
-mv
`echo $@ | sed 's%^.*/%%g'` $@
659 # These dependencies are only approximately correct: we want to make
660 # sure Samba's paths are updated if ./configure is re-run. Really it
661 # would be nice if "make prefix=/opt/samba all" also rebuilt things,
662 # but since we also require "make install prefix=/opt/samba" *not* to
663 # rebuild it's a bit hard.
665 dynconfig.o
: dynconfig.c Makefile
667 @
$(CC
) $(FLAGS
) $(PATH_FLAGS
) -c
$< -o
$@
669 dynconfig.po
: dynconfig.c Makefile
670 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
671 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
672 @echo Compiling
$*.c with @PICFLAG@
673 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) $(PATH_FLAGS
) @PICFLAG@
-c
$< -o
$*.@PICSUFFIX@
674 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@
675 @POBAD_CC@ @mv
$*.po.o
$@
678 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
679 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
680 @echo Compiling
$*.c with @PICFLAG@
681 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) @PICFLAG@
-c
$< -o
$*.@PICSUFFIX@
682 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@
683 @POBAD_CC@ @mv
$*.po.o
$@
687 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
688 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
689 @echo Compiling
$*.c with @PICFLAG@ and
-32
690 @
$(CC
) -32 -I.
-I
$(srcdir) $(FLAGS32
) $(PATH_FLAGS
) @PICFLAG@
-c
$< \
692 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po32$$%.o%'` $@.o
696 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
697 dir=bin
$(MAKEDIR
); fi
698 @
: >> $@ ||
: > $@
# what a fancy emoticon!
700 bin
/smbd@EXEEXT@
: $(SMBD_OBJ
) @BUILD_POPT@ bin
/.dummy
702 @
$(CC
) $(FLAGS
) -o
$@
$(SMBD_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(PRINTLIBS
) \
703 $(AUTHLIBS
) $(LIBS
) @BUILD_POPT@
705 bin
/nmbd@EXEEXT@
: $(NMBD_OBJ
) @BUILD_POPT@ bin
/.dummy
707 @
$(CC
) $(FLAGS
) -o
$@
$(NMBD_OBJ
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
709 bin
/wrepld@EXEEXT@
: $(WREPL_OBJ
) bin
/.dummy
711 @
$(CC
) $(FLAGS
) -o
$@
$(WREPL_OBJ
) $(LDFLAGS
) $(LIBS
)
713 bin
/swat@EXEEXT@
: $(SWAT_OBJ
) bin
/.dummy
715 @
$(CC
) $(FLAGS
) -o
$@
$(SWAT_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(PRINTLIBS
) \
718 bin
/rpcclient@EXEEXT@
: $(RPCCLIENT_OBJ
) @BUILD_POPT@ bin
/.dummy
720 @
$(CC
) $(FLAGS
) -o
$@
$(RPCCLIENT_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(TERMLDFLAGS
) $(TERMLIBS
) $(LIBS
) @BUILD_POPT@
722 bin
/smbclient@EXEEXT@
: $(CLIENT_OBJ
) @BUILD_POPT@ bin
/.dummy
724 @
$(CC
) $(FLAGS
) -o
$@
$(CLIENT_OBJ
) $(LDFLAGS
) $(TERMLDFLAGS
) $(TERMLIBS
) $(LIBS
) @BUILD_POPT@
726 bin
/net@EXEEXT@
: $(NET_OBJ
) @BUILD_POPT@ bin
/.dummy
728 @
$(CC
) $(FLAGS
) -o
$@
$(NET_OBJ
) $(DYNEXP
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
730 bin
/profiles@EXEEXT@
: utils
/profiles.o bin
/.dummy
732 @
$(CC
) $(FLAGS
) -o
$@ utils
/profiles.o
$(LDFLAGS
) $(LIBS
)
734 bin
/editreg@EXEEXT@
: utils
/editreg.o bin
/.dummy
736 @
$(CC
) $(FLAGS
) -o
$@ utils
/editreg.o
$(LDFLAGS
) $(LIBS
)
738 bin
/smbspool@EXEEXT@
: $(CUPS_OBJ
) bin
/.dummy
740 @
$(CC
) $(FLAGS
) -o
$@
$(CUPS_OBJ
) $(LDFLAGS
) $(LIBS
)
742 bin
/smbmount@EXEEXT@
: $(MOUNT_OBJ
) bin
/.dummy
744 @
$(CC
) $(FLAGS
) -o
$@
$(MOUNT_OBJ
) $(LDFLAGS
) $(LIBS
)
746 bin
/smbmnt@EXEEXT@
: $(MNT_OBJ
) bin
/.dummy
748 @
$(CC
) $(FLAGS
) -o
$@
$(MNT_OBJ
) $(LDFLAGS
)
750 bin
/smbumount@EXEEXT@
: $(UMOUNT_OBJ
) bin
/.dummy
752 @
$(CC
) $(FLAGS
) -o
$@
$(UMOUNT_OBJ
) $(LDFLAGS
)
754 bin
/testparm@EXEEXT@
: $(TESTPARM_OBJ
) @BUILD_POPT@ bin
/.dummy
756 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPARM_OBJ
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
758 bin
/testprns@EXEEXT@
: $(TESTPRNS_OBJ
) bin
/.dummy
760 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPRNS_OBJ
) $(LDFLAGS
) $(PRINTLIBS
) $(LIBS
)
762 bin
/smbstatus@EXEEXT@
: $(STATUS_OBJ
) @BUILD_POPT@ bin
/.dummy
764 @
$(CC
) $(FLAGS
) -o
$@
$(STATUS_OBJ
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
766 bin
/smbcontrol@EXEEXT@
: $(SMBCONTROL_OBJ
) bin
/.dummy
768 @
$(CC
) -DUSING_SMBCONTROL
$(FLAGS
) -o
$@
$(SMBCONTROL_OBJ
) $(LDFLAGS
) $(LIBS
)
770 bin
/smbtree@EXEEXT@
: $(SMBTREE_OBJ
) bin
/.dummy
772 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTREE_OBJ
) $(LDFLAGS
) $(LIBS
)
774 bin
/smbpasswd@EXEEXT@
: $(SMBPASSWD_OBJ
) bin
/.dummy
776 @
$(CC
) $(FLAGS
) -o
$@
$(SMBPASSWD_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(LIBS
)
778 bin
/pdbedit@EXEEXT@
: $(PDBEDIT_OBJ
) @BUILD_POPT@ bin
/.dummy
780 @
$(CC
) $(FLAGS
) -o
$@
$(PDBEDIT_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(LIBS
) @BUILD_POPT@
782 bin
/samtest@EXEEXT@
: $(SAMTEST_OBJ
) @BUILD_POPT@ bin
/.dummy
784 @
$(CC
) $(FLAGS
) -o
$@
$(SAMTEST_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(TERMLDFLAGS
) $(TERMLIBS
) $(DYNEXP
) $(LIBS
) @BUILD_POPT@
786 bin
/smbgroupedit@EXEEXT@
: $(SMBGROUPEDIT_OBJ
) bin
/.dummy
788 @
$(CC
) $(FLAGS
) -o
$@
$(SMBGROUPEDIT_OBJ
) $(LDFLAGS
) $(LIBS
)
790 bin
/nmblookup@EXEEXT@
: $(NMBLOOKUP_OBJ
) bin
/.dummy
792 @
$(CC
) $(FLAGS
) -o
$@
$(NMBLOOKUP_OBJ
) $(LDFLAGS
) $(LIBS
)
794 bin
/smbtorture@EXEEXT@
: $(SMBTORTURE_OBJ
) bin
/.dummy
796 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
798 bin
/talloctort@EXEEXT@
: $(TALLOCTORT_OBJ
) bin
/.dummy
800 @
$(CC
) $(FLAGS
) -o
$@
$(TALLOCTORT_OBJ
) $(LDFLAGS
) $(LIBS
)
802 bin
/masktest@EXEEXT@
: $(MASKTEST_OBJ
) bin
/.dummy
804 @
$(CC
) $(FLAGS
) -o
$@
$(MASKTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
806 bin
/msgtest@EXEEXT@
: $(MSGTEST_OBJ
) bin
/.dummy
808 @
$(CC
) $(FLAGS
) -o
$@
$(MSGTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
810 bin
/smbcacls@EXEEXT@
: $(SMBCACLS_OBJ
) bin
/.dummy
812 @
$(CC
) $(FLAGS
) -o
$@
$(SMBCACLS_OBJ
) $(DYNEXP
) $(LDFLAGS
) $(LIBS
)
814 bin
/locktest@EXEEXT@
: $(LOCKTEST_OBJ
) bin
/.dummy
816 @
$(CC
) $(FLAGS
) -o
$@
$(LOCKTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
818 bin
/nsstest@EXEEXT@
: $(NSSTEST_OBJ
) bin
/.dummy
820 @
$(CC
) $(FLAGS
) -o
$@
$(NSSTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
822 bin
/vfstest@EXEEXT@
: $(VFSTEST_OBJ
) @BUILD_POPT@ bin
/.dummy
824 @
$(CC
) $(FLAGS
) -o
$@
$(VFSTEST_OBJ
) $(LDFLAGS
) $(TERMLDFLAGS
) $(TERMLIBS
) $(DYNEXP
) $(PRINTLIBS
) $(AUTHLIBS
) $(LIBS
) @BUILD_POPT@
826 bin
/locktest2@EXEEXT@
: $(LOCKTEST2_OBJ
) bin
/.dummy
828 @
$(CC
) $(FLAGS
) -o
$@
$(LOCKTEST2_OBJ
) $(LDFLAGS
) $(LIBS
)
830 bin
/rpctorture@EXEEXT@
: $(RPCTORTURE_OBJ
) bin
/.dummy
832 @
$(CC
) $(FLAGS
) -o
$@
$(RPCTORTURE_OBJ
) $(DYNEXP
) $(LDFLAGS
) $(LIBS
)
834 bin
/debug2html@EXEEXT@
: $(DEBUG2HTML_OBJ
) bin
/.dummy
836 @
$(CC
) $(FLAGS
) -o
$@
$(DEBUG2HTML_OBJ
) $(LDFLAGS
) $(LIBS
)
838 bin
/smbfilter@EXEEXT@
: $(SMBFILTER_OBJ
) bin
/.dummy
840 @
$(CC
) $(FLAGS
) -o
$@
$(SMBFILTER_OBJ
) $(LDFLAGS
) $(LIBS
)
842 bin
/smbw_sample@EXEEXT@
: $(SMBW_OBJ
) utils
/smbw_sample.o bin
/.dummy
844 @
$(CC
) $(FLAGS
) -o
$@
$(SMBW_OBJ
) utils
/smbw_sample.o
$(LDFLAGS
) $(LIBS
)
846 bin
/smbsh@EXEEXT@
: $(SMBSH_OBJ
) bin
/.dummy
848 @
$(CC
) $(FLAGS
) -o
$@
$(SMBSH_OBJ
) $(LDFLAGS
) $(LIBS
)
850 bin
/smbwrapper.@SHLIBEXT@
: $(PICOBJS
) bin
/.dummy
851 @echo Linking shared library
$@
852 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(PICOBJS
) $(LIBS
) \
853 @SONAMEFLAG@
`basename $@`
855 bin
/smbwrapper
.32.@SHLIBEXT@
: $(PICOBJS32
)
856 @echo Linking shared library
$@
857 @
$(SHLD
) -32 $(LDSHFLAGS
) -o
$@
$(PICOBJS32
) $(LIBS
) \
858 @SONAMEFLAG@
`basename $@`
860 bin
/libsmbclient.@SHLIBEXT@
: $(LIBSMBCLIENT_PICOBJS
)
861 @echo Linking libsmbclient shared library
$@
862 $(SHLD
) $(LDSHFLAGS
) -o
$@
$(LIBSMBCLIENT_PICOBJS
) $(LDFLAGS
) $(LIBS
) \
863 @SONAMEFLAG@
`basename $@`.
$(LIBSMBCLIENT_MAJOR
)
865 bin
/libsmbclient.a
: $(LIBSMBCLIENT_PICOBJS
)
866 @echo Linking libsmbclient non-shared library
$@
867 -$(AR
) -rc
$@
$(LIBSMBCLIENT_PICOBJS
)
869 bin
/libbigballofmud.@SHLIBEXT@
: $(LIBBIGBALLOFMUD_PICOBJS
)
870 @echo Linking bigballofmud shared library
$@
871 $(SHLD
) $(LDSHFLAGS
) -o
$@
$(LIBBIGBALLOFMUD_PICOBJS
) $(LIBS
) \
872 @SONAMEFLAG@
`basename $@`.
$(LIBBIGBALLOFMUD_MAJOR
)
874 libsmbclient
: bin
/libsmbclient.a bin
/libsmbclient.@SHLIBEXT@
876 bin
/librpc_lsarpc.@SHLIBEXT@
: $(RPC_LSA_OBJ
)
878 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_LSA_OBJ
) -lc \
879 @SONAMEFLAG@
`basename $@`
881 bin
/librpc_samr.@SHLIBEXT@
: $(RPC_SAMR_OBJ
)
883 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_SAMR_OBJ
) -lc \
884 @SONAMEFLAG@
`basename $@`
886 bin
/librpc_srvsvc.@SHLIBEXT@
: $(RPC_SVC_OBJ
)
888 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_SVC_OBJ
) -lc \
889 @SONAMEFLAG@
`basename $@`
891 bin
/librpc_wkssvc.@SHLIBEXT@
: $(RPC_WKS_OBJ
)
893 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_WKS_OBJ
) -lc \
894 @SONAMEFLAG@
`basename $@`
896 bin
/librpc_NETLOGON.@SHLIBEXT@
: $(RPC_NETLOG_OBJ
)
898 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_NETLOG_OBJ
) -lc \
899 @SONAMEFLAG@
`basename $@`
901 bin
/librpc_winreg.@SHLIBEXT@
: $(RPC_REG_OBJ
)
903 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_REG_OBJ
) -lc \
904 @SONAMEFLAG@
`basename $@`
906 bin
/librpc_spoolss.@SHLIBEXT@
: $(RPC_SPOOLSS_OBJ
)
908 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_SPOOLSS_OBJ
) -lc \
909 @SONAMEFLAG@
`basename $@`
911 bin
/librpc_netdfs.@SHLIBEXT@
: $(RPC_DFS_OBJ
)
913 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(RPC_DFS_OBJ
) -lc \
914 @SONAMEFLAG@
`basename $@`
916 nsswitch
/libnss_wins.@SHLIBEXT@
: $(NSS_OBJ
)
918 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(NSS_OBJ
) -lc \
919 @SONAMEFLAG@
`basename $@`
921 bin
/winbindd@EXEEXT@
: $(WINBINDD_OBJ
) bin
/.dummy
923 @
$(LINK
) -o
$@
$(WINBINDD_OBJ
) $(DYNEXP
) $(LIBS
)
925 nsswitch
/libns_winbind.@SHLIBEXT@
: $(WINBIND_NSS_PICOBJS
)
927 @
$(SHLD
) @LDSHFLAGS@
-o
$@
$(WINBIND_NSS_PICOBJS
) @WINBIND_NSS_EXTRA_LIBS@ \
928 @SONAMEFLAG@
`basename $@`
930 nsswitch
/libnss_winbind.@SHLIBEXT@
: $(WINBIND_NSS_PICOBJS
)
932 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(WINBIND_NSS_PICOBJS
) @WINBIND_NSS_EXTRA_LIBS@ \
933 @SONAMEFLAG@
`basename $@`
935 nsswitch
/pam_winbind.@SHLIBEXT@
: $(PAM_WINBIND_OBJ
) bin
/.dummy
937 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(PAM_WINBIND_OBJ
) \
938 @SONAMEFLAG@
`basename $@` -lpam
940 bin
/mysql.@SHLIBEXT@
: $(MYSQL_OBJ
)
941 @echo
"Building plugin $@"
942 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(MYSQL_OBJ
) @MYSQL_LIBS@ \
943 @SONAMEFLAG@
`basename $@`
945 bin
/developer.@SHLIBEXT@
: $(DEVEL_HELP_OBJ
)
946 @echo
"Building plugin $@"
947 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(DEVEL_HELP_OBJ
) \
948 @SONAMEFLAG@
`basename $@`
950 bin
/xml.@SHLIBEXT@
: $(XML_OBJ
)
951 @echo
"Building plugin $@"
952 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(XML_OBJ
) @XML_LIBS@ \
953 @SONAMEFLAG@
`basename $@`
955 bin
/vfs_audit.@SHLIBEXT@
: $(VFS_AUDIT_OBJ
)
956 @echo
"Building plugin $@"
957 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(VFS_AUDIT_OBJ
) \
958 @SONAMEFLAG@
`basename $@`
960 bin
/vfs_recycle.@SHLIBEXT@
: $(VFS_RECYCLE_OBJ
)
961 @echo
"Building plugin $@"
962 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(VFS_RECYCLE_OBJ
) \
963 @SONAMEFLAG@
`basename $@`
965 bin
/vfs_netatalk.@SHLIBEXT@
: $(VFS_NETATALK_OBJ
)
966 @echo
"Building plugin $@"
967 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(VFS_NETATALK_OBJ
) \
968 @SONAMEFLAG@
`basename $@`
970 bin
/vfs_fake_perms.@SHLIBEXT@
: $(VFS_FAKE_PERMS_OBJ
)
971 @echo
"Building plugin $@"
972 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(VFS_FAKE_PERMS_OBJ
) \
973 @SONAMEFLAG@
`basename $@`
975 bin
/wbinfo@EXEEXT@
: $(WBINFO_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
976 $(UBIQX_OBJ
) $(SECRETS_OBJ
) @BUILD_POPT@ bin
/.dummy
978 @
$(LINK
) -o
$@
$(WBINFO_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
979 $(UBIQX_OBJ
) $(SECRETS_OBJ
) $(LIBS
) @BUILD_POPT@
981 bin
/ntlm_auth@EXEEXT@
: $(NTLM_AUTH_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
982 $(UBIQX_OBJ
) @BUILD_POPT@ bin
/.dummy
984 @
$(LINK
) -o
$@
$(NTLM_AUTH_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
985 $(UBIQX_OBJ
) $(LIBS
) @BUILD_POPT@
987 bin
/pam_smbpass.@SHLIBEXT@
: $(PAM_SMBPASS_PICOOBJ
)
988 @echo
"Linking shared library $@"
989 $(SHLD
) $(LDSHFLAGS
) -o
$@
$(PAM_SMBPASS_PICOOBJ
) -lpam
$(DYNEXP
) $(LIBS
) -lc
991 bin
/libmsrpc.a
: $(LIBMSRPC_PICOBJ
)
992 -$(AR
) -rc
$@
$(LIBMSRPC_PICOBJ
)
994 bin
/tdbbackup@EXEEXT@
: $(TDBBACKUP_OBJ
) bin
/.dummy
996 @
$(CC
) $(FLAGS
) -o
$@
$(TDBBACKUP_OBJ
)
998 install: installbin installman installscripts installdat installswat
1000 # DESTDIR is used here to prevent packagers wasting their time
1001 # duplicating the Makefile. Remove it and you will have the privelege
1002 # of package each samba release for muliple versions of multiple
1003 # distributions and operating systems, or at least supplying patches
1004 # to all the packaging files required for this, prior to committing
1005 # the removal of DESTDIR. Do not remove it even though you think it
1009 @
$(SHELL
) $(srcdir)/script
/installdirs.sh
$(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(BINDIR
) $(DESTDIR
)$(SBINDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(VARDIR
) $(DESTDIR
)$(PRIVATEDIR
) $(DESTDIR
)$(VFSLIBDIR
) $(DESTDIR
)$(PDBLIBDIR
) $(DESTDIR
)$(PIDDIR
) $(DESTDIR
)$(LOCKDIR
)
1011 installservers
: all installdirs
1012 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(SBINDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(VARDIR
) $(SBIN_PROGS
)
1014 installbin
: all installdirs
1015 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(SBINDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(VARDIR
) $(SBIN_PROGS
)
1016 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(BINDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(VARDIR
) $(BIN_PROGS
)
1018 installmodules
: all installdirs
1019 @
$(SHELL
) $(srcdir)/script
/installmodules.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(VFSLIBDIR
) $(VFS_MODULES
)
1020 @
$(SHELL
) $(srcdir)/script
/installmodules.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(PDBLIBDIR
) $(PDB_MODULES
)
1021 @
$(SHELL
) $(srcdir)/script
/installmodules.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(RPCLIBDIR
) $(RPC_MODULES
)
1023 installscripts
: installdirs
1024 @
$(SHELL
) $(srcdir)/script
/installscripts.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BINDIR
) $(SCRIPTS
)
1026 installdat
: installdirs
1027 @
$(SHELL
) $(srcdir)/script
/installdat.sh
$(DESTDIR
)$(LIBDIR
) $(srcdir)
1029 installswat
: installdirs
1030 @
$(SHELL
) $(srcdir)/script
/installswat.sh
$(DESTDIR
)$(SWATDIR
) $(srcdir)
1033 -$(INSTALLCMD
) bin
/libsmbclient.@SHLIBEXT@
$(DESTDIR
)${prefix}/lib
1034 -$(INSTALLCMD
) -d
$(DESTDIR
)${prefix}/include
1035 -$(INSTALLCMD
) include/libsmbclient.h
$(DESTDIR
)${prefix}/include
1039 PYTHON_OBJS
= $(LIB_OBJ
) $(LIBSMB_OBJ
) $(RPC_PARSE_OBJ
) $(UBIQX_OBJ
) \
1040 $(PARAM_OBJ
) $(LIBMSRPC_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) $(SECRETS_OBJ
)
1042 PY_SPOOLSS_PROTO_OBJ
= python
/py_spoolss.o \
1043 python
/py_spoolss_printers.o python
/py_spoolss_printers_conv.o\
1044 python
/py_spoolss_forms.o python
/py_spoolss_forms_conv.o \
1045 python
/py_spoolss_ports.o python
/py_spoolss_ports_conv.o \
1046 python
/py_spoolss_drivers.o python
/py_spoolss_drivers_conv.o \
1047 python
/py_spoolss_jobs.o python
/py_spoolss_jobs_conv.o \
1048 python
/py_spoolss_printerdata.o
1050 PY_LSA_PROTO_OBJ
= python
/py_lsa.o
1052 PY_COMMON_PROTO_OBJ
= python
/py_common.c python
/py_ntsec.c
1054 python_proto
: python_spoolss_proto python_lsa_proto python_common_proto
1056 python_spoolss_proto
:
1057 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1058 -h _PY_SPOOLSS_PROTO_H python
/py_spoolss_proto.h \
1059 $(PY_SPOOLSS_PROTO_OBJ
)
1062 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1063 -h _PY_LSA_PROTO_H python
/py_lsa_proto.h \
1066 python_common_proto
:
1067 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1068 -h _PY_COMMON_PROTO_H python
/py_common_proto.h \
1069 $(PY_COMMON_PROTO_OBJ
)
1071 python_ext
: $(PYTHON_OBJS
)
1072 @if
test -z
"$(PYTHON)"; then \
1073 echo Use the option
--with-python to configure python
; \
1075 PYTHON_OBJS
="$(PYTHON_OBJS)" PYTHON_CFLAGS
="$(CFLAGS) $(CPPFLAGS) $(FLAGS)" \
1077 $(PYTHON
) python
/setup.py build
1079 python_install
: $(PYTHON_OBJS
)
1080 @if
test -z
"$(PYTHON)"; then \
1081 echo Use the option
--with-python to configure python
; \
1083 PYTHON_OBJS
="$(PYTHON_OBJS)" PYTHON_CFLAGS
="$(CFLAGS) $(CPPFLAGS)" \
1085 $(PYTHON
) python
/setup.py
install
1088 @if
test -n
"$(PYTHON)"; then
$(PYTHON
) python
/setup.py
clean; fi
1090 # revert to the previously installed version
1092 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(SBINDIR
) $(SBIN_PROGS
)
1093 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(BINDIR
) $(BIN_PROGS
) $(SCRIPTS
)
1096 @
$(SHELL
) $(srcdir)/script
/installman.sh
$(DESTDIR
)$(MANDIR
) $(srcdir) $(man_langs
) "@ROFF@"
1101 @echo
"Samba will be installed into:"
1102 @echo
" basedir: $(BASEDIR)"
1103 @echo
" bindir: $(BINDIR)"
1104 @echo
" sbindir: $(SBINDIR)"
1105 @echo
" libdir: $(LIBDIR)"
1106 @echo
" vardir: $(VARDIR)"
1107 @echo
" mandir: $(MANDIR)"
1110 uninstall: uninstallman uninstallbin uninstallscripts
1113 @
$(SHELL
) $(srcdir)/script
/uninstallman.sh
$(DESTDIR
)$(MANDIR
) $(srcdir) $(man_langs
)
1116 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(SBINDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(VARDIR
) $(DESTDIR
)$(SBIN_PROGS
)
1117 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(BINDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(VARDIR
) $(DESTDIR
)$(BIN_PROGS
)
1120 @
$(SHELL
) $(srcdir)/script
/uninstallmodules.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(VFSLIBDIR
) $(DESTDIR
)$(VFS_MODULES
)
1121 @
$(SHELL
) $(srcdir)/script
/uninstallmodules.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(PDBLIBDIR
) $(DESTDIR
)$(PDB_MODULES
)
1122 @
$(SHELL
) $(srcdir)/script
/uninstallmodules.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BASEDIR
) $(DESTDIR
)$(LIBDIR
) $(DESTDIR
)$(MODULES
)
1125 @
$(SHELL
) $(srcdir)/script
/uninstallscripts.sh
$(INSTALLPERMS
) $(DESTDIR
)$(BINDIR
) $(SCRIPTS
)
1127 # Toplevel clean files
1128 TOPFILES
=dynconfig.o dynconfig.po
1130 clean: delheaders python_clean
1131 -rm -f core
*/*~
*~
*/*.o
*/*.po
*/*.po32
*/*.@SHLIBEXT@ \
1132 $(TOPFILES
) $(BIN_PROGS
) $(SBIN_PROGS
) $(MODULES
) $(TORTURE_PROGS
) .headers.stamp
1134 # Making this target will just make sure that the prototype files
1135 # exist, not necessarily that they are up to date. Since they're
1136 # removed by "make clean" this will always be run when you do anything
1138 proto_exists
: include/proto.h
include/wrepld_proto.h
include/build_env.h \
1139 nsswitch
/winbindd_proto.h web
/swat_proto.h \
1140 client
/client_proto.h utils
/net_proto.h \
1141 include/tdbsam2_parse_info.h
1144 @echo Removing prototype headers
1145 @
/bin
/rm -f
$(srcdir)/include/proto.h
$(srcdir)/include/build_env.h
1146 @
/bin
/rm -f
$(srcdir)/include/wrepld_proto.h
$(srcdir)/nsswitch
/winbindd_proto.h
1147 @
/bin
/rm -f
$(srcdir)/web
/swat_proto.h
1148 @
/bin
/rm -f
$(srcdir)/client
/client_proto.h
$(srcdir)/utils
/net_proto.h
1149 @
/bin
/rm -f
$(srcdir)/include/tdbsam2_parse_info.h
1151 @
/bin
/rm -f
include/proto.h
include/build_env.h
include/wrepld_proto.h \
1152 nsswitch
/winbindd_proto.h web
/swat_proto.h \
1153 client
/client_proto.h utils
/net_proto.h \
1154 include/tdbsam2_parse_info.h
1157 @echo Building
include/proto.h
1158 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1159 -h _PROTO_H_
$(builddir
)/include/proto.h \
1162 include/build_env.h
:
1163 @echo Building
include/build_env.h
1164 @cd
$(srcdir) && $(SHELL
) script
/build_env.sh
$(srcdir) $(builddir
) $(CC
) > $(builddir
)/include/build_env.h
1166 include/wrepld_proto.h
:
1167 @echo Building
include/wrepld_proto.h
1168 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1169 -h _WREPLD_PROTO_H_
$(builddir
)/include/wrepld_proto.h \
1172 nsswitch
/winbindd_proto.h
:
1173 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1174 -h _WINBINDD_PROTO_H_ nsswitch
/winbindd_proto.h \
1178 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1179 -h _SWAT_PROTO_H_ web
/swat_proto.h \
1182 client
/client_proto.h
:
1183 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1184 -h _CLIENT_PROTO_H_ client
/client_proto.h \
1188 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
1189 -h _CLIENT_PROTO_H_ utils
/net_proto.h \
1192 include/tdbsam2_parse_info.h
:
1193 @cd
$(srcdir) && script
/genstruct.pl \
1194 -o
include/tdbsam2_parse_info.h
$(CC
) -E
-O2
-g \
1197 # "make headers" or "make proto" calls a subshell because we need to
1198 # make sure these commands are executed in sequence even for a
1201 $(MAKE
) delheaders
; \
1202 $(MAKE
) include/proto.h
; \
1203 $(MAKE
) include/build_env.h
; \
1204 $(MAKE
) include/wrepld_proto.h
; \
1205 $(MAKE
) nsswitch
/winbindd_proto.h
; \
1206 $(MAKE
) web
/swat_proto.h
; \
1207 $(MAKE
) client
/client_proto.h
; \
1208 $(MAKE
) utils
/net_proto.h
; \
1209 $(MAKE
) include/tdbsam2_parse_info.h
1213 .PHONY
: headers proto
1216 etags
`find $(srcdir) -name "*.[ch]" | grep -v /CVS/`
1219 ctags
`find $(srcdir) -name "*.[ch]" | grep -v /CVS/`
1221 realclean: clean delheaders
1222 -rm -f config.log
$(BIN_PROGS
) $(MODULES
) $(SBIN_PROGS
) bin
/.dummy script
/findsmb
1224 distclean: realclean
1225 -rm -f
include/stamp-h
1226 -rm -f
include/config.h Makefile
1227 -rm -f config.status config.cache so_locations
1230 # this target is really just for my use. It only works on a limited
1231 # range of machines and is used to produce a list of potentially
1232 # dead (ie. unused) functions in the code. (tridge)
1234 nm
*/*.o |grep
'U ' | awk
'{print $$2}' |
sort -u
> nmused.txt
1235 nm
*/*.o |grep
'T ' | awk
'{print $$3}' |
sort -u
> nmfns.txt
1236 comm
-13 nmused.txt nmfns.txt
1239 # when configure.in is updated, reconfigure
1240 $(srcdir)/configure
: $(srcdir)/configure.in
1241 @echo
"WARNING: you need to rerun autoconf"
1243 config.status
: $(srcdir)/configure
1244 @echo
"WARNING: you need to run configure"
1246 Makefile
: $(srcdir)/Makefile.in config.status
1247 @echo
"WARNING: you need to run ./config.status"
1249 test_prefix
=/tmp
/test-samba
1250 # Run regression suite using the external "satyr" framework
1252 @echo
"** Sorry, samba self-test without installation does not work "
1253 @echo
"** yet. Please try specifying a scratch directory to"
1254 @echo
"** ./configure --prefix DIR"
1255 @echo
"** then run \"make install installcheck\""
1258 # -rm -rf $(test_prefix)/lib
1259 # mkdir $(test_prefix)/lib -p ./testdir
1260 # PATH=$(builddir)/bin:$(PATH) \
1261 # SATYR_SUITEDIR=../testsuite/build_farm/ prefix=$(test_prefix) \
1262 # testdir=./testdir $(SHELL) satyr
1264 # Run regression suite on the installed version.
1267 # Perform installation tests (if any). The user must build and
1268 # install the program before running the tests. You should not
1269 # assume that `$(bindir)' is in the search path.
1271 dangerous-installcheck
:
1272 mkdir
-p
$(BASEDIR
)/lib
1273 mkdir
-p
$(BASEDIR
)/var
1274 PATH
=$(BINDIR
):$(SBINDIR
):$(PATH
) \
1275 SATYR_DISCOURAGE
=1 \
1276 SATYR_SUITEDIR
=..
/testsuite
/satyr
/ prefix=$(BASEDIR
) \
1277 LIBSMB_PROG
=$(SBINDIR
)/smbd \
1278 testdir
=.
/testdir
$(SHELL
) satyr