mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-11-27 07:21:09 +08:00
121 lines
3.0 KiB
Makefile
121 lines
3.0 KiB
Makefile
#
|
|
# PostgreSQL top level makefile
|
|
#
|
|
# $Header: /cvsroot/pgsql/GNUmakefile.in,v 1.16 2001/01/06 21:24:01 petere Exp $
|
|
#
|
|
|
|
subdir =
|
|
top_builddir = .
|
|
include $(top_builddir)/src/Makefile.global
|
|
|
|
all:
|
|
$(MAKE) -C doc all
|
|
$(MAKE) -C src all
|
|
@echo "All of PostgreSQL successfully made. Ready to install."
|
|
|
|
install:
|
|
$(MAKE) -C doc install
|
|
$(MAKE) -C src install
|
|
@cat $(srcdir)/register.txt
|
|
|
|
installdirs uninstall distprep:
|
|
$(MAKE) -C doc $@
|
|
$(MAKE) -C src $@
|
|
|
|
# clean, distclean, etc should apply to contrib too, even though
|
|
# it's not built by default
|
|
clean:
|
|
$(MAKE) -C doc $@
|
|
$(MAKE) -C contrib $@
|
|
$(MAKE) -C src $@
|
|
|
|
# Important: distclean `src' last, otherwise Makefile.global
|
|
# will be gone too soon.
|
|
distclean maintainer-clean:
|
|
-$(MAKE) -C doc $@
|
|
-$(MAKE) -C contrib $@
|
|
-$(MAKE) -C src $@
|
|
-rm -f config.cache config.log config.status GNUmakefile
|
|
|
|
check: all
|
|
|
|
check installcheck:
|
|
$(MAKE) -C src/test $@
|
|
|
|
GNUmakefile: GNUmakefile.in $(top_builddir)/config.status
|
|
CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
|
|
|
|
|
|
##########################################################################
|
|
|
|
distdir := postgresql-$(VERSION)
|
|
dummy := =install=
|
|
garbage := =* "#"* ."#"* *~* *.orig *.rej core postgresql-*
|
|
|
|
GZIP := gzip
|
|
BZIP2 := bzip2
|
|
|
|
dist: $(distdir).tar.gz
|
|
ifeq ($(split-dist), yes)
|
|
dist: $(distdir).base.tar.gz $(distdir).docs.tar.gz $(distdir).support.tar.gz $(distdir).test.tar.gz
|
|
endif
|
|
dist:
|
|
-rm -rf $(distdir)
|
|
|
|
$(distdir).tar: distdir
|
|
$(TAR) chf $@ $(distdir)
|
|
|
|
$(distdir).base.tar: distdir
|
|
$(TAR) -c $(addprefix --exclude $(distdir)/, doc src/test src/interfaces src/bin) \
|
|
-f $@ $(distdir)
|
|
|
|
$(distdir).docs.tar: distdir
|
|
$(TAR) cf $@ $(distdir)/doc
|
|
|
|
$(distdir).support.tar: distdir
|
|
$(TAR) cf $@ $(distdir)/src/interfaces $(distdir)/src/bin
|
|
|
|
$(distdir).test.tar: distdir
|
|
$(TAR) cf $@ $(distdir)/src/test
|
|
|
|
%.gz: %
|
|
$(GZIP) -f --best $<
|
|
|
|
%.bz2: %
|
|
$(BZIP2) -f $<
|
|
|
|
distdir:
|
|
-rm -rf $(distdir)* $(dummy)
|
|
for x in `cd $(top_srcdir) && find . -name CVS -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) distclean
|
|
|
|
distcheck: $(distdir).tar.gz
|
|
-rm -rf $(dummy)
|
|
mkdir $(dummy)
|
|
gzip -d -c $< | $(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."
|
|
|
|
.PHONY: dist distdir distcheck
|