/* config.h.  Generated from configure.ac by autoheader.  */

/* Define if __attribute__((__alias__())) is supported */
#define HAVE_ALIAS_ATTRIBUTE 1

/* Define to 1 if you have the <alloca.h> header file. */
#define HAVE_ALLOCA_H 1

/* Define to 1 if you have the `bsearch' function. */
#define HAVE_BSEARCH 1

/* Define to 1 if you have the declaration of `isblank', and to 0 if you
   don't. */
#define HAVE_DECL_ISBLANK 1

/* Define to 1 if you have the `faccessat' function. */
#define HAVE_FACCESSAT 1

/* Define to 1 if you have the `fnmatch' function. */
#define HAVE_FNMATCH 1

/* Define to 1 if you have the `getpwnam' function. */
/* #undef HAVE_GETPWNAM */

/* Define to 1 if you have the `getrlimit' function. */
/* #undef HAVE_GETRLIMIT */

/* Define to 1 if you have the `glob' function. */
/* #undef HAVE_GLOB */

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

/* Define to 1 if you have the `isalpha' function. */
#define HAVE_ISALPHA 1

/* Define to 1 if you have the `killpg' function. */
#define HAVE_KILLPG 1

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

/* Define to 1 if you have the `mempcpy' function. */
#define HAVE_MEMPCPY 1

/* Define to 1 if you have the <paths.h> header file. */
#define HAVE_PATHS_H 1

/* Define to 1 if you have the `sigsetmask' function. */
/* #undef HAVE_SIGSETMASK */

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

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

/* Define to 1 if you have the `stpcpy' function. */
#define HAVE_STPCPY 1

/* Define to 1 if you have the `strchrnul' function. */
#define HAVE_STRCHRNUL 1

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

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

/* Define to 1 if you have the `strsignal' function. */
#define HAVE_STRSIGNAL 1

/* Define to 1 if you have the `strtod' function. */
#define HAVE_STRTOD 1

/* Define to 1 if you have the `strtoimax' function. */
#define HAVE_STRTOIMAX 1

/* Define to 1 if you have the `strtoumax' function. */
#define HAVE_STRTOUMAX 1

/* Define to 1 if you have the `sysconf' function. */
#define HAVE_SYSCONF 1

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

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

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

/* Define to printf format string for intmax_t */
/* #undef PRIdMAX */

/* The size of `intmax_t', as computed by sizeof. */
#define SIZEOF_INTMAX_T 1

/* The size of `long long int', as computed by sizeof. */
#define SIZEOF_LONG_LONG_INT 1

/* Define if you build with -DSMALL */
/* #undef SMALL */

/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1

/* Define if you build with -DWITH_LINENO */
/* #undef WITH_LINENO */

/* Define to 1 if on MINIX. */
/* #undef _MINIX */

/* Define to system shell path */
/* #undef _PATH_BSHELL */

/* Define to devnull device node path */
/* #undef _PATH_DEVNULL */

/* Define to tty device node path */
/* #undef _PATH_TTY */

/* 64-bit operations are the same as 32-bit */
/* #undef fstat64 */

/* 64-bit operations are the same as 32-bit */
/* #undef lstat64 */

/* 64-bit operations are the same as 32-bit */
/* #undef open64 */

/* klibc has bsd_signal instead of signal */
/* #undef signal */

/* 64-bit operations are the same as 32-bit */
/* #undef stat64 */
