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

Diff of /code/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 230 by ph10, Mon Sep 10 13:23:56 2007 UTC revision 784 by ph10, Mon Dec 5 12:33:44 2011 UTC
# Line 1  Line 1 
1  dnl Process this file with autoconf to produce a configure script.  dnl Process this file with autoconf to produce a configure script.
2    
3  dnl NOTE FOR MAINTAINERS: Do not use major or minor version numbers with  dnl NOTE FOR MAINTAINERS: Do not use minor version numbers 08 or 09 because
4  dnl leading zeros, because they may be treated as octal constants. The  dnl the leading zeros may cause them to be treated as invalid octal constants
5  dnl PCRE_PRERELEASE feature is for identifying release candidates. It might  dnl if a PCRE user writes code that uses PCRE_MINOR as a number. There is now
6  dnl be defined as -RC2, for example. For real releases, it should be defined  dnl a check further down that throws an error if 08 or 09 are used.
 dnl empty.  
7    
8  m4_define(pcre_major, [7])  dnl The PCRE_PRERELEASE feature is for identifying release candidates. It might
9  m4_define(pcre_minor, [4])  dnl be defined as -RC2, for example. For real releases, it should be empty.
10    
11    m4_define(pcre_major, [8])
12    m4_define(pcre_minor, [21])
13  m4_define(pcre_prerelease, [-RC1])  m4_define(pcre_prerelease, [-RC1])
14  m4_define(pcre_date, [2007-09-10])  m4_define(pcre_date, [2011-12-05])
15    
16  # Libtool shared library interface versions (current:revision:age)  # Libtool shared library interface versions (current:revision:age)
17  m4_define(libpcre_version, [0:1:0])  m4_define(libpcre_version, [0:1:0])
# Line 22  AC_CONFIG_SRCDIR([pcre.h.in]) Line 24  AC_CONFIG_SRCDIR([pcre.h.in])
24  AM_INIT_AUTOMAKE([dist-bzip2 dist-zip])  AM_INIT_AUTOMAKE([dist-bzip2 dist-zip])
25  AC_CONFIG_HEADERS(config.h)  AC_CONFIG_HEADERS(config.h)
26    
27    # This was added at the suggestion of libtoolize (03-Jan-10)
28    AC_CONFIG_MACRO_DIR([m4])
29    
30  # The default CFLAGS and CXXFLAGS in Autoconf are "-g -O2" for gcc and just  # The default CFLAGS and CXXFLAGS in Autoconf are "-g -O2" for gcc and just
31  # "-g" for any other compiler. There doesn't seem to be a standard way of  # "-g" for any other compiler. There doesn't seem to be a standard way of
32  # getting rid of the -g (which I don't think is needed for a production  # getting rid of the -g (which I don't think is needed for a production
# Line 60  then Line 65  then
65    fi    fi
66  fi  fi
67    
68    # AC_PROG_CXX will return "g++" even if no c++ compiler is installed.
69    # Check for that case, and just disable c++ code if g++ doesn't run.
70    AC_LANG_PUSH(C++)
71    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])],, CXX=""; CXXCP=""; CXXFLAGS="")
72    AC_LANG_POP
73    
74    # Check for a 64-bit integer type
75    AC_TYPE_INT64_T
76    
77  AC_PROG_INSTALL  AC_PROG_INSTALL
78  AC_LIBTOOL_WIN32_DLL  AC_LIBTOOL_WIN32_DLL
79  AC_PROG_LIBTOOL  LT_INIT
80  AC_PROG_LN_S  AC_PROG_LN_S
81    
82  PCRE_MAJOR="pcre_major"  PCRE_MAJOR="pcre_major"
# Line 71  PCRE_MINOR="pcre_minor" Line 84  PCRE_MINOR="pcre_minor"
84  PCRE_PRERELEASE="pcre_prerelease"  PCRE_PRERELEASE="pcre_prerelease"
85  PCRE_DATE="pcre_date"  PCRE_DATE="pcre_date"
86    
87    if test "$PCRE_MINOR" = "08" -o "$PCRE_MINOR" = "09"
88    then
89      echo "***"
90      echo "*** Minor version number $PCRE_MINOR must not be used. ***"
91      echo "*** Use only 01 to 07 or 10 onwards, to avoid octal issues. ***"
92      echo "***"
93      exit 1
94    fi
95    
96  AC_SUBST(PCRE_MAJOR)  AC_SUBST(PCRE_MAJOR)
97  AC_SUBST(PCRE_MINOR)  AC_SUBST(PCRE_MINOR)
98  AC_SUBST(PCRE_PRERELEASE)  AC_SUBST(PCRE_PRERELEASE)
# Line 82  then Line 104  then
104    htmldir='${docdir}/html'    htmldir='${docdir}/html'
105  fi  fi
106    
107  # Handle --disable-cpp  # Handle --disable-cpp. The substitution of enable_cpp is needed for use in
108    # pcre-config.
109  AC_ARG_ENABLE(cpp,  AC_ARG_ENABLE(cpp,
110                AS_HELP_STRING([--disable-cpp],                AS_HELP_STRING([--disable-cpp],
111                               [disable C++ support]),                               [disable C++ support]),
112                , enable_cpp=yes)                , enable_cpp=yes)
113    AC_SUBST(enable_cpp)
114    
115    # Handle --enable-jit (disabled by default)
116    AC_ARG_ENABLE(jit,
117                  AS_HELP_STRING([--enable-jit],
118                                 [enable Just-In-Time compiling support]),
119                  , enable_jit=no)
120    
121    # Handle --disable-pcregrep-jit (enabled by default)
122    AC_ARG_ENABLE(pcregrep-jit,
123                  AS_HELP_STRING([--disable-pcregrep-jit],
124                                 [disable JIT support in pcregrep]),
125                  , enable_pcregrep_jit=yes)
126    
127  # Handle --enable-rebuild-chartables  # Handle --enable-rebuild-chartables
128  AC_ARG_ENABLE(rebuild-chartables,  AC_ARG_ENABLE(rebuild-chartables,
# Line 97  AC_ARG_ENABLE(rebuild-chartables, Line 133  AC_ARG_ENABLE(rebuild-chartables,
133  # Handle --enable-utf8 (disabled by default)  # Handle --enable-utf8 (disabled by default)
134  AC_ARG_ENABLE(utf8,  AC_ARG_ENABLE(utf8,
135                AS_HELP_STRING([--enable-utf8],                AS_HELP_STRING([--enable-utf8],
136                               [enable UTF-8 support]),                               [enable UTF-8 support (incompatible with --enable-ebcdic)]),
137                , enable_utf8=unset)                , enable_utf8=unset)
138    
139  # Handle --enable-unicode-properties  # Handle --enable-unicode-properties
# Line 136  AC_ARG_ENABLE(newline-is-any, Line 172  AC_ARG_ENABLE(newline-is-any,
172                ac_pcre_newline=any)                ac_pcre_newline=any)
173  enable_newline="$ac_pcre_newline"  enable_newline="$ac_pcre_newline"
174    
175    # Handle --enable-bsr-anycrlf
176    AC_ARG_ENABLE(bsr-anycrlf,
177                  AS_HELP_STRING([--enable-bsr-anycrlf],
178                                 [\R matches only CR, LF, CRLF by default]),
179                  , enable_bsr_anycrlf=no)
180    
181  # Handle --enable-ebcdic  # Handle --enable-ebcdic
182  AC_ARG_ENABLE(ebcdic,  AC_ARG_ENABLE(ebcdic,
183                AS_HELP_STRING([--enable-ebcdic],                AS_HELP_STRING([--enable-ebcdic],
184                               [assume EBCDIC coding rather than ASCII; use this only in (uncommon) EBCDIC environments; it implies --enable-rebuild-chartables]),                               [assume EBCDIC coding rather than ASCII; incompatible with --enable-utf8; use only in (uncommon) EBCDIC environments; it implies --enable-rebuild-chartables]),
185                , enable_ebcdic=no)                , enable_ebcdic=no)
186    
187  # Handle --disable-stack-for-recursion  # Handle --disable-stack-for-recursion
# Line 148  AC_ARG_ENABLE(stack-for-recursion, Line 190  AC_ARG_ENABLE(stack-for-recursion,
190                               [don't use stack recursion when matching]),                               [don't use stack recursion when matching]),
191                , enable_stack_for_recursion=yes)                , enable_stack_for_recursion=yes)
192    
193    # Handle --enable-pcregrep-libz
194    AC_ARG_ENABLE(pcregrep-libz,
195                  AS_HELP_STRING([--enable-pcregrep-libz],
196                                 [link pcregrep with libz to handle .gz files]),
197                  , enable_pcregrep_libz=no)
198    
199    # Handle --enable-pcregrep-libbz2
200    AC_ARG_ENABLE(pcregrep-libbz2,
201                  AS_HELP_STRING([--enable-pcregrep-libbz2],
202                                 [link pcregrep with libbz2 to handle .bz2 files]),
203                  , enable_pcregrep_libbz2=no)
204    
205    # Handle --with-pcregrep-bufsize=N
206    AC_ARG_WITH(pcregrep-bufsize,
207                  AS_HELP_STRING([--with-pcregrep-bufsize=N],
208                                 [pcregrep buffer size (default=20480)]),
209                  , with_pcregrep_bufsize=20480)
210    
211    # Handle --enable-pcretest-libreadline
212    AC_ARG_ENABLE(pcretest-libreadline,
213                  AS_HELP_STRING([--enable-pcretest-libreadline],
214                                 [link pcretest with libreadline]),
215                  , enable_pcretest_libreadline=no)
216    
217  # Handle --with-posix-malloc-threshold=NBYTES  # Handle --with-posix-malloc-threshold=NBYTES
218  AC_ARG_WITH(posix-malloc-threshold,  AC_ARG_WITH(posix-malloc-threshold,
219              AS_HELP_STRING([--with-posix-malloc-threshold=NBYTES],              AS_HELP_STRING([--with-posix-malloc-threshold=NBYTES],
# Line 197  then Line 263  then
263  fi  fi
264    
265  # Make sure that if enable_ebcdic is set, rebuild_chartables is also enabled.  # Make sure that if enable_ebcdic is set, rebuild_chartables is also enabled.
266    # Also check that UTF-8 support is not requested, because PCRE cannot handle
267    # EBCDIC and UTF-8 in the same build. To do so it would need to use different
268    # character constants depending on the mode.
269  #  #
270  if test "x$enable_ebcdic" = "xyes"  if test "x$enable_ebcdic" = "xyes"
271  then  then
272    enable_rebuild_chartables=yes    enable_rebuild_chartables=yes
273      if test "x$enable_utf8" = "xyes"
274      then
275        AC_MSG_ERROR([support for EBCDIC and UTF-8 cannot be enabled at the same time])
276      fi
277  fi  fi
278    
279  # Convert the newline identifier into the appropriate integer value.  # Convert the newline identifier into the appropriate integer value.
# Line 231  it to run on SunOS4 and other "close to Line 304  it to run on SunOS4 and other "close to
304    
305  If you are going to build PCRE "by hand" on a system without "configure" you  If you are going to build PCRE "by hand" on a system without "configure" you
306  should copy the distributed config.h.generic to config.h, and then set up the  should copy the distributed config.h.generic to config.h, and then set up the
307  macros the way you need them. Alternatively, you can avoid editing by using -D  macro definitions the way you need them. You must then add -DHAVE_CONFIG_H to
308  on the compiler command line to set the macro values.  all of your compile commands, so that config.h is included at the start of
309    every source.
310    
311    Alternatively, you can avoid editing by using -D on the compiler command line
312    to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H.
313    
314  PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if  PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if
315  HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set  HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set
# Line 249  if test "x$enable_cpp" = "xyes" -a -n "$ Line 326  if test "x$enable_cpp" = "xyes" -a -n "$
326  then  then
327  AC_LANG_PUSH(C++)  AC_LANG_PUSH(C++)
328    
329    # Older versions of pcre defined pcrecpp::no_arg, but in new versions
330    # it's called pcrecpp::RE::no_arg.  For backwards ABI compatibility,
331    # we want to make one an alias for the other.  Different systems do
332    # this in different ways.  Some systems, for instance, can do it via
333    # a linker flag: -alias (for os x 10.5) or -i (for os x <=10.4).
334    OLD_LDFLAGS="$LDFLAGS"
335    for flag in "-alias,__ZN7pcrecpp2RE6no_argE,__ZN7pcrecpp6no_argE" \
336                "-i__ZN7pcrecpp6no_argE:__ZN7pcrecpp2RE6no_argE"; do
337      AC_MSG_CHECKING([for alias support in the linker])
338      LDFLAGS="$OLD_LDFLAGS -Wl,$flag"
339      # We try to run the linker with this new ld flag.  If the link fails,
340      # we give up and remove the new flag from LDFLAGS.
341      AC_LINK_IFELSE([AC_LANG_PROGRAM([namespace pcrecpp {
342                                        class RE { static int no_arg; };
343                                        int RE::no_arg;
344                                      }],
345                                     [])],
346                     [AC_MSG_RESULT([yes]);
347                      EXTRA_LIBPCRECPP_LDFLAGS="$EXTRA_LIBPCRECPP_LDFLAGS -Wl,$flag";
348                      break;],
349                     AC_MSG_RESULT([no]))
350    done
351    LDFLAGS="$OLD_LDFLAGS"
352    
353  # We could be more clever here, given we're doing AC_SUBST with this  # We could be more clever here, given we're doing AC_SUBST with this
354  # (eg set a var to be the name of the include file we want). But we're not  # (eg set a var to be the name of the include file we want). But we're not
355  # so it's easy to change back to 'regular' autoconf vars if we needed to.  # so it's easy to change back to 'regular' autoconf vars if we needed to.
# Line 258  AC_CHECK_HEADERS(bits/type_traits.h, [pc Line 359  AC_CHECK_HEADERS(bits/type_traits.h, [pc
359                                       [pcre_have_bits_type_traits="0"])                                       [pcre_have_bits_type_traits="0"])
360  AC_CHECK_HEADERS(type_traits.h, [pcre_have_type_traits="1"],  AC_CHECK_HEADERS(type_traits.h, [pcre_have_type_traits="1"],
361                                  [pcre_have_type_traits="0"])                                  [pcre_have_type_traits="0"])
362    
363    # (This isn't c++-specific, but is only used in pcrecpp.cc, so try this
364    # in a c++ context.  This matters becuase strtoimax is C99 and may not
365    # be supported by the C++ compiler.)
366    # Figure out how to create a longlong from a string: strtoll and
367    # equiv.  It's not enough to call AC_CHECK_FUNCS: hpux has a
368    # strtoll, for instance, but it only takes 2 args instead of 3!
369    # We have to call AH_TEMPLATE since AC_DEFINE_UNQUOTED below is complex.
370    AH_TEMPLATE(HAVE_STRTOQ, [Define to 1 if you have `strtoq'.])
371    AH_TEMPLATE(HAVE_STRTOLL, [Define to 1 if you have `strtoll'.])
372    AH_TEMPLATE(HAVE__STRTOI64, [Define to 1 if you have `_strtoi64'.])
373    AH_TEMPLATE(HAVE_STRTOIMAX, [Define to 1 if you have `strtoimax'.])
374    have_strto_fn=0
375    for fn in strtoq strtoll _strtoi64 strtoimax; do
376      AC_MSG_CHECKING([for $fn])
377      if test "$fn" = strtoimax; then
378        include=stdint.h
379      else
380        include=stdlib.h
381      fi
382      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <$include>],
383                                        [char* e; return $fn("100", &e, 10)])],
384                        [AC_MSG_RESULT(yes)
385                         AC_DEFINE_UNQUOTED(HAVE_`echo $fn | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`, 1,
386                                            [Define to 1 if you have `$fn'.])
387                         have_strto_fn=1
388                         break],
389                        [AC_MSG_RESULT(no)])
390    done
391    
392    if test "$have_strto_fn" = 1; then
393      AC_CHECK_TYPES([long long],
394                     [pcre_have_long_long="1"],
395                     [pcre_have_long_long="0"])
396      AC_CHECK_TYPES([unsigned long long],
397                     [pcre_have_ulong_long="1"],
398                     [pcre_have_ulong_long="0"])
399    else
400      pcre_have_long_long="0"
401      pcre_have_ulong_long="0"
402    fi
403    AC_SUBST(pcre_have_long_long)
404    AC_SUBST(pcre_have_ulong_long)
405    
406  AC_LANG_POP  AC_LANG_POP
407  fi  fi
408  # Using AC_SUBST eliminates the need to include config.h in a public .h file  # Using AC_SUBST eliminates the need to include config.h in a public .h file
# Line 267  AC_SUBST(pcre_have_bits_type_traits) Line 412  AC_SUBST(pcre_have_bits_type_traits)
412  # Conditional compilation  # Conditional compilation
413  AM_CONDITIONAL(WITH_PCRE_CPP, test "x$enable_cpp" = "xyes")  AM_CONDITIONAL(WITH_PCRE_CPP, test "x$enable_cpp" = "xyes")
414  AM_CONDITIONAL(WITH_REBUILD_CHARTABLES, test "x$enable_rebuild_chartables" = "xyes")  AM_CONDITIONAL(WITH_REBUILD_CHARTABLES, test "x$enable_rebuild_chartables" = "xyes")
415    AM_CONDITIONAL(WITH_JIT, test "x$enable_jit" = "xyes")
416    AM_CONDITIONAL(WITH_UTF8, test "x$enable_utf8" = "xyes")
417    
418  # Checks for typedefs, structures, and compiler characteristics.  # Checks for typedefs, structures, and compiler characteristics.
419    
420  AC_C_CONST  AC_C_CONST
421  AC_TYPE_SIZE_T  AC_TYPE_SIZE_T
422    
 AC_CHECK_TYPES([long long],  
                [pcre_have_long_long="1"],  
                [pcre_have_long_long="0"])  
 AC_CHECK_TYPES([unsigned long long],  
                [pcre_have_ulong_long="1"],  
                [pcre_have_ulong_long="0"])  
 AC_SUBST(pcre_have_long_long)  
 AC_SUBST(pcre_have_ulong_long)  
   
423  # Checks for library functions.  # Checks for library functions.
424    
425  AC_CHECK_FUNCS(bcopy memmove strerror strtoq strtoll)  AC_CHECK_FUNCS(bcopy memmove strerror)
426    
427    # Check for the availability of libz (aka zlib)
428    
429    AC_CHECK_HEADERS([zlib.h], [HAVE_ZLIB_H=1])
430    AC_CHECK_LIB([z], [gzopen], [HAVE_LIBZ=1])
431    
432    # Check for the availability of libbz2. Originally we just used AC_CHECK_LIB,
433    # as for libz. However, this had the following problem, diagnosed and fixed by
434    # a user:
435    #
436    #   - libbz2 uses the Pascal calling convention (WINAPI) for the functions
437    #     under Win32.
438    #   - The standard autoconf AC_CHECK_LIB fails to include "bzlib.h",
439    #     therefore missing the function definition.
440    #   - The compiler thus generates a "C" signature for the test function.
441    #   - The linker fails to find the "C" function.
442    #   - PCRE fails to configure if asked to do so against libbz2.
443    #
444    # Solution:
445    #
446    #   - Replace the AC_CHECK_LIB test with a custom test.
447    
448    AC_CHECK_HEADERS([bzlib.h], [HAVE_BZLIB_H=1])
449    # Original test
450    # AC_CHECK_LIB([bz2], [BZ2_bzopen], [HAVE_LIBBZ2=1])
451    #
452    # Custom test follows
453    
454    AC_MSG_CHECKING([for libbz2])
455    OLD_LIBS="$LIBS"
456    LIBS="$LIBS -lbz2"
457    AC_LINK_IFELSE([AC_LANG_PROGRAM([[
458    #ifdef HAVE_BZLIB_H
459    #include <bzlib.h>
460    #endif]],
461    [[return (int)BZ2_bzopen("conftest", "rb");]])],
462    [AC_MSG_RESULT([yes]);HAVE_LIBBZ2=1; break;],
463    AC_MSG_RESULT([no]))
464    LIBS="$OLD_LIBS"
465    
466    # Check for the availabiity of libreadline
467    
468    AC_CHECK_HEADERS([readline/readline.h], [HAVE_READLINE_H=1])
469    AC_CHECK_HEADERS([readline/history.h], [HAVE_HISTORY_H=1])
470    AC_CHECK_LIB([readline], [readline], [HAVE_LIB_READLINE=1])
471    
472  # This facilitates -ansi builds under Linux  # This facilitates -ansi builds under Linux
473  dnl AC_DEFINE([_GNU_SOURCE], [], [Enable GNU extensions in glibc])  dnl AC_DEFINE([_GNU_SOURCE], [], [Enable GNU extensions in glibc])
474    
475    PCRE_STATIC_CFLAG=""
476  if test "x$enable_shared" = "xno" ; then  if test "x$enable_shared" = "xno" ; then
477    AC_DEFINE([PCRE_STATIC], [1], [    AC_DEFINE([PCRE_STATIC], [1], [
478      Define if linking statically (TODO: make nice with Libtool)])      Define if linking statically (TODO: make nice with Libtool)])
479      PCRE_STATIC_CFLAG="-DPCRE_STATIC"
480  fi  fi
481    AC_SUBST(PCRE_STATIC_CFLAG)
482    
483  # Here is where pcre specific defines are handled  # Here is where pcre specific defines are handled
484    
485    if test "$enable_jit" = "yes"; then
486      AC_DEFINE([SUPPORT_JIT], [], [
487        Define to enable support for Just-In-Time compiling.])
488    else
489      enable_pcregrep_jit="no"
490    fi
491    
492    if test "$enable_pcregrep_jit" = "yes"; then
493      AC_DEFINE([SUPPORT_PCREGREP_JIT], [], [
494        Define to enable JIT support in pcregrep.])
495    fi
496    
497  if test "$enable_utf8" = "yes"; then  if test "$enable_utf8" = "yes"; then
498    AC_DEFINE([SUPPORT_UTF8], [], [    AC_DEFINE([SUPPORT_UTF8], [], [
499      Define to enable support for the UTF-8 Unicode encoding.])      Define to enable support for the UTF-8 Unicode encoding. This will
500        work even in an EBCDIC environment, but it is incompatible with
501        the EBCDIC macro. That is, PCRE can support *either* EBCDIC code
502        *or* ASCII/UTF-8, but not both at once.])
503  fi  fi
504    
505  if test "$enable_unicode_properties" = "yes"; then  if test "$enable_unicode_properties" = "yes"; then
506    AC_DEFINE([SUPPORT_UCP], [], [    AC_DEFINE([SUPPORT_UCP], [], [
507      Define to enable support for Unicode properties])      Define to enable support for Unicode properties.])
508  fi  fi
509    
510  if test "$enable_stack_for_recursion" = "no"; then  if test "$enable_stack_for_recursion" = "no"; then
# Line 319  if test "$enable_stack_for_recursion" = Line 520  if test "$enable_stack_for_recursion" =
520      (use --disable-stack-for-recursion).])      (use --disable-stack-for-recursion).])
521  fi  fi
522    
523    if test "$enable_pcregrep_libz" = "yes"; then
524      AC_DEFINE([SUPPORT_LIBZ], [], [
525        Define to allow pcregrep to be linked with libz, so that it is
526        able to handle .gz files.])
527    fi
528    
529    if test "$enable_pcregrep_libbz2" = "yes"; then
530      AC_DEFINE([SUPPORT_LIBBZ2], [], [
531        Define to allow pcregrep to be linked with libbz2, so that it is
532        able to handle .bz2 files.])
533    fi
534    
535    if test $with_pcregrep_bufsize -lt 8192 ; then
536      with_pcregrep_bufsize="8192"
537    fi
538    
539    AC_DEFINE_UNQUOTED([PCREGREP_BUFSIZE], [$with_pcregrep_bufsize], [
540      The value of PCREGREP_BUFSIZE determines the size of buffer used by
541      pcregrep to hold parts of the file it is searching. On systems that
542      support it, "configure" can be used to override the default, which is
543      8192. This is also the minimum value. The actual amount of memory used by
544      pcregrep is three times this number, because it allows for the buffering of
545      "before" and "after" lines.])
546    
547    if test "$enable_pcretest_libreadline" = "yes"; then
548      AC_DEFINE([SUPPORT_LIBREADLINE], [], [
549        Define to allow pcretest to be linked with libreadline.])
550    fi
551    
552  AC_DEFINE_UNQUOTED([NEWLINE], [$ac_pcre_newline_value], [  AC_DEFINE_UNQUOTED([NEWLINE], [$ac_pcre_newline_value], [
553    The value of NEWLINE determines the newline character sequence. On    The value of NEWLINE determines the newline character sequence. On
554    Unix-like systems, "configure" can be used to override the default,    systems that support it, "configure" can be used to override the
555    which is 10. The possible values are 10 (LF), 13 (CR), 3338 (CRLF),    default, which is 10. The possible values are 10 (LF), 13 (CR),
556    -1 (ANY), or -2 (ANYCRLF).])    3338 (CRLF), -1 (ANY), or -2 (ANYCRLF).])
557    
558    if test "$enable_bsr_anycrlf" = "yes"; then
559      AC_DEFINE([BSR_ANYCRLF], [], [
560        By default, the \R escape sequence matches any Unicode line ending
561        character or sequence of characters. If BSR_ANYCRLF is defined, this is
562        changed so that backslash-R matches only CR, LF, or CRLF. The build-
563        time default can be overridden by the user of PCRE at runtime. On
564        systems that support it, "configure" can be used to override the
565        default.])
566    fi
567    
568  AC_DEFINE_UNQUOTED([LINK_SIZE], [$with_link_size], [  AC_DEFINE_UNQUOTED([LINK_SIZE], [$with_link_size], [
569    The value of LINK_SIZE determines the number of bytes used to store    The value of LINK_SIZE determines the number of bytes used to store
# Line 392  if test "$enable_ebcdic" = "yes"; then Line 632  if test "$enable_ebcdic" = "yes"; then
632    AC_DEFINE_UNQUOTED([EBCDIC], [], [    AC_DEFINE_UNQUOTED([EBCDIC], [], [
633      If you are compiling for a system that uses EBCDIC instead of ASCII      If you are compiling for a system that uses EBCDIC instead of ASCII
634      character codes, define this macro as 1. On systems that can use      character codes, define this macro as 1. On systems that can use
635      "configure", this can be done via --enable-ebcdic.])      "configure", this can be done via --enable-ebcdic. PCRE will then
636        assume that all input strings are in EBCDIC. If you do not define
637        this macro, PCRE will assume input strings are ASCII or UTF-8 Unicode.
638        It is not possible to build a version of PCRE that supports both
639        EBCDIC and UTF-8.])
640  fi  fi
641    
642  # Platform specific issues  # Platform specific issues
# Line 410  esac Line 654  esac
654  # The extra LDFLAGS for each particular library  # The extra LDFLAGS for each particular library
655  # (Note: The libpcre*_version bits are m4 variables, assigned above)  # (Note: The libpcre*_version bits are m4 variables, assigned above)
656    
657  EXTRA_LIBPCRE_LDFLAGS="$NO_UNDEFINED -version-info libpcre_version"  EXTRA_LIBPCRE_LDFLAGS="$EXTRA_LIBPCRE_LDFLAGS \
658                           $NO_UNDEFINED -version-info libpcre_version"
659    
660  EXTRA_LIBPCREPOSIX_LDFLAGS="$NO_UNDEFINED -version-info libpcreposix_version"  EXTRA_LIBPCREPOSIX_LDFLAGS="$EXTRA_LIBPCREPOSIX_LDFLAGS \
661                                $NO_UNDEFINED -version-info libpcreposix_version"
662    
663  EXTRA_LIBPCRECPP_LDFLAGS="$NO_UNDEFINED $EXPORT_ALL_SYMBOLS -version-info libpcrecpp_version"  EXTRA_LIBPCRECPP_LDFLAGS="$EXTRA_LIBPCRECPP_LDFLAGS \
664                              $NO_UNDEFINED -version-info libpcrecpp_version \
665                              $EXPORT_ALL_SYMBOLS"
666    
667  AC_SUBST(EXTRA_LIBPCRE_LDFLAGS)  AC_SUBST(EXTRA_LIBPCRE_LDFLAGS)
668  AC_SUBST(EXTRA_LIBPCREPOSIX_LDFLAGS)  AC_SUBST(EXTRA_LIBPCREPOSIX_LDFLAGS)
669  AC_SUBST(EXTRA_LIBPCRECPP_LDFLAGS)  AC_SUBST(EXTRA_LIBPCRECPP_LDFLAGS)
670    
671  # When we run 'make distcheck', use these arguments.  # When we run 'make distcheck', use these arguments.
672  DISTCHECK_CONFIGURE_FLAGS="--enable-cpp --enable-unicode-properties"  DISTCHECK_CONFIGURE_FLAGS="--enable-jit --enable-cpp --enable-unicode-properties"
673  AC_SUBST(DISTCHECK_CONFIGURE_FLAGS)  AC_SUBST(DISTCHECK_CONFIGURE_FLAGS)
674    
675    # Check that, if --enable-pcregrep-libz or --enable-pcregrep-libbz2 is
676    # specified, the relevant library is available.
677    
678    if test "$enable_pcregrep_libz" = "yes"; then
679      if test "$HAVE_ZLIB_H" != "1"; then
680        echo "** Cannot --enable-pcregrep-libz because zlib.h was not found"
681        exit 1
682      fi
683      if test "$HAVE_LIBZ" != "1"; then
684        echo "** Cannot --enable-pcregrep-libz because libz was not found"
685        exit 1
686      fi
687      LIBZ="-lz"
688    fi
689    AC_SUBST(LIBZ)
690    
691    if test "$enable_pcregrep_libbz2" = "yes"; then
692      if test "$HAVE_BZLIB_H" != "1"; then
693        echo "** Cannot --enable-pcregrep-libbz2 because bzlib.h was not found"
694        exit 1
695      fi
696      if test "$HAVE_LIBBZ2" != "1"; then
697        echo "** Cannot --enable-pcregrep-libbz2 because libbz2 was not found"
698        exit 1
699      fi
700      LIBBZ2="-lbz2"
701    fi
702    AC_SUBST(LIBBZ2)
703    
704    # Similarly for --enable-pcretest-readline
705    
706    if test "$enable_pcretest_libreadline" = "yes"; then
707      if test "$HAVE_READLINE_H" != "1"; then
708        echo "** Cannot --enable-pcretest-readline because readline/readline.h was not found."
709        exit 1
710      fi
711      if test "$HAVE_HISTORY_H" != "1"; then
712        echo "** Cannot --enable-pcretest-readline because readline/history.h was not found."
713        exit 1
714      fi
715      LIBREADLINE="-lreadline"
716    fi
717    AC_SUBST(LIBREADLINE)
718    
719  # Produce these files, in addition to config.h.  # Produce these files, in addition to config.h.
720  AC_CONFIG_FILES(  AC_CONFIG_FILES(
721          Makefile          Makefile
722          libpcre.pc          libpcre.pc
723            libpcreposix.pc
724          libpcrecpp.pc          libpcrecpp.pc
725          pcre-config          pcre-config
726          pcre.h          pcre.h
# Line 446  AC_OUTPUT Line 739  AC_OUTPUT
739    
740  # Print out a nice little message after configure is run displaying your  # Print out a nice little message after configure is run displaying your
741  # chosen options.  # chosen options.
742  #  
743  cat <<EOF  cat <<EOF
744    
745  $PACKAGE-$VERSION configuration summary:  $PACKAGE-$VERSION configuration summary:
746    
747      Install prefix ......... : ${prefix}      Install prefix .................. : ${prefix}
748      C preprocessor ......... : ${CPP}      C preprocessor .................. : ${CPP}
749      C compiler ............. : ${CC}      C compiler ...................... : ${CC}
750      C++ preprocessor ....... : ${CXXCPP}      C++ preprocessor ................ : ${CXXCPP}
751      C++ compiler ........... : ${CXX}      C++ compiler .................... : ${CXX}
752      Linker ................. : ${LD}      Linker .......................... : ${LD}
753      C preprocessor flags ... : ${CPPFLAGS}      C preprocessor flags ............ : ${CPPFLAGS}
754      C compiler flags ....... : ${CFLAGS}      C compiler flags ................ : ${CFLAGS}
755      C++ compiler flags ..... : ${CXXFLAGS}      C++ compiler flags .............. : ${CXXFLAGS}
756      Linker flags ........... : ${LDFLAGS}      Linker flags .................... : ${LDFLAGS}
757      Extra libraries ........ : ${LIBS}      Extra libraries ................. : ${LIBS}
758    
759      Build C++ library ...... : ${enable_cpp}      Build C++ library ............... : ${enable_cpp}
760      Enable UTF-8 support ... : ${enable_utf8}      Enable JIT compiling support .... : ${enable_jit}
761      Unicode properties ..... : ${enable_unicode_properties}      Enable UTF-8 support ............ : ${enable_utf8}
762      Newline char/sequence .. : ${enable_newline}      Unicode properties .............. : ${enable_unicode_properties}
763      EBCDIC coding .......... : ${enable_ebcdic}      Newline char/sequence ........... : ${enable_newline}
764      Rebuild char tables .... : ${enable_rebuild_chartables}      \R matches only ANYCRLF ......... : ${enable_bsr_anycrlf}
765      Use stack recursion .... : ${enable_stack_for_recursion}      EBCDIC coding ................... : ${enable_ebcdic}
766      POSIX mem threshold .... : ${with_posix_malloc_threshold}      Rebuild char tables ............. : ${enable_rebuild_chartables}
767      Internal link size ..... : ${with_link_size}      Use stack recursion ............. : ${enable_stack_for_recursion}
768      Match limit ............ : ${with_match_limit}      POSIX mem threshold ............. : ${with_posix_malloc_threshold}
769      Match limit recursion .. : ${with_match_limit_recursion}      Internal link size .............. : ${with_link_size}
770      Build shared libs ...... : ${enable_shared}      Match limit ..................... : ${with_match_limit}
771      Build static libs ...... : ${enable_static}      Match limit recursion ........... : ${with_match_limit_recursion}
772        Build shared libs ............... : ${enable_shared}
773        Build static libs ............... : ${enable_static}
774        Use JIT in pcregrep ............. : ${enable_pcregrep_jit}
775        Buffer size for pcregrep ........ : ${with_pcregrep_bufsize}
776        Link pcregrep with libz ......... : ${enable_pcregrep_libz}
777        Link pcregrep with libbz2 ....... : ${enable_pcregrep_libbz2}
778        Link pcretest with libreadline .. : ${enable_pcretest_libreadline}
779    
780  EOF  EOF
781    

Legend:
Removed from v.230  
changed lines
  Added in v.784

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12