annotate auto/lib/pcre/make @ 7981:0b5f12d5c531

PCRE2 library support. The PCRE2 library is now used by default if found, instead of the original PCRE library. If needed for some reason, this can be disabled with the --without-pcre2 configure option. To make it possible to specify paths to the library and include files via --with-cc-opt / --with-ld-opt, the library is first tested without any additional paths and options. If this fails, the pcre2-config script is used. Similarly to the original PCRE library, it is now possible to build PCRE2 from sources with nginx configure, by using the --with-pcre= option. It automatically detects if PCRE or PCRE2 sources are provided. Note that compiling PCRE2 10.33 and later requires inttypes.h. When compiling on Windows with MSVC, inttypes.h is only available starting with MSVC 2013. In older versions some replacement needs to be provided ("echo '#include <stdint.h>' > pcre2-10.xx/src/inttypes.h" is good enough for MSVC 2010). The interface on nginx side remains unchanged.
author Maxim Dounin <mdounin@mdounin.ru>
date Sat, 25 Dec 2021 01:07:15 +0300
parents 78f8ac479735
children
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: 297
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: 297
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 4388
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: 297
diff changeset
4
274
a1ea1ecc3eac nginx-0.0.2-2004-03-01-23:00:04 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
6 if [ $PCRE_LIBRARY = PCRE2 ]; then
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
7
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
8 # PCRE2
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
9
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
10 if [ $NGX_CC_NAME = msvc ]; then
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
11
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
12 # With PCRE2, it is not possible to compile all sources.
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
13 # Since list of source files changes between versions, we
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
14 # test files which might not be present.
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
15
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
16 ngx_pcre_srcs="pcre2_auto_possess.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
17 pcre2_chartables.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
18 pcre2_compile.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
19 pcre2_config.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
20 pcre2_context.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
21 pcre2_dfa_match.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
22 pcre2_error.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
23 pcre2_jit_compile.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
24 pcre2_maketables.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
25 pcre2_match.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
26 pcre2_match_data.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
27 pcre2_newline.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
28 pcre2_ord2utf.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
29 pcre2_pattern_info.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
30 pcre2_string_utils.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
31 pcre2_study.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
32 pcre2_substitute.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
33 pcre2_substring.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
34 pcre2_tables.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
35 pcre2_ucd.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
36 pcre2_valid_utf.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
37 pcre2_xclass.c"
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
38
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
39 ngx_pcre_test="pcre2_convert.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
40 pcre2_extuni.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
41 pcre2_find_bracket.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
42 pcre2_script_run.c \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
43 pcre2_serialize.c"
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
44
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
45 for ngx_src in $ngx_pcre_test
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
46 do
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
47 if [ -f $PCRE/src/$ngx_src ]; then
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
48 ngx_pcre_srcs="$ngx_pcre_srcs $ngx_src"
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
49 fi
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
50 done
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
51
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
52 ngx_pcre_objs=`echo $ngx_pcre_srcs \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
53 | sed -e "s#\([^ ]*\.\)c#\1$ngx_objext#g"`
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
54
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
55 ngx_pcre_srcs=`echo $ngx_pcre_srcs \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
56 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g"`
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
57 ngx_pcre_objs=`echo $ngx_pcre_objs \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
58 | sed -e "s/ *\([^ ][^ ]*\)/$ngx_regex_cont\1/g"`
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
59
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
60 cat << END >> $NGX_MAKEFILE
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
61
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
62 PCRE_CFLAGS = -O2 -Ob1 -Oi -Gs $LIBC $CPU_OPT
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
63 PCRE_FLAGS = -DHAVE_CONFIG_H -DPCRE2_STATIC -DPCRE2_CODE_UNIT_WIDTH=8 \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
64 -DHAVE_MEMMOVE
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
65
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
66 PCRE_SRCS = $ngx_pcre_srcs
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
67 PCRE_OBJS = $ngx_pcre_objs
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
68
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
69 $PCRE/src/pcre2.h:
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
70 cd $PCRE/src \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
71 && copy /y config.h.generic config.h \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
72 && copy /y pcre2.h.generic pcre2.h \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
73 && copy /y pcre2_chartables.c.dist pcre2_chartables.c
297
ee394e997c77 nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 295
diff changeset
74
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
75 $PCRE/src/pcre2-8.lib: $PCRE/src/pcre2.h $NGX_MAKEFILE
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
76 cd $PCRE/src \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
77 && cl -nologo -c \$(PCRE_CFLAGS) -I . \$(PCRE_FLAGS) \$(PCRE_SRCS) \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
78 && link -lib -out:pcre2-8.lib -verbose:lib \$(PCRE_OBJS)
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
79
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
80 END
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
81
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
82 else
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
83
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
84 cat << END >> $NGX_MAKEFILE
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
85
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
86 $PCRE/src/pcre2.h: $PCRE/Makefile
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
87
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
88 $PCRE/Makefile: $NGX_MAKEFILE
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
89 cd $PCRE \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
90 && if [ -f Makefile ]; then \$(MAKE) distclean; fi \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
91 && CC="\$(CC)" CFLAGS="$PCRE_OPT" \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
92 ./configure --disable-shared $PCRE_CONF_OPT
5360
3d2d3e1cf427 Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents: 5342
diff changeset
93
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
94 $PCRE/.libs/libpcre2-8.a: $PCRE/Makefile
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
95 cd $PCRE \\
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
96 && \$(MAKE) libpcre2-8.la
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
97
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
98 END
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
99
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
100 fi
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
101
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
102
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
103 else
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
104
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
105 # PCRE
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
106
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
107 case "$NGX_CC_NAME" in
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
108
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
109 msvc)
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
110 ngx_makefile=makefile.msvc
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
111 ngx_opt="CPU_OPT=\"$CPU_OPT\" LIBC=$LIBC"
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
112 ngx_pcre="PCRE=\"$PCRE\""
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
113 ;;
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
114
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
115 owc)
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
116 ngx_makefile=makefile.owc
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
117 ngx_opt="CPU_OPT=\"$CPU_OPT\""
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
118 ngx_pcre=`echo PCRE=\"$PCRE\" | sed -e "s/\//$ngx_regex_dirsep/g"`
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
119 ;;
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
120
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
121 bcc)
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
122 ngx_makefile=makefile.bcc
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
123 ngx_opt="-DCPU_OPT=\"$CPU_OPT\""
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
124 ngx_pcre=`echo \-DPCRE=\"$PCRE\" \
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
125 | sed -e "s/\//$ngx_regex_dirsep/g"`
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
126 ;;
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
127
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
128 *)
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
129 ngx_makefile=
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
130 ;;
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
131
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
132 esac
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
133
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
134
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
135 if [ -n "$ngx_makefile" ]; then
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
136
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
137 cat << END >> $NGX_MAKEFILE
297
ee394e997c77 nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 295
diff changeset
138
5342
b3f6290a9401 Configure: pcre.lib dependencies fix.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
139 `echo "$PCRE/pcre.lib: $PCRE/pcre.h $NGX_MAKEFILE" \
b3f6290a9401 Configure: pcre.lib dependencies fix.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
140 | sed -e "s/\//$ngx_regex_dirsep/g"`
2840
22c4c012c8c9 switch Win32 building to modern PCRE versions (starting from 7.1)
Igor Sysoev <igor@sysoev.ru>
parents: 2838
diff changeset
141 \$(MAKE) -f auto/lib/pcre/$ngx_makefile $ngx_pcre $ngx_opt
297
ee394e997c77 nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 295
diff changeset
142
2840
22c4c012c8c9 switch Win32 building to modern PCRE versions (starting from 7.1)
Igor Sysoev <igor@sysoev.ru>
parents: 2838
diff changeset
143 `echo "$PCRE/pcre.h:" | sed -e "s/\//$ngx_regex_dirsep/g"`
22c4c012c8c9 switch Win32 building to modern PCRE versions (starting from 7.1)
Igor Sysoev <igor@sysoev.ru>
parents: 2838
diff changeset
144 \$(MAKE) -f auto/lib/pcre/$ngx_makefile $ngx_pcre pcre.h
297
ee394e997c77 nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 295
diff changeset
145
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
146 END
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
147
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
148 else
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents: 274
diff changeset
149
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
150 cat << END >> $NGX_MAKEFILE
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
151
1164
d201e0461c3c fix make dependecies: pcre-6.5+ already has pcre.h
Igor Sysoev <igor@sysoev.ru>
parents: 523
diff changeset
152 $PCRE/pcre.h: $PCRE/Makefile
d201e0461c3c fix make dependecies: pcre-6.5+ already has pcre.h
Igor Sysoev <igor@sysoev.ru>
parents: 523
diff changeset
153
d201e0461c3c fix make dependecies: pcre-6.5+ already has pcre.h
Igor Sysoev <igor@sysoev.ru>
parents: 523
diff changeset
154 $PCRE/Makefile: $NGX_MAKEFILE
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
155 cd $PCRE \\
523
2019117e6b38 nginx-0.1.36-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 503
diff changeset
156 && if [ -f Makefile ]; then \$(MAKE) distclean; fi \\
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
157 && CC="\$(CC)" CFLAGS="$PCRE_OPT" \\
4388
005fc2d5e84f Added support for regex study and PCRE JIT (ticket #41) optimizations on
Valentin Bartenev <vbart@nginx.com>
parents: 2840
diff changeset
158 ./configure --disable-shared $PCRE_CONF_OPT
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
159
1164
d201e0461c3c fix make dependecies: pcre-6.5+ already has pcre.h
Igor Sysoev <igor@sysoev.ru>
parents: 523
diff changeset
160 $PCRE/.libs/libpcre.a: $PCRE/Makefile
467
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
161 cd $PCRE \\
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
162 && \$(MAKE) libpcre.la
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
163
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
164 END
bbd6b0b4a2b1 nginx-0.1.8-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents: 455
diff changeset
165
7981
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
166 fi
0b5f12d5c531 PCRE2 library support.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6397
diff changeset
167
5360
3d2d3e1cf427 Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents: 5342
diff changeset
168 fi