2 # Makefile for top level of nmh distribution
12 abs_srcdir = @abs_srcdir@
13 datarootdir = @datarootdir@
16 # ========== USER CONFIGURATION SECTION ==========
18 # If `make' is executed in the directory containing this Makefile,
19 # any changes made in this section will override the values of
20 # these parameters in makefiles in any of the subdirectories.
23 exec_prefix = @exec_prefix@
25 # location of standard commands
28 # location of support binaries and scripts
31 # location of nmh configuration and formats files
34 # location of man pages
40 # location of incoming mail
41 mailspool = @mailspool@
43 # location of mail transport agent
44 sendmailpath = @sendmailpath@
47 default_editor = @editorpath@
50 default_pager = @pagerpath@
54 DEFS = @DEFS@ @OURDEFS@
59 # ========== YOU SHOULDN'T HAVE TO CHANGE ANYTHING BELOW HERE ==========
61 # flags passed to recursive makes in subdirectories
62 MAKEDEFS = CC='$(CC)' CPPFLAGS='$(CPPFLAGS)' DEFS='$(DEFS)' \
63 CFLAGS='$(CFLAGS)' LDFLAGS='$(LDFLAGS)' LIBS='$(LIBS)' \
64 prefix='$(prefix)' exec_prefix='$(exec_prefix)' bindir='$(bindir)' \
65 etcdir='$(etcdir)' libdir='$(libdir)' mandir='$(mandir)' \
66 mailspool='$(mailspool)' sendmailpath='$(sendmailpath)' \
67 default_editor='$(default_editor)' default_pager='$(default_pager)'
70 INSTALL_PROGRAM = @INSTALL_PROGRAM@
71 INSTALL_DATA = @INSTALL_DATA@
75 # all files in this directory included in the distribution
76 DIST = ChangeLog COPYRIGHT DATE INSTALL MACHINES README VERSION \
77 ChangeLog install-sh mkinstalldirs Makefile.in aclocal.m4 \
78 acconfig.h config.h.in configure.in configure stamp-h.in \
79 config.sub config.guess
81 # subdirectories in distribution
82 SUBDIRS = h config sbr mts uip etc man docs
84 # ========== DEPENDENCIES FOR BUILDING AND INSTALLING ==========
87 all: config.h Makefile all-recursive
90 for subdir in $(SUBDIRS); do \
91 (cd $$subdir && $(MAKE) $(MAKEDEFS) all) || exit 1; \
95 for subdir in $(SUBDIRS); do \
96 (cd $$subdir && $(MAKE) $(MAKEDEFS) $@) || exit 1; \
100 for subdir in $(SUBDIRS); do \
101 (cd $$subdir && $(MAKE) $(MAKEDEFS) $@) || exit 1; \
104 # ========== DEPENDENCIES FOR CLEANUP ==========
106 mostlyclean: mostlyclean-recursive mostlyclean-local
107 clean: clean-recursive clean-local
108 distclean: distclean-recursive distclean-local
109 realclean: realclean-recursive realclean-local
110 superclean: superclean-recursive superclean-local
115 clean-local: mostlyclean-local
117 distclean-local: clean-local
118 rm -f Makefile config.h config.status config.log config.cache stamp-h distname
121 realclean-local: distclean-local
123 superclean-local: realclean-local
124 cd $(srcdir) && rm -f config.h.in stamp-h.in configure
126 mostlyclean-recursive clean-recursive distclean-recursive realclean-recursive superclean-recursive:
127 for subdir in $(SUBDIRS); do \
128 target=`echo $@ | sed 's/-recursive//'`; \
129 (cd $$subdir && $(MAKE) $(MAKEDEFS) $$target) || exit 1; \
132 # ========== DEPENDENCIES FOR MAINTENANCE ==========
135 for subdir in $(SUBDIRS); do \
136 ( cd $$subdir && $(MAKE) $(MAKEDEFS) lint ) || exit 1; \
139 # ========== DEPENDENCIES FOR MAINTENANCE ==========
141 Makefile: Makefile.in config.status
144 config.status: configure VERSION
145 ./config.status --recheck
147 configure: configure.in aclocal.m4
148 cd $(srcdir) && autoconf
151 stamp-h: config.h.in config.status
152 ./config.status config.h stamp
154 config.h.in: stamp-h.in
155 stamp-h.in: configure.in acconfig.h aclocal.m4
156 cd $(srcdir) && autoheader
159 # rebuild all autoconf files
161 cd $(srcdir) && autoheader
162 cd $(srcdir) && autoconf
163 cd $(srcdir) && date > stamp-h.in
165 # name of new nmh distribution tar file
166 tarfile = nmh-$(VERSION).tar.gz
168 # ftp directory location
171 # file containing name of new nmh distribution
173 @echo nmh-$(VERSION) > distname
175 # build nmh distribution
176 distdir = `cat distname`
177 nmhdist: $(DIST) distname
178 @echo "Begin building nmh-$(VERSION) distribution"
181 @chmod 755 $(distdir)
182 @echo "Copying distribution files in main directory"
183 @for file in $(DIST); do \
184 cp -p $(srcdir)/$$file $(distdir); \
186 @for subdir in $(SUBDIRS); do \
187 mkdir $(distdir)/$$subdir; \
188 chmod 755 $(distdir)/$$subdir; \
189 (cd $$subdir && $(MAKE) $@) || exit 1; \
191 chmod -R a+r $(distdir)
192 tar chf - $(distdir) | gzip -c > $(tarfile)
193 rm -rf $(distdir) distname
194 @echo "Done building nmh-$(VERSION) distribution"
196 # release a new nmh distribution into ftp directory
198 rm -f $(ftpdir)/$(tarfile)
199 rm -f $(ftpdir)/nmh.tar.gz
200 mv $(tarfile) $(ftpdir)/$(tarfile)
201 cd $(ftpdir) && ln -s $(tarfile) nmh.tar.gz
202 cd $(ftpdir) && md5sum *.gz > MD5SUM
204 # Create binary and source RPMs.
205 # _topdir is the specified RPM build root.
206 # _tmppath is TMP below _topdir.
208 @test -d $(rpmdir)/SOURCES || mkdir -p $(rpmdir)/SOURCES
209 @test -d $(rpmdir)/SPECS || mkdir -p $(rpmdir)/SPECS
210 @mv -f $(tarfile) $(rpmdir)/SOURCES
211 @cp -p VERSION $(rpmdir)/SOURCES
212 @cp -p nmh.spec $(rpmdir)/SPECS
213 @rpmbuild --define '_topdir $(rpmdir)' \
214 --define '_tmppath %{_topdir}/TMP' \
215 -ba $(rpmdir)/SPECS/nmh.spec