OSDN Git Service

Refactor common gettext triggers
[pg-rex/syncrep.git] / GNUmakefile.in
index f290564..79b0da4 100644 (file)
@@ -1,99 +1,95 @@
 #
 # PostgreSQL top level makefile
 #
-# $Header: /cvsroot/pgsql/GNUmakefile.in,v 1.11 2000/08/31 16:08:58 petere Exp $
+# GNUmakefile.in
 #
 
 subdir =
 top_builddir = .
 include $(top_builddir)/src/Makefile.global
 
+$(call recurse,all install,src config)
+
 all:
+       +@echo "All of PostgreSQL successfully made. Ready to install."
+
+docs:
        $(MAKE) -C doc all
-       $(MAKE) -C src all
-       @echo "All of PostgreSQL successfully made. Ready to install."
 
-install:
-       $(MAKE) -C doc install
-       $(MAKE) -C src install
-       @cat $(srcdir)/register.txt
+$(call recurse,world,doc src config contrib,all)
+world:
+       +@echo "PostgreSQL, contrib, and documentation successfully made. Ready to install."
 
-installdirs uninstall clean distprep:
+html man:
        $(MAKE) -C doc $@
-       $(MAKE) -C src $@
 
-# Important: distclean `doc' before `src', otherwise Makefile.global
-# will be gone too soon.
-distclean maintainer-clean:
-       -$(MAKE) -C doc $@
-       -$(MAKE) -C src $@
-       -rm -f config.cache config.log config.status GNUmakefile
+install:
+       +@echo "PostgreSQL installation complete."
 
+install-docs:
+       $(MAKE) -C doc install
 
-GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
-       CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
+$(call recurse,install-world,doc src config contrib,install)
+install-world:
+       +@echo "PostgreSQL, contrib, and documentation installation complete."
 
+$(call recurse,installdirs uninstall coverage,doc src config)
 
-# These dependencies are risky because both the target and the sources
-# are in CVS and CVS doesn't preserve timestamps, thus leading to
-# unnecessary reruns of these rules.
+$(call recurse,distprep,doc src config contrib)
 
-AUTOCONF = autoconf
+# clean, distclean, etc should apply to contrib too, even though
+# it's not built by default
+$(call recurse,clean,doc contrib src config)
+clean:
+# Garbage from autoconf:
+       @rm -rf autom4te.cache/
 
-# Only use this rule if you actually said `make configure'.
-ifeq ($(MAKECMDGOALS),configure)
-$(top_srcdir)/configure: $(top_srcdir)/configure.in $(top_srcdir)/aclocal.m4
-       cd $(top_srcdir) && $(AUTOCONF)
-endif
+# Important: distclean `src' last, otherwise Makefile.global
+# will be gone too soon.
+distclean maintainer-clean:
+       $(MAKE) -C doc $@
+       $(MAKE) -C contrib $@
+       $(MAKE) -C config $@
+       $(MAKE) -C src $@
+       rm -f config.cache config.log config.status GNUmakefile
+# Garbage from autoconf:
+       @rm -rf autom4te.cache/
 
