/* config.h.cmake.in.  Not generated, but originated from autoheader.  */
/* This file must be kept up-to-date with needed substitutions from config.h.in. */

/* Define to 1 if you have the <cstdint> header file. */
#cmakedefine HAVE_CSTDINT 1

/* Define to 1 if you have the <stdint.h> header file. */
#cmakedefine HAVE_STDINT_H 1

#if defined(__cplusplus) && defined(HAVE_CSTDINT)
#include <cstdint>
#elif HAVE_STDINT_H
#include <stdint.h>
#elif HAVE_INTTYPES_H
#include <inttypes.h>
#endif

/* Define to specify no threading is used */
#cmakedefine APP_NO_THREADS 1

/* Define to 1 if you have the <arpa/inet.h> header file. */
#cmakedefine HAVE_ARPA_INET_H 1

/* Define to 1 if you have the <arpa/nameser_compat.h> header file. */
#cmakedefine HAVE_ARPA_NAMESER_COMPAT_H 1

/* define if bool is a built-in type */
#cmakedefine HAVE_BOOL 1

/* Define to 1 if you have the `catclose' function. */
#cmakedefine HAVE_CATCLOSE 1

/* Define to 1 if you have the `catgets' function. */
#cmakedefine HAVE_CATGETS 1

/* Define to 1 if you have the `catopen' function. */
#cmakedefine HAVE_CATOPEN 1

/* Define to 1 if you have the `clock_gettime' function. */
#cmakedefine HAVE_CLOCK_GETTIME 1

/* Define to 1 if you have the <CoreServices/CoreServices.h> header file. */
#cmakedefine HAVE_CORESERVICES_CORESERVICES_H 1

/* Define to 1 if you have cpuid.h */
#cmakedefine HAVE_CPUID_H 1

/* Define to 1 if you have the <ctype.h> header file. */
#cmakedefine HAVE_CTYPE_H 1

/* Define to 1 if you have the <dlfcn.h> header file. */
#cmakedefine HAVE_DLFCN_H 1

/* Define to 1 if you have the <endian.h> header file. */
#cmakedefine HAVE_ENDIAN_H 1

/* Define to 1 if you have the <errno.h> header file. */
#cmakedefine HAVE_ERRNO_H 1

/* Define to 1 if you have the <fcntl.h> header file. */
#cmakedefine HAVE_FCNTL_H 1

/* Define to 1 if you have the <float.h> header file. */
#cmakedefine HAVE_FLOAT_H 1

/* Define to 1 if you have the `ftime' function. */
#cmakedefine HAVE_FTIME 1

/* Define to 1 if you have the `getaddrinfo' function. */
#cmakedefine HAVE_GETADDRINFO 1

/* Define to 1 if you have the `getcwd' function. */
#cmakedefine HAVE_GETCWD 1

/* Define to 1 if you have the `gethostbyaddr' function. */
#cmakedefine HAVE_GETHOSTBYADDR 1

/* Define to 1 if you have the `gethostbyname' function. */
#cmakedefine HAVE_GETHOSTBYNAME 1

/* Define to 1 if you have the `gettimeofday' function. */
#cmakedefine HAVE_GETTIMEOFDAY 1

/* Define to 1 if you have the `gmtime_r' function. */
#cmakedefine HAVE_GMTIME_R 1

/* Define to 1 if you have the `iconv' function. */
#cmakedefine HAVE_ICONV 1

/* Define to 1 if you have the `iconv_close' function. */
#cmakedefine HAVE_ICONV_CLOSE 1

/* Define to 1 if you have the <iconv.h> header file. */
#cmakedefine HAVE_ICONV_H 1

/* Define to 1 if you have the `iconv_open' function. */
#cmakedefine HAVE_ICONV_OPEN 1

/* Define to 1 if you have the <inttypes.h> header file. */
#cmakedefine HAVE_INTTYPES_H 1

