summary refs log tree commit diff
path: root/pkgs/development/libraries/iniparser
diff options
context:
space:
mode:
authorSpencer Whitt <sw@swhitt.me>2015-04-07 13:41:44 -0400
committerSpencer Whitt <sw@swhitt.me>2015-04-07 13:42:49 -0400
commit79d3e8f8c19eca0ddff2144c4a29762e6fd5018e (patch)
treea835c8dd91f532de4ac2e99122a5e684e230b305 /pkgs/development/libraries/iniparser
parent16ccc46c2916e927819444edc7ae7bdf9f5b635a (diff)
downloadnixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.tar
nixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.tar.gz
nixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.tar.bz2
nixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.tar.lz
nixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.tar.xz
nixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.tar.zst
nixpkgs-79d3e8f8c19eca0ddff2144c4a29762e6fd5018e.zip
iniparser: fix Darwin by building static lib
Diffstat (limited to 'pkgs/development/libraries/iniparser')
-rw-r--r--pkgs/development/libraries/iniparser/default.nix18
1 files changed, 14 insertions, 4 deletions
diff --git a/pkgs/development/libraries/iniparser/default.nix b/pkgs/development/libraries/iniparser/default.nix
index f71c273f6d0..8d6e0b91ca0 100644
--- a/pkgs/development/libraries/iniparser/default.nix
+++ b/pkgs/development/libraries/iniparser/default.nix
@@ -1,5 +1,9 @@
 { stdenv, fetchurl }:
 
+let
+  inherit (stdenv.lib) optional;
+  isClang = (stdenv.cc.cc.isClang or false);
+in
 stdenv.mkDerivation rec{
   name = "iniparser-3.1";
 
@@ -10,12 +14,12 @@ stdenv.mkDerivation rec{
 
   patches = ./no-usr.patch;
 
-  buildFlags = "libiniparser.so";
+  # TODO: Build dylib on Darwin
+  buildFlags = (if stdenv.isDarwin then [ "libiniparser.a" ] else [ "libiniparser.so" ])
+    ++ optional isClang "CC=clang";
 
   installPhase = ''
     mkdir -p $out/lib
-    cp libiniparser.so.0 $out/lib
-    ln -s libiniparser.so.0 $out/lib/libiniparser.so
 
     mkdir -p $out/include
     cp src/*.h $out/include
@@ -25,7 +29,13 @@ stdenv.mkDerivation rec{
       bzip2 -c -9 $i > $out/share/doc/${name}/$i.bz2;
     done;
     cp -r html $out/share/doc/${name}
-  '';
+
+  '' + (if stdenv.isDarwin then ''
+    cp libiniparser.a $out/lib
+  '' else ''
+    cp libiniparser.so.0 $out/lib
+    ln -s libiniparser.so.0 $out/lib/libiniparser.so
+  '');
 
   meta = {
     homepage = http://ndevilla.free.fr/iniparser;