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
26 $(call recurse
,world-bin
,src config contrib
,all)
28 # build src/ before contrib/
29 world-bin-contrib-recurse
: world-bin-src-recurse
35 +@echo
"PostgreSQL installation complete."
38 $(MAKE
) -C doc
install
40 $(call recurse
,install-world
,doc src config contrib
,install)
42 +@echo
"PostgreSQL, contrib, and documentation installation complete."
44 # build src/ before contrib/
45 install-world-contrib-recurse
: install-world-src-recurse
47 $(call recurse
,install-world-bin
,src config contrib
,install)
49 # build src/ before contrib/
50 install-world-bin-contrib-recurse
: install-world-bin-src-recurse
52 $(call recurse
,installdirs uninstall init-po update-po
,doc src config
)
54 $(call recurse
,distprep coverage
,doc src config contrib
)
56 # clean, distclean, etc should apply to contrib too, even though
57 # it's not built by default
58 $(call recurse
,clean,doc contrib src config
)
60 rm -rf tmp_install
/ portlock
/
61 # Garbage from autoconf:
62 @
rm -rf autom4te.cache
/
64 # Important: distclean `src' last, otherwise Makefile.global
65 # will be gone too soon.
66 distclean maintainer-clean
:
71 rm -rf tmp_install
/ portlock
/
72 # Garbage from autoconf:
73 @
rm -rf autom4te.cache
/
74 rm -f config.cache config.log config.status GNUmakefile
76 check-tests
: | temp-install
77 check check-tests
installcheck installcheck-parallel installcheck-tests
: CHECKPREP_TOP
=src
/test/regress
78 check check-tests
installcheck installcheck-parallel installcheck-tests
: submake-generated-headers
79 $(MAKE
) -C src
/test/regress
$@
81 $(call recurse
,check-world
,src
/test src
/pl src
/interfaces
/ecpg contrib src
/bin
,check)
82 $(call recurse
,checkprep
, src
/test src
/pl src
/interfaces
/ecpg contrib src
/bin
)
84 $(call recurse
,installcheck-world
,src
/test src
/pl src
/interfaces
/ecpg contrib src
/bin
,installcheck)
85 $(call recurse
,install-tests
,src
/test/regress
,install-tests
)
87 GNUmakefile
: GNUmakefile.in
$(top_builddir
)/config.status
91 ##########################################################################
93 distdir
= postgresql-
$(VERSION
)
96 dist: $(distdir
).
tar.gz
$(distdir
).
tar.bz2
99 $(distdir
).
tar: distdir
100 $(TAR
) chf
$@
$(distdir
)
102 .INTERMEDIATE
: $(distdir
).
tar
108 rm -rf
$(distdir
)* $(dummy
)
109 for x in
`cd $(top_srcdir) && find . \( -name CVS -prune \) -o \( -name .git -prune \) -o -print`; do \
110 file
=`expr X$$x : 'X\./\(.*\)'`; \
111 if
test -d
"$(top_srcdir)/$$file" ; then \
112 mkdir
"$(distdir)/$$file" && chmod
777 "$(distdir)/$$file"; \
114 ln
"$(top_srcdir)/$$file" "$(distdir)/$$file" >/dev
/null
2>&1 \
115 || cp
"$(top_srcdir)/$$file" "$(distdir)/$$file"; \
118 $(MAKE
) -C
$(distdir
) distprep
119 $(MAKE
) -C
$(distdir
)/doc
/src
/sgml
/ INSTALL
120 cp
$(distdir
)/doc
/src
/sgml
/INSTALL
$(distdir
)/
121 $(MAKE
) -C
$(distdir
) distclean
122 rm -f
$(distdir
)/README.git
127 $(GZIP
) -d
-c
$(distdir
).
tar.gz |
$(TAR
) xf
-
128 install_prefix
=`cd $(dummy) && pwd`; \
130 && .
/configure
--prefix="$$install_prefix"
131 $(MAKE
) -C
$(distdir
) -q distprep
132 $(MAKE
) -C
$(distdir
)
133 $(MAKE
) -C
$(distdir
) install
134 $(MAKE
) -C
$(distdir
) uninstall
135 @echo
"checking whether \`$(MAKE) uninstall' works"
136 test `find $(dummy) ! -type d | wc -l` -eq
0
137 $(MAKE
) -C
$(distdir
) dist
138 # Room for improvement: Check here whether this distribution tarball
139 # is sufficiently similar to the original one.
140 rm -rf
$(distdir
) $(dummy
)
141 @echo
"Distribution integrity checks out."
143 cpluspluscheck
: submake-generated-headers
144 $(top_srcdir
)/src
/tools
/pginclude
/cpluspluscheck
$(top_srcdir
) $(abs_top_builddir
)
146 .PHONY
: dist distdir distcheck docs install-docs world check-world install-world installcheck-world