Maemo port: Exclude plugins requiring a keymap from packaging
[maemo-rb.git] / tools / builds.pm
blob3d28b07ca5e90a46ee7c4d85a38e0e0235de6fff
1 $publicrelease="3.12";
2 $manualrelease="3.12";
3 $voicerelease="3.12";
4 $releasedate="06 October 2012";
5 $releasenotes="/wiki/ReleaseNotes312";
7 %builds = (
8 'archosav300' => {
9 name => 'Archos AV300',
10 status => 1, # 3=stable, 2=unstable, 1=unusable
12 'archosfmrecorder' => {
13 name => 'Archos FM Recorder',
14 status => 3,
15 ram => 2,
17 'archosondiofm' => {
18 name => 'Archos Ondio FM',
19 status => 3,
20 ram => 2,
22 'archosondiosp' => {
23 name => 'Archos Ondio SP',
24 status => 3,
25 ram => 2,
27 'archosplayer' => {
28 name => 'Archos Player/Studio',
29 status => 3,
30 ram => 2,
32 'archosrecorder' => {
33 name => 'Archos Recorder v1',
34 status => 3,
35 ram => 2,
37 'archosrecorderv2' => {
38 name => 'Archos Recorder v2',
39 status => 3,
40 ram => 2,
41 manual => "archosfmrecorder",
43 'cowond2' => {
44 name => 'Cowon D2',
45 status => 2,
46 manual => 'cowond2',
48 'gigabeatfx' => {
49 name => 'Toshiba Gigabeat F/X',
50 status => 3,
52 'gigabeats' => {
53 name => 'Toshiba Gigabeat S',
54 status => 2,
56 'gogearhdd1630' => {
57 name => 'Philips GoGear HDD1630',
58 status => 2,
60 'gogearhdd6330' => {
61 name => 'Philips GoGear HDD6330',
62 status => 2,
64 'gogearsa9200' => {
65 name => 'Philips GoGear SA9200',
66 status => 2,
68 'hifimanhm60x' => {
69 name => 'HiFiMAN HM-60x',
70 status => 2,
72 'hifimanhm801' => {
73 name => 'HiFiMAN HM-801',
74 status => 2,
76 'iaudio7' => {
77 name => 'iAudio 7',
78 status => 1,
80 'iaudiom3' => {
81 name => 'iAudio M3',
82 status => 3,
84 'iaudiom5' => {
85 name => 'iAudio M5',
86 status => 3,
88 'iaudiox5' => {
89 name => 'iAudio X5',
90 status => 3,
92 'ipod1g2g' => {
93 name => 'iPod 1st and 2nd gen',
94 status => 3,
96 'ipod3g' => {
97 name => 'iPod 3rd gen',
98 status => 3,
100 'ipod4g' => {
101 name => 'iPod 4th gen Grayscale',
102 status => 3,
104 'ipodcolor' => {
105 name => 'iPod color/Photo',
106 status => 3,
108 'ipodmini1g' => {
109 name => 'iPod Mini 1st gen',
110 status => 3,
112 'ipodmini2g' => {
113 name => 'iPod Mini 2nd gen',
114 status => 3,
115 icon => 'ipodmini1g',
116 manual => 'ipodmini1g',
118 'ipodnano1g' => {
119 name => 'iPod Nano 1st gen',
120 status => 3,
122 'ipodnano2g' => {
123 name => 'iPod Nano 2nd gen',
124 status => 2,
126 'ipodvideo' => {
127 name => 'iPod Video',
128 status => 3,
130 'ipod6g' => {
131 name => 'iPod 6th gen (Classic)',
132 status => 1,
134 'iriverh10' => {
135 name => 'iriver H10 20GB',
136 status => 3,
138 'iriverh10_5gb' => {
139 name => 'iriver H10 5GB',
140 status => 3,
142 'iriverh100' => {
143 name => 'iriver H100/115',
144 status => 3,
146 'iriverh120' => {
147 name => 'iriver H120/140',
148 status => 3,
149 icon => 'iriverh100',
150 manual => 'iriverh100',
152 'iriverh300' => {
153 name => 'iriver H320/340',
154 status => 3,
156 'iriverifp7xx' => {
157 name => 'iriver iFP-7xx',
158 status => 1,
160 'logikdax' => {
161 name => 'Logik DAX',
162 status => 1,
164 'lyreproto1' => {
165 name => 'Lyre Prototype 1',
166 status => 1,
168 'mini2440' => {
169 name => 'Mini 2440',
170 status => 1,
172 'meizum3' => {
173 name => 'Meizu M3',
174 status => 1,
176 'meizum6sl' => {
177 name => 'Meizu M6SL',
178 status => 1,
180 'meizum6sp' => {
181 name => 'Meizu M6SP',
182 status => 1,
184 'mrobe100' => {
185 name => 'Olympus M-Robe 100',
186 status => 2,
188 'mrobe500' => {
189 name => 'Olympus M-Robe 500',
190 status => 2,
192 'ondavx747' => {
193 name => 'Onda VX747',
194 status => 1,
196 'ondavx747p' => {
197 name => 'Onda VX747+',
198 status => 1,
200 'ondavx767' => {
201 name => 'Onda VX767',
202 status => 1,
204 'ondavx777' => {
205 name => 'Onda VX777',
206 status => 1,
208 'rk27generic' => {
209 name => 'Rockchip rk27xx',
210 status => 1,
212 'samsungyh820' => {
213 name => 'Samsung YH-820',
214 status => 2,
216 'samsungyh920' => {
217 name => 'Samsung YH-920',
218 status => 2,
220 'samsungyh925' => {
221 name => 'Samsung YH-925',
222 status => 2,
224 'samsungypr0' => {
225 name => 'Samsung YP-R0',
226 status => 2,
228 'samsungyps3' => {
229 name => 'Samsung YP-S3',
230 status => 1,
232 'sansac100' => {
233 name => 'SanDisk Sansa c100',
234 status => 1,
236 'sansac200' => {
237 name => 'SanDisk Sansa c200',
238 status => 3,
240 'sansac200v2' => {
241 name => 'SanDisk Sansa c200 v2',
242 status => 3,
243 icon => 'sansac200',
245 'sansaclip' => {
246 name => 'SanDisk Sansa Clip v1',
247 status => 3,
249 'sansaclipv2' => {
250 name => 'SanDisk Sansa Clip v2',
251 status => 3,
252 icon => 'sansaclip',
254 'sansaclipplus' => {
255 name => 'SanDisk Sansa Clip+',
256 status => 3,
258 'sansaclipzip' => {
259 name => 'SanDisk Sansa Clip Zip',
260 status => 2,
262 'sansae200' => {
263 name => 'SanDisk Sansa e200',
264 status => 3,
266 'sansae200v2' => {
267 name => 'SanDisk Sansa e200 v2',
268 status => 3,
269 icon => 'sansae200',
271 'sansafuze' => {
272 name => 'SanDisk Sansa Fuze',
273 status => 3,
275 'sansafuzev2' => {
276 name => 'SanDisk Sansa Fuze v2',
277 status => 3,
278 icon => 'sansafuze',
280 'sansafuzeplus' => {
281 name => 'SanDisk Sansa Fuze+',
282 status => 2,
283 icon => 'sansafuzeplus',
285 'sansam200' => {
286 name => 'SanDisk Sansa m200',
287 status => 1,
289 'sansam200v4' => {
290 name => 'SanDisk Sansa m200 v4',
291 status => 1,
293 'sansaview' => {
294 name => 'SanDisk Sansa View',
295 status => 1,
297 'tatungtpj1022' => {
298 name => 'Tatung Elio TPJ-1022',
299 status => 1,
301 'vibe500' => {
302 name => 'Packard Bell Vibe 500',
303 status => 3,
305 'zenvision' => {
306 name => 'Creative Zen Vision',
307 status => 1,
309 'zenvisionm30gb' => {
310 name => 'Creative Zen Vision:M 30GB',
311 status => 1,
313 'zenvisionm60gb' => {
314 name => 'Creative Zen Vision:M 60GB',
315 status => 1,
317 'mpiohd200' => {
318 name => 'MPIO HD200',
319 status => 2,
321 'mpiohd300' => {
322 name => 'MPIO HD300',
323 status => 3,
327 sub manualname {
328 my $m = shift @_;
330 return $builds{$m}{manual} ? "$builds{$m}{manual}" : $m;
333 sub voicename {
334 my $m = shift @_;
336 return $builds{$m}{voice} ? "$builds{$m}{voice}" : $m;
339 sub byname {
340 return uc $builds{$a}{name} cmp uc $builds{$b}{name};
343 sub usablebuilds {
344 my @list;
346 for my $b (sort byname keys %builds) {
347 push @list, $b if ($builds{$b}{status} >= 2);
350 return @list;
353 sub stablebuilds {
354 my @list;
356 for my $b (sort byname keys %builds) {
357 push @list, $b if ($builds{$b}{status} >= 3);
360 return @list;
363 sub allbuilds {
364 my @list;
366 for my $b (sort byname keys %builds) {
367 push @list, $b if ($builds{$b}{status} >= 1);
370 return @list;