Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit ed92088

Browse files
committed
Ship documentation without intermediate tarballs
Documentation files in HTML and man formats are now prepared for distribution using the distprep make target, like everything else. They are placed in doc/src/sgml/html and manX and installed from there by make install, if present. The business with the tarballs in the tarball is gone.
1 parent 97e14f6 commit ed92088

File tree

8 files changed

+163
-180
lines changed

8 files changed

+163
-180
lines changed

GNUmakefile.in

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#
22
# PostgreSQL top level makefile
33
#
4-
# $PostgreSQL: pgsql/GNUmakefile.in,v 1.51 2009/08/07 20:50:21 petere Exp $
4+
# $PostgreSQL: pgsql/GNUmakefile.in,v 1.52 2009/08/09 22:47:58 petere Exp $
55
#
66

77
subdir =
@@ -14,6 +14,9 @@ all:
1414
$(MAKE) -C config all
1515
@echo "All of PostgreSQL successfully made. Ready to install."
1616

17+
html man:
18+
$(MAKE) -C doc $@
19+
1720
install:
1821
$(MAKE) -C doc $@
1922
$(MAKE) -C src $@

doc/Makefile

+3-95
Original file line numberDiff line numberDiff line change
@@ -1,108 +1,16 @@
11
#----------------------------------------------------------------------------
22
#
3-
# PostgreSQL documentation installation makefile
3+
# PostgreSQL documentation top-level makefile
44
#
55
# Copyright (c) 1994, Regents of the University of California
66
#
7-
# $PostgreSQL: pgsql/doc/Makefile,v 1.38 2009/08/05 19:31:49 alvherre Exp $
7+
# $PostgreSQL: pgsql/doc/Makefile,v 1.39 2009/08/09 22:47:59 petere Exp $
88
#
99
#----------------------------------------------------------------------------
1010

11-
# This makefile is responsible for installing the documentation. The
12-
# files to be installed are prepared specially and are placed in this
13-
# directory during distribution bundling. In CVS-based trees these
14-
# files don't exist, so we skip the installation in that case.
15-
#
16-
# Before we install the man pages, we massage the section numbers to
17-
# follow the local conventions.
18-
#
19-
# To actually build the documenation, look into the src/ and src/sgml
20-
# subdirectories.
21-
2211
subdir = doc
2312
top_builddir = ..
2413
include $(top_builddir)/src/Makefile.global
2514

26-
.NOTPARALLEL:
27-
28-
ifneq ($(wildcard $(srcdir)/postgres.tar.gz),)
29-
found_html = yes
30-
endif
31-
32-
ifneq ($(wildcard $(srcdir)/man.tar.gz),)
33-
# SCO OpenServer's man system is sufficiently different to not bother.
34-
ifneq ($(PORTNAME), sco)
35-
found_man = yes
36-
endif
37-
endif
38-
39-
40-
ifdef found_man
41-
ifndef sqlmansect
42-
sqlmansect = 7
43-
endif
44-
sqlmansectnum = $(shell expr X'$(sqlmansect)' : X'\([0-9]\)')
45-
46-
fix_sqlmansectnum = sed -e '/^\.TH/s/"7"/"$(sqlmansect)"/' \
47-
-e 's/\\fR(7)/\\fR($(sqlmansectnum))/g' \
48-
-e '1s/^\.so man7/.so man$(sqlmansectnum)/g;1s/^\(\.so.*\)\.7$$/\1.$(sqlmansect)/g'
49-
50-
all: man1/.timestamp man3/.timestamp man$(sqlmansectnum)/.timestamp
51-
52-
man1/.timestamp man3/.timestamp: man7/.timestamp
53-
@echo timestamp >$@
54-
55-
man7/.timestamp: man.tar.gz
56-
gzip -d -c $< | $(TAR) xf -
57-
ifneq ($(sqlmansectnum),7)
58-
for file in man1/*.1; do \
59-
mv $$file $$file.bak && \
60-
$(fix_sqlmansectnum) $$file.bak >$$file && \
61-
rm -f $$file.bak || exit; \
62-
done
63-
endif
64-
@echo timestamp >$@
65-
66-
ifneq ($(sqlmansectnum),7)
67-
man$(sqlmansectnum)/.timestamp: man7/.timestamp
68-
$(mkinstalldirs) man$(sqlmansectnum)
69-
for file in man7/*.7; do \
70-
$(fix_sqlmansectnum) $$file >man$(sqlmansectnum)/`basename $$file | sed 's/.7$$/.$(sqlmansect)/'` || exit; \
71-
done
72-
@echo timestamp >$@
73-
endif
74-
endif # found_man
75-
76-
77-
install: all installdirs
78-
ifdef found_html
79-
gzip -d -c $(srcdir)/postgres.tar.gz | ( cd $(DESTDIR)$(htmldir)/html && $(TAR) xf - )
80-
endif
81-
ifdef found_man
82-
for file in man1/*.1 man3/*.3 man$(sqlmansectnum)/*.$(sqlmansect) ; do \
83-
$(INSTALL_DATA) $$file $(DESTDIR)$(mandir)/$$file || exit; \
84-
done
85-
endif
86-
87-
88-
installdirs:
89-
ifdef found_html
90-
$(mkinstalldirs) '$(DESTDIR)$(htmldir)'/html
91-
endif
92-
ifdef found_man
93-
$(mkinstalldirs) $(addprefix '$(DESTDIR)$(mandir)'/man, 1 3 $(sqlmansectnum))
94-
endif
95-
96-
97-
uninstall:
98-
ifdef found_html
99-
rm -f $(addprefix $(DESTDIR)$(htmldir)/html/, $(shell gunzip -c $(srcdir)/postgres.tar.gz | $(TAR) tf -))
100-
endif
101-
ifdef found_man
102-
rm -f $(filter-out %/, $(addprefix $(DESTDIR)$(mandir)/, $(shell gunzip -c $(srcdir)/man.tar.gz | $(TAR) tf - | sed -e 's,man7/,man$(sqlmansectnum)/,' -e 's/.7$$/.$(sqlmansect)/')))
103-
endif
104-
105-
106-
clean distclean maintainer-clean:
107-
rm -rf man1/ man3/ man7/ man$(sqlmansectnum)/
15+
all distprep html man install installdirs uninstall clean distclean maintainer-clean:
10816
$(MAKE) -C src $@

doc/src/Makefile

+2-12
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,8 @@
1-
# Postgres documentation makefile
2-
# $PostgreSQL: pgsql/doc/src/Makefile,v 1.36 2009/08/05 19:31:50 alvherre Exp $
1+
# $PostgreSQL: pgsql/doc/src/Makefile,v 1.37 2009/08/09 22:47:59 petere Exp $
32

43
subdir = doc/src
54
top_builddir = ../..
65
include $(top_builddir)/src/Makefile.global
76

8-
clean distclean maintainer-clean:
9-
rm -f *.tar *.gz
7+
all distprep html man install installdirs uninstall clean distclean maintainer-clean:
108
$(MAKE) -C sgml $@
11-
12-
postgres.tar:
13-
$(MAKE) -C sgml html JADEFLAGS='-V html-manifest'
14-
cd sgml && $(TAR) -cf ../$@ `cat HTML.manifest` `echo *.gif | grep -v '\*'` *.css
15-
16-
man.tar:
17-
$(MAKE) -C sgml man
18-
$(TAR) -cf $@ -C sgml man1 man3 man7

0 commit comments

Comments
 (0)