glibc/glibc-fedora-strict-aliasing.patch
2012-08-30 09:47:02 -06:00

98 lines
3.6 KiB
Diff

From 96aefb90e843648812d1832789f4a88ea5350605 Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@redhat.com>
Date: Tue, 25 May 2010 15:09:20 +0200
Subject: [PATCH] Avoid strict-aliasing issues
---
elf/Makefile | 1 +
inet/Makefile | 2 ++
nis/Makefile | 2 ++
nss/Makefile | 1 +
resolv/Makefile | 1 +
sunrpc/Makefile | 4 ++++
sysdeps/powerpc/powerpc64/elf/Makefile | 2 ++
7 files changed, 13 insertions(+), 0 deletions(-)
diff -Nrup a/elf/Makefile b/elf/Makefile
--- a/elf/Makefile 2012-08-29 07:45:37.000000000 -0600
+++ b/elf/Makefile 2012-08-30 09:42:41.980592920 -0600
@@ -50,6 +50,7 @@ include ../Makeconfig
ifeq ($(unwind-find-fde),yes)
routines += unwind-dw2-fde-glibc
shared-only-routines += unwind-dw2-fde-glibc
+CFLAGS-unwind-dw2-fde-glibc.c += -fno-strict-aliasing
endif
before-compile = $(objpfx)trusted-dirs.h
diff -Nrup a/inet/Makefile b/inet/Makefile
--- a/inet/Makefile 2012-08-29 07:45:37.000000000 -0600
+++ b/inet/Makefile 2012-08-30 09:42:41.981592916 -0600
@@ -54,6 +54,8 @@ tests := htontest test_ifindex tst-ntoa
include ../Rules
+CFLAGS-tst-inet6_rth.c += -fno-strict-aliasing
+
ifeq ($(have-thread-library),yes)
CFLAGS-gethstbyad_r.c = -fexceptions
diff -Nrup a/nis/Makefile b/nis/Makefile
--- a/nis/Makefile 2012-08-29 07:45:37.000000000 -0600
+++ b/nis/Makefile 2012-08-30 09:42:41.982592912 -0600
@@ -71,6 +71,8 @@ libnss_nisplus-inhibit-o = $(filter-out
include ../Rules
+CFLAGS-nis_findserv.c += -fno-strict-aliasing
+CFLAGS-ypclnt.c += -fno-strict-aliasing
$(objpfx)libnss_compat.so: $(objpfx)libnsl.so$(libnsl.so-version)
$(objpfx)libnss_nis.so: $(objpfx)libnsl.so$(libnsl.so-version) \
diff -Nrup a/nss/Makefile b/nss/Makefile
--- a/nss/Makefile 2012-08-29 07:45:37.000000000 -0600
+++ b/nss/Makefile 2012-08-30 09:42:42.021592753 -0600
@@ -101,6 +101,7 @@ $(libnss_db-dbs:%=$(objpfx)%.c): $(objpf
echo '#include "$<"') > $@.new
mv -f $@.new $@
+CFLAGS-files-hosts.c += -fno-strict-aliasing
$(objpfx)makedb: $(makedb-modules:%=$(objpfx)%.o)
diff -Nrup a/resolv/Makefile b/resolv/Makefile
--- a/resolv/Makefile 2012-08-29 07:45:37.000000000 -0600
+++ b/resolv/Makefile 2012-08-30 09:42:42.023592745 -0600
@@ -80,6 +80,7 @@ ifeq (yes,$(have-ssp))
CFLAGS-libresolv += -fstack-protector
endif
CFLAGS-res_hconf.c = -fexceptions
+CFLAGS-res_send.c += -fno-strict-aliasing
# The BIND code elicits some harmless warnings.
+cflags += -Wno-strict-prototypes -Wno-write-strings
diff -Nrup a/sunrpc/Makefile b/sunrpc/Makefile
--- a/sunrpc/Makefile 2012-08-29 07:45:37.000000000 -0600
+++ b/sunrpc/Makefile 2012-08-30 09:42:42.024592741 -0600
@@ -150,6 +150,10 @@ sunrpc-CPPFLAGS = -D_RPC_THREAD_SAFE_
CPPFLAGS += $(sunrpc-CPPFLAGS)
BUILD_CPPFLAGS += $(sunrpc-CPPFLAGS)
+CFLAGS-clnt_tcp.c += -fno-strict-aliasing
+CFLAGS-clnt_udp.c += -fno-strict-aliasing
+CFLAGS-clnt_unix.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 -Nrup a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile
--- a/sysdeps/powerpc/powerpc64/Makefile 2012-08-30 09:42:17.872692135 -0600
+++ b/sysdeps/powerpc/powerpc64/Makefile 2012-08-30 09:42:42.024592741 -0600
@@ -37,6 +37,8 @@ CFLAGS-rtld-strnlen.os = $(no-special-re
CFLAGS-libc-start.c += -fno-asynchronous-unwind-tables
+CFLAGS-gmon-start.c += -fno-strict-aliasing
+
ifeq ($(subdir),csu)
sysdep_routines += hp-timing
elide-routines.os += hp-timing