~p-ch-e/gnuhello/gnuhello

« back to all changes in this revision

Viewing changes to gnulib/m4/gnulib-common.m4

  • Committer: Reuben Thomas
  • Date: 2011-12-17 11:23:38 UTC
  • Revision ID: rrt@sc3d.org-20111217112338-kurwdy8nu69g3t6f
Update gnulib and convert .cvsignore to .bzrignore.

        * gnulib: Update.
        * .bzrignore: Add.
        * .cvsignore: Remove.
        * contrib/.cvsignore: Likewise.
        * doc/.cvsignore: Likewise.
        * man/.cvsignore: Likewise.
        * po/.cvsignore: Likewise.
        * src/.cvsignore: Likewise.
        * tests/.cvsignore: Likewise.
        * build/mkinstalldirs: Remove: no longer needed.
        * po: Update.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# gnulib-common.m4 serial 23
 
1
# gnulib-common.m4 serial 31
2
2
dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
3
3
dnl This file is free software; the Free Software Foundation
4
4
dnl gives unlimited permission to copy and/or distribute it,
12
12
  AC_REQUIRE([gl_COMMON_BODY])
13
13
])
14
14
AC_DEFUN([gl_COMMON_BODY], [
 
15
  AH_VERBATIM([_Noreturn],
 
16
[/* The _Noreturn keyword of draft C1X.  */
 
17
#ifndef _Noreturn
 
18
# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \
 
19
      || 0x5110 <= __SUNPRO_C)
 
20
#  define _Noreturn __attribute__ ((__noreturn__))
 
21
# elif defined _MSC_VER && 1200 <= _MSC_VER
 
22
#  define _Noreturn __declspec (noreturn)
 
23
# else
 
24
#  define _Noreturn
 
25
# endif
 
26
#endif
 
27
])
15
28
  AH_VERBATIM([isoc99_inline],
16
29
[/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
17
30
   the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
34
47
/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
35
48
   is a misnomer outside of parameter lists.  */
36
49
#define _UNUSED_PARAMETER_ _GL_UNUSED
 
50
 
 
51
/* The __pure__ attribute was added in gcc 2.96.  */
 
52
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
 
53
# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
 
54
#else
 
55
# define _GL_ATTRIBUTE_PURE /* empty */
 
56
#endif
 
57
 
 
58
/* The __const__ attribute was added in gcc 2.95.  */
 
59
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
 
60
# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
 
61
#else
 
62
# define _GL_ATTRIBUTE_CONST /* empty */
 
63
#endif
37
64
])
38
65
  dnl Preparation for running test programs:
39
66
  dnl Tell glibc to write diagnostics from -D_FORTIFY_SOURCE=2 to stderr, not
47
74
# expands to a C preprocessor expression that evaluates to 1 or 0, depending
48
75
# whether a gnulib module that has been requested shall be considered present
49
76
# or not.
50
 
AC_DEFUN([gl_MODULE_INDICATOR_CONDITION], [1])
 
77
m4_define([gl_MODULE_INDICATOR_CONDITION], [1])
51
78
 
52
79
# gl_MODULE_INDICATOR_SET_VARIABLE([modulename])
53
80
# sets the shell variable that indicates the presence of the given module to
54
81
# a C preprocessor expression that will evaluate to 1.
55
82
AC_DEFUN([gl_MODULE_INDICATOR_SET_VARIABLE],
56
83
[
57
 
  GNULIB_[]m4_translit([[$1]],
58
 
    [abcdefghijklmnopqrstuvwxyz./-],
59
 
    [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=gl_MODULE_INDICATOR_CONDITION
 
84
  gl_MODULE_INDICATOR_SET_VARIABLE_AUX(
 
85
    [GNULIB_[]m4_translit([[$1]],
 
86
                          [abcdefghijklmnopqrstuvwxyz./-],
 
87
                          [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])],
 
88
    [gl_MODULE_INDICATOR_CONDITION])
 
89
])
 
90
 
 
91
# gl_MODULE_INDICATOR_SET_VARIABLE_AUX([variable])
 
92
# modifies the shell variable to include the gl_MODULE_INDICATOR_CONDITION.
 
93
# The shell variable's value is a C preprocessor expression that evaluates
 
94
# to 0 or 1.
 
95
AC_DEFUN([gl_MODULE_INDICATOR_SET_VARIABLE_AUX],
 
96
[
 
97
  m4_if(m4_defn([gl_MODULE_INDICATOR_CONDITION]), [1],
 
98
    [
 
99
     dnl Simplify the expression VALUE || 1 to 1.
 
100
     $1=1
 
101
    ],
 
102
    [gl_MODULE_INDICATOR_SET_VARIABLE_AUX_OR([$1],
 
103
                                             [gl_MODULE_INDICATOR_CONDITION])])
 
104
])
 
105
 
 
106
# gl_MODULE_INDICATOR_SET_VARIABLE_AUX_OR([variable], [condition])
 
107
# modifies the shell variable to include the given condition.  The shell
 
108
# variable's value is a C preprocessor expression that evaluates to 0 or 1.
 
109
AC_DEFUN([gl_MODULE_INDICATOR_SET_VARIABLE_AUX_OR],
 
110
[
 
111
  dnl Simplify the expression 1 || CONDITION to 1.
 
112
  if test "$[]$1" != 1; then
 
113
    dnl Simplify the expression 0 || CONDITION to CONDITION.
 
114
    if test "$[]$1" = 0; then
 
115
      $1=$2
 
116
    else
 
117
      $1="($[]$1 || $2)"
 
118
    fi
 
119
  fi
60
120
])
61
121
 
62
122
# gl_MODULE_INDICATOR([modulename])
109
169
AC_DEFUN([gl_ASSERT_NO_GNULIB_POSIXCHECK],
110
170
[
111
171
  dnl Override gl_WARN_ON_USE_PREPARE.
112
 
  AC_DEFUN([gl_WARN_ON_USE_PREPARE], [])
 
172
  dnl But hide this definition from 'aclocal'.
 
173
  AC_DEFUN([gl_W][ARN_ON_USE_PREPARE], [])
113
174
])
114
175
 
115
176
# gl_ASSERT_NO_GNULIB_TESTS
150
211
[m4_define([AS_VAR_IF],
151
212
[AS_IF([test x"AS_VAR_GET([$1])" = x""$2], [$3], [$4])])])
152
213
 
 
214
# gl_PROG_CC_C99
 
215
# Modifies the value of the shell variable CC in an attempt to make $CC
 
216
# understand ISO C99 source code.
 
217
# This is like AC_PROG_CC_C99, except that
 
218
# - AC_PROG_CC_C99 did not exist in Autoconf versions < 2.60,
 
219
# - AC_PROG_CC_C99 does not mix well with AC_PROG_CC_STDC
 
220
#   <http://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00367.html>,
 
221
#   but many more packages use AC_PROG_CC_STDC than AC_PROG_CC_C99
 
222
#   <http://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00441.html>.
 
223
# Remaining problems:
 
224
# - When AC_PROG_CC_STDC is invoked twice, it adds the C99 enabling options
 
225
#   to CC twice
 
226
#   <http://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00431.html>.
 
227
# - AC_PROG_CC_STDC is likely to change when C1X is an ISO standard.
 
228
AC_DEFUN([gl_PROG_CC_C99],
 
229
[
 
230
  dnl Change that version number to the minimum Autoconf version that supports
 
231
  dnl mixing AC_PROG_CC_C99 calls with AC_PROG_CC_STDC calls.
 
232
  m4_version_prereq([9.0],
 
233
    [AC_REQUIRE([AC_PROG_CC_C99])],
 
234
    [AC_REQUIRE([AC_PROG_CC_STDC])])
 
235
])
 
236
 
 
237
# gl_PROG_AR_RANLIB
 
238
# Determines the values for AR, ARFLAGS, RANLIB that fit with the compiler.
 
239
# The user can set the variables AR, ARFLAGS, RANLIB if he wants to override
 
240
# the values.
 
241
AC_DEFUN([gl_PROG_AR_RANLIB],
 
242
[
 
243
  dnl Minix 3 comes with two toolchains: The Amsterdam Compiler Kit compiler
 
244
  dnl as "cc", and GCC as "gcc". They have different object file formats and
 
245
  dnl library formats. In particular, the GNU binutils programs ar, ranlib
 
246
  dnl produce libraries that work only with gcc, not with cc.
 
247
  AC_REQUIRE([AC_PROG_CC])
 
248
  AC_CACHE_CHECK([for Minix Amsterdam compiler], [gl_cv_c_amsterdam_compiler],
 
249
    [
 
250
      AC_EGREP_CPP([Amsterdam],
 
251
        [
 
252
#ifdef __ACK__
 
253
Amsterdam
 
254
#endif
 
255
        ],
 
256
        [gl_cv_c_amsterdam_compiler=yes],
 
257
        [gl_cv_c_amsterdam_compiler=no])
 
258
    ])
 
259
  if test -z "$AR"; then
 
260
    if test $gl_cv_c_amsterdam_compiler = yes; then
 
261
      AR='cc -c.a'
 
262
      if test -z "$ARFLAGS"; then
 
263
        ARFLAGS='-o'
 
264
      fi
 
265
    else
 
266
      dnl Use the Automake-documented default values for AR and ARFLAGS,
 
267
      dnl but prefer ${host}-ar over ar (useful for cross-compiling).
 
268
      AC_CHECK_TOOL([AR], [ar], [ar])
 
269
      if test -z "$ARFLAGS"; then
 
270
        ARFLAGS='cru'
 
271
      fi
 
272
    fi
 
273
  else
 
274
    if test -z "$ARFLAGS"; then
 
275
      ARFLAGS='cru'
 
276
    fi
 
277
  fi
 
278
  AC_SUBST([AR])
 
279
  AC_SUBST([ARFLAGS])
 
280
  if test -z "$RANLIB"; then
 
281
    if test $gl_cv_c_amsterdam_compiler = yes; then
 
282
      RANLIB=':'
 
283
    else
 
284
      dnl Use the ranlib program if it is available.
 
285
      AC_PROG_RANLIB
 
286
    fi
 
287
  fi
 
288
  AC_SUBST([RANLIB])
 
289
])
 
290
 
153
291
# AC_PROG_MKDIR_P
154
292
# is a backport of autoconf-2.60's AC_PROG_MKDIR_P, with a fix
155
293
# for interoperability with automake-1.9.6 from autoconf-2.62.