715471ee18022e259656d155b42e68886e0f39a3
[users/jgh/exim.git] / src / src / pcre / config.h
1 /* $Cambridge: exim/src/src/pcre/config.h,v 1.2 2006/11/07 16:50:36 ph10 Exp $ */
2
3 /*************************************************
4 *           config.h for PCRE for Exim           *
5 *************************************************/
6
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.
10
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().
16
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
20 things alone. */
21
22 #include "../os.h"
23 #define HAVE_MEMMOVE 1
24
25 /* We also set up directly a number of parameters that, in the freestanding
26 PCRE, can be adjusted by "configure". */
27
28 #define NEWLINE                 '\n'
29 #define LINK_SIZE               2
30 #define MATCH_LIMIT             10000000
31 #define MATCH_LIMIT_RECURSION   10000000
32 #define POSIX_MALLOC_THRESHOLD  10
33
34 #define MAX_NAME_SIZE           32
35 #define MAX_NAME_COUNT          10000
36 #define MAX_DUPLENGTH           30000
37
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. */
40
41 #define EBCDIC 0
42 #define EXPORT
43
44 /* End */