# Copyright (C) 1999 Beau Kuiper # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ # **** TRY TO LEAVE EVERYTHING BELOW HERE ALONE! include ../Makefile.defs prefix= exec_prefix=${prefix} # where the binary is stored BINDIR=${exec_prefix}/bin SRC = acl.c auth.c authanon.c authdisable.c authint.c authpam.c authunix.c \ bufread.c cfloader.c checkip.c cmd.c config.c datasock.c dir.c file.c \ ftp.c ftplist.c ftpout.c ftpsite.c ftpstat.c ftpstate.c ftptrans.c \ init.c logger.c main.c myglob.c newfile.c procnum.c proxy.c ratio.c \ select.c shmem.c socket.c string.c utils.c version.c \ util/pwgrent.c util/snprintf.c util/strerror.c WHOSRC = ftpwho.c util/strerror.c utils.c string.c config.c newfile.c \ version.c util/snprintf.c util/pwgrent.c MUDPASSWDSRC = mudpasswd.c util/strerror.c version.c util/snprintf.c RATIOTOOLSRC = ratiotool.c util/strerror.c version.c utils.c util/snprintf.c \ util/pwgrent.c MUDLOGDSRC = mudlogd.c util/strerror.c util/snprintf.c util/pwgrent.c \ config.c utils.c newfile.c version.c string.c ifdef NEWMALLOC SRC += malloc.c WHOSRC += malloc.c MUDPASSWDSRC += malloc.c RATIOTOOLSRC += malloc.c endif # Build a debug version (NOT RECOMMENDED FOR REAL USE) #DEBUG = 1 # these flags are needed regardless of if DEBUG is used CC=cc DEFS=-DHAVE_CONFIG_H -D$(shell uname) LIBS=-lpam CFLAGSSHD:=$(DEFS) -fno-common # Set for debugging mode ifdef DEBUG CFLAGS=$(DEFS) -g -Wall -Wshadow -Wpointer-arith -Waggregate-return -Wstrict-prototypes -DDEBUG #-Werror # else set for optimising output code else CFLAGS=$(CFLAGSSHD) endif OBJ = $(SRC:.c=.o) WHOOBJ = $(WHOSRC:.c=.o) MUDPASSWDOBJ = $(MUDPASSWDSRC:.c=.o) RATIOTOOLOBJ = $(RATIOTOOLSRC:.c=.o) MUDLOGDOBJ = $(MUDLOGDSRC:.c=.o) TARGETS = $(MUDOUTPROG) $(WHOPROG) $(MUDPASSWDPROG) $(RATIOTOOLPROG) \ $(MUDLOGD) all: $(TARGETS) # always force rebuilding of version.c, so it always has the current # date .PHONY : version.o version.o: $(CC) $(CFLAGS) -DDATESTR="\"$(shell date)\"" -c $(@:.o=.c) -o $@ $(WHOPROG): $(WHOOBJ) $(CC) $(CFLAGS) $(LIBS) -o $(WHOPROG) $(WHOOBJ) $(MUDPASSWDPROG): $(MUDPASSWDOBJ) $(CC) $(CFLAGS) $(LIBS) -o $(MUDPASSWDPROG) $(MUDPASSWDOBJ) $(RATIOTOOLPROG): $(RATIOTOOLOBJ) $(CC) $(CFLAGS) $(LIBS) -o $(RATIOTOOLPROG) $(RATIOTOOLOBJ) $(MUDOUTPROG): $(OBJ) $(CC) $(CFLAGS) $(LIBS) -o $(MUDOUTPROG) $(OBJ) $(MUDLOGD): $(MUDLOGDOBJ) $(CC) $(CFLAGS) $(LIBS) -o $(MUDLOGD) $(MUDLOGDOBJ) install: all mkdir -p $(BINDIR) install $(MUDOUTPROG) -m 755 $(BINDIR) install $(WHOPROG) -m 755 $(BINDIR) install $(MUDPASSWDPROG) -m 755 $(BINDIR) install $(MUDLOGD) -m 755 $(BINDIR) clean: rm -f $(MUDOUTPROG) $(WHOPROG) *.o *~ core DEADJOE util/*.o rm -f $(MUDPASSWDPROG) $(RATIOTOOLPROG) $(MUDLOGD) distclean: clean rm -f Makefile maintainer-clean: distclean