diff options
| author | Peter Eisentraut | 2001-08-29 19:14:40 +0000 |
|---|---|---|
| committer | Peter Eisentraut | 2001-08-29 19:14:40 +0000 |
| commit | b1a38a438043920e3cbb8692b943a91ddcc4d160 (patch) | |
| tree | c8a78e2563c2d1881f1c4cfc22966fec59a9d2c3 /doc/Makefile | |
| parent | 2c6b599c049a84b736e17e16fb00508a1504c905 (diff) | |
Install the SQL command man pages into a section appropriate for each
system. Some systems did not understand the 'l' section, and in general
it wasn't entirely appropriate.
On SCO OpenServer, the man pages won't be installed at all until someone
figures out their man system.
Diffstat (limited to 'doc/Makefile')
| -rw-r--r-- | doc/Makefile | 66 |
1 files changed, 55 insertions, 11 deletions
diff --git a/doc/Makefile b/doc/Makefile index 233c6735506..341f473d0dc 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -4,16 +4,17 @@ # # Copyright (c) 1994, Regents of the University of California # -# $Header: /cvsroot/pgsql/doc/Makefile,v 1.20 2000/12/26 20:47:07 petere Exp $ +# $Header: /cvsroot/pgsql/doc/Makefile,v 1.21 2001/08/29 19:14:39 petere Exp $ # #---------------------------------------------------------------------------- -# 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. +# This makefile is responsible for installing the documentation. 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. +# +# Before we install the man pages, we massage the section numbers to +# follow the local conventions. # # To actually build the documenation, look into the src/ and src/sgml # subdirectories. @@ -22,17 +23,47 @@ subdir = doc top_builddir = .. include $(top_builddir)/src/Makefile.global +.NOTPARALLEL: ifneq ($(wildcard $(srcdir)/postgres.tar.gz),) found_html := yes endif ifneq ($(wildcard $(srcdir)/man.tar.gz),) +# SCO OpenServer's man system is sufficiently different to not bother. +ifneq ($(PORTNAME), sco) found_man := yes endif +endif + + +ifdef found_man +ifndef sqlmansect +sqlmansect = 7 +endif +sqlmansectnum = $(shell expr X'$(sqlmansect)' : X'\([0-9]\)') + +all: man1/.timestamp man$(sqlmansectnum)/.timestamp +man1/.timestamp man$(sqlmansect_dummy)/.timestamp: man.tar.gz + gzip -d -c $< | $(TAR) xf - + for file in man1/*.1; do \ + mv $$file $$file.bak && \ + sed -e 's/\\fR($(sqlmansect_dummy))/\\fR($(sqlmansectnum))/' $$file.bak >$$file && \ + rm $$file.bak || exit; \ + done + @echo timestamp >man1/.timestamp + @echo timestamp >man$(sqlmansect_dummy)/.timestamp -all: +man$(sqlmansectnum)/.timestamp: man$(sqlmansect_dummy)/.timestamp + $(mkinstalldirs) man$(sqlmansectnum) + for file in man$(sqlmansect_dummy)/*.$(sqlmansect_dummy); do \ + sed -e '/^\.TH/s/"$(sqlmansect_dummy)"/"$(sqlmansect)"/' \ + -e 's/\\fR($(sqlmansect_dummy))/\\fR($(sqlmansectnum))/' \ + $$file >man$(sqlmansectnum)/`basename $$file | sed 's/.$(sqlmansect_dummy)$$/.$(sqlmansect)/'` || exit; \ + done + @echo timestamp >$@ +endif # found_man install: all installdirs @@ -40,12 +71,19 @@ ifdef found_html gzip -d -c postgres.tar.gz | ( cd $(DESTDIR)$(docdir)/html && $(TAR) xf - ) endif ifdef found_man - gzip -d -c man.tar.gz | ( cd $(DESTDIR)$(mandir) && $(TAR) xf - ) + for file in man1/*.1 man$(sqlmansectnum)/*.$(sqlmansect) ; do \ + $(INSTALL_DATA) $$file $(DESTDIR)$(mandir)/$$file || exit; \ + done endif installdirs: - $(mkinstalldirs) $(DESTDIR)$(mandir) $(DESTDIR)$(docdir)/html +ifdef found_html + $(mkinstalldirs) $(DESTDIR)$(docdir)/html +endif +ifdef found_man + $(mkinstalldirs) $(addprefix $(DESTDIR)$(mandir)/man, 1 $(sqlmansectnum)) +endif uninstall: @@ -53,5 +91,11 @@ ifdef found_html -rm -f $(addprefix $(DESTDIR)$(docdir)/html/, $(shell gunzip -c $(srcdir)/postgres.tar.gz | tar tf -)) endif ifdef found_man - -rm -f $(addprefix $(DESTDIR)$(mandir)/, $(shell gunzip -c $(srcdir)/man.tar.gz | tar tf -)) + -rm -f $(addprefix $(DESTDIR)$(mandir)/, $(shell gunzip -c $(srcdir)/man.tar.gz | tar tf - | sed -e 's,man$(sqlmansect_dummy)/,man$(sqlmansectnum)/,' -e 's/.$(sqlmansect_dummy)$$/.$(sqlmansect)/')) endif + + +clean: + rm -rf man1/ man$(sqlmansectnum)/ man$(sqlmansect_dummy)/ + +distclean maintainer-clean: clean |
