1 ###########################################################################
2 # Makefile.in for Samba - rewritten for autoconf support
3 # Copyright Andrew Tridgell 1992-1998
4 ###########################################################################
7 exec_prefix=@
exec_prefix@
26 # we don't use sbindir because we want full compatibility with
27 # the previous releases of Samba
30 VARDIR
= @localstatedir@
33 # The permissions to give the executables
36 # set these to where to find various files
37 # These can be overridden by command line switches (see smbd(8))
38 # or in smb.conf (see smb.conf(5))
39 SMBLOGFILE
= $(VARDIR
)/log.smb
40 NMBLOGFILE
= $(VARDIR
)/log.nmb
41 CONFIGFILE
= $(LIBDIR
)/smb.conf
42 LMHOSTSFILE
= $(LIBDIR
)/lmhosts
43 DRIVERFILE
= $(LIBDIR
)/printers.def
44 PASSWD_PROGRAM
= /bin
/passwd
45 # This is where smbpasswd et al go
46 PRIVATEDIR
= @privatedir@
48 SMB_PASSWD_FILE
= $(PRIVATEDIR
)/smbpasswd
50 # This is where SWAT images and help files go
53 # the directory where lock files go
56 # The directory where code page definition files go
57 CODEPAGEDIR
= $(LIBDIR
)/codepages
59 # The current codepage definition list.
60 CODEPAGELIST
= 437 737 850 852 861 932 866 949 950 936
62 # where you are going to have the smbrun binary. This defaults to the
63 # install directory. This binary is needed for correct printing
64 # and magic script execution. This should be an absolute path!
65 # Also not that this should include the name "smbrun" on the end (the
66 # name of the executable)
67 SMBRUN
= $(BINDIR
)/smbrun
70 PASSWD_FLAGS
= -DPASSWD_PROGRAM
=\"$(PASSWD_PROGRAM
)\" -DSMB_PASSWD_FILE
=\"$(SMB_PASSWD_FILE
)\"
71 FLAGS1
= $(CFLAGS
) -Iinclude
-I
$(srcdir)/include -I
$(srcdir)/ubiqx
-I
$(srcdir)/smbwrapper
$(CPPFLAGS
) -DSMBLOGFILE
=\"$(SMBLOGFILE
)\" -DNMBLOGFILE
=\"$(NMBLOGFILE
)\"
72 FLAGS2
= -DCONFIGFILE
=\"$(CONFIGFILE
)\" -DLMHOSTSFILE
=\"$(LMHOSTSFILE
)\"
73 FLAGS3
= -DSWATDIR
=\"$(SWATDIR
)\" -DSBINDIR
=\"$(SBINDIR
)\" -DLOCKDIR
=\"$(LOCKDIR
)\" -DSMBRUN
=\"$(SMBRUN
)\" -DCODEPAGEDIR
=\"$(CODEPAGEDIR
)\"
74 FLAGS4
= -DDRIVERFILE
=\"$(DRIVERFILE
)\" -DBINDIR
=\"$(BINDIR
)\"
75 FLAGS5
= $(FLAGS1
) $(FLAGS2
) $(FLAGS3
) $(FLAGS4
) -DHAVE_INCLUDES_H
76 FLAGS
= $(ISA
) $(FLAGS5
) $(PASSWD_FLAGS
)
77 FLAGS32
= $(ISA32
) $(FLAGS5
) $(PASSWD_FLAGS
)
79 SPROGS
= bin
/smbd bin
/nmbd bin
/swat
80 PROGS1
= bin
/smbclient bin
/testparm bin
/testprns bin
/smbstatus @RUNPROG@
81 PROGS2
= bin
/rpcclient bin
/smbpasswd bin
/make_smbcodepage @WRAP@ @WRAP32@
83 PROGS
= $(PROGS1
) $(PROGS2
) $(MPROGS
) bin
/nmblookup bin
/make_printerdef
85 SCRIPTS
= $(srcdir)/script
/smbtar
$(srcdir)/script
/addtosmbpass
$(srcdir)/script
/convert_smbpasswd
89 ######################################################################
91 ######################################################################
93 LIB_OBJ
= lib
/charcnv.o lib
/charset.o lib
/debug.o lib
/fault.o \
94 lib
/getsmbpass.o lib
/interface.o lib
/kanji.o lib
/md4.o \
95 lib
/netmask.o lib
/pidfile.o lib
/replace.o \
96 lib
/signal.o lib
/slprintf.o lib
/system.o lib
/doscalls.o lib
/time.o \
97 lib
/ufc.o lib
/genrand.o lib
/username.o lib
/access.o lib
/smbrun.o \
98 lib
/bitmap.o lib
/crc32.o lib
/snprintf.o \
99 lib
/util_str.o lib
/util_sid.o \
100 lib
/util_unistr.o lib
/util_file.o \
101 lib
/util.o lib
/util_sock.o lib
/util_sec.o smbd
/ssl.o
103 UBIQX_OBJ
= ubiqx
/ubi_BinTree.o ubiqx
/ubi_Cache.o ubiqx
/ubi_SplayTree.o \
104 ubiqx
/ubi_dLinkList.o ubiqx
/ubi_sLinkList.o ubiqx
/debugparse.o
106 PARAM_OBJ
= param
/loadparm.o param
/params.o
108 LIBSMB_OBJ
= libsmb
/clientgen.o libsmb
/namequery.o libsmb
/nmblib.o \
109 libsmb
/nterr.o libsmb
/smbdes.o libsmb
/smbencrypt.o \
110 libsmb
/smberr.o libsmb
/credentials.o libsmb
/pwd_cache.o \
113 RPC_SERVER_OBJ
= rpc_server
/srv_lsa.o \
114 rpc_server
/srv_lsa_hnd.o rpc_server
/srv_netlog.o \
115 rpc_server
/srv_pipe_hnd.o rpc_server
/srv_reg.o \
116 rpc_server
/srv_samr.o rpc_server
/srv_srvsvc.o \
117 rpc_server
/srv_util.o rpc_server
/srv_wkssvc.o \
118 rpc_server
/srv_pipe.o
120 RPC_PARSE_OBJ
= rpc_parse
/parse_lsa.o rpc_parse
/parse_misc.o \
121 rpc_parse
/parse_net.o rpc_parse
/parse_prs.o \
122 rpc_parse
/parse_reg.o rpc_parse
/parse_rpc.o \
123 rpc_parse
/parse_samr.o rpc_parse
/parse_srv.o \
124 rpc_parse
/parse_wks.o rpc_parse
/parse_sec.o
127 rpc_client
/cli_login.o \
128 rpc_client
/cli_netlogon.o \
129 rpc_client
/cli_pipe.o \
130 rpc_client
/cli_lsarpc.o \
131 rpc_client
/cli_wkssvc.o \
132 rpc_client
/cli_srvsvc.o \
133 rpc_client
/cli_reg.o \
134 rpc_client
/cli_samr.o
137 LOCKING_OBJ
= locking
/locking.o locking
/locking_shm.o locking
/locking_slow.o \
138 locking
/shmem.o locking
/shmem_sysv.o
140 PASSDB_OBJ
= passdb
/passdb.o passdb
/smbpassfile.o passdb
/smbpass.o \
141 passdb
/pass_check.o passdb
/ldap.o passdb
/nispass.o passdb
/smbpasschange.o
143 SMBD_OBJ1
= smbd
/server.o smbd
/files.o smbd
/chgpasswd.o smbd
/connection.o \
144 smbd
/dfree.o smbd
/dir.o smbd
/password.o smbd
/conn.o smbd
/fileio.o \
145 smbd
/ipc.o smbd
/mangle.o smbd
/negprot.o \
146 smbd
/message.o smbd
/nttrans.o smbd
/pipes.o smbd
/predict.o \
147 smbd
/$(QUOTAOBJS
) smbd
/reply.o smbd
/trans2.o smbd
/uid.o \
148 smbd
/dosmode.o smbd
/filename.o smbd
/open.o smbd
/close.o smbd
/blocking.o \
149 smbd
/process.o smbd
/oplock.o smbd
/service.o smbd
/error.o
151 PRINTING_OBJ
= printing
/pcap.o printing
/print_svid.o printing
/printing.o
153 SMBD_OBJ
= $(SMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
154 $(RPC_SERVER_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
155 $(LOCKING_OBJ
) $(PASSDB_OBJ
) $(PRINTING_OBJ
) $(LIB_OBJ
)
158 NMBD_OBJ1
= nmbd
/asyncdns.o nmbd
/nmbd.o nmbd
/nmbd_become_dmb.o \
159 nmbd
/nmbd_become_lmb.o nmbd
/nmbd_browserdb.o \
160 nmbd
/nmbd_browsesync.o nmbd
/nmbd_elections.o \
161 nmbd
/nmbd_incomingdgrams.o nmbd
/nmbd_incomingrequests.o \
162 nmbd
/nmbd_lmhosts.o nmbd
/nmbd_logonnames.o nmbd
/nmbd_mynames.o \
163 nmbd
/nmbd_namelistdb.o nmbd
/nmbd_namequery.o \
164 nmbd
/nmbd_nameregister.o nmbd
/nmbd_namerelease.o \
165 nmbd
/nmbd_nodestatus.o nmbd
/nmbd_packets.o \
166 nmbd
/nmbd_processlogon.o nmbd
/nmbd_responserecordsdb.o \
167 nmbd
/nmbd_sendannounce.o nmbd
/nmbd_serverlistdb.o \
168 nmbd
/nmbd_subnetdb.o nmbd
/nmbd_winsproxy.o nmbd
/nmbd_winsserver.o \
169 nmbd
/nmbd_workgroupdb.o nmbd
/nmbd_synclists.o
171 NMBD_OBJ
= $(NMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
174 SWAT_OBJ
= web
/cgi.o web
/diagnose.o web
/startstop.o web
/statuspage.o \
175 web
/swat.o
$(LIBSMB_OBJ
) $(LOCKING_OBJ
) \
176 $(PARAM_OBJ
) $(PASSDB_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
177 $(UBIQX_OBJ
) $(LIB_OBJ
) $(PRINTING_OBJ
)
179 SMBRUN_OBJ
= utils
/smbrun.o lib
/util_sec.o
181 SMBSH_OBJ
= smbwrapper
/smbsh.o smbwrapper
/shared.o \
182 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
184 MAKE_SMBCODEPAGE_OBJ
= utils
/make_smbcodepage.o
$(PARAM_OBJ
) \
185 $(UBIQX_OBJ
) $(LIB_OBJ
)
187 MAKE_PRINTERDEF_OBJ
= utils
/make_printerdef.o
$(PARAM_OBJ
) \
188 $(UBIQX_OBJ
) $(LIB_OBJ
)
190 STATUS_OBJ
= utils
/status.o
$(LOCKING_OBJ
) $(PARAM_OBJ
) \
191 $(UBIQX_OBJ
) $(LIB_OBJ
)
193 TESTPARM_OBJ
= utils
/testparm.o \
194 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
196 TESTPRNS_OBJ
= utils
/testprns.o
$(PARAM_OBJ
) $(PRINTING_OBJ
) $(UBIQX_OBJ
) \
199 SMBPASSWD_OBJ
= utils
/smbpasswd.o
$(PARAM_OBJ
) $(LIBSMB_OBJ
) $(PASSDB_OBJ
) \
200 $(UBIQX_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(LIB_OBJ
)
202 RPCCLIENT_OBJ
= rpcclient
/rpcclient.o \
203 rpcclient
/display.o \
204 rpcclient
/cmd_lsarpc.o \
205 rpcclient
/cmd_wkssvc.o \
206 rpcclient
/cmd_samr.o \
207 rpcclient
/cmd_reg.o \
208 rpcclient
/cmd_srvsvc.o \
209 rpcclient
/cmd_netlogon.o \
210 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
211 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
)
213 SMBWRAPPER_OBJ
= smbwrapper
/smbw.o smbwrapper
/wrapped.o \
214 smbwrapper
/smbw_dir.o smbwrapper
/smbw_stat.o \
215 smbwrapper
/realcalls.o smbwrapper
/shared.o \
216 $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
217 $(UBIQX_OBJ
) $(LIB_OBJ
)
219 CLIENT_OBJ
= client
/client.o client
/clitar.o \
220 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
222 MOUNT_OBJ
= client
/smbmount.o client
/clientutil.o \
223 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
225 MNT_OBJ
= client
/smbmnt.o \
226 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
228 UMOUNT_OBJ
= client
/smbumount.o \
229 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
231 NMBLOOKUP_OBJ
= utils
/nmblookup.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) \
232 $(LIBSMB_OBJ
) $(LIB_OBJ
)
234 SMBTORTURE_OBJ
= utils
/torture.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
235 $(UBIQX_OBJ
) $(LIB_OBJ
)
237 RPCTORTURE_OBJ
= utils
/rpctorture.o \
238 rpcclient
/display.o \
239 rpcclient
/cmd_lsarpc.o \
240 rpcclient
/cmd_wkssvc.o \
241 rpcclient
/cmd_samr.o \
242 rpcclient
/cmd_srvsvc.o \
243 rpcclient
/cmd_netlogon.o \
244 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
245 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(PASSDB_OBJ
)
247 DEBUG2HTML_OBJ
= utils
/debug2html.o ubiqx
/debugparse.o
249 SMBFILTER_OBJ
= utils
/smbfilter.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
250 $(UBIQX_OBJ
) $(LIB_OBJ
)
252 PROTO_OBJ
= $(SMBD_OBJ
) $(NMBD_OBJ
) $(SWAT_OBJ
) $(CLIENT_OBJ
) \
253 $(RPCCLIENT_OBJ
) $(SMBWRAPPER_OBJ
)
255 PICOBJS
= $(SMBWRAPPER_OBJ
:.o
=.po
)
256 PICOBJS32
= $(SMBWRAPPER_OBJ
:.o
=.po32
)
258 ######################################################################
260 ######################################################################
262 all : CHECK
$(SPROGS
) $(PROGS
)
264 smbwrapper
: CHECK bin
/smbsh bin
/smbwrapper.so @WRAP32@
266 smbtorture
: CHECK bin
/smbtorture
268 rpctorture
: CHECK bin
/rpctorture
270 debug2html
: CHECK bin
/debug2html
272 smbfilter
: CHECK bin
/smbfilter
275 .SUFFIXES
: .c .o .po .po32
278 @echo
"Using FLAGS = $(FLAGS)"
279 @echo
"Using FLAGS32 = $(FLAGS32)"
280 @echo
"Using LIBS = $(LIBS)"
282 MAKEDIR
= || exec false
; \
283 if
test -d
"$$dir"; then
:; else \
284 echo mkdir
"$$dir"; \
285 mkdir
-p
"$$dir" >/dev
/null
2>&1 || \
288 exec false
; fi || exec false
290 # the lines below containing `@MAINT@' are for atomatic dependency tracking
291 # they will only work with GNU make, gcc and --enable-maintainer-mode
292 # without --enable-maintainer-mode, they do nothing
293 .c.o
: @MAINT@ .deps
/.dummy
294 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
295 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
296 @MAINT@ @if
(: >> .deps
/$@ ||
: > .deps
/$@
) >/dev
/null
2>&1; then
:; \
297 @MAINT@
else dir=.deps
/`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` \
298 @MAINT@
$(MAKEDIR
); fi
; rm -f .deps
/$@ .deps
/$@d
300 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) -c
$< \
301 -o
$@ @MAINT@
-Wp
,-MD
,.deps
/$@
302 @BROKEN_CC@
-mv
`echo $@ | sed 's%^.*/%%g'` $@
303 @MAINT@ @sed
's|^'`echo $@ | sed 's,.*/,,'`':|$@:|' \
304 @MAINT@
<.deps
/$@
>.deps
/$@d
&& \
305 @MAINT@
rm -f .deps
/$@
&& : >.deps
/.stamp
307 .c.po
: @MAINT@ .deps
/.dummy
308 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
309 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
310 @MAINT@ @if
(: >> .deps
/$@ ||
: > .deps
/$@
) >/dev
/null
2>&1; then
:; \
311 @MAINT@
else dir=.deps
/`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` \
312 @MAINT@
$(MAKEDIR
); fi
; rm -f .deps
/$@ .deps
/$@d
313 @echo Compiling
$*.c with @PICFLAG@
314 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) @PICFLAG@
-c
$< \
315 -o
$*.po.o @MAINT@
-Wp
,-MD
,.deps
/$@
316 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@.o
317 @MAINT@ @sed
's|^'`echo $*\.po\.o | sed 's,.*/,,'`':|$@:|' \
318 @MAINT@
<.deps
/$@
>.deps
/$@d
&& \
319 @MAINT@
rm -f .deps
/$@
&& : >.deps
/.stamp
323 .c.po32
: @MAINT@ .deps
/.dummy
324 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
325 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
326 @MAINT@ @if
(: >> .deps
/$@ ||
: > .deps
/$@
) >/dev
/null
2>&1; then
:; \
327 @MAINT@
else dir=.deps
/`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` \
328 @MAINT@
$(MAKEDIR
); fi
; rm -f .deps
/$@ .deps
/$@d
329 @echo Compiling
$*.c with @PICFLAG@ and
-32
330 @
$(CC
) -32 -I.
-I
$(srcdir) $(FLAGS32
) @PICFLAG@
-c
$< \
331 -o
$*.po32.o @MAINT@
-Wp
,-MD
,.deps
/$@
332 @BROKEN_CC@
-mv
`echo $@ | sed -e 's%^.*/%%g' -e 's%\.po32$$%.o%'` $@.o
333 @MAINT@ @sed
's|^'`echo $*.po32.o | sed 's,.*/,,'`':|$@:|' \
334 @MAINT@
<.deps
/$@
>.deps
/$@d
&& \
335 @MAINT@
rm -f .deps
/$@
&& : >.deps
/.stamp
339 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
340 dir=bin
$(MAKEDIR
); fi
341 @
: >> $@ ||
: > $@
# what a fancy emoticon!
343 bin
/smbd
: $(SMBD_OBJ
) bin
/.dummy
345 @
$(CC
) $(FLAGS
) -o
$@
$(SMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
347 bin
/nmbd
: $(NMBD_OBJ
) bin
/.dummy
349 @
$(CC
) $(FLAGS
) -o
$@
$(NMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
351 bin
/swat
: $(SWAT_OBJ
) bin
/.dummy
353 @
$(CC
) $(FLAGS
) -o
$@
$(SWAT_OBJ
) $(LDFLAGS
) $(LIBS
)
355 bin
/smbrun
: $(SMBRUN_OBJ
) bin
/.dummy
357 @
$(CC
) $(FLAGS
) -o
$@
$(SMBRUN_OBJ
) $(LDFLAGS
) $(LIBS
)
359 bin
/rpcclient
: $(RPCCLIENT_OBJ
) bin
/.dummy
361 @
$(CC
) $(FLAGS
) -o
$@
$(RPCCLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
363 bin
/smbclient
: $(CLIENT_OBJ
) bin
/.dummy
365 @
$(CC
) $(FLAGS
) -o
$@
$(CLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
367 bin
/smbmount
: $(MOUNT_OBJ
) bin
/.dummy
369 @
$(CC
) $(FLAGS
) -o
$@
$(MOUNT_OBJ
) $(LIBS
)
371 bin
/smbmnt
: $(MNT_OBJ
) bin
/.dummy
373 @
$(CC
) $(FLAGS
) -o
$@
$(MNT_OBJ
) $(LIBS
)
375 bin
/smbumount
: $(UMOUNT_OBJ
) bin
/.dummy
377 @
$(CC
) $(FLAGS
) -o
$@
$(UMOUNT_OBJ
) $(LIBS
)
379 bin
/testparm
: $(TESTPARM_OBJ
) bin
/.dummy
381 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPARM_OBJ
) $(LDFLAGS
) $(LIBS
)
383 bin
/testprns
: $(TESTPRNS_OBJ
) bin
/.dummy
385 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPRNS_OBJ
) $(LDFLAGS
) $(LIBS
)
387 bin
/smbstatus
: $(STATUS_OBJ
) bin
/.dummy
389 @
$(CC
) $(FLAGS
) -o
$@
$(STATUS_OBJ
) $(LDFLAGS
) $(LIBS
)
391 bin
/smbpasswd
: $(SMBPASSWD_OBJ
) bin
/.dummy
393 @
$(CC
) $(FLAGS
) -o
$@
$(SMBPASSWD_OBJ
) $(LDFLAGS
) $(LIBS
)
395 bin
/make_smbcodepage
: $(MAKE_SMBCODEPAGE_OBJ
) bin
/.dummy
397 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_SMBCODEPAGE_OBJ
) $(LDFLAGS
) $(LIBS
)
399 bin
/nmblookup
: $(NMBLOOKUP_OBJ
) bin
/.dummy
401 @
$(CC
) $(FLAGS
) -o
$@
$(NMBLOOKUP_OBJ
) $(LDFLAGS
) $(LIBS
)
403 bin
/make_printerdef
: $(MAKE_PRINTERDEF_OBJ
) bin
/.dummy
405 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_PRINTERDEF_OBJ
) $(LDFLAGS
) $(LIBS
)
407 bin
/smbtorture
: $(SMBTORTURE_OBJ
) bin
/.dummy
409 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
411 bin
/rpctorture
: $(RPCTORTURE_OBJ
) bin
/.dummy
413 @
$(CC
) $(FLAGS
) -o
$@
$(RPCTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
415 bin
/debug2html
: $(DEBUG2HTML_OBJ
) bin
/.dummy
417 @
$(CC
) $(FLAGS
) -o
$@
$(DEBUG2HTML_OBJ
) $(LDFLAGS
) $(LIBS
)
419 bin
/smbfilter
: $(SMBFILTER_OBJ
) bin
/.dummy
421 @
$(CC
) $(FLAGS
) -o
$@
$(SMBFILTER_OBJ
) $(LDFLAGS
) $(LIBS
)
423 bin
/smbwrapper.so
: $(PICOBJS
)
424 @echo Linking shared library
$@
425 @
$(LD
) @LDSHFLAGS@
-o
$@
$(PICOBJS
) $(LIBS
)
427 bin
/smbwrapper
.32.so
: $(PICOBJS32
)
428 @echo Linking shared library
$@
429 @
$(LD
) -32 @LDSHFLAGS@
-o
$@
$(PICOBJS32
) $(LIBS
)
431 bin
/smbsh
: $(SMBSH_OBJ
) bin
/.dummy
433 @
$(CC
) $(FLAGS
) -o
$@
$(SMBSH_OBJ
) $(LDFLAGS
) $(LIBS
)
435 install: installbin installman installscripts installcp installswat
438 $(SHELL
) $(srcdir)/install-sh
-d
-m
$(INSTALLPERMS
) \
439 $(BASEDIR
) $(SBINDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(CODEPAGEDIR
)
441 installservers
: all installdirs
442 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
444 installbin
: all installdirs
445 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
446 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
448 installscripts
: installdirs
449 @
$(SHELL
) $(srcdir)/script
/installscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
451 installcp
: installdirs
452 @
$(SHELL
) $(srcdir)/script
/installcp.sh
$(srcdir) $(LIBDIR
) $(CODEPAGEDIR
) $(BINDIR
) $(CODEPAGELIST
)
454 installswat
: installdirs
455 @
$(SHELL
) $(srcdir)/script
/installswat.sh
$(SWATDIR
) $(srcdir)
457 # revert to the previously installed version
459 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(SBINDIR
) $(SPROGS
)
460 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(BINDIR
) $(PROGS
) $(SCRIPTS
)
463 @
$(SHELL
) $(srcdir)/script
/installman.sh
$(MANDIR
) $(srcdir) "@ROFF@"
465 uninstall: uninstallman uninstallbin uninstallscripts uninstallcp
468 @
$(SHELL
) $(srcdir)/script
/uninstallman.sh
$(MANDIR
) $(srcdir)
471 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
472 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
475 @
$(SHELL
) $(srcdir)/script
/uninstallscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
478 @
$(SHELL
) $(srcdir)/script
/uninstallcp.sh
$(CODEPAGEDIR
) $(CODEPAGELIST
)
481 -rm -f core
*/*~
*~
*/*.o
*/*.po
*/*.po32
*/*.so
484 @echo rebuilding
include/proto.h
485 @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
488 etags
`find . -name "*.[ch]"`
491 ctags
`find . -name "*.[ch]"`
494 -rm -f config.log
$(PROGS
) $(SPROGS
) bin
/.dummy
498 -rm -f
include/config.h
include/stamp-h Makefile
499 -rm -f config.status config.cache so_locations
503 # This target is for documenation updators. It regenerates
504 # the man pages and HTML docs from the YODL source files.
505 # In order for this target to work YODL must be installed
506 # and working on your system. JRA.
508 @
$(SHELL
) $(srcdir)/script
/makeyodldocs.sh
$(srcdir)
510 # this target is really just for my use. It only works on a limited
511 # range of machines and is used to produce a list of potentially
512 # dead (ie. unused) functions in the code. (tridge)
514 nm
*/*.o |grep
'U ' | awk
'{print $$2}' |
sort -u
> nmused.txt
515 nm
*/*.o |grep
'T ' | awk
'{print $$3}' |
sort -u
> nmfns.txt
516 comm
-13 nmused.txt nmfns.txt
518 # Rules for maintainers (--enable-maintainer-mode)
520 AUTOHEADER
=@AUTOHEADER@
522 # when configure.in is updated, reconfigure
523 $(srcdir)/configure
: @MAINT@
$(srcdir)/configure.in
$(srcdir)/aclocal.m4
524 cd
$(srcdir) && $(AUTOCONF
)
526 config.status
: $(srcdir)/configure
527 $(SHELL
) .
/config.status
--recheck
529 Makefile
: $(srcdir)/Makefile.in config.status \
530 include/stamp-h
# just to ensure that config.h is up-to-date
531 CONFIG_FILES
=$@ CONFIG_HEADERS
= $(SHELL
) .
/config.status
533 # note that nothing depends on config.h, so will probably be rebuilt
534 # only when explicitly requested, unless dependency tracking is enabled
535 include/config.h
: include/stamp-h
538 include/stamp-h
: $(srcdir)/include/config.h.in config.status
539 CONFIG_FILES
= CONFIG_HEADERS
=include/config.h
$(SHELL
) .
/config.status
540 @echo
> include/stamp-h
542 $(srcdir)/include/config.h.in
: $(srcdir)/include/stamp-h.in
545 $(srcdir)/include/stamp-h.in
: @MAINT@
$(srcdir)/acconfig.h
$(srcdir)/configure.in
546 cd
$(srcdir) && $(AUTOHEADER
)
549 # automatic dependency tracking rules
551 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
552 dir=.deps
$(MAKEDIR
); fi
553 @
: >> $@ ||
: > $@
# what a fancy emoticon!
555 .deps
/.stamp
: .deps
/.dummy
558 .deps
/depend
: .deps
/.stamp
559 @echo Updating dependencies
560 @
: | cat
`find .deps -type f -name \*d` >$@
2>/dev
/null || true
562 @MAINT@
-include .deps
/depend