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 Solaris 2.1 and 2.2. If you are compiling 9# for Solaris 2.3, use Makefile.SunOS.5.x. 10# 11# @(#)Makefile.Solaris 8.6 (Berkeley) 05/20/94 12# 13 14# use O=-O (usual) or O=-g (debugging) 15# warning: do not use -O with gcc 16O= 17 18CC= gcc 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 -DNIS 28 29# environment definitions (e.g., -D_AIX3) 30# include -DSOLARIS_2_3 for version 2.3 and higher 31ENVDEF= -DSOLARIS 32 33# see also conf.h for additional compilation flags 34 35# include directories 36INCDIRS=-I/usr/sww/include/db 37 38# library directories 39LIBDIRS=-L/usr/sww/lib 40 41# libraries required on your system 42LIBS= -lresolv -lsocket -lnsl -lelf 43 44# location of sendmail binary (usually /usr/sbin or /usr/lib) 45BINDIR= ${DESTDIR}/usr/lib 46 47# location of sendmail.st file (usually /var/log or /usr/lib) 48STDIR= ${DESTDIR}/var/log 49 50# location of sendmail.hf file (usually /usr/share/misc or /usr/lib) 51HFDIR= ${DESTDIR}/etc/mail 52 53# additional .o files needed 54OBJADD= 55 56# things to be made before compilation begins 57BEFORE= sysexits.h 58 59################### end of user configuration flags ###################### 60 61CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} 62 63OBJS= alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \ 64 deliver.o domain.o envelope.o err.o headers.o macro.o main.o \ 65 map.o mci.o parseaddr.o queue.o readcf.o recipient.o \ 66 savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ 67 trace.o udb.o usersmtp.o util.o version.o ${OBJADD} 68 69LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq 70BINOWN= root 71BINGRP= sys 72BINMODE=6555 73INSTALL=/usr/ucb/install 74 75ALL= sendmail aliases.0 mailq.0 newaliases.0 sendmail.0 76 77all: ${ALL} 78 79sendmail: ${BEFORE} ${OBJS} 80 ${CC} -o sendmail ${OBJS} ${LIBDIRS} ${LIBS} 81 82sysexits.h: /usr/ucbinclude/sysexits.h 83 ln -s /usr/ucbinclude/sysexits.h 84 85NROFF= nroff -h 86 87aliases.0: aliases.5 88 ${NROFF} -mandoc aliases.5 > aliases.0 89 90mailq.0: mailq.1 91 ${NROFF} -mandoc mailq.1 > mailq.0 92 93newaliases.0: newaliases.1 94 ${NROFF} -mandoc newaliases.1 > newaliases.0 95 96sendmail.0: sendmail.8 97 ${NROFF} -mandoc sendmail.8 > sendmail.0 98 99install: install-sendmail install-docs 100 101install-sendmail: sendmail 102 ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} 103 for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done 104 ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ 105 ${STDIR}/sendmail.st 106 ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} 107 108# doesn't actually install them -- you may want to install pre-nroff versions 109install-docs: aliases.0 mailq.0 newaliases.0 sendmail.0 110 111clean: 112 rm -f ${OBJS} sendmail aliases.0 mailq.0 newaliases.0 sendmail.0 113 114# dependencies 115# gross overkill, and yet still not quite enough.... 116${OBJS}: sendmail.h conf.h 117