Mercurial > hg > nginx-quic
annotate auto/lib/pcre/conf @ 4960:b39d947fcb82
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 is 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 | Wed, 12 Dec 2012 13:50:07 +0000 |
parents | 62d8db8c7157 |
children | 3d2d3e1cf427 |
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 | 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 | 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 | 11 msvc* | owc* | bcc) |
455 | 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 | 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 | 25 echo $ngx_n "checking for PCRE library ...$ngx_c" |
26 | |
1306 | 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 | 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 | 40 |
41 echo " $ngx_pcre_ver major version found" | |
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 | 44 |
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 | 50 6) |
51 CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o" | |
52 CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o" | |
53 CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o" | |
54 CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o" | |
55 CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o" | |
56 CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o" | |
57 CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o" | |
58 ;; | |
59 | |
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 | 69 ;; |
1006
0d0c74b73573
icc and PCRE-6.5+ compatibility
Igor Sysoev <igor@sysoev.ru>
parents:
876
diff
changeset
|
70 |
523 | 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 | 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 | 91 if [ "$NGX_PLATFORM" != win32 ]; then |
2010
bd6cc5370fc1
simplify library autoconfigure
Igor Sysoev <igor@sysoev.ru>
parents:
1490
diff
changeset
|
92 |
455 | 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 | 95 ngx_feature="PCRE library" |
469 | 96 ngx_feature_name="NGX_PCRE" |
455 | 97 ngx_feature_run=no |
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 | 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 | 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 | 112 |
113 if [ $NGX_RPATH = YES ]; then | |
114 ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpcre" | |
115 else | |
116 ngx_feature_libs="-L/usr/local/lib -lpcre" | |
117 fi | |
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 | 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; |
4960
b39d947fcb82
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 |