]> granicus.if.org Git - postgresql/blobdiff - GNUmakefile.in
psql: Fix \gx when FETCH_COUNT is used
[postgresql] / GNUmakefile.in
index f3e33fb2788d48b509b8df9e5b9f9c2d12b6d465..dc76a5d11dd88e4c921964c840517a6d93dde3b9 100644 (file)
 #
 # PostgreSQL top level makefile
 #
-# $Header: /cvsroot/pgsql/GNUmakefile.in,v 1.3 2000/06/10 18:01:34 petere Exp $
+# GNUmakefile.in
 #
 
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-top_srcdir = @top_srcdir@
+subdir =
 top_builddir = .
+include $(top_builddir)/src/Makefile.global
 
+$(call recurse,all install,src config)
 
 all:
-       $(MAKE) -C src all
-       @echo "All of PostgreSQL successfully made. Ready to install."
+       +@echo "All of PostgreSQL successfully made. Ready to install."
+
+docs:
+       $(MAKE) -C doc all
+
+$(call recurse,world,doc src config contrib,all)
+world:
+       +@echo "PostgreSQL, contrib, and documentation successfully made. Ready to install."
+
+# build src/ before contrib/
+world-contrib-recurse: world-src-recurse
+
+html man:
+       $(MAKE) -C doc $@
 
 install:
-       $(MAKE) -C src install
-       @cat $(srcdir)/register.txt
+       +@echo "PostgreSQL installation complete."
 
-clean:
-       $(MAKE) -C src clean
+install-docs:
+       $(MAKE) -C doc install
+
+$(call recurse,install-world,doc src config contrib,install)
+install-world:
+       +@echo "PostgreSQL, contrib, and documentation installation complete."
+
+# build src/ before contrib/
+install-world-contrib-recurse: install-world-src-recurse
+
+$(call recurse,installdirs uninstall init-po update-po,doc src config)
 
-distclean:
-       -$(MAKE) -C src distclean
-       -rm -f config.cache config.log config.status GNUmakefile
+$(call recurse,distprep coverage,doc src config contrib)
 
+# clean, distclean, etc should apply to contrib too, even though
+# it's not built by default
+$(call recurse,clean,doc contrib src config)
+clean:
+       rm -rf tmp_install/
+# Garbage from autoconf:
+       @rm -rf autom4te.cache/
+
+# 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 -rf tmp_install/
+# Garbage from autoconf:
+       @rm -rf autom4te.cache/
+       rm -f config.cache config.log config.status GNUmakefile
 
-.PHONY: all install clean distclean
+check check-tests installcheck installcheck-parallel installcheck-tests:
+       $(MAKE) -C src/test/regress $@
 
+$(call recurse,check-world,src/test src/pl src/interfaces/ecpg contrib src/bin,check)
 
-AUTOCONF = @AUTOCONF@
-ACLOCAL = @ACLOCAL@
+$(call recurse,installcheck-world,src/test src/pl src/interfaces/ecpg contrib src/bin,installcheck)
 
 GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
-       CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
+       ./config.status $@
+
+
+##########################################################################
+
+distdir        = postgresql-$(VERSION)
+dummy  = =install=
+garbage = =*  "#"*  ."#"*  *~*  *.orig  *.rej  core  postgresql-*
+
+dist: $(distdir).tar.gz $(distdir).tar.bz2
+       rm -rf $(distdir)
+
+$(distdir).tar: distdir
+       $(TAR) chf $@ $(distdir)
+
+.INTERMEDIATE: $(distdir).tar
+
+distdir-location:
+       @echo $(distdir)
 
-$(top_builddir)/config.status: $(top_srcdir)/configure
-       cd $(top_builddir) && ./config.status --recheck
+distdir:
+       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"; \
+         else \
+           ln "$(top_srcdir)/$$file" "$(distdir)/$$file" >/dev/null 2>&1 \
+             || cp "$(top_srcdir)/$$file" "$(distdir)/$$file"; \
+         fi || exit; \
+       done
+       $(MAKE) -C $(distdir) distprep
+       $(MAKE) -C $(distdir)/doc/src/sgml/ INSTALL
+       cp $(distdir)/doc/src/sgml/INSTALL $(distdir)/
+       $(MAKE) -C $(distdir) distclean
+       rm -f $(distdir)/README.git
 
-$(top_srcdir)/configure: $(top_srcdir)/configure.in $(top_srcdir)/aclocal.m4
-       cd $(top_srcdir) && $(AUTOCONF)
+distcheck: dist
+       rm -rf $(dummy)
+       mkdir $(dummy)
+       $(GZIP) -d -c $(distdir).tar.gz | $(TAR) xf -
+       install_prefix=`cd $(dummy) && pwd`; \
+       cd $(distdir) \
+       && ./configure --prefix="$$install_prefix"
+       $(MAKE) -C $(distdir) -q distprep
+       $(MAKE) -C $(distdir)
+       $(MAKE) -C $(distdir) install
+       $(MAKE) -C $(distdir) uninstall
+       @echo "checking whether \`$(MAKE) uninstall' works"
+       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)
+       @echo "Distribution integrity checks out."
 
-$(top_srcdir)/aclocal.m4: $(wildcard $(top_srcdir)/config/*.m4)
-       cd $(top_srcdir) && $(ACLOCAL) -I config
+.PHONY: dist distdir distcheck docs install-docs world check-world install-world installcheck-world