Merge #28536: libsigsegv: add enableSigbusFix option
(It's partially changed version of the PR.)
This commit is contained in:
commit
017b33aaaa
@ -1,4 +1,6 @@
|
|||||||
{ stdenv, fetchurl }:
|
{ stdenv, fetchurl
|
||||||
|
, enableSigbusFix ? false # required by kernels < 3.18.6
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "libsigsegv-2.5";
|
name = "libsigsegv-2.5";
|
||||||
@ -8,6 +10,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "0fvcsq9msi63vrbpvks6mqkrnls5cfy6bzww063sqhk2h49vsyyg";
|
sha256 = "0fvcsq9msi63vrbpvks6mqkrnls5cfy6bzww063sqhk2h49vsyyg";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = stdenv.lib.optional enableSigbusFix ./sigbus_fix.patch;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://libsigsegv.sf.net;
|
homepage = http://libsigsegv.sf.net;
|
||||||
description = "A library for handling page faults in user mode";
|
description = "A library for handling page faults in user mode";
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{ stdenv, fetchurl
|
{ stdenv, fetchurl
|
||||||
, buildPlatform, hostPlatform
|
, buildPlatform, hostPlatform
|
||||||
|
, enableSigbusFix ? false # required by kernels < 3.18.6
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@ -10,6 +11,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "063swdvq7mbmc1clv0rnh20grwln1zfc2qnm0sa1hivcxyr2wz6x";
|
sha256 = "063swdvq7mbmc1clv0rnh20grwln1zfc2qnm0sa1hivcxyr2wz6x";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = if enableSigbusFix then [ ./sigbus_fix.patch ] else null;
|
||||||
|
|
||||||
doCheck = hostPlatform == buildPlatform;
|
doCheck = hostPlatform == buildPlatform;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
8
pkgs/development/libraries/libsigsegv/sigbus_fix.patch
Normal file
8
pkgs/development/libraries/libsigsegv/sigbus_fix.patch
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
--- a/src/signals.h 2017-08-23 14:07:05.000000000 +0100
|
||||||
|
+++ b/src/signals.h 2017-08-23 14:06:53.000000000 +0100
|
||||||
|
@@ -18,4 +18,4 @@
|
||||||
|
/* List of signals that are sent when an invalid virtual memory address
|
||||||
|
is accessed, or when the stack overflows. */
|
||||||
|
#define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
|
||||||
|
- { int var; var = SIGSEGV; { body } }
|
||||||
|
+ { int var; var = SIGSEGV; { body } var = SIGBUS; { body } }
|
Loading…
x
Reference in New Issue
Block a user