[glibc/azanella/clang] configure: Use -Wno-maybe-uninitialized iff compiler supports it

Adhemerval Zanella azanella@sourceware.org
Wed Apr 17 20:04:47 GMT 2024


https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=db3ab211d186c521bffa3c3710ee4f8144e8adbe

commit db3ab211d186c521bffa3c3710ee4f8144e8adbe
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date:   Thu Mar 10 16:40:29 2022 -0300

    configure: Use -Wno-maybe-uninitialized iff compiler supports it
    
    clang does not support the flag.

Diff:
---
 configure         | 24 ++++++++++++++++++++++++
 configure.ac      |  8 ++++++++
 timezone/Makefile |  2 +-
 3 files changed, 33 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 432e40a592..c18fb48ba5 100755
--- a/configure
+++ b/configure
@@ -7072,6 +7072,30 @@ printf "%s\n" "$libc_cv_wno_ignored_attributes" >&6; }
 config_vars="$config_vars
 config-cflags-wno-ignored-attributes = $libc_cv_wno_ignored_attributes"
 
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -Wno-maybe-uninitialized" >&5
+printf %s "checking for -Wno-maybe-uninitialized... " >&6; }
+if test ${libc_cv_wno_maybe_uninitialized+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  		if { ac_try='${CC-cc} -Werror -Wno-maybe-uninitialized -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }
+then :
+  libc_cv_wno_maybe_uninitialized=-Wno-maybe-uninitialized
+else $as_nop
+  libc_cv_wno_maybe_uninitialized=
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_wno_maybe_uninitialized" >&5
+printf "%s\n" "$libc_cv_wno_maybe_uninitialized" >&6; }
+config_vars="$config_vars
+config-cflags-wno-maybe-uninitialized = $libc_cv_wno_maybe_uninitialized"
+
 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether cc puts quotes around section names" >&5
 printf %s "checking whether cc puts quotes around section names... " >&6; }
 if test ${libc_cv_have_section_quotes+y}
diff --git a/configure.ac b/configure.ac
index bdc385d03c..55e131f9dd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1332,6 +1332,14 @@ rm -f conftest*])
 LIBC_CONFIG_VAR([config-cflags-wno-ignored-attributes],
 		[$libc_cv_wno_ignored_attributes])
 
+AC_CACHE_CHECK([for -Wno-maybe-uninitialized], libc_cv_wno_maybe_uninitialized, [dnl
+		LIBC_TRY_CC_OPTION([-Werror -Wno-maybe-uninitialized],
+				   [libc_cv_wno_maybe_uninitialized=-Wno-maybe-uninitialized],
+				   [libc_cv_wno_maybe_uninitialized=])
+])
+LIBC_CONFIG_VAR([config-cflags-wno-maybe-uninitialized],
+		[$libc_cv_wno_maybe_uninitialized])
+
 AC_CACHE_CHECK(whether cc puts quotes around section names,
 	       libc_cv_have_section_quotes,
 	       [cat > conftest.c <<EOF
diff --git a/timezone/Makefile b/timezone/Makefile
index cf4ef3bf7e..1462e45630 100644
--- a/timezone/Makefile
+++ b/timezone/Makefile
@@ -68,7 +68,7 @@ tz-cflags = -DTZDIR='"$(zonedir)"' \
 	    -DTZDEFRULES='"$(posixrules-file)"' \
 	    -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone \
 	    -DHAVE_GETTEXT -DUSE_LTZ=0 -D_ISOMAC -DTZ_DOMAIN='"libc"' \
-	    -include $(common-objpfx)config.h -Wno-maybe-uninitialized
+	    -include $(common-objpfx)config.h $(config-cflags-wno-maybe-uninitialized)
 
 # The -Wno-unused-variable flag is used to prevent GCC 6
 # from warning about time_t_min and time_t_max which are


More information about the Glibc-cvs mailing list