diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/metadata.pl | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/scripts/metadata.pl b/scripts/metadata.pl index 7496f33a7..400255900 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -52,6 +52,7 @@ sub parse_target_metadata() { /^Target-Features:\s*(.+)\s*$/ and $target->{features} = [ split(/\s+/, $1) ]; /^Target-Depends:\s*(.+)\s*$/ and $target->{depends} = [ split(/\s+/, $1) ]; /^Target-Description:/ and $target->{desc} = get_multiline(*FILE); + /^Target-Optimization:\s*(.+)\s*$/ and $target->{cflags} = $1; /^Linux-Version:\s*(.+)\s*$/ and $target->{version} = $1; /^Linux-Release:\s*(.+)\s*$/ and $target->{release} = $1; /^Linux-Kernel-Arch:\s*(.+)\s*$/ and $target->{karch} = $1; @@ -325,6 +326,16 @@ EOF foreach my $target (@target) { $target->{subtarget} or print "\t\tdefault \"".$target->{board}."\" if TARGET_".$target->{conf}."\n"; } + print <<EOF; + +config DEFAULT_TARGET_OPTIMIZATION + string +EOF + foreach my $target (@target) { + next if @{$target->{subtargets}} > 0; + print "\tdefault \"".$target->{cflags}."\" if TARGET_".$target->{conf}."\n"; + } + print "\tdefault \"-Os -pipe -funit-at-a-time\"\n"; my %kver; foreach my $target (@target) { @@ -332,8 +343,10 @@ EOF next if $kver{$v}; $kver{$v} = 1; print <<EOF; + config LINUX_$v bool + EOF } foreach my $def (sort keys %defaults) { |