summaryrefslogtreecommitdiff
blob: 5ef9ac1b6ffa98907e8870c661959a4a0c9afe3b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
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