/* Define to 1 if you have the <langinfo.h> header file. */
#cmakedefine HAVE_LANGINFO_H 1

/* Define to 1 if you have the `nsl' library (-lnsl). */
#cmakedefine HAVE_LIBNSL 1

/* Define to 1 if you have the `socket' library (-lsocket). */
#cmakedefine HAVE_LIBSOCKET 1

/* Define to 1 if you have the <limits.h> header file. */
#cmakedefine HAVE_LIMITS_H 1

/* Define to 1 if you have the `localeconv' function. */
#cmakedefine HAVE_LOCALECONV 1

/* Define to 1 if you have the <locale.h> header file. */
#cmakedefine HAVE_LOCALE_H 1

/* define if the compiler implements L"widestring" */
#cmakedefine HAVE_LSTRING 1

/* Define to 1 if you have the <machine/endian.h> header file. */
#cmakedefine HAVE_MACHINE_ENDIAN_H 1

/* Define to 1 if you have the `mblen' function. */
#cmakedefine HAVE_MBLEN 1

/* Define to 1 if you have the `mbrlen' function. */
#cmakedefine HAVE_MBRLEN 1

/* Define to 1 if you have the `mbsrtowcs' function. */
#cmakedefine HAVE_MBSRTOWCS 1

/* Define to 1 if you have the `mbstowcs' function. */
#cmakedefine HAVE_MBSTOWCS 1

/* Define to 1 if you have the `memmove' function. */
#cmakedefine HAVE_MEMMOVE 1

/* Define to 1 if you have the <memory.h> header file. */
#cmakedefine HAVE_MEMORY_H 1

/* Define to 1 if you have the `memset' function. */
#cmakedefine HAVE_MEMSET 1

/* define if the compiler implements namespaces */
#cmakedefine HAVE_NAMESPACES 1

/* Define to 1 if you have the <netdb.h> header file. */
#cmakedefine HAVE_NETDB_H 1

/* Define to 1 if you have the <netinet/in.h> header file. */
#cmakedefine HAVE_NETINET_IN_H 1

/* Define to 1 if you have the `nl_langinfo' function. */
#cmakedefine HAVE_NL_LANGINFO 1

/* Define to 1 if you have the <nl_types.h> header file. */
#cmakedefine HAVE_NL_TYPES_H 1

/* Define to 1 if you have the `pathconf' function. */
#cmakedefine HAVE_PATHCONF 1

/* Define to 1 if you have the PATH_MAX macro. */
#cmakedefine HAVE_PATH_MAX 1

/* Define if you have POSIX threads libraries and header files. */
#cmakedefine HAVE_PTHREAD 1

/* Define to 1 if you have the `realpath' function. */
#cmakedefine HAVE_REALPATH 1

/* Define to 1 if you have the `setlocale' function. */
#cmakedefine HAVE_SETLOCALE 1

/* Define to 1 if you have the `snprintf' function. */
#cmakedefine HAVE_SNPRINTF 1

/* Define to 1 if you have the `socket' function. */
#cmakedefine HAVE_SOCKET 1

/* Define to 1 if stdbool.h conforms to C99. */
#cmakedefine HAVE_STDBOOL_H 1

/* Define to 1 if you have the <stddef.h> header file. */
#cmakedefine HAVE_STDDEF_H 1

/* Define to 1 if you have the <stdio.h> header file. */
#cmakedefine HAVE_STDIO_H 1

/* Define to 1 if you have the <stdlib.h> header file. */
#cmakedefine HAVE_STDLIB_H 1

/* define if the compiler supports ISO C++ standard library */
#cmakedefine HAVE_STD_LIBS 1

/* define if the compiler supports the std namespace */
#cmakedefine HAVE_STD_NAMESPACE 1

/* Define to 1 if you have the `strcasecmp' function. */
#cmakedefine HAVE_STRCASECMP 1

/* Define to 1 if you have the `strchr' function. */
#cmakedefine HAVE_STRCHR 1

