Annotation of embedaddon/libiconv/srcm4/gnulib-common.m4, revision 1.1.1.1

1.1       misho       1: # gnulib-common.m4 serial 11
                      2: dnl Copyright (C) 2007-2009 Free Software Foundation, Inc.
                      3: dnl This file is free software; the Free Software Foundation
                      4: dnl gives unlimited permission to copy and/or distribute it,
                      5: dnl with or without modifications, as long as this notice is preserved.
                      6: 
                      7: # gl_COMMON
                      8: # is expanded unconditionally through gnulib-tool magic.
                      9: AC_DEFUN([gl_COMMON], [
                     10:   dnl Use AC_REQUIRE here, so that the code is expanded once only.
                     11:   AC_REQUIRE([gl_00GNULIB])
                     12:   AC_REQUIRE([gl_COMMON_BODY])
                     13: ])
                     14: AC_DEFUN([gl_COMMON_BODY], [
                     15:   AH_VERBATIM([isoc99_inline],
                     16: [/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
                     17:    the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
                     18:    earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
                     19:    __APPLE__ && __MACH__ test for MacOS X.
                     20:    __APPLE_CC__ tests for the Apple compiler and its version.
                     21:    __STDC_VERSION__ tests for the C99 mode.  */
                     22: #if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
                     23: # define __GNUC_STDC_INLINE__ 1
                     24: #endif])
                     25:   AH_VERBATIM([unused_parameter],
                     26: [/* Define as a marker that can be attached to function parameter declarations
                     27:    for parameters that are not used.  This helps to reduce warnings, such as
                     28:    from GCC -Wunused-parameter.  */
                     29: #if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
                     30: # define _UNUSED_PARAMETER_ __attribute__ ((__unused__))
                     31: #else
                     32: # define _UNUSED_PARAMETER_
                     33: #endif
                     34: ])
                     35: ])
                     36: 
                     37: # gl_MODULE_INDICATOR([modulename])
                     38: # defines a C macro indicating the presence of the given module.
                     39: AC_DEFUN([gl_MODULE_INDICATOR],
                     40: [
                     41:   AC_DEFINE([GNULIB_]translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___]), [1],
                     42:     [Define to 1 when using the gnulib module ]$1[.])
                     43: ])
                     44: 
                     45: # m4_foreach_w
                     46: # is a backport of autoconf-2.59c's m4_foreach_w.
                     47: # Remove this macro when we can assume autoconf >= 2.60.
                     48: m4_ifndef([m4_foreach_w],
                     49:   [m4_define([m4_foreach_w],
                     50:     [m4_foreach([$1], m4_split(m4_normalize([$2]), [ ]), [$3])])])
                     51: 
                     52: # AC_PROG_MKDIR_P
                     53: # is a backport of autoconf-2.60's AC_PROG_MKDIR_P.
                     54: # Remove this macro when we can assume autoconf >= 2.60.
                     55: m4_ifdef([AC_PROG_MKDIR_P], [], [
                     56:   AC_DEFUN_ONCE([AC_PROG_MKDIR_P],
                     57:     [AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake
                     58:      MKDIR_P='$(mkdir_p)'
                     59:      AC_SUBST([MKDIR_P])])])
                     60: 
                     61: # AC_C_RESTRICT
                     62: # This definition overrides the AC_C_RESTRICT macro from autoconf 2.60..2.61,
                     63: # so that mixed use of GNU C and GNU C++ and mixed use of Sun C and Sun C++
                     64: # works.
                     65: # This definition can be removed once autoconf >= 2.62 can be assumed.
                     66: AC_DEFUN([AC_C_RESTRICT],
                     67: [AC_CACHE_CHECK([for C/C++ restrict keyword], [ac_cv_c_restrict],
                     68:   [ac_cv_c_restrict=no
                     69:    # The order here caters to the fact that C++ does not require restrict.
                     70:    for ac_kw in __restrict __restrict__ _Restrict restrict; do
                     71:      AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                     72:       [[typedef int * int_ptr;
                     73:        int foo (int_ptr $ac_kw ip) {
                     74:        return ip[0];
                     75:        }]],
                     76:       [[int s[1];
                     77:        int * $ac_kw t = s;
                     78:        t[0] = 0;
                     79:        return foo(t)]])],
                     80:       [ac_cv_c_restrict=$ac_kw])
                     81:      test "$ac_cv_c_restrict" != no && break
                     82:    done
                     83:   ])
                     84:  AH_VERBATIM([restrict],
                     85: [/* Define to the equivalent of the C99 'restrict' keyword, or to
                     86:    nothing if this is not supported.  Do not define if restrict is
                     87:    supported directly.  */
                     88: #undef restrict
                     89: /* Work around a bug in Sun C++: it does not support _Restrict, even
                     90:    though the corresponding Sun C compiler does, which causes
                     91:    "#define restrict _Restrict" in the previous line.  Perhaps some future
                     92:    version of Sun C++ will work with _Restrict; if so, it'll probably
                     93:    define __RESTRICT, just as Sun C does.  */
                     94: #if defined __SUNPRO_CC && !defined __RESTRICT
                     95: # define _Restrict
                     96: #endif])
                     97:  case $ac_cv_c_restrict in
                     98:    restrict) ;;
                     99:    no) AC_DEFINE([restrict], []) ;;
                    100:    *)  AC_DEFINE_UNQUOTED([restrict], [$ac_cv_c_restrict]) ;;
                    101:  esac
                    102: ])
                    103: 
                    104: # gl_BIGENDIAN
                    105: # is like AC_C_BIGENDIAN, except that it can be AC_REQUIREd.
                    106: # Note that AC_REQUIRE([AC_C_BIGENDIAN]) does not work reliably because some
                    107: # macros invoke AC_C_BIGENDIAN with arguments.
                    108: AC_DEFUN([gl_BIGENDIAN],
                    109: [
                    110:   AC_C_BIGENDIAN
                    111: ])
                    112: 
                    113: # gl_CACHE_VAL_SILENT(cache-id, command-to-set-it)
                    114: # is like AC_CACHE_VAL(cache-id, command-to-set-it), except that it does not
                    115: # output a spurious "(cached)" mark in the midst of other configure output.
                    116: # This macro should be used instead of AC_CACHE_VAL when it is not surrounded
                    117: # by an AC_MSG_CHECKING/AC_MSG_RESULT pair.
                    118: AC_DEFUN([gl_CACHE_VAL_SILENT],
                    119: [
                    120:   saved_as_echo_n="$as_echo_n"
                    121:   as_echo_n=':'
                    122:   AC_CACHE_VAL([$1], [$2])
                    123:   as_echo_n="$saved_as_echo_n"
                    124: ])

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>