Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/auto
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@nginx.com>2016-02-26 14:27:04 +0300
committerRuslan Ermilov <ru@nginx.com>2016-02-26 14:27:04 +0300
commit89b8f57768c661a6ccaa06a53c3137510d8b0de2 (patch)
tree4c95d4c141ddbbc835b890f2d03a5de4cd3e75f5 /auto
parent39b78fdf964df34523f7dc8bc32f09d333db1849 (diff)
Dynamic modules: perl.
Diffstat (limited to 'auto')
-rw-r--r--auto/install2
-rw-r--r--auto/lib/conf2
-rw-r--r--auto/lib/make2
-rw-r--r--auto/lib/perl/conf7
-rw-r--r--auto/lib/perl/make5
-rw-r--r--auto/make29
-rw-r--r--auto/module4
-rw-r--r--auto/modules6
-rw-r--r--auto/options2
9 files changed, 39 insertions, 20 deletions
diff --git a/auto/install b/auto/install
index 36226ade4..6efa92f73 100644
--- a/auto/install
+++ b/auto/install
@@ -3,7 +3,7 @@
# Copyright (C) Nginx, Inc.
-if [ $USE_PERL = YES ]; then
+if [ $USE_PERL != NO ]; then
cat << END >> $NGX_MAKEFILE
diff --git a/auto/lib/conf b/auto/lib/conf
index 6aaa43a5f..a6242e781 100644
--- a/auto/lib/conf
+++ b/auto/lib/conf
@@ -66,7 +66,7 @@ if [ $USE_LIBGD != NO ]; then
. auto/lib/libgd/conf
fi
-if [ $USE_PERL = YES ]; then
+if [ $USE_PERL != NO ]; then
. auto/lib/perl/conf
fi
diff --git a/auto/lib/make b/auto/lib/make
index 58a84a34c..6298b940f 100644
--- a/auto/lib/make
+++ b/auto/lib/make
@@ -27,6 +27,6 @@ if [ $NGX_LIBATOMIC != NO -a $NGX_LIBATOMIC != YES ]; then
. auto/lib/libatomic/make
fi
-if [ $USE_PERL = YES ]; then
+if [ $USE_PERL != NO ]; then
. auto/lib/perl/make
fi
diff --git a/auto/lib/perl/conf b/auto/lib/perl/conf
index 4d1bcf128..f5f5d3e57 100644
--- a/auto/lib/perl/conf
+++ b/auto/lib/perl/conf
@@ -60,8 +60,11 @@ if test -n "$NGX_PERL_VER"; then
| sed -e 's/-arch i386//' -e 's/-arch x86_64//'`
fi
- CORE_LINK="$CORE_LINK $ngx_perl_ldopts"
- LINK_DEPS="$LINK_DEPS $NGX_OBJS/$ngx_perl_module"
+ if [ $USE_PERL = YES ]; then
+ CORE_LINK="$CORE_LINK $ngx_perl_ldopts"
+ fi
+
+ NGX_LIB_PERL="$ngx_perl_ldopts"
if test -n "$NGX_PERL_MODULES"; then
have=NGX_PERL_MODULES value="(u_char *) \"$NGX_PERL_MODULES\""
diff --git a/auto/lib/perl/make b/auto/lib/perl/make
index d1c1b9e48..8af8902f5 100644
--- a/auto/lib/perl/make
+++ b/auto/lib/perl/make
@@ -8,7 +8,10 @@ v=`grep 'define NGINX_VERSION' src/core/nginx.h | sed -e 's/^.*"\(.*\)".*/\1/'`
cat << END >> $NGX_MAKEFILE
-$NGX_OBJS/src/http/modules/perl/blib/arch/auto/nginx/nginx.$ngx_perl_dlext: \\
+$NGX_OBJS/src/http/modules/perl/ngx_http_perl_module.o: \\
+ $NGX_OBJS/$ngx_perl_module
+
+$NGX_OBJS/$ngx_perl_module: \\
\$(CORE_DEPS) \$(HTTP_DEPS) \\
src/http/modules/perl/ngx_http_perl_module.h \\
$NGX_OBJS/src/http/modules/perl/Makefile
diff --git a/auto/make b/auto/make
index e2e8e2983..87218e955 100644
--- a/auto/make
+++ b/auto/make
@@ -281,7 +281,7 @@ if [ $HTTP = YES ]; then
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
else
ngx_cc="\$(CC) $ngx_compile_opt \$(CFLAGS) \$(CORE_INCS) \$(HTTP_INCS)"
- ngx_perl_cc="\$(CC) $ngx_compile_opt \$(NGX_PERL_CFLAGS) "
+ ngx_perl_cc="\$(CC) $ngx_compile_opt \$(NGX_PERL_CFLAGS)"
ngx_perl_cc="$ngx_perl_cc \$(CORE_INCS) \$(HTTP_INCS)"
fi
@@ -494,6 +494,8 @@ if test -n "$NGX_PCH"; then
ngx_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(CFLAGS) $ngx_use_pch \$(ALL_INCS)"
else
ngx_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(CFLAGS) \$(ALL_INCS)"
+ ngx_perl_cc="\$(CC) $ngx_compile_opt $ngx_pic_opt \$(NGX_PERL_CFLAGS)"
+ ngx_perl_cc="$ngx_perl_cc \$(ALL_INCS)"
fi
ngx_obj_deps="\$(CORE_DEPS)"
@@ -639,15 +641,15 @@ $ngx_modules_obj: \$(CORE_DEPS)$ngx_cont$ngx_modules_c
END
- for ngx_src in $ngx_module_srcs
+ for ngx_source in $ngx_module_srcs
do
- case "$ngx_src" in
+ case "$ngx_source" in
src/*)
- ngx_obj=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
+ ngx_obj=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"`
;;
*)
- ngx_obj="addon/`basename \`dirname $ngx_src\``"
- ngx_obj=`echo $ngx_obj/\`basename $ngx_src\` \
+ ngx_obj="addon/`basename \`dirname $ngx_source\``"
+ ngx_obj=`echo $ngx_obj/\`basename $ngx_source\` \
| sed -e "s/\//$ngx_regex_dirsep/g"`
;;
esac
@@ -658,14 +660,25 @@ END
-e "s#^\(.*\.\)c\\$#$ngx_objs_dir\1$ngx_objext#g" \
-e "s#^\(.*\.\)S\\$#$ngx_objs_dir\1$ngx_objext#g"`
- ngx_src=`echo $ngx_src | sed -e "s/\//$ngx_regex_dirsep/g"`
+ ngx_src=`echo $ngx_source | sed -e "s/\//$ngx_regex_dirsep/g"`
- cat << END >> $NGX_MAKEFILE
+ if [ $ngx_source = src/http/modules/perl/ngx_http_perl_module.c ]; then
+
+ cat << END >> $NGX_MAKEFILE
+
+$ngx_obj: $ngx_obj_deps$ngx_cont$ngx_src
+ $ngx_perl_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
+
+END
+ else
+
+ cat << END >> $NGX_MAKEFILE
$ngx_obj: $ngx_obj_deps$ngx_cont$ngx_src
$ngx_cc$ngx_tab$ngx_objout$ngx_obj$ngx_tab$ngx_src$NGX_AUX
END
+ fi
done
done
diff --git a/auto/module b/auto/module
index 908f0c6e6..16a816f67 100644
--- a/auto/module
+++ b/auto/module
@@ -40,7 +40,7 @@ if [ "$ngx_module_link" = DYNAMIC ]; then
do
case $lib in
- LIBXSLT | LIBGD | GEOIP)
+ LIBXSLT | LIBGD | GEOIP | PERL)
libs="$libs \$NGX_LIB_$lib"
if eval [ "\$USE_${lib}" = NO ] ; then
@@ -48,7 +48,7 @@ if [ "$ngx_module_link" = DYNAMIC ]; then
fi
;;
- PCRE | OPENSSL | MD5 | SHA1 | ZLIB | PERL)
+ PCRE | OPENSSL | MD5 | SHA1 | ZLIB)
eval USE_${lib}=YES
;;
diff --git a/auto/modules b/auto/modules
index ebfc91ddf..22ff6d946 100644
--- a/auto/modules
+++ b/auto/modules
@@ -727,14 +727,12 @@ if [ $HTTP_SCGI = YES ]; then
. auto/module
fi
-if [ $HTTP_PERL = YES ]; then
- USE_PERL=YES
-
+if [ $HTTP_PERL != NO ]; then
ngx_module_name=ngx_http_perl_module
ngx_module_incs=src/http/modules/perl
ngx_module_deps=src/http/modules/perl/ngx_http_perl_module.h
ngx_module_srcs=src/http/modules/perl/ngx_http_perl_module.c
- ngx_module_libs=
+ ngx_module_libs=PERL
ngx_module_link=$HTTP_PERL
. auto/module
diff --git a/auto/options b/auto/options
index 36b34bc31..8ac6aa437 100644
--- a/auto/options
+++ b/auto/options
@@ -271,6 +271,7 @@ do
--without-http_upstream_zone_module) HTTP_UPSTREAM_ZONE=NO ;;
--with-http_perl_module) HTTP_PERL=YES ;;
+ --with-http_perl_module=dynamic) HTTP_PERL=DYNAMIC ;;
--with-perl_modules_path=*) NGX_PERL_MODULES="$value" ;;
--with-perl=*) NGX_PERL="$value" ;;
@@ -452,6 +453,7 @@ cat << END
disable ngx_http_upstream_zone_module
--with-http_perl_module enable ngx_http_perl_module
+ --with-http_perl_module=dynamic enable dynamic ngx_http_perl_module
--with-perl_modules_path=PATH set Perl modules path
--with-perl=PATH set perl binary pathname