1b137f8d15
Upstream commit: 97bb89668d7171164975f3dc895e38343a2f3a95
- Force DT_RPATH for --enable-hardcoded-path-in-tests
- elf: Only process multiple tunable once (BZ 31686)
- Add a test to check for duplicate definitions in the static library
- i686: Fix multiple definitions of __memmove_chk and __memset_chk
- i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk
- time: Allow later version licensing.
- nscd: Use time_t for return type of addgetnetgrentX
- login: structs utmp, utmpx, lastlog _TIME_BITS independence (bug 30701)
- login: Check default sizes of structs utmp, utmpx, lastlog
Related: RHEL-35602
Fedora 40 commit: b3097fa24a
35 lines
1.3 KiB
Diff
35 lines
1.3 KiB
Diff
commit f8e462342189525e4605cf233b8f798d1c7f398d
|
|
Author: Gabi Falk <gabifalk@gmx.com>
|
|
Date: Tue Apr 30 20:05:04 2024 +0000
|
|
|
|
Add a test to check for duplicate definitions in the static library
|
|
|
|
This change follows two previous fixes addressing multiple definitions
|
|
of __memcpy_chk and __mempcpy_chk functions on i586, and __memmove_chk
|
|
and __memset_chk functions on i686. The test is intended to prevent
|
|
such issues from occurring in the future.
|
|
|
|
Signed-off-by: Gabi Falk <gabifalk@gmx.com>
|
|
Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
|
|
Reviewed-by: Dmitry V. Levin <ldv@altlinux.org>
|
|
(cherry picked from commit ded2e0753e9c46debeb2e0d26c5e560d2581d314)
|
|
|
|
diff --git a/Makefile b/Makefile
|
|
index f7e4eb9ff2cc464c..37bf70aa4ad4403f 100644
|
|
--- a/Makefile
|
|
+++ b/Makefile
|
|
@@ -577,6 +577,13 @@ $(objpfx)lint-makefiles.out: scripts/lint-makefiles.sh
|
|
$(SHELL) $< "$(PYTHON)" `pwd` > $@ ; \
|
|
$(evaluate-test)
|
|
|
|
+# Link libc.a as a whole to verify that it does not contain multiple
|
|
+# definitions of any symbols.
|
|
+tests-special += $(objpfx)link-static-libc.out
|
|
+$(objpfx)link-static-libc.out:
|
|
+ $(LINK.o) $(whole-archive) -r $(objpfx)libc.a -o /dev/null > $@ 2>&1; \
|
|
+ $(evaluate-test)
|
|
+
|
|
# Print test summary for tests in $1 .sum file;
|
|
# $2 is optional test identifier.
|
|
# Fail if there are unexpected failures in the test results.
|