1# 2# This Makefile is designed to work on the old "make" program. It does 3# not use the obj subdirectory. It also does not install documentation 4# automatically -- think of it as a quick start for sites that have the 5# old make program (I recommend that you get and port the new make if you 6# are going to be doing any signficant work on sendmail). 7# 8# This is based on work from Jim Oldroyd -- I believe he was 9# using a fairly old Mt Xinu port. 10# 11# It should also work on UMIPS-BSD from MIPS, if you still have 12# any lying around. 13# 14# @(#)Makefile.BSD43 8.4 (Berkeley) 07/23/94 15# 16 17# use O=-O (usual) or O=-g (debugging) 18O= -O 19 20# define the database mechanism used for alias lookups: 21# -DNDBM -- use new DBM 22# -DNEWDB -- use new Berkeley DB 23# -DNIS -- include NIS support 24# The really old (V7) DBM library is no longer supported. 25# See READ_ME for a description of how these flags interact. 26# 27DBMDEF= -DNDBM 28 29# environment definitions (e.g., -D_AIX3) 30ENVDEF= -DoldBSD43 31 32# see also conf.h for additional compilation flags 33 34# include directories 35#INCDIRS=-I/usr/sww/include/db 36 37# library directories 38#LIBDIRS=-L/usr/sww/lib 39 40# libraries required on your system 41LIBS= -ldbm -lresolv -ll 42 43# location of sendmail binary (usually /usr/sbin or /usr/lib) 44BINDIR= ${DESTDIR}/usr/lib 45 46# location of sendmail.st file (usually /var/log or /usr/lib) 47STDIR= ${DESTDIR}/usr/lib 48 49# location of sendmail.hf file (usually /usr/share/misc or /usr/lib) 50HFDIR= ${DESTDIR}/usr/lib 51 52# additional .o files needed 53OBJADD= 54 55# additional pseudo-sources needed 56BEFORE= unistd.h stddef.h stdlib.h dirent.h sys/time.h 57 58################### end of user configuration flags ###################### 59 60CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} 61 62OBJS= alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \ 63 deliver.o domain.o envelope.o err.o headers.o macro.o main.o \ 64 map.o mci.o mime.o parseaddr.o queue.o readcf.o recipient.o \ 65 savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ 66 trace.o udb.o usersmtp.o util.o version.o ${OBJADD} 67 68LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq 69BINOWN= root 70BINGRP= kmem 71BINMODE=6555 72 73ALL= sendmail aliases.0 mailq.0 newaliases.0 sendmail.0 74 75all: ${ALL} 76 77sendmail: ${BEFORE} ${OBJS} 78 ${CC} -o sendmail ${OBJS} ${LIBDIRS} ${LIBS} 79 80unistd.h stddef.h stdlib.h sys/time.h: 81 cp /dev/null $@ 82 83sys/time.h: sys 84 85sys: 86 mkdir sys 87 88dirent.h: 89 echo "#include <sys/dir.h>" > dirent.h 90 echo "#define dirent direct" >> dirent.h 91 92NROFF= nroff -h 93 94aliases.0: aliases.5 95 ${NROFF} -mandoc aliases.5 > aliases.0 96 97mailq.0: mailq.1 98 ${NROFF} -mandoc mailq.1 > mailq.0 99 100newaliases.0: newaliases.1 101 ${NROFF} -mandoc newaliases.1 > newaliases.0 102 103sendmail.0: sendmail.8 104 ${NROFF} -mandoc sendmail.8 > sendmail.0 105 106install: install-sendmail install-docs 107 108install-sendmail: sendmail 109 install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} 110 for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done 111 install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ 112 ${STDIR}/sendmail.st 113 install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} 114 115# doesn't actually install them -- you may want to install pre-nroff versions 116install-docs: aliases.0 mailq.0 newaliases.0 sendmail.0 117 118clean: 119 rm -f ${OBJS} sendmail aliases.0 mailq.0 newaliases.0 sendmail.0 120 121# dependencies 122# gross overkill, and yet still not quite enough.... 123${OBJS}: sendmail.h conf.h 124