GNU Info

Info Node: (autoconf.info)Default Includes

(autoconf.info)Default Includes


Prev: Standard Symbols Up: Common Behavior
Enter node , (file) or (file)node

Default Includes
----------------

   Several tests depend upon a set of header files.  Since these headers
are not universally available, tests actually have to provide a set of
protected includes, such as:

     #if TIME_WITH_SYS_TIME
     # include <sys/time.h>
     # include <time.h>
     #else
     # if HAVE_SYS_TIME_H
     #  include <sys/time.h>
     # else
     #  include <time.h>
     # endif
     #endif

Unless you know exactly what you are doing, you should avoid using
unconditional includes, and check the existence of the headers you
include beforehand (Note: Header Files).

   Most generic macros provide the following default set of includes:

     #include <stdio.h>
     #if HAVE_SYS_TYPES_H
     # include <sys/types.h>
     #endif
     #if HAVE_SYS_STAT_H
     # include <sys/stat.h>
     #endif
     #if STDC_HEADERS
     # include <stdlib.h>
     # include <stddef.h>
     #else
     # if HAVE_STDLIB_H
     #  include <stdlib.h>
     # endif
     #endif
     #if HAVE_STRING_H
     # if !STDC_HEADERS && HAVE_MEMORY_H
     #  include <memory.h>
     # endif
     # include <string.h>
     #endif
     #if HAVE_STRINGS_H
     # include <strings.h>
     #endif
     #if HAVE_INTTYPES_H
     # include <inttypes.h>
     #else
     # if HAVE_STDINT_H
     #  include <stdint.h>
     # endif
     #endif
     #if HAVE_UNISTD_H
     # include <unistd.h>
     #endif

   If the default includes are used, then Autoconf will automatically
check for the presence of these headers and their compatibility, i.e.,
you don't need to run `AC_HEADERS_STDC', nor check for `stdlib.h' etc.

   These headers are checked for in the same order as they are included.
For instance, on some systems `string.h' and `strings.h' both exist,
but conflict.  Then `HAVE_STRING_H' will be defined, but
`HAVE_STRINGS_H' won't.


automatically generated by info2www version 1.2.2.9