2 # PostgreSQL top level makefile
9 include $(top_builddir)/src/Makefile.global
11 $(call recurse,all install,src config)
14 +@echo "All of PostgreSQL successfully made. Ready to install."
19 $(call recurse,world,doc src config contrib,all)
21 +@echo "PostgreSQL, contrib, and documentation successfully made. Ready to install."
23 # build src/ before contrib/
24 world-contrib-recurse: world-src-recurse
30 +@echo "PostgreSQL installation complete."
33 $(MAKE) -C doc install
35 $(call recurse,install-world,doc src config contrib,install)
37 +@echo "PostgreSQL, contrib, and documentation installation complete."
39 # build src/ before contrib/
40 install-world-contrib-recurse: install-world-src-recurse
42 $(call recurse,installdirs uninstall init-po update-po,doc src config)
44 $(call recurse,distprep coverage,doc src config contrib)
46 # clean, distclean, etc should apply to contrib too, even though
47 # it's not built by default
48 $(call recurse,clean,doc contrib src config)
51 # Garbage from autoconf:
52 @rm -rf autom4te.cache/
54 # Important: distclean `src' last, otherwise Makefile.global
55 # will be gone too soon.
56 distclean maintainer-clean:
62 # Garbage from autoconf:
63 @rm -rf autom4te.cache/
64 rm -f config.cache config.log config.status GNUmakefile
66 check check-tests installcheck installcheck-parallel installcheck-tests:
67 $(MAKE) -C src/test/regress $@
69 $(call recurse,check-world,src/test src/pl src/interfaces/ecpg contrib src/bin,check)
71 $(call recurse,installcheck-world,src/test src/pl src/interfaces/ecpg contrib src/bin,installcheck)
73 GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
77 ##########################################################################
79 distdir = postgresql-$(VERSION)
81 garbage = =* "#"* ."#"* *~* *.orig *.rej core postgresql-*
83 dist: $(distdir).tar.gz $(distdir).tar.bz2
86 $(distdir).tar: distdir
87 $(TAR) chf $@ $(distdir)
89 .INTERMEDIATE: $(distdir).tar
95 rm -rf $(distdir)* $(dummy)
96 for x in `cd $(top_srcdir) && find . \( -name CVS -prune \) -o \( -name .git -prune \) -o -print`; do \
97 file=`expr X$$x : 'X\./\(.*\)'`; \
98 if test -d "$(top_srcdir)/$$file" ; then \
99 mkdir "$(distdir)/$$file" && chmod 777 "$(distdir)/$$file"; \
101 ln "$(top_srcdir)/$$file" "$(distdir)/$$file" >/dev/null 2>&1 \
102 || cp "$(top_srcdir)/$$file" "$(distdir)/$$file"; \
105 $(MAKE) -C $(distdir) distprep
106 $(MAKE) -C $(distdir)/doc/src/sgml/ INSTALL
107 cp $(distdir)/doc/src/sgml/INSTALL $(distdir)/
108 $(MAKE) -C $(distdir) distclean
109 rm -f $(distdir)/README.git
114 $(GZIP) -d -c $(distdir).tar.gz | $(TAR) xf -
115 install_prefix=`cd $(dummy) && pwd`; \
117 && ./configure --prefix="$$install_prefix"
118 $(MAKE) -C $(distdir) -q distprep
119 $(MAKE) -C $(distdir)
120 $(MAKE) -C $(distdir) install
121 $(MAKE) -C $(distdir) uninstall
122 @echo "checking whether \`$(MAKE) uninstall' works"
123 test `find $(dummy) ! -type d | wc -l` -eq 0
124 $(MAKE) -C $(distdir) dist
125 # Room for improvement: Check here whether this distribution tarball
126 # is sufficiently similar to the original one.
127 rm -rf $(distdir) $(dummy)
128 @echo "Distribution integrity checks out."
130 .PHONY: dist distdir distcheck docs install-docs world check-world install-world installcheck-world