summary refs log tree commit diff
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2013-05-28 17:37:47 -0400
committerShea Levy <shea@shealevy.com>2013-05-28 18:38:22 -0400
commit2794d74506d1a4122e30bd4d8cd52d07280d155c (patch)
treed5123d0a2419fca9cb0564916806ad72e6589fe7
parentc982e84df49494aaf9d8306929ebba60a125aef8 (diff)
downloadnixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.tar
nixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.tar.gz
nixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.tar.bz2
nixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.tar.lz
nixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.tar.xz
nixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.tar.zst
nixlib-2794d74506d1a4122e30bd4d8cd52d07280d155c.zip
Fix http_parser build on darwin
Signed-off-by: Shea Levy <shea@shealevy.com>
-rw-r--r--pkgs/development/libraries/http_parser/default.nix15
1 files changed, 10 insertions, 5 deletions
diff --git a/pkgs/development/libraries/http_parser/default.nix b/pkgs/development/libraries/http_parser/default.nix
index 1290d5b223ac..09371e4efb87 100644
--- a/pkgs/development/libraries/http_parser/default.nix
+++ b/pkgs/development/libraries/http_parser/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, gyp, utillinux }:
+{ stdenv, fetchurl, gyp, utillinux, python }:
 
 let
   version = "2.1";
@@ -16,9 +16,9 @@ in stdenv.mkDerivation {
 
   buildFlags = [ "BUILDTYPE=Release" ];
 
-  buildInputs = [ gyp ] ++ stdenv.lib.optional stdenv.isLinux utillinux;
+  buildInputs = [ gyp ] ++ (stdenv.lib.optional stdenv.isLinux utillinux) ++ stdenv.lib.optional stdenv.isDarwin python;
 
-  doCheck = true;
+  doCheck = !stdenv.isDarwin;
 
   checkPhase = ''
     out/Release/test-nonstrict
@@ -26,13 +26,18 @@ in stdenv.mkDerivation {
   '';
 
   installPhase = ''
-    mkdir -p $out
-    mv out/Release/lib.target $out/lib
+    mkdir -p $out/lib
+    mv out/Release/${if stdenv.isDarwin then "*.dylib" else "lib.target/*"} $out/lib
 
     mkdir -p $out/include
     mv http_parser.h $out/include
   '';
 
+  postFixup = if stdenv.isDarwin then ''
+    install_name_tool -id $out/lib/libhttp_parser.dylib $out/lib/libhttp_parser.dylib
+    install_name_tool -id $out/lib/libhttp_parser_strict.dylib $out/lib/libhttp_parser_strict.dylib
+  '' else null;
+
   meta = {
     description = "An HTTP message parser written in C";