/* Define to 1 if you have the `strdup' function. */
#cmakedefine HAVE_STRDUP 1

/* Define to 1 if you have the `stricmp' function. */
#cmakedefine HAVE_STRICMP 1

/* Define to 1 if you have the <strings.h> header file. */
#cmakedefine HAVE_STRINGS_H 1

/* Define to 1 if you have the <string.h> header file. */
#cmakedefine HAVE_STRING_H 1

/* Define to 1 if you have the `strncasecmp' function. */
#cmakedefine HAVE_STRNCASECMP 1

/* Define to 1 if you have the `strnicmp' function. */
#cmakedefine HAVE_STRNICMP 1

/* Define to 1 if you have the `strrchr' function. */
#cmakedefine HAVE_STRRCHR 1

/* Define to 1 if you have the `strstr' function. */
#cmakedefine HAVE_STRSTR 1

/* Define to 1 if you have the `strtol' function. */
#cmakedefine HAVE_STRTOL 1

/* Define to 1 if you have the `strtoul' function. */
#cmakedefine HAVE_STRTOUL 1

/* Define to 1 if you have the <sys/param.h> header file. */
#cmakedefine HAVE_SYS_PARAM_H 1

/* Define to 1 if you have the <sys/socket.h> header file. */
#cmakedefine HAVE_SYS_SOCKET_H 1

/* Define to 1 if you have the <sys/stat.h> header file. */
#cmakedefine HAVE_SYS_STAT_H 1

/* Define to 1 if you have the <sys/timeb.h> header file. */
#cmakedefine HAVE_SYS_TIMEB_H 1

/* Define to 1 if you have the <sys/time.h> header file. */
#cmakedefine HAVE_SYS_TIME_H 1

/* Define to 1 if you have the <sys/types.h> header file. */
#cmakedefine HAVE_SYS_TYPES_H 1

/* Define to 1 if you have the `timegm' function. */
#cmakedefine HAVE_TIMEGM 1

/* Define to 1 if you have the `towlower' function. */
#cmakedefine HAVE_TOWLOWER 1

/* Define to 1 if you have the `towupper' function. */
#cmakedefine HAVE_TOWUPPER 1

/* Define to 1 if you have the <unistd.h> header file. */
#cmakedefine HAVE_UNISTD_H 1

/* Define to 1 if you have the <wchar.h> header file. */
#cmakedefine HAVE_WCHAR_H 1

/* Define to 1 if you have the `wcsicmp' function. */
#cmakedefine HAVE_WCSICMP 1

/* Define to 1 if you have the `wcslwr' function. */
#cmakedefine HAVE_WCSLWR 1

/* Define to 1 if you have the `wcsnicmp' function. */
#cmakedefine HAVE_WCSNICMP 1

/* Define to 1 if you have the `wcsrtombs' function. */
#cmakedefine HAVE_WCSRTOMBS 1

/* Define to 1 if you have the `wcstombs' function. */
#cmakedefine HAVE_WCSTOMBS 1

/* Define to 1 if you have the `wcsupr' function. */
#cmakedefine HAVE_WCSUPR 1

/* Define to 1 if you have the <wctype.h> header file. */
#cmakedefine HAVE_WCTYPE_H 1

/* Define to 1 if you have the <winsock2.h> header file. */
#cmakedefine HAVE_WINSOCK2_H 1

/* Define to 1 if you have to use const char* with iconv, to 0 if you must use
   char*. */
#define ICONV_USES_CONST_POINTER @ICONV_USES_CONST_POINTER@

/* Define to 1 if your C compiler doesn't accept -c and -o together. */
#cmakedefine NO_MINUS_C_MINUS_O 1

/* Name of package */
#define PACKAGE "@PACKAGE@"

/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@"

/* Define to the full name of this package. */
#define PACKAGE_NAME "@PACKAGE_NAME@"

/* Define to the full name and version of this package. */
#define PACKAGE_STRING "@PACKAGE_STRING@"

