diff options
author | Jon Turney <jon.turney@dronecode.org.uk> | 2021-12-07 14:05:34 +0000 |
---|---|---|
committer | Jon Turney <jon.turney@dronecode.org.uk> | 2021-12-17 22:28:16 +0000 |
commit | f4a26ececa180cec70c41b6dd2082ff730f92065 (patch) | |
tree | 65ae27ecbf2fa0c64637f01b345ee80fe23863a4 /winsup | |
parent | 80f4b7d5456ea17d64998805fb3d64db091201fc (diff) | |
download | newlib-f4a26ececa180cec70c41b6dd2082ff730f92065.zip newlib-f4a26ececa180cec70c41b6dd2082ff730f92065.tar.gz newlib-f4a26ececa180cec70c41b6dd2082ff730f92065.tar.bz2 |
Cygwin: Conditionally build documentation
Add a configure option '--disable-doc' to disable building of the
documentation by the 'all' target.
Check for the required tools at configure time, and require them if
building documentation is enabled.
Even if building the documentation was diabled with '--disable-doc',
'make -C doc' at the top-level can still make the documentation, if the
documentation tools were found. If the tools were not found, 'missing'
is used to issue a warning about that.
Update instructions for building Cygwin appropriately.
(Building documentation remains the default to increase the chances of
noticing when building the documentation is broken.)
Diffstat (limited to 'winsup')
-rw-r--r-- | winsup/Makefile.am | 6 | ||||
-rw-r--r-- | winsup/configure.ac | 25 | ||||
-rw-r--r-- | winsup/doc/Makefile.am | 2 | ||||
-rw-r--r-- | winsup/doc/faq-programming.xml | 14 |
4 files changed, 39 insertions, 8 deletions
diff --git a/winsup/Makefile.am b/winsup/Makefile.am index 067f746..9efdd4c 100644 --- a/winsup/Makefile.am +++ b/winsup/Makefile.am @@ -14,6 +14,10 @@ cygdoc_DATA = \ CYGWIN_LICENSE \ COPYING -SUBDIRS = cygwin cygserver doc utils testsuite +SUBDIRS = cygwin cygserver utils testsuite + +if BUILD_DOC +SUBDIRS += doc +endif cygserver utils testsuite: cygwin diff --git a/winsup/configure.ac b/winsup/configure.ac index cf1128b..4ae2050 100644 --- a/winsup/configure.ac +++ b/winsup/configure.ac @@ -88,7 +88,30 @@ AC_SUBST(TLSOFFSETS_H) AM_CONDITIONAL(TARGET_X86_64, [test $target_cpu = "x86_64"]) -AC_CHECK_PROGS([DOCBOOK2XTEXI], [docbook2x-texi db2x_docbook2texi], [true]) +AC_ARG_ENABLE(doc, + [AS_HELP_STRING([--enable-doc], [Build documentation])],, + enable_doc=yes) +AM_CONDITIONAL(BUILD_DOC, [test $enable_doc != "no"]) + +AC_CHECK_PROGS([DOCBOOK2XTEXI], [docbook2x-texi db2x_docbook2texi]) +if test -z "$DOCBOOK2XTEXI" ; then + if test "x$enable_doc" != "xno"; then + AC_MSG_ERROR([docbook2texi is required to build documentation]) + else + unset DOCBOOK2XTEXI + AM_MISSING_PROG([DOCBOOK2XTEXI], [docbook2texi]) + fi +fi + +AC_CHECK_PROGS([XMLTO], [xmlto]) +if test -z "$XMLTO"; then + if test "x$enable_doc" != "xno"; then + AC_MSG_ERROR([xmlto is required to build documentation]) + else + unset XMLTO + AM_MISSING_PROG([XMLTO], [xmlto]) + fi +fi if test "x$with_cross_bootstrap" != "xyes"; then AC_CHECK_PROGS(MINGW_CXX, ${target_cpu}-w64-mingw32-g++) diff --git a/winsup/doc/Makefile.am b/winsup/doc/Makefile.am index 534d674..5164c6e 100644 --- a/winsup/doc/Makefile.am +++ b/winsup/doc/Makefile.am @@ -16,7 +16,7 @@ doc_DATA = \ htmldir = $(datarootdir)/doc -XMLTO=xmlto --skip-validation --with-dblatex +XMLTO=@XMLTO@ --skip-validation --with-dblatex DOCBOOK2XTEXI=@DOCBOOK2XTEXI@ --xinclude --info --utf8trans-map=charmap -include Makefile.dep diff --git a/winsup/doc/faq-programming.xml b/winsup/doc/faq-programming.xml index 26fcfe9..46dd23a 100644 --- a/winsup/doc/faq-programming.xml +++ b/winsup/doc/faq-programming.xml @@ -689,12 +689,16 @@ Building for 32-bit Cygwin also requires Building for 64-bit Cygwin also requires <literal>mingw64-x86_64-gcc-g++</literal> and <literal>mingw64-x86_64-zlib</literal>. +</para> + <!-- If you want to run the tests, <literal>dejagnu</literal> is also required. --> -Normally, building ignores any errors in building the documentation, -which requires the <literal>dblatex</literal>, <literal>docbook2X</literal>, -<literal>docbook-xml45</literal>, <literal>docbook-xsl</literal>, and -<literal>xmlto</literal> packages. For more information on building the -documentation, see the README included in the <literal>cygwin-doc</literal> package. + +<para> +Building the documentation also requires the <literal>dblatex</literal>, +<literal>docbook2X</literal>, <literal>docbook-xml45</literal>, +<literal>docbook-xsl</literal>, and <literal>xmlto</literal> packages. Building +the documentation can be disabled with the <literal>--disable-doc</literal> +option to <literal>configure</literal>. </para> <para>Next, check out the Cygwin sources from the |