-# This one we can leave unprotected because by default nothing depends
-# on aclocal.m4. This rule is only invoked if you say `make
-# aclocal.m4' or `make configure'.
-$(top_srcdir)/aclocal.m4: $(wildcard $(top_srcdir)/config/*.m4)
-       cat $^ > $@
+check: all
 
+check installcheck installcheck-parallel:
+       $(MAKE) -C src/test $@
 
-##########################################################################
+$(call recurse,check-world,src/test src/pl src/interfaces/ecpg contrib,check)
 
-distdir        := postgresql-$(VERSION)
-dummy  := =install=
-garbage := =*  "#"*  ."#"*  *~*  *.orig  *.rej  core  postgresql-*
+$(call recurse,installcheck-world,src/test src/pl src/interfaces/ecpg contrib,installcheck)
 
-GZIP   := gzip
-BZIP2  := bzip2
+$(call recurse,maintainer-check,doc src config contrib)
 
-dist: $(distdir).tar.gz
-ifeq ($(split-dist), yes)
-dist: $(distdir).base.tar.gz $(distdir).docs.tar.gz $(distdir).support.tar.gz $(distdir).test.tar.gz
-endif
-dist:
-       -rm -rf $(distdir)
+GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
+       ./config.status $@
 
-$(distdir).tar: distdir
-       $(TAR) chf $@ $(distdir)
 
-$(distdir).base.tar: distdir
-       $(TAR) -c $(addprefix --exclude $(distdir)/, doc src/test src/interfaces src/bin) \
-         -f $@ $(distdir)
+##########################################################################
 
-$(distdir).docs.tar: distdir
-       $(TAR) cf $@ $(distdir)/doc
+distdir        = postgresql-$(VERSION)
+dummy  = =install=
+garbage = =*  "#"*  ."#"*  *~*  *.orig  *.rej  core  postgresql-*
 
-$(distdir).support.tar: distdir
-       $(TAR) cf $@ $(distdir)/src/interfaces $(distdir)/src/bin
+dist: $(distdir).tar.gz $(distdir).tar.bz2
+       rm -rf $(distdir)
 
-$(distdir).test.tar: distdir
-       $(TAR) cf $@ $(distdir)/src/test
+$(distdir).tar: distdir
+       $(TAR) chf $@ $(distdir)
 
-%.gz: %
-       $(GZIP) -f --best $<
+.INTERMEDIATE: $(distdir).tar
 
-%.bz2: %
-       $(BZIP2) -f $<
+distdir-location:
+       @echo $(distdir)
 
 distdir:
-       -rm -rf $(distdir)* $(dummy)
-       for x in `cd $(top_srcdir) && find . -name CVS -prune -o -print`; do \
+       rm -rf $(distdir)* $(dummy)
+       for x in `cd $(top_srcdir) && find . \( -name CVS -prune \) -o \( -name .git -prune \) -o -print`; do \
          file=`expr X$$x : 'X\./\(.*\)'`; \
          if test -d "$(top_srcdir)/$$file" ; then \
            mkdir "$(distdir)/$$file" && chmod 777 "$(distdir)/$$file"; \
@@ -103,12 +99,17 @@ distdir:
          fi || exit; \
        done
        $(MAKE) -C $(distdir) distprep
+       $(MAKE) -C $(distdir)/doc/src/sgml/ HISTORY INSTALL regress_README
+       cp $(distdir)/doc/src/sgml/HISTORY $(distdir)/
+       cp $(distdir)/doc/src/sgml/INSTALL $(distdir)/
+       cp $(distdir)/doc/src/sgml/regress_README $(distdir)/src/test/regress/README
        $(MAKE) -C $(distdir) distclean
+       rm -f $(distdir)/README.git
 
-distcheck: $(distdir).tar.gz
-       -rm -rf $(dummy)
+distcheck: dist
+       rm -rf $(dummy)
        mkdir $(dummy)
-       gzip -d -c $< | $(TAR) xf -
+       $(GZIP) -d -c $(distdir).tar.gz | $(TAR) xf -
        install_prefix=`cd $(dummy) && pwd`; \
        cd $(distdir) \
        && ./configure --prefix="$$install_prefix"
@@ -117,11 +118,11 @@ distcheck: $(distdir).tar.gz
        $(MAKE) -C $(distdir) install
        $(MAKE) -C $(distdir) uninstall
        @echo "checking whether \`$(MAKE) uninstall' works"
-       test `find $(dummy) -not -type d | wc -l` -eq 0
+       test `find $(dummy) ! -type d | wc -l` -eq 0
        $(MAKE) -C $(distdir) dist
 # Room for improvement: Check here whether this distribution tarball
 # is sufficiently similar to the original one.
-       -rm -rf $(distdir) $(dummy)
+       rm -rf $(distdir) $(dummy)
        @echo "Distribution integrity checks out."
 
-.PHONY: dist distdir distcheck
+.PHONY: dist distdir distcheck docs install-docs world check-world install-world installcheck-world