Mercurial > hg > nginx
changeset 2299:3e213fa0cbb3
exslt support
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 11 Nov 2008 15:22:24 +0000 |
parents | 3578be3f65ce |
children | 159136c9808d |
files | auto/lib/libxslt/conf src/http/modules/ngx_http_xslt_filter_module.c |
diffstat | 2 files changed, 73 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/auto/lib/libxslt/conf Mon Nov 10 18:34:24 2008 +0000 +++ b/auto/lib/libxslt/conf Tue Nov 11 15:22:24 2008 +0000 @@ -88,3 +88,68 @@ exit 1 fi + + + ngx_feature="libexslt" + ngx_feature_name=NGX_HAVE_EXSLT + ngx_feature_run=no + ngx_feature_incs="#include <libexslt/exslt.h>" + ngx_feature_path="/usr/include/libxml2" + ngx_feature_libs="-lexslt" + ngx_feature_test="exsltRegisterAll();" + . auto/feature + +if [ $ngx_found = no ]; then + + # FreeBSD port + + ngx_feature="libexslt in /usr/local/" + ngx_feature_path="/usr/local/include/libxml2 /usr/local/include" + + if [ $NGX_RPATH = YES ]; then + ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lexslt" + else + ngx_feature_libs="-L/usr/local/lib -lexslt" + fi + + . auto/feature +fi + + +if [ $ngx_found = no ]; then + + # NetBSD port + + ngx_feature="libexslt in /usr/pkg/" + ngx_feature_path="/usr/pkg/include/libxml2 /usr/local/include" + + if [ $NGX_RPATH = YES ]; then + ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lexslt" + else + ngx_feature_libs="-L/usr/pkg/lib -lexslt" + fi + + . auto/feature +fi + + +if [ $ngx_found = no ]; then + + # MacPorts + + ngx_feature="libexslt in /opt/local/" + ngx_feature_path="/opt/local/include/libxml2 /opt/local/include" + + if [ $NGX_RPATH = YES ]; then + ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lexslt" + else + ngx_feature_libs="-L/opt/local/lib -lexslt" + fi + + . auto/feature +fi + + +if [ $ngx_found = yes ]; then + CORE_LIBS="$CORE_LIBS -lexslt" +fi
--- a/src/http/modules/ngx_http_xslt_filter_module.c Mon Nov 10 18:34:24 2008 +0000 +++ b/src/http/modules/ngx_http_xslt_filter_module.c Tue Nov 11 15:22:24 2008 +0000 @@ -15,6 +15,10 @@ #include <libxslt/transform.h> #include <libxslt/xsltutils.h> +#if (NGX_HAVE_EXSLT) +#include <libexslt/exslt.h> +#endif + #ifndef NGX_HTTP_XSLT_REUSE_DTD #define NGX_HTTP_XSLT_REUSE_DTD 1 @@ -1269,6 +1273,10 @@ { xmlInitParser(); +#if (NGX_HAVE_EXSLT) + exsltRegisterAll(); +#endif + ngx_http_next_header_filter = ngx_http_top_header_filter; ngx_http_top_header_filter = ngx_http_xslt_header_filter;