diff options
Diffstat (limited to 'utils/skinupdater/updatetheme.pl')
-rwxr-xr-x | utils/skinupdater/updatetheme.pl | 53 |
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] | ||
12 | use File::Basename; | ||
13 | |||
14 | $numArgs = $#ARGV + 1; | ||
15 | |||
16 | die "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 | |||
23 | if ($numArgs > 2) | ||
24 | { | ||
25 | $args = $ARGV[2]; | ||
26 | } else { | ||
27 | $args = ""; | ||
28 | } | ||
29 | |||
30 | |||
31 | system("mkdir $outdir") and die "couldnt mkdir $outdir"; | ||
32 | |||
33 | # step 1, unzip the theme zip | ||
34 | system("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`; | ||
39 | foreach (@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 | |||
53 | system("rm -Rf $outdir"); | ||