X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=aclocal.m4;h=13ebe36b1c75992b996095d5c7e3ffce22411239;hp=9984eaef0e3b89d5987f03659c01c5162dd45d72;hb=19e299bbfa64f239999c23baa7fe42530a157393;hpb=1cce2f51656cfbd8c7933a914a4bd981792aa1e6 diff --git a/aclocal.m4 b/aclocal.m4 index 9984eae..13ebe36 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -747,14 +747,28 @@ AS_VAR_POPDEF([fp_func])dnl # FP_GEN_DOCBOOK_XML # ------------------ # Generates a DocBook XML V4.2 document in conftest.xml. +# +# It took a lot of experimentation to find a document that will cause +# xsltproc to fail with an error code when the relevant +# stylesheets/DTDs are not found. I couldn't make xsltproc fail with +# a single-file document, it seems a multi-file document is needed. +# -- SDM 2009-06-03 +# AC_DEFUN([FP_GEN_DOCBOOK_XML], -[rm -f conftest.xml +[rm -f conftest.xml conftest-book.xml cat > conftest.xml << EOF + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [[ + +]]> - A DocBook Test Document +&conftest-book; + +EOF +cat >conftest-book.xml << EOF + + A DocBook “Test Document” A Chapter Title This is a paragraph, referencing . @@ -763,7 +777,6 @@ cat > conftest.xml << EOF Another Chapter Title This is another paragraph, referencing . - EOF ]) # FP_GEN_DOCBOOK_XML @@ -793,33 +806,28 @@ fi ])# FP_PROG_XSLTPROC -# FP_DIR_DOCBOOK_XSL(XSL-DIRS) +# FP_DOCBOOK_XSL # ---------------------------- -# Check which of the directories XSL-DIRS contains DocBook XSL stylesheets. The -# output variable DIR_DOCBOOK_XSL will contain the first usable directory or -# will be empty if none could be found. -AC_DEFUN([FP_DIR_DOCBOOK_XSL], +# Check that we can process a DocBook XML document to HTML using xsltproc. +AC_DEFUN([FP_DOCBOOK_XSL], [AC_REQUIRE([FP_PROG_XSLTPROC])dnl if test -n "$XsltprocCmd"; then - AC_CACHE_CHECK([for DocBook XSL stylesheet directory], fp_cv_dir_docbook_xsl, + AC_CACHE_CHECK([for DocBook XSL stylesheet], fp_cv_dir_docbook_xsl, [FP_GEN_DOCBOOK_XML fp_cv_dir_docbook_xsl=no - for fp_var in $1; do - if $XsltprocCmd ${fp_var}/html/docbook.xsl conftest.xml > /dev/null 2>&1; then - fp_cv_dir_docbook_xsl=$fp_var - break - fi - done + if $XsltprocCmd --nonet http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl conftest.xml > /dev/null 2>&1; then + fp_cv_dir_docbook_xsl=yes + fi rm -rf conftest*]) fi if test x"$fp_cv_dir_docbook_xsl" = xno; then AC_MSG_WARN([cannot find DocBook XSL stylesheets, you will not be able to build the documentation]) - DIR_DOCBOOK_XSL= + HAVE_DOCBOOK_XSL=NO else - DIR_DOCBOOK_XSL=$fp_cv_dir_docbook_xsl + HAVE_DOCBOOK_XSL=YES fi -AC_SUBST([DIR_DOCBOOK_XSL]) -])# FP_DIR_DOCBOOK_XSL +AC_SUBST([HAVE_DOCBOOK_XSL]) +])# FP_DOCBOOK_XSL # FP_PROG_XMLLINT @@ -841,7 +849,7 @@ AC_DEFUN([FP_CHECK_DOCBOOK_DTD], if test -n "$XmllintCmd"; then AC_MSG_CHECKING([for DocBook DTD]) FP_GEN_DOCBOOK_XML - if $XmllintCmd --valid --noout conftest.xml > /dev/null 2>&1; then + if $XmllintCmd --nonet --valid --noout conftest.xml ; then AC_MSG_RESULT([ok]) else AC_MSG_RESULT([failed]) @@ -906,31 +914,16 @@ AC_SUBST([FopCmd]) ])# FP_PROG_FOP -# FP_PROG_FO_PROCESSOR -# -------------------- -# Try to find an FO processor. PassiveTeX output is sometimes a bit strange, so -# try FOP first. Sets the output variables FopCmd, XmltexCmd, DvipsCmd, and -# PdfxmltexCmd. -AC_DEFUN([FP_PROG_FO_PROCESSOR], -[AC_REQUIRE([FP_PROG_FOP]) -AC_PATH_PROG([XmltexCmd], [xmltex]) -AC_PATH_PROG([DvipsCmd], [dvips]) -if test -z "$FopCmd"; then - if test -z "$XmltexCmd"; then - AC_MSG_WARN([cannot find an FO => DVI converter, you will not be able to build DVI or PostScript documentation]) - else - if test -z "$DvipsCmd"; then - AC_MSG_WARN([cannot find a DVI => PS converter, you will not be able to build PostScript documentation]) - fi - fi - AC_PATH_PROG([PdfxmltexCmd], [pdfxmltex]) - if test -z "$PdfxmltexCmd"; then - AC_MSG_WARN([cannot find an FO => PDF converter, you will not be able to build PDF documentation]) - fi -elif test -z "$XmltexCmd"; then - AC_MSG_WARN([cannot find an FO => DVI converter, you will not be able to build DVI documentation]) +# FP_PROG_HSTAGS +# ---------------- +# Sets the output variable HstagsCmd to the full Haskell tags program path. +# HstagsCmd is empty if no such program could be found. +AC_DEFUN([FP_PROG_HSTAGS], +[AC_PATH_PROG([HstagsCmd], [hasktags]) +if test -z "$HstagsCmd"; then + AC_MSG_WARN([cannot find hasktags in your PATH, you will not be able to build the tags]) fi -])# FP_PROG_FO_PROCESSOR +])# FP_PROG_HSTAGS # FP_PROG_GHC_PKG