chiark / gitweb /
wip build system
[inn-innduct.git] / Makefile
index 13e27b50a814564ff56804c544ff3cdce1c35138..77354bacc2bdf4a55a7d68adf4941207873c2491 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,218 +1,5 @@
-##  $Id: Makefile 7488 2005-12-25 00:26:08Z eagle $
+all:
 
-include Makefile.global
-
-##  All installation directories except for $(PATHRUN), which has a
-##  different mode than the rest.
-INSTDIRS      = $(PATHNEWS) $(PATHBIN) $(PATHAUTH) $(PATHAUTHRESOLV) \
-               $(PATHAUTHPASSWD) $(PATHCONTROL) $(PATHFILTER) \
-               $(PATHRNEWS) $(PATHDB) $(PATHDOC) $(PATHETC) $(PATHLIB) \
-               $(PATHMAN) $(MAN1) $(MAN3) $(MAN5) $(MAN8) $(PATHSPOOL) \
-               $(PATHTMP) $(PATHARCHIVE) $(PATHARTICLES) $(PATHINCOMING) \
-               $(PATHINBAD) $(PATHTAPE) $(PATHOVERVIEW) $(PATHOUTGOING) \
-               $(PATHLOG) $(PATHLOG)/OLD $(PATHINCLUDE)
-
-##  LIBDIRS are built before PROGDIRS, make update runs in all UPDATEDIRS,
-##  and make install runs in all ALLDIRS.  Nothing runs in test except the
-##  test target itself and the clean targets.  Currently, include is built
-##  before anything else but nothing else runs in it except clean targets.
-LIBDIRS     = include lib storage history
-PROGDIRS    = innd nnrpd innfeed control expire frontends backends authprogs \
-              scripts
-UPDATEDIRS  = $(LIBDIRS) $(PROGDIRS) doc
-ALLDIRS     = $(UPDATEDIRS) samples site
-CLEANDIRS   = $(ALLDIRS) include tests
-
-##  The directory name and tar file to use when building a release.
-TARDIR      = inn-$(VERSION)
-TARFILE     = $(TARDIR).tar
-
-##  The directory to use when building a snapshot.
-SNAPDIR     = inn-$(SNAPSHOT)-$(SNAPDATE)
-
-##  DISTDIRS gets all directories from the MANIFEST, and DISTFILES gets all
-##  regular files.  Anything not listed in the MANIFEST will not be included
-##  in a distribution.  These are arguments to sed.
-DISTDIRS    = -e 1,2d -e '/(Directory)/!d' -e 's/ .*//' -e 's;^;$(TARDIR)/;'
-SNAPDIRS    = -e 1,2d -e '/(Directory)/!d' -e 's/ .*//' -e 's;^;$(SNAPDIR)/;'
-DISTFILES   = -e 1,2d -e '/(Directory)/d' -e 's/ .*//'
-
-
-##  Major target -- build everything.  Rather than just looping through
-##  all the directories, use a set of parallel rules so that make -j can
-##  work on more than one directory at a time.
-all: all-include all-libraries all-programs
-       cd doc     && $(MAKE) all
-       cd samples && $(MAKE) all
-       cd site    && $(MAKE) all
-
-all-libraries: all-lib all-storage all-history
-
-all-include:                   ; cd include   && $(MAKE) all
-all-lib:       all-include     ; cd lib       && $(MAKE) all
-all-storage:   all-lib         ; cd storage   && $(MAKE) library
-all-history:   all-storage     ; cd history   && $(MAKE) all
-
-all-programs:  all-innd all-nnrpd all-innfeed all-control all-expire \
-               all-frontends all-backends all-authprogs all-scripts \
-               all-store-util
-
-all-authprogs: all-lib         ; cd authprogs && $(MAKE) all
-all-backends:  all-libraries   ; cd backends  && $(MAKE) all
-all-control:                   ; cd control   && $(MAKE) all
-all-expire:    all-libraries   ; cd expire    && $(MAKE) all
-all-frontends: all-libraries   ; cd frontends && $(MAKE) all
-all-innd:      all-libraries   ; cd innd      && $(MAKE) all
-all-innfeed:   all-libraries   ; cd innfeed   && $(MAKE) all
-all-nnrpd:     all-libraries   ; cd nnrpd     && $(MAKE) all
-all-scripts:                   ; cd scripts   && $(MAKE) all
-all-store-util:        all-libraries   ; cd storage   && $(MAKE) programs
-
-
-##  If someone tries to run make before running configure, tell them to run
-##  configure first.
-Makefile.global:
-       @echo 'Run ./configure before running make.  See INSTALL for details.'
-       @exit 1
-
-
-##  Installation rules.  make install installs everything; make update only
-##  updates the binaries, scripts, and documentation and leaves config
-##  files alone.
-install: directories
-       @for D in $(ALLDIRS) ; do \
-           echo '' ; \
-           cd $$D && $(MAKE) install || exit 1 ; cd .. ; \
-       done
-       @echo ''
-       @echo 'If this is a first-time installation, a minimal active file and'
-       @echo 'history database have been installed.  Do not forget to update'
-       @echo 'your cron entries and configure INN.  See INSTALL for more'
-       @echo 'information.'
-       @echo ''
-
-directories:
-       @chmod +x support/install-sh
-       for D in $(INSTDIRS) ; do \
-           support/install-sh $(OWNER) -m 0755 -d $(D)$$D ; \
-       done
-       support/install-sh $(OWNER) -m 0750 -d $(D)$(PATHRUN)
-
-update: 
-       @chmod +x support/install-sh
-       @for D in $(UPDATEDIRS) ; do \
-           echo '' ; \
-           cd $$D && $(MAKE) install || exit 1 ; cd .. ; \
-       done
-       $(PATHBIN)/innupgrade $(PATHETC)
-
-##  Install a certificate for TLS/SSL support.
-cert:
-       $(SSLBIN)/openssl req -new -x509 -nodes \
-           -out $(PATHLIB)/cert.pem -days 366 \
-           -keyout $(PATHLIB)/key.pem
-       chown $(NEWSUSER) $(PATHLIB)/cert.pem
-       chgrp $(NEWSGROUP) $(PATHLIB)/cert.pem
-       chmod 640 $(PATHLIB)/cert.pem
-       chown $(NEWSUSER) $(PATHLIB)/key.pem
-       chgrp $(NEWSGROUP) $(PATHLIB)/key.pem
-       chmod 600 $(PATHLIB)/key.pem
-
-
-##  Cleanup targets.  clean deletes all compilation results but leaves the
-##  configure results.  distclean or clobber removes everything not part of
-##  the distribution tarball.  maintclean removes some additional files
-##  created as part of the release process.
-clean:
-       @for D in $(CLEANDIRS) ; do \
-           echo '' ; \
-           cd $$D && $(MAKE) clean || exit 1 ; cd .. ; \
-       done
-
-clobber realclean distclean:
-       @for D in $(CLEANDIRS) ; do \
-           echo '' ; \
-           cd $$D && $(MAKE) $(FLAGS) clobber && cd .. ; \
-       done
-       @echo ''
-       rm -f LIST.* Makefile.global TAGS tags config.cache config.log
-       rm -f config.status libtool support/fixscript
-
-maintclean: distclean
-       rm -rf $(TARDIR)
-       rm -f CHANGES ChangeLog inn*.tar.gz
-
-
-##  Other generic targets.
-depend tags ctags profiled:
-       @for D in $(ALLDIRS) ; do \
-           echo '' ; \
-           cd $$D && $(MAKE) $@ || exit 1 ; cd .. ; \
-       done
-
-TAGS etags:
-       etags */*.c */*.h */*/*.c */*/*.h
-
-
-##  Run the test suite.
-check test tests:
-       cd tests && $(MAKE) test
-
-
-##  For maintainers, build the entire source base with warnings enabled.
-warnings:
-       $(MAKE) COPT="$(WARNINGS) $(COPT)" all
-
-
-##  Make a release.  We create a release by recreating the directory
-##  structure and then copying over all files listed in the MANIFEST.  If it
-##  isn't in the MANIFEST, it doesn't go into the release.  We also update
-##  the version information in Makefile.global.in to remove the prerelease
-##  designation and update all timestamps to the date the release is made.
-release: ChangeLog
-       rm -rf $(TARDIR)
-       rm -f inn*.tar.gz
-       mkdir $(TARDIR)
-       for d in `sed $(DISTDIRS) MANIFEST` ; do mkdir -p $$d ; done
-       for f in `sed $(DISTFILES) MANIFEST` ; do \
-           cp $$f $(TARDIR)/$$f || exit 1 ; \
-       done
-       sed 's/= prerelease/=/' < Makefile.global.in \
-           > $(TARDIR)/Makefile.global.in
-       cp ChangeLog $(TARDIR)
-       find $(TARDIR) -type f -print | xargs touch -t `date +%m%d%H%M.%S`
-       tar cf $(TARFILE) $(TARDIR)
-       $(GZIP) -9 $(TARFILE)
-
-##  Generate the ChangeLog using support/mkchangelog.  This should only be
-##  run by a maintainer since it depends on cvs log working and also
-##  requires cvs2cl be available somewhere.
-ChangeLog:
-       $(PERL) support/mkchangelog
-
-
-##  Check the MANIFEST against the files present in the current tree,
-##  building a list with find and running diff between the lists.
-check-manifest:
-       sed -e 1,2d -e 's/ .*//' MANIFEST > LIST.manifest
-       $(PERL) support/mkmanifest > LIST.real
-       diff -u LIST.manifest LIST.real
-
-
-##  Make a snapshot.  This is like making a release, except that we don't do
-##  the ChangeLog thing and we don't change the version number.  We also
-##  assume that SNAPSHOT has been set to the appropriate current branch.
-snapshot:
-       rm -rf $(SNAPDIR)
-       rm -f inn*.tar.gz
-       mkdir $(SNAPDIR)
-       set -e ; for d in `sed $(SNAPDIRS) MANIFEST` ; do mkdir -p $$d ; done
-       set -e ; for f in `sed $(DISTFILES) MANIFEST` ; do \
-           cp $$f $(SNAPDIR)/$$f ; \
-       done
-       cp README.snapshot $(SNAPDIR)/
-       sed 's/= prerelease/= $(SNAPDATE) snapshot/' \
-           Makefile.global.in > $(SNAPDIR)/Makefile.global.in
-       find $(SNAPDIR) -type f -print | xargs touch -t `date +%m%d%H%M.%S`
-       tar cf $(SNAPDIR).tar $(SNAPDIR)
-       $(GZIP) -9 $(SNAPDIR).tar
+autoconf:
+       autoheader2.50
+       autoconf2.50