diff --git a/glibc-gcc-strict-overflow.patch b/glibc-gcc-strict-overflow.patch new file mode 100644 index 0000000..694df51 --- /dev/null +++ b/glibc-gcc-strict-overflow.patch @@ -0,0 +1,37 @@ +Builds with gcc 7.0 fail with: + +../test-skeleton.c: In function ‘legacy_test_function’: +cc1: error: assuming signed overflow does not occur when \ +assuming that (X - c) <= X is always true [-Werror=strict-overflow] + +Ignoring this warning until the test or compiler is adjusted. +Disabled with -Wno-strict-overflow. Attempted -Wstrict-overflow=1, +but it still results in the same warning. + +Index: glibc-2.24-661-g5653ab1/string/Makefile +=================================================================== +--- glibc-2.24-661-g5653ab1.orig/string/Makefile ++++ glibc-2.24-661-g5653ab1/string/Makefile +@@ -71,7 +71,9 @@ include ../Rules + CFLAGS-inl-tester.c = -fno-builtin + CFLAGS-noinl-tester.c = -fno-builtin + CFLAGS-tst-strlen.c = -fno-builtin +-CFLAGS-stratcliff.c = -fno-builtin ++# Added '-Wno-strict-overflow' for gcc 7.0 until the test or compiler ++# is adjusted. ++CFLAGS-stratcliff.c = -fno-builtin -Wno-strict-overflow + CFLAGS-test-ffs.c = -fno-builtin + CFLAGS-tst-inlcall.c = -fno-builtin + CFLAGS-tst-xbzero-opt.c = -O3 +Index: glibc-2.24-661-g5653ab1/wcsmbs/Makefile +=================================================================== +--- glibc-2.24-661-g5653ab1.orig/wcsmbs/Makefile ++++ glibc-2.24-661-g5653ab1/wcsmbs/Makefile +@@ -102,3 +102,7 @@ CPPFLAGS += $(libio-mtsafe) + CPPFLAGS-wcstold_l.c = -I../stdlib + + $(objpfx)tst-wcstod-nan-locale: $(libm) ++ ++# Added '-Wno-strict-overflow' for gcc 7.0 until the test or compiler ++# is adjusted. ++CFLAGS-wcsatcliff.c = -Wno-strict-overflow diff --git a/glibc.spec b/glibc.spec index 6ba6503..1052d75 100644 --- a/glibc.spec +++ b/glibc.spec @@ -1,6 +1,6 @@ %define glibcsrcdir glibc-2.24-661-g5653ab1 %define glibcversion 2.24.90 -%define glibcrelease 30%{?dist} +%define glibcrelease 31%{?dist} # Pre-release tarballs are pulled in from git using a command that is # effectively: # @@ -251,6 +251,9 @@ Patch0059: glibc-c-utf8-locale.patch # Build libcrypt twice, with and without NSS. Patch0060: glibc-rh1324623.patch +# Fix -Wstrict-overflow issues with gcc 7.0. +Patch0061: glibc-gcc-strict-overflow.patch + ############################################################################## # # Patches from upstream @@ -862,6 +865,7 @@ microbenchmark tests on the system. %patch2037 -p1 %patch2110 -p1 %patch2112 -p1 +%patch0061 -p1 ############################################################################## # %%prep - Additional prep required... @@ -2266,6 +2270,9 @@ rm -f *.filelist* %endif %changelog +* Wed Feb 08 2017 Carlos O'Donell - 2.24.90-31 +- Fix builds with GCC 7.0. + * Wed Feb 01 2017 Carlos O'Donell - 2.24.90-30 - Optimize IBM z System builds for zEC12.