From: Paul Spooren Date: Wed, 15 Apr 2020 00:49:54 +0000 (-1000) Subject: scripts: target-metadata don't add PROFILES twice X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4dad3244297d8315b25ef029286681be4e7123a0;p=openwrt%2Fstaging%2Fjow.git scripts: target-metadata don't add PROFILES twice Since 4ee3cf2b5a profiles with alternative vendor names may appear multiple times in `tmp/.targetinfo` or `.targetinfo` (for ImageBuilders). The `target-metadata.pl` script adds these profiles then twice to `PROFILE_NAMES` and the ImageBuilder show the profile twice when running `make info`. This patch removes duplicate profile IDs and only adds them once to `.profiles.mk`. Signed-off-by: Paul Spooren --- diff --git a/scripts/target-metadata.pl b/scripts/target-metadata.pl index bf6413d315..78f77b16d5 100755 --- a/scripts/target-metadata.pl +++ b/scripts/target-metadata.pl @@ -429,7 +429,8 @@ sub gen_profile_mk() { my @targets = parse_target_metadata($file); foreach my $cur (@targets) { next unless $cur->{id} eq $target; - print "PROFILE_NAMES = ".join(" ", map { $_->{id} } @{$cur->{profiles}})."\n"; + my @profile_ids_unique = do { my %seen; grep { !$seen{$_}++} map { $_->{id} } @{$cur->{profiles}}}; + print "PROFILE_NAMES = ".join(" ", @profile_ids_unique)."\n"; foreach my $profile (@{$cur->{profiles}}) { print $profile->{id}.'_NAME:='.$profile->{name}."\n"; print $profile->{id}.'_HAS_IMAGE_METADATA:='.$profile->{has_image_metadata}."\n";