/[pcre]/code/trunk/configure.ac
ViewVC logotype

Contents of /code/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 321 - (hide annotations) (download)
Wed Mar 5 17:10:45 2008 UTC (6 years, 4 months ago) by ph10
File size: 22741 byte(s)
Craig's patch to sort out a long long problem: "If we can't convert 
a string to a long long, pretend we don't even have a long long."

1 nigel 87 dnl Process this file with autoconf to produce a configure script.
2    
3 ph10 99 dnl NOTE FOR MAINTAINERS: Do not use major or minor version numbers with
4     dnl leading zeros, because they may be treated as octal constants. The
5     dnl PCRE_PRERELEASE feature is for identifying release candidates. It might
6     dnl be defined as -RC2, for example. For real releases, it should be defined
7     dnl empty.
8    
9 ph10 97 m4_define(pcre_major, [7])
10 ph10 321 m4_define(pcre_minor, [7])
11     m4_define(pcre_prerelease, [-RC1])
12     m4_define(pcre_date, [2008-03-05])
13 nigel 87
14 ph10 97 # Libtool shared library interface versions (current:revision:age)
15     m4_define(libpcre_version, [0:1:0])
16     m4_define(libpcreposix_version, [0:0:0])
17     m4_define(libpcrecpp_version, [0:0:0])
18 nigel 87
19 ph10 97 AC_PREREQ(2.57)
20     AC_INIT(PCRE, pcre_major.pcre_minor[]pcre_prerelease, , pcre)
21     AC_CONFIG_SRCDIR([pcre.h.in])
22     AM_INIT_AUTOMAKE([dist-bzip2 dist-zip])
23     AC_CONFIG_HEADERS(config.h)
24 ph10 159
25     # The default CFLAGS and CXXFLAGS in Autoconf are "-g -O2" for gcc and just
26     # "-g" for any other compiler. There doesn't seem to be a standard way of
27     # getting rid of the -g (which I don't think is needed for a production
28     # library). This fudge seems to achieve the necessary. First, we remember the
29     # externally set values of CFLAGS and CXXFLAGS. Then call the AC_PROG_CC and
30     # AC_PROG_CXX macros to find the compilers - if CFLAGS and CXXFLAGS are not
31     # set, they will be set to Autoconf's defaults. Afterwards, if the original
32     # values were not set, remove the -g from the Autoconf defaults.
33     # (PH 02-May-07)
34    
35     remember_set_CFLAGS="$CFLAGS"
36     remember_set_CXXFLAGS="$CXXFLAGS"
37    
38 ph10 97 AC_PROG_CC
39     AC_PROG_CXX
40 ph10 159
41     if test "x$remember_set_CFLAGS" = "x"
42     then
43     if test "$CFLAGS" = "-g -O2"
44     then
45     CFLAGS="-O2"
46     elif test "$CFLAGS" = "-g"
47     then
48     CFLAGS=""
49     fi
50     fi
51    
52     if test "x$remember_set_CXXFLAGS" = "x"
53     then
54     if test "$CXXFLAGS" = "-g -O2"
55     then
56     CXXFLAGS="-O2"
57     elif test "$CXXFLAGS" = "-g"
58     then
59     CXXFLAGS=""
60     fi
61     fi
62    
63    
64 ph10 97 AC_PROG_INSTALL
65     AC_LIBTOOL_WIN32_DLL
66     AC_PROG_LIBTOOL
67 ph10 137 AC_PROG_LN_S
68 nigel 87
69 ph10 97 PCRE_MAJOR="pcre_major"
70     PCRE_MINOR="pcre_minor"
71     PCRE_PRERELEASE="pcre_prerelease"
72     PCRE_DATE="pcre_date"
73 nigel 87
74 ph10 97 AC_SUBST(PCRE_MAJOR)
75     AC_SUBST(PCRE_MINOR)
76     AC_SUBST(PCRE_PRERELEASE)
77     AC_SUBST(PCRE_DATE)
78 nigel 87
79 ph10 97 # Set a more sensible default value for $(htmldir).
80     if test "x$htmldir" = 'x${docdir}'
81     then
82     htmldir='${docdir}/html'
83     fi
84 nigel 87
85 ph10 97 # Handle --disable-cpp
86     AC_ARG_ENABLE(cpp,
87     AS_HELP_STRING([--disable-cpp],
88     [disable C++ support]),
89     , enable_cpp=yes)
90 nigel 87
91 ph10 128 # Handle --enable-rebuild-chartables
92     AC_ARG_ENABLE(rebuild-chartables,
93     AS_HELP_STRING([--enable-rebuild-chartables],
94     [rebuild character tables in current locale]),
95     , enable_rebuild_chartables=no)
96    
97 ph10 97 # Handle --enable-utf8 (disabled by default)
98     AC_ARG_ENABLE(utf8,
99     AS_HELP_STRING([--enable-utf8],
100     [enable UTF-8 support]),
101     , enable_utf8=unset)
102 nigel 87
103 ph10 97 # Handle --enable-unicode-properties
104     AC_ARG_ENABLE(unicode-properties,
105     AS_HELP_STRING([--enable-unicode-properties],
106     [enable Unicode properties support (implies --enable-utf8)]),
107     , enable_unicode_properties=no)
108 nigel 87
109 ph10 97 # Handle --enable-newline=NL
110     dnl AC_ARG_ENABLE(newline,
111     dnl AS_HELP_STRING([--enable-newline=NL],
112 ph10 149 dnl [use NL as newline (lf, cr, crlf, anycrlf, any; default=lf)]),
113 ph10 97 dnl , enable_newline=lf)
114 nigel 87
115 ph10 97 # Separate newline options
116     ac_pcre_newline=lf
117     AC_ARG_ENABLE(newline-is-cr,
118     AS_HELP_STRING([--enable-newline-is-cr],
119     [use CR as newline character]),
120     ac_pcre_newline=cr)
121     AC_ARG_ENABLE(newline-is-lf,
122     AS_HELP_STRING([--enable-newline-is-lf],
123     [use LF as newline character (default)]),
124     ac_pcre_newline=lf)
125     AC_ARG_ENABLE(newline-is-crlf,
126     AS_HELP_STRING([--enable-newline-is-crlf],
127     [use CRLF as newline sequence]),
128     ac_pcre_newline=crlf)
129 ph10 149 AC_ARG_ENABLE(newline-is-anycrlf,
130     AS_HELP_STRING([--enable-newline-is-anycrlf],
131     [use CR, LF, or CRLF as newline sequence]),
132     ac_pcre_newline=anycrlf)
133 ph10 97 AC_ARG_ENABLE(newline-is-any,
134     AS_HELP_STRING([--enable-newline-is-any],
135     [use any valid Unicode newline sequence]),
136     ac_pcre_newline=any)
137     enable_newline="$ac_pcre_newline"
138 nigel 87
139 ph10 231 # Handle --enable-bsr-anycrlf
140     AC_ARG_ENABLE(bsr-anycrlf,
141     AS_HELP_STRING([--enable-bsr-anycrlf],
142     [\R matches only CR, LF, CRLF by default]),
143     , enable_bsr_anycrlf=no)
144    
145 ph10 97 # Handle --enable-ebcdic
146     AC_ARG_ENABLE(ebcdic,
147     AS_HELP_STRING([--enable-ebcdic],
148 ph10 195 [assume EBCDIC coding rather than ASCII; use this only in (uncommon) EBCDIC environments; it implies --enable-rebuild-chartables]),
149 ph10 97 , enable_ebcdic=no)
150 nigel 87
151 ph10 97 # Handle --disable-stack-for-recursion
152     AC_ARG_ENABLE(stack-for-recursion,
153     AS_HELP_STRING([--disable-stack-for-recursion],
154     [don't use stack recursion when matching]),
155     , enable_stack_for_recursion=yes)
156 nigel 87
157 ph10 286 # Handle --enable-pcregrep-libz
158     AC_ARG_ENABLE(pcregrep-libz,
159     AS_HELP_STRING([--enable-pcregrep-libz],
160     [link pcregrep with libz to handle .gz files]),
161     , enable_pcregrep_libz=no)
162    
163     # Handle --enable-pcregrep-libbz2
164     AC_ARG_ENABLE(pcregrep-libbz2,
165     AS_HELP_STRING([--enable-pcregrep-libbz2],
166     [link pcregrep with libbz2 to handle .bz2 files]),
167     , enable_pcregrep_libbz2=no)
168    
169 ph10 287 # Handle --enable-pcretest-libreadline
170     AC_ARG_ENABLE(pcretest-libreadline,
171     AS_HELP_STRING([--enable-pcretest-libreadline],
172     [link pcretest with libreadline]),
173     , enable_pcretest_libreadline=no)
174    
175 ph10 97 # Handle --with-posix-malloc-threshold=NBYTES
176     AC_ARG_WITH(posix-malloc-threshold,
177     AS_HELP_STRING([--with-posix-malloc-threshold=NBYTES],
178     [threshold for POSIX malloc usage (default=10)]),
179     , with_posix_malloc_threshold=10)
180 nigel 87
181 ph10 97 # Handle --with-link-size=N
182     AC_ARG_WITH(link-size,
183     AS_HELP_STRING([--with-link-size=N],
184     [internal link size (2, 3, or 4 allowed; default=2)]),
185     , with_link_size=2)
186 nigel 87
187 ph10 97 # Handle --with-match-limit=N
188     AC_ARG_WITH(match-limit,
189     AS_HELP_STRING([--with-match-limit=N],
190     [default limit on internal looping (default=10000000)]),
191     , with_match_limit=10000000)
192 nigel 87
193 ph10 97 # Handle --with-match-limit_recursion=N
194     #
195     # Note: In config.h, the default is to define MATCH_LIMIT_RECURSION
196     # symbolically as MATCH_LIMIT, which in turn is defined to be some numeric
197     # value (e.g. 10000000). MATCH_LIMIT_RECURSION can otherwise be set to some
198     # different numeric value (or even the same numeric value as MATCH_LIMIT,
199     # though no longer defined in terms of the latter).
200     #
201     AC_ARG_WITH(match-limit-recursion,
202     AS_HELP_STRING([--with-match-limit-recursion=N],
203     [default limit on internal recursion (default=MATCH_LIMIT)]),
204     , with_match_limit_recursion=MATCH_LIMIT)
205 nigel 87
206 ph10 97 # Make sure that if enable_unicode_properties was set, that UTF-8 support
207     # is enabled.
208     #
209     if test "x$enable_unicode_properties" = "xyes"
210     then
211     if test "x$enable_utf8" = "xno"
212     then
213     AC_MSG_ERROR([support for Unicode properties requires UTF-8 support])
214     fi
215     enable_utf8=yes
216     fi
217 nigel 87
218 ph10 97 if test "x$enable_utf8" = "xunset"
219     then
220     enable_utf8=no
221     fi
222 nigel 87
223 ph10 128 # Make sure that if enable_ebcdic is set, rebuild_chartables is also enabled.
224     #
225 ph10 137 if test "x$enable_ebcdic" = "xyes"
226 ph10 128 then
227     enable_rebuild_chartables=yes
228     fi
229    
230 ph10 97 # Convert the newline identifier into the appropriate integer value.
231     case "$enable_newline" in
232 ph10 149 lf) ac_pcre_newline_value=10 ;;
233     cr) ac_pcre_newline_value=13 ;;
234     crlf) ac_pcre_newline_value=3338 ;;
235 ph10 150 anycrlf) ac_pcre_newline_value=-2 ;;
236 ph10 149 any) ac_pcre_newline_value=-1 ;;
237 ph10 97 *)
238     AC_MSG_ERROR([invalid argument \"$enable_newline\" to --enable-newline option])
239     ;;
240     esac
241 nigel 87
242 ph10 97 # Check argument to --with-link-size
243     case "$with_link_size" in
244     2|3|4) ;;
245     *)
246     AC_MSG_ERROR([invalid argument \"$with_link_size\" to --with-link-size option])
247     ;;
248     esac
249 nigel 87
250 ph10 97 AH_TOP([
251 ph10 100 /* On Unix-like systems config.h.in is converted by "configure" into config.h.
252     Some other environments also support the use of "configure". PCRE is written in
253     Standard C, but there are a few non-standard things it can cope with, allowing
254     it to run on SunOS4 and other "close to standard" systems.
255 nigel 87
256 ph10 111 If you are going to build PCRE "by hand" on a system without "configure" you
257     should copy the distributed config.h.generic to config.h, and then set up the
258 ph10 237 macro definitions the way you need them. You must then add -DHAVE_CONFIG_H to
259     all of your compile commands, so that config.h is included at the start of
260     every source.
261 nigel 87
262 ph10 237 Alternatively, you can avoid editing by using -D on the compiler command line
263     to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H.
264    
265 ph10 111 PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if
266     HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set
267     them both to 0; an emulation function will be used. */])
268 ph10 100
269 ph10 97 # Checks for header files.
270 nigel 87 AC_HEADER_STDC
271 ph10 97 AC_CHECK_HEADERS(limits.h sys/types.h sys/stat.h dirent.h windows.h)
272 nigel 87
273 ph10 97 # The files below are C++ header files.
274     pcre_have_type_traits="0"
275     pcre_have_bits_type_traits="0"
276     if test "x$enable_cpp" = "xyes" -a -n "$CXX"
277 nigel 87 then
278 ph10 97 AC_LANG_PUSH(C++)
279 nigel 87
280 ph10 97 # We could be more clever here, given we're doing AC_SUBST with this
281 ph10 127 # (eg set a var to be the name of the include file we want). But we're not
282 ph10 97 # so it's easy to change back to 'regular' autoconf vars if we needed to.
283 nigel 87 AC_CHECK_HEADERS(string, [pcre_have_cpp_headers="1"],
284     [pcre_have_cpp_headers="0"])
285     AC_CHECK_HEADERS(bits/type_traits.h, [pcre_have_bits_type_traits="1"],
286     [pcre_have_bits_type_traits="0"])
287     AC_CHECK_HEADERS(type_traits.h, [pcre_have_type_traits="1"],
288     [pcre_have_type_traits="0"])
289 ph10 97 AC_LANG_POP
290     fi
291     # Using AC_SUBST eliminates the need to include config.h in a public .h file
292     AC_SUBST(pcre_have_type_traits)
293 nigel 87 AC_SUBST(pcre_have_bits_type_traits)
294    
295 ph10 97 # Conditional compilation
296     AM_CONDITIONAL(WITH_PCRE_CPP, test "x$enable_cpp" = "xyes")
297 ph10 128 AM_CONDITIONAL(WITH_REBUILD_CHARTABLES, test "x$enable_rebuild_chartables" = "xyes")
298 nigel 87
299 ph10 97 # Checks for typedefs, structures, and compiler characteristics.
300 nigel 87
301     AC_C_CONST
302     AC_TYPE_SIZE_T
303    
304 ph10 321 pcre_have_strotolonglong=0
305     AC_CHECK_FUNCS(strtoq strtoll _strtoi64, [pcre_have_strotolonglong="1"; break])
306     # If we can't convert a string to a long long, pretend we don't even
307     # have a long long.
308     if test $pcre_have_strotolonglong = "0"; then
309     pcre_have_long_long="0"
310     pcre_have_ulong_long="0"
311     else
312     AC_CHECK_TYPES([long long],
313     [pcre_have_long_long="1"],
314     [pcre_have_long_long="0"])
315     AC_CHECK_TYPES([unsigned long long],
316     [pcre_have_ulong_long="1"],
317     [pcre_have_ulong_long="0"])
318     fi
319 nigel 87 AC_SUBST(pcre_have_long_long)
320     AC_SUBST(pcre_have_ulong_long)
321    
322 ph10 97 # Checks for library functions.
323 nigel 87
324 ph10 321 AC_CHECK_FUNCS(bcopy memmove strerror)
325 nigel 87
326 ph10 286 # Check for the availability of libz (aka zlib)
327    
328     AC_CHECK_HEADERS([zlib.h], [HAVE_ZLIB_H=1])
329     AC_CHECK_LIB([z], [gzopen], [HAVE_LIBZ=1])
330    
331     # Check for the availability of libbz2
332    
333     AC_CHECK_HEADERS([bzlib.h], [HAVE_BZLIB_H=1])
334     AC_CHECK_LIB([bz2], [BZ2_bzopen], [HAVE_LIBBZ2=1])
335    
336 ph10 287 # Check for the availabiity of libreadline
337    
338     AC_CHECK_HEADERS([readline/readline.h], [HAVE_READLINE_H=1])
339     AC_CHECK_HEADERS([readline/history.h], [HAVE_HISTORY_H=1])
340     AC_CHECK_LIB([readline], [readline], [HAVE_LIB_READLINE=1])
341    
342 ph10 97 # This facilitates -ansi builds under Linux
343     dnl AC_DEFINE([_GNU_SOURCE], [], [Enable GNU extensions in glibc])
344 nigel 87
345 ph10 97 if test "x$enable_shared" = "xno" ; then
346     AC_DEFINE([PCRE_STATIC], [1], [
347     Define if linking statically (TODO: make nice with Libtool)])
348 nigel 87 fi
349    
350 ph10 97 # Here is where pcre specific defines are handled
351 nigel 87
352 ph10 97 if test "$enable_utf8" = "yes"; then
353     AC_DEFINE([SUPPORT_UTF8], [], [
354     Define to enable support for the UTF-8 Unicode encoding.])
355 nigel 87 fi
356    
357 ph10 97 if test "$enable_unicode_properties" = "yes"; then
358     AC_DEFINE([SUPPORT_UCP], [], [
359     Define to enable support for Unicode properties])
360     fi
361 nigel 87
362 ph10 97 if test "$enable_stack_for_recursion" = "no"; then
363     AC_DEFINE([NO_RECURSE], [], [
364     PCRE uses recursive function calls to handle backtracking while
365 ph10 127 matching. This can sometimes be a problem on systems that have
366 ph10 100 stacks of limited size. Define NO_RECURSE to get a version that
367 ph10 97 doesn't use recursion in the match() function; instead it creates
368     its own stack by steam using pcre_recurse_malloc() to obtain memory
369     from the heap. For more detail, see the comments and other stuff
370     just above the match() function. On systems that support it,
371     "configure" can be used to set this in the Makefile
372     (use --disable-stack-for-recursion).])
373 nigel 87 fi
374    
375 ph10 286 if test "$enable_pcregrep_libz" = "yes"; then
376     AC_DEFINE([SUPPORT_LIBZ], [], [
377     Define to allow pcregrep to be linked with libz, so that it is
378     able to handle .gz files.])
379     fi
380    
381     if test "$enable_pcregrep_libbz2" = "yes"; then
382     AC_DEFINE([SUPPORT_LIBBZ2], [], [
383     Define to allow pcregrep to be linked with libbz2, so that it is
384     able to handle .bz2 files.])
385     fi
386    
387 ph10 287 if test "$enable_pcretest_libreadline" = "yes"; then
388     AC_DEFINE([SUPPORT_LIBREADLINE], [], [
389     Define to allow pcretest to be linked with libreadline.])
390 ph10 289 fi
391 ph10 287
392 ph10 97 AC_DEFINE_UNQUOTED([NEWLINE], [$ac_pcre_newline_value], [
393 ph10 111 The value of NEWLINE determines the newline character sequence. On
394 ph10 231 systems that support it, "configure" can be used to override the
395     default, which is 10. The possible values are 10 (LF), 13 (CR),
396     3338 (CRLF), -1 (ANY), or -2 (ANYCRLF).])
397 nigel 87
398 ph10 231 if test "$enable_bsr_anycrlf" = "yes"; then
399     AC_DEFINE([BSR_ANYCRLF], [], [
400     By default, the \R escape sequence matches any Unicode line ending
401     character or sequence of characters. If BSR_ANYCRLF is defined, this is
402     changed so that backslash-R matches only CR, LF, or CRLF. The build-
403     time default can be overridden by the user of PCRE at runtime. On
404     systems that support it, "configure" can be used to override the
405     default.])
406     fi
407    
408 ph10 97 AC_DEFINE_UNQUOTED([LINK_SIZE], [$with_link_size], [
409     The value of LINK_SIZE determines the number of bytes used to store
410     links as offsets within the compiled regex. The default is 2, which
411     allows for compiled patterns up to 64K long. This covers the vast
412     majority of cases. However, PCRE can also be compiled to use 3 or 4
413     bytes instead. This allows for longer patterns in extreme cases. On
414     systems that support it, "configure" can be used to override this default.])
415 nigel 87
416 ph10 97 AC_DEFINE_UNQUOTED([POSIX_MALLOC_THRESHOLD], [$with_posix_malloc_threshold], [
417     When calling PCRE via the POSIX interface, additional working storage
418     is required for holding the pointers to capturing substrings because
419     PCRE requires three integers per substring, whereas the POSIX
420     interface provides only two. If the number of expected substrings is
421     small, the wrapper function uses space on the stack, because this is
422     faster than using malloc() for each call. The threshold above which
423     the stack is no longer used is defined by POSIX_MALLOC_THRESHOLD. On
424     systems that support it, "configure" can be used to override this
425     default.])
426 nigel 91
427 ph10 97 AC_DEFINE_UNQUOTED([MATCH_LIMIT], [$with_match_limit], [
428     The value of MATCH_LIMIT determines the default number of times the
429     internal match() function can be called during a single execution of
430 ph10 100 pcre_exec(). There is a runtime interface for setting a different
431 ph10 97 limit. The limit exists in order to catch runaway regular
432     expressions that take for ever to determine that they do not match.
433     The default is set very large so that it does not accidentally catch
434     legitimate cases. On systems that support it, "configure" can be
435     used to override this default default.])
436 nigel 91
437 ph10 97 AC_DEFINE_UNQUOTED([MATCH_LIMIT_RECURSION], [$with_match_limit_recursion], [
438     The above limit applies to all calls of match(), whether or not they
439     increase the recursion depth. In some environments it is desirable
440     to limit the depth of recursive calls of match() more strictly, in
441     order to restrict the maximum amount of stack (or heap, if
442     NO_RECURSE is defined) that is used. The value of
443     MATCH_LIMIT_RECURSION applies only to recursive calls of match(). To
444     have any useful effect, it must be less than the value of
445 ph10 111 MATCH_LIMIT. The default is to use the same value as MATCH_LIMIT.
446     There is a runtime method for setting a different limit. On systems
447 ph10 100 that support it, "configure" can be used to override the default.])
448 nigel 93
449 ph10 97 AC_DEFINE([MAX_NAME_SIZE], [32], [
450     This limit is parameterized just in case anybody ever wants to
451     change it. Care must be taken if it is increased, because it guards
452     against integer overflow caused by enormously large patterns.])
453 nigel 93
454 ph10 97 AC_DEFINE([MAX_NAME_COUNT], [10000], [
455     This limit is parameterized just in case anybody ever wants to
456     change it. Care must be taken if it is increased, because it guards
457     against integer overflow caused by enormously large patterns.])
458 nigel 87
459 ph10 145 AH_VERBATIM([PCRE_EXP_DEFN], [
460 ph10 97 /* If you are compiling for a system other than a Unix-like system or
461     Win32, and it needs some magic to be inserted before the definition
462     of a function that is exported by the library, define this macro to
463     contain the relevant magic. If you do not define this macro, it
464     defaults to "extern" for a C compiler and "extern C" for a C++
465     compiler on non-Win32 systems. This macro apears at the start of
466     every exported function that is part of the external API. It does
467     not appear on functions that are "external" in the C sense, but
468     which are internal to the library. */
469 ph10 145 #undef PCRE_EXP_DEFN])
470 nigel 87
471 ph10 97 if test "$enable_ebcdic" = "yes"; then
472     AC_DEFINE_UNQUOTED([EBCDIC], [], [
473     If you are compiling for a system that uses EBCDIC instead of ASCII
474     character codes, define this macro as 1. On systems that can use
475     "configure", this can be done via --enable-ebcdic.])
476 nigel 87 fi
477    
478 ph10 97 # Platform specific issues
479     NO_UNDEFINED=
480     EXPORT_ALL_SYMBOLS=
481     case $host_os in
482     cygwin* | mingw* )
483     if test X"$enable_shared" = Xyes; then
484     NO_UNDEFINED="-no-undefined"
485     EXPORT_ALL_SYMBOLS="-Wl,--export-all-symbols"
486     fi
487     ;;
488     esac
489 nigel 87
490 ph10 97 # The extra LDFLAGS for each particular library
491     # (Note: The libpcre*_version bits are m4 variables, assigned above)
492 nigel 87
493 ph10 97 EXTRA_LIBPCRE_LDFLAGS="$NO_UNDEFINED -version-info libpcre_version"
494 nigel 87
495 ph10 97 EXTRA_LIBPCREPOSIX_LDFLAGS="$NO_UNDEFINED -version-info libpcreposix_version"
496 nigel 87
497 ph10 97 EXTRA_LIBPCRECPP_LDFLAGS="$NO_UNDEFINED $EXPORT_ALL_SYMBOLS -version-info libpcrecpp_version"
498 nigel 87
499 ph10 97 AC_SUBST(EXTRA_LIBPCRE_LDFLAGS)
500     AC_SUBST(EXTRA_LIBPCREPOSIX_LDFLAGS)
501     AC_SUBST(EXTRA_LIBPCRECPP_LDFLAGS)
502 nigel 87
503 ph10 97 # When we run 'make distcheck', use these arguments.
504     DISTCHECK_CONFIGURE_FLAGS="--enable-cpp --enable-unicode-properties"
505     AC_SUBST(DISTCHECK_CONFIGURE_FLAGS)
506 nigel 87
507 ph10 286 # Check that, if --enable-pcregrep-libz or --enable-pcregrep-libbz2 is
508     # specified, the relevant library is available. If so, add it to LIBS.
509    
510     if test "$enable_pcregrep_libz" = "yes"; then
511     if test "$HAVE_ZLIB_H" != "1"; then
512     echo "** Cannot --enable-pcregrep-libz because zlib.h was not found"
513     exit 1
514     fi
515     if test "$HAVE_LIBZ" != "1"; then
516     echo "** Cannot --enable-pcregrep-libz because libz was not found"
517     exit 1
518     fi
519     if test "$LIBS" = ""; then LIBS=-lz; else LIBS="$LIBS -lz"; fi
520     fi
521    
522     if test "$enable_pcregrep_libbz2" = "yes"; then
523     if test "$HAVE_BZLIB_H" != "1"; then
524     echo "** Cannot --enable-pcregrep-libbz2 because bzlib.h was not found"
525     exit 1
526     fi
527     if test "$HAVE_LIBBZ2" != "1"; then
528     echo "** Cannot --enable-pcregrep-libbz2 because libbz2 was not found"
529     exit 1
530     fi
531     if test "$LIBS" = ""; then LIBS=-lbz2; else LIBS="$LIBS -lbz2"; fi
532     fi
533    
534 ph10 287 # Similarly for --enable-pcretest-readline
535    
536     if test "$enable_pcretest_libreadline" = "yes"; then
537     if test "$HAVE_READLINE_H" != "1"; then
538     echo "** Cannot --enable-pcretest-readline because readline/readline.h was not found."
539     exit 1
540     fi
541     if test "$HAVE_HISTORY_H" != "1"; then
542     echo "** Cannot --enable-pcretest-readline because readline/history.h was not found."
543     exit 1
544     fi
545     if test "$LIBS" = ""; then LIBS=-lreadline; else LIBS="$LIBS -lreadline"; fi
546 ph10 289 fi
547 ph10 287
548 ph10 97 # Produce these files, in addition to config.h.
549     AC_CONFIG_FILES(
550     Makefile
551     libpcre.pc
552     libpcrecpp.pc
553     pcre-config
554     pcre.h
555     pcre_stringpiece.h
556     pcrecpparg.h
557 nigel 87 )
558    
559 ph10 97 # Make the generated script files executable.
560 ph10 137 AC_CONFIG_COMMANDS([script-chmod], [chmod a+x pcre-config])
561 nigel 87
562 ph10 128 # Make sure that pcre_chartables.c is removed in case the method for
563     # creating it was changed by reconfiguration.
564 ph10 137 AC_CONFIG_COMMANDS([delete-old-chartables], [rm -f pcre_chartables.c])
565 ph10 128
566 ph10 137 AC_OUTPUT
567 ph10 128
568 ph10 97 # Print out a nice little message after configure is run displaying your
569     # chosen options.
570 ph10 286
571 ph10 97 cat <<EOF
572 nigel 87
573 ph10 97 $PACKAGE-$VERSION configuration summary:
574 nigel 87
575 ph10 287 Install prefix .................. : ${prefix}
576     C preprocessor .................. : ${CPP}
577     C compiler ...................... : ${CC}
578     C++ preprocessor ................ : ${CXXCPP}
579     C++ compiler .................... : ${CXX}
580     Linker .......................... : ${LD}
581     C preprocessor flags ............ : ${CPPFLAGS}
582     C compiler flags ................ : ${CFLAGS}
583     C++ compiler flags .............. : ${CXXFLAGS}
584     Linker flags .................... : ${LDFLAGS}
585     Extra libraries ................. : ${LIBS}
586 ph10 289
587 ph10 287 Build C++ library ............... : ${enable_cpp}
588     Enable UTF-8 support ............ : ${enable_utf8}
589     Unicode properties .............. : ${enable_unicode_properties}
590     Newline char/sequence ........... : ${enable_newline}
591     \R matches only ANYCRLF ......... : ${enable_bsr_anycrlf}
592     EBCDIC coding ................... : ${enable_ebcdic}
593     Rebuild char tables ............. : ${enable_rebuild_chartables}
594     Use stack recursion ............. : ${enable_stack_for_recursion}
595     POSIX mem threshold ............. : ${with_posix_malloc_threshold}
596     Internal link size .............. : ${with_link_size}
597     Match limit ..................... : ${with_match_limit}
598     Match limit recursion ........... : ${with_match_limit_recursion}
599     Build shared libs ............... : ${enable_shared}
600     Build static libs ............... : ${enable_static}
601     Link pcregrep with libz ......... : ${enable_pcregrep_libz}
602     Link pcregrep with libbz2 ....... : ${enable_pcregrep_libbz2}
603 ph10 289 Link pcretest with libreadline .. : ${enable_pcretest_libreadline}
604 nigel 87
605 ph10 97 EOF
606 nigel 87
607 ph10 97 dnl end configure.ac

Properties

Name Value
svn:eol-style native
svn:keywords "Author Date Id Revision Url"

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12