annotate auto/lib/perl/conf @ 5145:f6777aef5b2f

Configure: fixed perl module make rules. 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.
author Ruslan Ermilov <ru@nginx.com>
date Thu, 28 Mar 2013 08:46:42 +0000
parents fac1cc762969
children baf2816d556d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 950
diff changeset
3 # Copyright (C) Nginx, Inc.
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
4
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 echo "checking for perl"
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
9 NGX_PERL_VER=`$NGX_PERL -v 2>&1 | grep '^This is perl' 2>&1 \
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10 | sed -e 's/^This is perl, \(.*\)/\1/'`
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12 if test -n "$NGX_PERL_VER"; then
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
13 echo " + perl version: $NGX_PERL_VER"
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
14
4866
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
15 if [ "`$NGX_PERL -e 'use 5.006001; print "OK"'`" != "OK" ]; then
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
16 echo
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
17 echo "$0: error: perl 5.6.1 or higher is required"
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
18 echo
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
19
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
20 exit 1;
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
21 fi
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
22
4866
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
23 if [ "`$NGX_PERL -MExtUtils::Embed -e 'print "OK"'`" != "OK" ]; then
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
24 echo
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
25 echo "$0: error: perl module ExtUtils::Embed is required"
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
26 echo
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
27
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
28 exit 1;
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
29 fi
fac1cc762969 Configure: additional test for ExtUtils::Embed perl module presence.
Andrey Belov <defan@nginx.com>
parents: 4412
diff changeset
30
681
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
31 NGX_PERL_CFLAGS="$CFLAGS `$NGX_PERL -MExtUtils::Embed -e ccopts`"
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
32 NGX_PM_CFLAGS=`$NGX_PERL -MExtUtils::Embed -e ccopts`
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
33
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
34 # gcc 4.1/4.2 warn about unused values in pTHX_
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
35 NGX_PERL_CFLAGS=`echo $NGX_PERL_CFLAGS \
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
36 | sed -e 's/-Wunused-value/-Wno-unused-value/'`
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
37 # icc8 warns 'declaration hides parameter "my_perl"' in ENTER and LEAVE
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
38 NGX_PERL_CFLAGS=`echo $NGX_PERL_CFLAGS \
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
39 | sed -e 's/-wd171/-wd171 -wd1599/'`
7e24168b0853 nginx-0.4.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 669
diff changeset
40
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
41 ngx_perl_ldopts=`$NGX_PERL -MExtUtils::Embed -e ldopts`
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
42
5145
f6777aef5b2f Configure: fixed perl module make rules.
Ruslan Ermilov <ru@nginx.com>
parents: 4866
diff changeset
43 ngx_perl_dlext=`$NGX_PERL -MConfig -e 'print $Config{dlext}'`
f6777aef5b2f Configure: fixed perl module make rules.
Ruslan Ermilov <ru@nginx.com>
parents: 4866
diff changeset
44
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
45 if $NGX_PERL -V:usemultiplicity | grep define > /dev/null; then
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
46 have=NGX_HAVE_PERL_MULTIPLICITY . auto/have
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
47 echo " + perl interpreter multiplicity found"
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
48 fi
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
49
872
1c4a5b3f9110 Axe several perl interpreter instances: they may be useful in currently
Igor Sysoev <igor@sysoev.ru>
parents: 681
diff changeset
50 if $NGX_PERL -V:useithreads | grep undef > /dev/null; then
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
51 # FreeBSD port wants to link with -pthread non-threaded perl
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
52 ngx_perl_ldopts=`echo $ngx_perl_ldopts | sed 's/ -pthread//'`
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
53 fi
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
54
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
55 CORE_LINK="$CORE_LINK $ngx_perl_ldopts"
5145
f6777aef5b2f Configure: fixed perl module make rules.
Ruslan Ermilov <ru@nginx.com>
parents: 4866
diff changeset
56 LINK_DEPS="$LINK_DEPS $NGX_OBJS/src/http/modules/perl/blib/arch/auto/nginx/nginx.$ngx_perl_dlext"
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
57
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
58 if test -n "$NGX_PERL_MODULES"; then
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
59 have=NGX_PERL_MODULES value="(u_char *) \"$NGX_PERL_MODULES\""
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
60 . auto/define
950
9581fba9ea12 fix for nginx.pm default installation
Igor Sysoev <igor@sysoev.ru>
parents: 872
diff changeset
61 NGX_PERL_MODULES_MAN=$NGX_PERL_MODULES/man3
599
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
62 fi
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
63
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
64 else
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
65 echo
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
66 echo "$0: error: perl 5.6.1 or higher is required"
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
67 echo
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
68
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
69 exit 1;
869b6444d234 nginx-0.3.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
70 fi