summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorPatrick Lam <plam@MIT.EDU>2005-09-29 20:53:30 +0000
committerPatrick Lam <plam@MIT.EDU>2005-09-29 20:53:30 +0000
commite99f0f0a45b29ad195c96833c95771ccf7771fef (patch)
tree63b1ad14a1896930dc0edeb2b4cef4ab945fb8d6 /configure.in
parent649cc3616d11add9d5c39563f9f343614c2bb2eb (diff)
Use libxml2 if requested (with --enable-libxml2) or if expat is not
available. reviewed by: plam
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in162
1 files changed, 91 insertions, 71 deletions
diff --git a/configure.in b/configure.in
index 4505b93..9e2fdde 100644
--- a/configure.in
+++ b/configure.in
@@ -197,102 +197,122 @@ AC_ARG_WITH(expat, [ --with-expat=DIR Use Expat in DIR
AC_ARG_WITH(expat-includes, [ --with-expat-includes=DIR Use Expat includes in DIR], expat_includes=$withval, expat_includes=yes)
AC_ARG_WITH(expat-lib, [ --with-expat-lib=DIR Use Expat library in DIR], expat_lib=$withval, expat_lib=yes)
-case "$expat" in
-no)
+if test "$enable_libxml2" != "yes"; then
+ case "$expat" in
+ no)
;;
-*)
- case "$expat_includes" in
- yes)
- case "$expat" in
+ *)
+ case "$expat_includes" in
yes)
+ case "$expat" in
+ yes)
+ ;;
+ *)
+ EXPAT_CFLAGS="-I$expat/include"
+ ;;
+ esac
+ ;;
+ no)
+ EXPAT_CFLAGS=""
;;
*)
- EXPAT_CFLAGS="-I$expat/include"
+ EXPAT_CFLAGS="-I$expat_includes"
;;
esac
- ;;
- no)
- EXPAT_CFLAGS=""
- ;;
- *)
- EXPAT_CFLAGS="-I$expat_includes"
- ;;
- esac
- case "$expat_lib" in
- yes)
- case "$expat" in
+ case "$expat_lib" in
yes)
- EXPAT_LIBS="-lexpat"
+ case "$expat" in
+ yes)
+ EXPAT_LIBS="-lexpat"
+ ;;
+ *)
+ EXPAT_LIBS="-L$expat/lib -lexpat"
+ ;;
+ esac
+ ;;
+ no)
;;
*)
- EXPAT_LIBS="-L$expat/lib -lexpat"
+ EXPAT_LIBS="-L$expat_lib -lexpat"
;;
esac
- ;;
- no)
- ;;
- *)
- EXPAT_LIBS="-L$expat_lib -lexpat"
- ;;
- esac
- expatsaved_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $EXPAT_CFLAGS"
- expatsaved_LIBS="$LIBS"
- LIBS="$LIBS $EXPAT_LIBS"
+ expatsaved_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $EXPAT_CFLAGS"
+ expatsaved_LIBS="$LIBS"
+ LIBS="$LIBS $EXPAT_LIBS"
- AC_CHECK_HEADER(expat.h)
- case "$ac_cv_header_expat_h" in
- no)
- AC_CHECK_HEADER(xmlparse.h)
- case "$ac_cv_header_xmlparse_h" in
+ AC_CHECK_HEADER(expat.h)
+ case "$ac_cv_header_expat_h" in
no)
- have_expat_header=no;
+ AC_CHECK_HEADER(xmlparse.h)
+ case "$ac_cv_header_xmlparse_h" in
+ no)
+ have_expat_header=no;
+ ;;
+ yes)
+ HAVE_XMLPARSE_H=1
+ AC_SUBST(HAVE_XMLPARSE_H)
+ AC_DEFINE_UNQUOTED(HAVE_XMLPARSE_H,$HAVE_XMLPARSE_H,
+ [Use xmlparse.h instead of expat.h])
+ have_expat_header=yes
+ ;;
+ esac
;;
yes)
- HAVE_XMLPARSE_H=1
- AC_SUBST(HAVE_XMLPARSE_H)
- AC_DEFINE_UNQUOTED(HAVE_XMLPARSE_H,$HAVE_XMLPARSE_H,
- [Use xmlparse.h instead of expat.h])
have_expat_header=yes
;;
esac
- ;;
- yes)
- have_expat_header=yes
- ;;
- esac
- case "$have_expat_header" in
- no)
- expat=no
- ;;
- yes)
- AC_CHECK_FUNCS(XML_SetDoctypeDeclHandler)
- case "$ac_cv_func_XML_SetDoctypeDeclHandler" in
- yes)
- HAVE_EXPAT=1
- AC_SUBST(HAVE_EXPAT)
- AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT,
- [Found a useable expat library])
- ;;
- *)
+ case "$have_expat_header" in
+ no)
expat=no
;;
+ yes)
+ AC_CHECK_FUNCS(XML_SetDoctypeDeclHandler)
+ case "$ac_cv_func_XML_SetDoctypeDeclHandler" in
+ yes)
+ HAVE_EXPAT=1
+ AC_SUBST(HAVE_EXPAT)
+ AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT,
+ [Found a useable expat library])
+ ;;
+ *)
+ expat=no
+ ;;
+ esac
+ ;;
esac
+ CPPFLAGS="$expatsaved_CPPFLAGS"
+ LIBS="$expatsaved_LIBS"
;;
esac
- CPPFLAGS="$expatsaved_CPPFLAGS"
- LIBS="$expatsaved_LIBS"
- ;;
-esac
-AC_SUBST(EXPAT_LIBS)
-AC_SUBST(EXPAT_CFLAGS)
-case "$expat" in
-no)
- AC_MSG_ERROR([Cannot find usable expat library. This could mean that your version is too old.])
- ;;
-esac
+ AC_SUBST(EXPAT_CFLAGS)
+ AC_SUBST(EXPAT_LIBS)
+
+ case "$expat" in
+ no)
+ EXPAT_CFLAGS=""
+ EXPAT_LIBS=""
+
+ AC_MSG_WARN([Cannot find usable expat library. Trying to use libxml2 as fallback.])
+ ;;
+ esac
+fi
+
+#
+# Check libxml2 configuration
+#
+
+AC_ARG_ENABLE(libxml2, [ --enable-libxml2 Use libxml2 instead of Expat])
+
+if test "$enable_libxml2" = "yes" -o "$expat" = "no"; then
+ PKG_CHECK_MODULES([LIBXML2], [libxml-2.0 >= 2.6])
+ AC_DEFINE_UNQUOTED(ENABLE_LIBXML2,1,[Use libxml2 instead of Expat])
+
+ AC_SUBST(LIBXML2_CFLAGS)
+ AC_SUBST(LIBXML2_LIBS)
+fi
#
# Set default font directory