From: Bruno Haible Date: Fri, 11 Apr 2008 13:13:24 +0000 (+0200) Subject: Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5. X-Git-Tag: v0.1~7583 X-Git-Url: http://erislabs.net/gitweb/?a=commitdiff_plain;h=913936b4f544c8578e17632fc5e980e9cef599fa;p=gnulib.git Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5. --- diff --git a/ChangeLog b/ChangeLog index eaad3d8ef..c935aeac8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2008-04-11 Bruno Haible + Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5. + * gnulib-tool (func_emit_initmacro_start): Emit an invocation of + gl_COMMON. + * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros. + +2008-04-11 Bruno Haible + * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL. 2008-04-11 Simon Josefsson diff --git a/gnulib-tool b/gnulib-tool index 21a08b249..8e6fec441 100755 --- a/gnulib-tool +++ b/gnulib-tool @@ -2046,6 +2046,7 @@ func_emit_initmacro_start () # We let automake know about the files to be distributed through the # EXTRA_lib_SOURCES variable. echo " m4_pushdef([AC_LIBSOURCES], m4_defn([${macro_prefix_arg}_LIBSOURCES]))" + echo " gl_COMMON" } # func_emit_initmacro_end macro_prefix diff --git a/m4/gnulib-common.m4 b/m4/gnulib-common.m4 index 9336d7260..3edfc120f 100644 --- a/m4/gnulib-common.m4 +++ b/m4/gnulib-common.m4 @@ -1,9 +1,28 @@ -# gnulib-common.m4 serial 3 -dnl Copyright (C) 2007 Free Software Foundation, Inc. +# gnulib-common.m4 serial 4 +dnl Copyright (C) 2007-2008 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. +# gl_COMMON +# is expanded unconditionally through gnulib-tool magic. +AC_DEFUN([gl_COMMON], [ + dnl Use AC_REQUIRE here, so that the code is expanded once only. + AC_REQUIRE([gl_COMMON_BODY]) +]) +AC_DEFUN([gl_COMMON_BODY], [ + AH_VERBATIM([isoc99_inline], +[/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports + the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of + earlier versions), but does not display it by setting __GNUC_STDC_INLINE__. + __APPLE__ && __MACH__ test for MacOS X. + __APPLE_CC__ tests for the Apple compiler and its version. + __STDC_VERSION__ tests for the C99 mode. */ +#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__ +# define __GNUC_STDC_INLINE__ 1 +#endif]) +]) + # gl_MODULE_INDICATOR([modulename]) # defines a C macro indicating the presence of the given module. AC_DEFUN([gl_MODULE_INDICATOR],