/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "@PACKAGE_TARNAME@"

/* Define to the home page for this package. */
#define PACKAGE_URL "@PACKAGE_URL@"

/* Define to the version of this package. */
#define PACKAGE_VERSION "@PACKAGE_VERSION@"

/* The size of `int', as computed by sizeof. */
#define SIZEOF_INT @SIZEOF_INT@

/* The size of `long', as computed by sizeof. */
#define SIZEOF_LONG @SIZEOF_LONG@

/* The size of `long long', as computed by sizeof. */
#define SIZEOF_LONG_LONG @SIZEOF_LONG_LONG@

/* The size of `short', as computed by sizeof. */
#define SIZEOF_SHORT @SIZEOF_SHORT@

/* The size of `wchar_t', as computed by sizeof. */
#define SIZEOF_WCHAR_T @SIZEOF_WCHAR_T@

/* The size of `__int64', as computed by sizeof. */
#define SIZEOF___INT64 @SIZEOF___INT64@

/* Version number of package */
#define VERSION "@PACKAGE_VERSION@"

/* Define if DLL symbols should be exported */
#cmakedefine XERCES_DLL_EXPORT 1

/* Define if namespaces is supported by the compiler */
#cmakedefine XERCES_HAS_CPP_NAMESPACE 1

/* Define to have SSE2 instruction support detected at runtime using __cpuid
   */
#cmakedefine XERCES_HAVE_CPUID_INTRINSIC 1

/* Define to 1 if you have emmintrin.h */
#cmakedefine XERCES_HAVE_EMMINTRIN_H 1

/* Define to have SSE2 instruction support detected at runtime using
   __get_cpuid */
#cmakedefine XERCES_HAVE_GETCPUID 1

/* Define to 1 if you have intrin.h */
#cmakedefine XERCES_HAVE_INTRIN_H 1

/* Define to 1 if we have inttypes.h */
#cmakedefine XERCES_HAVE_INTTYPES_H 1

/* Define to have SSE2 instruction used at runtime */
#cmakedefine XERCES_HAVE_SSE2_INTRINSIC 1

/* Define to 1 if we have sys/types.h */
#cmakedefine XERCES_HAVE_SYS_TYPES_H 1

/* Define to have Xerces_autoconf_config.hpp include wchar.h */
#cmakedefine XERCES_INCLUDE_WCHAR_H 1

/* Define if there is support for L"widestring" */
#cmakedefine XERCES_LSTRSUPPORT 1

/* Define if the isstream library can be included as <iostream> */
#cmakedefine XERCES_NEW_IOSTREAMS 1

/* Define to have XMemory.hpp avoid declaring a matching operator delete for
   the placement operator new */
#cmakedefine XERCES_NO_MATCHING_DELETE_OPERATOR 1

/* Define if there is no native bool support in this environment */
#cmakedefine XERCES_NO_NATIVE_BOOL 1

/* Define to use backslash as an extra path delimiter character */
#cmakedefine XERCES_PATH_DELIMITER_BACKSLASH 1

/* Define as the platform's export attribute */
#define XERCES_PLATFORM_EXPORT @XERCES_PLATFORM_EXPORT@

/* Define as the platform's import attribute */
#define XERCES_PLATFORM_IMPORT @XERCES_PLATFORM_IMPORT@

/* An appropriate signed 16 bit integer type */
#define XERCES_S16BIT_INT @XERCES_S16BIT_INT@

/* An appropriate signed 32 bit integer type */
#define XERCES_S32BIT_INT @XERCES_S32BIT_INT@

/* An appropriate signed 64 bit integer type */
#define XERCES_S64BIT_INT @XERCES_S64BIT_INT@

/* Define as the appropriate SIZE_MAX macro */
#define XERCES_SIZE_MAX @XERCES_SIZE_MAX@

/* Define as the appropriate size_t type */
#define XERCES_SIZE_T @XERCES_SIZE_T@

