You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.8 KiB
66 lines
2.8 KiB
8 years ago
|
From 183eb37e25d903ccd68cc2d8f8a37e75872c03d2 Mon Sep 17 00:00:00 2001
|
||
|
From: Nick Clifton <nickc@redhat.com>
|
||
|
Date: Tue, 6 Sep 2016 17:35:35 +0100
|
||
|
Subject: [PATCH 1/2] Do not pass host compiler sanitization flags on to linker
|
||
|
testsuite.
|
||
|
|
||
|
* Makefile.am (CFLAGS_FOR_TARGET): Define as a copy of CFLAGS but
|
||
|
without any sanitization options.
|
||
|
(CXXFLAGS_FOR_TARGET): Define as a copy of CXXFLAGS but without
|
||
|
any sanitization options.
|
||
|
(check-DEJAGNU): Pass CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET
|
||
|
as CFLAGS and CXXFLAGS respectively.
|
||
|
---
|
||
|
ld/Makefile.am | 8 ++++++--
|
||
|
ld/Makefile.in | 8 ++++++--
|
||
|
2 files changed, 12 insertions(+), 4 deletions(-)
|
||
|
|
||
|
--- a/ld/Makefile.am
|
||
|
+++ b/ld/Makefile.am
|
||
|
@@ -136,6 +136,10 @@ CXX_FOR_TARGET = ` \
|
||
|
fi; \
|
||
|
fi`
|
||
|
|
||
|
+# Strip out sanitization options as we want to test building binaries without any extra paraphernalia
|
||
|
+CFLAGS_FOR_TARGET = `echo $(CFLAGS) | sed -e 's/-fsanitize=address//g' -e 's/-fsanitize=undefined//g'`
|
||
|
+CXXFLAGS_FOR_TARGET = `echo $(CXXFLAGS) | sed -e 's/-fsanitize=address//g' -e 's/-fsanitize=undefined//g'`
|
||
|
+
|
||
|
transform = s/^ld-new$$/$(installed_linker)/;@program_transform_name@
|
||
|
bin_PROGRAMS = ld-new
|
||
|
info_TEXINFOS = ld.texinfo
|
||
|
@@ -2075,8 +2079,8 @@ check-DEJAGNU: site.exp
|
||
|
runtest=$(RUNTEST); \
|
||
|
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
|
||
|
$$runtest --tool $(DEJATOOL) --srcdir $${srcroot}/testsuite \
|
||
|
- CC="$(CC_FOR_TARGET)" CFLAGS="$(CFLAGS)" \
|
||
|
- CXX="$(CXX_FOR_TARGET)" CXXFLAGS="$(CXXFLAGS)" \
|
||
|
+ CC="$(CC_FOR_TARGET)" CFLAGS="$(CFLAGS_FOR_TARGET)" \
|
||
|
+ CXX="$(CXX_FOR_TARGET)" CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
|
||
|
CC_FOR_HOST="$(CC)" CFLAGS_FOR_HOST="$(CFLAGS)" \
|
||
|
OFILES="$(OFILES)" BFDLIB="$(TESTBFDLIB)" \
|
||
|
LIBIBERTY="$(LIBIBERTY) $(LIBINTL)" LIBS="$(LIBS)" \
|
||
|
--- a/ld/Makefile.in
|
||
|
+++ b/ld/Makefile.in
|
||
|
@@ -507,6 +507,10 @@ CXX_FOR_TARGET = ` \
|
||
|
fi; \
|
||
|
fi`
|
||
|
|
||
|
+
|
||
|
+# Strip out sanitization options as they require special host libraries.
|
||
|
+CFLAGS_FOR_TARGET = `echo $(CFLAGS) | sed -e 's/-fsanitize=address//g' -e 's/-fsanitize=undefined//g'`
|
||
|
+CXXFLAGS_FOR_TARGET = `echo $(CXXFLAGS) | sed -e 's/-fsanitize=address//g' -e 's/-fsanitize=undefined//g'`
|
||
|
info_TEXINFOS = ld.texinfo
|
||
|
ld_TEXINFOS = configdoc.texi
|
||
|
noinst_TEXINFOS = ldint.texinfo
|
||
|
@@ -3644,8 +3648,8 @@ check-DEJAGNU: site.exp
|
||
|
runtest=$(RUNTEST); \
|
||
|
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
|
||
|
$$runtest --tool $(DEJATOOL) --srcdir $${srcroot}/testsuite \
|
||
|
- CC="$(CC_FOR_TARGET)" CFLAGS="$(CFLAGS)" \
|
||
|
- CXX="$(CXX_FOR_TARGET)" CXXFLAGS="$(CXXFLAGS)" \
|
||
|
+ CC="$(CC_FOR_TARGET)" CFLAGS="$(CFLAGS_FOR_TARGET)" \
|
||
|
+ CXX="$(CXX_FOR_TARGET)" CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
|
||
|
CC_FOR_HOST="$(CC)" CFLAGS_FOR_HOST="$(CFLAGS)" \
|
||
|
OFILES="$(OFILES)" BFDLIB="$(TESTBFDLIB)" \
|
||
|
LIBIBERTY="$(LIBIBERTY) $(LIBINTL)" LIBS="$(LIBS)" \
|