annotate auto/lib/pcre/conf @ 5041:7a6fbac9f3e3 stable-1.2

Merge of r4961: configure: better check for PCRE JIT. On Mac OS X system toolchain by default prefers include files from /usr/local/include, but libraries from /usr/lib. This might result in various problems, in particular the one outlined below. If the PCRE library is installed into /usr/local/, this results in pcre.h being used from /usr/local/include (with PCRE_CONFIG_JIT defined), but libpcre from /usr/lib (as shipped with the OS, without pcre_free_study() symbol). As a result build fails as we use pcre_free_study() function if we try to compile with PCRE JIT support. Obvious workaround to the root cause is to ask compiler to prefer library from /usr/local/lib via ./configure --with-ld-opt="-L/usr/local/lib". On the other hand, in any case it would be good to check if the function we are going to use is available, hence the change. See thread here for details: http://mailman.nginx.org/pipermail/nginx-devel/2012-December/003074.html Prodded by Piotr Sikora.
author Maxim Dounin <mdounin@mdounin.ru>
date Sun, 10 Feb 2013 03:18:08 +0000
parents 62d8db8c7157
children 3d2d3e1cf427
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 320
diff changeset
1
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 320
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 4396
diff changeset
3 # Copyright (C) Nginx, Inc.
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 320
diff changeset
4
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 if [ $PCRE != NONE ]; then
297
ee394e997c77 nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 295
diff changeset
7 CORE_INCS="$CORE_INCS $PCRE"
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
9 case "$NGX_CC_NAME" in
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
10
461
a88a3e4e158f nginx-0.1.5-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
11 msvc* | owc* | bcc)
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
12 have=NGX_PCRE . auto/have
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
13 have=PCRE_STATIC . auto/have
288
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
14 CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
15 LINK_DEPS="$LINK_DEPS $PCRE/pcre.lib"
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
16 CORE_LIBS="$CORE_LIBS $PCRE/pcre.lib"
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
17 ;;
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
18
1307
811fb97b9bf7 fix building PCRE by SunStudio
Igor Sysoev <igor@sysoev.ru>
parents: 1306
diff changeset
19 icc* )
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
20 have=NGX_PCRE . auto/have
288
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
21 CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
22
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
23 LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
24
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
25 echo $ngx_n "checking for PCRE library ...$ngx_c"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
26
1306
56af40ef3a08 Solaris compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 1305
diff changeset
27 if [ -f $PCRE/pcre.h ]; then
1006
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
28 ngx_pcre_ver=`grep PCRE_MAJOR $PCRE/pcre.h \
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
29 | sed -e 's/^.*PCRE_MAJOR.* \(.*\)$/\1/'`
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
30
1321
8eb4dfcb89a6 fix bug introduced by r1306
Igor Sysoev <igor@sysoev.ru>
parents: 1307
diff changeset
31 else if [ -f $PCRE/configure.in ]; then
1006
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
32 ngx_pcre_ver=`grep PCRE_MAJOR= $PCRE/configure.in \
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
33 | sed -e 's/^.*=\(.*\)$/\1/'`
1305
1476d32c66a7 icc/sunc and PCRE-7.1+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 1085
diff changeset
34
1476d32c66a7 icc/sunc and PCRE-7.1+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 1085
diff changeset
35 else
1476d32c66a7 icc/sunc and PCRE-7.1+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 1085
diff changeset
36 ngx_pcre_ver=`grep pcre_major, $PCRE/configure.ac \
1476d32c66a7 icc/sunc and PCRE-7.1+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 1085
diff changeset
37 | sed -e 's/^.*pcre_major,.*\[\(.*\)\].*$/\1/'`
1476d32c66a7 icc/sunc and PCRE-7.1+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 1085
diff changeset
38 fi
1006
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
39 fi
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
40
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
41 echo " $ngx_pcre_ver major version found"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
42
288
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
43 # to allow -ipo optimization we link with the *.o but not library
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
44
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
45 case "$ngx_pcre_ver" in
1006
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
46 4|5)
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
47 CORE_LIBS="$CORE_LIBS $PCRE/pcre.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
48 ;;
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
49
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
50 6)
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
51 CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
52 CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
53 CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
54 CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
55 CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
56 CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
57 CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
58 ;;
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
59
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
60 *)
1006
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
61 CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
62 CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
63 CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
64 CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
65 CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
66 CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
67 CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
68 CORE_LIBS="$CORE_LIBS $PCRE/pcre_newline.o"
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
69 ;;
1006
0d0c74b73573 icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents: 876
diff changeset
70
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
71 esac
288
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
72 ;;
f81d075ad172 nginx-0.0.2-2004-03-14-23:46:25 import
Igor Sysoev <igor@sysoev.ru>
parents: 286
diff changeset
73
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
74 *)
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
75 have=NGX_PCRE . auto/have
286
fc8dc489247e nginx-0.0.2-2004-03-12-00:34:52 import
Igor Sysoev <igor@sysoev.ru>
parents: 282
diff changeset
76 CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
fc8dc489247e nginx-0.0.2-2004-03-12-00:34:52 import
Igor Sysoev <igor@sysoev.ru>
parents: 282
diff changeset
77 LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
306
6b91bfbc4123 nginx-0.0.3-2004-04-05-00:32:09 import
Igor Sysoev <igor@sysoev.ru>
parents: 297
diff changeset
78 CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre.a"
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
79 ;;
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
80
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
81 esac
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
82
4388
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
83
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
84 if [ $PCRE_JIT = YES ]; then
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
85 have=NGX_HAVE_PCRE_JIT . auto/have
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
86 PCRE_CONF_OPT="$PCRE_CONF_OPT --enable-jit"
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
87 fi
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
88
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
89 else
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
90
493
975f62e77f02 nginx-0.1.21-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 469
diff changeset
91 if [ "$NGX_PLATFORM" != win32 ]; then
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
92
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
93 PCRE=NO
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
94
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
95 ngx_feature="PCRE library"
469
2ff194b74f1e nginx-0.1.9-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 461
diff changeset
96 ngx_feature_name="NGX_PCRE"
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
97 ngx_feature_run=no
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
98 ngx_feature_incs="#include <pcre.h>"
875
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
99 ngx_feature_path=
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
100 ngx_feature_libs="-lpcre"
4559
62d8db8c7157 Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
101 ngx_feature_test="pcre *re;
62d8db8c7157 Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
102 re = pcre_compile(NULL, 0, NULL, 0, NULL);
62d8db8c7157 Fixed more gcc46 warnings in configure tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
103 if (re == NULL) return 1"
455
295d97d70c69 nginx-0.1.2-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 444
diff changeset
104 . auto/feature
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
105
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
106 if [ $ngx_found = no ]; then
875
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
107
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
108 # FreeBSD port
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
109
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
110 ngx_feature="PCRE library in /usr/local/"
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
111 ngx_feature_path="/usr/local/include"
1490
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
112
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
113 if [ $NGX_RPATH = YES ]; then
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
114 ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpcre"
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
115 else
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
116 ngx_feature_libs="-L/usr/local/lib -lpcre"
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
117 fi
111c571f431c add rpath for Solaris
Igor Sysoev <igor@sysoev.ru>
parents: 1321
diff changeset
118
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
119 . auto/feature
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
120 fi
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
121
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
122 if [ $ngx_found = no ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
123
2141
4bc6ef1d7904 update comment
Igor Sysoev <igor@sysoev.ru>
parents: 2010
diff changeset
124 # RedHat RPM, Solaris package
2010
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
125
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
126 ngx_feature="PCRE library in /usr/include/pcre/"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
127 ngx_feature_path="/usr/include/pcre"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
128 ngx_feature_libs="-lpcre"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
129
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
130 . auto/feature
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
131 fi
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
132
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
133 if [ $ngx_found = no ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
134
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
135 # NetBSD port
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
136
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
137 ngx_feature="PCRE library in /usr/pkg/"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
138 ngx_feature_path="/usr/pkg/include"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
139
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
140 if [ $NGX_RPATH = YES ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
141 ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lpcre"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
142 else
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
143 ngx_feature_libs="-L/usr/pkg/lib -lpcre"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
144 fi
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
145
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
146 . auto/feature
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
147 fi
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
148
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
149 if [ $ngx_found = no ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
150
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
151 # MacPorts
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
152
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
153 ngx_feature="PCRE library in /opt/local/"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
154 ngx_feature_path="/opt/local/include"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
155
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
156 if [ $NGX_RPATH = YES ]; then
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
157 ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lpcre"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
158 else
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
159 ngx_feature_libs="-L/opt/local/lib -lpcre"
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
160 fi
bd6cc5370fc1 simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents: 1490
diff changeset
161
875
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
162 . auto/feature
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 263
diff changeset
163 fi
875
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
164
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
165 if [ $ngx_found = yes ]; then
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
166 CORE_INCS="$CORE_INCS $ngx_feature_path"
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
167 CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
7af8276b1c2f test PCRE in FreeBSD, Linux, and NetBSD
Igor Sysoev <igor@sysoev.ru>
parents: 577
diff changeset
168 PCRE=YES
3684
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
169 fi
4388
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
170
4396
eaace502bdf6 Fixed configure with system PCRE library on Solaris.
Valentin Bartenev <vbart@nginx.com>
parents: 4388
diff changeset
171 if [ $PCRE = YES ]; then
4388
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
172 ngx_feature="PCRE JIT support"
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
173 ngx_feature_name="NGX_HAVE_PCRE_JIT"
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
174 ngx_feature_test="int jit = 0;
5041
7a6fbac9f3e3 Merge of r4961: configure: better check for PCRE JIT.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4559
diff changeset
175 pcre_free_study(NULL);
4388
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
176 pcre_config(PCRE_CONFIG_JIT, &jit);
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
177 if (jit != 1) return 1;"
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
178 . auto/feature
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
179
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
180 if [ $ngx_found = yes ]; then
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
181 PCRE_JIT=YES
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
182 fi
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 3684
diff changeset
183 fi
3684
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
184 fi
2893
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
185
3684
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
186 if [ $PCRE != YES ]; then
2893
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
187 cat << END
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
188
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
189 $0: error: the HTTP rewrite module requires the PCRE library.
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
190 You can either disable the module by using --without-http_rewrite_module
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
191 option, or install the PCRE library into the system, or build the PCRE library
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
192 statically from the source with nginx by using --with-pcre=<path> option.
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
193
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
194 END
3684
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
195 exit 1
4d47a0658e7d stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents: 2893
diff changeset
196 fi
2893
da1ba8a5c8c9 stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents: 2141
diff changeset
197
255
e6938ca7331a nginx-0.0.2-2004-02-09-23:47:18 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
198 fi