Elliott Hughes | 5b80804 | 2021-10-01 10:56:10 -0700 | [diff] [blame] | 1 | /* src/config.h.in. Generated from configure.ac by autoheader. */ |
| 2 | |
| 3 | |
| 4 | /* PCRE2 is written in Standard C, but there are a few non-standard things it |
| 5 | can cope with, allowing it to run on SunOS4 and other "close to standard" |
| 6 | systems. |
| 7 | |
| 8 | In environments that support the GNU autotools, config.h.in is converted into |
| 9 | config.h by the "configure" script. In environments that use CMake, |
| 10 | config-cmake.in is converted into config.h. If you are going to build PCRE2 "by |
| 11 | hand" without using "configure" or CMake, you should copy the distributed |
| 12 | config.h.generic to config.h, and edit the macro definitions to be the way you |
| 13 | need them. You must then add -DHAVE_CONFIG_H to all of your compile commands, |
| 14 | so that config.h is included at the start of every source. |
| 15 | |
| 16 | Alternatively, you can avoid editing by using -D on the compiler command line |
| 17 | to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H, |
| 18 | but if you do, default values will be taken from config.h for non-boolean |
| 19 | macros that are not defined on the command line. |
| 20 | |
| 21 | Boolean macros such as HAVE_STDLIB_H and SUPPORT_PCRE2_8 should either be |
| 22 | defined (conventionally to 1) for TRUE, and not defined at all for FALSE. All |
| 23 | such macros are listed as a commented #undef in config.h.generic. Macros such |
| 24 | as MATCH_LIMIT, whose actual value is relevant, have defaults defined, but are |
| 25 | surrounded by #ifndef/#endif lines so that the value can be overridden by -D. |
| 26 | |
| 27 | PCRE2 uses memmove() if HAVE_MEMMOVE is defined; otherwise it uses bcopy() if |
| 28 | HAVE_BCOPY is defined. If your system has neither bcopy() nor memmove(), make |
| 29 | sure both macros are undefined; an emulation function will then be used. */ |
| 30 | |
| 31 | /* By default, the \R escape sequence matches any Unicode line ending |
| 32 | character or sequence of characters. If BSR_ANYCRLF is defined (to any |
| 33 | value), this is changed so that backslash-R matches only CR, LF, or CRLF. |
| 34 | The build-time default can be overridden by the user of PCRE2 at runtime. |
| 35 | */ |
| 36 | #undef BSR_ANYCRLF |
| 37 | |
| 38 | /* Define to any value to disable the use of the z and t modifiers in |
| 39 | formatting settings such as %zu or %td (this is rarely needed). */ |
| 40 | #undef DISABLE_PERCENT_ZT |
| 41 | |
| 42 | /* If you are compiling for a system that uses EBCDIC instead of ASCII |
| 43 | character codes, define this macro to any value. When EBCDIC is set, PCRE2 |
| 44 | assumes that all input strings are in EBCDIC. If you do not define this |
| 45 | macro, PCRE2 will assume input strings are ASCII or UTF-8/16/32 Unicode. It |
| 46 | is not possible to build a version of PCRE2 that supports both EBCDIC and |
| 47 | UTF-8/16/32. */ |
| 48 | #undef EBCDIC |
| 49 | |
| 50 | /* In an EBCDIC environment, define this macro to any value to arrange for the |
| 51 | NL character to be 0x25 instead of the default 0x15. NL plays the role that |
| 52 | LF does in an ASCII/Unicode environment. */ |
| 53 | #undef EBCDIC_NL25 |
| 54 | |
| 55 | /* Define this if your compiler supports __attribute__((uninitialized)) */ |
| 56 | #undef HAVE_ATTRIBUTE_UNINITIALIZED |
| 57 | |
| 58 | /* Define to 1 if you have the `bcopy' function. */ |
| 59 | #undef HAVE_BCOPY |
| 60 | |
| 61 | /* Define to 1 if you have the <bzlib.h> header file. */ |
| 62 | #undef HAVE_BZLIB_H |
| 63 | |
| 64 | /* Define to 1 if you have the <dirent.h> header file. */ |
| 65 | #undef HAVE_DIRENT_H |
| 66 | |
| 67 | /* Define to 1 if you have the <dlfcn.h> header file. */ |
| 68 | #undef HAVE_DLFCN_H |
| 69 | |
| 70 | /* Define to 1 if you have the <editline/readline.h> header file. */ |
| 71 | #undef HAVE_EDITLINE_READLINE_H |
| 72 | |
| 73 | /* Define to 1 if you have the <edit/readline/readline.h> header file. */ |
| 74 | #undef HAVE_EDIT_READLINE_READLINE_H |
| 75 | |
| 76 | /* Define to 1 if you have the <inttypes.h> header file. */ |
| 77 | #undef HAVE_INTTYPES_H |
| 78 | |
| 79 | /* Define to 1 if you have the <limits.h> header file. */ |
| 80 | #undef HAVE_LIMITS_H |
| 81 | |
| 82 | /* Define to 1 if you have the `memfd_create' function. */ |
| 83 | #undef HAVE_MEMFD_CREATE |
| 84 | |
| 85 | /* Define to 1 if you have the `memmove' function. */ |
| 86 | #undef HAVE_MEMMOVE |
| 87 | |
| 88 | /* Define to 1 if you have the <minix/config.h> header file. */ |
| 89 | #undef HAVE_MINIX_CONFIG_H |
| 90 | |
| 91 | /* Define to 1 if you have the `mkostemp' function. */ |
| 92 | #undef HAVE_MKOSTEMP |
| 93 | |
| 94 | /* Define if you have POSIX threads libraries and header files. */ |
| 95 | #undef HAVE_PTHREAD |
| 96 | |
| 97 | /* Have PTHREAD_PRIO_INHERIT. */ |
| 98 | #undef HAVE_PTHREAD_PRIO_INHERIT |
| 99 | |
Elliott Hughes | 4e19c8e | 2022-04-15 15:11:02 -0700 | [diff] [blame] | 100 | /* Define to 1 if you have the <readline.h> header file. */ |
| 101 | #undef HAVE_READLINE_H |
| 102 | |
Elliott Hughes | 5b80804 | 2021-10-01 10:56:10 -0700 | [diff] [blame] | 103 | /* Define to 1 if you have the <readline/history.h> header file. */ |
| 104 | #undef HAVE_READLINE_HISTORY_H |
| 105 | |
| 106 | /* Define to 1 if you have the <readline/readline.h> header file. */ |
| 107 | #undef HAVE_READLINE_READLINE_H |
| 108 | |
| 109 | /* Define to 1 if you have the `realpath' function. */ |
| 110 | #undef HAVE_REALPATH |
| 111 | |
| 112 | /* Define to 1 if you have the `secure_getenv' function. */ |
| 113 | #undef HAVE_SECURE_GETENV |
| 114 | |
| 115 | /* Define to 1 if you have the <stdint.h> header file. */ |
| 116 | #undef HAVE_STDINT_H |
| 117 | |
| 118 | /* Define to 1 if you have the <stdio.h> header file. */ |
| 119 | #undef HAVE_STDIO_H |
| 120 | |
| 121 | /* Define to 1 if you have the <stdlib.h> header file. */ |
| 122 | #undef HAVE_STDLIB_H |
| 123 | |
| 124 | /* Define to 1 if you have the `strerror' function. */ |
| 125 | #undef HAVE_STRERROR |
| 126 | |
| 127 | /* Define to 1 if you have the <strings.h> header file. */ |
| 128 | #undef HAVE_STRINGS_H |
| 129 | |
| 130 | /* Define to 1 if you have the <string.h> header file. */ |
| 131 | #undef HAVE_STRING_H |
| 132 | |
| 133 | /* Define to 1 if you have the <sys/stat.h> header file. */ |
| 134 | #undef HAVE_SYS_STAT_H |
| 135 | |
| 136 | /* Define to 1 if you have the <sys/types.h> header file. */ |
| 137 | #undef HAVE_SYS_TYPES_H |
| 138 | |
| 139 | /* Define to 1 if you have the <sys/wait.h> header file. */ |
| 140 | #undef HAVE_SYS_WAIT_H |
| 141 | |
| 142 | /* Define to 1 if you have the <unistd.h> header file. */ |
| 143 | #undef HAVE_UNISTD_H |
| 144 | |
| 145 | /* Define to 1 if the compiler supports simple visibility declarations. */ |
| 146 | #undef HAVE_VISIBILITY |
| 147 | |
| 148 | /* Define to 1 if you have the <wchar.h> header file. */ |
| 149 | #undef HAVE_WCHAR_H |
| 150 | |
| 151 | /* Define to 1 if you have the <windows.h> header file. */ |
| 152 | #undef HAVE_WINDOWS_H |
| 153 | |
| 154 | /* Define to 1 if you have the <zlib.h> header file. */ |
| 155 | #undef HAVE_ZLIB_H |
| 156 | |
| 157 | /* This limits the amount of memory that may be used while matching a pattern. |
| 158 | It applies to both pcre2_match() and pcre2_dfa_match(). It does not apply |
| 159 | to JIT matching. The value is in kibibytes (units of 1024 bytes). */ |
| 160 | #undef HEAP_LIMIT |
| 161 | |
| 162 | /* The value of LINK_SIZE determines the number of bytes used to store links |
| 163 | as offsets within the compiled regex. The default is 2, which allows for |
| 164 | compiled patterns up to 65535 code units long. This covers the vast |
| 165 | majority of cases. However, PCRE2 can also be compiled to use 3 or 4 bytes |
| 166 | instead. This allows for longer patterns in extreme cases. */ |
| 167 | #undef LINK_SIZE |
| 168 | |
| 169 | /* Define to the sub-directory where libtool stores uninstalled libraries. */ |
| 170 | #undef LT_OBJDIR |
| 171 | |
| 172 | /* The value of MATCH_LIMIT determines the default number of times the |
| 173 | pcre2_match() function can record a backtrack position during a single |
| 174 | matching attempt. The value is also used to limit a loop counter in |
| 175 | pcre2_dfa_match(). There is a runtime interface for setting a different |
| 176 | limit. The limit exists in order to catch runaway regular expressions that |
| 177 | take for ever to determine that they do not match. The default is set very |
| 178 | large so that it does not accidentally catch legitimate cases. */ |
| 179 | #undef MATCH_LIMIT |
| 180 | |
| 181 | /* The above limit applies to all backtracks, whether or not they are nested. |
| 182 | In some environments it is desirable to limit the nesting of backtracking |
| 183 | (that is, the depth of tree that is searched) more strictly, in order to |
| 184 | restrict the maximum amount of heap memory that is used. The value of |
| 185 | MATCH_LIMIT_DEPTH provides this facility. To have any useful effect, it |
| 186 | must be less than the value of MATCH_LIMIT. The default is to use the same |
| 187 | value as MATCH_LIMIT. There is a runtime method for setting a different |
| 188 | limit. In the case of pcre2_dfa_match(), this limit controls the depth of |
| 189 | the internal nested function calls that are used for pattern recursions, |
| 190 | lookarounds, and atomic groups. */ |
| 191 | #undef MATCH_LIMIT_DEPTH |
| 192 | |
| 193 | /* This limit is parameterized just in case anybody ever wants to change it. |
| 194 | Care must be taken if it is increased, because it guards against integer |
| 195 | overflow caused by enormously large patterns. */ |
| 196 | #undef MAX_NAME_COUNT |
| 197 | |
| 198 | /* This limit is parameterized just in case anybody ever wants to change it. |
| 199 | Care must be taken if it is increased, because it guards against integer |
| 200 | overflow caused by enormously large patterns. */ |
| 201 | #undef MAX_NAME_SIZE |
| 202 | |
| 203 | /* Defining NEVER_BACKSLASH_C locks out the use of \C in all patterns. */ |
| 204 | #undef NEVER_BACKSLASH_C |
| 205 | |
| 206 | /* The value of NEWLINE_DEFAULT determines the default newline character |
| 207 | sequence. PCRE2 client programs can override this by selecting other values |
| 208 | at run time. The valid values are 1 (CR), 2 (LF), 3 (CRLF), 4 (ANY), 5 |
| 209 | (ANYCRLF), and 6 (NUL). */ |
| 210 | #undef NEWLINE_DEFAULT |
| 211 | |
| 212 | /* Name of package */ |
| 213 | #undef PACKAGE |
| 214 | |
| 215 | /* Define to the address where bug reports for this package should be sent. */ |
| 216 | #undef PACKAGE_BUGREPORT |
| 217 | |
| 218 | /* Define to the full name of this package. */ |
| 219 | #undef PACKAGE_NAME |
| 220 | |
| 221 | /* Define to the full name and version of this package. */ |
| 222 | #undef PACKAGE_STRING |
| 223 | |
| 224 | /* Define to the one symbol short name of this package. */ |
| 225 | #undef PACKAGE_TARNAME |
| 226 | |
| 227 | /* Define to the home page for this package. */ |
| 228 | #undef PACKAGE_URL |
| 229 | |
| 230 | /* Define to the version of this package. */ |
| 231 | #undef PACKAGE_VERSION |
| 232 | |
| 233 | /* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested |
| 234 | parentheses (of any kind) in a pattern. This limits the amount of system |
| 235 | stack that is used while compiling a pattern. */ |
| 236 | #undef PARENS_NEST_LIMIT |
| 237 | |
| 238 | /* The value of PCRE2GREP_BUFSIZE is the starting size of the buffer used by |
| 239 | pcre2grep to hold parts of the file it is searching. The buffer will be |
| 240 | expanded up to PCRE2GREP_MAX_BUFSIZE if necessary, for files containing |
| 241 | very long lines. The actual amount of memory used by pcre2grep is three |
| 242 | times this number, because it allows for the buffering of "before" and |
| 243 | "after" lines. */ |
| 244 | #undef PCRE2GREP_BUFSIZE |
| 245 | |
| 246 | /* The value of PCRE2GREP_MAX_BUFSIZE specifies the maximum size of the buffer |
| 247 | used by pcre2grep to hold parts of the file it is searching. The actual |
| 248 | amount of memory used by pcre2grep is three times this number, because it |
| 249 | allows for the buffering of "before" and "after" lines. */ |
| 250 | #undef PCRE2GREP_MAX_BUFSIZE |
| 251 | |
| 252 | /* to make a symbol visible */ |
| 253 | #undef PCRE2POSIX_EXP_DECL |
| 254 | |
| 255 | /* to make a symbol visible */ |
| 256 | #undef PCRE2POSIX_EXP_DEFN |
| 257 | |
| 258 | /* Define to any value to include debugging code. */ |
| 259 | #undef PCRE2_DEBUG |
| 260 | |
| 261 | /* to make a symbol visible */ |
| 262 | #undef PCRE2_EXP_DECL |
| 263 | |
| 264 | |
| 265 | /* If you are compiling for a system other than a Unix-like system or |
| 266 | Win32, and it needs some magic to be inserted before the definition |
| 267 | of a function that is exported by the library, define this macro to |
| 268 | contain the relevant magic. If you do not define this macro, a suitable |
| 269 | __declspec value is used for Windows systems; in other environments |
| 270 | "extern" is used for a C compiler and "extern C" for a C++ compiler. |
| 271 | This macro apears at the start of every exported function that is part |
| 272 | of the external API. It does not appear on functions that are "external" |
| 273 | in the C sense, but which are internal to the library. */ |
| 274 | #undef PCRE2_EXP_DEFN |
| 275 | |
| 276 | /* Define to any value if linking statically (TODO: make nice with Libtool) */ |
| 277 | #undef PCRE2_STATIC |
| 278 | |
| 279 | /* Define to necessary symbol if this constant uses a non-standard name on |
| 280 | your system. */ |
| 281 | #undef PTHREAD_CREATE_JOINABLE |
| 282 | |
| 283 | /* Define to any non-zero number to enable support for SELinux compatible |
| 284 | executable memory allocator in JIT. Note that this will have no effect |
| 285 | unless SUPPORT_JIT is also defined. */ |
| 286 | #undef SLJIT_PROT_EXECUTABLE_ALLOCATOR |
| 287 | |
| 288 | /* Define to 1 if all of the C90 standard headers exist (not just the ones |
| 289 | required in a freestanding environment). This macro is provided for |
| 290 | backward compatibility; new code need not use it. */ |
| 291 | #undef STDC_HEADERS |
| 292 | |
| 293 | /* Define to any value to enable support for Just-In-Time compiling. */ |
| 294 | #undef SUPPORT_JIT |
| 295 | |
| 296 | /* Define to any value to allow pcre2grep to be linked with libbz2, so that it |
| 297 | is able to handle .bz2 files. */ |
| 298 | #undef SUPPORT_LIBBZ2 |
| 299 | |
| 300 | /* Define to any value to allow pcre2test to be linked with libedit. */ |
| 301 | #undef SUPPORT_LIBEDIT |
| 302 | |
| 303 | /* Define to any value to allow pcre2test to be linked with libreadline. */ |
| 304 | #undef SUPPORT_LIBREADLINE |
| 305 | |
| 306 | /* Define to any value to allow pcre2grep to be linked with libz, so that it |
| 307 | is able to handle .gz files. */ |
| 308 | #undef SUPPORT_LIBZ |
| 309 | |
| 310 | /* Define to any value to enable callout script support in pcre2grep. */ |
| 311 | #undef SUPPORT_PCRE2GREP_CALLOUT |
| 312 | |
| 313 | /* Define to any value to enable fork support in pcre2grep callout scripts. |
| 314 | This will have no effect unless SUPPORT_PCRE2GREP_CALLOUT is also defined. |
| 315 | */ |
| 316 | #undef SUPPORT_PCRE2GREP_CALLOUT_FORK |
| 317 | |
| 318 | /* Define to any value to enable JIT support in pcre2grep. Note that this will |
| 319 | have no effect unless SUPPORT_JIT is also defined. */ |
| 320 | #undef SUPPORT_PCRE2GREP_JIT |
| 321 | |
| 322 | /* Define to any value to enable the 16 bit PCRE2 library. */ |
| 323 | #undef SUPPORT_PCRE2_16 |
| 324 | |
| 325 | /* Define to any value to enable the 32 bit PCRE2 library. */ |
| 326 | #undef SUPPORT_PCRE2_32 |
| 327 | |
| 328 | /* Define to any value to enable the 8 bit PCRE2 library. */ |
| 329 | #undef SUPPORT_PCRE2_8 |
| 330 | |
| 331 | /* Define to any value to enable support for Unicode and UTF encoding. This |
| 332 | will work even in an EBCDIC environment, but it is incompatible with the |
| 333 | EBCDIC macro. That is, PCRE2 can support *either* EBCDIC code *or* |
| 334 | ASCII/Unicode, but not both at once. */ |
| 335 | #undef SUPPORT_UNICODE |
| 336 | |
| 337 | /* Define to any value for valgrind support to find invalid memory reads. */ |
| 338 | #undef SUPPORT_VALGRIND |
| 339 | |
| 340 | /* Enable extensions on AIX 3, Interix. */ |
| 341 | #ifndef _ALL_SOURCE |
| 342 | # undef _ALL_SOURCE |
| 343 | #endif |
| 344 | /* Enable general extensions on macOS. */ |
| 345 | #ifndef _DARWIN_C_SOURCE |
| 346 | # undef _DARWIN_C_SOURCE |
| 347 | #endif |
| 348 | /* Enable general extensions on Solaris. */ |
| 349 | #ifndef __EXTENSIONS__ |
| 350 | # undef __EXTENSIONS__ |
| 351 | #endif |
| 352 | /* Enable GNU extensions on systems that have them. */ |
| 353 | #ifndef _GNU_SOURCE |
| 354 | # undef _GNU_SOURCE |
| 355 | #endif |
| 356 | /* Enable X/Open compliant socket functions that do not require linking |
| 357 | with -lxnet on HP-UX 11.11. */ |
| 358 | #ifndef _HPUX_ALT_XOPEN_SOCKET_API |
| 359 | # undef _HPUX_ALT_XOPEN_SOCKET_API |
| 360 | #endif |
| 361 | /* Identify the host operating system as Minix. |
| 362 | This macro does not affect the system headers' behavior. |
| 363 | A future release of Autoconf may stop defining this macro. */ |
| 364 | #ifndef _MINIX |
| 365 | # undef _MINIX |
| 366 | #endif |
| 367 | /* Enable general extensions on NetBSD. |
| 368 | Enable NetBSD compatibility extensions on Minix. */ |
| 369 | #ifndef _NETBSD_SOURCE |
| 370 | # undef _NETBSD_SOURCE |
| 371 | #endif |
| 372 | /* Enable OpenBSD compatibility extensions on NetBSD. |
| 373 | Oddly enough, this does nothing on OpenBSD. */ |
| 374 | #ifndef _OPENBSD_SOURCE |
| 375 | # undef _OPENBSD_SOURCE |
| 376 | #endif |
| 377 | /* Define to 1 if needed for POSIX-compatible behavior. */ |
| 378 | #ifndef _POSIX_SOURCE |
| 379 | # undef _POSIX_SOURCE |
| 380 | #endif |
| 381 | /* Define to 2 if needed for POSIX-compatible behavior. */ |
| 382 | #ifndef _POSIX_1_SOURCE |
| 383 | # undef _POSIX_1_SOURCE |
| 384 | #endif |
| 385 | /* Enable POSIX-compatible threading on Solaris. */ |
| 386 | #ifndef _POSIX_PTHREAD_SEMANTICS |
| 387 | # undef _POSIX_PTHREAD_SEMANTICS |
| 388 | #endif |
| 389 | /* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ |
| 390 | #ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ |
| 391 | # undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ |
| 392 | #endif |
| 393 | /* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ |
| 394 | #ifndef __STDC_WANT_IEC_60559_BFP_EXT__ |
| 395 | # undef __STDC_WANT_IEC_60559_BFP_EXT__ |
| 396 | #endif |
| 397 | /* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ |
| 398 | #ifndef __STDC_WANT_IEC_60559_DFP_EXT__ |
| 399 | # undef __STDC_WANT_IEC_60559_DFP_EXT__ |
| 400 | #endif |
| 401 | /* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ |
| 402 | #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ |
| 403 | # undef __STDC_WANT_IEC_60559_FUNCS_EXT__ |
| 404 | #endif |
| 405 | /* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ |
| 406 | #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ |
| 407 | # undef __STDC_WANT_IEC_60559_TYPES_EXT__ |
| 408 | #endif |
| 409 | /* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ |
| 410 | #ifndef __STDC_WANT_LIB_EXT2__ |
| 411 | # undef __STDC_WANT_LIB_EXT2__ |
| 412 | #endif |
| 413 | /* Enable extensions specified by ISO/IEC 24747:2009. */ |
| 414 | #ifndef __STDC_WANT_MATH_SPEC_FUNCS__ |
| 415 | # undef __STDC_WANT_MATH_SPEC_FUNCS__ |
| 416 | #endif |
| 417 | /* Enable extensions on HP NonStop. */ |
| 418 | #ifndef _TANDEM_SOURCE |
| 419 | # undef _TANDEM_SOURCE |
| 420 | #endif |
| 421 | /* Enable X/Open extensions. Define to 500 only if necessary |
| 422 | to make mbstate_t available. */ |
| 423 | #ifndef _XOPEN_SOURCE |
| 424 | # undef _XOPEN_SOURCE |
| 425 | #endif |
| 426 | |
| 427 | |
| 428 | /* Version number of package */ |
| 429 | #undef VERSION |
| 430 | |
| 431 | /* Define to empty if `const' does not conform to ANSI C. */ |
| 432 | #undef const |
| 433 | |
| 434 | /* Define to the type of a signed integer type of width exactly 64 bits if |
| 435 | such a type exists and the standard includes do not define it. */ |
| 436 | #undef int64_t |
| 437 | |
| 438 | /* Define to `unsigned int' if <sys/types.h> does not define. */ |
| 439 | #undef size_t |