2 # Makefile for top level of nmh distribution
14 # ========== USER CONFIGURATION SECTION ==========
16 # If `make' is executed in the directory containing this Makefile,
17 # any changes made in this section will override the values of
18 # these parameters in makefiles in any of the subdirectories.
21 exec_prefix = @exec_prefix@
23 # location of standard commands
26 # location of support binaries and scripts
29 # location of nmh configuration and formats files
32 # location of man pages
35 # location of incoming mail
36 mailspool = @mailspool@
38 # location of mail transport agent
39 sendmailpath = @sendmailpath@
42 default_editor = @editorpath@
45 default_pager = @pagerpath@
49 DEFS = @DEFS@ @OURDEFS@
54 # ========== YOU SHOULDN'T HAVE TO CHANGE ANYTHING BELOW HERE ==========
56 # flags passed to recursive makes in subdirectories
57 MAKEDEFS = CC='$(CC)' CPPFLAGS='$(CPPFLAGS)' DEFS='$(DEFS)' \
58 CFLAGS='$(CFLAGS)' LDFLAGS='$(LDFLAGS)' LIBS='$(LIBS)' \
59 prefix='$(prefix)' exec_prefix='$(exec_prefix)' bindir='$(bindir)' \
60 etcdir='$(etcdir)' libdir='$(libdir)' mandir='$(mandir)' \
61 mailspool='$(mailspool)' sendmailpath='$(sendmailpath)' \
62 default_editor='$(default_editor)' default_pager='$(default_pager)'
65 INSTALL_PROGRAM = @INSTALL_PROGRAM@
66 INSTALL_DATA = @INSTALL_DATA@
70 # all files in this directory included in the distribution
71 DIST = ChangeLog COPYRIGHT DATE INSTALL MACHINES README VERSION \
72 ChangeLog install-sh mkinstalldirs Makefile.in aclocal.m4 \
73 acconfig.h config.h.in configure.in configure stamp-h.in \
74 config.sub config.guess
76 # subdirectories in distribution
77 SUBDIRS = h config sbr mts uip etc man docs
79 # ========== DEPENDENCIES FOR BUILDING AND INSTALLING ==========
82 all: config.h Makefile all-recursive
85 for subdir in $(SUBDIRS); do \
86 (cd $$subdir && $(MAKE) $(MAKEDEFS) all) || exit 1; \
90 for subdir in $(SUBDIRS); do \
91 (cd $$subdir && $(MAKE) $(MAKEDEFS) $@) || exit 1; \
95 for subdir in $(SUBDIRS); do \
96 (cd $$subdir && $(MAKE) $(MAKEDEFS) $@) || exit 1; \
99 # ========== DEPENDENCIES FOR CLEANUP ==========
101 mostlyclean: mostlyclean-recursive mostlyclean-local
102 clean: clean-recursive clean-local
103 distclean: distclean-recursive distclean-local
104 realclean: realclean-recursive realclean-local
105 superclean: superclean-recursive superclean-local
110 clean-local: mostlyclean-local
112 distclean-local: clean-local
113 rm -f Makefile config.h config.status config.log config.cache stamp-h distname
116 realclean-local: distclean-local
118 superclean-local: realclean-local
119 cd $(srcdir) && rm -f config.h.in stamp-h.in configure
121 mostlyclean-recursive clean-recursive distclean-recursive realclean-recursive superclean-recursive:
122 for subdir in $(SUBDIRS); do \
123 target=`echo $@ | sed 's/-recursive//'`; \
124 (cd $$subdir && $(MAKE) $(MAKEDEFS) $$target) || exit 1; \
127 # ========== DEPENDENCIES FOR MAINTENANCE ==========
130 for subdir in $(SUBDIRS); do \
131 ( cd $$subdir && $(MAKE) $(MAKEDEFS) lint ) || exit 1; \
134 # ========== DEPENDENCIES FOR MAINTENANCE ==========
136 Makefile: Makefile.in config.status
139 config.status: configure VERSION
140 ./config.status --recheck
142 configure: configure.in aclocal.m4
143 cd $(srcdir) && autoconf
146 stamp-h: config.h.in config.status
147 ./config.status config.h stamp
149 config.h.in: stamp-h.in
150 stamp-h.in: configure.in acconfig.h aclocal.m4
151 cd $(srcdir) && autoheader
154 # rebuild all autoconf files
156 cd $(srcdir) && autoheader
157 cd $(srcdir) && autoconf
158 cd $(srcdir) && date > stamp-h.in
160 # name of new nmh distribution tar file
161 tarfile = nmh-$(VERSION).tar.gz
163 # ftp directory location
166 # file containing name of new nmh distribution
168 @echo nmh-$(VERSION) > distname
170 # build nmh distribution
171 distdir = `cat distname`
172 nmhdist: $(DIST) distname
173 @echo "Begin building nmh-$(VERSION) distribution"
176 @chmod 755 $(distdir)
177 @echo "Copying distribution files in main directory"
178 @for file in $(DIST); do \
179 cp -p $(srcdir)/$$file $(distdir); \
181 @for subdir in $(SUBDIRS); do \
182 mkdir $(distdir)/$$subdir; \
183 chmod 755 $(distdir)/$$subdir; \
184 (cd $$subdir && $(MAKE) $@) || exit 1; \
186 chmod -R a+r $(distdir)
187 tar chf - $(distdir) | gzip -c > $(tarfile)
188 rm -rf $(distdir) distname
189 @echo "Done building nmh-$(VERSION) distribution"
191 # release a new nmh distribution into ftp directory
193 rm -f $(ftpdir)/$(tarfile)
194 rm -f $(ftpdir)/nmh.tar.gz
195 mv $(tarfile) $(ftpdir)/$(tarfile)
196 cd $(ftpdir) && ln -s $(tarfile) nmh.tar.gz
197 cd $(ftpdir) && md5sum *.gz > MD5SUM
199 # Create binary and source RPMs. Assumes that configure had already
200 # been run. Otherwise, there wouldn't be a Makefile.
201 # _topdir puts build area in the RPM/ directory below the current one.
202 # _tmppath uses the specified local TMP.
203 # srcdir is this current, top level nmh directory.
204 # tarfile and version are as specified in this file. rpmbuild does
205 # not allow Version to contain any dashes.
207 @rpmbuild --define '_topdir '`pwd`'/RPM' \
208 --define '_tmppath %{_topdir}/TMP' \
209 --define 'srcdir '`pwd` \
210 --define 'tarfile $(tarfile)' \
211 --define 'version '`echo $(VERSION) | sed "s/-/_/g"` \