11612Stwisti#
25776Smikael#  Makefile for configuration files.
31612Stwisti#
41612Stwisti#	$Id: Makefile,v 8.60 2005-06-14 02:16:34 gshapiro Exp $
51612Stwisti#
61612Stwisti
71612Stwisti#
81612Stwisti#  Create configuration files using "m4 ../m4/cf.m4 file.mc > file.cf";
91612Stwisti#  this may be easier than tweaking the Makefile.  You do need to
101612Stwisti#  have a fairly modern M4 available (GNU m4 works).  On SunOS, use
111612Stwisti#  /usr/5bin/m4.
121612Stwisti#
131612Stwisti
141612Stwisti# name of source for sendmail.cf (without extension)
151612StwistiCF=	sendmail
161612Stwisti# name of source for submit.cf (without extension)
171612StwistiSUBMIT=	submit
181612Stwisti# directory for .cf files
191612StwistiMAILDIR=/etc/mail
201612StwistiM4=	m4
211612StwistiCFDIR=	..
221612StwistiSED=  sed
231612StwistiECHO= echo
241612StwistiCHMOD=	chmod
251612StwistiROMODE=	444
261879SstefankRM=	rm -f
271879Sstefank# use our own install program; should be really confINSTALL
281879SstefankINSTALL=../../devtools/bin/install.sh
291879Sstefank# CF file ownership/permissions
301879SstefankCFOWN=root
311879SstefankCFGRP=bin
321612StwistiCFMODE=0444
331612Stwisti
341612Stwisti
351612Stwisti.SUFFIXES:  .mc .cf
361612Stwisti
371612Stwisti.mc.cf:
381612Stwisti	$(RM) $@
391612Stwisti	$(M4) ${CFDIR}/m4/cf.m4 $*.mc > $@ || ( $(RM) $@ && exit 1 )
404009Stwisti	$(ECHO) "### $*.mc ###" >>$@
414009Stwisti	$(SED) -e 's/^/# /' $*.mc >>$@
424009Stwisti	$(CHMOD) $(ROMODE) $@
434009Stwisti
444009StwistiGENERIC=generic-bsd4.4.cf generic-hpux9.cf generic-hpux10.cf \
454009Stwisti		generic-linux.cf generic-mpeix.cf generic-nextstep3.3.cf \
463879Stwisti		generic-osf1.cf generic-solaris.cf \
471612Stwisti		generic-sunos4.1.cf generic-ultrix4.cf
481612StwistiBERKELEY=cs-hpux9.cf cs-hpux10.cf cs-osf1.cf cs-solaris.cf \
491612Stwisti	cs-sunos4.1.cf cs-ultrix4.cf \
501612Stwisti	s2k-osf1.cf s2k-ultrix4.cf \
511612Stwisti	chez.cs.cf huginn.cs.cf mail.cs.cf mail.eecs.cf mailspool.cs.cf \
521612Stwisti	python.cs.cf ucbarpa.cf ucbvax.cf vangogh.cs.cf
531612StwistiOTHER=	knecht.cf
541612StwistiALL=	submit.cf $(GENERIC) $(OTHER)
551612Stwisti
561612Stwistiall: $(ALL)
571612Stwisti
581612Stwistiberkeley: $(BERKELEY)
591612Stwistigeneric: $(GENERIC)
601612Stwistiother: $(OTHER)
611612Stwisti
621612Stwisticlean cleandir:
631612Stwisti	$(RM) $(ALL) core
641612Stwisti
651612Stwistiinstall:
661612Stwisti	@echo "Before installing the .cf files please make sure you have read the"
671612Stwisti	@echo "instructions in the file ../../INSTALL.  You should have prepared the"
681612Stwisti	@echo "files \"submit.mc\" (supplied) and \"sendmail.mc\". Then you can use"
691612Stwisti	@echo ""
701612Stwisti	@echo "	make install-cf"
711612Stwisti	@echo ""
721612Stwisti	@echo "If you use a different name than \"sendmail\" for your main .mc file"
731612Stwisti
741612Stwisti	@echo "then you should use"
751612Stwisti	@echo ""
761612Stwisti	@echo "	make install-cf CF=config"
771612Stwisti	@echo ""
781612Stwisti	@echo "where \"config\" is the name of your main .mc file."
791612Stwisti
801612Stwistiinstall-cf:  install-sendmail-cf install-submit-cf
811612Stwisti
821612Stwistiinstall-sendmail-cf: $(CF).cf
831612Stwisti	$(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(CF).cf ${DESTDIR}$(MAILDIR)/sendmail.cf
841612Stwisti
851612Stwistiinstall-submit-cf: $(SUBMIT).cf
861612Stwisti	$(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(SUBMIT).cf ${DESTDIR}$(MAILDIR)/submit.cf
871612Stwisti
881612Stwistidepend:
891612Stwisti
901612Stwisti# this is overkill, but....
911612StwistiM4FILES=\
921612Stwisti	${CFDIR}/domain/Berkeley.EDU.m4 \
931612Stwisti	${CFDIR}/domain/CS.Berkeley.EDU.m4 \
941612Stwisti	${CFDIR}/domain/EECS.Berkeley.EDU.m4 \
951612Stwisti	${CFDIR}/domain/S2K.Berkeley.EDU.m4 \
961612Stwisti	${CFDIR}/domain/berkeley-only.m4 \
971612Stwisti	${CFDIR}/domain/generic.m4 \
981612Stwisti	${CFDIR}/feature/accept_unqualified_senders.m4 \
991612Stwisti	${CFDIR}/feature/accept_unresolvable_domains.m4 \
1001612Stwisti	${CFDIR}/feature/access_db.m4 \
1011612Stwisti	${CFDIR}/feature/allmasquerade.m4 \
1021612Stwisti	${CFDIR}/feature/always_add_domain.m4 \
1031612Stwisti	${CFDIR}/feature/authinfo.m4 \
1041612Stwisti	${CFDIR}/feature/badmx.m4 \
1051612Stwisti	${CFDIR}/feature/bcc.m4 \
1061612Stwisti	${CFDIR}/feature/bestmx_is_local.m4 \
1071612Stwisti	${CFDIR}/feature/bitdomain.m4 \
1081612Stwisti	${CFDIR}/feature/block_bad_helo.m4 \
1091612Stwisti	${CFDIR}/feature/blocklist_recipients.m4 \
1101612Stwisti	${CFDIR}/feature/check_cert_altnames.m4 \
1111612Stwisti	${CFDIR}/feature/check_other.m4 \
1121612Stwisti	${CFDIR}/feature/compat_check.m4 \
1131612Stwisti	${CFDIR}/feature/conncontrol.m4 \
1143879Stwisti	${CFDIR}/feature/delay_checks.m4 \
1153879Stwisti	${CFDIR}/feature/dnsbl.m4 \
1163879Stwisti	${CFDIR}/feature/domaintable.m4 \
1173879Stwisti	${CFDIR}/feature/enhdnsbl.m4 \
1181612Stwisti	${CFDIR}/feature/generics_entire_domain.m4 \
1191612Stwisti	${CFDIR}/feature/genericstable.m4 \
1201612Stwisti	${CFDIR}/feature/greet_pause.m4 \
1211612Stwisti	${CFDIR}/feature/ldap_routing.m4 \
1223879Stwisti	${CFDIR}/feature/limited_masquerade.m4 \
1233879Stwisti	${CFDIR}/feature/local_lmtp.m4 \
1241612Stwisti	${CFDIR}/feature/local_no_masquerade.m4 \
1251612Stwisti	${CFDIR}/feature/local_procmail.m4 \
1261612Stwisti	${CFDIR}/feature/lookupdotdomain.m4 \
1271612Stwisti	${CFDIR}/feature/loose_relay_check.m4 \
1281612Stwisti	${CFDIR}/feature/mailertable.m4 \
1291612Stwisti	${CFDIR}/feature/masquerade_entire_domain.m4 \
1301612Stwisti	${CFDIR}/feature/masquerade_envelope.m4 \
1311612Stwisti	${CFDIR}/feature/msp.m4 \
1321612Stwisti	${CFDIR}/feature/mtamark.m4 \
1331612Stwisti	${CFDIR}/feature/no_default_msa.m4 \
1341612Stwisti	${CFDIR}/feature/nocanonify.m4 \
135	${CFDIR}/feature/nopercenthack.m4 \
136	${CFDIR}/feature/notsticky.m4 \
137	${CFDIR}/feature/nouucp.m4 \
138	${CFDIR}/feature/nullclient.m4 \
139	${CFDIR}/feature/prefixmod.m4 \
140	${CFDIR}/feature/preserve_local_plus_detail.m4 \
141	${CFDIR}/feature/preserve_luser_host.m4 \
142	${CFDIR}/feature/promiscuous_relay.m4 \
143	${CFDIR}/feature/queuegroup.m4 \
144	${CFDIR}/feature/ratecontrol.m4 \
145	${CFDIR}/feature/redirect.m4 \
146	${CFDIR}/feature/relay_based_on_MX.m4 \
147	${CFDIR}/feature/relay_entire_domain.m4 \
148	${CFDIR}/feature/relay_hosts_only.m4 \
149	${CFDIR}/feature/relay_local_from.m4 \
150	${CFDIR}/feature/relay_mail_from.m4 \
151	${CFDIR}/feature/require_rdns.m4 \
152	${CFDIR}/feature/smrsh.m4 \
153	${CFDIR}/feature/stickyhost.m4 \
154	${CFDIR}/feature/sts.m4 \
155	${CFDIR}/feature/tls_failures.m4 \
156	${CFDIR}/feature/tls_session_features.m4 \
157	${CFDIR}/feature/use_client_ptr.m4 \
158	${CFDIR}/feature/use_ct_file.m4 \
159	${CFDIR}/feature/use_cw_file.m4 \
160	${CFDIR}/feature/uucpdomain.m4 \
161	${CFDIR}/feature/virtuser_entire_domain.m4 \
162	${CFDIR}/feature/virtusertable.m4 \
163	${CFDIR}/hack/cssubdomain.m4 \
164	${CFDIR}/hack/xconnect.m4 \
165	${CFDIR}/m4/cf.m4 \
166	${CFDIR}/m4/cfhead.m4 \
167	${CFDIR}/m4/proto.m4 \
168	${CFDIR}/m4/version.m4 \
169	${CFDIR}/mailer/cyrus.m4 \
170	${CFDIR}/mailer/cyrusv2.m4 \
171	${CFDIR}/mailer/fax.m4 \
172	${CFDIR}/mailer/local.m4 \
173	${CFDIR}/mailer/mail11.m4 \
174	${CFDIR}/mailer/phquery.m4 \
175	${CFDIR}/mailer/pop.m4 \
176	${CFDIR}/mailer/procmail.m4 \
177	${CFDIR}/mailer/qpage.m4 \
178	${CFDIR}/mailer/smtp.m4 \
179	${CFDIR}/mailer/usenet.m4 \
180	${CFDIR}/mailer/uucp.m4 \
181	${CFDIR}/ostype/aix3.m4 \
182	${CFDIR}/ostype/aix4.m4 \
183	${CFDIR}/ostype/aix5.m4 \
184	${CFDIR}/ostype/altos.m4 \
185	${CFDIR}/ostype/amdahl-uts.m4 \
186	${CFDIR}/ostype/a-ux.m4 \
187	${CFDIR}/ostype/bsd4.3.m4 \
188	${CFDIR}/ostype/bsd4.4.m4 \
189	${CFDIR}/ostype/bsdi.m4 \
190	${CFDIR}/ostype/bsdi1.0.m4 \
191	${CFDIR}/ostype/bsdi2.0.m4 \
192	${CFDIR}/ostype/darwin.m4 \
193	${CFDIR}/ostype/dgux.m4 \
194	${CFDIR}/ostype/domainos.m4 \
195	${CFDIR}/ostype/dragonfly.m4 \
196	${CFDIR}/ostype/dynix3.2.m4 \
197	${CFDIR}/ostype/freebsd4.m4 \
198	${CFDIR}/ostype/freebsd5.m4 \
199	${CFDIR}/ostype/freebsd6.m4 \
200	${CFDIR}/ostype/gnu.m4 \
201	${CFDIR}/ostype/hpux10.m4 \
202	${CFDIR}/ostype/hpux11.m4 \
203	${CFDIR}/ostype/hpux9.m4 \
204	${CFDIR}/ostype/irix4.m4 \
205	${CFDIR}/ostype/irix5.m4 \
206	${CFDIR}/ostype/irix6.m4 \
207	${CFDIR}/ostype/isc4.1.m4 \
208	${CFDIR}/ostype/linux.m4 \
209	${CFDIR}/ostype/maxion.m4 \
210	${CFDIR}/ostype/mklinux.m4 \
211	${CFDIR}/ostype/mpeix.m4 \
212	${CFDIR}/ostype/nextstep.m4 \
213	${CFDIR}/ostype/openbsd.m4 \
214	${CFDIR}/ostype/osf1.m4 \
215	${CFDIR}/ostype/powerux.m4 \
216	${CFDIR}/ostype/ptx2.m4 \
217	${CFDIR}/ostype/qnx.m4 \
218	${CFDIR}/ostype/riscos4.5.m4 \
219	${CFDIR}/ostype/sco-uw-2.1.m4 \
220	${CFDIR}/ostype/sco3.2.m4 \
221	${CFDIR}/ostype/sinix.m4 \
222	${CFDIR}/ostype/solaris2.m4 \
223	${CFDIR}/ostype/solaris2.ml.m4 \
224	${CFDIR}/ostype/solaris2.pre5.m4 \
225	${CFDIR}/ostype/solaris8.m4 \
226	${CFDIR}/ostype/solaris11.m4 \
227	${CFDIR}/ostype/sunos3.5.m4 \
228	${CFDIR}/ostype/sunos4.1.m4 \
229	${CFDIR}/ostype/svr4.m4 \
230	${CFDIR}/ostype/ultrix4.m4 \
231	${CFDIR}/ostype/unicos.m4 \
232	${CFDIR}/ostype/unicosmk.m4 \
233	${CFDIR}/ostype/unicosmp.m4 \
234	${CFDIR}/ostype/unixware7.m4 \
235	${CFDIR}/ostype/unknown.m4 \
236	${CFDIR}/ostype/uxpds.m4
237
238$(ALL): $(M4FILES)
239$(BERKELEY): $(M4FILES)
240$(GENERIC): $(M4FILES)
241$(OTHER): $(M4FILES)
242