diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2013-02-24 18:20:57 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2013-02-24 18:20:57 +0100 |
commit | 0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8 (patch) | |
tree | f5890607a35916edaa915bc05406ee5e2158b465 /pkgs/development/compilers | |
parent | f20ff74afe62857376f1e3a081944500cca4e3ce (diff) | |
download | nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.tar nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.tar.gz nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.tar.bz2 nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.tar.lz nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.tar.xz nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.tar.zst nixlib-0e9b88cc4a00851e2ea8d59b2975c96dd7ce44b8.zip |
sbcl: fix and minor update
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r-- | pkgs/development/compilers/sbcl/default.nix | 13 | ||||
-rw-r--r-- | pkgs/development/compilers/sbcl/newglibc.patch | 43 |
2 files changed, 51 insertions, 5 deletions
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index 794a97b205fa..2535fb603ba7 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -4,11 +4,11 @@ let s= # Generated upstream information rec { baseName="sbcl"; - version="1.1.3"; + version="1.1.4"; name="${baseName}-${version}"; - hash="1qy64fy0nvjdgzlmasswgvzg1b2h2rygnnjvlf9vj7wg16i5383i"; - url="mirror://sourceforge/project/sbcl/sbcl/1.1.3/sbcl-1.1.3-source.tar.bz2"; - sha256="1qy64fy0nvjdgzlmasswgvzg1b2h2rygnnjvlf9vj7wg16i5383i"; + hash="1k7p986hsd3yygzrsc0w68maflvhbg4gcmi3rbylyn0mi8pxb2s6"; + url="mirror://sourceforge/project/sbcl/sbcl/${version}/sbcl-${version}-source.tar.bz2"; + sha256="1k7p986hsd3yygzrsc0w68maflvhbg4gcmi3rbylyn0mi8pxb2s6"; }; buildInputs = with a; [ clisp makeWrapper @@ -21,7 +21,10 @@ rec { configureFlags = []; /* doConfigure should be removed if not needed */ - phaseNames = ["setVars" "doFixNewer" "doFixTests" "setVersion" "doBuild" "doInstall" "doWrap"]; + phaseNames = ["setVars" "doFixNewer" "doFixTests" "setVersion" "doPatch" "doBuild" "doInstall" "doWrap"]; + + patches = [ ./newglibc.patch ]; # https://bugs.launchpad.net/sbcl/+bug/1095036 + patchFlags = "-p2"; setVars = a.fullDepEntry ('' export INSTALL_ROOT=$out diff --git a/pkgs/development/compilers/sbcl/newglibc.patch b/pkgs/development/compilers/sbcl/newglibc.patch new file mode 100644 index 000000000000..dbc94b06d4c9 --- /dev/null +++ b/pkgs/development/compilers/sbcl/newglibc.patch @@ -0,0 +1,43 @@ +Fixes for glibc 2.17. + +linux-os.c is just a missing header (for personality()). + +In x86-64-linux-os.c, __USE_GNU is a glibc-internal name that features.h +defines; _GNU_SOURCE is what it should actually be using to get GNU extensions. + +diff -x config.log -x config.status -ru tmp/sbcl-1.1.2/src/runtime/linux-os.c work/sbcl-1.1.2/src/runtime/linux-os.c +--- tmp/sbcl-1.1.2/src/runtime/linux-os.c 2012-12-01 11:32:38.000000000 +0000 ++++ work/sbcl-1.1.2/src/runtime/linux-os.c 2012-12-31 01:20:37.619000000 +0000 +@@ -46,6 +46,7 @@ + #include <sys/stat.h> + #include <unistd.h> + #include <linux/version.h> ++#include <sys/personality.h> + + #include "validate.h" + #include "thread.h" +diff -x config.log -x config.status -ru tmp/sbcl-1.1.2/src/runtime/x86-64-linux-os.c work/sbcl-1.1.2/src/runtime/x86-64-linux-os.c +--- tmp/sbcl-1.1.2/src/runtime/x86-64-linux-os.c 2012-12-01 11:32:38.000000000 +0000 ++++ work/sbcl-1.1.2/src/runtime/x86-64-linux-os.c 2012-12-31 01:20:25.450000000 +0000 +@@ -14,6 +14,9 @@ + * files for more information. + */ + ++/* This is to get REG_RAX etc. from sys/ucontext.h. */ ++#define _GNU_SOURCE ++ + #include <stdio.h> + #include <stddef.h> + #include <sys/param.h> +@@ -21,11 +24,7 @@ + #include <sys/types.h> + #include <unistd.h> + #include <errno.h> +- +-#define __USE_GNU + #include <sys/ucontext.h> +-#undef __USE_GNU +- + + #include "./signal.h" + #include "os.h" |