diff options
-rwxr-xr-x | configure.ac | 50 | ||||
-rw-r--r-- | src/Makefile.am | 7 |
2 files changed, 50 insertions, 7 deletions
diff --git a/configure.ac b/configure.ac index 0f149680b..0cc55b569 100755 --- a/configure.ac +++ b/configure.ac @@ -201,14 +201,50 @@ AC_MSG_ERROR([ *** Unable to find CURL library (http://curl.haxx.se/)])) AC_CHECK_HEADERS([curl/curl.h], , AC_MSG_ERROR([ *** CURL library found but cannot find headers (http://curl.haxx.se/)])) -if test -n "$PKG_CONFIG"; then - LIBS="$LIBS `$PKG_CONFIG --libs libxml-2.0`" - CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags libxml-2.0`" + +# select xml lib +AC_ARG_ENABLE(libxml, + AC_HELP_STRING([--enable-libxml=ARG], + [xml libs: libxml (default), pugixml]), + [ + xmllib="${enableval}" + ], + [ + xmllib="libxml" + ] +) + +case $xmllib in + "libxml") + AM_CONDITIONAL(ENABLE_LIBXML, true) + AM_CONDITIONAL(ENABLE_PUGIXML, false) + ;; + "pugixml") + AM_CONDITIONAL(ENABLE_LIBXML, false) + AM_CONDITIONAL(ENABLE_PUGIXML, true) + ;; + *) + AC_MSG_ERROR([[Wrong xml lib name]]) + ;; +esac + +if test "$xmllib" == "libxml"; then + if test -n "$PKG_CONFIG"; then + LIBS="$LIBS `$PKG_CONFIG --libs libxml-2.0`" + CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags libxml-2.0`" + fi + AC_CHECK_LIB([xml2], [xmlInitParser], , + AC_MSG_ERROR([ *** Unable to find libxml2 library (http://xmlsoft.org/)])) + AC_CHECK_HEADERS([libxml/xmlreader.h], , + AC_MSG_ERROR([ *** libxml2 library found but cannot find headers (http://xmlsoft.org/)])) +fi + +if test "$xmllib" == "pugixml"; then + AC_CHECK_LIB([pugixml], [main], , + AC_MSG_ERROR([ *** Unable to find pugixml library (http://pugixml.org/)])) + AC_CHECK_HEADERS([pugixml.hpp], , + AC_MSG_ERROR([ *** pugixml library found but cannot find headers (http://pugixml.org/)])) fi -AC_CHECK_LIB([xml2], [xmlInitParser], , -AC_MSG_ERROR([ *** Unable to find libxml2 library (http://xmlsoft.org/)])) -AC_CHECK_HEADERS([libxml/xmlreader.h], , -AC_MSG_ERROR([ *** libxml2 library found but cannot find headers (http://xmlsoft.org/)])) AC_CHECK_LIB(png, png_write_info, , AC_MSG_ERROR([ *** Unable to find png library])) diff --git a/src/Makefile.am b/src/Makefile.am index a710feab7..88b8b768c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -13,6 +13,13 @@ manaplus_CXXFLAGS = -DPKG_DATADIR=\""$(pkgdatadir)/"\" \ -DLOCALEDIR=\""$(localedir)"\" \ -Wall +if ENABLE_PUGIXML +manaplus_CXXFLAGS += -DENABLE_PUGIXML +endif +if ENABLE_LIBXML +manaplus_CXXFLAGS += -DENABLE_LIBXML +endif + if ENABLE_PORTABLE dyecmd_CXXFLAGS += -DENABLE_PORTABLE manaplus_CXXFLAGS += -DENABLE_PORTABLE |