Resolves: #RHEL-82799 valgrind: ld.so memcmp interceptor required on x86_64 - 0015-ppc-test_dfp2-build-fix-for-GCC-15.patch - 0016-syswrap-generic-Emit-pp_ExeContext-after-the-file-de.patch - 0017-add_hardwired_spec-for-ld-linux-x86-64.so.2-memcmp.patch - 0018-gdbserver_tests-filter-out-new-Missing-rpms-message.patch
71 lines
3.4 KiB
Diff
71 lines
3.4 KiB
Diff
From 9e4b5f1cc9f09f61fd3fb0e5687d0fc5ef39f15d Mon Sep 17 00:00:00 2001
|
|
From: Mark Wielaard <mark@klomp.org>
|
|
Date: Wed, 15 Jan 2025 16:27:12 +0100
|
|
Subject: [PATCH] ppc test_dfp2 build fix for GCC 15
|
|
|
|
GCC 15 defaults to C23 which changes the meaning of unprototyped
|
|
functions, those declaring no arguments with (). Causing some errors:
|
|
|
|
test_dfp2.c:412:26: error: initialization of 'void (*)(void)' from incompatible pointer type 'void (*)(int)' [-Wincompatible-pointer-types]
|
|
412 | { &_test_dscri, "dscri", dfp_2args_x1, 20, LONG_TEST, ">>", True},
|
|
| ^
|
|
test_dfp2.c:412:26: note: (near initialization for 'dfp_two_arg_tests[0].test_func')
|
|
test_dfp2.c:110:13: note: '_test_dscri' declared here
|
|
110 | static void _test_dscri (int shift)
|
|
| ^~~~~~~~~~~
|
|
|
|
test_dfp2.c:664:17: error: assignment to 'test_func_t' {aka 'void (*)(void)'} from incompatible pointer type 'test_func_main_t' {aka 'void (*)(int)'} [-Wincompatible-pointer-types]
|
|
664 | while ((func = all_tests[i].test_category)) {
|
|
| ^
|
|
test_dfp2.c:237:16: note: 'test_func_t' declared here
|
|
237 | typedef void (*test_func_t)();
|
|
| ^~~~~~~~~~~
|
|
test_dfp2.c:238:16: note: 'test_func_main_t' declared here
|
|
238 | typedef void (*test_func_main_t)(int);
|
|
| ^~~~~~~~~~~~~~~~
|
|
test_dfp2.c:667:8: error: too many arguments to function 'func'; expected 0, have 1
|
|
667 | (*func)(has_vsx);
|
|
| ~^~~~~~ ~~~~~~~
|
|
|
|
Fix this by just explicitly compiling that code with -std=gnu99.
|
|
---
|
|
none/tests/ppc32/Makefile.am | 4 +++-
|
|
none/tests/ppc64/Makefile.am | 4 +++-
|
|
2 files changed, 6 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/none/tests/ppc32/Makefile.am b/none/tests/ppc32/Makefile.am
|
|
index 187cab74f763..7727876fdf66 100644
|
|
--- a/none/tests/ppc32/Makefile.am
|
|
+++ b/none/tests/ppc32/Makefile.am
|
|
@@ -129,8 +129,10 @@ test_isa_2_06_part3_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(VSX_
|
|
|
|
test_dfp1_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
@FLAG_M32@ $(BUILD_FLAGS_DFP)
|
|
+# Explicitly use -std=gnu99 because the meaning of void (*test_func_t)()
|
|
+# changed in c23, causing incompatible-pointer-types errors.
|
|
test_dfp2_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
- @FLAG_M32@ $(BUILD_FLAGS_DFP)
|
|
+ @FLAG_M32@ $(BUILD_FLAGS_DFP) -std=gnu99
|
|
test_dfp3_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
@FLAG_M32@ $(BUILD_FLAGS_DFP)
|
|
test_dfp4_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
diff --git a/none/tests/ppc64/Makefile.am b/none/tests/ppc64/Makefile.am
|
|
index f8eab9fc00b2..98a14b434bc4 100644
|
|
--- a/none/tests/ppc64/Makefile.am
|
|
+++ b/none/tests/ppc64/Makefile.am
|
|
@@ -190,8 +190,10 @@ test_isa_2_06_part3_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(VSX_
|
|
|
|
test_dfp1_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
@FLAG_M64@ $(BUILD_FLAGS_DFP)
|
|
+# Explicitly use -std=gnu99 because the meaning of void (*test_func_t)()
|
|
+# changed in c23, causing incompatible-pointer-types errors.
|
|
test_dfp2_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
- @FLAG_M64@ $(BUILD_FLAGS_DFP)
|
|
+ @FLAG_M64@ $(BUILD_FLAGS_DFP) -std=gnu99
|
|
test_dfp3_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
@FLAG_M64@ $(BUILD_FLAGS_DFP)
|
|
test_dfp4_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(DFP_FLAG) \
|
|
--
|
|
2.47.1
|
|
|