From 79d3e8f8c19eca0ddff2144c4a29762e6fd5018e Mon Sep 17 00:00:00 2001 From: Spencer Whitt Date: Tue, 7 Apr 2015 13:41:44 -0400 Subject: [PATCH] iniparser: fix Darwin by building static lib --- .../libraries/iniparser/default.nix | 18 ++++++++++++++---- 1 file 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;