dd autoconf m4 macro YAZ_DOC for YAZ documentation setup (docbook).
[yaz-moved-to-github.git] / yaz.m4
diff --git a/yaz.m4 b/yaz.m4
index 34ae858..283d266 100644 (file)
--- a/yaz.m4
+++ b/yaz.m4
@@ -1,8 +1,7 @@
-## $Id: yaz.m4,v 1.4 2002-11-27 00:53:02 adam Exp $
+## $Id: yaz.m4,v 1.7 2004-04-30 19:34:05 adam Exp $
 ## 
-# Use this m4 funciton for autoconf if you use YAZ in your own
+# Use this m4 function for autoconf if you use YAZ in your own
 # configure script.
-# YAZ_INIT
 
 AC_DEFUN([YAZ_INIT],
 [
@@ -44,10 +43,94 @@ AC_DEFUN([YAZ_INIT],
                        YAZINC=`$yazconfig --cflags $1`
                        YAZVERSION=`$yazconfig --version`
                fi
-               AC_MSG_RESULT($yazconfig)
+               AC_MSG_RESULT([$yazconfig])
        else
                AC_MSG_RESULT(Not found)
                YAZVERSION=NONE
        fi
+       if test "X$YAZVERSION" != "XNONE"; then
+               AC_MSG_CHECKING([for YAZ version])
+               AC_MSG_RESULT([$YAZVERSION])
+               if test "$2"; then
+                       have_yaz_version=`echo "$YAZVERSION" | awk 'BEGIN { FS = "."; } { printf "%d", ([$]1 * 1000 + [$]2) * 1000 + [$]3;}'`
+                       req_yaz_version=`echo "$2" | awk 'BEGIN { FS = "."; } { printf "%d", ([$]1 * 1000 + [$]2) * 1000 + [$]3;}'`
+                       if test "$have_yaz_version" -lt "$req_yaz_version"; then
+                               AC_MSG_ERROR([$YAZVERSION. Requires $2 or later])
+                       fi
+               fi
+       fi
+]) 
+
+dnl ----- Setup Docbook documentation for YAZ
+AC_DEFUN([YAZ_DOC],
+[
+AC_SUBST(DTD_DIR)      
+AC_ARG_WITH(dtd, [  --with-dtd[=DIR]        use docbookx.dtd in DIR],
+[
+       if test -f "$withval/docbookx.dtd"; then
+               DTD_DIR=$withva l
+       fi
+],[
+       AC_MSG_CHECKING(for docbookx.dtd)
+       DTD_DIR=""
+       for d in /usr/share/sgml/docbook/dtd/xml/4.1.2 \
+               /usr/share/sgml/docbook/xml-dtd-4.1.2* \
+               /usr/share/sgml/docbook/xml-dtd-4.1 \
+               /usr/share/sgml/docbook/dtd/xml/4.0 \
+               /usr/lib/sgml/dtd/docbook-xml 
+       do
+               if test -f $d/docbookx.dtd; then
+                       AC_MSG_RESULT($d)
+                       DTD_DIR=$d
+                       break
+               fi
+       done
+       if test -z "$DTD_DIR"; then
+               AC_MSG_RESULT(Not found)
+       fi
+])
+AC_SUBST(DSSSL_DIR)
+AC_ARG_WITH(dsssl,[  --with-dsssl[=DIR]      use Docbook DSSSL in DIR/{html,print}/docbook.dsl],
+[
+       if test -f "$withval/html/docbook.dsl"; then
+               DSSSL_DIR=$withval
+       fi
+],[
+       AC_MSG_CHECKING(for docbook.dsl)
+       DSSSL_DIR=""
+       for d in /usr/share/sgml/docbook/stylesheet/dsssl/modular \
+               /usr/share/sgml/docbook/dsssl-stylesheets-1.* \
+               /usr/lib/sgml/stylesheet/dsssl/docbook/nwalsh 
+       do
+               if test -f $d/html/docbook.dsl; then
+                       AC_MSG_RESULT($d)
+                       DSSSL_DIR=$d
+                       break
+               fi
+       done
+       if test -z "$DSSSL_DIR"; then
+               AC_MSG_RESULT(Not found)
+       fi
+])
+AC_SUBST(XSL_DIR)
+AC_ARG_WITH(xsl,[  --with-xsl[=DIR]        use Docbook XSL in DIR/{htmlhelp,xhtml}],
+[
+       if test -f "$withval/htmlhelp/htmlhelp.xsl"; then
+               XSL_DIR=$withval
+       fi
+],[
+       AC_MSG_CHECKING(for htmlhelp.xsl)
+       for d in /usr/share/sgml/docbook/stylesheet/xsl/nwalsh \
+               /usr/share/sgml/docbook/xsl-stylesheets-1.* 
+       do
+               if test -f $d/htmlhelp/htmlhelp.xsl; then
+                       AC_MSG_RESULT($d)
+                       XSL_DIR=$d
+                       break
+               fi
+       done
+       if test -z "$XSL_DIR"; then
+               AC_MSG_RESULT(Not found)
+       fi
 ])
-       
+])