End users shouldn't have to invoke a separate command to install the

documentation. Therefore it's now installed by default. If there is no
documentation to be found (i.e., you are not using the distribution)
then this step is skipped.

Add --docdir option to configure to control installation directory.
This commit is contained in:
Peter Eisentraut 2000-07-17 22:31:59 +00:00
parent 5da7e533f7
commit 44eaafe3f8
4 changed files with 65 additions and 75 deletions

View File

@ -1,7 +1,7 @@
#
# PostgreSQL top level makefile
#
# $Header: /cvsroot/pgsql/GNUmakefile.in,v 1.7 2000/07/16 14:50:28 petere Exp $
# $Header: /cvsroot/pgsql/GNUmakefile.in,v 1.8 2000/07/17 22:31:56 petere Exp $
#
subdir =
@ -9,20 +9,23 @@ top_builddir = .
include 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:
installdirs uninstall clean:
$(MAKE) -C doc $@
$(MAKE) -C src $@
clean:
$(MAKE) -C src clean
# Important: distclean `doc' before `src', otherwise Makefile.global
# will be gone too soon.
distclean maintainer-clean:
-$(MAKE) -C doc $@
-$(MAKE) -C src $@
-rm -f config.cache config.log config.status GNUmakefile

View File

@ -14,7 +14,14 @@ dnl 8. System services
dnl
dnl Read the Autoconf manual for details.
dnl The GNU folks apparently haven't heard that some people don't use
dnl Texinfo. Use this sorcery to use "docdir" instead of "infodir".
define([info], [doc])
define([infodir], [docdir])
AC_INIT(src/backend/access/common/heaptuple.c)
undefine([infodir])
undefine([info])
AC_PREFIX_DEFAULT(/usr/local/pgsql)
AC_CONFIG_HEADER(src/include/config.h)
@ -78,7 +85,7 @@ esac
AC_MSG_ERROR([
*******************************************************************
PostgreSQL has apparently not been ported to your platform yet.
To try a manual configuration, look info the src/template directory
To try a manual configuration, look into the src/template directory
for a similar platform and use the \`--with-template=' option.
Please also contact <pgsql-ports@postgresql.org> to see about

View File

@ -1,78 +1,58 @@
#----------------------------------------------------------------------------
#
# Makefile
# Postgres documentation installation makefile
# Thomas Lockhart
# PostgreSQL documentation installation makefile
#
# Copyright (c) 1994, Regents of the University of California
#
#
# IDENTIFICATION
# $Header: /cvsroot/pgsql/doc/Makefile,v 1.17 2000/07/16 14:50:32 petere Exp $
# $Header: /cvsroot/pgsql/doc/Makefile,v 1.18 2000/07/17 22:31:57 petere Exp $
#
#----------------------------------------------------------------------------
PGDOCS= $(POSTGRESDIR)/doc
SRCDIR= ../src
TAR= tar
# Pick up Makefile.global from the source area
# This is the only resource from the code source area and is optional.
# Actually, we want this to get Makefile.custom - thomas 1998-03-01
ifneq ($(wildcard $(SRCDIR)/Makefile.global), )
include $(SRCDIR)/Makefile.global
endif
# Hmm, made this optional but jade _really_ doesn't like them missing
# - thomas 1998-03-01
ifneq ($(HDSL), )
HTMLOPTS= -d $(HDSL)
endif
ifneq ($(PDSL), )
PRINTOPTS= -d $(PDSL)
endif
MODULES= admin postgres programmer tutorial user
TARGETS= $(MODULES:%=%.html)
.PRECIOUS: postgres.tex postgres.dvi
.PHONY: beforeinstall install all clean distclean
beforeinstall:
-@if [ ! -d $(PGDOCS) ]; then mkdir $(PGDOCS); fi
install:
$(MAKE) all
$(MAKE) man
all: beforeinstall $(MODULES)
clean:
rm -rf $(MODULES)
distclean:
$(MAKE) clean
man:
-@if test ! -d $(POSTMANDIR) ; then mkdir $(POSTMANDIR) ; fi
gunzip -c man.tar.gz | (cd $(POSTMANDIR) ; $(TAR) xf - )
#
# Generic production rules
# This directory doesn't build anything, it is only responsible for
# installing the documenation. It is invoked automatically by the
# top-level makefile. The files to be installed are prepared specially
# and are placed in this directory during distribution bundling. In
# CVS-based trees these files don't exist, so we skip the installation
# in that case.
#
# To actually build the documenation, look into the src/ and src/sgml
# subdirectories.
# Unpack tar file
# Put into area pointed to by $(PGDOCS).
## Make a local file to keep track of dependencies,
## if $(PGDOCS) points somewhere else.
## Disable this for now - thomas 1998-03-01
# Remove the contents of the target directory
# to replace symlinks - thomas 1998-03-01
subdir = doc
top_builddir = ..
include $(top_builddir)/src/Makefile.global
%: %.tar.gz
rm -rf ./$@ $(PGDOCS)/$*
if test ! -d $(PGDOCS)/$* ; then mkdir $(PGDOCS)/$* ; fi
gunzip -c $< | (cd $(PGDOCS)/$* ; $(TAR) xf - )
# touch ./$*
MODULES := admin postgres programmer tutorial user
found_MODULES := $(foreach module, $(MODULES), $(shell test -f $(srcdir)/$(module).tar.gz && echo $(module)))
ifneq ($(wildcard $(srcdir)/man.tar.gz),)
found_man := yes
endif
all:
install: all installdirs
ifneq ($(strip $(found_MODULES)),)
for module in $(found_MODULES); do \
gunzip -c $${module}.tar.gz | ( cd $(docdir)/$$module && $(TAR) xf - ) || \
exit; \
done
endif
ifdef found_man
gunzip -c man.tar.gz | ( cd $(mandir) && $(TAR) xf - )
endif
installdirs:
$(mkinstalldirs) $(mandir) $(addprefix $(docdir)/, . $(found_MODULES))
uninstall:
-rm -rf $(addprefix $(docdir)/, $(MODULES))
ifdef found_man
-rm -f $(addprefix $(mandir)/, $(shell gunzip -c man.tar.gz | tar tf -))
endif

View File

@ -7,7 +7,7 @@
#
#
# IDENTIFICATION
# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.87 2000/07/16 14:50:41 petere Exp $
# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.88 2000/07/17 22:31:59 petere Exp $
#
# NOTES
# Essentially all Postgres make files include this file and use the
@ -95,8 +95,8 @@ localstatedir = @localstatedir@
libdir = @libdir@
includedir = @includedir@
mandir = @mandir@
docdir = @docdir@
docdir = ${prefix}/doc
odbcinst_ini_dir = @odbcinst_ini_dir@
# old variable names for installation directories