Repair glibc make check with -Wformat options enabled.
authorMikhail Kashkarov <m.kashkarov@partner.samsung.com>
Fri, 13 Jul 2018 17:44:40 +0000 (20:44 +0300)
committerDongkyun Son <dongkyun.s@samsung.com>
Wed, 3 May 2023 10:47:33 +0000 (19:47 +0900)
With -Wformat options enabled there are test fails:

  cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
  cc1: all warnings being treated as errors
  ../o-iterator.mk:9: recipe for target
  '/home/abuild/rpmbuild/BUILD/glibc-2.24/cc-base/time/test_time.o' failed

As some targets disables -Wformat explicitly:

(time/Makefile):
  # Don't warn about Y2k problem in strftime format string.
  CFLAGS-test_time.c = -Wno-format

Change-Id: Ic0f8b6bb07ea7875a75b994584ac10cec6515827

packaging/glibc.spec

index fd7882a..0094a7f 100644 (file)
@@ -257,6 +257,11 @@ BuildFlags=$(echo %{optflags} | sed -e "s/-Wp,-D_FORTIFY_SOURCE=2//g" | sed -e "
 BuildFlags="$BuildFlags -O2 -g -U_FORTIFY_SOURCE"
 BuildFlags="$(echo $BuildFlags | sed -e 's#-fstack-protector##' -e 's#-ffortify=[0-9]*##')"
 BuildFlags="$(echo $BuildFlags | sed -e 's/-Wa,-mimplicit-it=thumb//g' | sed -e 's/-mthumb//g')"
+# Turn off all -Wformat enable flags as there are glibc tests that explicitly
+# append -Wno-format and with enabled Wformat options that produced warnings
+# that turns into errors. Remove -Wformat=1|2 or -Wformat-..-arg
+BuildFlags="$(echo $BuildFlags | sed -re 's/-Wformat((=[1-2])|((-\w+)+))?(\s|$)//g')"
+
 BuildCC="%__cc"
 BuildCCplus="%__cxx"
 add_ons=",libidn"