From 044d9efb6c97d65247a1287e7676de0ee75b3cfe Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 27 Feb 2017 10:44:59 -0500 Subject: [PATCH] Create INSTALL file via XSLT As before, create an INSTALL.html file for processing with lynx, but use xsltproc and a new XSLT stylesheet instead of jade and DSSSL. Replacing jade with xsltproc removes jade from the requirements for distribution building. Reviewed-by: Magnus Hagander --- doc/src/sgml/.gitignore | 1 + doc/src/sgml/Makefile | 35 +++++++----- doc/src/sgml/stylesheet-text.xsl | 98 ++++++++++++++++++++++++++++++++ doc/src/sgml/stylesheet.dsl | 43 -------------- 4 files changed, 120 insertions(+), 57 deletions(-) create mode 100644 doc/src/sgml/stylesheet-text.xsl diff --git a/doc/src/sgml/.gitignore b/doc/src/sgml/.gitignore index 2f0329c15f..cdeace2991 100644 --- a/doc/src/sgml/.gitignore +++ b/doc/src/sgml/.gitignore @@ -7,6 +7,7 @@ /man-stamp # Other popular build targets /INSTALL +/INSTALL.xml /postgres-US.pdf /postgres-A4.pdf /postgres.html diff --git a/doc/src/sgml/Makefile b/doc/src/sgml/Makefile index fe7ca65cd4..774d35de20 100644 --- a/doc/src/sgml/Makefile +++ b/doc/src/sgml/Makefile @@ -217,10 +217,9 @@ postgres.pdf: ## -## Semi-automatic generation of some text files. +## Generation of some text files. ## -JADE.text = $(JADE) $(JADEFLAGS) $(SGMLINCLUDE) $(CATALOG) -d stylesheet.dsl -i output-text -t sgml ICONV = iconv LYNX = lynx @@ -233,10 +232,15 @@ LYNX = lynx # locale support and is very picky about locale name spelling. The # below has been finely tuned to run on FreeBSD and Linux/glibc. INSTALL: % : %.html - $(PERL) -p -e 's/ $@ + $(PERL) -p -e 's, $@ -INSTALL.html: standalone-install.sgml installation.sgml version.sgml - $(JADE.text) -V nochunks standalone-install.sgml installation.sgml > $@ +INSTALL.html: %.html : stylesheet-text.xsl %.xml + $(XMLLINT) --noout --valid $*.xml + $(XSLTPROC) $(XSLTPROCFLAGS) $(XSLTPROC_HTML_FLAGS) $^ >$@ + +INSTALL.xml: standalone-install.sgml installation.sgml version.sgml + $(OSX) -D. -x lower $(filter-out version.sgml,$^) >$@.tmp + $(call mangle-xml,chapter) ## @@ -247,12 +251,15 @@ INSTALL.html: standalone-install.sgml installation.sgml version.sgml # if we try to do "make all" in a VPATH build without the explicit # $(srcdir) on the postgres.sgml dependency in this rule. GNU make bug? postgres.xml: $(srcdir)/postgres.sgml $(ALMOSTALLSGML) - $(OSX) -D. -x lower -i include-xslt-index $< >postgres.xmltmp - $(PERL) -p -e 's/\[(aacute|acirc|aelig|agrave|amp|aring|atilde|auml|bull|copy|eacute|egrave|gt|iacute|lt|mdash|nbsp|ntilde|oacute|ocirc|oslash|ouml|pi|quot|scaron|uuml) *\]/\&\1;/gi;' \ - -e '$$_ .= qq{\n} if $$. == 1;' \ - $@ - rm postgres.xmltmp -# ' hello Emacs + $(OSX) -D. -x lower -i include-xslt-index $< >$@.tmp + $(call mangle-xml,book) + +define mangle-xml +$(PERL) -p -e 's/\[(aacute|acirc|aelig|agrave|amp|aring|atilde|auml|bull|copy|eacute|egrave|gt|iacute|lt|mdash|nbsp|ntilde|oacute|ocirc|oslash|ouml|pi|quot|scaron|uuml) *\]/\&\1;/gi;' \ + -e '$$_ .= qq{\n} if $$. == 1;' \ + <$@.tmp > $@ +rm $@.tmp +endef ifeq ($(STYLE),website) XSLTPROC_HTML_FLAGS += --param website.stylesheet 1 @@ -386,13 +393,13 @@ check-tabs: # This allows removing some files from the distribution tarballs while # keeping the dependencies satisfied. .SECONDARY: postgres.xml $(GENERATED_SGML) HTML.index -.SECONDARY: INSTALL.html +.SECONDARY: INSTALL.html INSTALL.xml .SECONDARY: %-A4.tex-ps %-US.tex-ps %-A4.tex-pdf %-US.tex-pdf clean: # text --- these are shipped, but not in this directory rm -f INSTALL - rm -f INSTALL.html + rm -f INSTALL.html INSTALL.xml # single-page output rm -f postgres.html postgres.txt # print @@ -400,7 +407,7 @@ clean: # index rm -f HTML.index $(GENERATED_SGML) # XSLT - rm -f postgres.xml postgres.xmltmp htmlhelp.hhp toc.hhc index.hhk *.fo + rm -f postgres.xml *.tmp htmlhelp.hhp toc.hhc index.hhk *.fo # EPUB rm -f postgres.epub # Texinfo diff --git a/doc/src/sgml/stylesheet-text.xsl b/doc/src/sgml/stylesheet-text.xsl new file mode 100644 index 0000000000..476b871870 --- /dev/null +++ b/doc/src/sgml/stylesheet-text.xsl @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + +
  • + + + + +
  • +
    + + + + + * + + * + + + + + + + + + + + + + + +
    + + + + + + +

    + + + : + +

    +
    + + +
    +
    + + + + +
    + +
    + + +
    + +
    + + +
    + +
    + +
    diff --git a/doc/src/sgml/stylesheet.dsl b/doc/src/sgml/stylesheet.dsl index 61d2963b17..05cab9a5f3 100644 --- a/doc/src/sgml/stylesheet.dsl +++ b/doc/src/sgml/stylesheet.dsl @@ -4,7 +4,6 @@ - @@ -14,10 +13,6 @@ ]]> - -]]> - ]> @@ -796,44 +791,6 @@ ]]> - - - - - - - -- 2.40.0