X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/89a10d913b8e4cf2d42a32ab9101c19197d48967..f9ffd498e1e5ba39d4a8257caa9b6fcd1013881a:/scripts/metadata.pl diff --git a/scripts/metadata.pl b/scripts/metadata.pl index 9f06299aa..246520bf7 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -45,7 +45,6 @@ sub parse_target_metadata() { $target->{parent} = $target{$1}; } }; - /^Target-Kernel:\s*(\d+\.\d+)\s*$/ and $target->{kernel} = $1; /^Target-Name:\s*(.+)\s*$/ and $target->{name} = $1; /^Target-Path:\s*(.+)\s*$/ and $target->{path} = $1; /^Target-Arch:\s*(.+)\s*$/ and $target->{arch} = $1; @@ -189,7 +188,11 @@ sub target_name($) { sub kver($) { my $v = shift; $v =~ tr/\./_/; - $v =~ /(\d+_\d+_\d+)(_\d+)?/ and $v = $1; + if (substr($v,0,2) eq "2_") { + $v =~ /(\d+_\d+_\d+)(_\d+)?/ and $v = $1; + } else { + $v =~ /(\d+_\d+)(_\d+)?/ and $v = $1; + } return $v; } @@ -227,6 +230,8 @@ EOF } if (@{$target->{subtargets}} > 0) { $confstr .= "\tselect HAS_SUBTARGETS\n"; + } else { + $confstr .= $features; } if ($target->{arch} =~ /\w/) { @@ -246,7 +251,6 @@ EOF $flags =~ /\+/ and $mode = "select"; $flags =~ /@/ and $confstr .= "\t$mode $name\n"; } - $confstr .= $features; $confstr .= "$help\n\n"; print $confstr; } @@ -530,6 +534,7 @@ sub print_package_config_category($) { print "\t\tdefault $default\n"; } print mconf_depends($pkg->{name}, $pkg->{depends}, 0); + print mconf_depends($pkg->{name}, $pkg->{mdepends}, 0); print "\t\thelp\n"; print $pkg->{description}; print "\n"; @@ -691,10 +696,10 @@ sub gen_package_mk() { my $depstr = "\$(curdir)/$idx$suffix/compile"; my $depline = get_conditional_dep($condition, $depstr); if ($depline) { - $deplines{$dep} = $depline; + $deplines{$depline}++; } } - my $depline = join(" ", values %deplines); + my $depline = join(" ", sort keys %deplines); if ($depline) { $line .= "\$(curdir)/".$pkg->{subdir}."$pkg->{src}/$type/compile += $depline\n"; } @@ -738,7 +743,7 @@ sub gen_package_mk() { if ($idx) { my $depline; next if $pkg->{src} eq $pkg_dep->{src}.$suffix; - next if $dep{$pkg->{src}."->".$idx}; + next if $dep{$condition.":".$pkg->{src}."->".$idx}; next if $dep{$pkg->{src}."->($dep)".$idx} and $pkg_dep->{vdepends}; my $depstr; @@ -751,12 +756,12 @@ sub gen_package_mk() { } $depline = get_conditional_dep($condition, $depstr); if ($depline) { - $deplines{$idx.$dep} = $depline; + $deplines{$depline}++; } } } } - my $depline = join(" ", values %deplines); + my $depline = join(" ", sort keys %deplines); if ($depline) { $line .= "\$(curdir)/".$pkg->{subdir}."$pkg->{src}/compile += $depline\n"; }