mirror of
https://abf.rosa.ru/djam/glibc.git
synced 2025-02-23 15:02:47 +00:00
313 lines
14 KiB
Diff
313 lines
14 KiB
Diff
diff -up glibc-2.39/csu/Makefile.34~ glibc-2.39/csu/Makefile
|
|
--- glibc-2.39/csu/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/csu/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -121,7 +121,7 @@ endif
|
|
asm-CPPFLAGS += -I$(objpfx).
|
|
|
|
# Enable unwinding so backtrace unwinds to __libc_start_main
|
|
-CFLAGS-libc-start.c += -funwind-tables
|
|
+CFLAGS-libc-start.c += -funwind-tables -fno-strict-aliasing
|
|
|
|
include ../Rules
|
|
|
|
diff -up glibc-2.39/debug/Makefile.34~ glibc-2.39/debug/Makefile
|
|
--- glibc-2.39/debug/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/debug/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -166,6 +166,7 @@ CFLAGS-pread_chk.c += -fexceptions -fasy
|
|
CFLAGS-pread64_chk.c += -fexceptions -fasynchronous-unwind-tables
|
|
CFLAGS-recv_chk.c += -fexceptions -fasynchronous-unwind-tables
|
|
CFLAGS-recvfrom_chk.c += -fexceptions -fasynchronous-unwind-tables
|
|
+CFLAGS-longjmp_chk.c += -fno-strict-aliasing
|
|
|
|
# Need to make sure the settings here override what configure might have
|
|
# set up for us, so keep the CFLAGS/CPPFLAGS split logical as the order is:
|
|
diff -up glibc-2.39/inet/Makefile.34~ glibc-2.39/inet/Makefile
|
|
--- glibc-2.39/inet/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/inet/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -128,6 +128,20 @@ CFLAGS-ifaddrs.c += $(config-cflags-wno-
|
|
CFLAGS-tst-checks-posix.c += -std=c99
|
|
CFLAGS-tst-sockaddr.c += -fno-strict-aliasing
|
|
|
|
+CFLAGS-gethstbyad_r.c += -fno-strict-aliasing
|
|
+CFLAGS-gethstbynm.c += -fno-strict-aliasing
|
|
+CFLAGS-gethstbynm2.c += -fno-strict-aliasing
|
|
+CFLAGS-gethstbynm2_r.c += -fno-strict-aliasing
|
|
+CFLAGS-gethstbynm_r.c += -fno-strict-aliasing
|
|
+CFLAGS-getnetbyad_r.c += -fno-strict-aliasing
|
|
+CFLAGS-getnetbynm_r.c += -fno-strict-aliasing
|
|
+CFLAGS-rcmd.c += -fno-strict-aliasing
|
|
+CFLAGS-rexec.c += -fno-strict-aliasing
|
|
+CFLAGS-ifaddrs.c += -fno-strict-aliasing
|
|
+CFLAGS-check_pf.c += -fno-strict-aliasing
|
|
+CFLAGS-check_native.c += -fno-strict-aliasing
|
|
+CFLAGS-netlink_assert_response.c += -fno-strict-aliasing
|
|
+
|
|
endif
|
|
|
|
# Install the rpc database file.
|
|
diff -up glibc-2.39/libio/Makefile.34~ glibc-2.39/libio/Makefile
|
|
--- glibc-2.39/libio/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/libio/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -179,6 +179,18 @@ CFLAGS-putc_u.c += $(config-cflags-wno-i
|
|
CFLAGS-iofgets_u.c += $(config-cflags-wno-ignored-attributes)
|
|
CFLAGS-iofputs_u.c += $(config-cflags-wno-ignored-attributes)
|
|
# XXX Do we need filedoalloc and wfiledoalloc? Others?
|
|
+CFLAGS-iofopncook.c += -fno-strict-aliasing
|
|
+CFLAGS-iopopen.c += -fno-strict-aliasing
|
|
+CFLAGS-vswprintf.c += -fno-strict-aliasing
|
|
+CFLAGS-wmemstream.c += -fno-strict-aliasing
|
|
+CFLAGS-memstream.c += -fno-strict-aliasing
|
|
+CFLAGS-obprintf.c += -fno-strict-aliasing
|
|
+CFLAGS-stdfiles.c += -fno-strict-aliasing
|
|
+CFLAGS-stdio.c += -fno-strict-aliasing
|
|
+CFLAGS-oldiofopen.c += -fno-strict-aliasing
|
|
+CFLAGS-oldiofdopen.c += -fno-strict-aliasing
|
|
+CFLAGS-oldiopopen.c += -fno-strict-aliasing
|
|
+CFLAGS-oldstdfiles.c += -fno-strict-aliasing
|
|
|
|
# Prevent fortification as these are built with -O0
|
|
CFLAGS-tst-bz24051.c += $(no-fortify-source)
|
|
diff -up glibc-2.39/libio/libioP.h.34~ glibc-2.39/libio/libioP.h
|
|
--- glibc-2.39/libio/libioP.h.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/libio/libioP.h 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -937,8 +937,8 @@ extern struct _IO_FILE_plus _IO_stderr_;
|
|
static inline bool
|
|
_IO_legacy_file (FILE *fp)
|
|
{
|
|
- return fp == (FILE *) &_IO_stdin_ || fp == (FILE *) &_IO_stdout_
|
|
- || fp == (FILE *) &_IO_stderr_;
|
|
+ return (void*)fp == &_IO_stdin_ || (void*)fp == &_IO_stdout_
|
|
+ || (void*)fp == &_IO_stderr_;
|
|
}
|
|
#endif
|
|
|
|
@@ -948,8 +948,8 @@ static inline void
|
|
_IO_deallocate_file (FILE *fp)
|
|
{
|
|
/* The current stream variables. */
|
|
- if (fp == (FILE *) &_IO_2_1_stdin_ || fp == (FILE *) &_IO_2_1_stdout_
|
|
- || fp == (FILE *) &_IO_2_1_stderr_)
|
|
+ if ((void*)fp == &_IO_2_1_stdin_ || (void*)fp == &_IO_2_1_stdout_
|
|
+ || (void*)fp == &_IO_2_1_stderr_)
|
|
return;
|
|
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
|
|
if (_IO_legacy_file (fp))
|
|
diff -up glibc-2.39/locale/Makefile.34~ glibc-2.39/locale/Makefile
|
|
--- glibc-2.39/locale/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/locale/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -172,6 +172,7 @@ CPPFLAGS-locale-programs = -DLOCALE_PATH
|
|
CFLAGS-charmap.c += -Wno-write-strings -Wno-char-subscripts
|
|
CFLAGS-locfile.c += -Wno-write-strings -Wno-char-subscripts
|
|
CFLAGS-charmap-dir.c += -Wno-write-strings
|
|
+CFLAGS-C-ctype.c += -fno-strict-aliasing
|
|
|
|
# Set libof-* for each routine.
|
|
cpp-srcs-left := $(localedef-modules) $(localedef-aux) $(locale-modules) \
|
|
diff -up glibc-2.39/misc/Makefile.34~ glibc-2.39/misc/Makefile
|
|
--- glibc-2.39/misc/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/misc/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -335,6 +335,8 @@ CFLAGS-mmap.op = $(no-stack-protector)
|
|
CFLAGS-mmap64.o = $(no-stack-protector)
|
|
CFLAGS-mmap64.op = $(no-stack-protector)
|
|
|
|
+CFLAGS-tsearch.c += -fno-strict-aliasing
|
|
+
|
|
include ../Rules
|
|
|
|
$(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib)
|
|
diff -up glibc-2.39/nis/Makefile.34~ glibc-2.39/nis/Makefile
|
|
--- glibc-2.39/nis/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/nis/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -52,6 +52,7 @@ endif # have-GLIBC_2.28
|
|
|
|
include ../Rules
|
|
|
|
+CFLAGS-nis_callback.c += -fno-strict-aliasing
|
|
|
|
libnsl-libc = $(common-objpfx)linkobj/libc.so
|
|
# Target-specific variable setting to link objects using deprecated
|
|
diff -up glibc-2.39/nptl/Makefile.34~ glibc-2.39/nptl/Makefile
|
|
--- glibc-2.39/nptl/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/nptl/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -263,6 +263,22 @@ CFLAGS-sem_clockwait.c = -fexceptions -f
|
|
|
|
CFLAGS-futex-internal.c += -fexceptions -fasynchronous-unwind-tables
|
|
|
|
+CFLAGS-pthread_create.c += -fno-strict-aliasing
|
|
+CFLAGS-sem_clockwait.c += -fno-strict-aliasing
|
|
+CFLAGS-sem_wait.c += -fno-strict-aliasing
|
|
+CFLAGS-sem_waitcommon.c += -fno-strict-aliasing
|
|
+CFLAGS-sem_timedwait.c += -fno-strict-aliasing
|
|
+CFLAGS-sem_post.c += -fno-strict-aliasing
|
|
+CFLAGS-unwind.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_attr_copy.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_cond_common.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_cond_destroy.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_cond_wait.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_cond_signal.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_cond_broadcast.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_setattr_default_np.c += -fno-strict-aliasing
|
|
+CFLAGS-pthread_getattr_default_np.c += -fno-strict-aliasing
|
|
+
|
|
LDLIBS-tst-once5 = -lstdc++
|
|
CFLAGS-tst-thread_local1.o = -std=gnu++11
|
|
LDLIBS-tst-thread_local1 = -lstdc++
|
|
diff -up glibc-2.39/nscd/Makefile.34~ glibc-2.39/nscd/Makefile
|
|
--- glibc-2.39/nscd/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/nscd/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -79,6 +79,14 @@ CFLAGS-nscd_gethst_r.c += -fexceptions
|
|
CFLAGS-nscd_getai.c += -fexceptions
|
|
CFLAGS-nscd_initgroups.c += -fexceptions
|
|
|
|
+CFLAGS-nscd_helper.c += -fno-strict-aliasing
|
|
+CFLAGS-nscd.c += -fno-strict-aliasing
|
|
+CFLAGS-connections.c += -fno-strict-aliasing
|
|
+CFLAGS-gethstbyad_r.c += -fno-strict-aliasing
|
|
+CFLAGS-gethstbynm3_r.c += -fno-strict-aliasing
|
|
+CFLAGS-aicache.c += -fno-strict-aliasing
|
|
+CFLAGS-gai.c += -fno-strict-aliasing
|
|
+
|
|
ifeq (yesyes,$(have-fpie)$(build-shared))
|
|
CFLAGS-nscd += $(pie-ccflag)
|
|
endif
|
|
diff -up glibc-2.39/nss/Makefile.34~ glibc-2.39/nss/Makefile
|
|
--- glibc-2.39/nss/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/nss/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -520,6 +520,9 @@ $(objpfx)mtrace-tst-nss-gai-hv2-canonnam
|
|
$(objpfx)tst-nss-gai-hv2-canonname.mtrace; } > $@; \
|
|
$(evaluate-test)
|
|
|
|
+CFLAGS-getnssent_r.c += -fno-strict-aliasing
|
|
+CFLAGS-digits_dots.c += -fno-strict-aliasing
|
|
+
|
|
# Disable DT_RUNPATH on NSS tests so that the glibc internal NSS
|
|
# functions can load testing NSS modules via DT_RPATH.
|
|
LDFLAGS-tst-nss-test1 = -Wl,--disable-new-dtags
|
|
diff -up glibc-2.39/posix/Makefile.34~ glibc-2.39/posix/Makefile
|
|
--- glibc-2.39/posix/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/posix/Makefile 2024-01-31 23:44:39.572509209 +0100
|
|
@@ -581,6 +581,12 @@ CFLAGS-execvp.os = -fomit-frame-pointer
|
|
CFLAGS-execlp.os = -fomit-frame-pointer
|
|
CFLAGS-nanosleep.c += -fexceptions -fasynchronous-unwind-tables
|
|
CFLAGS-fork.c = $(libio-mtsafe) $(config-cflags-wno-ignored-attributes)
|
|
+CFLAGS-glob.c += -fno-strict-aliasing
|
|
+CFLAGS-glob-lstat-compat.c += -fno-strict-aliasing
|
|
+CFLAGS-glob64.c += -fno-strict-aliasing
|
|
+CFLAGS-glob64-lstat-compat.c += -fno-strict-aliasing
|
|
+CFLAGS-oldglob.c += -fno-strict-aliasing
|
|
+CFLAGS-getaddrinfo.c += -fno-strict-aliasing
|
|
|
|
tstgetopt-ARGS = -a -b -cfoobar --required foobar --optional=bazbug \
|
|
--none random --col --color --colour
|
|
diff -up glibc-2.39/resolv/Makefile.34~ glibc-2.39/resolv/Makefile
|
|
--- glibc-2.39/resolv/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/resolv/Makefile 2024-01-31 23:44:39.576509248 +0100
|
|
@@ -237,6 +237,18 @@ include ../gen-locales.mk
|
|
|
|
CFLAGS-res_hconf.c += -fexceptions
|
|
CFLAGS-inet_pton.c += $(config-cflags-wno-ignored-attributes)
|
|
+CFLAGS-gethstbyad_r.c += -fno-strict-aliasing
|
|
+CFLAGS-res-close.c += -fno-strict-aliasing
|
|
+CFLAGS-resolv_context.c += -fno-strict-aliasing
|
|
+CFLAGS-resolv_conf.c += -fno-strict-aliasing
|
|
+CFLAGS-res_mkquery.c += -fno-strict-aliasing
|
|
+CFLAGS-res_query.c += -fno-strict-aliasing
|
|
+CFLAGS-res_send.c += -fno-strict-aliasing
|
|
+CFLAGS-compat-hnamaddr.c += -fno-strict-aliasing
|
|
+CFLAGS-compat-gethnamaddr.c += -fno-strict-aliasing
|
|
+CFLAGS-dns-host.c += -fno-strict-aliasing
|
|
+CFLAGS-dns-network.c += -fno-strict-aliasing
|
|
+CFLAGS-dns-canon.c += -fno-strict-aliasing
|
|
|
|
# The DNS NSS modules needs the resolver.
|
|
$(objpfx)libnss_dns.so: $(objpfx)libresolv.so
|
|
diff -up glibc-2.39/rt/Makefile.34~ glibc-2.39/rt/Makefile
|
|
--- glibc-2.39/rt/Makefile.34~ 2024-01-31 23:44:39.540508898 +0100
|
|
+++ glibc-2.39/rt/Makefile 2024-01-31 23:44:39.576509248 +0100
|
|
@@ -100,6 +100,8 @@ CFLAGS-aio_suspend.c += -fexceptions
|
|
CFLAGS-mq_timedreceive.c += -fexceptions -fasynchronous-unwind-tables
|
|
CFLAGS-mq_timedsend.c += -fexceptions -fasynchronous-unwind-tables
|
|
|
|
+CFLAGS-timer_create.c += -fno-strict-aliasing
|
|
+
|
|
# Exclude fortified routines from being built with _FORTIFY_SOURCE
|
|
routines_no_fortify += \
|
|
mq_open \
|
|
diff -up glibc-2.39/setjmp/Makefile.34~ glibc-2.39/setjmp/Makefile
|
|
--- glibc-2.39/setjmp/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/setjmp/Makefile 2024-01-31 23:44:39.576509248 +0100
|
|
@@ -36,6 +36,10 @@ tests-internal := \
|
|
|
|
gen-as-const-headers += jmp_buf-macros.sym
|
|
|
|
+CFLAGS-sigjmp.c += -fno-strict-aliasing
|
|
+CFLAGS-longjmp.c += -fno-strict-aliasing
|
|
+CFLAGS-longjmp_chk.c += -fno-strict-aliasing
|
|
+
|
|
include ../Rules
|
|
|
|
# This test messes the stack on purpose, which triggers longjump fortify
|
|
diff -up glibc-2.39/stdio-common/Makefile.34~ glibc-2.39/stdio-common/Makefile
|
|
--- glibc-2.39/stdio-common/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/stdio-common/Makefile 2024-01-31 23:44:39.576509248 +0100
|
|
@@ -436,6 +436,10 @@ $(objpfx)tst-errno-manual.out: tst-errno
|
|
|
|
CFLAGS-vfprintf.c += -Wno-uninitialized
|
|
CFLAGS-vfwprintf.c += -Wno-uninitialized
|
|
+CFLAGS-vfscanf-internal.c += -fno-strict-aliasing
|
|
+CFLAGS-vfwscanf-internal.c += -fno-strict-aliasing
|
|
+CFLAGS-vfprintf-internal.c += -fno-strict-aliasing
|
|
+CFLAGS-vfwprintf-internal.c += -fno-strict-aliasing
|
|
|
|
CFLAGS-tmpfile.c += -fexceptions
|
|
CFLAGS-tmpfile64.c += -fexceptions
|
|
diff -up glibc-2.39/sunrpc/Makefile.34~ glibc-2.39/sunrpc/Makefile
|
|
--- glibc-2.39/sunrpc/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/sunrpc/Makefile 2024-01-31 23:44:39.576509248 +0100
|
|
@@ -97,6 +97,21 @@ CFLAGS-pmap_rmt.c += -fexceptions
|
|
CFLAGS-clnt_perr.c += -fexceptions
|
|
CFLAGS-openchild.c += -fexceptions
|
|
|
|
+CFLAGS-authuxprot.c += -fno-strict-aliasing
|
|
+CFLAGS-pmap_rmt.c += -fno-strict-aliasing
|
|
+CFLAGS-rpc_prot.c += -fno-strict-aliasing
|
|
+CFLAGS-rpc_cmsg.c += -fno-strict-aliasing
|
|
+CFLAGS-authdes_prot.c += -fno-strict-aliasing
|
|
+CFLAGS-rtime.c += -fno-strict-aliasing
|
|
+CFLAGS-svcauth_des.c += -fno-strict-aliasing
|
|
+CFLAGS-svc_unix.c += -fno-strict-aliasing
|
|
+CFLAGS-auth_des.c += -fno-strict-aliasing
|
|
+CFLAGS-clnt_udp.c += -fno-strict-aliasing
|
|
+CFLAGS-key_call.c += -fno-strict-aliasing
|
|
+CFLAGS-pm_getport.c += -fno-strict-aliasing
|
|
+CFLAGS-svc_tcp.c += -fno-strict-aliasing
|
|
+CFLAGS-svc_udp.c += -fno-strict-aliasing
|
|
+
|
|
$(objpfx)tst-getmyaddr: $(common-objpfx)linkobj/libc.so
|
|
$(objpfx)tst-xdrmem: $(common-objpfx)linkobj/libc.so
|
|
$(objpfx)tst-xdrmem2: $(common-objpfx)linkobj/libc.so
|
|
diff -up glibc-2.39/support/Makefile.34~ glibc-2.39/support/Makefile
|
|
--- glibc-2.39/support/Makefile.34~ 2024-01-31 01:34:58.000000000 +0100
|
|
+++ glibc-2.39/support/Makefile 2024-01-31 23:44:39.576509248 +0100
|
|
@@ -227,6 +227,8 @@ ifeq ($(build-shared),yes)
|
|
libsupport-inhibit-o += .o
|
|
endif
|
|
|
|
+CFLAGS-resolv_test.c = -fno-strict-aliasing
|
|
+
|
|
CFLAGS-support_paths.c = \
|
|
-DSRCDIR_PATH=\"`cd .. ; pwd`\" \
|
|
-DOBJDIR_PATH=\"`cd $(objpfx)/..; pwd`\" \
|
|
diff -up glibc-2.39/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h.34~ glibc-2.39/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h
|
|
--- glibc-2.39/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h.34~ 2024-01-31 23:44:39.576509248 +0100
|
|
+++ glibc-2.39/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h 2024-01-31 23:45:21.024911385 +0100
|
|
@@ -16,6 +16,9 @@
|
|
<https://www.gnu.org/licenses/>. */
|
|
|
|
#include <ldsodefs.h>
|
|
+
|
|
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
|
|
+
|
|
#include <cpu-features.h>
|
|
|
|
/* The code checks if _rtld_global_ro was realocated before trying to access
|