1 ###########################################################################
2 # Makefile.in for Samba - rewritten for autoconf support
3 # Copyright Andrew Tridgell 1992-1998
4 ###########################################################################
7 exec_prefix=@
exec_prefix@
17 LIBTOOL
=@LIBTOOL@
--quiet
18 LIBTOOL_DEPS
=@LIBTOOL_DEPS@
19 LINK
=$(LIBTOOL
) --mode
=link
$(CC
) $(FLAGS
) $(LDFLAGS
)
31 # we don't use sbindir because we want full compatibility with
32 # the previous releases of Samba
35 VARDIR
= @localstatedir@
38 # The permissions to give the executables
41 # set these to where to find various files
42 # These can be overridden by command line switches (see smbd(8))
43 # or in smb.conf (see smb.conf(5))
44 LOGFILEBASE
= $(VARDIR
)
45 CONFIGFILE
= $(LIBDIR
)/smb.conf
46 LMHOSTSFILE
= $(LIBDIR
)/lmhosts
47 DRIVERFILE
= $(LIBDIR
)/printers.def
48 PASSWD_PROGRAM
= /bin
/passwd
49 # This is where smbpasswd et al go
50 PRIVATEDIR
= @privatedir@
52 SMB_PASSWD_FILE
= $(PRIVATEDIR
)/smbpasswd
53 PRIVATE_DIR
= $(PRIVATEDIR
)
55 # This is where SWAT images and help files go
58 # the directory where lock files go
61 # The directory where code page definition files go
62 CODEPAGEDIR
= $(LIBDIR
)/codepages
64 # The current codepage definition list.
65 CODEPAGELIST
= 437 737 775 850 852 861 932 866 949 950 936 1251 ISO8859-1 ISO8859-2 ISO8859-5 ISO8859-7 KOI-R
67 # where you are going to have the smbrun binary. This defaults to the
68 # install directory. This binary is needed for correct printing
69 # and magic script execution. This should be an absolute path!
70 # Also not that this should include the name "smbrun" on the end (the
71 # name of the executable)
72 SMBRUN
= $(BINDIR
)/smbrun
75 PASSWD_FLAGS
= -DPASSWD_PROGRAM
=\"$(PASSWD_PROGRAM
)\" -DSMB_PASSWD_FILE
=\"$(SMB_PASSWD_FILE
)\" -DPRIVATE_DIR
=\"$(PRIVATE_DIR
)\"
76 FLAGS1
= $(CFLAGS
) -Iinclude
-I
$(srcdir)/include -I
$(srcdir)/ubiqx
-I
$(srcdir)/smbwrapper
$(CPPFLAGS
) -DLOGFILEBASE
=\"$(LOGFILEBASE
)\"
77 FLAGS2
= -DCONFIGFILE
=\"$(CONFIGFILE
)\" -DLMHOSTSFILE
=\"$(LMHOSTSFILE
)\"
78 FLAGS3
= -DSWATDIR
=\"$(SWATDIR
)\" -DSBINDIR
=\"$(SBINDIR
)\" -DLOCKDIR
=\"$(LOCKDIR
)\" -DSMBRUN
=\"$(SMBRUN
)\" -DCODEPAGEDIR
=\"$(CODEPAGEDIR
)\"
79 FLAGS4
= -DDRIVERFILE
=\"$(DRIVERFILE
)\" -DBINDIR
=\"$(BINDIR
)\" -DFORMSFILE
=\"$(FORMSFILE
)\" -DNTDRIVERSDIR
=\"$(NTDRIVERSDIR
)\"
80 FLAGS5
= $(FLAGS1
) $(FLAGS2
) $(FLAGS3
) $(FLAGS4
) -DHAVE_INCLUDES_H
81 FLAGS
= $(ISA
) $(FLAGS5
) $(PASSWD_FLAGS
)
82 FLAGS32
= $(ISA32
) $(FLAGS5
) $(PASSWD_FLAGS
)
84 SPROGS
= bin
/smbd bin
/nmbd bin
/swat
85 PROGS1
= bin
/smbclient bin
/smbspool bin
/testparm bin
/testprns bin
/smbstatus bin
/smbcontrol @RUNPROG@
86 PROGS2
= bin
/smbpasswd bin
/make_smbcodepage bin
/make_unicodemap bin
/rpcclient @WRAP@ @WRAP32@
88 PROGS
= $(PROGS1
) $(PROGS2
) $(MPROGS
) bin
/nmblookup bin
/make_printerdef
90 SCRIPTS
= $(srcdir)/script
/smbtar
$(srcdir)/script
/addtosmbpass
$(srcdir)/script
/convert_smbpasswd
94 ######################################################################
96 ######################################################################
98 TDB_OBJ
= tdb
/tdb.o tdb
/tdbutil.o
100 LIB_OBJ
= lib
/charcnv.o lib
/charset.o lib
/debug.o lib
/fault.o \
101 lib
/getsmbpass.o lib
/interface.o lib
/kanji.o lib
/md4.o \
102 lib
/interfaces.o lib
/pidfile.o lib
/replace.o \
103 lib
/signal.o lib
/slprintf.o lib
/system.o lib
/doscalls.o lib
/time.o \
104 lib
/ufc.o lib
/genrand.o lib
/username.o lib
/access.o lib
/smbrun.o \
105 lib
/bitmap.o lib
/crc32.o lib
/snprintf.o lib
/wins_srv.o \
106 lib
/util_array.o lib
/util_str.o lib
/util_sid.o \
107 lib
/util_unistr.o lib
/util_file.o \
108 lib
/util.o lib
/util_sock.o lib
/util_sec.o smbd
/ssl.o \
109 lib
/talloc.o lib
/hash.o lib
/substitute.o lib
/fsusage.o \
110 lib
/ms_fnmatch.o lib
/select.o lib
/error.o lib
/messages.o \
111 nsswitch
/wb_client.o nsswitch
/wb_common.o \
114 UBIQX_OBJ
= ubiqx
/ubi_BinTree.o ubiqx
/ubi_Cache.o ubiqx
/ubi_SplayTree.o \
115 ubiqx
/ubi_dLinkList.o ubiqx
/ubi_sLinkList.o ubiqx
/debugparse.o
117 PARAM_OBJ
= param
/loadparm.o param
/params.o
119 LIBSMB_OBJ
= libsmb
/clientgen.o libsmb
/cliconnect.o libsmb
/clifile.o \
120 libsmb
/clirap.o libsmb
/clierror.o libsmb
/climessage.o \
121 libsmb
/clireadwrite.o libsmb
/clilist.o libsmb
/cliprint.o \
123 libsmb
/namequery.o libsmb
/nmblib.o \
124 libsmb
/nterr.o libsmb
/smbdes.o libsmb
/smbencrypt.o \
125 libsmb
/smberr.o libsmb
/credentials.o libsmb
/pwd_cache.o \
126 libsmb
/passchange.o libsmb
/unexpected.o
128 RPC_SERVER_OBJ
= rpc_server
/srv_lsa.o \
129 rpc_server
/srv_lsa_hnd.o rpc_server
/srv_netlog.o \
130 rpc_server
/srv_pipe_hnd.o rpc_server
/srv_reg.o \
131 rpc_server
/srv_samr.o rpc_server
/srv_srvsvc.o \
132 rpc_server
/srv_util.o rpc_server
/srv_wkssvc.o \
133 rpc_server
/srv_pipe.o rpc_server
/srv_dfs.o \
134 rpc_server
/srv_spoolss.o rpc_server
/srv_spoolss_nt.o
136 RPC_PARSE_OBJ
= rpc_parse
/parse_lsa.o rpc_parse
/parse_misc.o \
137 rpc_parse
/parse_net.o rpc_parse
/parse_prs.o \
138 rpc_parse
/parse_reg.o rpc_parse
/parse_rpc.o \
139 rpc_parse
/parse_samr.o rpc_parse
/parse_srv.o \
140 rpc_parse
/parse_wks.o rpc_parse
/parse_sec.o \
141 rpc_parse
/parse_spoolss.o rpc_parse
/parse_dfs.o \
142 rpc_parse
/parse_creds.o
145 rpc_client
/cli_login.o \
146 rpc_client
/cli_netlogon.o \
147 rpc_client
/cli_pipe.o \
148 rpc_client
/cli_lsarpc.o \
149 rpc_client
/cli_wkssvc.o \
150 rpc_client
/cli_srvsvc.o \
151 rpc_client
/cli_samr.o \
152 rpc_client
/cli_reg.o \
153 rpc_client
/cli_spoolss_notify.o
155 LOCKING_OBJ
= locking
/locking.o locking
/brlock.o locking
/posix.o
157 PASSDB_OBJ
= passdb
/passdb.o passdb
/secrets.o \
158 passdb
/pass_check.o passdb
/smbpassfile.o \
159 passdb
/machine_sid.o passdb
/pdb_smbpasswd.o \
162 # passdb/smbpass.o passdb/ldap.o passdb/nispass.o
164 PROFILE_OBJ
= profile
/profile.o
166 OPLOCK_OBJ
= smbd
/oplock.o smbd
/oplock_irix.o smbd
/oplock_linux.o
168 NOTIFY_OBJ
= smbd
/notify.o smbd
/notify_hash.o smbd
/notify_kernel.o
170 SMBD_OBJ1
= smbd
/server.o smbd
/files.o smbd
/chgpasswd.o smbd
/connection.o \
171 smbd
/dfree.o smbd
/dir.o smbd
/password.o smbd
/conn.o smbd
/fileio.o \
172 smbd
/ipc.o smbd
/lanman.o smbd
/mangle.o smbd
/negprot.o \
173 smbd
/message.o smbd
/nttrans.o smbd
/pipes.o \
174 smbd
/reply.o smbd
/trans2.o smbd
/uid.o \
175 smbd
/dosmode.o smbd
/filename.o smbd
/open.o smbd
/close.o \
176 smbd
/blocking.o smbd
/sec_ctx.o \
177 smbd
/vfs.o smbd
/vfs-wrap.o smbd
/statcache.o \
178 smbd
/unix_acls.o lib
/msrpc-client.o lib
/msrpc_use.o \
179 smbd
/process.o smbd
/service.o smbd
/error.o \
180 printing
/printfsp.o lib
/util_seaccess.o
182 PRINTING_OBJ
= printing
/pcap.o printing
/print_svid.o printing
/print_cups.o printing
/load.o
184 PRINTBACKEND_OBJ
= printing
/printing.o printing
/lpq_parse.o printing
/nt_printing.o
186 MSDFS_OBJ
= msdfs
/msdfs.o
188 SMBD_OBJ
= $(SMBD_OBJ1
) $(MSDFS_OBJ
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
189 $(RPC_SERVER_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
190 $(LOCKING_OBJ
) $(PASSDB_OBJ
) $(PRINTING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) \
191 $(PRINTBACKEND_OBJ
) $(QUOTAOBJS
) $(OPLOCK_OBJ
) $(NOTIFY_OBJ
)
194 NMBD_OBJ1
= nmbd
/asyncdns.o nmbd
/nmbd.o nmbd
/nmbd_become_dmb.o \
195 nmbd
/nmbd_become_lmb.o nmbd
/nmbd_browserdb.o \
196 nmbd
/nmbd_browsesync.o nmbd
/nmbd_elections.o \
197 nmbd
/nmbd_incomingdgrams.o nmbd
/nmbd_incomingrequests.o \
198 nmbd
/nmbd_lmhosts.o nmbd
/nmbd_logonnames.o nmbd
/nmbd_mynames.o \
199 nmbd
/nmbd_namelistdb.o nmbd
/nmbd_namequery.o \
200 nmbd
/nmbd_nameregister.o nmbd
/nmbd_namerelease.o \
201 nmbd
/nmbd_nodestatus.o nmbd
/nmbd_packets.o \
202 nmbd
/nmbd_processlogon.o nmbd
/nmbd_responserecordsdb.o \
203 nmbd
/nmbd_sendannounce.o nmbd
/nmbd_serverlistdb.o \
204 nmbd
/nmbd_subnetdb.o nmbd
/nmbd_winsproxy.o nmbd
/nmbd_winsserver.o \
205 nmbd
/nmbd_workgroupdb.o nmbd
/nmbd_synclists.o
207 NMBD_OBJ
= $(NMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
210 SWAT_OBJ
= web
/cgi.o web
/diagnose.o web
/startstop.o web
/statuspage.o \
211 web
/swat.o lib
/msrpc-client.o
$(PRINTING_OBJ
) $(LIBSMB_OBJ
) $(LOCKING_OBJ
) \
212 $(PARAM_OBJ
) $(PASSDB_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
213 $(UBIQX_OBJ
) $(LIB_OBJ
)
215 SMBRUN_OBJ
= utils
/smbrun.o lib
/util_sec.o
217 SMBSH_OBJ
= smbwrapper
/smbsh.o smbwrapper
/shared.o \
218 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
220 MAKE_SMBCODEPAGE_OBJ
= utils
/make_smbcodepage.o
$(PARAM_OBJ
) \
221 $(UBIQX_OBJ
) $(LIB_OBJ
)
223 MAKE_UNICODEMAP_OBJ
= utils
/make_unicodemap.o
$(PARAM_OBJ
) \
224 $(UBIQX_OBJ
) $(LIB_OBJ
)
226 MAKE_PRINTERDEF_OBJ
= utils
/make_printerdef.o
$(PARAM_OBJ
) \
227 $(UBIQX_OBJ
) $(LIB_OBJ
)
229 STATUS_OBJ
= utils
/status.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
230 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
232 SMBCONTROL_OBJ
= utils
/smbcontrol.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
233 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
235 TESTPARM_OBJ
= utils
/testparm.o \
236 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
238 TESTPRNS_OBJ
= utils
/testprns.o
$(PARAM_OBJ
) $(PRINTING_OBJ
) $(UBIQX_OBJ
) \
241 SMBPASSWD_OBJ
= utils
/smbpasswd.o lib
/msrpc-client.o
$(PARAM_OBJ
) \
242 $(LIBSMB_OBJ
) $(PASSDB_OBJ
) \
243 $(UBIQX_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(LIB_OBJ
)
245 TDBEDIT_OBJ
= utils
/tdbedit.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(PASSDB_OBJ
) \
246 $(UBIQX_OBJ
) $(LIB_OBJ
)
248 RPCCLIENT_OBJ1
= rpcclient
/rpcclient.o \
249 lib
/cmd_interp.o lib
/util_list.o \
251 rpc_client
/cli_connect.o \
252 rpc_client
/cli_use.o \
253 rpc_client
/ncacn_np_use.o \
254 rpcclient
/spoolss_cmds.o rpcclient
/cmd_spoolss.o \
255 rpcclient
/display_spool.o rpcclient
/display_sec.o \
256 rpc_client
/msrpc_spoolss.o rpc_client
/cli_spoolss.o
258 RPCCLIENT_OBJ
= $(RPCCLIENT_OBJ1
) \
259 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
260 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
)
262 PAM_WINBIND_OBJ
= nsswitch
/pam_winbind.po nsswitch
/wb_common.po
264 SMBW_OBJ
= smbwrapper
/smbw.o \
265 smbwrapper
/smbw_dir.o smbwrapper
/smbw_stat.o \
266 smbwrapper
/realcalls.o smbwrapper
/shared.o \
267 $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
268 $(UBIQX_OBJ
) $(LIB_OBJ
)
270 SMBWRAPPER_OBJ
= $(SMBW_OBJ
) smbwrapper
/wrapped.o
272 CLIENT_OBJ
= client
/client.o client
/clitar.o \
273 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
275 CUPS_OBJ
= client
/smbspool.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
277 MOUNT_OBJ
= client
/smbmount.o \
278 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
280 MNT_OBJ
= client
/smbmnt.o \
281 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
283 UMOUNT_OBJ
= client
/smbumount.o \
284 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
286 NMBLOOKUP_OBJ
= utils
/nmblookup.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) \
287 $(LIBSMB_OBJ
) $(LIB_OBJ
)
289 SMBTORTURE_OBJ
= utils
/torture.o utils
/nbio.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
290 $(UBIQX_OBJ
) $(LIB_OBJ
)
292 MASKTEST_OBJ
= utils
/masktest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
293 $(UBIQX_OBJ
) $(LIB_OBJ
)
295 MSGTEST_OBJ
= utils
/msgtest.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
296 $(UBIQX_OBJ
) $(LIB_OBJ
)
298 LOCKTEST_OBJ
= utils
/locktest.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
299 $(UBIQX_OBJ
) $(LIB_OBJ
)
302 LOCKTEST2_OBJ
= utils
/locktest2.o
$(LOCKING_OBJ
) $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
303 $(UBIQX_OBJ
) $(LIB_OBJ
)
305 RPCTORTURE_OBJ
= utils
/rpctorture.o \
306 rpcclient
/display.o \
307 rpcclient
/cmd_lsarpc.o \
308 rpcclient
/cmd_wkssvc.o \
309 rpcclient
/cmd_samr.o \
310 rpcclient
/cmd_srvsvc.o \
311 rpcclient
/cmd_netlogon.o \
312 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
313 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
)
315 DEBUG2HTML_OBJ
= utils
/debug2html.o ubiqx
/debugparse.o
317 SMBFILTER_OBJ
= utils
/smbfilter.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
318 $(UBIQX_OBJ
) $(LIB_OBJ
)
320 PROTO_OBJ
= $(SMBD_OBJ
) $(NMBD_OBJ
) $(SWAT_OBJ
) $(CLIENT_OBJ
) \
321 $(SMBWRAPPER_OBJ
) $(SMBTORTURE_OBJ
) $(RPCCLIENT_OBJ1
)
323 NSS_OBJ_0
= nsswitch
/wins.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIBSMB_OBJ
) $(LIB_OBJ
) $(NSSWINS_OBJ
)
324 NSS_OBJ
= $(NSS_OBJ_0
:.o
=.po
)
326 PICOBJS
= $(SMBWRAPPER_OBJ
:.o
=.po
)
327 PICOBJS32
= $(SMBWRAPPER_OBJ
:.o
=.po32
)
330 nsswitch
/winbindd.o \
331 nsswitch
/winbindd_user.o \
332 nsswitch
/winbindd_group.o \
333 nsswitch
/winbindd_idmap.o \
334 nsswitch
/winbindd_util.o \
335 nsswitch
/winbindd_cache.o \
336 nsswitch
/winbindd_pam.o
340 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(STUB_UID_OBJ
) \
341 $(LIBNMB_OBJ
) $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
342 $(NSSWINS_OBJ
) $(SIDDB_OBJ
) $(LIBSMB_OBJ
)
344 WBINFO_OBJ
= nsswitch
/wbinfo.o nsswitch
/wb_common.o
346 WINBIND_NSS_OBJ
= nsswitch
/winbind.o nsswitch
/wb_common.o
348 WINBIND_NSS_PICOBJS
= $(WINBIND_NSS_OBJ
:.o
=.po
)
351 NSS_OBJ_0
= nsswitch
/wins.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIBSMB_OBJ
) $(LIB_OBJ
) $(NSSWINS_OBJ
)
352 NSS_OBJ
= $(NSS_OBJ_0
:.o
=.po
)
354 ######################################################################
356 ######################################################################
358 all : CHECK
$(SPROGS
) $(PROGS
)
360 smbwrapper
: CHECK bin
/smbsh bin
/smbwrapper.@SHLIBEXT@ @WRAP32@
362 smbtorture
: CHECK bin
/smbtorture
364 masktest
: CHECK bin
/masktest
366 msgtest
: CHECK bin
/msgtest
368 locktest
: CHECK bin
/locktest
370 locktest2
: CHECK bin
/locktest2
372 rpctorture
: CHECK bin
/rpctorture
374 debug2html
: CHECK bin
/debug2html
376 smbfilter
: CHECK bin
/smbfilter
379 .SUFFIXES
: .c .o .po .po32 .lo
382 @echo
"Using FLAGS = $(FLAGS)"
383 @echo
"Using FLAGS32 = $(FLAGS32)"
384 @echo
"Using LIBS = $(LIBS)"
386 MAKEDIR
= || exec false
; \
387 if
test -d
"$$dir"; then
:; else \
388 echo mkdir
"$$dir"; \
389 mkdir
-p
"$$dir" >/dev
/null
2>&1 || \
392 exec false
; fi || exec false
395 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
396 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
398 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) -c
$< \
400 @BROKEN_CC@
-mv
`echo $@ | sed 's%^.*/%%g'` $@
402 # This is for libtool
404 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
405 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
406 @echo Compiling
$< with libtool
407 @
$(LIBTOOL
) --mode
=compile \
408 $(CC
) -I.
-I
$(srcdir) $(FLAGS
) -c
$< \
412 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
413 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
414 @echo Compiling
$*.c with @PICFLAG@
415 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) @PICFLAG@
-c
$< \
417 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@.o
422 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
423 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
424 @echo Compiling
$*.c with @PICFLAG@ and
-32
425 @
$(CC
) -32 -I.
-I
$(srcdir) $(FLAGS32
) @PICFLAG@
-c
$< \
427 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po32$$%.o%'` $@.o
431 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
432 dir=bin
$(MAKEDIR
); fi
433 @
: >> $@ ||
: > $@
# what a fancy emoticon!
435 bin
/smbd
: $(SMBD_OBJ
) bin
/.dummy
437 @
$(CC
) $(FLAGS
) -o
$@
$(SMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
439 bin
/nmbd
: $(NMBD_OBJ
) bin
/.dummy
441 @
$(CC
) $(FLAGS
) -o
$@
$(NMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
443 bin
/swat
: $(SWAT_OBJ
) bin
/.dummy
445 @
$(CC
) $(FLAGS
) -o
$@
$(SWAT_OBJ
) $(LDFLAGS
) $(LIBS
)
447 bin
/smbrun
: $(SMBRUN_OBJ
) bin
/.dummy
449 @
$(CC
) $(FLAGS
) -o
$@
$(SMBRUN_OBJ
) $(LDFLAGS
) $(LIBS
)
451 bin
/rpcclient
: $(RPCCLIENT_OBJ
) bin
/.dummy
453 @
$(CC
) $(FLAGS
) -o
$@
$(RPCCLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
455 bin
/smbclient
: $(CLIENT_OBJ
) bin
/.dummy
457 @
$(CC
) $(FLAGS
) -o
$@
$(CLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
459 bin
/smbspool
: $(CUPS_OBJ
) bin
/.dummy
461 @
$(CC
) $(FLAGS
) -o
$@
$(CUPS_OBJ
) $(LDFLAGS
) $(LIBS
)
463 bin
/smbmount
: $(MOUNT_OBJ
) bin
/.dummy
465 @
$(CC
) $(FLAGS
) -o
$@
$(MOUNT_OBJ
) $(LIBS
)
467 bin
/smbmnt
: $(MNT_OBJ
) bin
/.dummy
469 @
$(CC
) $(FLAGS
) -o
$@
$(MNT_OBJ
) $(LIBS
)
471 bin
/smbumount
: $(UMOUNT_OBJ
) bin
/.dummy
473 @
$(CC
) $(FLAGS
) -o
$@
$(UMOUNT_OBJ
) $(LIBS
)
475 bin
/testparm
: $(TESTPARM_OBJ
) bin
/.dummy
477 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPARM_OBJ
) $(LDFLAGS
) $(LIBS
)
479 bin
/testprns
: $(TESTPRNS_OBJ
) bin
/.dummy
481 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPRNS_OBJ
) $(LDFLAGS
) $(LIBS
)
483 bin
/smbstatus
: $(STATUS_OBJ
) bin
/.dummy
485 @
$(CC
) $(FLAGS
) -o
$@
$(STATUS_OBJ
) $(LDFLAGS
) $(LIBS
)
487 bin
/smbcontrol
: $(SMBCONTROL_OBJ
) bin
/.dummy
489 @
$(CC
) $(FLAGS
) -o
$@
$(SMBCONTROL_OBJ
) $(LDFLAGS
) $(LIBS
)
491 bin
/smbpasswd
: $(SMBPASSWD_OBJ
) bin
/.dummy
493 @
$(CC
) $(FLAGS
) -o
$@
$(SMBPASSWD_OBJ
) $(LDFLAGS
) $(LIBS
)
495 bin
/tdbedit
: $(TDBEDIT_OBJ
) bin
/.dummy
497 @
$(CC
) $(FLAGS
) -o
$@
$(TDBEDIT_OBJ
) $(LDFLAGS
) $(LIBS
)
499 bin
/make_smbcodepage
: $(MAKE_SMBCODEPAGE_OBJ
) bin
/.dummy
501 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_SMBCODEPAGE_OBJ
) $(LDFLAGS
) $(LIBS
)
503 bin
/make_unicodemap
: $(MAKE_UNICODEMAP_OBJ
) bin
/.dummy
505 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_UNICODEMAP_OBJ
) $(LDFLAGS
) $(LIBS
)
507 bin
/nmblookup
: $(NMBLOOKUP_OBJ
) bin
/.dummy
509 @
$(CC
) $(FLAGS
) -o
$@
$(NMBLOOKUP_OBJ
) $(LDFLAGS
) $(LIBS
)
511 bin
/make_printerdef
: $(MAKE_PRINTERDEF_OBJ
) bin
/.dummy
513 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_PRINTERDEF_OBJ
) $(LDFLAGS
) $(LIBS
)
515 bin
/smbtorture
: $(SMBTORTURE_OBJ
) bin
/.dummy
517 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
519 bin
/masktest
: $(MASKTEST_OBJ
) bin
/.dummy
521 @
$(CC
) $(FLAGS
) -o
$@
$(MASKTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
523 bin
/msgtest
: $(MSGTEST_OBJ
) bin
/.dummy
525 @
$(CC
) $(FLAGS
) -o
$@
$(MSGTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
527 bin
/locktest
: $(LOCKTEST_OBJ
) bin
/.dummy
529 @
$(CC
) $(FLAGS
) -o
$@
$(LOCKTEST_OBJ
) $(LDFLAGS
) $(LIBS
)
531 bin
/locktest2
: $(LOCKTEST2_OBJ
) bin
/.dummy
533 @
$(CC
) $(FLAGS
) -o
$@
$(LOCKTEST2_OBJ
) $(LDFLAGS
) $(LIBS
)
535 bin
/rpctorture
: $(RPCTORTURE_OBJ
) bin
/.dummy
537 @
$(CC
) $(FLAGS
) -o
$@
$(RPCTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
539 bin
/debug2html
: $(DEBUG2HTML_OBJ
) bin
/.dummy
541 @
$(CC
) $(FLAGS
) -o
$@
$(DEBUG2HTML_OBJ
) $(LDFLAGS
) $(LIBS
)
543 bin
/smbfilter
: $(SMBFILTER_OBJ
) bin
/.dummy
545 @
$(CC
) $(FLAGS
) -o
$@
$(SMBFILTER_OBJ
) $(LDFLAGS
) $(LIBS
)
548 bin
/smbw_sample
: $(SMBW_OBJ
) utils
/smbw_sample.o bin
/.dummy
550 @
$(CC
) $(FLAGS
) -o
$@
$(SMBW_OBJ
) utils
/smbw_sample.o
$(LDFLAGS
) $(LIBS
)
552 bin
/smbwrapper.@SHLIBEXT@
: $(PICOBJS
)
553 @echo Linking shared library
$@
554 @
$(LD
) @LDSHFLAGS@
-o
$@
$(PICOBJS
) $(LIBS
)
556 bin
/smbwrapper
.32.@SHLIBEXT@
: $(PICOBJS32
)
557 @echo Linking shared library
$@
558 @
$(LD
) -32 @LDSHFLAGS@
-o
$@
$(PICOBJS32
) $(LIBS
)
560 bin
/smbsh
: $(SMBSH_OBJ
) bin
/.dummy
562 @
$(CC
) $(FLAGS
) -o
$@
$(SMBSH_OBJ
) $(LDFLAGS
) $(LIBS
)
564 nsswitch
/libnss_wins.so
: $(NSS_OBJ
)
566 @
$(LD
) @LDSHFLAGS@
-o
$@
$(NSS_OBJ
) -lc
568 bin
/winbindd
: $(WINBINDD_OBJ
) bin
/.dummy
570 @
$(LINK
) -o
$@
$(WINBINDD_OBJ
) $(LIBS
)
572 nsswitch
/libnss_winbind.so
: $(WINBIND_NSS_PICOBJS
)
574 @
$(LINK
) -shared
-o
$@
$(WINBIND_NSS_PICOBJS
)
576 nsswitch
/pam_winbind.so
: $(PAM_WINBIND_OBJ
) bin
/.dummy
578 @
$(LINK
) -shared
-o
$@
$(PAM_WINBIND_OBJ
)
580 bin
/wbinfo
: $(WBINFO_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) $(NOPROTO_OBJ
) $(UBIQX_OBJ
) bin
/.dummy
582 @
$(LINK
) -o
$@
$(WBINFO_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) $(NOPROTO_OBJ
) \
585 nsswitch
: nsswitch
/libnss_wins.so nsswitch
/pam_winbind.so \
586 nsswitch
/libnss_winbind.so bin
/wbinfo
588 install: installbin installman installscripts installcp installswat
591 $(SHELL
) $(srcdir)/install-sh
-d
-m
$(INSTALLPERMS
) \
592 $(BASEDIR
) $(SBINDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(CODEPAGEDIR
)
594 installservers
: all installdirs
595 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
597 installbin
: all installdirs
598 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
599 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
601 installscripts
: installdirs
602 @
$(SHELL
) $(srcdir)/script
/installscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
604 installcp
: installdirs
605 @
$(SHELL
) $(srcdir)/script
/installcp.sh
$(srcdir) $(LIBDIR
) $(CODEPAGEDIR
) $(BINDIR
) $(CODEPAGELIST
)
607 installswat
: installdirs
608 @
$(SHELL
) $(srcdir)/script
/installswat.sh
$(SWATDIR
) $(srcdir)
610 # revert to the previously installed version
612 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(SBINDIR
) $(SPROGS
)
613 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(BINDIR
) $(PROGS
) $(SCRIPTS
)
616 @
$(SHELL
) $(srcdir)/script
/installman.sh
$(MANDIR
) $(srcdir) "@ROFF@"
618 uninstall: uninstallman uninstallbin uninstallscripts uninstallcp
621 @
$(SHELL
) $(srcdir)/script
/uninstallman.sh
$(MANDIR
) $(srcdir)
624 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
625 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
628 @
$(SHELL
) $(srcdir)/script
/uninstallscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
631 @
$(SHELL
) $(srcdir)/script
/uninstallcp.sh
$(CODEPAGEDIR
) $(CODEPAGELIST
)
634 -rm -f core
*/*~
*~
*/*.o
*/*.po
*/*.po32
*/*.@SHLIBEXT@
636 proto
: rpc_client_proto
637 @echo rebuilding
include/proto.h
638 @cd
$(srcdir) && $(AWK
) -f script
/mkproto.awk
`echo $(PROTO_OBJ) | tr ' ' '\n' | sed -e 's/\.o/\.c/g' | sort -u | egrep -v 'ubiqx/|wrapped'` > include/proto.h
641 @cd
$(srcdir) && $(SHELL
) script
/mkproto.sh
$(AWK
) \
642 -h _RPC_CLIENT_PROTO_H_
include/rpc_client_proto.h \
646 etags
`find . -name "*.[ch]" | grep -v /CVS/`
649 ctags
`find . -name "*.[ch]" | grep -v /CVS/`
652 -rm -f config.log
$(PROGS
) $(SPROGS
) bin
/.dummy
656 -rm -f
include/config.h Makefile
657 -rm -f config.status config.cache so_locations
661 # This target is for documenation updators. It regenerates
662 # the man pages and HTML docs from the YODL source files.
663 # In order for this target to work YODL must be installed
664 # and working on your system. JRA.
666 @
$(SHELL
) $(srcdir)/script
/makeyodldocs.sh
$(srcdir)
668 # this target is really just for my use. It only works on a limited
669 # range of machines and is used to produce a list of potentially
670 # dead (ie. unused) functions in the code. (tridge)
672 nm
*/*.o |grep
'U ' | awk
'{print $$2}' |
sort -u
> nmused.txt
673 nm
*/*.o |grep
'T ' | awk
'{print $$3}' |
sort -u
> nmfns.txt
674 comm
-13 nmused.txt nmfns.txt
677 # when configure.in is updated, reconfigure
678 $(srcdir)/configure
: $(srcdir)/configure.in
679 @echo
"WARNING: you need to rerun autoconf"
681 config.status
: $(srcdir)/configure
682 @echo
"WARNING: you need to run configure"
684 Makefile
: $(srcdir)/Makefile.in config.status
685 @echo
"WARNING: you need to run ./config.status"