Fix boost not found on debian-testing MP-628
[m4-moved-to-github.git] / yaz_libxml2.m4
1 AC_DEFUN([YAZ_LIBXML2],[
2 AC_PATH_PROG(pkgconfigpath, pkg-config, NONE)
3 pkgmodule=""
4 xml2dir=default
5 XML2_VER=""
6 AC_ARG_WITH(xml2,[[  --with-xml2[=PREFIX]    use libxml2 in PREFIX]],xml2dir=$withval)
7 dnl -- if no PREFIX or not specified we just search in default locations
8 dnl -- try pkg-config. If not found, use xml2-config
9 if test "$xml2dir" = "yes" -o "$xml2dir" = "default"; then
10     if test "$pkgconfigpath" != "NONE"; then
11         if $pkgconfigpath --exists libxml-2.0; then
12             pkgmodule="libxml-2.0"
13         fi
14     fi
15     if test -z "$pkgmodule"; then
16         for d in /usr /usr/local; do
17             if test -x $d/bin/xml2-config; then
18                 xml2dir=$d
19             fi
20         done
21     fi
22 fi
23 dnl --- do the real check (pkg-config, xml2-config, not-found)
24 if test "$xml2dir" != "no"; then
25     AC_MSG_CHECKING(for libXML2)
26     if test "$pkgmodule"; then
27         XML2_LIBS=`$pkgconfigpath --libs $pkgmodule`
28         XML2_CFLAGS=`$pkgconfigpath --cflags $pkgmodule`
29         XML2_VER=`$pkgconfigpath --modversion $pkgmodule`
30         AC_MSG_RESULT($XML2_VER)
31         m4_default([$1],[AC_DEFINE(HAVE_XML2)])
32     elif test -x $xml2dir/bin/xml2-config; then
33         XML2_LIBS=`$xml2dir/bin/xml2-config --libs`
34         XML2_CFLAGS=`$xml2dir/bin/xml2-config --cflags`
35         XML2_VER=`$xml2dir/bin/xml2-config --version`
36         AC_MSG_RESULT($XML2_VER)
37         m4_default([$1],[AC_DEFINE(HAVE_XML2)])
38     else
39         AC_MSG_RESULT(Not found)
40         if test "$xml2dir" = "default"; then
41             AC_MSG_WARN([libxml2 development libraries not found.])
42             AC_MSG_WARN([There will be no support for SRU.])
43         else
44             AC_MSG_ERROR([libxml2 development libraries not found.])
45         fi
46     fi
47     XML2_LIBS=`echo $XML2_LIBS|sed 's@-./usr/lib @@g'`
48 fi
49 ])
50
51 AC_DEFUN([YAZ_LIBXSLT],[
52 pkgmodule=""
53 xsltdir=default
54 yaz_xslt_pkgconfig=no
55 XSLT_VER=""
56 AC_ARG_WITH(xslt,[[  --with-xslt[=PREFIX]    use libXSLT in PREFIX]],xsltdir=$withval)
57
58 dnl -- if no PREFIX or not specified we just search in default locations
59 dnl -- try pkg-config. If not found, use xslt-config
60 if test "$xsltdir" = "yes" -o "$xsltdir" = "default"; then
61     if test "$pkgconfigpath" != "NONE"; then
62                 # pkg-config on woody reports bad CFLAGS which does 
63                 # not include libxml2 CFLAGS, so avoid it..
64         if $pkgconfigpath --atleast-version 1.1.0 libxslt; then
65             pkgmodule="libxslt"
66         fi
67     fi
68     if test -z "$pkgmodule"; then
69         for d in /usr /usr/local; do
70             if test -x $d/bin/xslt-config; then
71                 xsltdir=$d
72             fi
73         done
74     fi
75 fi
76 dnl --- do the real check (pkg-config, xslt-config, not-found)
77 if test "$xsltdir" != "no"; then
78     AC_MSG_CHECKING(for libXSLT)
79     if test "$pkgmodule"; then
80         XML2_LIBS=`$pkgconfigpath --libs $pkgmodule`
81         XML2_CFLAGS=`$pkgconfigpath --cflags $pkgmodule`
82         XSLT_VER=`$pkgconfigpath --modversion $pkgmodule`
83         AC_MSG_RESULT($XSLT_VER)
84         m4_default([$1],[AC_DEFINE(HAVE_XSLT)])
85         yaz_xslt_pkgconfig=yes
86     elif test -x $xsltdir/bin/xslt-config; then
87         XML2_LIBS=`$xsltdir/bin/xslt-config --libs`
88         XML2_CFLAGS=`$xsltdir/bin/xslt-config --cflags`
89         XSLT_VER=`$xsltdir/bin/xslt-config --version`
90         AC_MSG_RESULT($XSLT_VER)
91         m4_default([$1],[AC_DEFINE(HAVE_XSLT)])
92     else
93         AC_MSG_RESULT(Not found)
94         
95         if test "$xsltdir" = "default"; then
96             AC_MSG_WARN([libXSLT development libraries not found.])
97         else
98             AC_MSG_ERROR([libXSLT development libraries not found.])
99         fi
100     fi
101     XML2_LIBS=`echo $XML2_LIBS|sed 's@-./usr/lib @@g'`
102 fi
103 ])
104
105 dnl -- get libEXSLT. xslt-config is no good. So use pkg-config only
106 AC_DEFUN([YAZ_LIBEXSLT],[
107 exsltdir=default
108 pkgmodule=""
109 EXSLT_VER=""
110 AC_ARG_WITH(exslt,[[  --with-exslt[=PREFIX]   use libEXSLT in PREFIX]],exsltdir=$withval)
111 if test "$exsltdir" = "yes" -o "$exsltdir" = "default"; then
112     if test "$pkgconfigpath" != "NONE"; then
113         if $pkgconfigpath --exists libexslt; then
114             pkgmodule="libexslt"
115         fi
116     fi
117 fi
118 if test "$exsltdir" != "no"; then
119     AC_MSG_CHECKING(for libEXSLT)
120     if test "$pkgmodule"; then
121         if test "$yaz_xslt_pkgconfig" != "yes"; then
122             AC_MSG_RESULT([Disabled. Libxslt is not pkg-config configured])
123         else
124             XML2_LIBS=`$pkgconfigpath --libs $pkgmodule`
125             XML2_CFLAGS=`$pkgconfigpath --cflags $pkgmodule`
126             EXSLT_VER=`$pkgconfigpath --modversion $pkgmodule`
127             AC_MSG_RESULT($EXSLT_VER)
128             m4_default([$1],[AC_DEFINE(HAVE_EXSLT)])
129         fi
130     else
131         AC_MSG_RESULT(Not found)
132         
133         if test "$pkgconfigpath" = "NONE"; then
134             extra="libEXSLT not enabled. pkg-config not found."
135         else
136             extra="libEXSLT development libraries not found."
137         fi
138         
139         if test "$exsltdir" = "default"; then
140             AC_MSG_WARN([$extra])
141         else
142             AC_MSG_ERROR([$extra])
143         fi
144     fi
145 fi
146 OLIBS=$LIBS
147 LIBS="$LIBS $XML2_LIBS"
148 AC_CHECK_FUNCS([xsltSaveResultToString])
149 LIBS=$OLIBS
150 ])
151 dnl Local Variables:
152 dnl mode:shell-script
153 dnl sh-indentation: 2
154 dnl sh-basic-offset: 4
155 dnl End: