summary refs log tree commit diff
diff options
context:
space:
mode:
authorBenjamin Hipple <bhipple@protonmail.com>2018-10-02 22:53:48 -0400
committerBenjamin Hipple <bhipple@protonmail.com>2018-10-02 22:53:48 -0400
commitba02a2c3715e03329c143723c8c2c6b43fafd3a6 (patch)
treef4ed67ad5540e026943b6855d2730bad97fb72b5
parentd7c1d04af4085e0ae6fecbffdb0a19299de598e8 (diff)
downloadnixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.tar
nixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.tar.gz
nixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.tar.bz2
nixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.tar.lz
nixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.tar.xz
nixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.tar.zst
nixlib-ba02a2c3715e03329c143723c8c2c6b43fafd3a6.zip
Add Darwin as a supported platform
-rw-r--r--pkgs/development/libraries/science/math/mkl/default.nix50
1 files changed, 33 insertions, 17 deletions
diff --git a/pkgs/development/libraries/science/math/mkl/default.nix b/pkgs/development/libraries/science/math/mkl/default.nix
index 7412ecdba21d..930dcd87a635 100644
--- a/pkgs/development/libraries/science/math/mkl/default.nix
+++ b/pkgs/development/libraries/science/math/mkl/default.nix
@@ -1,4 +1,4 @@
-{ stdenvNoCC, writeText, fetchurl, rpm, cpio, openmp }:
+{ stdenvNoCC, writeText, fetchurl, rpmextract, openmp, undmg }:
 
 stdenvNoCC.mkDerivation rec {
   name = "mkl-${version}";
@@ -6,24 +6,40 @@ stdenvNoCC.mkDerivation rec {
   date = "2019.0";
   rel = "117";
 
-  src = fetchurl {
-    url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/13575/l_mkl_${version}.tgz";
-    sha256 = "1bf7i54iqlf7x7fn8kqwmi06g30sxr6nq3ac0r871i6g0p3y47sf";
-  };
+  src = if stdenvNoCC.isDarwin
+    then
+      (fetchurl {
+        url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/13565/m_mkl_${version}.dmg";
+        sha256 = "1f1jppac7vqwn00hkws0p4njx38ajh0n25bsjyb5d7jcacwfvm02";
+      })
+    else
+      (fetchurl {
+        url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/13575/l_mkl_${version}.tgz";
+        sha256 = "1bf7i54iqlf7x7fn8kqwmi06g30sxr6nq3ac0r871i6g0p3y47sf";
+      });
 
-  buildInputs = [ rpm cpio ];
+  buildInputs = if stdenvNoCC.isDarwin then [ undmg ] else [ rpmextract ];
   propagatedBuildInputs = [ openmp ];
 
-  buildPhase = ''
-    rpm2cpio rpm/intel-mkl-common-c-${date}-${rel}-${date}-${rel}.noarch.rpm | cpio -idmv
-    rpm2cpio rpm/intel-mkl-core-rt-${date}-${rel}-${date}-${rel}.x86_64.rpm | cpio -idmv
-  '';
+  buildPhase = if stdenvNoCC.isDarwin then ''
+      for f in Contents/Resources/pkg/*.tgz; do
+          tar xzvf $f
+      done
+  '' else ''
+    rpmextract rpm/intel-mkl-common-c-${date}-${rel}-${date}-${rel}.noarch.rpm
+    rpmextract rpm/intel-mkl-core-rt-${date}-${rel}-${date}-${rel}.x86_64.rpm
+  '' ;
 
-  installPhase = ''
-    mkdir -p $out/lib
-    cp -r opt/intel/compilers_and_libraries_${version}/linux/mkl/include $out/
-    cp -r opt/intel/compilers_and_libraries_${version}/linux/mkl/lib/intel64_lin/* $out/lib/
-    cp license.txt $out/lib/
+  installPhase = if stdenvNoCC.isDarwin then ''
+      mkdir -p $out/lib
+      cp -r compilers_and_libraries_${version}/mac/mkl/include $out/
+      cp -r compilers_and_libraries_${version}/mac/mkl/lib/* $out/lib/
+      cp -r compilers_and_libraries_${version}/licensing/mkl/en/license.txt $out/lib/
+  '' else ''
+      mkdir -p $out/lib
+      cp -r opt/intel/compilers_and_libraries_${version}/linux/mkl/include $out/
+      cp -r opt/intel/compilers_and_libraries_${version}/linux/mkl/lib/intel64_lin/* $out/lib/
+      cp license.txt $out/lib/
   '';
 
   # Per license agreement, do not modify the binary
@@ -48,8 +64,8 @@ stdenvNoCC.mkDerivation rec {
       threading models.
     '';
     homepage = https://software.intel.com/en-us/mkl;
-    license = licenses.issl;
-    platforms = [ "x86_64-linux" ];
+    license = [ licenses.issl licenses.unfreeRedistributable ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = [ maintainers.bhipple ];
   };
 }