diff --git a/dh_setup_copyright b/dh_setup_copyright index 12e1c64a02a545236f2998e757ea764b75381338..f87c8c069a5f5f8327b8248ebf5c51c44d63ee23 100755 --- a/dh_setup_copyright +++ b/dh_setup_copyright @@ -198,9 +198,15 @@ sub process_external_sources { my $added_referenced_srcpackages = 0; my $sources = decode_json $sources_data; + my $sources_changed = 0; while (my ($file, $info) = each %$sources) { foreach my $unit (@{$info->{'units'}}) { + if (($unit->{'comp_name'} =~ s|/@/.*||) && !$sources_changed) { + print "Stripping trailing '/@/...' from Rust compilation units\n"; + $sources_changed = 1; + } + my $comp_dir = $unit->{'comp_dir'}; my $comp_name = $unit->{'comp_name'}; @@ -229,6 +235,13 @@ sub process_external_sources { } } + if ($sources_changed) { + print "Saving edited dwarf2sources output\n"; + open my $sources_handle, '>', $fname_list or die "Failed to open $fname_list: $!"; + print $sources_handle encode_json($sources); + close $sources_handle; + } + if (%$external_sources_to_packages) { my $count = scalar %$external_sources_to_packages; print "Adding metadata for $count external source file(s)\n";