winsup/doc: Create info pages from cygwin documentation

v2:
Updated to use docbook2x-texi not docbook2texi, since source is now docbook XML.
Tweak DocBook XML so info directory entry has a description.

v3:
Use a custom charmap to handle ®

v4:
Proper build avoidance
texinfo node references may not contain ':', so provide alternate text for a few
xref targets

2015-06-22  Jon Turney  <jon.turney@dronecode.org.uk>

	* Makefile.in (install-info, cygwin-ug-net.info)
	(cygwin-api.info): Add.
	* cygwin-ug-net.xml: Add texinfo-node.
	* cygwin-api.xml: Ditto.
	* ntsec.xml (db_home): Add texinfo-node for titles containing a
	':' which are the targets of an xref.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
This commit is contained in:
Jon TURNEY 2015-03-11 13:50:51 +00:00
parent d04fd9d5f7
commit 5ea698c437
5 changed files with 53 additions and 6 deletions

View File

@ -1,3 +1,12 @@
2015-06-22 Jon Turney <jon.turney@dronecode.org.uk>
* Makefile.in (install-info, cygwin-ug-net.info)
(cygwin-api.info): Add.
* cygwin-ug-net.xml: Add texinfo-node.
* cygwin-api.xml: Ditto.
* ntsec.xml (db_home): Add texinfo-node for titles containing a
':' which are the targets of an xref.
2015-06-20 Corinna Vinschen <corinna@vinschen.de>
* new-features.xml (ov-new2.1): Add alterante signal stack info.

View File

@ -19,6 +19,7 @@ htmldir = @htmldir@
mandir = @mandir@
man1dir = $(mandir)/man1
man3dir = $(mandir)/man3
infodir:=@infodir@
override INSTALL:=@INSTALL@
override INSTALL_DATA:=@INSTALL_DATA@
@ -29,6 +30,7 @@ CC:=@CC@
CC_FOR_TARGET:=@CC@
XMLTO:=xmlto --skip-validation --with-dblatex
DOCBOOK2XTEXI:=docbook2x-texi --xinclude --info --utf8trans-map=charmap
include $(srcdir)/../Makefile.common
-include Makefile.dep
@ -40,7 +42,8 @@ FAQ_SOURCES:= $(wildcard $(srcdir)/faq*.xml)
.html.body:
$(srcdir)/bodysnatcher.pl $<
.PHONY: all clean install install-all install-pdf install-html install-man
.PHONY: all clean install install-all install-pdf install-html install-man \
info install-info
all: Makefile Makefile.dep \
cygwin-ug-net/cygwin-ug-net.html \
@ -50,7 +53,8 @@ all: Makefile Makefile.dep \
cygwin-ug-net/cygwin-ug-net.pdf \
cygwin-api/cygwin-api.pdf \
utils2man.stamp \
api2man.stamp
api2man.stamp \
cygwin-ug-net.info cygwin-api.info
Makefile: $(srcdir)/Makefile.in
/bin/sh ./config.status
@ -61,10 +65,11 @@ clean:
rm -Rf cygwin-api cygwin-ug cygwin-ug-net faq
rm -f *.1 utils2man.stamp
rm -f *.3 api2man.stamp
rm -f *.info* charmap
install: install-all
install-all: install-pdf install-html install-man
install-all: install-pdf install-html install-man install-info
install-pdf: cygwin-ug-net/cygwin-ug-net.pdf cygwin-api/cygwin-api.pdf
@$(MKDIRP) $(DESTDIR)$(docdir)
@ -84,6 +89,10 @@ install-man: utils2man.stamp api2man.stamp
@$(MKDIRP) $(DESTDIR)$(man3dir)
$(INSTALL_DATA) *.3 $(DESTDIR)$(man3dir)
install-info: cygwin-ug-net.info cygwin-api.info
$(MKDIRP) $(DESTDIR)$(infodir)
$(INSTALL_DATA) *.info* $(DESTDIR)$(infodir)
cygwin-ug-net/cygwin-ug-net-nochunks.html.gz : $(cygwin-ug-net_SOURCES) html.xsl
-$(XMLTO) html-nochunks -m $(srcdir)/html.xsl $<
-@$(MKDIRP) cygwin-ug-net
@ -101,6 +110,9 @@ utils2man.stamp: $(cygwin-ug-net_SOURCES) man.xsl
$(XMLTO) man -m ${srcdir}/man.xsl $<
@touch $@
cygwin-ug-net.info: $(cygwin-ug-net_SOURCES) charmap
-$(DOCBOOK2XTEXI) $(srcdir)/cygwin-ug-net.xml --string-param output-file=cygwin-ug-net
cygwin-api/cygwin-api.html : $(cygwin-api_SOURCES) html.xsl
-$(XMLTO) html -o cygwin-api/ -m $(srcdir)/html.xsl $<
@ -111,6 +123,14 @@ api2man.stamp: $(cygwin-api_SOURCES) man.xsl
$(XMLTO) man -m ${srcdir}/man.xsl $<
@touch $@
cygwin-api.info: $(cygwin-api_SOURCES) charmap
-$(DOCBOOK2XTEXI) $(srcdir)/cygwin-api.xml --string-param output-file=cygwin-api
# this generates a custom charmap for docbook2x-texi which has a mapping for &reg;
charmap:
cp /usr/share/docbook2X/charmaps/texi.charmap charmap
echo "ae (R)" >>charmap
faq/faq.html : $(FAQ_SOURCES)
-$(XMLTO) html -o faq -m $(srcdir)/html.xsl $(srcdir)/faq.xml
-sed -i 's;<a name="id[mp][0-9]*"></a>;;g' faq/faq.html

