mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-13 10:07:38 -04:00
Theme Editor: Modified buildtargetdb.php to read targets list from tools/builds.pm using includetargets.pl
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27630 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
66f8c73dcd
commit
d73c81f912
3 changed files with 349 additions and 127 deletions
|
@ -25,63 +25,21 @@
|
|||
echo "# ----------------------------------------------------------- #\n";
|
||||
echo "# ----------------------------------------------------------- #\n";
|
||||
echo "# --- This file automatically generated, do not modify! --- #\n";
|
||||
echo "# --- To add a target to the targetdb, add it to the --- #\n";
|
||||
echo "# --- \$targets array in buildtargetdb.php and run that --- #\n";
|
||||
echo "# --- script, ensuring that your current directory is --- #\n";
|
||||
echo "# --- utils/themeeditor, and pipe the output into --- #\n";
|
||||
echo "# --- utils/themeeditor/resources/targetdb --- #\n";
|
||||
echo "# ----------------------------------------------------------- #\n";
|
||||
echo "# ----------------------------------------------------------- #\n\n";
|
||||
|
||||
// This is the array of targets, with the target id as the key and the
|
||||
// plaintext name of the target as the value
|
||||
$targets = array( 'archosfmrecorder' => 'Archos FM Recorder',
|
||||
'archosondiofm' => 'Archos Ondio FM',
|
||||
'archosondiosp' => 'Archos Ondio SP',
|
||||
'archosplayer' => 'Archos Player/Studio',
|
||||
'archosrecorder' => 'Archos Recorder v1',
|
||||
'archosrecorderv2' => 'Archos Recorder v2',
|
||||
'cowond2' => 'Cowon D2',
|
||||
'iaudiom3' => 'iAudio M3',
|
||||
'iaudiom5' => 'iAudio M5',
|
||||
'iaudiox5' => 'iAudio X5',
|
||||
'ipod1g2g' => 'iPod 1st and 2nd gen',
|
||||
'ipod3g' => 'iPod 3rd gen',
|
||||
'ipod4g' => 'iPod 4th gen Grayscale',
|
||||
'ipodcolor' => 'iPod Color/Photo',
|
||||
'ipodmini1g' => 'iPod Mini 1st gen',
|
||||
'ipodmini2g' => 'iPod Mini 2nd gen',
|
||||
'ipodnano1g' => 'iPod Nano 1st gen',
|
||||
'ipodnano2g' => 'iPod Nano 2nd gen',
|
||||
'ipodvideo' => 'iPod Video',
|
||||
'iriverh10' => 'iriver H10 20GB',
|
||||
'iriverh10_5gb' => 'iriver H10 5GB',
|
||||
'iriverh100' => 'iriver H100/115',
|
||||
'iriverh120' => 'iriver H120/140',
|
||||
'iriverh300' => 'iriver H320/340',
|
||||
'mrobe100' => 'Olympus M-Robe 100',
|
||||
'mrobe500' => 'Olympus M-Robe 500',
|
||||
'vibe500' => 'Packard Bell Vibe 500',
|
||||
'samsungyh820' => 'Samsung YH-820',
|
||||
'samsungyh920' => 'Samsung YH-920',
|
||||
'samsungyh925' => 'Samsung YH-925',
|
||||
'sansac200' => 'SanDisk Sansa c200',
|
||||
'sansaclip' => 'SanDisk Sansa Clip v1',
|
||||
'sansaclipv2' => 'SanDisk Sansa Clip v2',
|
||||
'sansaclipplus' => 'SanDisk Sansa Clip+',
|
||||
'sansae200' => 'SanDisk Sansa e200',
|
||||
'sansae200v2' => 'SanDisk Sansa e200 v2',
|
||||
'sansafuze' => 'SanDisk Sansa Fuze',
|
||||
'sansafuzev2' => 'SanDisk Sansa Fuze v2',
|
||||
'gigabeatfx' => 'Toshiba Gigabeat F/X',
|
||||
'gigabeats' => 'Toshiba Gigabeat S'
|
||||
);
|
||||
// Importing the target array
|
||||
system('./includetargets.pl');
|
||||
require('./targets.php');
|
||||
unlink('./targets.php');
|
||||
|
||||
// Looping through all the targets
|
||||
foreach($targets as $target => $plaintext)
|
||||
{
|
||||
// Opening a cpp process
|
||||
$configfile = '../../firmware/export/config/' . $target . '.h';
|
||||
if(!file_exists($configfile))
|
||||
continue;
|
||||
$descriptor = array( 0 => array("pipe", "r"), //stdin
|
||||
1 => array("pipe", "w") //stdout
|
||||
);
|
||||
|
@ -122,15 +80,19 @@ STR;
|
|||
fclose($pipes[1]);
|
||||
$results = explode("\n", $results);
|
||||
|
||||
$base = 0;
|
||||
while($results[$base] != 'lcd')
|
||||
$base++;
|
||||
|
||||
// Header for the target
|
||||
echo $target . "\n{\n";
|
||||
echo ' name : ' . $plaintext . "\n";
|
||||
|
||||
// Writing the LCD dimensions
|
||||
echo ' screen : ' . $results[7] . ' x ' . $results[8] . ' @ ';
|
||||
if($results[9] == 1)
|
||||
echo ' screen : ' . $results[$base + 1] . ' x ' . $results[$base + 2] . ' @ ';
|
||||
if($results[$base + 3] == 1)
|
||||
echo 'mono';
|
||||
else if($results[10] == 2)
|
||||
else if($results[$base + 3] == 2)
|
||||
echo 'grey';
|
||||
else
|
||||
echo 'rgb';
|
||||
|
@ -138,16 +100,16 @@ STR;
|
|||
|
||||
// Writing the remote dimensions if necessary
|
||||
echo ' remote : ';
|
||||
if($results[12] == 0)
|
||||
if($results[$base + 6] == 0)
|
||||
{
|
||||
echo 'no';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $results[12] . ' x ' .$results[13] . ' @ ';
|
||||
if($results[14] == 1)
|
||||
echo $results[$base + 6] . ' x ' .$results[$base + 7] . ' @ ';
|
||||
if($results[$base + 8] == 1)
|
||||
echo 'mono';
|
||||
else if($results[14] == 2)
|
||||
else if($results[$base + 8] == 2)
|
||||
echo 'grey';
|
||||
else
|
||||
echo 'rgb';
|
||||
|
@ -156,7 +118,7 @@ STR;
|
|||
|
||||
// Writing FM capability
|
||||
echo ' fm : ';
|
||||
if($results[18] == 'yes')
|
||||
if($results[$base + 12] == 'yes')
|
||||
echo 'yes';
|
||||
else
|
||||
echo 'no';
|
||||
|
@ -164,7 +126,7 @@ STR;
|
|||
|
||||
// Writing record capability
|
||||
echo ' record : ';
|
||||
if($results[22] == 'yes')
|
||||
if($results[$base + 16] == 'yes')
|
||||
echo 'yes';
|
||||
else
|
||||
echo 'no';
|
||||
|
|
58
utils/themeeditor/includetargets.pl
Executable file
58
utils/themeeditor/includetargets.pl
Executable file
|
@ -0,0 +1,58 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
###########################################################################
|
||||
# __________ __ ___.
|
||||
# Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
||||
# Source | _ / _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
||||
# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
||||
# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
||||
# \/ \/ \/ \/ \/
|
||||
# $Id$
|
||||
#
|
||||
# Copyright (C) 2010 Robert Bieber
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
# KIND, either express or implied.
|
||||
#
|
||||
############################################################################/
|
||||
|
||||
require '../../tools/builds.pm';
|
||||
|
||||
open(FOUT, ">targets.php");
|
||||
|
||||
print FOUT '<?php $targets = array(';
|
||||
|
||||
@keys = sort byname keys %builds;
|
||||
$size = @keys;
|
||||
$final = @keys[$size - 1];
|
||||
for my $b (@keys)
|
||||
{
|
||||
$key = $b;
|
||||
$key =~ s/:/%:/;
|
||||
$name = $builds{$b}{name};
|
||||
$name =~ s/:/%:/;
|
||||
|
||||
print FOUT "\"$key\"" . "=>" . '"' . $name . '"' if ($builds{$b}{status} >= 3);
|
||||
print FOUT ',' if $b ne $final && $builds{$b}{status} >= 3;
|
||||
}
|
||||
|
||||
for my $b (@keys)
|
||||
{
|
||||
$key = $b;
|
||||
$key =~ s/:/%:/;
|
||||
$name = $builds{$b}{name};
|
||||
$name =~ s/:/%:/;
|
||||
|
||||
print FOUT "\"$key\"" . "=>" . '"' . $name . '"' if ($builds{$b}{status} < 3);
|
||||
print FOUT ',' if $b ne $final && $builds{$b}{status} < 3;
|
||||
}
|
||||
|
||||
print FOUT '); ?>';
|
||||
|
||||
close(FOUT);
|
||||
|
|
@ -1,11 +1,6 @@
|
|||
# ----------------------------------------------------------- #
|
||||
# ----------------------------------------------------------- #
|
||||
# --- This file automatically generated, do not modify! --- #
|
||||
# --- To add a target to the targetdb, add it to the --- #
|
||||
# --- $targets array in buildtargetdb.php and run that --- #
|
||||
# --- script, ensuring that your current directory is --- #
|
||||
# --- utils/themeeditor, and pipe the output into --- #
|
||||
# --- utils/themeeditor/resources/targetdb --- #
|
||||
# ----------------------------------------------------------- #
|
||||
# ----------------------------------------------------------- #
|
||||
|
||||
|
@ -63,19 +58,10 @@ archosrecorderv2
|
|||
record : yes
|
||||
}
|
||||
|
||||
cowond2
|
||||
{
|
||||
name : Cowon D2
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
iaudiom3
|
||||
{
|
||||
name : iAudio M3
|
||||
screen : 128 x 96 @ rgb
|
||||
screen : 128 x 96 @ grey
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
|
@ -84,7 +70,7 @@ iaudiom3
|
|||
iaudiom5
|
||||
{
|
||||
name : iAudio M5
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : 128 x 96 @ grey
|
||||
fm : no
|
||||
record : yes
|
||||
|
@ -102,7 +88,7 @@ iaudiox5
|
|||
ipod1g2g
|
||||
{
|
||||
name : iPod 1st and 2nd gen
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
|
@ -111,7 +97,7 @@ ipod1g2g
|
|||
ipod3g
|
||||
{
|
||||
name : iPod 3rd gen
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
|
@ -120,7 +106,7 @@ ipod3g
|
|||
ipod4g
|
||||
{
|
||||
name : iPod 4th gen Grayscale
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
|
@ -128,7 +114,7 @@ ipod4g
|
|||
|
||||
ipodcolor
|
||||
{
|
||||
name : iPod Color/Photo
|
||||
name : iPod color/Photo
|
||||
screen : 220 x 176 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
|
@ -138,7 +124,7 @@ ipodcolor
|
|||
ipodmini1g
|
||||
{
|
||||
name : iPod Mini 1st gen
|
||||
screen : 138 x 110 @ rgb
|
||||
screen : 138 x 110 @ grey
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
|
@ -147,7 +133,7 @@ ipodmini1g
|
|||
ipodmini2g
|
||||
{
|
||||
name : iPod Mini 2nd gen
|
||||
screen : 138 x 110 @ rgb
|
||||
screen : 138 x 110 @ grey
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
|
@ -162,18 +148,9 @@ ipodnano1g
|
|||
record : yes
|
||||
}
|
||||
|
||||
ipodnano2g
|
||||
{
|
||||
name : iPod Nano 2nd gen
|
||||
screen : 176 x 132 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
ipodvideo
|
||||
{
|
||||
name : iPod Video
|
||||
name : iPod Video 30GB
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
|
@ -201,7 +178,7 @@ iriverh10_5gb
|
|||
iriverh100
|
||||
{
|
||||
name : iriver H100/115
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : 128 x 64 @ mono
|
||||
fm : yes
|
||||
record : yes
|
||||
|
@ -210,7 +187,7 @@ iriverh100
|
|||
iriverh120
|
||||
{
|
||||
name : iriver H120/140
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : 128 x 64 @ mono
|
||||
fm : yes
|
||||
record : yes
|
||||
|
@ -234,6 +211,177 @@ mrobe100
|
|||
record : no
|
||||
}
|
||||
|
||||
vibe500
|
||||
{
|
||||
name : Packard Bell Vibe 500
|
||||
screen : 160 x 128 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansac200
|
||||
{
|
||||
name : SanDisk Sansa c200
|
||||
screen : 132 x 80 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansae200
|
||||
{
|
||||
name : SanDisk Sansa e200
|
||||
screen : 176 x 220 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansae200v2
|
||||
{
|
||||
name : SanDisk Sansa e200 v2
|
||||
screen : 176 x 220 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansafuze
|
||||
{
|
||||
name : SanDisk Sansa Fuze
|
||||
screen : 220 x 176 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
gigabeatfx
|
||||
{
|
||||
name : Toshiba Gigabeat F/X
|
||||
screen : 240 x 320 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
cowond2
|
||||
{
|
||||
name : Cowon D2
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
zenvision
|
||||
{
|
||||
name : Creative Zen Vision
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
zenvisionm30gb
|
||||
{
|
||||
name : Creative Zen Vision%:M 30GB
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
zenvisionm60gb
|
||||
{
|
||||
name : Creative Zen Vision%:M 60GB
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
iaudio7
|
||||
{
|
||||
name : iAudio 7
|
||||
screen : 160 x 128 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
ipodnano2g
|
||||
{
|
||||
name : iPod Nano 2nd gen
|
||||
screen : 176 x 132 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
iriverifp7xx
|
||||
{
|
||||
name : iriver iFP-7xx
|
||||
screen : 128 x 64 @ mono
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
logikdax
|
||||
{
|
||||
name : Logik DAX
|
||||
screen : 128 x 64 @ mono
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
lyreproto1
|
||||
{
|
||||
name : Lyre Prototype 1
|
||||
screen : 128 x 128 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
meizum3
|
||||
{
|
||||
name : Meizu M3
|
||||
screen : 176 x 132 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
meizum6sl
|
||||
{
|
||||
name : Meizu M6SL
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
meizum6sp
|
||||
{
|
||||
name : Meizu M6SP
|
||||
screen : 240 x 320 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
mini2440
|
||||
{
|
||||
name : Mini 2440
|
||||
screen : 240 x 320 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
mrobe500
|
||||
{
|
||||
name : Olympus M-Robe 500
|
||||
|
@ -243,13 +391,49 @@ mrobe500
|
|||
record : no
|
||||
}
|
||||
|
||||
vibe500
|
||||
ondavx747
|
||||
{
|
||||
name : Packard Bell Vibe 500
|
||||
screen : 160 x 128 @ rgb
|
||||
name : Onda VX747
|
||||
screen : 240 x 400 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
ondavx767
|
||||
{
|
||||
name : Onda VX767
|
||||
screen : 320 x 240 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
ondavx777
|
||||
{
|
||||
name : Onda VX777
|
||||
screen : 240 x 400 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
gogearhdd1630
|
||||
{
|
||||
name : Philips GoGear HDD1630
|
||||
screen : 128 x 128 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
gogearsa9200
|
||||
{
|
||||
name : Philips GoGear SA9200
|
||||
screen : 128 x 160 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
samsungyh820
|
||||
|
@ -264,7 +448,7 @@ samsungyh820
|
|||
samsungyh920
|
||||
{
|
||||
name : Samsung YH-920
|
||||
screen : 160 x 128 @ rgb
|
||||
screen : 160 x 128 @ grey
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
|
@ -279,9 +463,27 @@ samsungyh925
|
|||
record : no
|
||||
}
|
||||
|
||||
sansac200
|
||||
samsungyps3
|
||||
{
|
||||
name : SanDisk Sansa c200
|
||||
name : Samsung YP-S3
|
||||
screen : 176 x 220 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : no
|
||||
}
|
||||
|
||||
sansac100
|
||||
{
|
||||
name : SanDisk Sansa c100
|
||||
screen : 128 x 64 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
sansac200v2
|
||||
{
|
||||
name : SanDisk Sansa c200 v2
|
||||
screen : 132 x 80 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
|
@ -315,33 +517,6 @@ sansaclipplus
|
|||
record : yes
|
||||
}
|
||||
|
||||
sansae200
|
||||
{
|
||||
name : SanDisk Sansa e200
|
||||
screen : 176 x 220 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansae200v2
|
||||
{
|
||||
name : SanDisk Sansa e200 v2
|
||||
screen : 176 x 220 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansafuze
|
||||
{
|
||||
name : SanDisk Sansa Fuze
|
||||
screen : 220 x 176 @ rgb
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansafuzev2
|
||||
{
|
||||
name : SanDisk Sansa Fuze v2
|
||||
|
@ -351,15 +526,42 @@ sansafuzev2
|
|||
record : yes
|
||||
}
|
||||
|
||||
gigabeatfx
|
||||
sansam200
|
||||
{
|
||||
name : Toshiba Gigabeat F/X
|
||||
name : SanDisk Sansa m200
|
||||
screen : 128 x 64 @ mono
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
sansam200v4
|
||||
{
|
||||
name : SanDisk Sansa m200 v4
|
||||
screen : 128 x 64 @ mono
|
||||
remote : no
|
||||
fm : yes
|
||||
record : yes
|
||||
}
|
||||
|
||||
sansaview
|
||||
{
|
||||
name : SanDisk Sansa View
|
||||
screen : 240 x 320 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
tatungtpj1022
|
||||
{
|
||||
name : Tatung Elio TPJ-1022
|
||||
screen : 220 x 176 @ rgb
|
||||
remote : no
|
||||
fm : no
|
||||
record : no
|
||||
}
|
||||
|
||||
gigabeats
|
||||
{
|
||||
name : Toshiba Gigabeat S
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue