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
= $(BASEDIR
)/var
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 LOGFILEBASE
= $(VARDIR
)
40 SMBLOGFILE
= $(LOGFILEBASE
)/log.smb
41 NMBLOGFILE
= $(LOGFILEBASE
)/log.nmb
42 CONFIGFILE
= $(LIBDIR
)/smb.conf
43 LMHOSTSFILE
= $(LIBDIR
)/lmhosts
44 DRIVERFILE
= $(LIBDIR
)/printers.def
45 FORMSFILE
= $(LIBDIR
)/ntforms.def
46 NTDRIVERSDIR
= $(LIBDIR
)
47 PASSWD_PROGRAM
= /bin
/passwd
48 SMB_PASSWD_FILE
= $(BASEDIR
)/private
/smbpasswd
49 SMB_PASSGRP_FILE
= $(BASEDIR
)/private
/smbpassgrp
50 SMB_GROUP_FILE
= $(BASEDIR
)/private
/smbgroup
51 SMB_ALIAS_FILE
= $(BASEDIR
)/private
/smbalias
52 SMB_PASSWD_PROGRAM
= $(BINDIR
)/smbpasswd
54 # This is where SWAT images and help files go
55 SWATDIR
= $(BASEDIR
)/swat
57 # the directory where lock files go
58 LOCKDIR
= $(VARDIR
)/locks
60 # The directory where code page definition files go
61 CODEPAGEDIR
= $(LIBDIR
)/codepages
63 # The current codepage definition list.
64 CODEPAGELIST
= 437 737 850 852 861 932 866 949 950 936
66 # where you are going to have the smbrun binary. This defaults to the
67 # install directory. This binary is needed for correct printing
68 # and magic script execution. This should be an absolute path!
69 # Also not that this should include the name "smbrun" on the end (the
70 # name of the executable)
71 SMBRUN
= $(BINDIR
)/smbrun
75 -DPASSWD_PROGRAM
=\"$(PASSWD_PROGRAM
)\" \
76 -DSMB_PASSWD_PROGRAM
=\"$(SMB_PASSWD_PROGRAM
)\" \
77 -DSMB_PASSWD_FILE
=\"$(SMB_PASSWD_FILE
)\" \
78 -DSMB_PASSGRP_FILE
=\"$(SMB_PASSGRP_FILE
)\" \
79 -DSMB_GROUP_FILE
=\"$(SMB_GROUP_FILE
)\" \
80 -DSMB_ALIAS_FILE
=\"$(SMB_ALIAS_FILE
)\"
82 -Iinclude
-I
$(srcdir)/include \
84 -I
$(srcdir)/smbwrapper \
86 -DLOGFILEBASE
=\"$(LOGFILEBASE
)\" \
87 -DSMBLOGFILE
=\"$(SMBLOGFILE
)\" \
88 -DNMBLOGFILE
=\"$(NMBLOGFILE
)\"
89 FLAGS2
= -DCONFIGFILE
=\"$(CONFIGFILE
)\" -DLMHOSTSFILE
=\"$(LMHOSTSFILE
)\"
90 FLAGS3
= -DSWATDIR
=\"$(SWATDIR
)\" -DSBINDIR
=\"$(SBINDIR
)\" -DLOCKDIR
=\"$(LOCKDIR
)\" -DSMBRUN
=\"$(SMBRUN
)\" -DCODEPAGEDIR
=\"$(CODEPAGEDIR
)\"
91 FLAGS4
= -DDRIVERFILE
=\"$(DRIVERFILE
)\" -DBINDIR
=\"$(BINDIR
)\" -DFORMSFILE
=\"$(FORMSFILE
)\" -DNTDRIVERSDIR
=\"$(NTDRIVERSDIR
)\"
92 FLAGS5
= $(FLAGS1
) $(FLAGS2
) $(FLAGS3
) $(FLAGS4
) -DHAVE_INCLUDES_H
93 FLAGS
= $(FLAGS5
) $(PASSWD_FLAGS
)
95 SPROGS
= bin
/smbd bin
/lsarpcd bin
/svcctld bin
/spoolssd bin
/samrd \
96 bin
/srvsvcd bin
/wkssvcd bin
/browserd bin
/netlogond bin
/winregd \
98 PROGS1
= bin
/smbclient bin
/testparm bin
/testprns bin
/smbrun bin
/smbstatus
99 PROGS2
= bin
/rpcclient bin
/smbpasswd bin
/make_smbcodepage bin
/debug2html
100 PROGS3
= @WRAP@ @WRAP32@
102 PROGS
= $(PROGS1
) $(PROGS2
) $(PROGS3
) $(MPROGS
) bin
/nmblookup bin
/make_printerdef
104 SCRIPTS
= script
/smbtar script
/addtosmbpass script
/convert_smbpasswd
106 QUOTAOBJS
=@QUOTAOBJS@
108 ######################################################################
110 ######################################################################
112 LIBSTATUS_OBJ
= lib
/util_status.o
114 LIB_OBJ
= lib
/charcnv.o lib
/charset.o lib
/debug.o lib
/fault.o \
115 lib
/getsmbpass.o lib
/interface.o lib
/kanji.o \
116 lib
/md5.o lib
/hmacmd5.o lib
/md4.o \
117 lib
/netmask.o lib
/pidfile.o lib
/replace.o \
118 lib
/signal.o lib
/slprintf.o lib
/system.o lib
/doscalls.o lib
/time.o \
119 lib
/ufc.o lib
/util.o lib
/genrand.o lib
/username.o \
121 lib
/access.o lib
/smbrun.o \
122 lib
/bitmap.o lib
/crc32.o lib
/util_sid.o lib
/snprintf.o \
123 lib
/util_str.o lib
/util_unistr.o \
124 lib
/util_file.o mem_man
/mem_man.o \
130 STUB_UID_OBJ
= lib
/stub_uid.c
132 UBIQX_OBJ
= ubiqx
/ubi_BinTree.o ubiqx
/ubi_Cache.o ubiqx
/ubi_SplayTree.o \
133 ubiqx
/ubi_dLinkList.o ubiqx
/ubi_sLinkList.o
135 PARAM_OBJ
= param
/loadparm.o param
/params.o
137 LIBSMB_OBJ
= libsmb
/clientgen.o libsmb
/namequery.o libsmb
/nmblib.o \
138 libsmb
/nterr.o libsmb
/smbdes.o libsmb
/smbencrypt.o \
139 libsmb
/smberr.o libsmb
/credentials.o libsmb
/pwd_cache.o \
143 rpc_server
/srv_pipe_hnd.o \
144 rpc_server
/srv_pipe_srv.o
147 rpc_server
/srv_pipe_hnd.o \
148 rpc_server
/srv_pipe.o
150 RPC_PARSE_OBJ1
= rpc_parse
/parse_lsa.o \
151 rpc_parse
/parse_net.o \
152 rpc_parse
/parse_reg.o \
153 rpc_parse
/parse_samr.o \
154 rpc_parse
/parse_srv.o \
155 rpc_parse
/parse_wks.o \
156 rpc_parse
/parse_svc.o \
157 rpc_parse
/parse_at.o \
158 rpc_parse
/parse_spoolss.o \
159 rpc_parse
/parse_eventlog.o \
160 rpc_parse
/parse_brs.o
162 RPC_PARSE_OBJ2
= rpc_parse
/parse_rpc.o \
163 rpc_parse
/parse_prs.o \
164 rpc_parse
/parse_misc.o \
165 rpc_parse
/parse_creds.o \
166 rpc_parse
/parse_sec.o \
171 RPC_PARSE_OBJ
= $(RPC_PARSE_OBJ1
) $(RPC_PARSE_OBJ2
)
174 rpc_client
/cli_login.o \
175 rpc_client
/cli_netlogon.o \
176 rpc_client
/cli_reg.o \
177 rpc_client
/cli_pipe.o \
178 rpc_client
/cli_connect.o \
179 rpc_client
/cli_use.o \
180 rpc_client
/cli_spoolss.o \
181 rpc_client
/cli_lsarpc.o \
182 rpc_client
/cli_wkssvc.o \
183 rpc_client
/cli_brs.o \
184 rpc_client
/cli_srvsvc.o \
185 rpc_client
/cli_svcctl.o \
186 rpc_client
/cli_samr.o \
187 rpc_client
/msrpc_samr.o \
188 rpc_client
/msrpc_netlogon.o \
189 rpc_client
/msrpc_lsarpc.o \
190 rpc_client
/cli_atsvc.o \
191 rpc_client
/cli_eventlog.o \
194 LOCKING_OBJ
= locking
/locking.o locking
/locking_shm.o locking
/locking_slow.o \
195 locking
/shmem.o locking
/shmem_sysv.o
197 GROUPDB_OBJ
= groupdb
/groupdb.o groupdb
/aliasdb.o groupdb
/builtindb.o \
198 groupdb
/groupfile.o groupdb
/aliasfile.o \
199 groupdb
/groupunix.o groupdb
/aliasunix.o groupdb
/builtinunix.o \
200 groupdb
/groupldap.o groupdb
/aliasldap.o groupdb
/builtinldap.o \
201 passdb
/passgrp.o passdb
/smbpassgroup.o \
202 passdb
/smbpassgroupunix.o passdb
/passgrpldap.o
204 SAMPASSDB_OBJ
= passdb
/sampassdb.o passdb
/sampass.o passdb
/sampassldap.o passdb
/mysqlsampass.o
206 PASSDB_OBJ
= passdb
/passdb.o passdb
/smbpassfile.o passdb
/smbpass.o \
207 passdb
/pass_check.o passdb
/ldap.o passdb
/nispass.o \
208 passdb
/smbpasschange.o passdb
/mysqlpass.o \
209 lib
/util_pwdb.o lib
/domain_namemap.o
211 SIDDB_OBJ
= lib
/sids.o
213 PROFILE_OBJ
= profile
/profile.o
215 SMBD_OBJ1
= smbd
/server.o smbd
/files.o smbd
/connection.o \
216 smbd
/dfree.o smbd
/dir.o smbd
/password.o smbd
/conn.o smbd
/fileio.o \
217 smbd
/ipc.o smbd
/lanman.o smbd
/mangle.o smbd
/negprot.o \
218 smbd
/message.o smbd
/nttrans.o smbd
/pipes.o smbd
/predict.o \
219 smbd
/$(QUOTAOBJS
) smbd
/reply.o smbd
/ssl.o smbd
/trans2.o smbd
/uid.o \
220 smbd
/dosmode.o smbd
/filename.o smbd
/open.o smbd
/close.o smbd
/blocking.o \
221 smbd
/process.o smbd
/oplock.o smbd
/service.o smbd
/error.o smbd
/vfs.o \
222 smbd
/vfs-wrap.o smbd
/dfs.o \
224 passdb
/smbpassfile.o \
227 PRINTING_OBJ
= printing
/pcap.o printing
/print_svid.o printing
/printing.o
229 MSRPCD_OBJ
= msrpc
/msrpcd.o \
230 msrpc
/msrpcd_process.o \
231 rpc_parse
/parse_net.o \
232 rpc_client
/cli_login.o \
233 rpc_client
/cli_netlogon.o \
234 rpc_client
/cli_pipe.o \
235 rpc_client
/cli_connect.o \
236 rpc_client
/cli_use.o \
237 rpc_client
/msrpc_netlogon.o \
240 BROWSERD_OBJ1
= browserd
/browserd.o \
241 passdb
/smbpassfile.o \
242 rpc_parse
/parse_brs.o \
245 WKSSVCD_OBJ1
= wkssvcd
/wkssvcd.o \
246 passdb
/smbpassfile.o \
247 rpc_parse
/parse_wks.o \
248 rpc_server
/srv_wkssvc.o
250 SRVSVCD_OBJ1
= srvsvcd
/srvsvcd.o \
251 passdb
/smbpassfile.o \
252 rpc_parse
/parse_srv.o \
253 rpc_server
/srv_srvsvc.o
255 WINREGD_OBJ1
= winregd
/winregd.o \
256 passdb
/smbpassfile.o \
257 rpc_parse
/parse_reg.o \
260 NETLOGOND_OBJ1
= netlogond
/netlogond.o \
261 rpc_server
/srv_netlog.o \
262 rpc_client
/msrpc_lsarpc.o \
263 rpc_server
/srv_lookup.o \
264 rpc_client
/cli_lsarpc.o \
265 rpc_parse
/parse_lsa.o \
269 SAMRD_OBJ1
= samrd
/samrd.o \
270 rpc_server
/srv_lookup.o \
271 rpc_client
/msrpc_lsarpc.o \
272 rpc_parse
/parse_samr.o \
273 rpc_client
/cli_lsarpc.o \
274 rpc_parse
/parse_lsa.o \
275 rpc_server
/srv_samr.o smbd
/chgpasswd.o
277 SVCCTLD_OBJ1
= svcctld
/svcctld.o \
278 passdb
/smbpassfile.o \
279 rpc_parse
/parse_svc.o \
280 rpc_server
/srv_svcctl.o
282 LSARPCD_OBJ1
= lsarpcd
/lsarpcd.o \
283 rpc_parse
/parse_samr.o \
284 rpc_client
/cli_lsarpc.o \
285 rpc_client
/msrpc_lsarpc.o \
286 rpc_client
/msrpc_samr.o \
287 rpc_client
/cli_samr.o \
288 rpc_parse
/parse_lsa.o \
292 SPOOLSSD_OBJ1
= spoolssd
/spoolssd.o \
293 rpc_server
/srv_spoolss.o \
294 passdb
/smbpassfile.o \
295 rpc_parse
/parse_spoolss.o \
296 printing
/nt_printing.o
298 SMBD_OBJ
= $(SMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
299 $(RPC_SERVER_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
302 $(LIBSTATUS_OBJ
) $(PRINTING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
304 SRVSVCD_OBJ
= $(MSRPCD_OBJ
) $(SRVSVCD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
306 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
307 $(LOCKING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) \
310 WKSSVCD_OBJ
= $(MSRPCD_OBJ
) $(WKSSVCD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
312 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
313 $(LOCKING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
315 BROWSERD_OBJ
= $(MSRPCD_OBJ
) $(BROWSERD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
317 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
318 $(LOCKING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
320 WINREGD_OBJ
= $(MSRPCD_OBJ
) $(WINREGD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
322 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
323 $(LOCKING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
325 SVCCTLD_OBJ
= $(MSRPCD_OBJ
) $(SVCCTLD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
327 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
328 $(LOCKING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
330 LSARPCD_OBJ
= $(MSRPCD_OBJ
) $(LSARPCD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
332 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
333 $(SIDDB_OBJ
) $(LOCKING_OBJ
) \
334 $(LIBSTATUS_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
336 SPOOLSSD_OBJ
= $(MSRPCD_OBJ
) $(SPOOLSSD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
337 $(UBIQX_OBJ
) $(PRINTING_OBJ
) \
338 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
339 $(LOCKING_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
341 NETLOGOND_OBJ
= $(MSRPCD_OBJ
) $(NETLOGOND_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
343 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
345 $(SIDDB_OBJ
) $(SAMPASSDB_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) \
346 $(LIBSTATUS_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
348 SAMRD_OBJ
= $(MSRPCD_OBJ
) $(SAMRD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
350 $(RPC_SRVUTIL_OBJ
) $(RPC_PARSE_OBJ2
) \
352 $(SIDDB_OBJ
) $(SAMPASSDB_OBJ
) $(PASSDB_OBJ
) $(GROUPDB_OBJ
) \
353 $(LIBSTATUS_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
)
355 NMBD_OBJ1
= nmbd
/asyncdns.o nmbd
/nmbd.o nmbd
/nmbd_become_dmb.o \
356 nmbd
/nmbd_become_lmb.o nmbd
/nmbd_browserdb.o \
357 nmbd
/nmbd_browsesync.o nmbd
/nmbd_elections.o \
358 nmbd
/nmbd_incomingdgrams.o nmbd
/nmbd_incomingrequests.o \
359 nmbd
/nmbd_lmhosts.o nmbd
/nmbd_logonnames.o nmbd
/nmbd_mynames.o \
360 nmbd
/nmbd_namelistdb.o nmbd
/nmbd_namequery.o \
361 nmbd
/nmbd_nameregister.o nmbd
/nmbd_namerelease.o \
362 nmbd
/nmbd_nodestatus.o nmbd
/nmbd_packets.o \
363 nmbd
/nmbd_processlogon.o nmbd
/nmbd_responserecordsdb.o \
364 nmbd
/nmbd_sendannounce.o nmbd
/nmbd_serverlistdb.o \
365 nmbd
/nmbd_subnetdb.o nmbd
/nmbd_winsproxy.o nmbd
/nmbd_winsserver.o \
366 nmbd
/nmbd_workgroupdb.o nmbd
/nmbd_synclists.o
368 NMBD_OBJ
= $(NMBD_OBJ1
) $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) \
369 $(LIB_OBJ
) $(RPC_PARSE_OBJ2
)
371 SWAT_OBJ
= web
/cgi.o web
/diagnose.o web
/startstop.o web
/statuspage.o \
372 web
/swat.o
$(LIBSMB_OBJ
) $(LOCKING_OBJ
) \
374 $(SIDDB_OBJ
) $(PASSDB_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
375 $(UBIQX_OBJ
) $(LIB_OBJ
) $(STUB_UID_OBJ
)
377 SMBRUN_OBJ
= utils
/smbrun.o
379 SMBSH_OBJ
= smbwrapper
/smbsh.o smbwrapper
/shared.o \
380 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) $(RPC_PARSE_OBJ2
)
382 MAKE_SMBCODEPAGE_OBJ
= utils
/make_smbcodepage.o
$(PARAM_OBJ
) \
383 $(UBIQX_OBJ
) $(LIB_OBJ
)
385 MAKE_PRINTERDEF_OBJ
= utils
/make_printerdef.o
$(PARAM_OBJ
) \
386 $(UBIQX_OBJ
) $(LIB_OBJ
)
388 STATUS_OBJ
= utils
/status.o
$(LIBSTATUS_OBJ
) $(LOCKING_OBJ
) $(PARAM_OBJ
) \
389 $(UBIQX_OBJ
) $(PROFILE_OBJ
) $(LIB_OBJ
) $(STUB_UID_OBJ
)
391 TESTPARM_OBJ
= utils
/testparm.o \
392 $(PARAM_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
394 TESTPRNS_OBJ
= utils
/testprns.o
$(PARAM_OBJ
) $(PRINTING_OBJ
) $(UBIQX_OBJ
) \
397 SMBPASSWD_OBJ
= utils
/smbpasswd.o rpc_client
/cli_netlogon_sync.o \
398 $(PARAM_OBJ
) $(LIBSMB_OBJ
) \
400 $(SIDDB_OBJ
) $(STUB_UID_OBJ
)\
401 $(UBIQX_OBJ
) $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) $(LIB_OBJ
)
403 RPCCLIENT_OBJ
= rpcclient
/rpcclient.o \
404 rpcclient
/display_at.o \
405 rpcclient
/display_event.o \
406 rpcclient
/display_reg.o \
407 rpcclient
/display_sam.o \
408 rpcclient
/display_sec.o \
409 rpcclient
/display_spool.o \
410 rpcclient
/display_srv.o \
411 rpcclient
/display_svc.o \
412 rpcclient
/display_sync.o \
413 rpcclient
/cmd_lsarpc.o \
414 rpcclient
/cmd_wkssvc.o \
415 rpcclient
/cmd_brs.o \
416 rpcclient
/cmd_samr.o \
417 rpcclient
/cmd_reg.o \
418 rpcclient
/cmd_srvsvc.o \
419 rpcclient
/cmd_svcctl.o \
420 rpcclient
/cmd_netlogon.o \
421 rpcclient
/cmd_atsvc.o \
422 rpcclient
/cmd_spoolss.o \
423 rpcclient
/cmd_eventlog.o \
424 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
425 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
426 $(SIDDB_OBJ
) $(PASSDB_OBJ
) \
429 SMBWRAPPER_OBJ
= smbwrapper
/smbw.o smbwrapper
/wrapped.o \
430 smbwrapper
/smbw_dir.o smbwrapper
/smbw_stat.o \
431 smbwrapper
/realcalls.o smbwrapper
/shared.o \
432 $(LIBSMB_OBJ
) $(PARAM_OBJ
) \
433 $(UBIQX_OBJ
) $(LIB_OBJ
)
435 CLIENT_OBJ
= client
/client.o client
/clitar.o \
436 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) $(RPC_PARSE_OBJ2
)
438 MOUNT_OBJ
= client
/smbmount.o client
/clientutil.o \
439 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
441 MNT_OBJ
= client
/smbmnt.o \
442 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
444 UMOUNT_OBJ
= client
/smbumount.o \
445 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
)
447 NMB_AGENT_OBJ
= utils
/nmb-agent.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) \
448 $(LIBSMB_OBJ
) $(LIB_OBJ
) $(RPC_PARSE_OBJ2
)
450 NMBLOOKUP_OBJ
= utils
/nmblookup.o
$(PARAM_OBJ
) $(UBIQX_OBJ
) \
451 $(LIBSMB_OBJ
) $(LIB_OBJ
) $(RPC_PARSE_OBJ2
)
453 DEBUG2HTML_OBJ
= utils
/debug2html.o
$(PARAM_OBJ
) $(LIB_OBJ
)
455 SMB_AGENT_OBJ
= utils
/smb-agent.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) $(LIB_OBJ
) \
456 $(RPC_PARSE_OBJ2
) rpc_client
/cli_use.o
458 SMB_CLIENT_OBJ
= smb-client.o
$(PARAM_OBJ
) $(LIB_OBJ
)
460 SMBTORTURE_OBJ
= utils
/torture.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
461 $(UBIQX_OBJ
) $(LIB_OBJ
)
463 SMBFILTER_OBJ
= utils
/smbfilter.o
$(LIBSMB_OBJ
) $(PARAM_OBJ
) \
464 $(UBIQX_OBJ
) $(LIB_OBJ
)
466 RPCTORTURE_OBJ
= utils
/rpctorture.o \
467 rpcclient
/display.o \
468 rpcclient
/cmd_lsarpc.o \
469 rpcclient
/cmd_wkssvc.o \
470 rpcclient
/cmd_samr.o \
471 rpcclient
/cmd_srvsvc.o \
472 rpcclient
/cmd_netlogon.o \
473 $(PARAM_OBJ
) $(LIBSMB_OBJ
) $(UBIQX_OBJ
) $(LIB_OBJ
) \
474 $(RPC_CLIENT_OBJ
) $(RPC_PARSE_OBJ
) \
478 PROTO_OBJ
= $(MSRPCD_OBJ
) $(SVCCTLD_OBJ1
) $(WINREGD_OBJ1
) $(SAMRD_OBJ1
) \
479 $(SRVSVCD_OBJ1
) $(WKSSVCD_OBJ1
) $(BROWSERD_OBJ1
) \
480 $(SPOOLSSD_OBJ1
) $(NETLOGOND_OBJ1
) \
481 $(LSARPCD_OBJ1
) $(SMBD_OBJ
) $(NMBD_OBJ
) \
482 $(SWAT_OBJ
) $(CLIENT_OBJ
) \
483 $(SAMPASSDB_OBJ
) $(GROUPDB_OBJ
) $(PASSDB_OBJ
)\
484 $(RPCCLIENT_OBJ
) $(SMBWRAPPER_OBJ
) $(SMBPASSWD_OBJ
) \
487 PICOBJS
= $(SMBWRAPPER_OBJ
:.o
=.po
)
488 PICOBJS32
= $(SMBWRAPPER_OBJ
:.o
=.po32
)
490 ######################################################################
492 ######################################################################
494 all : CHECK
$(SPROGS
) $(PROGS
)
496 smbwrapper
: CHECK bin
/smbsh bin
/smbwrapper.so @WRAP32@
498 smbtorture
: CHECK bin
/smbtorture
500 rpctorture
: CHECK bin
/rpctorture
502 smbfilter
: CHECK bin
/smbfilter
506 .SUFFIXES
: .c .o .po .po32
509 @echo
"Using FLAGS = $(FLAGS)"
510 @echo
"Using LIBS = $(LIBS)"
512 MAKEDIR
= || exec false
; \
513 if
test -d
"$$dir"; then
:; else \
514 echo mkdir
"$$dir"; \
515 mkdir
-p
"$$dir" >/dev
/null
2>&1 || \
518 exec false
; fi || exec false
520 # the lines below containing `@MAINT@' are for atomatic dependency tracking
521 # they will only work with GNU make, gcc and --enable-maintainer-mode
522 # without --enable-maintainer-mode, they do nothing
523 .c.o
: @MAINT@ .deps
/.dummy
524 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
525 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
526 @MAINT@ @if
(: >> .deps
/$@ ||
: > .deps
/$@
) >/dev
/null
2>&1; then
:; \
527 @MAINT@
else dir=.deps
/`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` \
528 @MAINT@
$(MAKEDIR
); fi
; rm -f .deps
/$@ .deps
/$@d
530 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) -c
$< \
531 -o
$@ @MAINT@
-Wp
,-MD
,.deps
/$@
532 @MAINT@ @sed
's|^'`echo $@ | sed 's,.*/,,'`':|$@:|' \
533 @MAINT@
<.deps
/$@
>.deps
/$@d
&& \
534 @MAINT@
rm -f .deps
/$@
&& : >.deps
/.stamp
536 .c.po
: @MAINT@ .deps
/.dummy
537 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
538 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
539 @MAINT@ @if
(: >> .deps
/$@ ||
: > .deps
/$@
) >/dev
/null
2>&1; then
:; \
540 @MAINT@
else dir=.deps
/`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` \
541 @MAINT@
$(MAKEDIR
); fi
; rm -f .deps
/$@ .deps
/$@d
542 @echo Compiling
$*.c with @PICFLAG@
543 @
$(CC
) -I.
-I
$(srcdir) $(FLAGS
) @PICFLAG@
-c
$< \
544 -o
$*.po.o @MAINT@
-Wp
,-MD
,.deps
/$@
545 @MAINT@ @sed
's|^'`echo $*\.po\.o | sed 's,.*/,,'`':|$@:|' \
546 @MAINT@
<.deps
/$@
>.deps
/$@d
&& \
547 @MAINT@
rm -f .deps
/$@
&& : >.deps
/.stamp
551 .c.po32
: @MAINT@ .deps
/.dummy
552 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
rm -f
$@
; else \
553 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR
); fi
554 @MAINT@ @if
(: >> .deps
/$@ ||
: > .deps
/$@
) >/dev
/null
2>&1; then
:; \
555 @MAINT@
else dir=.deps
/`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` \
556 @MAINT@
$(MAKEDIR
); fi
; rm -f .deps
/$@ .deps
/$@d
557 @echo Compiling
$*.c with @PICFLAG@ and
-32
558 @
$(CC
) -32 -I.
-I
$(srcdir) $(FLAGS
) @PICFLAG@
-c
$< \
559 -o
$*.po32.o @MAINT@
-Wp
,-MD
,.deps
/$@
560 @MAINT@ @sed
's|^'`echo $*.po32.o | sed 's,.*/,,'`':|$@:|' \
561 @MAINT@
<.deps
/$@
>.deps
/$@d
&& \
562 @MAINT@
rm -f .deps
/$@
&& : >.deps
/.stamp
566 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
567 dir=bin
$(MAKEDIR
); fi
568 @
: >> $@ ||
: > $@
# what a fancy emoticon!
570 bin
/smbd
: $(SMBD_OBJ
) bin
/.dummy
572 @
$(CC
) $(FLAGS
) -o
$@
$(SMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
574 bin
/svcctld
: $(SVCCTLD_OBJ
) bin
/.dummy
576 @
$(CC
) $(FLAGS
) -o
$@
$(SVCCTLD_OBJ
) $(LDFLAGS
) $(LIBS
)
578 bin
/lsarpcd
: $(LSARPCD_OBJ
) bin
/.dummy
580 @
$(CC
) $(FLAGS
) -o
$@
$(LSARPCD_OBJ
) $(LDFLAGS
) $(LIBS
)
582 bin
/spoolssd
: $(SPOOLSSD_OBJ
) bin
/.dummy
584 @
$(CC
) $(FLAGS
) -o
$@
$(SPOOLSSD_OBJ
) $(LDFLAGS
) $(LIBS
)
586 bin
/srvsvcd
: $(SRVSVCD_OBJ
) bin
/.dummy
588 @
$(CC
) $(FLAGS
) -o
$@
$(SRVSVCD_OBJ
) $(LDFLAGS
) $(LIBS
)
590 bin
/wkssvcd
: $(WKSSVCD_OBJ
) bin
/.dummy
592 @
$(CC
) $(FLAGS
) -o
$@
$(WKSSVCD_OBJ
) $(LDFLAGS
) $(LIBS
)
594 bin
/browserd
: $(BROWSERD_OBJ
) bin
/.dummy
596 @
$(CC
) $(FLAGS
) -o
$@
$(BROWSERD_OBJ
) $(LDFLAGS
) $(LIBS
)
598 bin
/winregd
: $(WINREGD_OBJ
) bin
/.dummy
600 @
$(CC
) $(FLAGS
) -o
$@
$(WINREGD_OBJ
) $(LDFLAGS
) $(LIBS
)
602 bin
/netlogond
: $(NETLOGOND_OBJ
) bin
/.dummy
604 @
$(CC
) $(FLAGS
) -o
$@
$(NETLOGOND_OBJ
) $(LDFLAGS
) $(LIBS
)
606 bin
/samrd
: $(SAMRD_OBJ
) bin
/.dummy
608 @
$(CC
) $(FLAGS
) -o
$@
$(SAMRD_OBJ
) $(LDFLAGS
) $(LIBS
)
610 bin
/nmbd
: $(NMBD_OBJ
) bin
/.dummy
612 @
$(CC
) $(FLAGS
) -o
$@
$(NMBD_OBJ
) $(LDFLAGS
) $(LIBS
)
614 bin
/swat
: $(SWAT_OBJ
) bin
/.dummy
616 @
$(CC
) $(FLAGS
) -o
$@
$(SWAT_OBJ
) $(LDFLAGS
) $(LIBS
)
618 bin
/smbrun
: $(SMBRUN_OBJ
) bin
/.dummy
620 @
$(CC
) $(FLAGS
) -o
$@
$(SMBRUN_OBJ
) $(LDFLAGS
) $(LIBS
)
622 bin
/rpcclient
: $(RPCCLIENT_OBJ
) bin
/.dummy
624 @
$(CC
) $(FLAGS
) -o
$@
$(RPCCLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
626 bin
/smbclient
: $(CLIENT_OBJ
) bin
/.dummy
628 @
$(CC
) $(FLAGS
) -o
$@
$(CLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
630 bin
/smbmount
: $(MOUNT_OBJ
) bin
/.dummy
632 @
$(CC
) $(FLAGS
) -o
$@
$(MOUNT_OBJ
) $(LIBS
)
634 bin
/smbmnt
: $(MNT_OBJ
) bin
/.dummy
636 @
$(CC
) $(FLAGS
) -o
$@
$(MNT_OBJ
) $(LIBS
)
638 bin
/smbumount
: $(UMOUNT_OBJ
) bin
/.dummy
640 @
$(CC
) $(FLAGS
) -o
$@
$(UMOUNT_OBJ
) $(LIBS
)
642 bin
/testparm
: $(TESTPARM_OBJ
) bin
/.dummy
644 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPARM_OBJ
) $(LDFLAGS
) $(LIBS
)
646 bin
/testprns
: $(TESTPRNS_OBJ
) bin
/.dummy
648 @
$(CC
) $(FLAGS
) -o
$@
$(TESTPRNS_OBJ
) $(LDFLAGS
) $(LIBS
)
650 bin
/smbstatus
: $(STATUS_OBJ
) bin
/.dummy
652 @
$(CC
) $(FLAGS
) -o
$@
$(STATUS_OBJ
) $(LDFLAGS
) $(LIBS
)
654 bin
/smbpasswd
: $(SMBPASSWD_OBJ
) bin
/.dummy
656 @
$(CC
) $(FLAGS
) -o
$@
$(SMBPASSWD_OBJ
) $(LDFLAGS
) $(LIBS
)
658 bin
/make_smbcodepage
: $(MAKE_SMBCODEPAGE_OBJ
) bin
/.dummy
660 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_SMBCODEPAGE_OBJ
) $(LDFLAGS
) $(LIBS
)
662 bin
/nmblookup
: $(NMBLOOKUP_OBJ
) bin
/.dummy
664 @
$(CC
) $(FLAGS
) -o
$@
$(NMBLOOKUP_OBJ
) $(LDFLAGS
) $(LIBS
)
666 bin
/make_printerdef
: $(MAKE_PRINTERDEF_OBJ
) bin
/.dummy
668 @
$(CC
) $(FLAGS
) -o
$@
$(MAKE_PRINTERDEF_OBJ
) $(LDFLAGS
) $(LIBS
)
670 bin
/smbtorture
: $(SMBTORTURE_OBJ
) bin
/.dummy
672 @
$(CC
) $(FLAGS
) -o
$@
$(SMBTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
674 bin
/rpctorture
: $(RPCTORTURE_OBJ
) bin
/.dummy
676 @
$(CC
) $(FLAGS
) -o
$@
$(RPCTORTURE_OBJ
) $(LDFLAGS
) $(LIBS
)
678 bin
/smb-client
: $(SMB_CLIENT_OBJ
) bin
/.dummy
680 @
$(CC
) $(FLAGS
) -o
$@
$(SMB_CLIENT_OBJ
) $(LDFLAGS
) $(LIBS
)
682 bin
/nmb-agent
: $(NMB_AGENT_OBJ
) bin
/.dummy
684 @
$(CC
) $(FLAGS
) -o
$@
$(NMB_AGENT_OBJ
) $(LDFLAGS
) $(LIBS
)
686 bin
/smb-agent
: $(SMB_AGENT_OBJ
) bin
/.dummy
688 @
$(CC
) $(FLAGS
) -o
$@
$(SMB_AGENT_OBJ
) $(LDFLAGS
) $(LIBS
)
690 bin
/smbfilter
: $(SMBFILTER_OBJ
) bin
/.dummy
692 @
$(CC
) $(FLAGS
) -o
$@
$(SMBFILTER_OBJ
) $(LDFLAGS
) $(LIBS
)
694 bin
/debug2html
: $(DEBUG2HTML_OBJ
) bin
/.dummy
696 @
$(CC
) $(FLAGS
) -o
$@
$(DEBUG2HTML_OBJ
) $(LDFLAGS
) $(LIBS
)
698 bin
/smbwrapper.so
: $(PICOBJS
)
699 @echo Linking shared library
$@
700 @
$(LD
) @LDSHFLAGS@
-o
$@
$(PICOBJS
) $(LIBS
)
702 bin
/smbwrapper
.32.so
: $(PICOBJS32
)
703 @echo Linking shared library
$@
704 @
$(LD
) -32 @LDSHFLAGS@
-o
$@
$(PICOBJS32
) $(LIBS
)
706 bin
/smbsh
: $(SMBSH_OBJ
) bin
/.dummy
708 @
$(CC
) $(FLAGS
) -o
$@
$(SMBSH_OBJ
) $(LDFLAGS
) $(LIBS
)
710 install: installbin installman installscripts installcp installswat
713 $(SHELL
) $(srcdir)/install-sh
-d
-m
$(INSTALLPERMS
) \
714 $(BASEDIR
) $(SBINDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(CODEPAGEDIR
)
716 installbin
: all installdirs
717 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
718 @
$(SHELL
) $(srcdir)/script
/installbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
720 installscripts
: installdirs
721 @
$(SHELL
) $(srcdir)/script
/installscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
723 installcp
: installdirs
724 @
$(SHELL
) $(srcdir)/script
/installcp.sh
$(srcdir) $(LIBDIR
) $(CODEPAGEDIR
) $(BINDIR
) $(CODEPAGELIST
)
726 installswat
: installdirs
727 @
$(SHELL
) $(srcdir)/script
/installswat.sh
$(SWATDIR
) $(srcdir)
729 # revert to the previously installed version
731 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(SBINDIR
) $(SPROGS
)
732 @
$(SHELL
) $(srcdir)/script
/revert.sh
$(BINDIR
) $(PROGS
) $(SCRIPTS
)
735 @
$(SHELL
) $(srcdir)/script
/installman.sh
$(MANDIR
) $(srcdir) "@ROFF@"
737 uninstall: uninstallman uninstallbin uninstallscripts uninstallcp
740 @
$(SHELL
) $(srcdir)/script
/uninstallman.sh
$(MANDIR
) $(srcdir)
743 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(SBINDIR
) $(LIBDIR
) $(VARDIR
) $(SPROGS
)
744 @
$(SHELL
) $(srcdir)/script
/uninstallbin.sh
$(INSTALLPERMS
) $(BASEDIR
) $(BINDIR
) $(LIBDIR
) $(VARDIR
) $(PROGS
)
747 @
$(SHELL
) $(srcdir)/script
/uninstallscripts.sh
$(INSTALLPERMS
) $(BINDIR
) $(SCRIPTS
)
750 @
$(SHELL
) $(srcdir)/script
/uninstallcp.sh
$(CODEPAGEDIR
) $(CODEPAGELIST
)
753 -rm -f core
*/*~
*~
*/*.o
*/*.po
*/*.po32
*/*.so
756 @echo rebuilding
include/proto.h
757 @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
760 etags
`find . -name "*.[ch]"`
763 ctags
`find . -name "*.[ch]"`
766 -rm -f config.log
$(PROGS
) $(SPROGS
) bin
/.dummy
770 -rm -f
include/config.h
include/stamp-h Makefile
771 -rm -f config.status config.cache so_locations
775 # This target is for documenation updators. It regenerates
776 # the man pages and HTML docs from the YODL source files.
777 # In order for this target to work YODL must be installed
778 # and working on your system. JRA.
780 @
$(SHELL
) $(srcdir)/script
/makeyodldocs.sh
$(srcdir)
782 # this target is really just for my use. It only works on a limited
783 # range of machines and is used to produce a list of potentially
784 # dead (ie. unused) functions in the code. (tridge)
786 nm
*/*.o |grep
'U ' | awk
'{print $$2}' |
sort -u
> nmused.txt
787 nm
*/*.o |grep
'T ' | awk
'{print $$3}' |
sort -u
> nmfns.txt
788 comm
-13 nmused.txt nmfns.txt
791 nm
$(SMBD_OBJ
) |grep
'U ' | awk
'{print $$2}' |
sort -u
> nmusedsmbd.txt
792 nm
$(SMBD_OBJ
) |grep
'T ' | awk
'{print $$3}' |
sort -u
> nmfnssmbd.txt
793 comm
-13 nmusedsmbd.txt nmfnssmbd.txt
795 # Rules for maintainers (--enable-maintainer-mode)
797 AUTOHEADER
=@AUTOHEADER@
799 # when configure.in is updated, reconfigure
800 $(srcdir)/configure
: @MAINT@
$(srcdir)/configure.in
$(srcdir)/aclocal.m4
801 cd
$(srcdir) && $(AUTOCONF
)
803 config.status
: $(srcdir)/configure
804 $(SHELL
) .
/config.status
--recheck
806 Makefile
: $(srcdir)/Makefile.in config.status \
807 include/stamp-h
# just to ensure that config.h is up-to-date
808 CONFIG_FILES
=$@ CONFIG_HEADERS
= $(SHELL
) .
/config.status
810 # note that nothing depends on config.h, so will probably be rebuilt
811 # only when explicitly requested, unless dependency tracking is enabled
812 include/config.h
: include/stamp-h
815 include/stamp-h
: $(srcdir)/include/config.h.in config.status
816 CONFIG_FILES
= CONFIG_HEADERS
=include/config.h
$(SHELL
) .
/config.status
817 @echo
> include/stamp-h
819 $(srcdir)/include/config.h.in
: $(srcdir)/include/stamp-h.in
822 $(srcdir)/include/stamp-h.in
: @MAINT@
$(srcdir)/acconfig.h
$(srcdir)/configure.in
823 cd
$(srcdir) && $(AUTOHEADER
)
826 # automatic dependency tracking rules
828 @if
(: >> $@ ||
: > $@
) >/dev
/null
2>&1; then
:; else \
829 dir=.deps
$(MAKEDIR
); fi
830 @
: >> $@ ||
: > $@
# what a fancy emoticon!
832 .deps
/.stamp
: .deps
/.dummy
835 .deps
/depend
: .deps
/.stamp
836 @echo Updating dependencies
837 @
: | cat
`find .deps -type f -name \*d` >$@
2>/dev
/null || true
839 @MAINT@
-include .deps
/depend