summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorAnthony Cowley <acowley@gmail.com>2016-03-13 04:13:26 -0400
committerAnthony Cowley <acowley@gmail.com>2016-03-13 04:13:26 -0400
commitf3a6f3e2f33081a2b6523435abe93433ec1af5fb (patch)
tree4d8b0f0dc3c9b8fef25b2e864e96ba4edc001fb6 /pkgs
parent2d01e94f2e772c7ed587b188cf98369526b409fa (diff)
downloadnixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.tar
nixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.tar.gz
nixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.tar.bz2
nixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.tar.lz
nixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.tar.xz
nixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.tar.zst
nixlib-f3a6f3e2f33081a2b6523435abe93433ec1af5fb.zip
suitesparse: build dylibs on darwin
Makes the shared libraries usable on darwin so that, e.g., the Julia
compiler may be built.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/libraries/science/math/suitesparse/default.nix5
1 files changed, 3 insertions, 2 deletions
diff --git a/pkgs/development/libraries/science/math/suitesparse/default.nix b/pkgs/development/libraries/science/math/suitesparse/default.nix
index 679e6f51ddc6..7dc6c32a8dbe 100644
--- a/pkgs/development/libraries/science/math/suitesparse/default.nix
+++ b/pkgs/development/libraries/science/math/suitesparse/default.nix
@@ -5,6 +5,7 @@ let
   name = "suitesparse-${version}";
 
   int_t = if openblas.blas64 then "int64_t" else "int32_t";
+  SHLIB_EXT = if stdenv.isDarwin then "dylib" else "so";
 in
 stdenv.mkDerivation {
   inherit name;
@@ -46,10 +47,10 @@ stdenv.mkDerivation {
         for i in "$out"/lib/lib*.a; do
           ar -x $i
         done
-        gcc *.o --shared -o "$out/lib/libsuitesparse.so" -lopenblas
+        ''${CC} *.o ${if stdenv.isDarwin then "-dynamiclib" else "--shared"} -o "$out/lib/libsuitesparse.${SHLIB_EXT}" -lopenblas
     )
     for i in umfpack cholmod amd camd colamd spqr; do
-      ln -s libsuitesparse.so "$out"/lib/lib$i.so;
+      ln -s libsuitesparse.${SHLIB_EXT} "$out"/lib/lib$i.${SHLIB_EXT}
     done
 
     # Install documentation