3 # Copyright (C) 2006 OpenWrt.org
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
19 while ($_ = shift @_) {
20 /broken/ and $ret .= "\tdepends BROKEN\n";
21 /pci/ and $ret .= "\tselect PCI_SUPPORT\n";
22 /usb/ and $ret .= "\tselect USB_SUPPORT\n";
23 /atm/ and $ret .= "\tselect ATM_SUPPORT\n";
24 /pcmcia/ and $ret .= "\tselect PCMCIA_SUPPORT\n";
25 /squashfs/ and $ret .= "\tselect USES_SQUASHFS\n";
26 /jffs2/ and $ret .= "\tselect USES_JFFS2\n";
27 /ext2/ and $ret .= "\tselect USES_EXT2\n";
34 /^Target:\s*((.+)-(\d+\.\d+))\s*$/ and do {
35 my $conf = uc $3.'_'.$2;
43 $target->{kernel} =~ tr/\./_/;
44 push @target, $target;
46 /^Target-Name:\s*(.+)\s*$/ and $target->{name} = $1;
47 /^Target-Path:\s*(.+)\s*$/ and $target->{path} = $1;
48 /^Target-Arch:\s*(.+)\s*$/ and $target->{arch} = $1;
49 /^Target-Features:\s*(.+)\s*$/ and do {
51 $target->{features} = $f;
52 @$f = split /\s+/, $1;
54 /^Target-Description:/ and do {
60 $target->{desc} = $desc;
62 /^Linux-Version:\s*(.+)\s*$/ and $target->{version} = $1;
63 /^Linux-Release:\s*(.+)\s*$/ and $target->{release} = $1;
64 /^Linux-Kernel-Arch:\s*(.+)\s*$/ and $target->{karch} = $1;
65 /^Default-Packages:\s*(.+)\s*$/ and do {
66 my @pkgs = split /\s+/, $1;
67 $target->{defaultpkgs} = \@pkgs;
69 /^Target-Profile:\s*(.+)\s*$/ and do {
70 $profiles = $target->{profiles} or $target->{profiles} = $profiles = [];
74 push @$profiles, $profile;
76 /^Target-Profile-Name:\s*(.+)\s*$/ and $profile->{name} = $1;
77 /^Target-Profile-Packages:\s*(.+)\s*$/ and do {
78 my @pkgs = split /\s+/, $1;
79 $profile->{pkgs} = \@pkgs;
84 $a->{name} cmp $b->{name}
90 prompt "Target System"
91 default LINUX_2_4_BRCM
95 foreach $target (@target) {
96 my $features = features(@{$target->{features}});
97 my $help = $target->{desc};
100 if ($help =~ /\w+/) {
101 $help =~ s/^\s*/\t /mg;
102 $help = "\thelp\n$help";
108 config LINUX_$target->{conf}
109 bool "$target->{name}"
110 select $target->{arch}
111 select LINUX_$target->{kernel}
121 bool "UNSUPPORTED little-endian arm platform"
126 config LINUX_2_6_CRIS
127 bool "UNSUPPORTED cris platform"
132 config LINUX_2_6_M68K
133 bool "UNSUPPORTED m68k platform"
139 bool "UNSUPPORTED little-endian sh3 platform"
144 config LINUX_2_6_SH3EB
145 bool "UNSUPPORTED big-endian sh3 platform"
151 bool "UNSUPPORTED little-endian sh4 platform"
156 config LINUX_2_6_SH4EB
157 bool "UNSUPPORTED big-endian sh4 platform"
162 config LINUX_2_6_SPARC
163 bool "UNSUPPORTED sparc platform"
173 prompt "Target Profile"
177 foreach $target (@target) {
180 $profiles = $target->{profiles} or $profiles = [
187 foreach my $profile (@$profiles) {
189 config LINUX_$target->{conf}_$profile->{id}
190 bool "$profile->{name}"
191 depends LINUX_$target->{conf}
193 foreach my $pkg (@{$target->{defaultpkgs}}, @{$profile->{pkgs}}) {
194 print "\tselect DEFAULT_$pkg\n";