mirror of
https://github.com/nginx/nginx.git
synced 2024-12-18 23:57:49 +08:00
50be2f3f45
Filename extension used for dynamically loaded perl modules isn't necessarily ".so" (e.g., it's ".bundle" on Mac OS X). This fixes "make" after "make" unnecessarily rebuilding perl module.
71 lines
2.0 KiB
Plaintext
71 lines
2.0 KiB
Plaintext
|
|
# Copyright (C) Igor Sysoev
|
|
# Copyright (C) Nginx, Inc.
|
|
|
|
|
|
echo "checking for perl"
|
|
|
|
|
|
NGX_PERL_VER=`$NGX_PERL -v 2>&1 | grep '^This is perl' 2>&1 \
|
|
| sed -e 's/^This is perl, \(.*\)/\1/'`
|
|
|
|
if test -n "$NGX_PERL_VER"; then
|
|
echo " + perl version: $NGX_PERL_VER"
|
|
|
|
if [ "`$NGX_PERL -e 'use 5.006001; print "OK"'`" != "OK" ]; then
|
|
echo
|
|
echo "$0: error: perl 5.6.1 or higher is required"
|
|
echo
|
|
|
|
exit 1;
|
|
fi
|
|
|
|
if [ "`$NGX_PERL -MExtUtils::Embed -e 'print "OK"'`" != "OK" ]; then
|
|
echo
|
|
echo "$0: error: perl module ExtUtils::Embed is required"
|
|
echo
|
|
|
|
exit 1;
|
|
fi
|
|
|
|
NGX_PERL_CFLAGS="$CFLAGS `$NGX_PERL -MExtUtils::Embed -e ccopts`"
|
|
NGX_PM_CFLAGS=`$NGX_PERL -MExtUtils::Embed -e ccopts`
|
|
|
|
# gcc 4.1/4.2 warn about unused values in pTHX_
|
|
NGX_PERL_CFLAGS=`echo $NGX_PERL_CFLAGS \
|
|
| sed -e 's/-Wunused-value/-Wno-unused-value/'`
|
|
# icc8 warns 'declaration hides parameter "my_perl"' in ENTER and LEAVE
|
|
NGX_PERL_CFLAGS=`echo $NGX_PERL_CFLAGS \
|
|
| sed -e 's/-wd171/-wd171 -wd1599/'`
|
|
|
|
ngx_perl_ldopts=`$NGX_PERL -MExtUtils::Embed -e ldopts`
|
|
|
|
ngx_perl_dlext=`$NGX_PERL -MConfig -e 'print $Config{dlext}'`
|
|
|
|
if $NGX_PERL -V:usemultiplicity | grep define > /dev/null; then
|
|
have=NGX_HAVE_PERL_MULTIPLICITY . auto/have
|
|
echo " + perl interpreter multiplicity found"
|
|
fi
|
|
|
|
if $NGX_PERL -V:useithreads | grep undef > /dev/null; then
|
|
# FreeBSD port wants to link with -pthread non-threaded perl
|
|
ngx_perl_ldopts=`echo $ngx_perl_ldopts | sed 's/ -pthread//'`
|
|
fi
|
|
|
|
CORE_LINK="$CORE_LINK $ngx_perl_ldopts"
|
|
LINK_DEPS="$LINK_DEPS $NGX_OBJS/src/http/modules/perl/blib/arch/auto/nginx/nginx.$ngx_perl_dlext"
|
|
|
|
if test -n "$NGX_PERL_MODULES"; then
|
|
have=NGX_PERL_MODULES value="(u_char *) \"$NGX_PERL_MODULES\""
|
|
. auto/define
|
|
NGX_PERL_MODULES_MAN=$NGX_PERL_MODULES/man3
|
|
fi
|
|
|
|
else
|
|
echo
|
|
echo "$0: error: perl 5.6.1 or higher is required"
|
|
echo
|
|
|
|
exit 1;
|
|
fi
|