From 2b51328002dd38ff706cecd3855cd502d08c76a1 Mon Sep 17 00:00:00 2001 From: xbreak Date: Mon, 17 Jun 2019 16:23:52 +0200 Subject: [PATCH] waf: Added support for optional extra tools (#63042) The list of tools `withTools` are included as extra tools when building waf. Example: mywaf = callPackage ../development/tools/build-managers/waf { python = python3; withTools = [ "doxygen" ]; }; --- .../development/tools/build-managers/waf/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/build-managers/waf/default.nix b/pkgs/development/tools/build-managers/waf/default.nix index f9dc33a36e0..c3346ad7e99 100644 --- a/pkgs/development/tools/build-managers/waf/default.nix +++ b/pkgs/development/tools/build-managers/waf/default.nix @@ -1,5 +1,11 @@ -{ stdenv, fetchFromGitLab, fetchpatch, python, ensureNewerSourcesForZipFilesHook }: - +{ stdenv, fetchFromGitLab, fetchpatch, python, ensureNewerSourcesForZipFilesHook +# optional list of extra waf tools, e.g. `[ "doxygen" "pytest" ]` +, withTools ? null +}: +let + wafToolsArg = with stdenv.lib.strings; + optionalString (!isNull withTools) " --tools=\"${concatStringsSep "," withTools}\""; +in stdenv.mkDerivation rec { name = "waf-${version}"; version = "2.0.15"; @@ -24,7 +30,7 @@ stdenv.mkDerivation rec { python waf-light configure ''; buildPhase = '' - python waf-light build + python waf-light build${wafToolsArg} ''; installPhase = '' install waf $out