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 ###########################################################################
9 exec_prefix=@
exec_prefix@
18 LDSHFLAGS
=@LDSHFLAGS@ @LDFLAGS@ @CFLAGS@
22 TERMLDFLAGS
=@TERMLDFLAGS@
26 LINK
=$(CC
) $(FLAGS
) $(LDFLAGS
)
35 # XXX: Perhaps this should be @SHELL@ instead -- apparently autoconf
36 # will search for a POSIX-compliant shell, and that might not be
37 # /bin/sh on some platforms. I guess it's not a big problem -- mbp
39 # See the autoconf manual "Installation Directory Variables" for a
40 # discussion of thesubtle use of these variables.
44 # sbindir is mapped to bindir when compiling SAMBA in 2.0.x compatibility mode.
47 VARDIR
= @localstatedir@
50 # The permissions to give the executables
53 # set these to where to find various files
54 # These can be overridden by command line switches (see smbd(8))
55 # or in smb.conf (see smb.conf(5))
56 LOGFILEBASE
= @logfilebase@
57 CONFIGFILE
= $(LIBDIR
)/smb.conf
58 LMHOSTSFILE
= $(LIBDIR
)/lmhosts
59 DRIVERFILE
= $(LIBDIR
)/printers.def
60 # This is where smbpasswd et al go
61 PRIVATEDIR
= @privatedir@
63 SMB_PASSWD_FILE
= $(PRIVATEDIR
)/smbpasswd
64 PRIVATE_DIR
= $(PRIVATEDIR
)
66 # This is where SWAT images and help files go
69 # the directory where lock files go
72 # the directorty where pid files go
74 # man pages language(s)
75 man_langs
= "@manlangs@"
81 FLAGS1
= $(CFLAGS
) @FLAGS1@
-Iinclude
-I
$(srcdir)/include -I
$(srcdir)/ubiqx
-I
$(srcdir)/smbwrapper
-I.
$(CPPFLAGS
) -I
$(srcdir)
85 FLAGS5
= $(FLAGS1
) $(FLAGS2
) $(FLAGS3
) $(FLAGS4
)
86 FLAGS
= $(ISA
) $(FLAGS5
)
87 FLAGS32
= $(ISA32
) $(FLAGS5
)
89 PASSWD_FLAGS
= -DSMB_PASSWD_FILE
=\"$(SMB_PASSWD_FILE
)\" -DPRIVATE_DIR
=\"$(PRIVATE_DIR
)\"
90 PATH_FLAGS1
= -DCONFIGFILE
=\"$(CONFIGFILE
)\" -DSBINDIR
=\"$(SBINDIR
)\"
91 PATH_FLAGS2
= $(PATH_FLAGS1
) -DBINDIR
=\"$(BINDIR
)\" -DDRIVERFILE
=\"$(DRIVERFILE
)\"
92 PATH_FLAGS3
= $(PATH_FLAGS2
) -DLMHOSTSFILE
=\"$(LMHOSTSFILE
)\"
93 PATH_FLAGS4
= $(PATH_FLAGS3
) -DSWATDIR
=\"$(SWATDIR
)\" -DLOCKDIR
=\"$(LOCKDIR
)\" -DPIDDIR
=\"$(PIDDIR
)\"
94 PATH_FLAGS5
= $(PATH_FLAGS4
) -DLIBDIR
=\"$(LIBDIR
)\" -DLOGFILEBASE
=\"$(LOGFILEBASE
)\"
95 PATH_FLAGS
= $(PATH_FLAGS5
) $(PASSWD_FLAGS
)
97 WINBIND_PROGS
= @WINBIND_TARGETS@
98 WINBIND_SPROGS
= @WINBIND_STARGETS@
99 WINBIND_PAM_PROGS
= @WINBIND_PAM_TARGETS@
100 WINBIND_LPROGS
= @WINBIND_LTARGETS@
102 SPROGS
= bin
/smbd bin
/nmbd bin
/swat bin
/wrepld @WINBIND_STARGETS@
103 PROGS1
= bin
/smbclient bin
/net bin
/smbspool bin
/testparm bin
/testprns bin
/smbstatus bin
/smbcontrol bin
/smbtree bin
/tdbbackup @RUNPROG@ @WINBIND_TARGETS@
104 PROGS2
= bin
/smbpasswd bin
/rpcclient bin
/smbcacls @WRAPPROG@ @WRAP@ @WRAP32@ @PAM_MOD@
106 LPROGS
= $(WINBIND_PAM_PROGS
) $(WINBIND_LPROGS
)
108 PROGS
= $(PROGS1
) $(PROGS2
) $(MPROGS
) bin
/nmblookup bin
/pdbedit bin
/smbgroupedit
109 TORTURE_PROGS
= bin
/smbtorture bin
/msgtest bin
/masktest bin
/locktest \
110 bin
/locktest2 bin
/nsstest bin
/vfstest
111 SHLIBS
= @LIBSMBCLIENT@
113 SCRIPTS
= $(srcdir)/script
/smbtar
$(srcdir)/script
/addtosmbpass
$(srcdir)/script
/convert_smbpasswd \
114 $(builddir
)/script
/findsmb
116 QUOTAOBJS
=@QUOTAOBJS@
118 ######################################################################
120 ######################################################################
122 TDBBASE_OBJ
= tdb
/tdb.o tdb
/spinlock.o
123 TDB_OBJ
= $(TDBBASE_OBJ
) tdb
/tdbutil.o
125 LIB_OBJ
= lib
/charcnv.o lib
/debug.o lib
/fault.o \
126 lib
/getsmbpass.o lib
/interface.o lib
/md4.o \
127 lib
/interfaces.o lib
/pidfile.o lib
/replace.o \
128 lib
/signal.o lib
/system.o lib
/time.o \
129 lib
/ufc.o lib
/genrand.o lib
/username.o \
130 lib
/util_getent.o lib
/util_pw.o lib
/access.o lib
/smbrun.o \
131 lib
/bitmap.o lib
/crc32.o lib
/snprintf.o lib
/dprintf.o \
132 lib
/xfile.o lib
/wins_srv.o \
133 lib
/util_str.o lib
/util_sid.o lib
/util_uuid.o \
134 lib
/util_unistr.o lib
/util_file.o lib
/data_blob.o \
135 lib
/util.o lib
/util_sock.o lib
/util_sec.o \
136 lib
/talloc.o lib
/hash.o lib
/substitute.o lib
/fsusage.o \
137 lib
/ms_fnmatch.o lib
/select.o lib
/error.o lib
/messages.o \
138 lib
/server_mutex.o lib
/tallocmsg.o lib
/dmallocmsg.o \
139 lib
/md5.o lib
/hmacmd5.o lib
/iconv.o lib
/smbpasswd.o \
140 nsswitch
/wb_client.o nsswitch
/wb_common.o \
141 lib
/pam_errors.o intl
/lang_tdb.o lib
/account_pol.o \
142 lib
/adt_tree.o lib
/popt_common.o
$(TDB_OBJ
)
144 LIB_SMBD_OBJ
= lib
/system_smbd.o lib
/util_smbd.o
146 READLINE_OBJ
= lib
/readline.o
148 UBIQX_OBJ
= ubiqx
/ubi_BinTree.o ubiqx
/ubi_Cache.o ubiqx
/ubi_SplayTree.o \
149 ubiqx
/ubi_dLinkList.o ubiqx
/ubi_sLinkList.o ubiqx
/debugparse.o
151 PARAM_OBJ
= param
/loadparm.o param
/params.o dynconfig.o
153 LIBADS_OBJ
= libads
/ldap.o libads
/ldap_printer.o libads
/sasl.o \
154 libads
/krb5_setpw.o libads
/kerberos.o libads
/ldap_user.o \
155 libads
/ads_struct.o libads
/ads_status.o \
158 LIBADS_SERVER_OBJ
= libads
/util.o libads
/kerberos_verify.o
160 SECRETS_OBJ
= passdb
/secrets.o
162 LIBSMB_OBJ
= libsmb
/clientgen.o libsmb
/cliconnect.o libsmb
/clifile.o \
163 libsmb
/clikrb5.o libsmb
/clispnego.o libsmb
/asn1.o \
164 libsmb
/clirap.o libsmb
/clierror.o libsmb
/climessage.o \
165 libsmb
/clireadwrite.o libsmb
/clilist.o libsmb
/cliprint.o \
166 libsmb
/clitrans.o libsmb
/clisecdesc.o libsmb
/clidgram.o \
167 libsmb
/namequery.o libsmb
/nmblib.o libsmb
/clistr.o \
168 libsmb
/nterr.o libsmb
/smbdes.o libsmb
/smbencrypt.o \
169 libsmb
/smberr.o libsmb
/credentials.o libsmb
/pwd_cache.o \
170 libsmb
/clioplock.o libsmb
/errormap.o libsmb
/clirap2.o \
171 libsmb
/passchange.o libsmb
/unexpected.o libsmb
/doserr.o \
172 libsmb
/namecache.o
$(RPC_PARSE_OBJ1
)
174 LIBMSRPC_OBJ
= rpc_client
/cli_lsarpc.o rpc_client
/cli_samr.o \
175 rpc_client
/cli_netlogon.o rpc_client
/cli_srvsvc.o \
176 rpc_client
/cli_wkssvc.o rpc_client
/cli_dfs.o \
177 rpc_client
/cli_reg.o rpc_client
/cli_pipe.o \
178 rpc_client
/cli_spoolss.o rpc_client
/cli_spoolss_notify.o
180 LIBMSRPC_SERVER_OBJ
= libsmb
/trust_passwd.o
182 LIBMSRPC_PICOBJ
= $(LIBMSRPC_OBJ
:.o
=.po
)
184 REGOBJS_OBJ
= registry
/reg_objects.c
185 REGISTRY_OBJ
= registry
/reg_frontend.o registry
/reg_cachehook.o registry
/reg_printing.o \
186 registry
/reg_db.o
$(REGOBJS_OBJ
)
188 RPC_SERVER_OBJ
= rpc_server
/srv_lsa.o rpc_server
/srv_lsa_nt.o \
189 rpc_server
/srv_lsa_hnd.o rpc_server
/srv_netlog.o rpc_server
/srv_netlog_nt.o \
190 rpc_server
/srv_pipe_hnd.o rpc_server
/srv_reg.o rpc_server
/srv_reg_nt.o \
191 rpc_server
/srv_samr.o rpc_server
/srv_samr_nt.o rpc_server
/srv_samr_util.o \
192 rpc_server
/srv_srvsvc.o rpc_server
/srv_srvsvc_nt.o \
193 rpc_server
/srv_util.o rpc_server
/srv_wkssvc.o rpc_server
/srv_wkssvc_nt.o \
194 rpc_server
/srv_pipe.o rpc_server
/srv_dfs.o rpc_server
/srv_dfs_nt.o \
195 rpc_server
/srv_spoolss.o rpc_server
/srv_spoolss_nt.o
$(REGISTRY_OBJ
)
197 # this includes only the low level parse code, not stuff
198 # that requires knowledge of security contexts
199 RPC_PARSE_OBJ1
= rpc_parse
/parse_prs.o rpc_parse
/parse_sec.o \
200 rpc_parse
/parse_misc.o
202 RPC_PARSE_OBJ
= rpc_parse
/parse_lsa.o rpc_parse
/parse_net.o \
203 rpc_parse
/parse_reg.o rpc_parse
/parse_rpc.o \
204 rpc_parse
/parse_samr.o rpc_parse
/parse_srv.o \
205 rpc_parse
/parse_wks.o \
206 rpc_parse
/parse_spoolss.o rpc_parse
/parse_dfs.o
209 RPC_CLIENT_OBJ
= rpc_client
/cli_pipe.o
211 LOCKING_OBJ
= locking
/locking.o locking
/brlock.o locking
/posix.o
213 PASSDB_GET_SET_OBJ
= passdb
/pdb_get_set.o
215 PASSDB_OBJ
= $(PASSDB_GET_SET_OBJ
) passdb
/passdb.o passdb
/pdb_interface.o \
216 passdb
/machine_sid.o passdb
/pdb_smbpasswd.o \
217 passdb
/pdb_tdb.o passdb
/pdb_ldap.o passdb
/pdb_plugin.o \
218 passdb
/pdb_unix.o passdb
/util_sam_sid.o \
219 passdb
/pdb_compat.o passdb
/pdb_nisplus.o
221 SAM_STATIC_MODULES
= sam
/sam_plugin.o
223 SAM_OBJ
= sam
/account.o sam
/get_set_account.o sam
/get_set_group.o \
224 sam
/get_set_domain.o sam
/interface.o sam
/api.o
$(SAM_STATIC_MODULES
)
226 SAMTEST_OBJ
= torture
/samtest.o
$(SAM_OBJ
) $(LIB_OBJ
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(READLINE_OBJ
) lib
/util_seaccess.o
228 GROUPDB_OBJ
= groupdb
/mapping.o
230 # passdb/smbpass.o passdb/ldap.o passdb/nispass.o
232 PROFILE_OBJ
= profile
/profile.o
234 OPLOCK_OBJ
= smbd
/oplock.o smbd
/oplock_irix.o smbd
/oplock_linux.o
236 NOTIFY_OBJ
= smbd
/notify.o smbd
/notify_hash.o smbd
/notify_kernel.o
238 PLAINTEXT_AUTH_OBJ
= auth
/pampass.o auth
/pass_check.o
240 UNIGRP_OBJ
= libsmb
/netlogon_unigrp.o
242 AUTH_OBJ
= auth
/auth.o auth
/auth_sam.o auth
/auth_server.o auth
/auth_domain.o \
243 auth
/auth_rhosts.o auth
/auth_unix.o auth
/auth_util.o auth
/auth_winbind.o \
244 auth
/auth_builtin.o auth
/auth_compat.o
$(PLAINTEXT_AUTH_OBJ
) $(UNIGRP_OBJ
)
246 MANGLE_OBJ
= smbd
/mangle.o smbd
/mangle_hash.o smbd
/mangle_map.o smbd
/mangle_hash2.o
248 SMBD_OBJ_MAIN
= smbd
/server.o
250 SMBD_OBJ_SRV
= smbd
/files.o smbd
/chgpasswd.o smbd
/connection.o \
251 smbd
/utmp.o smbd
/session.o \
252 smbd
/dfree.o smbd
/dir.o smbd
/password.o smbd
/conn.o smbd
/fileio.o \
253 smbd
/ipc.o smbd
/lanman.o smbd
/negprot.o \
254 smbd
/message.o smbd
/nttrans.o smbd
/pipes.o \
255 smbd
/reply.o smbd
/sesssetup.o smbd
/trans2.o smbd
/uid.o \
256 smbd
/dosmode.o smbd
/filename.o smbd
/open.o smbd
/close.o \
257 smbd
/blocking.o smbd
/sec_ctx.o \
258 smbd
/vfs.o smbd
/vfs-wrap.o smbd
/statcache.o \
259 smbd
/posix_acls.o lib
/sysacls.o \
260 smbd
/process.o smbd
/service.o smbd
/error.o \
261 printing
/printfsp.o lib
/util_seaccess.o smbd
/srvstr.o \
262 smbd
/build_options.o \
263 smbd
/change_trust_pw.o \
266 SMBD_OBJ_BASE
= $(SMBD_OBJ_SRV
) $(MSDFS_OBJ
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
267 $(RPC_SERVER_OBJ
) $(RPC_PARSE_OBJ
) $(SECRETS_OBJ
) \
268 $(LOCKING_OBJ
) $(PASSDB_OBJ
) $(PRINTING_OBJ
) $(PROFILE_OBJ
) \
269 $(LIB_OBJ
) $(PRINTBACKEND_OBJ
) $(QUOTAOBJS
) $(OPLOCK_OBJ
) \
270 $(NOTIFY_OBJ
) $(GROUPDB_OBJ
) $(AUTH_OBJ
) \
271 $(LIBMSRPC_OBJ
) $(LIBMSRPC_SERVER_OBJ
) \
272 $(LIBADS_OBJ
) $(LIBADS_SERVER_OBJ
) \
276 PRINTING_OBJ
= printing
/pcap.o printing
/print_svid.o \
277 printing
/print_cups.o printing
/print_generic.o \
278 printing
/lpq_parse.o printing
/load.o
280 PRINTBACKEND_OBJ
= printing
/printing.o printing
/nt_printing.o printing
/notify.o
282 MSDFS_OBJ
= msdfs
/msdfs.o
284 SMBD_OBJ
= $(SMBD_OBJ_MAIN
) $(SMBD_OBJ_BASE
)
286 NMBD_OBJ1
= nmbd
/asyncdns.o nmbd
/nmbd.o nmbd
/nmbd_become_dmb.o \
287 nmbd
/nmbd_become_lmb.o nmbd
/nmbd_browserdb.o \
288 nmbd
/nmbd_browsesync.o nmbd
/nmbd_elections.o \
289 nmbd
/nmbd_incomingdgrams.o nmbd
/nmbd_incomingrequests.o \
290 nmbd
/nmbd_lmhosts.o nmbd
/nmbd_logonnames.o nmbd
/nmbd_mynames.o \
291 nmbd
/nmbd_namelistdb.o nmbd
/nmbd_namequery.o \
292 nmbd
/nmbd_nameregister.o nmbd
/nmbd_namerelease.o \
293 nmbd
/nmbd_nodestatus.o nmbd
/nmbd_packets.o \
294 nmbd
/nmbd_processlogon.o nmbd
/nmbd_responserecordsdb.o \
295 nmbd
/nmbd_sendannounce.o nmbd
/nmbd_serverlistdb.o \
296 nmbd
/nmbd_subnetdb.o nmbd
/nmbd_winsproxy.o nmbd
/nmbd_winsserver.o \
297 nmbd
/nmbd_workgroupdb.o nmbd
/nmbd_synclists.o
299 NMBD_OBJ
= $(NMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
300 $(PROFILE_OBJ
) $(LIB_OBJ
) $(SECRETS_OBJ
)
302 WREPL_OBJ1
= wrepld
/server.o wrepld
/process.o wrepld
/parser.o wrepld
/socket.o \
305 WREPL_OBJ
= $(WREPL_OBJ1
) $(PARAM_OBJ
) $(UBIQX_OBJ
) \
306 $(PROFILE_OBJ
) $(LIB_OBJ
)
308 SWAT_OBJ1
= web
/cgi.o web
/diagnose.o web
/startstop.o web
/statuspage.o \
309 web
/swat.o web
/neg_lang.o
311 SWAT_OBJ
= $(SWAT_OBJ1
) $(PRINTING_OBJ
) $(LIBSMB_OBJ
) $(LOCKING_OBJ
) \
312 $(PARAM_OBJ
) $(PASSDB_OBJ
) $(SECRETS_OBJ
) \
313 $(UBIQX_OBJ
) $(LIB_OBJ
) $(GROUPDB_OBJ
) $(PLAINTEXT_AUTH_OBJ
)
315 SMBSH_OBJ
= smbwrapper
/smbsh.o smbwrapper
/shared.o \
316 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
318 MAKE_PRINTERDEF_OBJ
= utils
/make_printerdef.o
$(PARAM_OBJ
) \
319 $(UBIQX_OBJ
) $(LIB_OBJ
)
321 STATUS_OBJ
= utils
/status.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
322 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
324 SMBCONTROL_OBJ
= utils
/smbcontrol.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
325 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) printing
/notify.o
327 SMBTREE_OBJ
= utils
/smbtree.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
328 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) $(LIBSMB_OBJ
)
330 TESTPARM_OBJ
= utils
/testparm.o \
331 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
333 TESTPRNS_OBJ
= utils
/testprns.o
$(PARAM_OBJ
) $(PRINTING_OBJ
) $(UBIQX_OBJ
) \
336 SMBPASSWD_OBJ
= utils
/smbpasswd.o
$(PARAM_OBJ
) $(SECRETS_OBJ
) \
337 $(LIBSMB_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
)\
338 $(UBIQX_OBJ
) $(LIB_OBJ
)
340 PDBEDIT_OBJ
= utils
/pdbedit.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(PASSDB_OBJ
) \
341 $(UBIQX_OBJ
) $(LIB_OBJ
) $(GROUPDB_OBJ
) $(SECRETS_OBJ
)
343 SMBGROUPEDIT_OBJ
= utils
/smbgroupedit.o
$(GROUPDB_OBJ
) $(PARAM_OBJ
) \
344 $(LIBSMB_OBJ
) $(PASSDB_OBJ
) $(SECRETS_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
346 RPCCLIENT_OBJ1
= rpcclient
/rpcclient.o rpcclient
/cmd_lsarpc.o \
347 rpcclient
/cmd_samr.o rpcclient
/cmd_spoolss.o \
348 rpcclient
/cmd_netlogon.o rpcclient
/cmd_srvsvc.o \
349 rpcclient
/cmd_dfs.o rpcclient
/cmd_reg.o \
350 rpcclient
/display_sec.o
352 RPCCLIENT_OBJ
= $(RPCCLIENT_OBJ1
) \
353 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
354 $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
) $(LIBMSRPC_OBJ
) \
355 $(READLINE_OBJ
) $(GROUPDB_OBJ
) \
356 $(LIBADS_OBJ
) $(SECRETS_OBJ
)
358 PAM_WINBIND_OBJ
= nsswitch
/pam_winbind.po nsswitch
/wb_common.po lib
/snprintf.po
360 SMBW_OBJ1
= smbwrapper
/smbw.o \
361 smbwrapper
/smbw_dir.o smbwrapper
/smbw_stat.o \
362 smbwrapper
/realcalls.o smbwrapper
/shared.o \
363 smbwrapper
/smbw_cache.o
365 SMBW_OBJ
= $(SMBW_OBJ1
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
366 $(UBIQX_OBJ
) $(LIB_OBJ
)
368 SMBWRAPPER_OBJ1
= smbwrapper
/wrapped.o
370 SMBWRAPPER_OBJ
= $(SMBW_OBJ
) $(SMBWRAPPER_OBJ1
)
372 LIBSMBCLIENT_OBJ
= libsmb
/libsmbclient.o libsmb
/libsmb_compat.o \
373 libsmb
/libsmb_cache.o
$(LIB_OBJ
) \
374 $(LIBSMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
)
376 CLIENT_OBJ1
= client
/client.o client
/clitar.o
378 CLIENT_OBJ
= $(CLIENT_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
381 NET_OBJ1
= utils
/net.o utils
/net_ads.o utils
/net_ads_cldap.o utils
/net_help.o \
382 utils
/net_rap.o utils
/net_rpc.o utils
/net_rpc_samsync.o \
383 utils
/net_rpc_join.o utils
/net_time.o utils
/net_lookup.o
385 NET_OBJ
= $(NET_OBJ1
) $(SECRETS_OBJ
) $(LIBSMB_OBJ
) \
386 $(RPC_PARSE_OBJ
) $(PASSDB_GET_SET_OBJ
) \
387 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
388 $(LIBMSRPC_OBJ
) $(LIBMSRPC_SERVER_OBJ
) \
389 $(LIBADS_OBJ
) $(LIBADS_SERVER_OBJ
)
391 CUPS_OBJ
= client
/smbspool.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
393 MOUNT_OBJ
= client
/smbmount.o \
394 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
396 MNT_OBJ
= client
/smbmnt.o
398 UMOUNT_OBJ
= client
/smbumount.o \
399 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
401 NMBLOOKUP_OBJ
= utils
/nmblookup.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) \
402 $(LIBSMB_OBJ
) $(LIB_OBJ
)
404 SMBTORTURE_OBJ1
= torture
/torture.o torture
/nbio.o torture
/scanner.o torture
/utable.o \
405 torture
/denytest.o torture
/mangle_test.o
407 SMBTORTURE_OBJ
= $(SMBTORTURE_OBJ1
) \
408 $(LIBSMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
410 MASKTEST_OBJ
= torture
/masktest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
411 $(UBIQX_OBJ
) $(LIB_OBJ
)
413 MSGTEST_OBJ
= torture
/msgtest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
414 $(UBIQX_OBJ
) $(LIB_OBJ
)
416 LOCKTEST_OBJ
= torture
/locktest.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
417 $(UBIQX_OBJ
) $(LIB_OBJ
)
419 NSSTEST_OBJ
= torture
/nsstest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
420 $(UBIQX_OBJ
) $(LIB_OBJ
)
422 VFSTEST_OBJ
= torture
/cmd_vfs.o torture
/vfstest.o
$(SMBD_OBJ_BASE
) $(READLINE_OBJ
)
424 LOCKTEST2_OBJ
= torture
/locktest2.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
425 $(UBIQX_OBJ
) $(LIB_OBJ
)
427 SMBCACLS_OBJ
= utils
/smbcacls.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
428 $(UBIQX_OBJ
) $(LIB_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_GET_SET_OBJ
) \
431 TALLOCTORT_OBJ
= lib
/talloctort.o
$(LIB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
)
433 RPCTORTURE_OBJ
= torture
/rpctorture.o \
434 rpcclient
/display.o \
435 rpcclient
/cmd_lsarpc.o \
436 rpcclient
/cmd_wkssvc.o \
437 rpcclient
/cmd_samr.o \
438 rpcclient
/cmd_srvsvc.o \
439 rpcclient
/cmd_netlogon.o \
440 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
441 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_GET_SET_OBJ
)
443 DEBUG2HTML_OBJ
= utils
/debug2html.o ubiqx
/debugparse.o
445 SMBFILTER_OBJ
= utils
/smbfilter.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
446 $(UBIQX_OBJ
) $(LIB_OBJ
)
448 PROTO_OBJ
= $(SMBD_OBJ_MAIN
) \
449 $(SMBD_OBJ_SRV
) $(NMBD_OBJ1
) $(SWAT_OBJ1
) $(LIB_OBJ
) $(LIBSMB_OBJ
) \
450 $(SMBW_OBJ1
) $(SMBWRAPPER_OBJ1
) $(SMBTORTURE_OBJ1
) $(RPCCLIENT_OBJ1
) \
451 $(LIBMSRPC_OBJ
) $(LIBMSRPC_SERVER_OBJ
) $(RPC_CLIENT_OBJ
) \
452 $(RPC_SERVER_OBJ
) $(RPC_PARSE_OBJ
) \
453 $(AUTH_OBJ
) $(PARAM_OBJ
) $(LOCKING_OBJ
) $(SECRETS_OBJ
) \
454 $(PRINTING_OBJ
) $(PRINTBACKEND_OBJ
) $(OPLOCK_OBJ
) $(NOTIFY_OBJ
) \
455 $(QUOTAOBJS
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) $(MSDFS_OBJ
) \
456 $(READLINE_OBJ
) $(PROFILE_OBJ
) $(LIBADS_OBJ
) $(LIBADS_SERVER_OBJ
) \
457 $(LIB_SMBD_OBJ
) $(SAM_OBJ
)
459 NSS_OBJ_0
= nsswitch
/wins.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIBSMB_OBJ
) \
460 $(LIB_OBJ
) $(NSSWINS_OBJ
)
462 NSS_OBJ
= $(NSS_OBJ_0
:.o
=.po
)
464 PICOBJS
= $(SMBWRAPPER_OBJ
:.o
=.po
)
465 PICOBJS32
= $(SMBWRAPPER_OBJ
:.o
=.po32
)
466 LIBSMBCLIENT_PICOBJS
= $(LIBSMBCLIENT_OBJ
:.o
=.po
)
468 PAM_SMBPASS_OBJ_0
= pam_smbpass
/pam_smb_auth.o pam_smbpass
/pam_smb_passwd.o \
469 pam_smbpass
/pam_smb_acct.o pam_smbpass
/support.o \
470 libsmb
/smbencrypt.o libsmb
/smbdes.o libsmb
/nterr.o \
471 $(PARAM_OBJ
) $(LIB_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) \
472 $(SECRETS_OBJ
) $(UBIQX_OBJ
)
474 PAM_SMBPASS_PICOOBJ
= $(PAM_SMBPASS_OBJ_0
:.o
=.po
)
477 nsswitch
/winbindd.o \
478 nsswitch
/winbindd_user.o \
479 nsswitch
/winbindd_group.o \
480 nsswitch
/winbindd_idmap.o \
481 nsswitch
/winbindd_util.o \
482 nsswitch
/winbindd_cache.o \
483 nsswitch
/winbindd_pam.o \
484 nsswitch
/winbindd_sid.o \
485 nsswitch
/winbindd_misc.o \
486 nsswitch
/winbindd_cm.o \
487 nsswitch
/winbindd_wins.o \
488 nsswitch
/winbindd_rpc.o \
489 nsswitch
/winbindd_ads.o \
490 nsswitch
/winbindd_dual.o
493 $(WINBINDD_OBJ1
) $(PASSDB_GET_SET_OBJ
) \
494 $(LIBNMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
495 $(LIBSMB_OBJ
) $(LIBMSRPC_OBJ
) $(RPC_PARSE_OBJ
) \
496 $(PROFILE_OBJ
) $(UNIGRP_OBJ
) \
497 $(SECRETS_OBJ
) $(LIBADS_OBJ
) $(REGOBJS_OBJ
)
499 WBINFO_OBJ
= nsswitch
/wbinfo.o libsmb
/smbencrypt.o libsmb
/smbdes.o
501 WINBIND_NSS_OBJ
= nsswitch
/winbind_nss.o nsswitch
/wb_common.o @WINBIND_NSS_EXTRA_OBJS@
503 WINBIND_NSS_PICOBJS
= $(WINBIND_NSS_OBJ
:.o
=.po
)
505 POPT_OBJS
=popt
/findme.o popt
/popt.o popt
/poptconfig.o \
506 popt
/popthelp.o popt
/poptparse.o
508 TDBBACKUP_OBJ
= tdb
/tdbbackup.o
$(TDBBASE_OBJ
)
510 ######################################################################
512 ######################################################################
513 all : SHOWFLAGS proto_exists
$(SPROGS
) $(PROGS
) $(WINBIND_PROGS
) $(WINBIND_SPROGS
) $(LPROGS
) $(SHLIBS
)
515 pam_smbpass
: SHOWFLAGS bin
/pam_smbpass.@SHLIBEXT@
517 smbwrapper
: SHOWFLAGS @WRAPPROG@ @WRAP@ @WRAP32@
519 torture
: SHOWFLAGS
$(TORTURE_PROGS
)
521 smbtorture
: SHOWFLAGS bin
/smbtorture
523 masktest
: SHOWFLAGS bin
/masktest
525 msgtest
: SHOWFLAGS bin
/msgtest
527 locktest
: SHOWFLAGS bin
/locktest
529 smbcacls
: SHOWFLAGS bin
/smbcacls
531 locktest2
: SHOWFLAGS bin
/locktest2
533 rpctorture
: SHOWFLAGS bin
/rpctorture
535 debug2html
: SHOWFLAGS bin
/debug2html
537 smbfilter
: SHOWFLAGS bin
/smbfilter
539 talloctort
: SHOWFLAGS bin
/talloctort
541 nsswitch
: SHOWFLAGS
$(WINBIND_PROGS
) $(WINBIND_SPROGS
) $(LPROGS
)
543 wins
: SHOWFLAGS nsswitch
/libnss_wins.so
545 everything
: all libsmbclient debug2html smbfilter talloctort bin
/make_printerdef
548 .SUFFIXES
: .c .o .po .po32 .lo
551 @echo
"Using FLAGS = $(FLAGS)"
552 @echo
" FLAGS32 = $(FLAGS32)"
553 @echo
" LIBS = $(LIBS)"
554 @echo
" LDSHFLAGS = $(LDSHFLAGS)"
555 @echo
" LDFLAGS = $(LDFLAGS)"
557 MAKEDIR
= || exec false
; \
558 if
test -d
"$$dir"; then
:; else \
559 echo mkdir
"$$dir"; \
560 mkdir
-p
"$$dir" >/dev
/null
2>&1 || \
563 exec false
; fi || exec false
566 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
567 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
569 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) -c
$< \
571 @BROKEN_CC@
-mv
`echo $@ | sed 's%^.*/%%g'` $@
573 # These dependencies are only approximately correct: we want to make
574 # sure Samba's paths are updated if ./configure is re-run. Really it
575 # would be nice if "make prefix=/opt/samba all" also rebuilt things,
576 # but since we also require "make install prefix=/opt/samba" *not* to
577 # rebuild it's a bit hard.
579 dynconfig.o
: dynconfig.c Makefile
581 @
$(CC
) $(FLAGS
) $(PATH_FLAGS
) -c
$< -o
$@
583 dynconfig.po
: dynconfig.c Makefile
584 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
585 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
586 @echo Compiling
$*.c with @PICFLAG@
587 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) $(PATH_FLAGS
) @PICFLAG@
-c
$< -o
$*.@PICSUFFIX@
588 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@
589 @POBAD_CC@ @mv
$*.po.o
$@
592 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
593 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
594 @echo Compiling
$*.c with @PICFLAG@
595 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) @PICFLAG@
-c
$< -o
$*.@PICSUFFIX@
596 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@
597 @POBAD_CC@ @mv
$*.po.o
$@
601 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
602 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
603 @echo Compiling
$*.c with @PICFLAG@ and
-32
604 @
$(CC
) -32 -I.
-I
$(srcdir) $(FLAGS32
) $(PATH_FLAGS
) @PICFLAG@
-c
$< \
606 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po32$$%.o%'` $@.o
610 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
611 dir=bin
$(MAKEDIR
); fi
612 @
: >> $@ ||
: > $@
# what a fancy emoticon!
614 bin
/smbd
: $(SMBD_OBJ
) bin
/.dummy
616 @
$(CC
) $(FLAGS
) -o
$@
$(SMBD_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(PRINTLIBS
) $(LIBS
)
618 bin
/nmbd
: $(NMBD_OBJ
) bin
/.dummy
620 @
$(CC
) $(FLAGS
) -o
$@
$(NMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
622 bin
/wrepld
: $(WREPL_OBJ
) bin
/.dummy
624 @
$(CC
) $(FLAGS
) -o
$@
$(WREPL_OBJ
) $(LDFLAGS
) $(LIBS
)
626 bin
/swat
: $(SWAT_OBJ
) bin
/.dummy
628 @
$(CC
) $(FLAGS
) -o
$@
$(SWAT_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(PRINTLIBS
) $(LIBS
)
630 bin
/rpcclient
: $(RPCCLIENT_OBJ
) @BUILD_POPT@ bin
/.dummy
632 @
$(CC
) $(FLAGS
) -o
$@
$(RPCCLIENT_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(TERMLDFLAGS
) $(TERMLIBS
) $(LIBS
) @BUILD_POPT@
634 bin
/smbclient
: $(CLIENT_OBJ
) bin
/.dummy
636 @
$(CC
) $(FLAGS
) -o
$@
$(CLIENT_OBJ
) $(LDFLAGS
) $(TERMLDFLAGS
) $(TERMLIBS
) $(LIBS
)
638 bin
/net
: $(NET_OBJ
) @BUILD_POPT@ bin
/.dummy
640 @
$(CC
) $(FLAGS
) -o
$@
$(NET_OBJ
) $(DYNEXP
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
642 bin
/smbspool
: $(CUPS_OBJ
) bin
/.dummy
644 @
$(CC
) $(FLAGS
) -o
$@
$(CUPS_OBJ
) $(LDFLAGS
) $(LIBS
)
646 bin
/smbmount
: $(MOUNT_OBJ
) bin
/.dummy
648 @
$(CC
) $(FLAGS
) -o
$@
$(MOUNT_OBJ
) $(LDFLAGS
) $(LIBS
)
650 bin
/smbmnt
: $(MNT_OBJ
) bin
/.dummy
652 @
$(CC
) $(FLAGS
) -o
$@
$(MNT_OBJ
) $(LDFLAGS
) $(LIBS
)
654 bin
/smbumount
: $(UMOUNT_OBJ
) bin
/.dummy
656 @
$(CC
) $(FLAGS
) -o
$@
$(UMOUNT_OBJ
) $(LDFLAGS
) $(LIBS
)
658 bin
/testparm
: $(TESTPARM_OBJ
) bin
/.dummy
660 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPARM_OBJ
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
662 bin
/testprns
: $(TESTPRNS_OBJ
) bin
/.dummy
664 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPRNS_OBJ
) $(LDFLAGS
) $(PRINTLIBS
) $(LIBS
)
666 bin
/smbstatus
: $(STATUS_OBJ
) @BUILD_POPT@ bin
/.dummy
668 @
$(CC
) $(FLAGS
) -o
$@
$(STATUS_OBJ
) $(LDFLAGS
) $(LIBS
) @BUILD_POPT@
670 bin
/smbcontrol
: $(SMBCONTROL_OBJ
) bin
/.dummy
672 @
$(CC
) $(FLAGS
) -o
$@
$(SMBCONTROL_OBJ
) $(LDFLAGS
) $(LIBS
)
674 bin
/smbtree
: $(SMBTREE_OBJ
) bin
/.dummy
676 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTREE_OBJ
) $(LDFLAGS
) $(LIBS
)
678 bin
/smbpasswd
: $(SMBPASSWD_OBJ
) bin
/.dummy
680 @
$(CC
) $(FLAGS
) -o
$@
$(SMBPASSWD_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(LIBS
)
682 bin
/pdbedit
: $(PDBEDIT_OBJ
) bin
/.dummy
684 @
$(CC
) $(FLAGS
) -o
$@
$(PDBEDIT_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(LIBS
) @BUILD_POPT@
686 bin
/samtest
: $(SAMTEST_OBJ
) bin
/.dummy
688 @
$(CC
) $(FLAGS
) -o
$@
$(SAMTEST_OBJ
) $(LDFLAGS
) $(DYNEXP
) $(TERMLDFLAGS
) $(TERMLIBS
) $(DYNEXP
) $(LIBS
) @BUILD_POPT@
690 bin
/smbgroupedit
: $(SMBGROUPEDIT_OBJ
) bin
/.dummy
692 @
$(CC
) $(FLAGS
) -o
$@
$(SMBGROUPEDIT_OBJ
) $(LDFLAGS
) $(LIBS
)
694 bin
/nmblookup
: $(NMBLOOKUP_OBJ
) bin
/.dummy
696 @
$(CC
) $(FLAGS
) -o
$@
$(NMBLOOKUP_OBJ
) $(LDFLAGS
) $(LIBS
)
698 bin
/make_printerdef
: $(MAKE_PRINTERDEF_OBJ
) bin
/.dummy
700 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_PRINTERDEF_OBJ
) $(LDFLAGS
) $(LIBS
)
702 bin
/smbtorture
: $(SMBTORTURE_OBJ
) bin
/.dummy
704 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
706 bin
/talloctort
: $(TALLOCTORT_OBJ
) bin
/.dummy
708 @
$(CC
) $(FLAGS
) -o
$@
$(TALLOCTORT_OBJ
) $(LDFLAGS
) $(LIBS
)
710 bin
/masktest
: $(MASKTEST_OBJ
) bin
/.dummy
712 @
$(CC
) $(FLAGS
) -o
$@
$(MASKTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
714 bin
/msgtest
: $(MSGTEST_OBJ
) bin
/.dummy
716 @
$(CC
) $(FLAGS
) -o
$@
$(MSGTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
718 bin
/smbcacls
: $(SMBCACLS_OBJ
) bin
/.dummy
720 @
$(CC
) $(FLAGS
) -o
$@
$(SMBCACLS_OBJ
) $(DYNEXP
) $(LDFLAGS
) $(LIBS
)
722 bin
/locktest
: $(LOCKTEST_OBJ
) bin
/.dummy
724 @
$(CC
) $(FLAGS
) -o
$@
$(LOCKTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
726 bin
/nsstest
: $(NSSTEST_OBJ
) bin
/.dummy
728 @
$(CC
) $(FLAGS
) -o
$@
$(NSSTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
730 bin
/vfstest
: $(VFSTEST_OBJ
) bin
/.dummy
732 @
$(CC
) $(FLAGS
) -o
$@
$(VFSTEST_OBJ
) $(LDFLAGS
) $(TERMLDFLAGS
) $(TERMLIBS
) $(DYNEXP
) $(PRINTLIBS
) $(LIBS
) @BUILD_POPT@
734 bin
/locktest2
: $(LOCKTEST2_OBJ
) bin
/.dummy
736 @
$(CC
) $(FLAGS
) -o
$@
$(LOCKTEST2_OBJ
) $(LDFLAGS
) $(LIBS
)
738 bin
/rpctorture
: $(RPCTORTURE_OBJ
) bin
/.dummy
740 @
$(CC
) $(FLAGS
) -o
$@
$(RPCTORTURE_OBJ
) $(DYNEXP
) $(LDFLAGS
) $(LIBS
)
742 bin
/debug2html
: $(DEBUG2HTML_OBJ
) bin
/.dummy
744 @
$(CC
) $(FLAGS
) -o
$@
$(DEBUG2HTML_OBJ
) $(LDFLAGS
) $(LIBS
)
746 bin
/smbfilter
: $(SMBFILTER_OBJ
) bin
/.dummy
748 @
$(CC
) $(FLAGS
) -o
$@
$(SMBFILTER_OBJ
) $(LDFLAGS
) $(LIBS
)
750 bin
/smbw_sample
: $(SMBW_OBJ
) utils
/smbw_sample.o bin
/.dummy
752 @
$(CC
) $(FLAGS
) -o
$@
$(SMBW_OBJ
) utils
/smbw_sample.o
$(LDFLAGS
) $(LIBS
)
754 bin
/smbsh
: $(SMBSH_OBJ
) bin
/.dummy
756 @
$(CC
) $(FLAGS
) -o
$@
$(SMBSH_OBJ
) $(LDFLAGS
) $(LIBS
)
758 bin
/smbwrapper.@SHLIBEXT@
: $(PICOBJS
) bin
/.dummy
759 @echo Linking shared library
$@
760 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(PICOBJS
) $(LIBS
) \
761 @SONAMEFLAG@
`basename $@`
763 bin
/smbwrapper
.32.@SHLIBEXT@
: $(PICOBJS32
)
764 @echo Linking shared library
$@
765 @
$(SHLD
) -32 $(LDSHFLAGS
) -o
$@
$(PICOBJS32
) $(LIBS
) \
766 @SONAMEFLAG@
`basename $@`
768 bin
/libsmbclient.@SHLIBEXT@
: $(LIBSMBCLIENT_PICOBJS
)
769 echo Linking libsmbclient shared library
$@
770 $(SHLD
) $(LDSHFLAGS
) -o
$@
$(LIBSMBCLIENT_PICOBJS
) $(LIBS
) \
771 @SONAMEFLAG@
`basename $@`.
$(LIBSMBCLIENT_MAJOR
)
773 bin
/libsmbclient.a
: $(LIBSMBCLIENT_PICOBJS
)
774 @echo Linking libsmbclient non-shared library
$@
775 -$(AR
) -rc
$@
$(LIBSMBCLIENT_PICOBJS
)
777 libsmbclient
: bin
/libsmbclient.a bin
/libsmbclient.@SHLIBEXT@
780 nsswitch
/libnss_wins.so
: $(NSS_OBJ
)
782 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(NSS_OBJ
) -lc \
783 @SONAMEFLAG@
`basename $@`
785 bin
/winbindd
: $(WINBINDD_OBJ
) bin
/.dummy
787 @
$(LINK
) -o
$@
$(WINBINDD_OBJ
) $(DYNEXP
) $(LIBS
)
789 nsswitch
/libns_winbind.so
: $(WINBIND_NSS_PICOBJS
)
791 @
$(SHLD
) @LDSHFLAGS@
-o
$@
$(WINBIND_NSS_PICOBJS
) @WINBIND_NSS_EXTRA_LIBS@ \
792 @SONAMEFLAG@
`basename $@`
794 nsswitch
/libnss_winbind.so
: $(WINBIND_NSS_PICOBJS
)
796 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(WINBIND_NSS_PICOBJS
) @WINBIND_NSS_EXTRA_LIBS@ \
797 @SONAMEFLAG@
`basename $@`
799 nsswitch
/pam_winbind.so
: $(PAM_WINBIND_OBJ
) bin
/.dummy
801 @
$(SHLD
) $(LDSHFLAGS
) -o
$@
$(PAM_WINBIND_OBJ
) \
802 @SONAMEFLAG@
`basename $@`
804 bin
/wbinfo
: $(WBINFO_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
805 $(UBIQX_OBJ
) $(SECRETS_OBJ
) @BUILD_POPT@ bin
/.dummy
807 @
$(LINK
) -o
$@
$(WBINFO_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
808 $(UBIQX_OBJ
) $(SECRETS_OBJ
) $(LIBS
) @BUILD_POPT@
810 bin
/pam_smbpass.@SHLIBEXT@
: $(PAM_SMBPASS_PICOOBJ
)
811 @echo
"Linking shared library $@"
812 $(SHLD
) $(LDSHFLAGS
) -o
$@
$(PAM_SMBPASS_PICOOBJ
) -lpam
$(DYNEXP
) $(LIBS
) -lc
814 bin
/libmsrpc.a
: $(LIBMSRPC_PICOBJ
)
815 -$(AR
) -rc
$@
$(LIBMSRPC_PICOBJ
)
817 bin
/tdbbackup
: $(TDBBACKUP_OBJ
) bin
/.dummy
819 @
$(CC
) $(FLAGS
) -o
$@
$(TDBBACKUP_OBJ
)
821 install: installbin installman installscripts installdat installswat
824 @
$(SHELL
) $(srcdir)/script
/installdirs.sh
$(BASEDIR
) $(BINDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(PRIVATEDIR
)
826 installservers
: all installdirs
827 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
829 installbin
: all installdirs
830 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
831 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
833 installscripts
: installdirs
834 @
$(SHELL
) $(srcdir)/script
/installscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
836 installdat
: installdirs
837 @
$(SHELL
) $(srcdir)/script
/installdat.sh
$(LIBDIR
) $(srcdir)
839 installswat
: installdirs
840 @
$(SHELL
) $(srcdir)/script
/installswat.sh
$(SWATDIR
) $(srcdir)
843 -$(INSTALLCMD
) bin
/libsmbclient.so
${prefix}/lib
844 -$(INSTALLCMD
) -d
${prefix}/include
845 -$(INSTALLCMD
) include/libsmbclient.h
${prefix}/include
847 # revert to the previously installed version
849 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(SBINDIR
) $(SPROGS
)
850 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(BINDIR
) $(PROGS
) $(SCRIPTS
)
853 @
$(SHELL
) $(srcdir)/script
/installman.sh
$(MANDIR
) $(srcdir) $(man_langs
) "@ROFF@"
858 @echo
"Samba will be installed into:"
859 @echo
" basedir: $(BASEDIR)"
860 @echo
" bindir: $(BINDIR)"
861 @echo
" sbindir: $(SBINDIR)"
862 @echo
" libdir: $(LIBDIR)"
863 @echo
" vardir: $(VARDIR)"
864 @echo
" mandir: $(MANDIR)"
867 uninstall: uninstallman uninstallbin uninstallscripts
870 @
$(SHELL
) $(srcdir)/script
/uninstallman.sh
$(MANDIR
) $(srcdir) $(man_langs
)
873 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
874 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
877 @
$(SHELL
) $(srcdir)/script
/uninstallscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
879 # Toplevel clean files
880 TOPFILES
=dynconfig.o dynconfig.po
883 -rm -f core
*/*~
*~
*/*.o
*/*.po
*/*.po32
*/*.@SHLIBEXT@ \
884 $(TOPFILES
) $(PROGS
) $(SPROGS
) .headers.stamp
886 # Making this target will just make sure that the prototype files
887 # exist, not necessarily that they are up to date. Since they're
888 # removed by "make clean" this will always be run when you do anything
890 proto_exists
: include/proto.h
include/wrepld_proto.h
include/build_env.h \
891 nsswitch
/winbindd_proto.h web
/swat_proto.h \
892 client
/client_proto.h utils
/net_proto.h
895 @echo Removing prototype headers
896 @
/bin
/rm -f
$(srcdir)/include/proto.h
$(srcdir)/include/build_env.h
897 @
/bin
/rm -f
$(srcdir)/include/wrepld_proto.h
$(srcdir)/nsswitch
/winbindd_proto.h
898 @
/bin
/rm -f
$(srcdir)/web
/swat_proto.h
899 @
/bin
/rm -f
$(srcdir)/client
/client_proto.h
$(srcdir)/utils
/net_proto.h
901 @
/bin
/rm -f
include/proto.h
include/build_env.h
include/wrepld_proto.h \
902 nsswitch
/winbindd_proto.h web
/swat_proto.h \
903 client
/client_proto.h utils
/net_proto.h
906 @echo Building
include/proto.h
907 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
908 -h _PROTO_H_
$(builddir
)/include/proto.h \
912 @echo Building
include/build_env.h
913 @cd
$(srcdir) && $(SHELL
) script
/build_env.sh
$(srcdir) $(builddir
) $(CC
) > $(builddir
)/include/build_env.h
915 include/wrepld_proto.h
:
916 @echo Building
include/wrepld_proto.h
917 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
918 -h _WREPLD_PROTO_H_
$(builddir
)/include/wrepld_proto.h \
921 nsswitch
/winbindd_proto.h
:
922 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
923 -h _WINBINDD_PROTO_H_ nsswitch
/winbindd_proto.h \
927 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
928 -h _SWAT_PROTO_H_ web
/swat_proto.h \
931 client
/client_proto.h
:
932 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
933 -h _CLIENT_PROTO_H_ client
/client_proto.h \
937 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
938 -h _CLIENT_PROTO_H_ utils
/net_proto.h \
941 # "make headers" or "make proto" calls a subshell because we need to
942 # make sure these commands are executed in sequence even for a
945 $(MAKE
) delheaders
include/proto.h
include/build_env.h \
946 include/wrepld_proto.h nsswitch
/winbindd_proto.h \
947 web
/swat_proto.h client
/client_proto.h \
952 .PHONY
: headers proto
955 etags
`find $(srcdir) -name "*.[ch]" | grep -v /CVS/`
958 ctags
`find $(srcdir) -name "*.[ch]" | grep -v /CVS/`
961 -rm -f config.log
$(PROGS
) $(SPROGS
) bin
/.dummy
965 -rm -f
include/config.h Makefile
966 -rm -f config.status config.cache so_locations
969 # this target is really just for my use. It only works on a limited
970 # range of machines and is used to produce a list of potentially
971 # dead (ie. unused) functions in the code. (tridge)
973 nm
*/*.o |grep
'U ' | awk
'{print $$2}' |
sort -u
> nmused.txt
974 nm
*/*.o |grep
'T ' | awk
'{print $$3}' |
sort -u
> nmfns.txt
975 comm
-13 nmused.txt nmfns.txt
978 # when configure.in is updated, reconfigure
979 $(srcdir)/configure
: $(srcdir)/configure.in
980 @echo
"WARNING: you need to rerun autoconf"
982 config.status
: $(srcdir)/configure
983 @echo
"WARNING: you need to run configure"
985 Makefile
: $(srcdir)/Makefile.in config.status
986 @echo
"WARNING: you need to run ./config.status"
988 test_prefix
=/tmp
/test-samba
989 # Run regression suite using the external "satyr" framework
991 @echo
"** Sorry, samba self-test without installation does not work "
992 @echo
"** yet. Please try specifying a scratch directory to"
993 @echo
"** ./configure --prefix DIR"
994 @echo
"** then run \"make install installcheck\""
997 # -rm -rf $(test_prefix)/lib
998 # mkdir $(test_prefix)/lib -p ./testdir
999 # PATH=$(builddir)/bin:$(PATH) \
1000 # SATYR_SUITEDIR=../testsuite/build_farm/ prefix=$(test_prefix) \
1001 # testdir=./testdir $(SHELL) satyr
1003 # Run regression suite on the installed version.
1006 # Perform installation tests (if any). The user must build and
1007 # install the program before running the tests. You should not
1008 # assume that `$(bindir)' is in the search path.
1010 dangerous-installcheck
:
1011 mkdir
-p
$(BASEDIR
)/lib
1012 mkdir
-p
$(BASEDIR
)/var
1013 PATH
=$(BINDIR
):$(SBINDIR
):$(PATH
) \
1014 SATYR_DISCOURAGE
=1 \
1015 SATYR_SUITEDIR
=..
/testsuite
/satyr
/ prefix=$(BASEDIR
) \
1016 LIBSMB_PROG
=$(SBINDIR
)/smbd \
1017 testdir
=.
/testdir
$(SHELL
) satyr