From 46f900c065f65013ae58a97f3b991a7e0c5ab669 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 8 Jan 2021 02:24:51 -0500 Subject: sim: require a C11 compiler With GDB requiring a C++11 compiler now, this hopefully shouldn't be a big deal. It's been 10 years since C11 came out, so should be plenty of time to upgrade. This will allow us to start cleaning up random header logic and many of our non-standard custom types. --- sim/avr/configure | 66 ++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 53 insertions(+), 13 deletions(-) (limited to 'sim/avr/configure') diff --git a/sim/avr/configure b/sim/avr/configure index 99ef833..7cc3478 100755 --- a/sim/avr/configure +++ b/sim/avr/configure @@ -678,6 +678,7 @@ CCDEPMODE DEPDIR am__leading_dot PACKAGE +C_DIALECT RANLIB AR HDEFINES @@ -8648,6 +8649,55 @@ else fi +# Require C11 or newer. Autoconf-2.70 provides ac_cv_prog_cc_c11 when using +# AC_PROG_CC, but we're still using Autoconf-2.69, and the newest it understands +# is C99. So handle it ourselves. +: +C_DIALECT= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C11 is supported by default" >&5 +$as_echo_n "checking whether C11 is supported by default... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L +# error "C11 support not found" +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -std=c11 support" >&5 +$as_echo_n "checking for -std=c11 support... " >&6; } + ac_save_CC="$CC" + CC="$CC -std=c11" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L +# error "C11 support not found" +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CC="$ac_save_CC" + C_DIALECT="-std=c11" + +else + as_fn_error $? "C11 is required" "$LINENO" 5 +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + # Some of the common include files depend on bfd.h, and bfd.h checks # that config.h is included first by testing that the PACKAGE macro # is defined. @@ -12064,16 +12114,6 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - haiku*) version_type=linux need_lib_prefix=no @@ -12190,7 +12230,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be Linux ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux need_lib_prefix=no need_version=no @@ -12879,7 +12919,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12882 "configure" +#line 12922 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12985,7 +13025,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12988 "configure" +#line 13028 "configure" #include "confdefs.h" #if HAVE_DLFCN_H -- cgit v1.1