Rebased version of https://github.com/dajobe/raptor/commit/abfdfb44cc00dfafbad4e594618621fce21590e1 --- a/configure.ac +++ b/configure.ac @@ -524,6 +524,44 @@ if test "X$xslt_config" != "Xno" ; then fi fi +if test "X$XSLT_CONFIG" != "X"; then + XSLT_CFLAGS=`$XSLT_CONFIG --cflags` + XSLT_LIBS=`$XSLT_CONFIG --libs` + + CPPFLAGS="$XSLT_CFLAGS $CPPFLAGS" + LIBS="$LIBS $XSLT_LIBS" + + AC_CHECK_FUNC(xsltSaveResultToString, have_xsltSaveResultToString=yes, have_xsltSaveResultToString=no) + AC_MSG_CHECKING(for libxslt via xslt-config) + if test $have_xsltSaveResultToString = yes; then + have_libxslt=1 + LIBXSLT_VERSION=`$XSLT_CONFIG --version` + libxslt_version_dec=`echo $LIBXSLT_VERSION | $AWK -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'` + libxslt_min_version_dec=`echo $libxslt_min_version | $AWK -F. '{printf("%d\n", 10000*$1 + 100*$2 + 3)};'` + AC_MSG_RESULT(yes - version $LIBXSLT_VERSION) + if test $libxslt_version_dec -lt $libxslt_min_version_dec; then + AC_MSG_WARN(Using libxslt $LIBXSLT_VERSION is unsupported - $libxslt_min_version or newer required.) + have_libxslt=0 + fi + fi + + AC_CHECK_FUNC(xsltInit) + + AC_CHECK_HEADERS(libxslt/xslt.h) + if test "$ac_cv_header_libxslt_xslt_h" = no ; then + AC_MSG_WARN(libxslt library found but not headers - disabling) + have_libxslt_lib=0 + have_libxslt=0 + fi + CPPFLAGS="$oCPPFLAGS" + LIBS="$oLIBS" +else + PKG_CHECK_MODULES([XSLT], [libxslt > $libxslt_min_version], [ + LIBXSLT_VERSION=`$PKG_CONFIG libxslt --modversion` + have_libxslt=1 + ], [have_libxslt=0]) +fi + libcurl_source=no PKG_CHECK_MODULES([LIBCURL],[libcurl],[ LIBCURL_VERSION=`$PKG_CONFIG libcurl --modversion` @@ -650,41 +688,6 @@ fi CPPFLAGS="$oCPPFLAGS" LIBS="$oLIBS" - -have_libxslt=0 - -if test "X$XSLT_CONFIG" != X; then - CPPFLAGS="`$XSLT_CONFIG --cflags` $CPPFLAGS" - LIBS="$LIBS `$XSLT_CONFIG --libs`" - AC_CHECK_FUNC(xsltSaveResultToString, have_xsltSaveResultToString=yes, have_xsltSaveResultToString=no) - AC_MSG_CHECKING(for system libxslt library) - if test $have_xsltSaveResultToString = yes; then - have_libxslt=1 - LIBXSLT_VERSION=`$XSLT_CONFIG --version` - libxslt_version_dec=`echo $LIBXSLT_VERSION | $AWK -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'` - libxslt_min_version_dec=`echo $libxslt_min_version | $AWK -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'` - AC_MSG_RESULT(yes - version $LIBXSLT_VERSION) - if test $libxslt_version_dec -lt $libxslt_min_version_dec; then - AC_MSG_WARN(Using libxslt $LIBXSLT_VERSION is unsupported - $libxslt_min_version or newer required.) - have_libxslt=0 - fi - else - AC_MSG_RESULT(no) - fi - - AC_CHECK_FUNC(xsltInit) - - AC_CHECK_HEADERS(libxslt/xslt.h) - if test "$ac_cv_header_libxslt_xslt_h" = no ; then - AC_MSG_WARN(libxslt library found but not headers - disabling) - have_libxslt_lib=0 - have_libxslt=0 - fi -fi -CPPFLAGS="$oCPPFLAGS" -LIBS="$oLIBS" - - dnl Check for JSON library AC_ARG_WITH(yajl, [ --with-yajl=DIR YAJL installation directory or 'no' to disable (default=auto)], yajl_prefix="$withval", yajl_prefix="none") @@ -1184,8 +1187,8 @@ AM_CONDITIONAL(RAPTOR_XML_LIBXML, test $need_libxml = 1) if test $need_libxslt = 1; then - RAPTOR_LDFLAGS="$RAPTOR_LDFLAGS `$XSLT_CONFIG --libs`" - CPPFLAGS="`$XSLT_CONFIG --cflags` $CPPFLAGS" + RAPTOR_LDFLAGS="$RAPTOR_LDFLAGS $XSLT_LIBS" + CPPFLAGS="$CPPFLAGS $XSLT_CFLAGS" fi if test $need_libyajl = 1; then