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 has been tested on DomainOS 10.3.5
9#
10#	@(#)Makefile.DomainOS	8.7 (Berkeley) 04/10/95
11#
12#
13
14# use O=-O (usual) or O=-g (debugging)
15O=	-O
16
17# define the database mechanisms available for map & alias lookups:
18#	-DNDBM -- use new DBM
19#	-DNEWDB -- use new Berkeley DB
20#	-DNDBM -DNEWDB -DYPCOMPAT -- use both plus YP compatility
21#	-DNIS -- include client NIS support
22# The really old (V7) DBM library is no longer supported.
23# If YPCOMPAT is defined and /var/yp/Makefile exists, sendmail will build
24#   both the NEWDB and DBM libraries (the DBM just for YP).
25#
26
27DBMDEF=	-DNDBM
28
29# environment definitions (e.g., -D_AIX3)
30ENVDEF=
31
32# see also conf.h for additional compilation flags
33
34# include directories
35INCDIRS=
36
37# loader options
38LDOPTS=
39
40# library directories
41LIBDIRS=
42
43# libraries required on your system
44# You might want to use the BIND 4.9 resolver library here
45#LIBS=	-ldb -ldbm
46LIBS=	-ldbm -lresolv
47
48# location of sendmail binary (usually /usr/sbin or /usr/lib)
49BINDIR=	${DESTDIR}/usr/lib
50
51# location of sendmail.st file (usually /var/log or /usr/lib)
52STDIR=	${DESTDIR}/usr/lib
53
54# location of sendmail.hf file (usually /usr/share/misc or /usr/lib)
55HFDIR=	${DESTDIR}/usr/lib
56
57# additional .o files needed
58OBJADD=
59
60# additional pseudo-sources needed
61BEFORE=	unistd.h dirent.h
62
63###################  end of user configuration flags  ######################
64
65CFLAGS=	-I. -A nansi $O ${INCDIRS} ${DBMDEF} ${ENVDEF}
66
67OBJS=	alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \
68	deliver.o domain.o envelope.o err.o headers.o macro.o main.o \
69	map.o mci.o mime.o parseaddr.o queue.o readcf.o recipient.o \
70	savemail.o srvrsmtp.o stab.o stats.o sysexits.o \
71	trace.o udb.o usersmtp.o util.o version.o ${OBJADD}
72
73LINKS=	${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq
74BINOWN=	root
75BINGRP=	kmem
76BINMODE=6555
77
78ALL=	sendmail aliases.0 mailq.0 newaliases.0 sendmail.0
79
80all: ${ALL}
81
82sendmail: ${BEFORE} ${OBJS}
83	${CC} -o sendmail ${LDOPTS} ${OBJS} ${LIBDIRS} ${LIBS}
84
85unistd.h:
86	cp /dev/null unistd.h
87
88dirent.h:
89	echo "#include <sys/dir.h>" > dirent.h
90	echo "#define dirent	direct" >> dirent.h
91
92#NROFF=	nroff -h
93NROFF=	groff -Tascii
94MANDOC=	-mandoc
95
96aliases.0: aliases.5
97	${NROFF} ${MANDOC} aliases.5 > aliases.0
98
99mailq.0: mailq.1
100	${NROFF} ${MANDOC} mailq.1 > mailq.0
101
102newaliases.0: newaliases.1
103	${NROFF} ${MANDOC} newaliases.1 > newaliases.0
104
105sendmail.0: sendmail.8
106	${NROFF} ${MANDOC} sendmail.8 > sendmail.0
107
108install: install-sendmail install-docs
109
110install-sendmail: sendmail
111	install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR}
112	for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done
113	install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \
114	    ${STDIR}/sendmail.st
115	install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR}
116
117# doesn't actually install them -- you may want to install pre-nroff versions
118install-docs: aliases.0 mailq.0 newaliases.0 sendmail.0
119
120clean:
121	rm -f ${OBJS} sendmail aliases.0 mailq.0 newaliases.0 sendmail.0
122
123# dependencies
124#   gross overkill, and yet still not quite enough....
125${OBJS}: sendmail.h conf.h
126