1dnl Process this file with autoconf to produce a configure script. 2 3dnl NOTE FOR MAINTAINERS: Do not use minor version numbers 08 or 09 because 4dnl the leading zeros may cause them to be treated as invalid octal constants 5dnl if a PCRE user writes code that uses PCRE_MINOR as a number. There is now 6dnl a check further down that throws an error if 08 or 09 are used. 7 8dnl The PCRE_PRERELEASE feature is for identifying release candidates. It might 9dnl be defined as -RC2, for example. For real releases, it should be empty. 10 11m4_define(pcre_major, [8]) 12m4_define(pcre_minor, [42]) 13m4_define(pcre_prerelease, []) 14m4_define(pcre_date, [2018-03-20]) 15 16# NOTE: The CMakeLists.txt file searches for the above variables in the first 17# 50 lines of this file. Please update that if the variables above are moved. 18 19# Libtool shared library interface versions (current:revision:age) 20m4_define(libpcre_version, [3:10:2]) 21m4_define(libpcre16_version, [2:10:2]) 22m4_define(libpcre32_version, [0:10:0]) 23m4_define(libpcreposix_version, [0:6:0]) 24m4_define(libpcrecpp_version, [0:1:0]) 25 26AC_PREREQ(2.57) 27AC_INIT(PCRE, pcre_major.pcre_minor[]pcre_prerelease, , pcre) 28AC_CONFIG_SRCDIR([pcre.h.in]) 29AM_INIT_AUTOMAKE([dist-bzip2 dist-zip]) 30m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) 31AC_CONFIG_HEADERS(config.h) 32 33# This is a new thing required to stop a warning from automake 1.12 34m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) 35 36# This was added at the suggestion of libtoolize (03-Jan-10) 37AC_CONFIG_MACRO_DIR([m4]) 38 39# The default CFLAGS and CXXFLAGS in Autoconf are "-g -O2" for gcc and just 40# "-g" for any other compiler. There doesn't seem to be a standard way of 41# getting rid of the -g (which I don't think is needed for a production 42# library). This fudge seems to achieve the necessary. First, we remember the 43# externally set values of CFLAGS and CXXFLAGS. Then call the AC_PROG_CC and 44# AC_PROG_CXX macros to find the compilers - if CFLAGS and CXXFLAGS are not 45# set, they will be set to Autoconf's defaults. Afterwards, if the original 46# values were not set, remove the -g from the Autoconf defaults. 47# (PH 02-May-07) 48 49remember_set_CFLAGS="$CFLAGS" 50remember_set_CXXFLAGS="$CXXFLAGS" 51 52AC_PROG_CC 53AC_PROG_CXX 54AM_PROG_CC_C_O 55 56if test "x$remember_set_CFLAGS" = "x" 57then 58 if test "$CFLAGS" = "-g -O2" 59 then 60 CFLAGS="-O2" 61 elif test "$CFLAGS" = "-g" 62 then 63 CFLAGS="" 64 fi 65fi 66 67if test "x$remember_set_CXXFLAGS" = "x" 68then 69 if test "$CXXFLAGS" = "-g -O2" 70 then 71 CXXFLAGS="-O2" 72 elif test "$CXXFLAGS" = "-g" 73 then 74 CXXFLAGS="" 75 fi 76fi 77 78# AC_PROG_CXX will return "g++" even if no c++ compiler is installed. 79# Check for that case, and just disable c++ code if g++ doesn't run. 80AC_LANG_PUSH(C++) 81AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])],, CXX=""; CXXCP=""; CXXFLAGS="") 82AC_LANG_POP 83 84# Check for a 64-bit integer type 85AC_TYPE_INT64_T 86 87AC_PROG_INSTALL 88AC_LIBTOOL_WIN32_DLL 89LT_INIT 90AC_PROG_LN_S 91 92# Check for GCC visibility feature 93 94PCRE_VISIBILITY 95 96# Versioning 97 98PCRE_MAJOR="pcre_major" 99PCRE_MINOR="pcre_minor" 100PCRE_PRERELEASE="pcre_prerelease" 101PCRE_DATE="pcre_date" 102 103if test "$PCRE_MINOR" = "08" -o "$PCRE_MINOR" = "09" 104then 105 echo "***" 106 echo "*** Minor version number $PCRE_MINOR must not be used. ***" 107 echo "*** Use only 01 to 07 or 10 onwards, to avoid octal issues. ***" 108 echo "***" 109 exit 1 110fi 111 112AC_SUBST(PCRE_MAJOR) 113AC_SUBST(PCRE_MINOR) 114AC_SUBST(PCRE_PRERELEASE) 115AC_SUBST(PCRE_DATE) 116 117# Set a more sensible default value for $(htmldir). 118if test "x$htmldir" = 'x${docdir}' 119then 120 htmldir='${docdir}/html' 121fi 122 123# Handle --disable-pcre8 (enabled by default) 124AC_ARG_ENABLE(pcre8, 125 AS_HELP_STRING([--disable-pcre8], 126 [disable 8 bit character support]), 127 , enable_pcre8=unset) 128AC_SUBST(enable_pcre8) 129 130# Handle --enable-pcre16 (disabled by default) 131AC_ARG_ENABLE(pcre16, 132 AS_HELP_STRING([--enable-pcre16], 133 [enable 16 bit character support]), 134 , enable_pcre16=unset) 135AC_SUBST(enable_pcre16) 136 137# Handle --enable-pcre32 (disabled by default) 138AC_ARG_ENABLE(pcre32, 139 AS_HELP_STRING([--enable-pcre32], 140 [enable 32 bit character support]), 141 , enable_pcre32=unset) 142AC_SUBST(enable_pcre32) 143 144# Handle --disable-cpp. The substitution of enable_cpp is needed for use in 145# pcre-config. 146AC_ARG_ENABLE(cpp, 147 AS_HELP_STRING([--disable-cpp], 148 [disable C++ support]), 149 , enable_cpp=unset) 150AC_SUBST(enable_cpp) 151 152# Handle --enable-jit (disabled by default) 153AC_ARG_ENABLE(jit, 154 AS_HELP_STRING([--enable-jit], 155 [enable Just-In-Time compiling support]), 156 , enable_jit=no) 157 158# This code enables JIT if the hardware supports it. 159 160if test "$enable_jit" = "auto"; then 161 AC_LANG(C) 162 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ 163 #define SLJIT_CONFIG_AUTO 1 164 #include "sljit/sljitConfigInternal.h" 165 #if (defined SLJIT_CONFIG_UNSUPPORTED && SLJIT_CONFIG_UNSUPPORTED) 166 #error unsupported 167 #endif]])], enable_jit=yes, enable_jit=no) 168fi 169 170# Handle --disable-pcregrep-jit (enabled by default) 171AC_ARG_ENABLE(pcregrep-jit, 172 AS_HELP_STRING([--disable-pcregrep-jit], 173 [disable JIT support in pcregrep]), 174 , enable_pcregrep_jit=yes) 175 176# Handle --enable-rebuild-chartables 177AC_ARG_ENABLE(rebuild-chartables, 178 AS_HELP_STRING([--enable-rebuild-chartables], 179 [rebuild character tables in current locale]), 180 , enable_rebuild_chartables=no) 181 182# Handle --enable-utf8 (disabled by default) 183AC_ARG_ENABLE(utf8, 184 AS_HELP_STRING([--enable-utf8], 185 [another name for --enable-utf. Kept only for compatibility reasons]), 186 , enable_utf8=unset) 187 188# Handle --enable-utf (disabled by default) 189AC_ARG_ENABLE(utf, 190 AS_HELP_STRING([--enable-utf], 191 [enable UTF-8/16/32 support (incompatible with --enable-ebcdic)]), 192 , enable_utf=unset) 193 194# Handle --enable-unicode-properties 195AC_ARG_ENABLE(unicode-properties, 196 AS_HELP_STRING([--enable-unicode-properties], 197 [enable Unicode properties support (implies --enable-utf)]), 198 , enable_unicode_properties=no) 199 200# Handle newline options 201ac_pcre_newline=lf 202AC_ARG_ENABLE(newline-is-cr, 203 AS_HELP_STRING([--enable-newline-is-cr], 204 [use CR as newline character]), 205 ac_pcre_newline=cr) 206AC_ARG_ENABLE(newline-is-lf, 207 AS_HELP_STRING([--enable-newline-is-lf], 208 [use LF as newline character (default)]), 209 ac_pcre_newline=lf) 210AC_ARG_ENABLE(newline-is-crlf, 211 AS_HELP_STRING([--enable-newline-is-crlf], 212 [use CRLF as newline sequence]), 213 ac_pcre_newline=crlf) 214AC_ARG_ENABLE(newline-is-anycrlf, 215 AS_HELP_STRING([--enable-newline-is-anycrlf], 216 [use CR, LF, or CRLF as newline sequence]), 217 ac_pcre_newline=anycrlf) 218AC_ARG_ENABLE(newline-is-any, 219 AS_HELP_STRING([--enable-newline-is-any], 220 [use any valid Unicode newline sequence]), 221 ac_pcre_newline=any) 222enable_newline="$ac_pcre_newline" 223 224# Handle --enable-bsr-anycrlf 225AC_ARG_ENABLE(bsr-anycrlf, 226 AS_HELP_STRING([--enable-bsr-anycrlf], 227 [\R matches only CR, LF, CRLF by default]), 228 , enable_bsr_anycrlf=no) 229 230# Handle --enable-ebcdic 231AC_ARG_ENABLE(ebcdic, 232 AS_HELP_STRING([--enable-ebcdic], 233 [assume EBCDIC coding rather than ASCII; incompatible with --enable-utf; use only in (uncommon) EBCDIC environments; it implies --enable-rebuild-chartables]), 234 , enable_ebcdic=no) 235 236# Handle --enable-ebcdic-nl25 237AC_ARG_ENABLE(ebcdic-nl25, 238 AS_HELP_STRING([--enable-ebcdic-nl25], 239 [set EBCDIC code for NL to 0x25 instead of 0x15; it implies --enable-ebcdic]), 240 , enable_ebcdic_nl25=no) 241 242# Handle --disable-stack-for-recursion 243AC_ARG_ENABLE(stack-for-recursion, 244 AS_HELP_STRING([--disable-stack-for-recursion], 245 [don't use stack recursion when matching]), 246 , enable_stack_for_recursion=yes) 247 248# Handle --enable-pcregrep-libz 249AC_ARG_ENABLE(pcregrep-libz, 250 AS_HELP_STRING([--enable-pcregrep-libz], 251 [link pcregrep with libz to handle .gz files]), 252 , enable_pcregrep_libz=no) 253 254# Handle --enable-pcregrep-libbz2 255AC_ARG_ENABLE(pcregrep-libbz2, 256 AS_HELP_STRING([--enable-pcregrep-libbz2], 257 [link pcregrep with libbz2 to handle .bz2 files]), 258 , enable_pcregrep_libbz2=no) 259 260# Handle --with-pcregrep-bufsize=N 261AC_ARG_WITH(pcregrep-bufsize, 262 AS_HELP_STRING([--with-pcregrep-bufsize=N], 263 [pcregrep buffer size (default=20480, minimum=8192)]), 264 , with_pcregrep_bufsize=20480) 265 266# Handle --enable-pcretest-libedit 267AC_ARG_ENABLE(pcretest-libedit, 268 AS_HELP_STRING([--enable-pcretest-libedit], 269 [link pcretest with libedit]), 270 , enable_pcretest_libedit=no) 271 272# Handle --enable-pcretest-libreadline 273AC_ARG_ENABLE(pcretest-libreadline, 274 AS_HELP_STRING([--enable-pcretest-libreadline], 275 [link pcretest with libreadline]), 276 , enable_pcretest_libreadline=no) 277 278# Handle --with-posix-malloc-threshold=NBYTES 279AC_ARG_WITH(posix-malloc-threshold, 280 AS_HELP_STRING([--with-posix-malloc-threshold=NBYTES], 281 [threshold for POSIX malloc usage (default=10)]), 282 , with_posix_malloc_threshold=10) 283 284# Handle --with-link-size=N 285AC_ARG_WITH(link-size, 286 AS_HELP_STRING([--with-link-size=N], 287 [internal link size (2, 3, or 4 allowed; default=2)]), 288 , with_link_size=2) 289 290# Handle --with-parens-nest-limit=N 291AC_ARG_WITH(parens-nest-limit, 292 AS_HELP_STRING([--with-parens-nest-limit=N], 293 [nested parentheses limit (default=250)]), 294 , with_parens_nest_limit=250) 295 296# Handle --with-match-limit=N 297AC_ARG_WITH(match-limit, 298 AS_HELP_STRING([--with-match-limit=N], 299 [default limit on internal looping (default=10000000)]), 300 , with_match_limit=10000000) 301 302# Handle --with-match-limit_recursion=N 303# 304# Note: In config.h, the default is to define MATCH_LIMIT_RECURSION 305# symbolically as MATCH_LIMIT, which in turn is defined to be some numeric 306# value (e.g. 10000000). MATCH_LIMIT_RECURSION can otherwise be set to some 307# different numeric value (or even the same numeric value as MATCH_LIMIT, 308# though no longer defined in terms of the latter). 309# 310AC_ARG_WITH(match-limit-recursion, 311 AS_HELP_STRING([--with-match-limit-recursion=N], 312 [default limit on internal recursion (default=MATCH_LIMIT)]), 313 , with_match_limit_recursion=MATCH_LIMIT) 314 315# Handle --enable-valgrind 316AC_ARG_ENABLE(valgrind, 317 AS_HELP_STRING([--enable-valgrind], 318 [valgrind support]), 319 , enable_valgrind=no) 320 321# Enable code coverage reports using gcov 322AC_ARG_ENABLE(coverage, 323 AS_HELP_STRING([--enable-coverage], 324 [enable code coverage reports using gcov]), 325 , enable_coverage=no) 326 327# Copy enable_utf8 value to enable_utf for compatibility reasons 328if test "x$enable_utf8" != "xunset" 329then 330 if test "x$enable_utf" != "xunset" 331 then 332 AC_MSG_ERROR([--enable/disable-utf8 is kept only for compatibility reasons and its value is copied to --enable/disable-utf. Newer code must use --enable/disable-utf alone.]) 333 fi 334 enable_utf=$enable_utf8 335fi 336 337# Set the default value for pcre8 338if test "x$enable_pcre8" = "xunset" 339then 340 enable_pcre8=yes 341fi 342 343# Set the default value for pcre16 344if test "x$enable_pcre16" = "xunset" 345then 346 enable_pcre16=no 347fi 348 349# Set the default value for pcre32 350if test "x$enable_pcre32" = "xunset" 351then 352 enable_pcre32=no 353fi 354 355# Make sure enable_pcre8 or enable_pcre16 was set 356if test "x$enable_pcre8$enable_pcre16$enable_pcre32" = "xnonono" 357then 358 AC_MSG_ERROR([At least one of 8, 16 or 32 bit pcre library must be enabled]) 359fi 360 361# Make sure that if enable_unicode_properties was set, that UTF support is enabled. 362if test "x$enable_unicode_properties" = "xyes" 363then 364 if test "x$enable_utf" = "xno" 365 then 366 AC_MSG_ERROR([support for Unicode properties requires UTF-8/16/32 support]) 367 fi 368 enable_utf=yes 369fi 370 371# enable_utf is disabled by default. 372if test "x$enable_utf" = "xunset" 373then 374 enable_utf=no 375fi 376 377# enable_cpp copies the value of enable_pcre8 by default 378if test "x$enable_cpp" = "xunset" 379then 380 enable_cpp=$enable_pcre8 381fi 382 383# Make sure that if enable_cpp was set, that enable_pcre8 support is enabled 384if test "x$enable_cpp" = "xyes" 385then 386 if test "x$enable_pcre8" = "xno" 387 then 388 AC_MSG_ERROR([C++ library requires pcre library with 8 bit characters]) 389 fi 390fi 391 392# Convert the newline identifier into the appropriate integer value. The first 393# three are ASCII values 0x0a, 0x0d, and 0x0d0a, but if EBCDIC is enabled, they 394# are changed below. 395 396case "$enable_newline" in 397 lf) ac_pcre_newline_value=10 ;; 398 cr) ac_pcre_newline_value=13 ;; 399 crlf) ac_pcre_newline_value=3338 ;; 400 anycrlf) ac_pcre_newline_value=-2 ;; 401 any) ac_pcre_newline_value=-1 ;; 402 *) 403 AC_MSG_ERROR([invalid argument \"$enable_newline\" to --enable-newline option]) 404 ;; 405esac 406 407# --enable-ebcdic-nl25 implies --enable-ebcdic 408if test "x$enable_ebcdic_nl25" = "xyes"; then 409 enable_ebcdic=yes 410fi 411 412# Make sure that if enable_ebcdic is set, rebuild_chartables is also enabled, 413# and the newline value is adjusted appropriately (CR is still 13, but LF is 414# 21 or 37). Also check that UTF support is not requested, because PCRE cannot 415# handle EBCDIC and UTF in the same build. To do so it would need to use 416# different character constants depending on the mode. 417# 418if test "x$enable_ebcdic" = "xyes"; then 419 enable_rebuild_chartables=yes 420 421 if test "x$enable_utf" = "xyes"; then 422 AC_MSG_ERROR([support for EBCDIC and UTF-8/16/32 cannot be enabled at the same time]) 423 fi 424 425 if test "x$enable_ebcdic_nl25" = "xno"; then 426 case "$ac_pcre_newline_value" in 427 10) ac_pcre_newline_value=21 ;; 428 3338) ac_pcre_newline_value=3349 ;; 429 esac 430 else 431 case "$ac_pcre_newline_value" in 432 10) ac_pcre_newline_value=37 ;; 433 3338) ac_pcre_newline_value=3365 ;; 434 esac 435 fi 436fi 437 438# Check argument to --with-link-size 439case "$with_link_size" in 440 2|3|4) ;; 441 *) 442 AC_MSG_ERROR([invalid argument \"$with_link_size\" to --with-link-size option]) 443 ;; 444esac 445 446AH_TOP([ 447/* PCRE is written in Standard C, but there are a few non-standard things it 448can cope with, allowing it to run on SunOS4 and other "close to standard" 449systems. 450 451In environments that support the GNU autotools, config.h.in is converted into 452config.h by the "configure" script. In environments that use CMake, 453config-cmake.in is converted into config.h. If you are going to build PCRE "by 454hand" without using "configure" or CMake, you should copy the distributed 455config.h.generic to config.h, and edit the macro definitions to be the way you 456need them. You must then add -DHAVE_CONFIG_H to all of your compile commands, 457so that config.h is included at the start of every source. 458 459Alternatively, you can avoid editing by using -D on the compiler command line 460to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H, 461but if you do, default values will be taken from config.h for non-boolean 462macros that are not defined on the command line. 463 464Boolean macros such as HAVE_STDLIB_H and SUPPORT_PCRE8 should either be defined 465(conventionally to 1) for TRUE, and not defined at all for FALSE. All such 466macros are listed as a commented #undef in config.h.generic. Macros such as 467MATCH_LIMIT, whose actual value is relevant, have defaults defined, but are 468surrounded by #ifndef/#endif lines so that the value can be overridden by -D. 469 470PCRE uses memmove() if HAVE_MEMMOVE is defined; otherwise it uses bcopy() if 471HAVE_BCOPY is defined. If your system has neither bcopy() nor memmove(), make 472sure both macros are undefined; an emulation function will then be used. */]) 473 474# Checks for header files. 475AC_HEADER_STDC 476AC_CHECK_HEADERS(limits.h sys/types.h sys/stat.h dirent.h) 477AC_CHECK_HEADERS([windows.h], [HAVE_WINDOWS_H=1]) 478 479# The files below are C++ header files. 480pcre_have_type_traits="0" 481pcre_have_bits_type_traits="0" 482 483if test "x$enable_cpp" = "xyes" -a -z "$CXX"; then 484 AC_MSG_ERROR([Invalid C++ compiler or C++ compiler flags]) 485fi 486 487if test "x$enable_cpp" = "xyes" -a -n "$CXX" 488then 489AC_LANG_PUSH(C++) 490 491# Older versions of pcre defined pcrecpp::no_arg, but in new versions 492# it's called pcrecpp::RE::no_arg. For backwards ABI compatibility, 493# we want to make one an alias for the other. Different systems do 494# this in different ways. Some systems, for instance, can do it via 495# a linker flag: -alias (for os x 10.5) or -i (for os x <=10.4). 496OLD_LDFLAGS="$LDFLAGS" 497for flag in "-alias,__ZN7pcrecpp2RE6no_argE,__ZN7pcrecpp6no_argE" \ 498 "-i__ZN7pcrecpp6no_argE:__ZN7pcrecpp2RE6no_argE"; do 499 AC_MSG_CHECKING([for alias support in the linker]) 500 LDFLAGS="$OLD_LDFLAGS -Wl,$flag" 501 # We try to run the linker with this new ld flag. If the link fails, 502 # we give up and remove the new flag from LDFLAGS. 503 AC_LINK_IFELSE([AC_LANG_PROGRAM([namespace pcrecpp { 504 class RE { static int no_arg; }; 505 int RE::no_arg; 506 }], 507 [])], 508 [AC_MSG_RESULT([yes]); 509 EXTRA_LIBPCRECPP_LDFLAGS="$EXTRA_LIBPCRECPP_LDFLAGS -Wl,$flag"; 510 break;], 511 AC_MSG_RESULT([no])) 512done 513LDFLAGS="$OLD_LDFLAGS" 514 515# We could be more clever here, given we're doing AC_SUBST with this 516# (eg set a var to be the name of the include file we want). But we're not 517# so it's easy to change back to 'regular' autoconf vars if we needed to. 518AC_CHECK_HEADERS(string, [pcre_have_cpp_headers="1"], 519 [pcre_have_cpp_headers="0"]) 520AC_CHECK_HEADERS(bits/type_traits.h, [pcre_have_bits_type_traits="1"], 521 [pcre_have_bits_type_traits="0"]) 522AC_CHECK_HEADERS(type_traits.h, [pcre_have_type_traits="1"], 523 [pcre_have_type_traits="0"]) 524 525# (This isn't c++-specific, but is only used in pcrecpp.cc, so try this 526# in a c++ context. This matters becuase strtoimax is C99 and may not 527# be supported by the C++ compiler.) 528# Figure out how to create a longlong from a string: strtoll and 529# equiv. It's not enough to call AC_CHECK_FUNCS: hpux has a 530# strtoll, for instance, but it only takes 2 args instead of 3! 531# We have to call AH_TEMPLATE since AC_DEFINE_UNQUOTED below is complex. 532AH_TEMPLATE(HAVE_STRTOQ, [Define to 1 if you have `strtoq'.]) 533AH_TEMPLATE(HAVE_STRTOLL, [Define to 1 if you have `strtoll'.]) 534AH_TEMPLATE(HAVE__STRTOI64, [Define to 1 if you have `_strtoi64'.]) 535AH_TEMPLATE(HAVE_STRTOIMAX, [Define to 1 if you have `strtoimax'.]) 536have_strto_fn=0 537for fn in strtoq strtoll _strtoi64 strtoimax; do 538 AC_MSG_CHECKING([for $fn]) 539 if test "$fn" = strtoimax; then 540 include=stdint.h 541 else 542 include=stdlib.h 543 fi 544 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <$include>], 545 [char* e; return $fn("100", &e, 10)])], 546 [AC_MSG_RESULT(yes) 547 AC_DEFINE_UNQUOTED(HAVE_`echo $fn | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`, 1, 548 [Define to 1 if you have `$fn'.]) 549 have_strto_fn=1 550 break], 551 [AC_MSG_RESULT(no)]) 552done 553 554if test "$have_strto_fn" = 1; then 555 AC_CHECK_TYPES([long long], 556 [pcre_have_long_long="1"], 557 [pcre_have_long_long="0"]) 558 AC_CHECK_TYPES([unsigned long long], 559 [pcre_have_ulong_long="1"], 560 [pcre_have_ulong_long="0"]) 561else 562 pcre_have_long_long="0" 563 pcre_have_ulong_long="0" 564fi 565AC_SUBST(pcre_have_long_long) 566AC_SUBST(pcre_have_ulong_long) 567 568AC_LANG_POP 569fi 570# Using AC_SUBST eliminates the need to include config.h in a public .h file 571AC_SUBST(pcre_have_type_traits) 572AC_SUBST(pcre_have_bits_type_traits) 573 574# Conditional compilation 575AM_CONDITIONAL(WITH_PCRE8, test "x$enable_pcre8" = "xyes") 576AM_CONDITIONAL(WITH_PCRE16, test "x$enable_pcre16" = "xyes") 577AM_CONDITIONAL(WITH_PCRE32, test "x$enable_pcre32" = "xyes") 578AM_CONDITIONAL(WITH_PCRE_CPP, test "x$enable_cpp" = "xyes") 579AM_CONDITIONAL(WITH_REBUILD_CHARTABLES, test "x$enable_rebuild_chartables" = "xyes") 580AM_CONDITIONAL(WITH_JIT, test "x$enable_jit" = "xyes") 581AM_CONDITIONAL(WITH_UTF, test "x$enable_utf" = "xyes") 582AM_CONDITIONAL(WITH_VALGRIND, test "x$enable_valgrind" = "xyes") 583 584# Checks for typedefs, structures, and compiler characteristics. 585 586AC_C_CONST 587AC_TYPE_SIZE_T 588 589# Checks for library functions. 590 591AC_CHECK_FUNCS(bcopy memmove strerror) 592 593# Check for the availability of libz (aka zlib) 594 595AC_CHECK_HEADERS([zlib.h], [HAVE_ZLIB_H=1]) 596AC_CHECK_LIB([z], [gzopen], [HAVE_LIBZ=1]) 597 598# Check for the availability of libbz2. Originally we just used AC_CHECK_LIB, 599# as for libz. However, this had the following problem, diagnosed and fixed by 600# a user: 601# 602# - libbz2 uses the Pascal calling convention (WINAPI) for the functions 603# under Win32. 604# - The standard autoconf AC_CHECK_LIB fails to include "bzlib.h", 605# therefore missing the function definition. 606# - The compiler thus generates a "C" signature for the test function. 607# - The linker fails to find the "C" function. 608# - PCRE fails to configure if asked to do so against libbz2. 609# 610# Solution: 611# 612# - Replace the AC_CHECK_LIB test with a custom test. 613 614AC_CHECK_HEADERS([bzlib.h], [HAVE_BZLIB_H=1]) 615# Original test 616# AC_CHECK_LIB([bz2], [BZ2_bzopen], [HAVE_LIBBZ2=1]) 617# 618# Custom test follows 619 620AC_MSG_CHECKING([for libbz2]) 621OLD_LIBS="$LIBS" 622LIBS="$LIBS -lbz2" 623AC_LINK_IFELSE([AC_LANG_PROGRAM([[ 624#ifdef HAVE_BZLIB_H 625#include <bzlib.h> 626#endif]], 627[[return (int)BZ2_bzopen("conftest", "rb");]])], 628[AC_MSG_RESULT([yes]);HAVE_LIBBZ2=1; break;], 629AC_MSG_RESULT([no])) 630LIBS="$OLD_LIBS" 631 632# Check for the availabiity of libreadline 633 634if test "$enable_pcretest_libreadline" = "yes"; then 635 AC_CHECK_HEADERS([readline/readline.h], [HAVE_READLINE_H=1]) 636 AC_CHECK_HEADERS([readline/history.h], [HAVE_HISTORY_H=1]) 637 AC_CHECK_LIB([readline], [readline], [LIBREADLINE="-lreadline"], 638 [unset ac_cv_lib_readline_readline; 639 AC_CHECK_LIB([readline], [readline], [LIBREADLINE="-ltinfo"], 640 [unset ac_cv_lib_readline_readline; 641 AC_CHECK_LIB([readline], [readline], [LIBREADLINE="-lcurses"], 642 [unset ac_cv_lib_readline_readline; 643 AC_CHECK_LIB([readline], [readline], [LIBREADLINE="-lncurses"], 644 [unset ac_cv_lib_readline_readline; 645 AC_CHECK_LIB([readline], [readline], [LIBREADLINE="-lncursesw"], 646 [unset ac_cv_lib_readline_readline; 647 AC_CHECK_LIB([readline], [readline], [LIBREADLINE="-ltermcap"], 648 [LIBREADLINE=""], 649 [-ltermcap])], 650 [-lncursesw])], 651 [-lncurses])], 652 [-lcurses])], 653 [-ltinfo])]) 654 AC_SUBST(LIBREADLINE) 655 if test -n "$LIBREADLINE"; then 656 if test "$LIBREADLINE" != "-lreadline"; then 657 echo "-lreadline needs $LIBREADLINE" 658 LIBREADLINE="-lreadline $LIBREADLINE" 659 fi 660 fi 661fi 662 663 664# Check for the availability of libedit. Different distributions put its 665# headers in different places. Try to cover the most common ones. 666 667if test "$enable_pcretest_libedit" = "yes"; then 668 AC_CHECK_HEADERS([editline/readline.h], [HAVE_EDITLINE_READLINE_H=1], 669 [AC_CHECK_HEADERS([edit/readline/readline.h], [HAVE_READLINE_READLINE_H=1], 670 [AC_CHECK_HEADERS([readline/readline.h], [HAVE_READLINE_READLINE_H=1])])]) 671 AC_CHECK_LIB([edit], [readline], [LIBEDIT="-ledit"]) 672fi 673 674# This facilitates -ansi builds under Linux 675dnl AC_DEFINE([_GNU_SOURCE], [], [Enable GNU extensions in glibc]) 676 677PCRE_STATIC_CFLAG="" 678if test "x$enable_shared" = "xno" ; then 679 AC_DEFINE([PCRE_STATIC], [1], [ 680 Define to any value if linking statically (TODO: make nice with Libtool)]) 681 PCRE_STATIC_CFLAG="-DPCRE_STATIC" 682fi 683AC_SUBST(PCRE_STATIC_CFLAG) 684 685# Here is where pcre specific defines are handled 686 687if test "$enable_pcre8" = "yes"; then 688 AC_DEFINE([SUPPORT_PCRE8], [], [ 689 Define to any value to enable the 8 bit PCRE library.]) 690fi 691 692if test "$enable_pcre16" = "yes"; then 693 AC_DEFINE([SUPPORT_PCRE16], [], [ 694 Define to any value to enable the 16 bit PCRE library.]) 695fi 696 697if test "$enable_pcre32" = "yes"; then 698 AC_DEFINE([SUPPORT_PCRE32], [], [ 699 Define to any value to enable the 32 bit PCRE library.]) 700fi 701 702# Unless running under Windows, JIT support requires pthreads. 703 704if test "$enable_jit" = "yes"; then 705 if test "$HAVE_WINDOWS_H" != "1"; then 706 AX_PTHREAD([], [AC_MSG_ERROR([JIT support requires pthreads])]) 707 CC="$PTHREAD_CC" 708 CFLAGS="$PTHREAD_CFLAGS $CFLAGS" 709 LIBS="$PTHREAD_LIBS $LIBS" 710 fi 711 AC_DEFINE([SUPPORT_JIT], [], [ 712 Define to any value to enable support for Just-In-Time compiling.]) 713else 714 enable_pcregrep_jit="no" 715fi 716 717if test "$enable_pcregrep_jit" = "yes"; then 718 AC_DEFINE([SUPPORT_PCREGREP_JIT], [], [ 719 Define to any value to enable JIT support in pcregrep.]) 720fi 721 722if test "$enable_utf" = "yes"; then 723 AC_DEFINE([SUPPORT_UTF], [], [ 724 Define to any value to enable support for the UTF-8/16/32 Unicode encoding. 725 This will work even in an EBCDIC environment, but it is incompatible 726 with the EBCDIC macro. That is, PCRE can support *either* EBCDIC 727 code *or* ASCII/UTF-8/16/32, but not both at once.]) 728fi 729 730if test "$enable_unicode_properties" = "yes"; then 731 AC_DEFINE([SUPPORT_UCP], [], [ 732 Define to any value to enable support for Unicode properties.]) 733fi 734 735if test "$enable_stack_for_recursion" = "no"; then 736 AC_DEFINE([NO_RECURSE], [], [ 737 PCRE uses recursive function calls to handle backtracking while 738 matching. This can sometimes be a problem on systems that have 739 stacks of limited size. Define NO_RECURSE to any value to get a 740 version that doesn't use recursion in the match() function; instead 741 it creates its own stack by steam using pcre_recurse_malloc() to obtain 742 memory from the heap. For more detail, see the comments and other stuff 743 just above the match() function.]) 744fi 745 746if test "$enable_pcregrep_libz" = "yes"; then 747 AC_DEFINE([SUPPORT_LIBZ], [], [ 748 Define to any value to allow pcregrep to be linked with libz, so that it is 749 able to handle .gz files.]) 750fi 751 752if test "$enable_pcregrep_libbz2" = "yes"; then 753 AC_DEFINE([SUPPORT_LIBBZ2], [], [ 754 Define to any value to allow pcregrep to be linked with libbz2, so that it 755 is able to handle .bz2 files.]) 756fi 757 758if test $with_pcregrep_bufsize -lt 8192 ; then 759 AC_MSG_WARN([$with_pcregrep_bufsize is too small for --with-pcregrep-bufsize; using 8192]) 760 with_pcregrep_bufsize="8192" 761else 762 if test $? -gt 1 ; then 763 AC_MSG_ERROR([Bad value for --with-pcregrep-bufsize]) 764 fi 765fi 766 767AC_DEFINE_UNQUOTED([PCREGREP_BUFSIZE], [$with_pcregrep_bufsize], [ 768 The value of PCREGREP_BUFSIZE determines the size of buffer used by pcregrep 769 to hold parts of the file it is searching. This is also the minimum value. 770 The actual amount of memory used by pcregrep is three times this number, 771 because it allows for the buffering of "before" and "after" lines.]) 772 773if test "$enable_pcretest_libedit" = "yes"; then 774 AC_DEFINE([SUPPORT_LIBEDIT], [], [ 775 Define to any value to allow pcretest to be linked with libedit.]) 776 LIBREADLINE="$LIBEDIT" 777elif test "$enable_pcretest_libreadline" = "yes"; then 778 AC_DEFINE([SUPPORT_LIBREADLINE], [], [ 779 Define to any value to allow pcretest to be linked with libreadline.]) 780fi 781 782AC_DEFINE_UNQUOTED([NEWLINE], [$ac_pcre_newline_value], [ 783 The value of NEWLINE determines the default newline character sequence. PCRE 784 client programs can override this by selecting other values at run time. In 785 ASCII environments, the value can be 10 (LF), 13 (CR), or 3338 (CRLF); in 786 EBCDIC environments the value can be 21 or 37 (LF), 13 (CR), or 3349 or 3365 787 (CRLF) because there are two alternative codepoints (0x15 and 0x25) that are 788 used as the NL line terminator that is equivalent to ASCII LF. In both ASCII 789 and EBCDIC environments the value can also be -1 (ANY), or -2 (ANYCRLF).]) 790 791if test "$enable_bsr_anycrlf" = "yes"; then 792 AC_DEFINE([BSR_ANYCRLF], [], [ 793 By default, the \R escape sequence matches any Unicode line ending 794 character or sequence of characters. If BSR_ANYCRLF is defined (to any 795 value), this is changed so that backslash-R matches only CR, LF, or CRLF. 796 The build-time default can be overridden by the user of PCRE at runtime.]) 797fi 798 799AC_DEFINE_UNQUOTED([LINK_SIZE], [$with_link_size], [ 800 The value of LINK_SIZE determines the number of bytes used to store 801 links as offsets within the compiled regex. The default is 2, which 802 allows for compiled patterns up to 64K long. This covers the vast 803 majority of cases. However, PCRE can also be compiled to use 3 or 4 804 bytes instead. This allows for longer patterns in extreme cases.]) 805 806AC_DEFINE_UNQUOTED([POSIX_MALLOC_THRESHOLD], [$with_posix_malloc_threshold], [ 807 When calling PCRE via the POSIX interface, additional working storage 808 is required for holding the pointers to capturing substrings because 809 PCRE requires three integers per substring, whereas the POSIX 810 interface provides only two. If the number of expected substrings is 811 small, the wrapper function uses space on the stack, because this is 812 faster than using malloc() for each call. The threshold above which 813 the stack is no longer used is defined by POSIX_MALLOC_THRESHOLD.]) 814 815AC_DEFINE_UNQUOTED([PARENS_NEST_LIMIT], [$with_parens_nest_limit], [ 816 The value of PARENS_NEST_LIMIT specifies the maximum depth of nested 817 parentheses (of any kind) in a pattern. This limits the amount of system 818 stack that is used while compiling a pattern.]) 819 820AC_DEFINE_UNQUOTED([MATCH_LIMIT], [$with_match_limit], [ 821 The value of MATCH_LIMIT determines the default number of times the 822 internal match() function can be called during a single execution of 823 pcre_exec(). There is a runtime interface for setting a different 824 limit. The limit exists in order to catch runaway regular 825 expressions that take for ever to determine that they do not match. 826 The default is set very large so that it does not accidentally catch 827 legitimate cases.]) 828 829AC_DEFINE_UNQUOTED([MATCH_LIMIT_RECURSION], [$with_match_limit_recursion], [ 830 The above limit applies to all calls of match(), whether or not they 831 increase the recursion depth. In some environments it is desirable 832 to limit the depth of recursive calls of match() more strictly, in 833 order to restrict the maximum amount of stack (or heap, if 834 NO_RECURSE is defined) that is used. The value of 835 MATCH_LIMIT_RECURSION applies only to recursive calls of match(). To 836 have any useful effect, it must be less than the value of 837 MATCH_LIMIT. The default is to use the same value as MATCH_LIMIT. 838 There is a runtime method for setting a different limit.]) 839 840AC_DEFINE([MAX_NAME_SIZE], [32], [ 841 This limit is parameterized just in case anybody ever wants to 842 change it. Care must be taken if it is increased, because it guards 843 against integer overflow caused by enormously large patterns.]) 844 845AC_DEFINE([MAX_NAME_COUNT], [10000], [ 846 This limit is parameterized just in case anybody ever wants to 847 change it. Care must be taken if it is increased, because it guards 848 against integer overflow caused by enormously large patterns.]) 849 850AH_VERBATIM([PCRE_EXP_DEFN], [ 851/* If you are compiling for a system other than a Unix-like system or 852 Win32, and it needs some magic to be inserted before the definition 853 of a function that is exported by the library, define this macro to 854 contain the relevant magic. If you do not define this macro, a suitable 855 __declspec value is used for Windows systems; in other environments 856 "extern" is used for a C compiler and "extern C" for a C++ compiler. 857 This macro apears at the start of every exported function that is part 858 of the external API. It does not appear on functions that are "external" 859 in the C sense, but which are internal to the library. */ 860#undef PCRE_EXP_DEFN]) 861 862if test "$enable_ebcdic" = "yes"; then 863 AC_DEFINE_UNQUOTED([EBCDIC], [], [ 864 If you are compiling for a system that uses EBCDIC instead of ASCII 865 character codes, define this macro to any value. You must also edit the 866 NEWLINE macro below to set a suitable EBCDIC newline, commonly 21 (0x15). 867 On systems that can use "configure" or CMake to set EBCDIC, NEWLINE is 868 automatically adjusted. When EBCDIC is set, PCRE assumes that all input 869 strings are in EBCDIC. If you do not define this macro, PCRE will assume 870 input strings are ASCII or UTF-8/16/32 Unicode. It is not possible to build 871 a version of PCRE that supports both EBCDIC and UTF-8/16/32.]) 872fi 873 874if test "$enable_ebcdic_nl25" = "yes"; then 875 AC_DEFINE_UNQUOTED([EBCDIC_NL25], [], [ 876 In an EBCDIC environment, define this macro to any value to arrange for 877 the NL character to be 0x25 instead of the default 0x15. NL plays the role 878 that LF does in an ASCII/Unicode environment. The value must also be set in 879 the NEWLINE macro below. On systems that can use "configure" or CMake to 880 set EBCDIC_NL25, the adjustment of NEWLINE is automatic.]) 881fi 882 883if test "$enable_valgrind" = "yes"; then 884 AC_DEFINE_UNQUOTED([SUPPORT_VALGRIND], [], [ 885 Define to any value for valgrind support to find invalid memory reads.]) 886fi 887 888# Platform specific issues 889NO_UNDEFINED= 890EXPORT_ALL_SYMBOLS= 891case $host_os in 892 cygwin* | mingw* ) 893 if test X"$enable_shared" = Xyes; then 894 NO_UNDEFINED="-no-undefined" 895 EXPORT_ALL_SYMBOLS="-Wl,--export-all-symbols" 896 fi 897 ;; 898esac 899 900# The extra LDFLAGS for each particular library 901# (Note: The libpcre*_version bits are m4 variables, assigned above) 902 903EXTRA_LIBPCRE_LDFLAGS="$EXTRA_LIBPCRE_LDFLAGS \ 904 $NO_UNDEFINED -version-info libpcre_version" 905 906EXTRA_LIBPCRE16_LDFLAGS="$EXTRA_LIBPCRE16_LDFLAGS \ 907 $NO_UNDEFINED -version-info libpcre16_version" 908 909EXTRA_LIBPCRE32_LDFLAGS="$EXTRA_LIBPCRE32_LDFLAGS \ 910 $NO_UNDEFINED -version-info libpcre32_version" 911 912EXTRA_LIBPCREPOSIX_LDFLAGS="$EXTRA_LIBPCREPOSIX_LDFLAGS \ 913 $NO_UNDEFINED -version-info libpcreposix_version" 914 915EXTRA_LIBPCRECPP_LDFLAGS="$EXTRA_LIBPCRECPP_LDFLAGS \ 916 $NO_UNDEFINED -version-info libpcrecpp_version \ 917 $EXPORT_ALL_SYMBOLS" 918 919AC_SUBST(EXTRA_LIBPCRE_LDFLAGS) 920AC_SUBST(EXTRA_LIBPCRE16_LDFLAGS) 921AC_SUBST(EXTRA_LIBPCRE32_LDFLAGS) 922AC_SUBST(EXTRA_LIBPCREPOSIX_LDFLAGS) 923AC_SUBST(EXTRA_LIBPCRECPP_LDFLAGS) 924 925# When we run 'make distcheck', use these arguments. Turning off compiler 926# optimization makes it run faster. 927DISTCHECK_CONFIGURE_FLAGS="CFLAGS='' CXXFLAGS='' --enable-pcre16 --enable-pcre32 --enable-jit --enable-cpp --enable-unicode-properties" 928AC_SUBST(DISTCHECK_CONFIGURE_FLAGS) 929 930# Check that, if --enable-pcregrep-libz or --enable-pcregrep-libbz2 is 931# specified, the relevant library is available. 932 933if test "$enable_pcregrep_libz" = "yes"; then 934 if test "$HAVE_ZLIB_H" != "1"; then 935 echo "** Cannot --enable-pcregrep-libz because zlib.h was not found" 936 exit 1 937 fi 938 if test "$HAVE_LIBZ" != "1"; then 939 echo "** Cannot --enable-pcregrep-libz because libz was not found" 940 exit 1 941 fi 942 LIBZ="-lz" 943fi 944AC_SUBST(LIBZ) 945 946if test "$enable_pcregrep_libbz2" = "yes"; then 947 if test "$HAVE_BZLIB_H" != "1"; then 948 echo "** Cannot --enable-pcregrep-libbz2 because bzlib.h was not found" 949 exit 1 950 fi 951 if test "$HAVE_LIBBZ2" != "1"; then 952 echo "** Cannot --enable-pcregrep-libbz2 because libbz2 was not found" 953 exit 1 954 fi 955 LIBBZ2="-lbz2" 956fi 957AC_SUBST(LIBBZ2) 958 959# Similarly for --enable-pcretest-readline 960 961if test "$enable_pcretest_libedit" = "yes"; then 962 if test "$enable_pcretest_libreadline" = "yes"; then 963 echo "** Cannot use both --enable-pcretest-libedit and --enable-pcretest-readline" 964 exit 1 965 fi 966 if test "$HAVE_EDITLINE_READLINE_H" != "1" -a \ 967 "$HAVE_READLINE_READLINE_H" != "1"; then 968 echo "** Cannot --enable-pcretest-libedit because neither editline/readline.h" 969 echo "** nor readline/readline.h was found." 970 exit 1 971 fi 972 if test -z "$LIBEDIT"; then 973 echo "** Cannot --enable-pcretest-libedit because libedit library was not found." 974 exit 1 975 fi 976fi 977 978if test "$enable_pcretest_libreadline" = "yes"; then 979 if test "$HAVE_READLINE_H" != "1"; then 980 echo "** Cannot --enable-pcretest-readline because readline/readline.h was not found." 981 exit 1 982 fi 983 if test "$HAVE_HISTORY_H" != "1"; then 984 echo "** Cannot --enable-pcretest-readline because readline/history.h was not found." 985 exit 1 986 fi 987 if test -z "$LIBREADLINE"; then 988 echo "** Cannot --enable-pcretest-readline because readline library was not found." 989 exit 1 990 fi 991fi 992 993# Handle valgrind support 994 995if test "$enable_valgrind" = "yes"; then 996 m4_ifdef([PKG_CHECK_MODULES], 997 [PKG_CHECK_MODULES([VALGRIND],[valgrind])], 998 [AC_MSG_ERROR([pkg-config not supported])]) 999fi 1000 1001# Handle code coverage reporting support 1002if test "$enable_coverage" = "yes"; then 1003 if test "x$GCC" != "xyes"; then 1004 AC_MSG_ERROR([Code coverage reports can only be generated when using GCC]) 1005 fi 1006 1007 # ccache is incompatible with gcov 1008 AC_PATH_PROG([SHTOOL],[shtool],[false]) 1009 case `$SHTOOL path $CC` in 1010 *ccache*) cc_ccache=yes;; 1011 *) cc_ccache=no;; 1012 esac 1013 1014 if test "$cc_ccache" = "yes"; then 1015 if test -z "$CCACHE_DISABLE" -o "$CCACHE_DISABLE" != "1"; then 1016 AC_MSG_ERROR([must export CCACHE_DISABLE=1 to disable ccache for code coverage]) 1017 fi 1018 fi 1019 1020 AC_ARG_VAR([LCOV],[the ltp lcov program]) 1021 AC_PATH_PROG([LCOV],[lcov],[false]) 1022 if test "x$LCOV" = "xfalse"; then 1023 AC_MSG_ERROR([lcov not found]) 1024 fi 1025 1026 AC_ARG_VAR([GENHTML],[the ltp genhtml program]) 1027 AC_PATH_PROG([GENHTML],[genhtml],[false]) 1028 if test "x$GENHTML" = "xfalse"; then 1029 AC_MSG_ERROR([genhtml not found]) 1030 fi 1031 1032 # Set flags needed for gcov 1033 GCOV_CFLAGS="-O0 -ggdb3 -fprofile-arcs -ftest-coverage" 1034 GCOV_CXXFLAGS="-O0 -ggdb3 -fprofile-arcs -ftest-coverage" 1035 GCOV_LIBS="-lgcov" 1036 AC_SUBST([GCOV_CFLAGS]) 1037 AC_SUBST([GCOV_CXXFLAGS]) 1038 AC_SUBST([GCOV_LIBS]) 1039fi # enable_coverage 1040 1041AM_CONDITIONAL([WITH_GCOV],[test "x$enable_coverage" = "xyes"]) 1042 1043# Produce these files, in addition to config.h. 1044AC_CONFIG_FILES( 1045 Makefile 1046 libpcre.pc 1047 libpcre16.pc 1048 libpcre32.pc 1049 libpcreposix.pc 1050 libpcrecpp.pc 1051 pcre-config 1052 pcre.h 1053 pcre_stringpiece.h 1054 pcrecpparg.h 1055) 1056 1057# Make the generated script files executable. 1058AC_CONFIG_COMMANDS([script-chmod], [chmod a+x pcre-config]) 1059 1060# Make sure that pcre_chartables.c is removed in case the method for 1061# creating it was changed by reconfiguration. 1062AC_CONFIG_COMMANDS([delete-old-chartables], [rm -f pcre_chartables.c]) 1063 1064AC_OUTPUT 1065 1066# Print out a nice little message after configure is run displaying the 1067# chosen options. 1068 1069ebcdic_nl_code=n/a 1070if test "$enable_ebcdic_nl25" = "yes"; then 1071 ebcdic_nl_code=0x25 1072elif test "$enable_ebcdic" = "yes"; then 1073 ebcdic_nl_code=0x15 1074fi 1075 1076cat <<EOF 1077 1078$PACKAGE-$VERSION configuration summary: 1079 1080 Install prefix .................. : ${prefix} 1081 C preprocessor .................. : ${CPP} 1082 C compiler ...................... : ${CC} 1083 C++ preprocessor ................ : ${CXXCPP} 1084 C++ compiler .................... : ${CXX} 1085 Linker .......................... : ${LD} 1086 C preprocessor flags ............ : ${CPPFLAGS} 1087 C compiler flags ................ : ${CFLAGS} ${VISIBILITY_CFLAGS} 1088 C++ compiler flags .............. : ${CXXFLAGS} ${VISIBILITY_CXXFLAGS} 1089 Linker flags .................... : ${LDFLAGS} 1090 Extra libraries ................. : ${LIBS} 1091 1092 Build 8 bit pcre library ........ : ${enable_pcre8} 1093 Build 16 bit pcre library ....... : ${enable_pcre16} 1094 Build 32 bit pcre library ....... : ${enable_pcre32} 1095 Build C++ library ............... : ${enable_cpp} 1096 Enable JIT compiling support .... : ${enable_jit} 1097 Enable UTF-8/16/32 support ...... : ${enable_utf} 1098 Unicode properties .............. : ${enable_unicode_properties} 1099 Newline char/sequence ........... : ${enable_newline} 1100 \R matches only ANYCRLF ......... : ${enable_bsr_anycrlf} 1101 EBCDIC coding ................... : ${enable_ebcdic} 1102 EBCDIC code for NL .............. : ${ebcdic_nl_code} 1103 Rebuild char tables ............. : ${enable_rebuild_chartables} 1104 Use stack recursion ............. : ${enable_stack_for_recursion} 1105 POSIX mem threshold ............. : ${with_posix_malloc_threshold} 1106 Internal link size .............. : ${with_link_size} 1107 Nested parentheses limit ........ : ${with_parens_nest_limit} 1108 Match limit ..................... : ${with_match_limit} 1109 Match limit recursion ........... : ${with_match_limit_recursion} 1110 Build shared libs ............... : ${enable_shared} 1111 Build static libs ............... : ${enable_static} 1112 Use JIT in pcregrep ............. : ${enable_pcregrep_jit} 1113 Buffer size for pcregrep ........ : ${with_pcregrep_bufsize} 1114 Link pcregrep with libz ......... : ${enable_pcregrep_libz} 1115 Link pcregrep with libbz2 ....... : ${enable_pcregrep_libbz2} 1116 Link pcretest with libedit ...... : ${enable_pcretest_libedit} 1117 Link pcretest with libreadline .. : ${enable_pcretest_libreadline} 1118 Valgrind support ................ : ${enable_valgrind} 1119 Code coverage ................... : ${enable_coverage} 1120 1121EOF 1122 1123dnl end configure.ac 1124