1 /* $Cambridge: exim/src/src/pcre/config.h,v 1.2 2006/11/07 16:50:36 ph10 Exp $ */
3 /*************************************************
4 * config.h for PCRE for Exim *
5 *************************************************/
7 /* The PCRE sources include config.h, which for a free-standing PCRE build gets
8 set up by autoconf. For the embedded version in Exim, this file, which is
9 manually maintained, is used.
11 The only configuration thing that matters for the PCRE library itself is
12 whether the memmove() function exists or not. It should be present in all
13 Standard C libraries, but is missing in SunOS4. PCRE expects autoconf to set
14 HAVE_MEMMOVE to 1 in config.h when memmove() is present. If that is not set, it
15 defines memmove() as a macro for bcopy().
17 Exim works differently. It handles this case by defining memmove() as a macro
18 in its os.h-SunOS4 file. We interface this to PCRE by including the os.h file
19 here, and then defining HAVE_MEMOVE so that PCRE's code in internal.h leaves
23 #define HAVE_MEMMOVE 1
25 /* We also set up directly a number of parameters that, in the freestanding
26 PCRE, can be adjusted by "configure". */
30 #define MATCH_LIMIT 10000000
31 #define MATCH_LIMIT_RECURSION 10000000
32 #define POSIX_MALLOC_THRESHOLD 10
34 #define MAX_NAME_SIZE 32
35 #define MAX_NAME_COUNT 10000
36 #define MAX_DUPLENGTH 30000
38 /* There is some stuff in the PCRE sources for compilation on non-Unix systems
39 and non-ASCII systems. For Exim's purposes, just flatten it all. */