OSDN Git Service

Removed unsigned/signed mismatches.
[pg-rex/syncrep.git] / GNUmakefile.in
1 #
2 # PostgreSQL top level makefile
3 #
4 # $PostgreSQL: pgsql/GNUmakefile.in,v 1.50 2009/01/15 01:53:49 momjian 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         $(MAKE) -C config all
15         @echo "All of PostgreSQL successfully made. Ready to install."
16
17 install:
18         $(MAKE) -C doc $@
19         $(MAKE) -C src $@
20         $(MAKE) -C config $@
21         @echo "PostgreSQL installation complete."
22
23 installdirs uninstall:
24         $(MAKE) -C doc $@
25         $(MAKE) -C src $@
26         $(MAKE) -C config $@
27
28 distprep:
29         $(MAKE) -C doc $@
30         $(MAKE) -C src $@
31         $(MAKE) -C config $@
32         $(MAKE) -C contrib $@
33
34 # clean, distclean, etc should apply to contrib too, even though
35 # it's not built by default
36 clean:
37         $(MAKE) -C doc $@
38         $(MAKE) -C contrib $@
39         $(MAKE) -C src $@
40         $(MAKE) -C config $@
41 # Garbage from autoconf:
42         @rm -rf autom4te.cache/
43
44 # Important: distclean `src' last, otherwise Makefile.global
45 # will be gone too soon.
46 distclean maintainer-clean:
47         $(MAKE) -C doc $@
48         $(MAKE) -C contrib $@
49         $(MAKE) -C config $@
50         $(MAKE) -C src $@
51         rm -f config.cache config.log config.status GNUmakefile
52 # Garbage from autoconf:
53         @rm -rf autom4te.cache/
54
55 check: all
56
57 check installcheck installcheck-parallel:
58         $(MAKE) -C src/test $@
59
60 GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
61         ./config.status $@
62
63
64 ##########################################################################
65
66 coverage:
67         $(MAKE) -C src/backend $@
68
69 .PHONY: coverage-html
70 coverage-html: coverage
71         rm -rf coverage
72         mkdir coverage
73         $(GENHTML) --show-details --legend --output-directory=coverage --title=PostgreSQL --num-spaces=4 --prefix=$(abs_top_srcdir)/src `find src/backend -name lcov.info -print`
74
75 ifeq ($(enable_coverage),yes)
76 clean distclean maintainer-clean: clean-coverage-local
77 .PHONY: clean-coverage-local
78 clean-coverage-local:
79         rm -rf coverage
80 endif
81
82
83 ##########################################################################
84
85 distdir = postgresql-$(VERSION)
86 dummy   = =install=
87 garbage = =*  "#"*  ."#"*  *~*  *.orig  *.rej  core  postgresql-*
88
89 dist: $(distdir).tar.gz 
90 ifeq ($(split-dist), yes)
91 dist: postgresql-base-$(VERSION).tar.gz postgresql-docs-$(VERSION).tar.gz postgresql-opt-$(VERSION).tar.gz postgresql-test-$(VERSION).tar.gz 
92 endif
93 dist:
94         rm -rf $(distdir)
95
96 $(distdir).tar: distdir
97         $(TAR) chf $@ $(distdir)
98
99 opt_files = \
100         src/tools src/tutorial \
101         $(addprefix src/pl/, plperl plpython tcl)
102
103 docs_files = doc/postgres.tar.gz doc/src doc/TODO.detail
104
105 postgresql-base-$(VERSION).tar: distdir
106         $(TAR) -c $(addprefix --exclude $(distdir)/, $(docs_files) $(opt_files) src/test) \
107           -f $@ $(distdir)
108
109 postgresql-docs-$(VERSION).tar: distdir
110         $(TAR) cf $@ $(addprefix $(distdir)/, $(docs_files))
111
112 postgresql-opt-$(VERSION).tar: distdir
113         $(TAR) cf $@ $(addprefix $(distdir)/, $(opt_files))
114
115 postgresql-test-$(VERSION).tar: distdir
116         $(TAR) cf $@ $(distdir)/src/test
117
118 distdir:
119         rm -rf $(distdir)* $(dummy)
120         for x in `cd $(top_srcdir) && find . \( -name CVS -prune \) -o \( -name .git -prune \) -o -print`; do \
121           file=`expr X$$x : 'X\./\(.*\)'`; \
122           if test -d "$(top_srcdir)/$$file" ; then \
123             mkdir "$(distdir)/$$file" && chmod 777 "$(distdir)/$$file"; \
124           else \
125             ln "$(top_srcdir)/$$file" "$(distdir)/$$file" >/dev/null 2>&1 \
126               || cp "$(top_srcdir)/$$file" "$(distdir)/$$file"; \
127           fi || exit; \
128         done
129         $(MAKE) -C $(distdir) distprep
130         $(MAKE) -C $(distdir)/doc/src/sgml/ HISTORY INSTALL regress_README
131         cp $(distdir)/doc/src/sgml/HISTORY $(distdir)/
132         cp $(distdir)/doc/src/sgml/INSTALL $(distdir)/
133         cp $(distdir)/doc/src/sgml/regress_README $(distdir)/src/test/regress/README
134         $(MAKE) -C $(distdir) distclean
135         rm -f $(distdir)/README.CVS
136
137 distcheck: $(distdir).tar.gz
138         rm -rf $(dummy)
139         mkdir $(dummy)
140         $(GZIP) -d -c $< | $(TAR) xf -
141         install_prefix=`cd $(dummy) && pwd`; \
142         cd $(distdir) \
143         && ./configure --prefix="$$install_prefix"
144         $(MAKE) -C $(distdir) -q distprep
145         $(MAKE) -C $(distdir)
146         $(MAKE) -C $(distdir) install
147         $(MAKE) -C $(distdir) uninstall
148         @echo "checking whether \`$(MAKE) uninstall' works"
149         test `find $(dummy) ! -type d | wc -l` -eq 0
150         $(MAKE) -C $(distdir) dist
151 # Room for improvement: Check here whether this distribution tarball
152 # is sufficiently similar to the original one.
153         rm -rf $(distdir) $(dummy)
154         @echo "Distribution integrity checks out."
155
156 .PHONY: dist distdir distcheck
157 unexport split-dist