mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2026-01-06 03:42:10 -05:00
imagebuilder: exclude metadata for profiles that have no kernel
Device profiles that specify 'DEFAULT := n' are being included
in the imagebuilder metadata, specifically in .profiles.mk, even
though there is no kernel built for the device. This results in
'make info' showing the device as valid, but then 'make image
PROFILE=xxx' failing with 'No rule to make target xxx-kernel.bin ...'
We exclude these profiles from the imagebuilder, avoiding these
errors.
Fixes: https://github.com/openwrt/openwrt/issues/18410
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18748
(cherry picked from commit b88f3ebb33)
Link: https://github.com/openwrt/openwrt/pull/18765
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
parent
5db1b94b63
commit
52d4559fe1
@ -433,7 +433,7 @@ sub gen_profile_mk() {
|
||||
my @targets = parse_target_metadata($file);
|
||||
foreach my $cur (@targets) {
|
||||
next unless $cur->{id} eq $target;
|
||||
my @profile_ids_unique = do { my %seen; grep { !$seen{$_}++} map { $_->{id} } @{$cur->{profiles}}};
|
||||
my @profile_ids_unique = do { my %seen; grep { !$seen{$_}++} map { $_->{id} } grep { $_->{default} !~ /^n/ } @{$cur->{profiles}}};
|
||||
print "PROFILE_NAMES = ".join(" ", @profile_ids_unique)."\n";
|
||||
foreach my $profile (@{$cur->{profiles}}) {
|
||||
print $profile->{id}.'_NAME:='.$profile->{name}."\n";
|
||||
|
||||
Loading…
Reference in New Issue
Block a user