From: Alan Third Date: Thu, 3 Sep 2020 20:56:03 +0000 (+0100) Subject: * configure.ac (GNU_OBJC_CFLAGS): Check ObjC defaults to C99. (bug#43167) X-Git-Tag: emacs-28.0.90~6264 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4ea928e14f486ae8b89c0cdf1d19d3dc3d6498a2;p=emacs.git * configure.ac (GNU_OBJC_CFLAGS): Check ObjC defaults to C99. (bug#43167) --- diff --git a/configure.ac b/configure.ac index dd2adb7e740..0bcff587e8a 100644 --- a/configure.ac +++ b/configure.ac @@ -1900,8 +1900,7 @@ tmp_CPPFLAGS="$CPPFLAGS" tmp_CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS -x objective-c" CFLAGS="$CFLAGS -x objective-c" -# Recent versions of GCC don't use C99 to compile Obj-C. -GNU_OBJC_CFLAGS="-std=c99" +GNU_OBJC_CFLAGS="" LIBS_GNUSTEP= if test "${with_ns}" != no; then # macfont.o requires macuvs.h which is absent after 'make extraclean', @@ -1917,7 +1916,7 @@ if test "${with_ns}" != no; then elif flags=$( (gnustep-config --objc-flags) 2>/dev/null); then NS_IMPL_GNUSTEP=yes NS_GNUSTEP_CONFIG=yes - GNU_OBJC_CFLAGS="$GNU_OBJC_CFLAGS $flags" + GNU_OBJC_CFLAGS="$flags" LIBS_GNUSTEP=$(gnustep-config --gui-libs) || exit elif test -f $GNUSTEP_CONFIG_FILE; then NS_IMPL_GNUSTEP=yes @@ -2067,6 +2066,20 @@ if test "${HAVE_NS}" = yes; then AC_DEFINE(NATIVE_OBJC_INSTANCETYPE, 1, [Define if ObjC compiler supports instancetype natively.]) fi + + AC_CACHE_CHECK( + [if the Objective C compiler defaults to C99], + [emacs_cv_objc_c99], + [AC_LANG_PUSH([Objective C]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([], [[for (int i = 0;;);]])], + emacs_cv_objc_c99=yes, + emacs_cv_objc_c99=no) + AC_LANG_POP([Objective C])]) + + if test x$emacs_cv_objc_c99 = xno ; then + GNU_OBJC_CFLAGS="$GNU_OBJC_CFLAGS -std=c99" + fi fi HAVE_W32=no