XSL_INCS=`$XSLT_CONFIG --cflags`
PHP_EVAL_LIBLINE($XSL_LIBS, XSL_SHARED_LIBADD)
PHP_EVAL_INCLINE($XSL_INCS)
+
+ AC_MSG_CHECKING([for EXSLT support])
+ for i in $PHP_XSL /usr/local /usr; do
+ if test -r "$i/include/libexslt/exslt.h"; then
+ PHP_XSL_EXSL_DIR=$i
+ break
+ fi
+ done
+ if test -z "$PHP_XSL_EXSL_DIR"; then
+ AC_MSG_RESULT(not found)
+ else
+ AC_MSG_RESULT(found)
+ PHP_ADD_LIBRARY_WITH_PATH(exslt, $PHP_XSL_EXSL_DIR/lib, XSL_SHARED_LIBADD)
+ PHP_ADD_INCLUDE($PHP_XSL_EXSL_DIR/include)
+ AC_DEFINE(HAVE_XSL_EXSLT,1,[ ])
+ fi
else
AC_MSG_ERROR([libxslt version 1.0.18 or greater required.])
fi
+
+
fi
AC_DEFINE(HAVE_XSL,1,[ ])
memcpy(&xsl_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
REGISTER_XSL_CLASS(ce, "xsltprocessor", NULL, php_xsl_xsltprocessor_class_functions, xsl_xsltprocessor_class_entry);
+#if HAVE_XSL_EXSLT
+ exsltRegisterAll();
+#endif
+
return SUCCESS;
}
/* }}} */
PHP_MINFO_FUNCTION(xsl)
{
php_info_print_table_start();
- php_info_print_table_row(2, "XML/XSLT", "enabled");
{
char buffer[128];
int major, minor, subminor;
- php_info_print_table_row(2, "DOM/XSLT", "enabled");
+ php_info_print_table_row(2, "XSL", "enabled");
major = xsltLibxsltVersion/10000;
minor = (xsltLibxsltVersion - major * 10000) / 100;
subminor = (xsltLibxsltVersion - major * 10000 - minor * 100);
snprintf(buffer, 128, "%d.%d.%d", major, minor, subminor);
php_info_print_table_row(2, "libxslt compiled against libxml Version", buffer);
}
+#if HAVE_XSL_EXSLT
+ php_info_print_table_row(2, "EXSLT", "enabled");
+ php_info_print_table_row(2, "libexslt Version", LIBEXSLT_DOTTED_VERSION);
+#endif
php_info_print_table_end();
/* Remove comments if you have entries in php.ini
#include <libxslt/xsltInternals.h>
#include <libxslt/xsltutils.h>
#include <libxslt/transform.h>
+#if HAVE_XSL_EXSLT
+#include <libexslt/exslt.h>
+#include <libexslt/exsltconfig.h>
+#endif
#include "../dom/xml_common.h"
#include "xsl_fe.h"