summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2012-01-06 21:31:29 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2012-01-06 21:31:29 +0000
commit11f55d273ba35301ed25228ec4388a920a35fbd2 (patch)
tree5cddbda8d51429dd5bd86946da7efd8ffcb1b8a6 /pkgs/development
parent54aa31cca3126b1a897997e5d8eb032780cbc3a8 (diff)
downloadnixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.tar
nixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.tar.gz
nixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.tar.bz2
nixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.tar.lz
nixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.tar.xz
nixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.tar.zst
nixlib-11f55d273ba35301ed25228ec4388a920a35fbd2.zip
I found that instantiating xbursttools brought to the openssl evaluation
throwing an exception about an undefined platform.openssl.system.

That was introduced by r31330, which made openssl for the build system to
evaluate the platform.openssl.system, that should only be needed for the host
system.

I also revert supplying openssl.system for xbursttools.


svn path=/nixpkgs/trunk/; revision=31379
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/libraries/openssl/default.nix27
1 files changed, 16 insertions, 11 deletions
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 4b34c3500ec8..633e43ac6a68 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -6,17 +6,8 @@ let
   opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ]
     (throw "openssl needs its platform name cross building" null)
     stdenv.cross;
-in
-
-stdenv.mkDerivation {
-  inherit name;
-
-  src = fetchurl {
-    url = "http://www.openssl.org/source/${name}.tar.gz";
-    sha256 = "1xw0ffzmr4wbnb0glywgks375dvq8x87pgxmwx6vhgvkflkxqqg3";
-  };
 
-  patches =
+  patchesCross = isCross:
     [ # Allow the location of the X509 certificate file (the CA
       # bundle) to be set through the environment variable
       # ‘OPENSSL_X509_CERT_FILE’.  This is necessary because the
@@ -27,12 +18,24 @@ stdenv.mkDerivation {
       ./cert-file.patch
     ]
 
-    ++ (stdenv.lib.optionals (stdenv ? cross && opensslCrossSystem == "hurd-x86")
+    ++ (stdenv.lib.optionals (isCross && opensslCrossSystem == "hurd-x86")
          [ ./cert-file-path-max.patch # merge with `cert-file.patch' eventually
            ./gnu.patch                # submitted upstream
          ])
 
     ++ (stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch);
+  
+in
+
+stdenv.mkDerivation {
+  inherit name;
+
+  src = fetchurl {
+    url = "http://www.openssl.org/source/${name}.tar.gz";
+    sha256 = "1xw0ffzmr4wbnb0glywgks375dvq8x87pgxmwx6vhgvkflkxqqg3";
+  };
+
+  patches = patchesCross false;
 
   buildNativeInputs = [ perl ];
 
@@ -55,6 +58,8 @@ stdenv.mkDerivation {
     ''; # */
 
   crossAttrs = {
+    patches = patchesCross true;
+
     preConfigure=''
       # It's configure does not like --build or --host
       export configureFlags="--libdir=lib --cross-compile-prefix=${stdenv.cross.config}- shared ${opensslCrossSystem}"