/* Define as the appropriate SSIZE_MAX macro */
#define XERCES_SSIZE_MAX @XERCES_SSIZE_MAX@

/* Define as the appropriate ssize_t type */
#define XERCES_SSIZE_T @XERCES_SSIZE_T@

/* Define if building a static library */
#cmakedefine XERCES_STATIC_LIBRARY 1

/* Define if the std namespace is supported */
#cmakedefine XERCES_STD_NAMESPACE 1

/* An appropriate unsigned 16 bit integer type */
#define XERCES_U16BIT_INT @XERCES_U16BIT_INT@

/* An appropriate unsigned 32 bit integer type */
#define XERCES_U32BIT_INT @XERCES_U32BIT_INT@

/* An appropriate unsigned 64 bit integer type */
#define XERCES_U64BIT_INT @XERCES_U64BIT_INT@

/* Define to use the POSIX file mgr */
#cmakedefine XERCES_USE_FILEMGR_POSIX 1

/* Define to use the Windows file mgr */
#cmakedefine XERCES_USE_FILEMGR_WINDOWS 1

/* Define to use the iconv-based MsgLoader */
#cmakedefine XERCES_USE_MSGLOADER_ICONV 1

/* Define to use the ICU-based MsgLoader */
#cmakedefine XERCES_USE_MSGLOADER_ICU 1

/* Define to use the InMemory MsgLoader */
#cmakedefine XERCES_USE_MSGLOADER_INMEMORY 1

/* Define to use the NoThread mutex mgr */
#cmakedefine XERCES_USE_MUTEXMGR_NOTHREAD 1

/* Define to use the C++11 standard mutex mgr */
#cmakedefine XERCES_USE_MUTEXMGR_STD 1

/* Define to use the POSIX mutex mgr */
#cmakedefine XERCES_USE_MUTEXMGR_POSIX 1

/* Define to use the Windows mutex mgr */
#cmakedefine XERCES_USE_MUTEXMGR_WINDOWS 1

/* Define to use the Mac OS X CFURL NetAccessor */
#cmakedefine XERCES_USE_NETACCESSOR_CFURL 1

/* Define to use the CURL NetAccessor */
#cmakedefine XERCES_USE_NETACCESSOR_CURL 1

/* Define to use the Sockets-based NetAccessor */
#cmakedefine XERCES_USE_NETACCESSOR_SOCKET 1

/* Define to use the WinSock NetAccessor */
#cmakedefine XERCES_USE_NETACCESSOR_WINSOCK 1

/* Define to use the GNU iconv transcoder */
#cmakedefine XERCES_USE_TRANSCODER_GNUICONV 1

/* Define to use the iconv transcoder */
#cmakedefine XERCES_USE_TRANSCODER_ICONV 1

/* Define to use the ICU-based transcoder */
#cmakedefine XERCES_USE_TRANSCODER_ICU 1

/* Define to use the Mac OS UnicodeConverter-based transcoder */
#cmakedefine XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER 1

/* Define to use the Windows transcoder */
#cmakedefine XERCES_USE_TRANSCODER_WINDOWS 1

/* Define to the 16 bit type used to represent Xerces UTF-16 characters */
#define XERCES_XMLCH_T @XERCES_XMLCH_T@

/* Define to empty if `const' does not conform to ANSI C. */
#if !@HAVE_CONST@
#define const
#endif

/* Define to `__inline__' or `__inline' if that's what the C compiler
   calls it, or to nothing if 'inline' is not supported under any name.  */
#ifndef __cplusplus
#if !@HAVE_INLINE@
#if @NEED_INLINE@
#define inline @inline_keyword@
#else
#define inline
#endif
#endif
#endif

/* Define to empty if the keyword `volatile' does not work. Warning: valid
code using `volatile' can become incorrect without. Disable with care. */
#if !@HAVE_VOLATILE@
#define volatile
#endif
