Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Main change: glibc: 2.25-x -> 2.26-y, containing security fixes, and various features and deprecations. Unfortunately, some of the latter still cause (transitively) a couple hundred newly failing jobs. I'm not delaying anymore, so that we have the security fix on master. I mainly patched gcc, llvm and icu, but I can't fix everything...
- Loading branch information
Showing
61 changed files
with
1,082 additions
and
364 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,10 @@ | ||
# Autogenerated by maintainers/scripts/gnome.sh update | ||
|
||
fetchurl: { | ||
name = "gitg-3.24.0"; | ||
name = "gitg-3.26.0"; | ||
|
||
src = fetchurl { | ||
url = mirror://gnome/sources/gitg/3.24/gitg-3.24.0.tar.xz; | ||
sha256 = "3e4ec4a8ae83bc7ced8c7610927ade70e37daa5e8beeb4f357a6ea30b4cc951e"; | ||
url = mirror://gnome/sources/gitg/3.26/gitg-3.26.0.tar.xz; | ||
sha256 = "26730d437d6a30d6e341b9e8da99d2134dce4b96022c195609f45062f82b54d5"; | ||
}; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,10 @@ | ||
# Autogenerated by maintainers/scripts/gnome.sh update | ||
|
||
fetchurl: rec { | ||
major = "0.25"; | ||
minor = "0"; | ||
name = "libgit2-glib-${major}.${minor}"; | ||
fetchurl: { | ||
name = "libgit2-glib-0.26.0"; | ||
|
||
src = fetchurl { | ||
url = "mirror://gnome/sources/libgit2-glib/${major}/${name}.tar.xz"; | ||
sha256 = "0rf5gcr3khp35wj9ax9cbyq5j3iiwa1l0fi16w6sfgmrryd6n9aa"; | ||
url = mirror://gnome/sources/libgit2-glib/0.26/libgit2-glib-0.26.0.tar.xz; | ||
sha256 = "06b16cfcc3a53d9804858618d690e5509e9af2e2245b75f0479cadbbe39745c3"; | ||
}; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
13 changes: 13 additions & 0 deletions
13
pkgs/development/compilers/gcc/res_state-not-declared.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc | ||
index fe69430..49f5270 100644 | ||
--- a/libsanitizer/tsan/tsan_platform_linux.cc | ||
+++ b/libsanitizer/tsan/tsan_platform_linux.cc | ||
@@ -351,7 +351,7 @@ bool IsGlobalVar(uptr addr) { | ||
// closes within glibc. The code is a pure hack. | ||
int ExtractResolvFDs(void *state, int *fds, int nfd) { | ||
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]; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
error: 'SIGSEGV' was not declared in this scope | ||
diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc | ||
index 0692eb1..472f734 100644 | ||
--- a/libsanitizer/asan/asan_linux.cc | ||
+++ b/libsanitizer/asan/asan_linux.cc | ||
@@ -26,6 +26,7 @@ | ||
#include <sys/types.h> | ||
#include <fcntl.h> | ||
#include <pthread.h> | ||
+#include <signal.h> | ||
#include <stdio.h> | ||
#include <unistd.h> | ||
#include <unwind.h> |
78 changes: 78 additions & 0 deletions
78
pkgs/development/compilers/gcc/struct-sigaltstack-4.9.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
hand-resolved trivial conflicts for 4.9 from the upstream patch | ||
72edc2c02f8b4768ad660f46a1c7e2400c0a8e06 | ||
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc | ||
index 69c9c10..8e53673 100644 | ||
--- a/libsanitizer/sanitizer_common/sanitizer_linux.cc | ||
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc | ||
@@ -599,8 +599,7 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5) { | ||
return internal_syscall(__NR_prctl, option, arg2, arg3, arg4, arg5); | ||
} | ||
|
||
-uptr internal_sigaltstack(const struct sigaltstack *ss, | ||
- struct sigaltstack *oss) { | ||
+uptr internal_sigaltstack(const void *ss, void *oss) { | ||
return internal_syscall(__NR_sigaltstack, (uptr)ss, (uptr)oss); | ||
} | ||
|
||
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.h b/libsanitizer/sanitizer_common/sanitizer_linux.h | ||
index 6422df1..8e111d1 100644 | ||
--- a/libsanitizer/sanitizer_common/sanitizer_linux.h | ||
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.h | ||
@@ -18,7 +18,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_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5); | ||
-uptr internal_sigaltstack(const struct sigaltstack* ss, | ||
- struct sigaltstack* oss); | ||
+uptr internal_sigaltstack(const void* ss, void* oss); | ||
uptr internal_sigaction(int signum, const __sanitizer_kernel_sigaction_t *act, | ||
__sanitizer_kernel_sigaction_t *oldact); | ||
uptr internal_sigprocmask(int how, __sanitizer_kernel_sigset_t *set, | ||
diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | ||
index 891386dc..234e8c6 100644 | ||
--- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | ||
+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | ||
@@ -273,7 +273,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 2ed5718..6f972ab 100644 | ||
--- a/libsanitizer/tsan/tsan_platform_linux.cc | ||
+++ b/libsanitizer/tsan/tsan_platform_linux.cc | ||
@@ -287,7 +287,7 @@ void InitializePlatform() { | ||
int ExtractResolvFDs(void *state, int *fds, int nfd) { | ||
#if SANITIZER_LINUX && !SANITIZER_ANDROID | ||
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]; | ||
|
||
error: 'SIGSEGV' was not declared in this scope | ||
diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc | ||
index 0692eb1..472f734 100644 | ||
--- a/libsanitizer/asan/asan_linux.cc | ||
+++ b/libsanitizer/asan/asan_linux.cc | ||
@@ -26,6 +26,7 @@ | ||
#include <sys/types.h> | ||
#include <fcntl.h> | ||
#include <pthread.h> | ||
+#include <signal.h> | ||
#include <stdio.h> | ||
#include <unistd.h> | ||
#include <unwind.h> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
From 72edc2c02f8b4768ad660f46a1c7e2400c0a8e06 Mon Sep 17 00:00:00 2001 | ||
From: jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | ||
Date: Mon, 17 Jul 2017 19:41:08 +0000 | ||
Subject: [PATCH] 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-7-branch@250287 138bc75d-0d04-0410-961f-82ee72b054a4 | ||
--- | ||
libsanitizer/ChangeLog (REMOVED) | 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/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc | ||
index 806fcd5..5b6f186 100644 | ||
--- a/libsanitizer/sanitizer_common/sanitizer_linux.cc | ||
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc | ||
@@ -605,8 +605,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 895bfc1..a42df57 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); | ||
|
||
diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | ||
index 891386dc..234e8c6 100644 | ||
--- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | ||
+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | ||
@@ -273,7 +273,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 2ed5718..6f972ab 100644 | ||
--- a/libsanitizer/tsan/tsan_platform_linux.cc | ||
+++ b/libsanitizer/tsan/tsan_platform_linux.cc | ||
@@ -287,7 +287,7 @@ void InitializePlatform() { | ||
int ExtractResolvFDs(void *state, int *fds, int nfd) { | ||
#if SANITIZER_LINUX && !SANITIZER_ANDROID | ||
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 | ||
|
Oops, something went wrong.