View File

@ -6,6 +6,9 @@
<bookinfo>
<title>Cygwin API Reference</title>
<abstract role="texinfo-node">
<para>Cygwin API Reference</para>
</abstract>
<xi:include href="legal.xml"/>
</bookinfo>

View File

@ -5,6 +5,9 @@
<book id="cygwin-ug-net" xmlns:xi="http://www.w3.org/2001/XInclude">
<bookinfo>
<title>Cygwin User's Guide</title>
<abstract role="texinfo-node">
<para>Cygwin User's Guide</para>
</abstract>
<xi:include href="legal.xml"/>
</bookinfo>

View File

@ -1431,7 +1431,11 @@ following sections explain the settings in detail.
</sect4>
<sect4 id="ntsec-mapping-nsswitch-home"><title id="ntsec-mapping-nsswitch-home.title">The <literal>db_home:</literal> setting</title>
<sect4 id="ntsec-mapping-nsswitch-home">
<sectioninfo>
<title role="texinfo-node">The <literal>db_home</literal> setting</title>
</sectioninfo>
<title id="ntsec-mapping-nsswitch-home.title">The <literal>db_home:</literal> setting</title>
<para>
The <literal>db_home:</literal> setting defines how Cygwin fetches the user's
@ -1518,7 +1522,11 @@ So by default, Cygwin just sets the home dir to
</sect4>
<sect4 id="ntsec-mapping-nsswitch-shell"><title id="ntsec-mapping-nsswitch-shell.title">The <literal>db_shell:</literal> setting</title>
<sect4 id="ntsec-mapping-nsswitch-shell">
<sectioninfo>
<title role="texinfo-node">The <literal>db_shell</literal> setting</title>
</sectioninfo>
<title id="ntsec-mapping-nsswitch-shell.title">The <literal>db_shell:</literal> setting</title>
<para>
The <literal>db_shell:</literal> setting defines how Cygwin fetches the user's
@ -1593,7 +1601,11 @@ As for <literal>db_home:</literal>, the default setting for
</sect4>
<sect4 id="ntsec-mapping-nsswitch-gecos"><title id="ntsec-mapping-nsswitch-gecos.title">The <literal>db_gecos:</literal> setting</title>
<sect4 id="ntsec-mapping-nsswitch-gecos">
<sectioninfo>
<title role="texinfo-node">The <literal>db_gecos</literal> setting</title>
</sectioninfo>
<title id="ntsec-mapping-nsswitch-gecos.title">The <literal>db_gecos:</literal> setting</title>
<para>
The <literal>db_gecos:</literal> setting defines how to fetch additional