5022978474
This reverts commit ea14f5c86dd1e28e4cf367c311353efb713e1a9e. LnL on IRC says it builds without without CommandLineTools, and disabling this on darwin breaks large swaths of packages. In particular we're seeing all of rust broken. We're not sure why it was broken on hydra, but we're pretty sure disabling it straight out was the wrong fix.
48 lines
1.2 KiB
Nix
48 lines
1.2 KiB
Nix
{ stdenv, fetchurl, python2Packages, utillinux, fixDarwinDylibNames }:
|
|
|
|
let
|
|
version = "2.7.0";
|
|
in stdenv.mkDerivation {
|
|
name = "http-parser-${version}";
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/joyent/http-parser/archive/v${version}.tar.gz";
|
|
sha256 = "0rqij6v6wv1giwx4prfa082kw1nka5d9vlb06zkc8mwszq1vzidh";
|
|
};
|
|
|
|
patches = [ ./build-shared.patch ];
|
|
|
|
configurePhase = "gyp -f make --depth=`pwd` http_parser.gyp";
|
|
|
|
buildFlags = [ "BUILDTYPE=Release" ];
|
|
|
|
buildInputs =
|
|
[ python2Packages.gyp ]
|
|
++ stdenv.lib.optional stdenv.isLinux utillinux
|
|
++ stdenv.lib.optionals stdenv.isDarwin [ python2Packages.python fixDarwinDylibNames ];
|
|
|
|
doCheck = !stdenv.isDarwin;
|
|
|
|
checkPhase = ''
|
|
out/Release/test-nonstrict
|
|
out/Release/test-strict
|
|
'';
|
|
|
|
installPhase = ''
|
|
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
|
|
'';
|
|
|
|
meta = {
|
|
description = "An HTTP message parser written in C";
|
|
|
|
homepage = https://github.com/joyent/http-parser;
|
|
|
|
license = stdenv.lib.licenses.mit;
|
|
platforms = stdenv.lib.platforms.unix;
|
|
};
|
|
}
|