/* Generated automatically from configure.in by autoheader.  DO NOT EDIT!  */

#define INCLUDEDIR "c:/djgpp/include"
#define LIBDIR "c:/djgpp/lib"

/* Define if you have dirent.h.  */
#define HAVE_DIRENT_H

/* Define if you have the strcoll function and it is properly defined.  */
#define HAVE_STRCOLL

/* Define if you have unistd.h.  */
#define HAVE_UNISTD_H

/* Define as the return type of signal handlers (int or void).  */
#define RETSIGTYPE void

/* Define if you have the ANSI C header files.  */
#ifndef STDC_HEADERS
#define STDC_HEADERS
#endif

/* Define if `sys_siglist' is declared by <signal.h>.  */
#define SYS_SIGLIST_DECLARED

/* Define if you have getdtablesize.  */
#define HAVE_GETDTABLESIZE

/* Define if you have dup2.  */
#define HAVE_DUP2

/* Define if you have sys_siglist.  */
#undef HAVE_SYS_SIGLIST

/* Define if you have _sys_siglist.  */
#undef HAVE__SYS_SIGLIST

/* Define if you have psignal.  */
#define HAVE_PSIGNAL

/* Define if you have getcwd.  */
#define HAVE_GETCWD

/* Define if you have sigsetmask.  */
#define HAVE_SIGSETMASK

/* Define if you have setlinebuf.  */
#define HAVE_SETLINEBUF

/* Define if you have the <limits.h> header file.  */
#define HAVE_LIMITS_H

/* Define if you have the <sys/param.h> header file.  */
#undef HAVE_SYS_PARAM_H

/* Define if you have the <fcntl.h> header file.  */
#define HAVE_FCNTL_H

/* Define if you have the <string.h> header file.  */
#define HAVE_STRING_H

/* Define if you have the <memory.h> header file.  */
#define HAVE_MEMORY_H

/* Define if you have the `strerror' function.  */
#define HAVE_STRERROR

#define SCCS_GET "get"
