Add the ability to set the header row colour to button tables and wps tag tables.
[kugel-rb.git] / tools / release / bins.pl
blob9dc282410cf2bd8691d5f181f9fd0e94a2be3510
1 #!/usr/bin/perl
3 $version="3.0";
5 my $verbose;
6 if($ARGV[0] eq "-v") {
7 $verbose =1;
8 shift @ARGV;
11 my $update;
12 if($ARGV[0] eq "-u") {
13 $update =1;
14 shift @ARGV;
17 my $doonly;
18 if($ARGV[0]) {
19 $doonly = $ARGV[0];
20 print "only build $doonly\n" if($verbose);
23 if($update) {
24 # svn update!
25 system("svn -q up");
28 $rev = `svnversion`;
29 chomp $rev;
30 print "rev $rev\n" if($verbose);
32 # made once for all targets
33 sub runone {
34 my ($dir, $confnum, $extra)=@_;
35 my $a;
37 if($doonly && ($doonly ne $dir)) {
38 return;
41 mkdir "build-$dir";
42 chdir "build-$dir";
43 print "Build in build-$dir\n" if($verbose);
45 # build the manual(s)
46 $a = buildit($dir, $confnum, $extra);
48 chdir "..";
50 my $o="build-$dir/rockbox.zip";
51 if (-f $o) {
52 my $newo="output/rockbox-$dir-$version.zip";
53 system("mkdir -p output");
54 system("mv $o $newo");
55 print "moved $o to $newo\n" if($verbose);
58 print "remove all contents in build-$dir\n" if($verbose);
59 system("rm -rf build-$dir");
61 return $a;
64 sub fonts {
65 my ($dir, $confnum, $newl)=@_;
66 my $a;
68 if($doonly && ($doonly ne $dir)) {
69 return;
72 mkdir "build-$dir";
73 chdir "build-$dir";
74 print "Build fonts in build-$dir\n" if($verbose);
76 # build the manual(s)
77 $a = buildfonts($dir, $confnum, $newl);
79 chdir "..";
81 my $o="build-$dir/rockbox-fonts.zip";
82 if (-f $o) {
83 my $newo="output/rockbox-fonts-$version.zip";
84 system("mv $o $newo");
85 print "moved $o to $newo\n" if($verbose);
88 print "remove all contents in build-$dir\n" if($verbose);
89 system("rm -rf build-$dir");
91 return $a;
96 sub buildit {
97 my ($target, $confnum, $extra)=@_;
99 `rm -rf * >/dev/null 2>&1`;
101 my $c = sprintf('printf "%s\n%sn\n" | ../tools/configure',
102 $confnum, $extra);
104 print "C: $c\n" if($verbose);
105 `$c`;
107 print "Run 'make'\n" if($verbose);
108 `make -j 2>/dev/null`;
110 print "Run 'make zip'\n" if($verbose);
111 `make zip 2>/dev/null`;
113 print "Run 'make mapzip'\n" if($verbose);
114 `make mapzip 2>/dev/null`;
117 sub buildfonts {
118 my ($target, $confnum, $newl)=@_;
120 `rm -rf * >/dev/null 2>&1`;
122 my $c = sprintf("printf '%s\n%sn\n' | ../tools/configure",
123 $confnum, $newl?'\n':'');
125 print "C: $c\n" if($verbose);
126 `$c`;
128 print "Run 'make fontzip'\n" if($verbose);
129 `make fontzip 2>/dev/null`;
132 # run make in tools first to make sure they're up-to-date
133 print "cd tools && make\n" if($verbose);
134 `(cd tools && make ) >/dev/null 2>&1`;
136 runone("player", "player", '\n');
137 runone("recorder", "recorder", '\n');
138 runone("recorder8mb", "recorder", '8\n');
139 runone("fmrecorder", "fmrecorder", '\n');
140 runone("fmrecorder8mb", "fmrecorder", '8\n');
141 runone("recorderv2", "recorderv2", '\n');
142 runone("ondiosp", "ondiosp", '\n');
143 runone("ondiofm", "ondiofm", '\n');
144 runone("h100", "h100");
145 runone("h120", "h120");
146 runone("h300", "h300");
147 runone("ipodcolor", "ipodcolor");
148 runone("ipodnano", "ipodnano");
149 runone("ipod4gray", "ipod4g");
150 runone("ipodvideo", "ipodvideo", '32\n');
151 runone("ipodvideo64mb", "ipodvideo", '64\n');
152 runone("ipod3g", "ipod3g");
153 runone("ipod1g2g", "ipod1g2g");
154 runone("iaudiox5", "x5");
155 runone("iaudiom5", "m5");
156 runone("iaudiom3", "m3");
157 runone("ipodmini1g", "ipodmini");
158 runone("ipodmini2g", "ipodmini2g");
159 runone("h10", "h10");
160 runone("h10_5gb", "h10_5gb");
161 runone("gigabeatf", "gigabeatf");
162 runone("sansae200", "e200");
163 runone("sansac200", "c200");
164 #runone("mrobe500", "mrobe500");
165 runone("mrobe100", "mrobe100");
166 runone("cowond2", "cowond2");
167 fonts("fonts", "x5");