Annotation of embedaddon/php/ext/pcre/pcrelib/config.h, revision 1.1
1.1 ! misho 1:
! 2: #include <php_compat.h>
! 3:
! 4: #ifndef PHP_WIN32
! 5: # include <php_config.h>
! 6: #endif
! 7:
! 8: #undef PACKAGE_NAME
! 9: #undef PACKAGE_VERSION
! 10: #undef PACKAGE_TARNAME
! 11: #undef PACKAGE_STRING
! 12:
! 13: #define SUPPORT_UCP
! 14: #define SUPPORT_UTF8
! 15:
! 16: #if defined(__GNUC__) && __GNUC__ >= 4
! 17: # ifdef __cplusplus
! 18: # define PCRE_EXP_DECL extern "C" __attribute__ ((visibility("default")))
! 19: # else
! 20: # define PCRE_EXP_DECL extern __attribute__ ((visibility("default")))
! 21: # endif
! 22: # define PCRE_EXP_DEFN __attribute__ ((visibility("default")))
! 23: # define PCRE_EXP_DATA_DEFN __attribute__ ((visibility("default")))
! 24: #endif
! 25:
! 26:
! 27: /* Exclude these below definitions when building within PHP */
! 28: #ifndef ZEND_API
! 29:
! 30: /* config.h. Generated from config.h.in by configure. */
! 31: /* config.h.in. Generated from configure.ac by autoheader. */
! 32:
! 33:
! 34: /* On Unix-like systems config.h.in is converted by "configure" into config.h.
! 35: Some other environments also support the use of "configure". PCRE is written in
! 36: Standard C, but there are a few non-standard things it can cope with, allowing
! 37: it to run on SunOS4 and other "close to standard" systems.
! 38:
! 39: If you are going to build PCRE "by hand" on a system without "configure" you
! 40: should copy the distributed config.h.generic to config.h, and then set up the
! 41: macro definitions the way you need them. You must then add -DHAVE_CONFIG_H to
! 42: all of your compile commands, so that config.h is included at the start of
! 43: every source.
! 44:
! 45: Alternatively, you can avoid editing by using -D on the compiler command line
! 46: to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H.
! 47:
! 48: PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if
! 49: HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set
! 50: them both to 0; an emulation function will be used. */
! 51:
! 52: /* By default, the \R escape sequence matches any Unicode line ending
! 53: character or sequence of characters. If BSR_ANYCRLF is defined, this is
! 54: changed so that backslash-R matches only CR, LF, or CRLF. The build- time
! 55: default can be overridden by the user of PCRE at runtime. On systems that
! 56: support it, "configure" can be used to override the default. */
! 57: /* #undef BSR_ANYCRLF */
! 58:
! 59: /* If you are compiling for a system that uses EBCDIC instead of ASCII
! 60: character codes, define this macro as 1. On systems that can use
! 61: "configure", this can be done via --enable-ebcdic. PCRE will then assume
! 62: that all input strings are in EBCDIC. If you do not define this macro, PCRE
! 63: will assume input strings are ASCII or UTF-8 Unicode. It is not possible to
! 64: build a version of PCRE that supports both EBCDIC and UTF-8. */
! 65: /* #undef EBCDIC */
! 66:
! 67: /* Define to 1 if you have the `bcopy' function. */
! 68: #ifndef HAVE_BCOPY
! 69: #define HAVE_BCOPY 1
! 70: #endif
! 71:
! 72: /* Define to 1 if you have the <bits/type_traits.h> header file. */
! 73: /* #undef HAVE_BITS_TYPE_TRAITS_H */
! 74:
! 75: /* Define to 1 if you have the <bzlib.h> header file. */
! 76: #ifndef HAVE_BZLIB_H
! 77: #define HAVE_BZLIB_H 1
! 78: #endif
! 79:
! 80: /* Define to 1 if you have the <dirent.h> header file. */
! 81: #ifndef HAVE_DIRENT_H
! 82: #define HAVE_DIRENT_H 1
! 83: #endif
! 84:
! 85: /* Define to 1 if you have the <dlfcn.h> header file. */
! 86: #ifndef HAVE_DLFCN_H
! 87: #define HAVE_DLFCN_H 1
! 88: #endif
! 89:
! 90: /* Define to 1 if you have the <inttypes.h> header file. */
! 91: #ifndef HAVE_INTTYPES_H
! 92: #define HAVE_INTTYPES_H 1
! 93: #endif
! 94:
! 95: /* Define to 1 if you have the <limits.h> header file. */
! 96: #ifndef HAVE_LIMITS_H
! 97: #define HAVE_LIMITS_H 1
! 98: #endif
! 99:
! 100: /* Define to 1 if the system has the type `long long'. */
! 101: #ifndef HAVE_LONG_LONG
! 102: #define HAVE_LONG_LONG 1
! 103: #endif
! 104:
! 105: /* Define to 1 if you have the `memmove' function. */
! 106: #ifndef HAVE_MEMMOVE
! 107: #define HAVE_MEMMOVE 1
! 108: #endif
! 109:
! 110: /* Define to 1 if you have the <memory.h> header file. */
! 111: #ifndef HAVE_MEMORY_H
! 112: #define HAVE_MEMORY_H 1
! 113: #endif
! 114:
! 115: /* Define to 1 if you have the <readline/history.h> header file. */
! 116: #ifndef HAVE_READLINE_HISTORY_H
! 117: #define HAVE_READLINE_HISTORY_H 1
! 118: #endif
! 119:
! 120: /* Define to 1 if you have the <readline/readline.h> header file. */
! 121: #ifndef HAVE_READLINE_READLINE_H
! 122: #define HAVE_READLINE_READLINE_H 1
! 123: #endif
! 124:
! 125: /* Define to 1 if you have the <stdint.h> header file. */
! 126: #ifndef HAVE_STDINT_H
! 127: #define HAVE_STDINT_H 1
! 128: #endif
! 129:
! 130: /* Define to 1 if you have the <stdlib.h> header file. */
! 131: #ifndef HAVE_STDLIB_H
! 132: #define HAVE_STDLIB_H 1
! 133: #endif
! 134:
! 135: /* Define to 1 if you have the `strerror' function. */
! 136: #ifndef HAVE_STRERROR
! 137: #define HAVE_STRERROR 1
! 138: #endif
! 139:
! 140: /* Define to 1 if you have the <string> header file. */
! 141: #ifndef HAVE_STRING
! 142: #define HAVE_STRING 1
! 143: #endif
! 144:
! 145: /* Define to 1 if you have the <strings.h> header file. */
! 146: #ifndef HAVE_STRINGS_H
! 147: #define HAVE_STRINGS_H 1
! 148: #endif
! 149:
! 150: /* Define to 1 if you have the <string.h> header file. */
! 151: #ifndef HAVE_STRING_H
! 152: #define HAVE_STRING_H 1
! 153: #endif
! 154:
! 155: /* Define to 1 if you have `strtoimax'. */
! 156: /* #undef HAVE_STRTOIMAX */
! 157:
! 158: /* Define to 1 if you have `strtoll'. */
! 159: /* #undef HAVE_STRTOLL */
! 160:
! 161: /* Define to 1 if you have `strtoq'. */
! 162: #ifndef HAVE_STRTOQ
! 163: #define HAVE_STRTOQ 1
! 164: #endif
! 165:
! 166: /* Define to 1 if you have the <sys/stat.h> header file. */
! 167: #ifndef HAVE_SYS_STAT_H
! 168: #define HAVE_SYS_STAT_H 1
! 169: #endif
! 170:
! 171: /* Define to 1 if you have the <sys/types.h> header file. */
! 172: #ifndef HAVE_SYS_TYPES_H
! 173: #define HAVE_SYS_TYPES_H 1
! 174: #endif
! 175:
! 176: /* Define to 1 if you have the <type_traits.h> header file. */
! 177: /* #undef HAVE_TYPE_TRAITS_H */
! 178:
! 179: /* Define to 1 if you have the <unistd.h> header file. */
! 180: #ifndef HAVE_UNISTD_H
! 181: #define HAVE_UNISTD_H 1
! 182: #endif
! 183:
! 184: /* Define to 1 if the system has the type `unsigned long long'. */
! 185: #ifndef HAVE_UNSIGNED_LONG_LONG
! 186: #define HAVE_UNSIGNED_LONG_LONG 1
! 187: #endif
! 188:
! 189: /* Define to 1 if you have the <windows.h> header file. */
! 190: /* #undef HAVE_WINDOWS_H */
! 191:
! 192: /* Define to 1 if you have the <zlib.h> header file. */
! 193: #ifndef HAVE_ZLIB_H
! 194: #define HAVE_ZLIB_H 1
! 195: #endif
! 196:
! 197: /* Define to 1 if you have `_strtoi64'. */
! 198: /* #undef HAVE__STRTOI64 */
! 199:
! 200: /* Exclude these above definitions when building within PHP */
! 201: #endif
! 202:
! 203: /* The value of LINK_SIZE determines the number of bytes used to store links
! 204: as offsets within the compiled regex. The default is 2, which allows for
! 205: compiled patterns up to 64K long. This covers the vast majority of cases.
! 206: However, PCRE can also be compiled to use 3 or 4 bytes instead. This allows
! 207: for longer patterns in extreme cases. On systems that support it,
! 208: "configure" can be used to override this default. */
! 209: #ifndef LINK_SIZE
! 210: #define LINK_SIZE 2
! 211: #endif
! 212:
! 213: /* Define to the sub-directory in which libtool stores uninstalled libraries.
! 214: */
! 215: #ifndef LT_OBJDIR
! 216: #define LT_OBJDIR ".libs/"
! 217: #endif
! 218:
! 219: /* The value of MATCH_LIMIT determines the default number of times the
! 220: internal match() function can be called during a single execution of
! 221: pcre_exec(). There is a runtime interface for setting a different limit.
! 222: The limit exists in order to catch runaway regular expressions that take
! 223: for ever to determine that they do not match. The default is set very large
! 224: so that it does not accidentally catch legitimate cases. On systems that
! 225: support it, "configure" can be used to override this default default. */
! 226: #ifndef MATCH_LIMIT
! 227: #define MATCH_LIMIT 10000000
! 228: #endif
! 229:
! 230: /* The above limit applies to all calls of match(), whether or not they
! 231: increase the recursion depth. In some environments it is desirable to limit
! 232: the depth of recursive calls of match() more strictly, in order to restrict
! 233: the maximum amount of stack (or heap, if NO_RECURSE is defined) that is
! 234: used. The value of MATCH_LIMIT_RECURSION applies only to recursive calls of
! 235: match(). To have any useful effect, it must be less than the value of
! 236: MATCH_LIMIT. The default is to use the same value as MATCH_LIMIT. There is
! 237: a runtime method for setting a different limit. On systems that support it,
! 238: "configure" can be used to override the default. */
! 239: #ifndef MATCH_LIMIT_RECURSION
! 240: #define MATCH_LIMIT_RECURSION MATCH_LIMIT
! 241: #endif
! 242:
! 243: /* This limit is parameterized just in case anybody ever wants to change it.
! 244: Care must be taken if it is increased, because it guards against integer
! 245: overflow caused by enormously large patterns. */
! 246: #ifndef MAX_NAME_COUNT
! 247: #define MAX_NAME_COUNT 10000
! 248: #endif
! 249:
! 250: /* This limit is parameterized just in case anybody ever wants to change it.
! 251: Care must be taken if it is increased, because it guards against integer
! 252: overflow caused by enormously large patterns. */
! 253: #ifndef MAX_NAME_SIZE
! 254: #define MAX_NAME_SIZE 32
! 255: #endif
! 256:
! 257: /* The value of NEWLINE determines the newline character sequence. On systems
! 258: that support it, "configure" can be used to override the default, which is
! 259: 10. The possible values are 10 (LF), 13 (CR), 3338 (CRLF), -1 (ANY), or -2
! 260: (ANYCRLF). */
! 261: #ifndef NEWLINE
! 262: #define NEWLINE 10
! 263: #endif
! 264:
! 265: /* PCRE uses recursive function calls to handle backtracking while matching.
! 266: This can sometimes be a problem on systems that have stacks of limited
! 267: size. Define NO_RECURSE to get a version that doesn't use recursion in the
! 268: match() function; instead it creates its own stack by steam using
! 269: pcre_recurse_malloc() to obtain memory from the heap. For more detail, see
! 270: the comments and other stuff just above the match() function. On systems
! 271: that support it, "configure" can be used to set this in the Makefile (use
! 272: --disable-stack-for-recursion). */
! 273: /* #undef NO_RECURSE */
! 274:
! 275: /* Name of package */
! 276: #define PACKAGE "pcre"
! 277:
! 278: /* Define to the address where bug reports for this package should be sent. */
! 279: #define PACKAGE_BUGREPORT ""
! 280:
! 281: /* Define to the full name of this package. */
! 282: #define PACKAGE_NAME "PCRE"
! 283:
! 284: /* Define to the full name and version of this package. */
! 285: #define PACKAGE_STRING "PCRE 8.12"
! 286:
! 287: /* Define to the one symbol short name of this package. */
! 288: #define PACKAGE_TARNAME "pcre"
! 289:
! 290: /* Define to the home page for this package. */
! 291: #define PACKAGE_URL ""
! 292:
! 293: /* Define to the version of this package. */
! 294: #define PACKAGE_VERSION "8.12"
! 295:
! 296:
! 297: /* If you are compiling for a system other than a Unix-like system or
! 298: Win32, and it needs some magic to be inserted before the definition
! 299: of a function that is exported by the library, define this macro to
! 300: contain the relevant magic. If you do not define this macro, it
! 301: defaults to "extern" for a C compiler and "extern C" for a C++
! 302: compiler on non-Win32 systems. This macro apears at the start of
! 303: every exported function that is part of the external API. It does
! 304: not appear on functions that are "external" in the C sense, but
! 305: which are internal to the library. */
! 306: /* #undef PCRE_EXP_DEFN */
! 307:
! 308: /* Define if linking statically (TODO: make nice with Libtool) */
! 309: /* #undef PCRE_STATIC */
! 310:
! 311: /* When calling PCRE via the POSIX interface, additional working storage is
! 312: required for holding the pointers to capturing substrings because PCRE
! 313: requires three integers per substring, whereas the POSIX interface provides
! 314: only two. If the number of expected substrings is small, the wrapper
! 315: function uses space on the stack, because this is faster than using
! 316: malloc() for each call. The threshold above which the stack is no longer
! 317: used is defined by POSIX_MALLOC_THRESHOLD. On systems that support it,
! 318: "configure" can be used to override this default. */
! 319: #ifndef POSIX_MALLOC_THRESHOLD
! 320: #define POSIX_MALLOC_THRESHOLD 10
! 321: #endif
! 322:
! 323: /* Define to 1 if you have the ANSI C header files. */
! 324: #ifndef STDC_HEADERS
! 325: #define STDC_HEADERS 1
! 326: #endif
! 327:
! 328: /* Define to allow pcregrep to be linked with libbz2, so that it is able to
! 329: handle .bz2 files. */
! 330: /* #undef SUPPORT_LIBBZ2 */
! 331:
! 332: /* Define to allow pcretest to be linked with libreadline. */
! 333: /* #undef SUPPORT_LIBREADLINE */
! 334:
! 335: /* Define to allow pcregrep to be linked with libz, so that it is able to
! 336: handle .gz files. */
! 337: /* #undef SUPPORT_LIBZ */
! 338:
! 339: /* Define to enable support for Unicode properties */
! 340: /* #undef SUPPORT_UCP */
! 341:
! 342: /* Define to enable support for the UTF-8 Unicode encoding. This will work
! 343: even in an EBCDIC environment, but it is incompatible with the EBCDIC
! 344: macro. That is, PCRE can support *either* EBCDIC code *or* ASCII/UTF-8, but
! 345: not both at once. */
! 346: /* #undef SUPPORT_UTF8 */
! 347:
! 348: /* Version number of package */
! 349: #ifndef VERSION
! 350: #define VERSION "8.12"
! 351: #endif
! 352:
! 353: /* Define to empty if `const' does not conform to ANSI C. */
! 354: /* #undef const */
! 355:
! 356: /* Define to the type of a signed integer type of width exactly 64 bits if
! 357: such a type exists and the standard includes do not define it. */
! 358: /* #undef int64_t */
! 359:
! 360: /* Define to `unsigned int' if <sys/types.h> does not define. */
! 361: /* #undef size_t */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>