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

/* Define if you have the <DECkeySym.h> header file */
#undef HAVE_DECKEYSYM_H

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

/* Define to 1 if you have the <dl.h> header file. */
#undef HAVE_DL_H

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

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

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

/* Define to 1 if you have the `poll' function. */
#undef HAVE_POLL

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

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

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

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

/* Define if you have the <Sunkeysym.h> header file */
#undef HAVE_SUNKEYSYM_H

/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H

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

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

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

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

/* Define to 1 if you have the `usleep' function. */
#undef HAVE_USLEEP

/* Define to 1 if you have the `vsnprintf' function. */
#undef HAVE_VSNPRINTF

/* Define to 1 if you have the `vsscanf' function. */
#undef HAVE_VSSCANF

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_BEGIN

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_DELETE

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_DOWN

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_END

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_HOME

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_INSERT

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_LEFT

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_NEXT

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_PRIOR

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_RIGHT

/* Define if you have this defined in <keysym.h> */
#undef HAVE_XK_KP_UP

/* Define if you have the <xpm.h> header file */
#undef HAVE_XPM_H

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

/* Define to the full name of this package. */
#undef PACKAGE_NAME

/* Define to the full name and version of this package. */
#undef PACKAGE_STRING

/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME

/* Define to the version of this package. */
#undef PACKAGE_VERSION

/* Define as the system defined limit for number of signals */
#undef PDC_MAX_SIGNALS

/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE

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

/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME

/* Define if you want to use neXtaw library */
#undef USE_NEXTAW

/* Define if you want to use Xaw3d library */
#undef USE_XAW3D

/* Define XPointer is typedefed in X11/Xlib.h */
#undef XPOINTER_TYPEDEFED
