0001-01-01 02:30:17 +02:30
###########################################################################
# Makefile.in for Samba - rewritten for autoconf support
# Copyright Andrew Tridgell 1992-1998
###########################################################################
prefix = @prefix@
exec_prefix = @exec_prefix@
0001-01-01 02:30:17 +02:30
mandir = @mandir@
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
LIBS = @LIBS@
0001-01-01 02:30:17 +02:30
CC = @CC@
0001-01-01 02:30:17 +02:30
SHLD = @SHLD@
0001-01-01 02:30:17 +02:30
CFLAGS = @CFLAGS@
0001-01-01 02:30:17 +02:30
CPPFLAGS = @CPPFLAGS@
0001-01-01 02:30:17 +02:30
LDFLAGS = @LDFLAGS@
0001-01-01 02:30:17 +02:30
AWK = @AWK@
0001-01-01 02:30:17 +02:30
TERMLDFLAGS = @TERMLDFLAGS@
TERMLIBS = @TERMLIBS@
0001-01-01 02:30:17 +02:30
LINK = $( CC) $( FLAGS) $( LDFLAGS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
INSTALLCMD = @INSTALL@
VPATH = @srcdir@
srcdir = @srcdir@
0001-01-01 02:30:17 +02:30
builddir = @builddir@
0001-01-01 02:30:17 +02:30
SHELL = /bin/sh
0001-01-01 02:30:17 +02:30
BASEDIR = @prefix@
0001-01-01 02:30:17 +02:30
BINDIR = @bindir@
0001-01-01 02:30:17 +02:30
# sbindir is mapped to bindir when compiling SAMBA in 2.0.x compatibility mode.
SBINDIR = @sbindir@
0001-01-01 02:30:17 +02:30
LIBDIR = @libdir@
0001-01-01 02:30:17 +02:30
VARDIR = @localstatedir@
0001-01-01 02:30:17 +02:30
MANDIR = @mandir@
0001-01-01 02:30:17 +02:30
# The permissions to give the executables
INSTALLPERMS = 0755
# set these to where to find various files
# These can be overridden by command line switches (see smbd(8))
# or in smb.conf (see smb.conf(5))
0001-01-01 02:30:17 +02:30
LOGFILEBASE = $( VARDIR)
0001-01-01 02:30:17 +02:30
CONFIGFILE = $( LIBDIR) /smb.conf
LMHOSTSFILE = $( LIBDIR) /lmhosts
DRIVERFILE = $( LIBDIR) /printers.def
0001-01-01 02:30:17 +02:30
# This is where smbpasswd et al go
PRIVATEDIR = @privatedir@
SMB_PASSWD_FILE = $( PRIVATEDIR) /smbpasswd
0001-01-01 02:30:17 +02:30
PRIVATE_DIR = $( PRIVATEDIR)
0001-01-01 02:30:17 +02:30
# This is where SWAT images and help files go
0001-01-01 02:30:17 +02:30
SWATDIR = @swatdir@
0001-01-01 02:30:17 +02:30
# the directory where lock files go
0001-01-01 02:30:17 +02:30
LOCKDIR = @lockdir@
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
# man pages language(s)
man_langs = "@manlangs@"
0001-01-01 02:30:17 +02:30
PASSWD_FLAGS = -DSMB_PASSWD_FILE= \" $( SMB_PASSWD_FILE) \" -DPRIVATE_DIR= \" $( PRIVATE_DIR) \"
0001-01-01 02:30:17 +02:30
FLAGS1 = $( CFLAGS) -Iinclude -I$( srcdir) /include -I$( srcdir) /ubiqx -I$( srcdir) /smbwrapper $( CPPFLAGS) -DLOGFILEBASE= \" $( LOGFILEBASE) \"
0001-01-01 02:30:17 +02:30
FLAGS2 = -DCONFIGFILE= \" $( CONFIGFILE) \" -DLMHOSTSFILE= \" $( LMHOSTSFILE) \"
FLAGS3 = -DSWATDIR= \" $( SWATDIR) \" -DSBINDIR= \" $( SBINDIR) \" -DLOCKDIR= \" $( LOCKDIR) \"
0001-01-01 02:30:17 +02:30
FLAGS4 = -DDRIVERFILE= \" $( DRIVERFILE) \" -DBINDIR= \" $( BINDIR) \" -DFORMSFILE= \" $( FORMSFILE) \" -DNTDRIVERSDIR= \" $( NTDRIVERSDIR) \" -DLIBDIR= \" $( LIBDIR) \"
0001-01-01 02:30:17 +02:30
FLAGS5 = $( FLAGS1) $( FLAGS2) $( FLAGS3) $( FLAGS4) -DHAVE_INCLUDES_H
0001-01-01 02:30:17 +02:30
FLAGS = $( ISA) $( FLAGS5) $( PASSWD_FLAGS)
FLAGS32 = $( ISA32) $( FLAGS5) $( PASSWD_FLAGS)
0001-01-01 02:30:17 +02:30
WINBIND_PROGS = bin/wbinfo
0001-01-01 02:30:17 +02:30
WINBIND_SPROGS = bin/winbindd
0001-01-01 02:30:17 +02:30
WINBIND_PAM_PROGS = nsswitch/pam_winbind.so
0001-01-01 02:30:17 +02:30
WINBIND_LPROGS = @WINBIND_PAM_PROGS@ nsswitch/libnss_winbind.so
0001-01-01 02:30:17 +02:30
SPROGS = bin/smbd bin/nmbd bin/swat @WINBIND_STARGETS@
0001-01-01 02:30:17 +02:30
PROGS1 = bin/smbclient bin/smbspool bin/testparm bin/testprns bin/smbstatus bin/smbcontrol bin/smbtree @RUNPROG@ @WINBIND_TARGETS@
0001-01-01 02:30:17 +02:30
PROGS2 = bin/smbpasswd bin/rpcclient bin/smbcacls @WRAP@ @WRAP32@ @PAM_MOD@
0001-01-01 02:30:17 +02:30
MPROGS = @MPROGS@
0001-01-01 02:30:17 +02:30
LPROGS = @WINBIND_LTARGETS@
0001-01-01 02:30:17 +02:30
PROGS = $( PROGS1) $( PROGS2) $( MPROGS) bin/nmblookup bin/pdbedit
0001-01-01 02:30:17 +02:30
TORTURE_PROGS = bin/smbtorture bin/msgtest bin/masktest bin/locktest bin/locktest2
0001-01-01 02:30:17 +02:30
SHLIBS = libsmbclient
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SCRIPTS = $( srcdir) /script/smbtar $( srcdir) /script/addtosmbpass $( srcdir) /script/convert_smbpasswd
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
QUOTAOBJS = @QUOTAOBJS@
0001-01-01 02:30:17 +02:30
######################################################################
0001-01-01 02:30:17 +02:30
# object file lists
0001-01-01 02:30:17 +02:30
######################################################################
0001-01-01 02:30:17 +02:30
TDB_OBJ = tdb/tdb.o tdb/spinlock.o tdb/tdbutil.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
LIB_OBJ = lib/charcnv.o lib/debug.o lib/fault.o \
lib/getsmbpass.o lib/interface.o lib/md4.o \
0001-01-01 02:30:17 +02:30
lib/interfaces.o lib/pidfile.o lib/replace.o \
0001-01-01 02:30:17 +02:30
lib/signal.o lib/system.o lib/time.o \
0001-01-01 02:30:17 +02:30
lib/ufc.o lib/genrand.o lib/username.o lib/access.o lib/smbrun.o \
0001-01-01 02:30:17 +02:30
lib/bitmap.o lib/crc32.o lib/snprintf.o lib/dprintf.o lib/xfile.o lib/wins_srv.o \
0001-01-01 02:30:17 +02:30
lib/util_array.o lib/util_str.o lib/util_sid.o \
0001-01-01 02:30:17 +02:30
lib/util_unistr.o lib/util_file.o lib/sysacls.o \
0001-01-01 02:30:17 +02:30
lib/util.o lib/util_sock.o lib/util_sec.o smbd/ssl.o \
0001-01-01 02:30:17 +02:30
lib/talloc.o lib/hash.o lib/substitute.o lib/fsusage.o \
0001-01-01 02:30:17 +02:30
lib/ms_fnmatch.o lib/select.o lib/error.o lib/messages.o \
0001-01-01 02:30:17 +02:30
lib/md5.o lib/hmacmd5.o lib/iconv.o lib/smbpasswd.o \
0001-01-01 02:30:17 +02:30
nsswitch/wb_client.o nsswitch/wb_common.o \
intl/lang_tdb.o $( TDB_OBJ)
0001-01-01 02:30:17 +02:30
READLINE_OBJ = lib/readline.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
UBIQX_OBJ = ubiqx/ubi_BinTree.o ubiqx/ubi_Cache.o ubiqx/ubi_SplayTree.o \
0001-01-01 02:30:17 +02:30
ubiqx/ubi_dLinkList.o ubiqx/ubi_sLinkList.o ubiqx/debugparse.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PARAM_OBJ = param/loadparm.o param/params.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
libsmb/clikrb5.o libsmb/clispnego.o libsmb/asn1.o \
0001-01-01 02:30:17 +02:30
libsmb/clirap.o libsmb/clierror.o libsmb/climessage.o \
libsmb/clireadwrite.o libsmb/clilist.o libsmb/cliprint.o \
0001-01-01 02:30:17 +02:30
libsmb/clitrans.o libsmb/clisecdesc.o libsmb/clidgram.o \
0001-01-01 02:30:17 +02:30
libsmb/namequery.o libsmb/nmblib.o libsmb/clistr.o \
0001-01-01 02:30:17 +02:30
libsmb/nterr.o libsmb/smbdes.o libsmb/smbencrypt.o \
0001-01-01 02:30:17 +02:30
libsmb/smberr.o libsmb/credentials.o libsmb/pwd_cache.o \
0001-01-01 02:30:17 +02:30
libsmb/clioplock.o libsmb/errormap.o \
0001-01-01 02:30:17 +02:30
libsmb/passchange.o libsmb/unexpected.o $( RPC_PARSE_OBJ1)
0001-01-01 02:30:17 +02:30
LIBMSRPC_OBJ = libsmb/cli_lsarpc.o libsmb/cli_samr.o libsmb/cli_spoolss.o \
0001-01-01 02:30:17 +02:30
libsmb/cli_netlogon.o libsmb/cli_srvsvc.o libsmb/cli_dfs.o \
0001-01-01 02:30:17 +02:30
libsmb/cli_reg.o \
0001-01-01 02:30:17 +02:30
rpc_client/cli_pipe.o libsmb/cli_pipe_util.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
RPC_SERVER_OBJ = rpc_server/srv_lsa.o rpc_server/srv_lsa_nt.o \
0001-01-01 02:30:17 +02:30
rpc_server/srv_lsa_hnd.o rpc_server/srv_netlog.o rpc_server/srv_netlog_nt.o \
0001-01-01 02:30:17 +02:30
rpc_server/srv_pipe_hnd.o rpc_server/srv_reg.o rpc_server/srv_reg_nt.o \
0001-01-01 02:30:17 +02:30
rpc_server/srv_samr.o rpc_server/srv_samr_nt.o rpc_server/srv_srvsvc.o rpc_server/srv_srvsvc_nt.o \
0001-01-01 02:30:17 +02:30
rpc_server/srv_util.o rpc_server/srv_wkssvc.o rpc_server/srv_wkssvc_nt.o \
0001-01-01 02:30:17 +02:30
rpc_server/srv_pipe.o rpc_server/srv_dfs.o rpc_server/srv_dfs_nt.o \
0001-01-01 02:30:17 +02:30
rpc_server/srv_spoolss.o rpc_server/srv_spoolss_nt.o \
lib/util_getent.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
# this includes only the low level parse code, not stuff
# that requires knowledge of security contexts
0001-01-01 02:30:17 +02:30
RPC_PARSE_OBJ1 = rpc_parse/parse_prs.o rpc_parse/parse_sec.o \
rpc_parse/parse_misc.o
0001-01-01 02:30:17 +02:30
RPC_PARSE_OBJ = rpc_parse/parse_lsa.o rpc_parse/parse_net.o \
0001-01-01 02:30:17 +02:30
rpc_parse/parse_reg.o rpc_parse/parse_rpc.o \
rpc_parse/parse_samr.o rpc_parse/parse_srv.o \
0001-01-01 02:30:17 +02:30
rpc_parse/parse_wks.o \
0001-01-01 02:30:17 +02:30
rpc_parse/parse_spoolss.o rpc_parse/parse_dfs.o \
rpc_parse/parse_creds.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
RPC_CLIENT_OBJ = rpc_client/cli_netlogon.o rpc_client/cli_pipe.o \
rpc_client/cli_lsarpc.o rpc_client/cli_connect.o \
rpc_client/cli_use.o rpc_client/cli_login.o \
rpc_client/cli_spoolss_notify.o rpc_client/ncacn_np_use.o \
0001-01-01 02:30:17 +02:30
lib/util_list.o rpc_client/cli_trust.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
LOCKING_OBJ = locking/locking.o locking/brlock.o locking/posix.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PASSDB_OBJ = passdb/passdb.o passdb/secrets.o \
0001-01-01 02:30:17 +02:30
passdb/machine_sid.o passdb/pdb_smbpasswd.o \
passdb/pdb_tdb.o passdb/pdb_ldap.o \
passdb/pdb_nisplus.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
GROUPDB_OBJ = groupdb/mapping.o
0001-01-01 02:30:17 +02:30
# passdb/smbpass.o passdb/ldap.o passdb/nispass.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PROFILE_OBJ = profile/profile.o
0001-01-01 02:30:17 +02:30
OPLOCK_OBJ = smbd/oplock.o smbd/oplock_irix.o smbd/oplock_linux.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
NOTIFY_OBJ = smbd/notify.o smbd/notify_hash.o smbd/notify_kernel.o
totally rewrote the async signal, notification and oplock notification
handling in Samba. This was needed due to several limitations and
races in the previous code - as a side effect the new code is much
cleaner :)
in summary:
- changed sys_select() to avoid a signal/select race condition. It is a
rare race but once we have signals doing notification and oplocks it
is important.
- changed our main processing loop to take advantage of the new
sys_select semantics
- split the notify code into implementaion dependent and general
parts. Added the following structure that defines an implementation:
struct cnotify_fns {
void * (*register_notify)(connection_struct *conn, char *path, uint32 flags);
BOOL (*check_notify)(connection_struct *conn, uint16 vuid, char *path, uint32 flags, void *data, time_t t);
void (*remove_notify)(void *data);
};
then I wrote two implementations, one using hash/poll (like our old
code) and the other using the new Linux kernel change notify. It
should be easy to add other change notify implementations by creating
a sructure of the above type.
- fixed a bug in change notify where we were returning the wrong error
code.
- rewrote the core change notify code to be much simpler
- moved to real-time signals for leases and change notify
Amazingly, it all seems to work. I was very surprised!
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PLAINTEXT_AUTH_OBJ = passdb/pampass.o passdb/pass_check.o
This is my 'Authentication Rewrite' version 1.01, mostly as submitted to
samba-technical a few weeks ago.
The idea here is to standardize the checking of user names and passwords,
thereby ensuring that all authtentications pass the same standards. The
interface currently implemented in as
nt_status = check_password(user_info, server_info)
where user_info contains (mostly) the authentication data, and server_info
contains things like the user-id they got, and their resolved user name.
The current ugliness with the way the structures are created will be killed
the next revision, when they will be created and malloced by creator functions.
This patch also includes the first implementation of NTLMv2 in HEAD, but which
needs some more testing. We also add a hack to allow plaintext passwords to be
compared with smbpasswd, not the system password database.
Finally, this patch probably reintroduces the PAM accounts bug we had in
2.2.0, I'll fix that once this hits the tree. (I've just finished testing
it on a wide variety of platforms, so I want to get this patch in).
0001-01-01 02:30:17 +02:30
AUTH_OBJ = smbd/auth.o smbd/auth_smbpasswd.o smbd/auth_server.o smbd/auth_domain.o \
0001-01-01 02:30:17 +02:30
smbd/auth_rhosts.o smbd/auth_unix.o smbd/auth_util.o $( PLAINTEXT_AUTH_OBJ) \
libsmb/domain_client_validate.o
This is my 'Authentication Rewrite' version 1.01, mostly as submitted to
samba-technical a few weeks ago.
The idea here is to standardize the checking of user names and passwords,
thereby ensuring that all authtentications pass the same standards. The
interface currently implemented in as
nt_status = check_password(user_info, server_info)
where user_info contains (mostly) the authentication data, and server_info
contains things like the user-id they got, and their resolved user name.
The current ugliness with the way the structures are created will be killed
the next revision, when they will be created and malloced by creator functions.
This patch also includes the first implementation of NTLMv2 in HEAD, but which
needs some more testing. We also add a hack to allow plaintext passwords to be
compared with smbpasswd, not the system password database.
Finally, this patch probably reintroduces the PAM accounts bug we had in
2.2.0, I'll fix that once this hits the tree. (I've just finished testing
it on a wide variety of platforms, so I want to get this patch in).
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SMBD_OBJ1 = smbd/server.o smbd/files.o smbd/chgpasswd.o smbd/connection.o \
0001-01-01 02:30:17 +02:30
smbd/utmp.o smbd/session.o \
0001-01-01 02:30:17 +02:30
smbd/dfree.o smbd/dir.o smbd/password.o smbd/conn.o smbd/fileio.o \
0001-01-01 02:30:17 +02:30
smbd/ipc.o smbd/lanman.o smbd/mangle.o smbd/negprot.o \
totally rewrote the async signal, notification and oplock notification
handling in Samba. This was needed due to several limitations and
races in the previous code - as a side effect the new code is much
cleaner :)
in summary:
- changed sys_select() to avoid a signal/select race condition. It is a
rare race but once we have signals doing notification and oplocks it
is important.
- changed our main processing loop to take advantage of the new
sys_select semantics
- split the notify code into implementaion dependent and general
parts. Added the following structure that defines an implementation:
struct cnotify_fns {
void * (*register_notify)(connection_struct *conn, char *path, uint32 flags);
BOOL (*check_notify)(connection_struct *conn, uint16 vuid, char *path, uint32 flags, void *data, time_t t);
void (*remove_notify)(void *data);
};
then I wrote two implementations, one using hash/poll (like our old
code) and the other using the new Linux kernel change notify. It
should be easy to add other change notify implementations by creating
a sructure of the above type.
- fixed a bug in change notify where we were returning the wrong error
code.
- rewrote the core change notify code to be much simpler
- moved to real-time signals for leases and change notify
Amazingly, it all seems to work. I was very surprised!
0001-01-01 02:30:17 +02:30
smbd/message.o smbd/nttrans.o smbd/pipes.o \
0001-01-01 02:30:17 +02:30
smbd/reply.o smbd/trans2.o smbd/uid.o \
0001-01-01 02:30:17 +02:30
smbd/dosmode.o smbd/filename.o smbd/open.o smbd/close.o \
smbd/blocking.o smbd/sec_ctx.o \
0001-01-01 02:30:17 +02:30
smbd/vfs.o smbd/vfs-wrap.o smbd/statcache.o \
0001-01-01 02:30:17 +02:30
smbd/posix_acls.o \
0001-01-01 02:30:17 +02:30
smbd/process.o smbd/service.o smbd/error.o \
0001-01-01 02:30:17 +02:30
printing/printfsp.o lib/util_seaccess.o smbd/srvstr.o \
smbd/build_options.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PRINTING_OBJ = printing/pcap.o printing/print_svid.o \
printing/print_cups.o printing/print_generic.o \
printing/lpq_parse.o printing/load.o
PRINTBACKEND_OBJ = printing/printing.o printing/nt_printing.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
MSDFS_OBJ = msdfs/msdfs.o
0001-01-01 02:30:17 +02:30
SMBD_OBJ = $( SMBD_OBJ1) $( MSDFS_OBJ) $( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) \
0001-01-01 02:30:17 +02:30
$( RPC_SERVER_OBJ) $( RPC_CLIENT_OBJ) $( RPC_PARSE_OBJ) \
0001-01-01 02:30:17 +02:30
$( LOCKING_OBJ) $( PASSDB_OBJ) $( PRINTING_OBJ) $( PROFILE_OBJ) \
$( LIB_OBJ) $( PRINTBACKEND_OBJ) $( QUOTAOBJS) $( OPLOCK_OBJ) \
This is my 'Authentication Rewrite' version 1.01, mostly as submitted to
samba-technical a few weeks ago.
The idea here is to standardize the checking of user names and passwords,
thereby ensuring that all authtentications pass the same standards. The
interface currently implemented in as
nt_status = check_password(user_info, server_info)
where user_info contains (mostly) the authentication data, and server_info
contains things like the user-id they got, and their resolved user name.
The current ugliness with the way the structures are created will be killed
the next revision, when they will be created and malloced by creator functions.
This patch also includes the first implementation of NTLMv2 in HEAD, but which
needs some more testing. We also add a hack to allow plaintext passwords to be
compared with smbpasswd, not the system password database.
Finally, this patch probably reintroduces the PAM accounts bug we had in
2.2.0, I'll fix that once this hits the tree. (I've just finished testing
it on a wide variety of platforms, so I want to get this patch in).
0001-01-01 02:30:17 +02:30
$( NOTIFY_OBJ) $( GROUPDB_OBJ) $( AUTH_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
NMBD_OBJ1 = nmbd/asyncdns.o nmbd/nmbd.o nmbd/nmbd_become_dmb.o \
nmbd/nmbd_become_lmb.o nmbd/nmbd_browserdb.o \
nmbd/nmbd_browsesync.o nmbd/nmbd_elections.o \
nmbd/nmbd_incomingdgrams.o nmbd/nmbd_incomingrequests.o \
nmbd/nmbd_lmhosts.o nmbd/nmbd_logonnames.o nmbd/nmbd_mynames.o \
nmbd/nmbd_namelistdb.o nmbd/nmbd_namequery.o \
nmbd/nmbd_nameregister.o nmbd/nmbd_namerelease.o \
nmbd/nmbd_nodestatus.o nmbd/nmbd_packets.o \
nmbd/nmbd_processlogon.o nmbd/nmbd_responserecordsdb.o \
nmbd/nmbd_sendannounce.o nmbd/nmbd_serverlistdb.o \
nmbd/nmbd_subnetdb.o nmbd/nmbd_winsproxy.o nmbd/nmbd_winsserver.o \
0001-01-01 02:30:17 +02:30
nmbd/nmbd_workgroupdb.o nmbd/nmbd_synclists.o
0001-01-01 02:30:17 +02:30
NMBD_OBJ = $( NMBD_OBJ1) $( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) \
0001-01-01 02:30:17 +02:30
$( PROFILE_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SWAT_OBJ = web/cgi.o web/diagnose.o web/startstop.o web/statuspage.o \
0001-01-01 02:30:17 +02:30
web/swat.o web/neg_lang.o $( PRINTING_OBJ) $( LIBSMB_OBJ) $( LOCKING_OBJ) \
0001-01-01 02:30:17 +02:30
$( PARAM_OBJ) $( PASSDB_OBJ) $( RPC_CLIENT_OBJ) $( RPC_PARSE_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ) $( GROUPDB_OBJ) $( PLAINTEXT_AUTH_OBJ) \
smbwrapper/shared.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SMBSH_OBJ = smbwrapper/smbsh.o smbwrapper/shared.o \
0001-01-01 02:30:17 +02:30
$( PARAM_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
MAKE_PRINTERDEF_OBJ = utils/make_printerdef.o $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
STATUS_OBJ = utils/status.o $( LOCKING_OBJ) $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( PROFILE_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SMBCONTROL_OBJ = utils/smbcontrol.o $( LOCKING_OBJ) $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( PROFILE_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
SMBTREE_OBJ = utils/smbtree.o $( LOCKING_OBJ) $( PARAM_OBJ) \
$( UBIQX_OBJ) $( PROFILE_OBJ) $( LIB_OBJ) $( LIBSMB_OBJ)
0001-01-01 02:30:17 +02:30
TESTPARM_OBJ = utils/testparm.o \
0001-01-01 02:30:17 +02:30
$( PARAM_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
TESTPRNS_OBJ = utils/testprns.o $( PARAM_OBJ) $( PRINTING_OBJ) $( UBIQX_OBJ) \
0001-01-01 02:30:17 +02:30
$( LIB_OBJ)
0001-01-01 02:30:17 +02:30
SMBPASSWD_OBJ = utils/smbpasswd.o $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( LIBSMB_OBJ) $( PASSDB_OBJ) $( GROUPDB_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( RPC_CLIENT_OBJ) $( RPC_PARSE_OBJ) $( LIB_OBJ) \
0001-01-01 02:30:17 +02:30
libsmb/cli_lsarpc.o libsmb/cli_samr.o libsmb/cli_pipe_util.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PDBEDIT_OBJ = utils/pdbedit.o $( PARAM_OBJ) $( LIBSMB_OBJ) $( PASSDB_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ) $( GROUPDB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SMBGROUPEDIT_OBJ = utils/smbgroupedit.o $( GROUPDB_OBJ) $( PARAM_OBJ) \
$( LIBSMB_OBJ) $( PASSDB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
RPCCLIENT_OBJ1 = rpcclient/rpcclient.o rpcclient/cmd_lsarpc.o \
0001-01-01 02:30:17 +02:30
rpcclient/cmd_samr.o rpcclient/cmd_spoolss.o \
0001-01-01 02:30:17 +02:30
rpcclient/cmd_netlogon.o rpcclient/cmd_srvsvc.o \
0001-01-01 02:30:17 +02:30
rpcclient/cmd_dfs.o rpcclient/cmd_reg.o \
rpc_client/cli_login.o rpc_client/cli_netlogon.o
0001-01-01 02:30:17 +02:30
RPCCLIENT_OBJ = $( RPCCLIENT_OBJ1) \
0001-01-01 02:30:17 +02:30
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ) \
0001-01-01 02:30:17 +02:30
$( RPC_PARSE_OBJ) $( PASSDB_OBJ) $( LIBMSRPC_OBJ) \
0001-01-01 02:30:17 +02:30
$( READLINE_OBJ) $( GROUPDB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SAMSYNC_OBJ1 = rpcclient/samsync.o rpc_client/cli_netlogon.o
SAMSYNC_OBJ = $( SAMSYNC_OBJ1) \
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ) \
$( RPC_PARSE_OBJ) $( PASSDB_OBJ) $( LIBMSRPC_OBJ) \
$( GROUPDB_OBJ)
0001-01-01 02:30:17 +02:30
PAM_WINBIND_OBJ = nsswitch/pam_winbind.po nsswitch/wb_common.po
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SMBW_OBJ = smbwrapper/smbw.o \
0001-01-01 02:30:17 +02:30
smbwrapper/smbw_dir.o smbwrapper/smbw_stat.o \
0001-01-01 02:30:17 +02:30
smbwrapper/realcalls.o smbwrapper/shared.o \
0001-01-01 02:30:17 +02:30
smbwrapper/smbw_cache.o \
0001-01-01 02:30:17 +02:30
$( LIBSMB_OBJ) $( PARAM_OBJ) \
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
SMBWRAPPER_OBJ = $( SMBW_OBJ) smbwrapper/wrapped.o
0001-01-01 02:30:17 +02:30
LIBSMBCLIENT_OBJ = libsmb/libsmbclient.o $( LIB_OBJ) $( LIBSMB_OBJ) $( PARAM_OBJ) $( UBIQX_OBJ)
0001-01-01 02:30:17 +02:30
CLIENT_OBJ = client/client.o client/clitar.o \
0001-01-01 02:30:17 +02:30
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ) \
$( READLINE_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
CUPS_OBJ = client/smbspool.o $( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
MOUNT_OBJ = client/smbmount.o \
0001-01-01 02:30:17 +02:30
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
MNT_OBJ = client/smbmnt.o \
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
UMOUNT_OBJ = client/smbumount.o \
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
NMBLOOKUP_OBJ = utils/nmblookup.o $( PARAM_OBJ) $( UBIQX_OBJ) \
0001-01-01 02:30:17 +02:30
$( LIBSMB_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
SMBTORTURE_OBJ = torture/torture.o torture/nbio.o torture/scanner.o torture/utable.o \
0001-01-01 02:30:17 +02:30
torture/denytest.o \
$( LIBSMB_OBJ) $( PARAM_OBJ) $( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
MASKTEST_OBJ = torture/masktest.o $( LIBSMB_OBJ) $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
MSGTEST_OBJ = torture/msgtest.o $( LIBSMB_OBJ) $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
LOCKTEST_OBJ = torture/locktest.o $( LOCKING_OBJ) $( LIBSMB_OBJ) $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
LOCKTEST2_OBJ = torture/locktest2.o $( LOCKING_OBJ) $( LIBSMB_OBJ) $( PARAM_OBJ) \
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
SMBCACLS_OBJ = utils/smbcacls.o $( LOCKING_OBJ) $( LIBSMB_OBJ) $( PARAM_OBJ) \
0001-01-01 02:30:17 +02:30
$( UBIQX_OBJ) $( LIB_OBJ) $( RPC_PARSE_OBJ) $( PASSDB_OBJ) \
0001-01-01 02:30:17 +02:30
$( LIBMSRPC_OBJ) $( GROUPDB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
RPCTORTURE_OBJ = torture/rpctorture.o \
0001-01-01 02:30:17 +02:30
rpcclient/display.o \
rpcclient/cmd_lsarpc.o \
rpcclient/cmd_wkssvc.o \
rpcclient/cmd_samr.o \
rpcclient/cmd_srvsvc.o \
rpcclient/cmd_netlogon.o \
$( PARAM_OBJ) $( LIBSMB_OBJ) $( UBIQX_OBJ) $( LIB_OBJ) \
0001-01-01 02:30:17 +02:30
$( RPC_CLIENT_OBJ) $( RPC_PARSE_OBJ) $( PASSDB_OBJ)
DEBUG2HTML_OBJ = utils/debug2html.o ubiqx/debugparse.o
SMBFILTER_OBJ = utils/smbfilter.o $( LIBSMB_OBJ) $( PARAM_OBJ) \
$( UBIQX_OBJ) $( LIB_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PROTO_OBJ = $( SMBD_OBJ) $( NMBD_OBJ) $( SWAT_OBJ) $( CLIENT_OBJ) \
0001-01-01 02:30:17 +02:30
$( SMBWRAPPER_OBJ) $( SMBTORTURE_OBJ) $( RPCCLIENT_OBJ1) \
This is my 'Authentication Rewrite' version 1.01, mostly as submitted to
samba-technical a few weeks ago.
The idea here is to standardize the checking of user names and passwords,
thereby ensuring that all authtentications pass the same standards. The
interface currently implemented in as
nt_status = check_password(user_info, server_info)
where user_info contains (mostly) the authentication data, and server_info
contains things like the user-id they got, and their resolved user name.
The current ugliness with the way the structures are created will be killed
the next revision, when they will be created and malloced by creator functions.
This patch also includes the first implementation of NTLMv2 in HEAD, but which
needs some more testing. We also add a hack to allow plaintext passwords to be
compared with smbpasswd, not the system password database.
Finally, this patch probably reintroduces the PAM accounts bug we had in
2.2.0, I'll fix that once this hits the tree. (I've just finished testing
it on a wide variety of platforms, so I want to get this patch in).
0001-01-01 02:30:17 +02:30
$( LIBMSRPC_OBJ) $( RPC_CLIENT_OBJ) $( AUTH_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
NSS_OBJ_0 = nsswitch/wins.o $( PARAM_OBJ) $( UBIQX_OBJ) $( LIBSMB_OBJ) $( LIB_OBJ) $( NSSWINS_OBJ)
NSS_OBJ = $( NSS_OBJ_0:.o= .po)
0001-01-01 02:30:17 +02:30
PICOBJS = $( SMBWRAPPER_OBJ:.o= .po)
0001-01-01 02:30:17 +02:30
PICOBJS32 = $( SMBWRAPPER_OBJ:.o= .po32)
0001-01-01 02:30:17 +02:30
LIBSMBCLIENT_PICOBJS = $( LIBSMBCLIENT_OBJ:.o= .po)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
PAM_SMBPASS_OBJ_0 = pam_smbpass/pam_smb_auth.o pam_smbpass/pam_smb_passwd.o \
pam_smbpass/pam_smb_acct.o pam_smbpass/support.o \
lib/debug.o lib/util_sid.o lib/messages.o lib/util_str.o \
lib/wins_srv.o lib/substitute.o lib/select.o lib/util.o \
0001-01-01 02:30:17 +02:30
nsswitch/wb_client.o nsswitch/wb_common.o \
0001-01-01 02:30:17 +02:30
lib/system.o lib/util_file.o \
0001-01-01 02:30:17 +02:30
lib/genrand.o lib/username.o lib/charcnv.o lib/time.o \
lib/md4.o lib/util_unistr.o lib/signal.o lib/talloc.o \
0001-01-01 02:30:17 +02:30
lib/ms_fnmatch.o lib/util_sock.o lib/smbrun.o \
0001-01-01 02:30:17 +02:30
lib/util_sec.o \
ubiqx/ubi_sLinkList.o libsmb/smbencrypt.o libsmb/smbdes.o \
$( PARAM_OBJ) $( TDB_OBJ) $( PASSDB_OBJ)
PAM_SMBPASS_PICOOBJ = $( PAM_SMBPASS_OBJ_0:.o= .po)
0001-01-01 02:30:17 +02:30
NSS_OBJ_0 = nsswitch/wins.o $( PARAM_OBJ) $( UBIQX_OBJ) $( LIBSMB_OBJ) $( LIB_OBJ) $( NSSWINS_OBJ)
NSS_OBJ = $( NSS_OBJ_0:.o= .po)
0001-01-01 02:30:17 +02:30
WINBINDD_OBJ1 = \
nsswitch/winbindd.o \
nsswitch/winbindd_user.o \
nsswitch/winbindd_group.o \
nsswitch/winbindd_idmap.o \
nsswitch/winbindd_util.o \
nsswitch/winbindd_cache.o \
0001-01-01 02:30:17 +02:30
nsswitch/winbindd_pam.o \
nsswitch/winbindd_sid.o \
0001-01-01 02:30:17 +02:30
nsswitch/winbindd_misc.o \
nsswitch/winbindd_cm.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
NECESSARY_BECAUSE_SAMBA_DEPENDENCIES_ARE_SO_BROKEN_OBJ = \
0001-01-01 02:30:17 +02:30
libsmb/domain_client_validate.o \
This is my 'Authentication Rewrite' version 1.01, mostly as submitted to
samba-technical a few weeks ago.
The idea here is to standardize the checking of user names and passwords,
thereby ensuring that all authtentications pass the same standards. The
interface currently implemented in as
nt_status = check_password(user_info, server_info)
where user_info contains (mostly) the authentication data, and server_info
contains things like the user-id they got, and their resolved user name.
The current ugliness with the way the structures are created will be killed
the next revision, when they will be created and malloced by creator functions.
This patch also includes the first implementation of NTLMv2 in HEAD, but which
needs some more testing. We also add a hack to allow plaintext passwords to be
compared with smbpasswd, not the system password database.
Finally, this patch probably reintroduces the PAM accounts bug we had in
2.2.0, I'll fix that once this hits the tree. (I've just finished testing
it on a wide variety of platforms, so I want to get this patch in).
0001-01-01 02:30:17 +02:30
rpc_client/cli_netlogon.o rpc_client/cli_login.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
WINBINDD_OBJ = \
0001-01-01 02:30:17 +02:30
$( WINBINDD_OBJ1) $( NOPROTO_OBJ) $( PASSDB_OBJ) \
0001-01-01 02:30:17 +02:30
$( LIBNMB_OBJ) $( PARAM_OBJ) $( UBIQX_OBJ) $( LIB_OBJ) \
0001-01-01 02:30:17 +02:30
$( LIBSMB_OBJ) $( LIBMSRPC_OBJ) $( RPC_PARSE_OBJ) \
0001-01-01 02:30:17 +02:30
$( GROUPDB_OBJ) $( PROFILE_OBJ) \
0001-01-01 02:30:17 +02:30
$( NECESSARY_BECAUSE_SAMBA_DEPENDENCIES_ARE_SO_BROKEN_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
WBINFO_OBJ = nsswitch/wbinfo.o libsmb/smbencrypt.o libsmb/smbdes.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
WINBIND_NSS_OBJ = nsswitch/winbind_nss.o nsswitch/wb_common.o
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
WINBIND_NSS_PICOBJS = $( WINBIND_NSS_OBJ:.o= .po)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
######################################################################
# now the rules...
######################################################################
0001-01-01 02:30:17 +02:30
all : CHECK include /proto .h $( SPROGS ) $( PROGS ) $( SHLIBS ) nsswitch
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
pam_smbpass : CHECK bin /pam_smbpass .@SHLIBEXT @
0001-01-01 02:30:17 +02:30
smbwrapper : CHECK bin /smbsh bin /smbwrapper .@SHLIBEXT @ @WRAP 32@
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
torture : CHECK $( TORTURE_PROGS )
0001-01-01 02:30:17 +02:30
smbtorture : CHECK bin /smbtorture
0001-01-01 02:30:17 +02:30
masktest : CHECK bin /masktest
0001-01-01 02:30:17 +02:30
msgtest : CHECK bin /msgtest
0001-01-01 02:30:17 +02:30
locktest : CHECK bin /locktest
0001-01-01 02:30:17 +02:30
smbcacls : CHECK bin /smbcacls
0001-01-01 02:30:17 +02:30
locktest2 : CHECK bin /locktest 2
0001-01-01 02:30:17 +02:30
rpctorture : CHECK bin /rpctorture
0001-01-01 02:30:17 +02:30
debug2html : CHECK bin /debug 2html
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
smbfilter : CHECK bin /smbfilter
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
nsswitch : CHECK @WINBIND_TARGETS @ @WINBIND_STARGETS @ @WINBIND_LTARGETS @
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
.SUFFIXES :
0001-01-01 02:30:17 +02:30
.SUFFIXES : .c .o .po .po 32 .lo
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
CHECK :
@echo " Using FLAGS = $( FLAGS) "
0001-01-01 02:30:17 +02:30
@echo " Using FLAGS32 = $( FLAGS32) "
0001-01-01 02:30:17 +02:30
@echo " Using LIBS = $( LIBS) "
0001-01-01 02:30:17 +02:30
MAKEDIR = || exec false; \
if test -d " $$ dir " ; then :; else \
echo mkdir " $$ dir " ; \
mkdir -p " $$ dir " >/dev/null 2>& 1 || \
test -d " $$ dir " || \
mkdir " $$ dir " || \
exec false; fi || exec false
0001-01-01 02:30:17 +02:30
.c.o :
0001-01-01 02:30:17 +02:30
@if ( : >> $@ || : > $@ ) >/dev/null 2>& 1; then rm -f $@ ; else \
0001-01-01 02:30:17 +02:30
dir = ` echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,' ` $( MAKEDIR) ; fi
0001-01-01 02:30:17 +02:30
@echo Compiling $* .c
0001-01-01 02:30:17 +02:30
@$( CC) -I. -I$( srcdir) $( FLAGS) -c $< \
0001-01-01 02:30:17 +02:30
-o $@
0001-01-01 02:30:17 +02:30
@ B R O K E N _ C C @ - m v ` e c h o $@ | s e d 's%^.*/%%g' ` $@
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
.c.po :
0001-01-01 02:30:17 +02:30
@if ( : >> $@ || : > $@ ) >/dev/null 2>& 1; then rm -f $@ ; else \
0001-01-01 02:30:17 +02:30
dir = ` echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,' ` $( MAKEDIR) ; fi
0001-01-01 02:30:17 +02:30
@echo Compiling $* .c with @PICFLAG@
0001-01-01 02:30:17 +02:30
@$( CC) -I. -I$( srcdir) $( FLAGS) @PICFLAG@ -c $< -o $* .@PICSUFFIX@
@ B R O K E N _ C C @ - m v ` e c h o $@ | s e d - e 's%^.*/%%g' - e 's%\.po$$%.o%' ` $@
0001-01-01 02:30:17 +02:30
@ P O B A D _ C C @ @ m v $* . p o . o $@
0001-01-01 02:30:17 +02:30
# this is for IRIX
0001-01-01 02:30:17 +02:30
.c.po32 :
0001-01-01 02:30:17 +02:30
@if ( : >> $@ || : > $@ ) >/dev/null 2>& 1; then rm -f $@ ; else \
dir = ` echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,' ` $( MAKEDIR) ; fi
0001-01-01 02:30:17 +02:30
@echo Compiling $* .c with @PICFLAG@ and -32
0001-01-01 02:30:17 +02:30
@$( CC) -32 -I. -I$( srcdir) $( FLAGS32) @PICFLAG@ -c $< \
0001-01-01 02:30:17 +02:30
-o $* .po32.o
0001-01-01 02:30:17 +02:30
@ B R O K E N _ C C @ - m v ` e c h o $@ | s e d - e 's%^.*/%%g' - e 's%\.po32$$%.o%' ` $@ . o
0001-01-01 02:30:17 +02:30
@mv $* .po32.o $@
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/.dummy :
0001-01-01 02:30:17 +02:30
@if ( : >> $@ || : > $@ ) >/dev/null 2>& 1; then :; else \
0001-01-01 02:30:17 +02:30
dir = bin $( MAKEDIR) ; fi
0001-01-01 02:30:17 +02:30
@: >> $@ || : > $@ # what a fancy emoticon!
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbd : $( SMBD_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( SMBD_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/nmbd : $( NMBD_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( NMBD_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/swat : $( SWAT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( SWAT_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/rpcclient : $( RPCCLIENT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( RPCCLIENT_OBJ) $( LDFLAGS) $( TERMLDFLAGS) $( TERMLIBS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/samsync : $( SAMSYNC_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SAMSYNC_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbclient : $( CLIENT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( CLIENT_OBJ) $( LDFLAGS) $( TERMLDFLAGS) $( TERMLIBS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbspool : $( CUPS_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( CUPS_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbmount : $( MOUNT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( MOUNT_OBJ) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbmnt : $( MNT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( MNT_OBJ) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbumount : $( UMOUNT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( UMOUNT_OBJ) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/testparm : $( TESTPARM_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( TESTPARM_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/testprns : $( TESTPRNS_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( TESTPRNS_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbstatus : $( STATUS_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( STATUS_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbcontrol : $( SMBCONTROL_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( SMBCONTROL_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbtree : $( SMBTREE_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SMBTREE_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbpasswd : $( SMBPASSWD_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( SMBPASSWD_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/pdbedit : $( PDBEDIT_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( PDBEDIT_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbgroupedit : $( SMBGROUPEDIT_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SMBGROUPEDIT_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/nmblookup : $( NMBLOOKUP_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( NMBLOOKUP_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/make_printerdef : $( MAKE_PRINTERDEF_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( MAKE_PRINTERDEF_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbtorture : $( SMBTORTURE_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( SMBTORTURE_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/masktest : $( MASKTEST_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( MASKTEST_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/msgtest : $( MSGTEST_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( MSGTEST_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbcacls : $( SMBCACLS_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SMBCACLS_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/locktest : $( LOCKTEST_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( LOCKTEST_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/locktest2 : $( LOCKTEST 2_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( LOCKTEST2_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/rpctorture : $( RPCTORTURE_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( RPCTORTURE_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/debug2html : $( DEBUG 2HTML_OBJ ) bin /.dummy
0001-01-01 02:30:17 +02:30
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( CC) $( FLAGS) -o $@ $( DEBUG2HTML_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbfilter : $( SMBFILTER_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SMBFILTER_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbw_sample : $( SMBW_OBJ ) utils /smbw_sample .o bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SMBW_OBJ) utils/smbw_sample.o $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbwrapper.@SHLIBEXT@ : $( PICOBJS )
0001-01-01 02:30:17 +02:30
@echo Linking shared library $@
0001-01-01 02:30:17 +02:30
@$( LD) @LDSHFLAGS@ -o $@ $( PICOBJS) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/smbwrapper.32.@SHLIBEXT@ : $( PICOBJS 32)
0001-01-01 02:30:17 +02:30
@echo Linking shared library $@
@$( LD) -32 @LDSHFLAGS@ -o $@ $( PICOBJS32) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/libsmbclient.@SHLIBEXT@ : $( LIBSMBCLIENT_PICOBJS )
echo Linking libsmbclient shared library $@
$( SHLD) @LDSHFLAGS@ -o $@ $( LIBSMBCLIENT_PICOBJS) $( LIBS)
bin/libsmbclient.a : $( LIBSMBCLIENT_PICOBJS )
@echo Linking libsmbclient non-shared library $@
-$( AR) -rc $@ $( LIBSMBCLIENT_PICOBJS)
libsmbclient : bin /libsmbclient .a @LIBSMBCLIENT_SHARED @
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/smbsh : $( SMBSH_OBJ ) bin /.dummy
@echo Linking $@
@$( CC) $( FLAGS) -o $@ $( SMBSH_OBJ) $( LDFLAGS) $( LIBS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
nsswitch/libnss_wins.so : $( NSS_OBJ )
@echo " Linking $@ "
0001-01-01 02:30:17 +02:30
@$( LD) @LDSHFLAGS@ -o $@ $( NSS_OBJ) -lc
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/winbindd : $( WINBINDD_OBJ ) bin /.dummy
@echo Linking $@
@$( LINK) -o $@ $( WINBINDD_OBJ) $( LIBS)
0001-01-01 02:30:17 +02:30
nsswitch/libnss_winbind.so : $( WINBIND_NSS_PICOBJS )
0001-01-01 02:30:17 +02:30
@echo " Linking $@ "
0001-01-01 02:30:17 +02:30
@$( LINK) @LDSHFLAGS@ -o $@ $( WINBIND_NSS_PICOBJS)
0001-01-01 02:30:17 +02:30
nsswitch/pam_winbind.so : $( PAM_WINBIND_OBJ ) bin /.dummy
@echo Linking $@
0001-01-01 02:30:17 +02:30
@$( LINK) @LDSHFLAGS@ -o $@ $( PAM_WINBIND_OBJ)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
bin/wbinfo : $( WBINFO_OBJ ) $( PARAM_OBJ ) $( LIB_OBJ ) $( NOPROTO_OBJ ) $( UBIQX_OBJ ) bin /.dummy
@echo Linking $@
@$( LINK) -o $@ $( WBINFO_OBJ) $( PARAM_OBJ) $( LIB_OBJ) $( NOPROTO_OBJ) \
$( UBIQX_OBJ) $( LIBS)
0001-01-01 02:30:17 +02:30
bin/pam_smbpass.@SHLIBEXT@ : $( PAM_SMBPASS_PICOOBJ )
@echo " Linking shared library $@ "
$( LD) @LDSHFLAGS@ -symbolic -o $@ $( PAM_SMBPASS_PICOOBJ) -lpam $( LIBS) -lc
0001-01-01 02:30:17 +02:30
install : installbin installman installscripts installswat
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
installdirs :
0001-01-01 02:30:17 +02:30
-$( SHELL) $( srcdir) /install-sh -d -m $( INSTALLPERMS) \
0001-01-01 02:30:17 +02:30
$( BASEDIR) $( SBINDIR) $( BINDIR) $( LIBDIR) $( VARDIR)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
installservers : all installdirs
@$( SHELL) $( srcdir) /script/installbin.sh $( INSTALLPERMS) $( BASEDIR) $( SBINDIR) $( LIBDIR) $( VARDIR) $( SPROGS)
0001-01-01 02:30:17 +02:30
installbin : all installdirs
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/installbin.sh $( INSTALLPERMS) $( BASEDIR) $( SBINDIR) $( LIBDIR) $( VARDIR) $( SPROGS)
@$( SHELL) $( srcdir) /script/installbin.sh $( INSTALLPERMS) $( BASEDIR) $( BINDIR) $( LIBDIR) $( VARDIR) $( PROGS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
installscripts : installdirs
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/installscripts.sh $( INSTALLPERMS) $( BINDIR) $( SCRIPTS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
installswat : installdirs
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/installswat.sh $( SWATDIR) $( srcdir) \
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
installclientlib :
0001-01-01 02:30:17 +02:30
-$( INSTALLCMD) bin/libsmbclient.so $( LIBDIR)
-$( INSTALLCMD) -d ${ prefix } /include
-$( INSTALLCMD) include/libsmbclient.h ${ prefix } /include
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
# revert to the previously installed version
revert :
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/revert.sh $( SBINDIR) $( SPROGS)
@$( SHELL) $( srcdir) /script/revert.sh $( BINDIR) $( PROGS) $( SCRIPTS)
0001-01-01 02:30:17 +02:30
installman :
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/installman.sh $( MANDIR) $( srcdir) $( man_langs) "@ROFF@"
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
uninstall : uninstallman uninstallbin uninstallscripts
0001-01-01 02:30:17 +02:30
uninstallman :
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/uninstallman.sh $( MANDIR) $( srcdir) $( man_langs)
0001-01-01 02:30:17 +02:30
uninstallbin :
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/uninstallbin.sh $( INSTALLPERMS) $( BASEDIR) $( SBINDIR) $( LIBDIR) $( VARDIR) $( SPROGS)
@$( SHELL) $( srcdir) /script/uninstallbin.sh $( INSTALLPERMS) $( BASEDIR) $( BINDIR) $( LIBDIR) $( VARDIR) $( PROGS)
0001-01-01 02:30:17 +02:30
uninstallscripts :
0001-01-01 02:30:17 +02:30
@$( SHELL) $( srcdir) /script/uninstallscripts.sh $( INSTALLPERMS) $( BINDIR) $( SCRIPTS)
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
clean :
0001-01-01 02:30:17 +02:30
-rm -f core */*~ *~ */*.o */*.po */*.po32 */*.@SHLIBEXT@ $( PROGS) $( SPROGS) include/build_env.h
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
winbindd_proto :
@cd $( srcdir) && $( SHELL) script/mkproto.sh $( AWK) \
-h _WINBINDD_PROTO_H_ nsswitch/winbindd_proto.h \
$( WINBINDD_OBJ1)
0001-01-01 02:30:17 +02:30
delheaders :
@/bin/rm -f $( srcdir) /include/proto.h $( srcdir) /include/build_env.h
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
# we want our generated headers to be rebuilt if they don't exist, but not rebuilt every time
.headers.stamp : include /proto .h include /build_env .h
0001-01-01 02:30:17 +02:30
@[ -f $@ ] || touch $@
0001-01-01 02:30:17 +02:30
$(PROTO_OBJ) : .headers .stamp
0001-01-01 02:30:17 +02:30
include/proto.h :
0001-01-01 02:30:17 +02:30
@echo rebuilding include/proto.h
0001-01-01 02:30:17 +02:30
@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
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
include/build_env.h :
@echo rebuilding include/build_env.h
@cd $( srcdir) && $( SHELL) script/build_env.sh $( srcdir) $( builddir) $( CC) > include/build_env.h
0001-01-01 02:30:17 +02:30
headers : delheaders include /proto .h include /build_env .h
proto : headers
0001-01-01 02:30:17 +02:30
etags :
0001-01-01 02:30:17 +02:30
etags ` find $( srcdir) -name "*.[ch]" | grep -v /CVS/`
0001-01-01 02:30:17 +02:30
ctags :
0001-01-01 02:30:17 +02:30
ctags ` find $( srcdir) -name "*.[ch]" | grep -v /CVS/`
0001-01-01 02:30:17 +02:30
realclean : clean
0001-01-01 02:30:17 +02:30
-rm -f config.log $( PROGS) $( SPROGS) bin/.dummy
0001-01-01 02:30:17 +02:30
-rmdir bin
0001-01-01 02:30:17 +02:30
distclean : realclean
0001-01-01 02:30:17 +02:30
-rm -f include/config.h Makefile
0001-01-01 02:30:17 +02:30
-rm -f config.status config.cache so_locations
0001-01-01 02:30:17 +02:30
-rm -rf .deps
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
#
# This target is for documenation updators. It regenerates
# the man pages and HTML docs from the YODL source files.
# In order for this target to work YODL must be installed
# and working on your system. JRA.
yodldocs :
@$( SHELL) $( srcdir) /script/makeyodldocs.sh $( srcdir)
0001-01-01 02:30:17 +02:30
# this target is really just for my use. It only works on a limited
# range of machines and is used to produce a list of potentially
# dead (ie. unused) functions in the code. (tridge)
finddead :
nm */*.o | grep 'U ' | awk '{print $$2}' | sort -u > nmused.txt
nm */*.o | grep 'T ' | awk '{print $$3}' | sort -u > nmfns.txt
comm -13 nmused.txt nmfns.txt
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
# when configure.in is updated, reconfigure
0001-01-01 02:30:17 +02:30
$(srcdir)/configure : $( srcdir ) /configure .in
@echo "WARNING: you need to rerun autoconf"
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
config.status : $( srcdir ) /configure
0001-01-01 02:30:17 +02:30
@echo "WARNING: you need to run configure"
0001-01-01 02:30:17 +02:30
0001-01-01 02:30:17 +02:30
Makefile : $( srcdir ) /Makefile .in config .status
0001-01-01 02:30:17 +02:30
@echo "WARNING: you need to run ./config.status"
0001-01-01 02:30:17 +02:30