gnu: gcc: Fix libsanitizer cross-compilation to powerpc-linux-gnu.

* gnu/packages/patches/gcc-asan-powerpc-missing-include.patch: New file.
* gnu/packages/gcc.scm (gcc-5)[source](patches): Add it.
* gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
Ludovic Courtès 2017-06-08 00:26:10 +02:00
parent c67d587f94
commit a8fc8c9ef0
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
3 changed files with 22 additions and 0 deletions

View File

@ -600,6 +600,7 @@ dist_patch_DATA = \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
%D%/packages/patches/gcc-asan-powerpc-missing-include.patch \
%D%/packages/patches/gcc-cross-environment-variables.patch \
%D%/packages/patches/gcc-libvtv-runpath.patch \
%D%/packages/patches/gcc-strmov-store-file-names.patch \

View File

@ -382,6 +382,7 @@ Go. It also includes runtime support libraries for these languages.")
"0fihlcy5hnksdxk0sn6bvgnyq8gfrgs8m794b1jxwd1dxinzg3b0"))
(patches (search-patches "gcc-arm-bug-71399.patch"
"gcc-strmov-store-file-names.patch"
"gcc-asan-powerpc-missing-include.patch"
"gcc-5.0-libvtv-runpath.patch"
"gcc-5-source-date-epoch-1.patch"
"gcc-5-source-date-epoch-2.patch"))))))

View File

@ -0,0 +1,20 @@
Add missing include that triggers a build failure on PowerPC:
../../../../gcc-5.4.0/libsanitizer/asan/asan_linux.cc: In function bool __asan::AsanInterceptsSignal(int):
../../../../gcc-5.4.0/libsanitizer/asan/asan_linux.cc:222:20: error: SIGSEGV was not declared in this scope
return signum == SIGSEGV && common_flags()->handle_segv;
^
From <https://patchwork.ozlabs.org/patch/725596/>.
diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc
index c504168..59087b9 100644
--- a/libsanitizer/asan/asan_linux.cc
+++ b/libsanitizer/asan/asan_linux.cc
@@ -29,6 +29,7 @@
#include <dlfcn.h>
#include <fcntl.h>
#include <pthread.h>
+#include <signal.h>
#include <stdio.h>
#include <unistd.h>
#include <unwind.h>