nghttp2: refactor (close #21029)

Turning the dependencies unrelated to the base libnghttp2 into proper
options.  vcunat modified the commit slightly.
This commit is contained in:
c0bw3b 2016-12-13 00:45:05 +01:00 committed by Vladimír Čunát
parent f70f898dae
commit 6d3183e7da
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA

View File

@ -2,9 +2,19 @@
# Optional Dependencies
, openssl ? null, libev ? null, zlib ? null
#, jansson ? null, boost ? null, libxml2 ? null, jemalloc ? null
, enableHpack ? false, jansson ? null
, enableAsioLib ? false, boost ? null
, enableGetAssets ? false, libxml2 ? null
, enableJemalloc ? false, jemalloc ? null
}:
assert enableHpack -> jansson != null;
assert enableAsioLib -> boost != null;
assert enableGetAssets -> libxml2 != null;
assert enableJemalloc -> jemalloc != null;
with { inherit (stdenv.lib) optional; };
stdenv.mkDerivation rec {
name = "nghttp2-${version}";
version = "1.17.0";
@ -18,7 +28,11 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "lib" ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ openssl libev zlib ];
buildInputs = [ openssl libev zlib ]
++ optional enableHpack jansson
++ optional enableAsioLib boost
++ optional enableGetAssets libxml2
++ optional enableJemalloc jemalloc;
enableParallelBuilding = true;