summaryrefslogtreecommitdiff
path: root/utils/skinupdater/updatetheme.pl
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2010-05-28 05:25:48 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2010-05-28 05:25:48 +0000
commitbdb6bf553596918d0d329670dcc8c370d645608e (patch)
tree9dad38b696949d2366a13f12b1c4d0cb14ac55e5 /utils/skinupdater/updatetheme.pl
parent3c1dd03fb32d6428e68a30879f7531df99591f03 (diff)
downloadrockbox-bdb6bf553596918d0d329670dcc8c370d645608e.tar.gz
rockbox-bdb6bf553596918d0d329670dcc8c370d645608e.zip
Add the beggingings of a perl script to run the update over a whole theme zip file... someoene who knows perl please finish this :D
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26351 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/skinupdater/updatetheme.pl')
-rwxr-xr-xutils/skinupdater/updatetheme.pl53
1 files changed, 53 insertions, 0 deletions
diff --git a/utils/skinupdater/updatetheme.pl b/utils/skinupdater/updatetheme.pl
new file mode 100755
index 0000000000..a6c3e20097
--- /dev/null
+++ b/utils/skinupdater/updatetheme.pl
@@ -0,0 +1,53 @@
1#!/usr/bin/perl
2# __________ __ ___.
3# Open \______ \ ____ ____ | | _\_ |__ _______ ___
4# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7# \/ \/ \/ \/ \/
8# $Id: wpsbuild.pl 24813 2010-02-21 19:10:57Z kugel $
9#
10
11# usage: updatetheme.pl theme.zip workingdir [options passed to skinupdater]
12use File::Basename;
13
14$numArgs = $#ARGV + 1;
15
16die "usage: updatetheme.pl theme.zip workingdir [options passed to skinupdater]" if ($numArgs < 2);
17
18$ARGV[0] =~ /.*\/(.*).(zip|ZIP)/; #fix this regex!
19$theme_name = $1;
20$tmp = $ARGV[1];
21$outdir = "$tmp/$theme_name";
22
23if ($numArgs > 2)
24{
25 $args = $ARGV[2];
26} else {
27 $args = "";
28}
29
30
31system("mkdir $outdir") and die "couldnt mkdir $outdir";
32
33# step 1, unzip the theme zip
34system("unzip $ARGV[0] -d $outdir") and die;
35
36#for each skin in the zip run skinupdater
37@files = `find $outdir -iname "*.wps" -o -iname "*.sbs" -o -iname "*.fms" -o -iname "*.rwps" -o -iname "*.rsbs" -o -iname "*.rfms"`;
38`touch $tmp/changes.diff`;
39foreach (@files)
40{
41 chomp($_);
42 $file = $_;
43 $out = "$tmp/" . `basename $file`; chomp($out);
44 `./skinupdater $args $file $out`;
45 print "$out";
46 `diff -u $file $out >> $tmp/changes.diff`;
47 `mv $out $file`;
48 # TODO zip up the new folder..
49
50}
51
52
53system("rm -Rf $outdir");