summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/compilers/sbcl/default.nix17
-rw-r--r--pkgs/development/compilers/sbcl/src-for-default.nix9
-rw-r--r--pkgs/development/compilers/sbcl/src-info-for-default.nix6
3 files changed, 23 insertions, 9 deletions
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index 6147d0c81e29d..f5e0b95188d45 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -1,17 +1,13 @@
 a :  
 let 
   fetchurl = a.fetchurl;
-
-  version = a.lib.attrByPath ["version"] "1.0.29" a; 
+  s= import ./src-for-default.nix;
   buildInputs = with a; [
     clisp makeWrapper
   ];
 in
 rec {
-  src = fetchurl {
-    url = "http://prdownloads.sourceforge.net/sbcl/sbcl-${version}-source.tar.bz2";
-    sha256 = "1bdsn4rnrz289068f1bdnxyijs4r02if4p87fv726glp5wm20q1z";
-  };
+  src = a.fetchUrlFromSrcInfo s;
 
   inherit buildInputs;
   configureFlags = [];
@@ -20,7 +16,7 @@ rec {
   phaseNames = ["setVars" "doFixNewer" "doFixTests" "setVersion" "doBuild" "doInstall" "doWrap"];
       
   goSrcDir = ''
-    cd sbcl-${version}/
+    cd sbcl-${s.version}/
   '';
 
   setVars = a.fullDepEntry (''
@@ -28,7 +24,7 @@ rec {
   '') ["minInit"];
 
   setVersion = a.fullDepEntry (''
-    echo '"${version}.nixos"' > version.lisp-expr
+    echo '"${s.version}.nixos"' > version.lisp-expr
     echo "
     (lambda (features)
       (flet ((enable (x)
@@ -71,10 +67,13 @@ rec {
     sh install.sh
   '') ["doBuild" "minInit" "addInputs"];
 
-  name = "sbcl-" + version;
+  inherit(s) name;
   meta = {
     description = "Lisp compiler";
+    homepage = "http://www.sbcl.org";
+    license = "bsd";
     maintainers = [a.lib.maintainers.raskin];
+    platforms = with a.lib.platforms; all;
   };
 }
 
diff --git a/pkgs/development/compilers/sbcl/src-for-default.nix b/pkgs/development/compilers/sbcl/src-for-default.nix
new file mode 100644
index 0000000000000..356c0e27b5e70
--- /dev/null
+++ b/pkgs/development/compilers/sbcl/src-for-default.nix
@@ -0,0 +1,9 @@
+rec {
+   version="1.0.32";
+   name="sbcl-1.0.32";
+   hash="00qwj4wfpk4d5a2mskpr3l9ahnqbvz2av878lcmrc7yj1y64vdqs";
+   url="http://prdownloads.sourceforge.net/sbcl/sbcl-1.0.32-source.tar.bz2";
+   advertisedUrl="http://prdownloads.sourceforge.net/sbcl/sbcl-1.0.32-source.tar.bz2";
+  
+  
+}
diff --git a/pkgs/development/compilers/sbcl/src-info-for-default.nix b/pkgs/development/compilers/sbcl/src-info-for-default.nix
new file mode 100644
index 0000000000000..51546654c1127
--- /dev/null
+++ b/pkgs/development/compilers/sbcl/src-info-for-default.nix
@@ -0,0 +1,6 @@
+{
+  baseName = "sbcl";
+  downloadPage = "http://www.sbcl.org/platform-table.html";
+  choiceCommand = "head -1 | sed -e 's/[?].*//'";
+  versionExtractorSedScript = "s/.*-([0-9.]+)-.*/\\1/";
+}