]> granicus.if.org Git - postgresql/blob - GNUmakefile.in
Change plpgsql's GET DIAGNOSTICS statement to use SQL99-compatible
[postgresql] / GNUmakefile.in
1 #
2 # PostgreSQL top level makefile
3 #
4 # $Header: /cvsroot/pgsql/GNUmakefile.in,v 1.17 2001/02/10 02:31:25 tgl Exp $
5 #
6
7 subdir =
8 top_builddir = .
9 include $(top_builddir)/src/Makefile.global
10
11 all:
12         $(MAKE) -C doc all
13         $(MAKE) -C src all
14         @echo "All of PostgreSQL successfully made. Ready to install."
15
16 install:
17         $(MAKE) -C doc install
18         $(MAKE) -C src install
19         @cat $(srcdir)/register.txt
20
21 installdirs uninstall distprep:
22         $(MAKE) -C doc $@
23         $(MAKE) -C src $@
24
25 install-all-headers:
26         $(MAKE) -C src $@
27
28 # clean, distclean, etc should apply to contrib too, even though
29 # it's not built by default
30 clean:
31         $(MAKE) -C doc $@
32         $(MAKE) -C contrib $@
33         $(MAKE) -C src $@
34
35 # Important: distclean `src' last, otherwise Makefile.global
36 # will be gone too soon.
37 distclean maintainer-clean:
38         -$(MAKE) -C doc $@
39         -$(MAKE) -C contrib $@
40         -$(MAKE) -C src $@
41         -rm -f config.cache config.log config.status GNUmakefile
42
43 check: all
44
45 check installcheck:
46         $(MAKE) -C src/test $@
47
48 GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
49         CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
50
51
52 ##########################################################################
53
54 distdir := postgresql-$(VERSION)
55 dummy   := =install=
56 garbage := =*  "#"*  ."#"*  *~*  *.orig  *.rej  core  postgresql-*
57
58 GZIP    := gzip
59 BZIP2   := bzip2
60
61 dist: $(distdir).tar.gz
62 ifeq ($(split-dist), yes)
63 dist: $(distdir).base.tar.gz $(distdir).docs.tar.gz $(distdir).support.tar.gz $(distdir).test.tar.gz
64 endif
65 dist:
66         -rm -rf $(distdir)
67
68 $(distdir).tar: distdir
69         $(TAR) chf $@ $(distdir)
70
71 $(distdir).base.tar: distdir
72         $(TAR) -c $(addprefix --exclude $(distdir)/, doc src/test src/interfaces src/bin) \
73           -f $@ $(distdir)
74
75 $(distdir).docs.tar: distdir
76         $(TAR) cf $@ $(distdir)/doc
77
78 $(distdir).support.tar: distdir
79         $(TAR) cf $@ $(distdir)/src/interfaces $(distdir)/src/bin
80
81 $(distdir).test.tar: distdir
82         $(TAR) cf $@ $(distdir)/src/test
83
84 %.gz: %
85         $(GZIP) -f --best $<
86
87 %.bz2: %
88         $(BZIP2) -f $<
89
90 distdir:
91         -rm -rf $(distdir)* $(dummy)
92         for x in `cd $(top_srcdir) && find . -name CVS -prune -o -print`; do \
93           file=`expr X$$x : 'X\./\(.*\)'`; \
94           if test -d "$(top_srcdir)/$$file" ; then \
95             mkdir "$(distdir)/$$file" && chmod 777 "$(distdir)/$$file"; \
96           else \
97             ln "$(top_srcdir)/$$file" "$(distdir)/$$file" >/dev/null 2>&1 \
98               || cp "$(top_srcdir)/$$file" "$(distdir)/$$file"; \
99           fi || exit; \
100         done
101         $(MAKE) -C $(distdir) distprep
102         $(MAKE) -C $(distdir) distclean
103
104 distcheck: $(distdir).tar.gz
105         -rm -rf $(dummy)
106         mkdir $(dummy)
107         gzip -d -c $< | $(TAR) xf -
108         install_prefix=`cd $(dummy) && pwd`; \
109         cd $(distdir) \
110         && ./configure --prefix="$$install_prefix"
111         $(MAKE) -C $(distdir) -q distprep
112         $(MAKE) -C $(distdir)
113         $(MAKE) -C $(distdir) install
114         $(MAKE) -C $(distdir) uninstall
115         @echo "checking whether \`$(MAKE) uninstall' works"
116         test `find $(dummy) ! -type d | wc -l` -eq 0
117         $(MAKE) -C $(distdir) dist
118 # Room for improvement: Check here whether this distribution tarball
119 # is sufficiently similar to the original one.
120         -rm -rf $(distdir) $(dummy)
121         @echo "Distribution integrity checks out."
122
123 .PHONY: dist distdir distcheck