summary refs log tree commit diff
diff options
context:
space:
mode:
authorRobert Helgesson <robert@rycee.net>2016-07-22 23:03:48 +0200
committerRobert Helgesson <robert@rycee.net>2016-07-22 23:06:30 +0200
commit7f681d215bee91b1126d4142e580ce9a19186505 (patch)
tree27647c8f835b1b71cfbfd5d911f568a48cd36948
parent649db354bf1ae7e7a5752564b7f2e9f5caf332a1 (diff)
downloadnixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.tar
nixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.tar.gz
nixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.tar.bz2
nixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.tar.lz
nixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.tar.xz
nixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.tar.zst
nixpkgs-7f681d215bee91b1126d4142e580ce9a19186505.zip
nix-generate-from-cpan: clean up build inputs
In particular remove those build inputs that are already mentioned among
the propagated build inputs. Fixes #10373.
-rwxr-xr-xmaintainers/scripts/nix-generate-from-cpan.pl11
1 files changed, 8 insertions, 3 deletions
diff --git a/maintainers/scripts/nix-generate-from-cpan.pl b/maintainers/scripts/nix-generate-from-cpan.pl
index 942cba792ef..2dda39fd12e 100755
--- a/maintainers/scripts/nix-generate-from-cpan.pl
+++ b/maintainers/scripts/nix-generate-from-cpan.pl
@@ -395,15 +395,20 @@ my $meta = read_meta($pkg_path);
 
 DEBUG( "metadata: ", encode_json( $meta->as_struct ) ) if defined $meta;
 
+my @runtime_deps = sort( uniq( get_deps( $cb, $meta, "runtime" ) ) );
+INFO("runtime deps: @runtime_deps");
+
 my @build_deps = sort( uniq(
         get_deps( $cb, $meta, "configure" ),
         get_deps( $cb, $meta, "build" ),
         get_deps( $cb, $meta, "test" )
 ) );
-INFO("build deps: @build_deps");
 
-my @runtime_deps = sort( uniq( get_deps( $cb, $meta, "runtime" ) ) );
-INFO("runtime deps: @runtime_deps");
+# Filter out runtime dependencies since those are already handled.
+my %in_runtime_deps = map { $_ => 1 } @runtime_deps;
+@build_deps = grep { not $in_runtime_deps{$_} } @build_deps;
+
+INFO("build deps: @build_deps");
 
 my $homepage = $meta ? $meta->resources->{homepage} : undef;
 INFO("homepage: $homepage") if defined $homepage;