(autoconf.info)C Compiler Characteristics


Next: Fortran 77 Compiler Characteristics Prev: Typedefs Up: Existing Tests
Enter node , (file) or (file)node

4.7 C Compiler Characteristics
==============================

The following macros check for C compiler or machine architecture
features.  To check for characteristics not listed here, use
'AC_TRY_COMPILE' (Note: Examining Syntax) or 'AC_TRY_RUN' (Note: Run
Time)

 -- Macro: AC_C_BIGENDIAN
     If words are stored with the most significant byte first (like
     Motorola and SPARC, but not Intel and VAX, CPUs), define
     'WORDS_BIGENDIAN'.

 -- Macro: AC_C_CONST
     If the C compiler does not fully support the keyword 'const',
     define 'const' to be empty.  Some C compilers that do not define
     '__STDC__' do support 'const'; some compilers that define
     '__STDC__' do not completely support 'const'.  Programs can simply
     use 'const' as if every C compiler supported it; for those that
     don't, the 'Makefile' or configuration header file will define it
     as empty.

 -- Macro: AC_C_INLINE
     If the C compiler supports the keyword 'inline', do nothing.
     Otherwise define 'inline' to '__inline__' or '__inline' if it
     accepts one of those, otherwise define 'inline' to be empty.

 -- Macro: AC_C_CHAR_UNSIGNED
     If the C type 'char' is unsigned, define '__CHAR_UNSIGNED__',
     unless the C compiler predefines it.

 -- Macro: AC_C_LONG_DOUBLE
     If the C compiler supports the 'long double' type, define
     'HAVE_LONG_DOUBLE'.  Some C compilers that do not define '__STDC__'
     do support the 'long double' type; some compilers that define
     '__STDC__' do not support 'long double'.

 -- Macro: AC_C_STRINGIZE
     If the C preprocessor supports the stringizing operator, define
     'HAVE_STRINGIZE'.  The stringizing operator is '#' and is found in
     macros such as this:

          #define x(y) #y

 -- Macro: AC_CHECK_SIZEOF (TYPE [, CROSS-SIZE])
     Define 'SIZEOF_UCTYPE' to be the size in bytes of the C (or C++)
     builtin type TYPE, e.g.  'int' or 'char *'.  If 'type' is unknown
     to the compiler, it gets a size of 0.  UCTYPE is TYPE, with
     lowercase converted to uppercase, spaces changed to underscores,
     and asterisks changed to 'P'.  If cross-compiling, the value
     CROSS-SIZE is used if given, otherwise 'configure' exits with an
     error message.

     For example, the call
          AC_CHECK_SIZEOF(int *)
     defines 'SIZEOF_INT_P' to be 8 on DEC Alpha AXP systems.

 -- Macro: AC_INT_16_BITS
     If the C type 'int' is 16 bits wide, define 'INT_16_BITS'.  This
     macro is obsolete; it is more general to use 'AC_CHECK_SIZEOF(int)'
     instead.

 -- Macro: AC_LONG_64_BITS
     If the C type 'long int' is 64 bits wide, define 'LONG_64_BITS'.
     This macro is obsolete; it is more general to use
     'AC_CHECK_SIZEOF(long)' instead.


automatically generated by info2www version 1.2.2.9