summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/gcc.scm24
-rw-r--r--gnu/packages/patches/gcc-libsanitizer-fix.patch113
3 files changed, 4 insertions, 134 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 52451b8c38..ae3aee7c21 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -715,7 +715,6 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-fix.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \
- %D%/packages/patches/gcc-libsanitizer-fix.patch \
%D%/packages/patches/gcc-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-libvtv-runpath.patch \
%D%/packages/patches/gcc-strmov-store-file-names.patch \
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 8207104174..fb06b53474 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -461,34 +461,18 @@ Go. It also includes runtime support libraries for these languages.")
(define-public gcc-6
(package
(inherit gcc-5)
- (version "6.4.0")
+ (version "6.5.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz"))
(sha256
(base32
- "1m0lr7938lw5d773dkvwld90hjlcq2282517d1gwvrfzmwgg42w5"))
- (patches (search-patches "gcc-libsanitizer-fix.patch"
- "gcc-libsanitizer-ustat.patch"
- "gcc-strmov-store-file-names.patch"
+ "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby"))
+ (patches (search-patches "gcc-strmov-store-file-names.patch"
"gcc-6-source-date-epoch-1.patch"
"gcc-6-source-date-epoch-2.patch"
- "gcc-5.0-libvtv-runpath.patch"))
- (modules '((guix build utils)))
- ;; This is required for building with glibc-2.26.
- ;; This can be removed when gcc-6.5.0 is released.
- ;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81712
- (snippet
- '(begin
- (for-each
- (lambda (dir)
- (substitute* (string-append "libgcc/config/"
- dir "/linux-unwind.h")
- (("struct ucontext") "ucontext_t")))
- '("aarch64" "alpha" "bfin" "i386" "m68k" "nios2"
- "pa" "sh" "tilepro" "xtensa"))
- #t))))
+ "gcc-5.0-libvtv-runpath.patch"))))
(inputs
`(("isl" ,isl)
,@(package-inputs gcc-4.7)))
diff --git a/gnu/packages/patches/gcc-libsanitizer-fix.patch b/gnu/packages/patches/gcc-libsanitizer-fix.patch
deleted file mode 100644
index 67aa44bed4..0000000000
--- a/gnu/packages/patches/gcc-libsanitizer-fix.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=8937b94d1a643fd9760714642296d034a45254a8
-https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81066
-
-This patch can be removed when gcc-6.5.0 is released
-
-From 8937b94d1a643fd9760714642296d034a45254a8 Mon Sep 17 00:00:00 2001
-From: doko <doko@138bc75d-0d04-0410-961f-82ee72b054a4>
-Date: Thu, 7 Sep 2017 07:15:24 +0000
-Subject: [PATCH] 2017-09-07 Matthias Klose <doko@ubuntu.com>
-
- Backported from mainline
- 2017-07-14 Jakub Jelinek <jakub@redhat.com>
-
- PR sanitizer/81066
- * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969.
- * sanitizer_common/sanitizer_linux.cc: Likewise.
- * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise.
- * tsan/tsan_platform_linux.cc: Likewise.
-
-
-git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@251828 138bc75d-0d04-0410-961f-82ee72b054a4
----
- libsanitizer/ChangeLog | 11 +++++++++++
- libsanitizer/sanitizer_common/sanitizer_linux.cc | 3 +--
- libsanitizer/sanitizer_common/sanitizer_linux.h | 4 +---
- .../sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | 2 +-
- libsanitizer/tsan/tsan_platform_linux.cc | 2 +-
- 5 files changed, 15 insertions(+), 7 deletions(-)
-
-diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
-index 252cd09..d988b28 100644
---- a/libsanitizer/ChangeLog
-+++ b/libsanitizer/ChangeLog
-@@ -1,3 +1,14 @@
-+2017-09-07 Matthias Klose <doko@ubuntu.com>
-+
-+ Backported from mainline
-+ 2017-07-14 Jakub Jelinek <jakub@redhat.com>
-+
-+ PR sanitizer/81066
-+ * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969.
-+ * sanitizer_common/sanitizer_linux.cc: Likewise.
-+ * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise.
-+ * tsan/tsan_platform_linux.cc: Likewise.
-+
- 2017-07-04 Release Manager
-
- * GCC 6.4.0 released.
-diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc
-index 2cefa20..223d9c6 100644
---- a/libsanitizer/sanitizer_common/sanitizer_linux.cc
-+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc
-@@ -546,8 +546,7 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5) {
- }
- #endif
-
--uptr internal_sigaltstack(const struct sigaltstack *ss,
-- struct sigaltstack *oss) {
-+uptr internal_sigaltstack(const void *ss, void *oss) {
- return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss);
- }
-
-diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.h b/libsanitizer/sanitizer_common/sanitizer_linux.h
-index 4497702..1594058 100644
---- a/libsanitizer/sanitizer_common/sanitizer_linux.h
-+++ b/libsanitizer/sanitizer_common/sanitizer_linux.h
-@@ -19,7 +19,6 @@
- #include "sanitizer_platform_limits_posix.h"
-
- struct link_map; // Opaque type returned by dlopen().
--struct sigaltstack;
-
- namespace __sanitizer {
- // Dirent structure for getdents(). Note that this structure is different from
-@@ -28,8 +27,7 @@ struct linux_dirent;
-
- // Syscall wrappers.
- uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
--uptr internal_sigaltstack(const struct sigaltstack* ss,
-- struct sigaltstack* oss);
-+uptr internal_sigaltstack(const void* ss, void* oss);
- uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set,
- __sanitizer_sigset_t *oldset);
- void internal_sigfillset(__sanitizer_sigset_t *set);
-diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
-index c919e4f..014162af 100644
---- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
-+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
-@@ -267,7 +267,7 @@ static int TracerThread(void* argument) {
-
- // Alternate stack for signal handling.
- InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
-- struct sigaltstack handler_stack;
-+ stack_t handler_stack;
- internal_memset(&handler_stack, 0, sizeof(handler_stack));
- handler_stack.ss_sp = handler_stack_memory.data();
- handler_stack.ss_size = kHandlerStackSize;
-diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc
-index 09cec5f..908f4fe 100644
---- a/libsanitizer/tsan/tsan_platform_linux.cc
-+++ b/libsanitizer/tsan/tsan_platform_linux.cc
-@@ -291,7 +291,7 @@ bool IsGlobalVar(uptr addr) {
- int ExtractResolvFDs(void *state, int *fds, int nfd) {
- #if SANITIZER_LINUX
- int cnt = 0;
-- __res_state *statp = (__res_state*)state;
-+ struct __res_state *statp = (struct __res_state*)state;
- for (int i = 0; i < MAXNS && cnt < nfd; i++) {
- if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
- fds[cnt++] = statp->_u._ext.nssocks[i];
---
-2.9.3
-