X-Git-Url: https://code.delx.au/comingnext/blobdiff_plain/4b327048d10ee8a454478580870512643c6ff5c8..59b781af1f1c364dcf85c0ca1032998945b9433e:/build.pl diff --git a/build.pl b/build.pl old mode 100644 new mode 100755 index 9cb7288..cb54aa5 --- a/build.pl +++ b/build.pl @@ -1,82 +1,85 @@ -#!/usr/bin/perl - -my $version = "1.28"; - -use warnings; -use strict; -use File::Copy; -use File::Find; -use File::Path; -use Archive::Zip qw( :ERROR_CODES ); - -# cleanup -unlink <*.wgz>; -unlink <*.zip>; -rmtree("ComingNextB"); -rmtree("ComingNextC"); - -# update version info -sed("comingNext/index.html", 'var version = \"(.*?)\";', 'var version = \"'.$version.'\";'); -sed("comingNext/Info.plist", 'DisplayName<\/key>(\s*?)Coming Next (.*?)<\/string>', 'DisplayName<\/key>$1Coming Next '.$version.'<\/string>'); -sed("comingNext/Info.plist", 'Version<\/key>(\s*?)(.*?)<\/string>', 'Version<\/key>$1'.$version.'<\/string>'); - -# add additional widget -copyrecursive("comingNext", "comingNextB"); -sed("comingNextB/index.html", 'var panelNum = 0;', 'var panelNum = 1;'); -sed("comingNextB/Info.plist", 'DisplayName<\/key>(\s*?)Coming Next (.*?)<\/string>', 'DisplayName<\/key>$1Coming Next B $2<\/string>'); -sed("comingNextB/Info.plist", 'Identifier<\/key>(\s*?)(.*?)<\/string>', 'Identifier<\/key>$1$2b<\/string>'); - -# add additional widget -copyrecursive("comingNext", "comingNextC"); -sed("comingNextC/index.html", 'var panelNum = 0;', 'var panelNum = 2;'); -sed("comingNextC/Info.plist", 'DisplayName<\/key>(\s*?)Coming Next (.*?)<\/string>', 'DisplayName<\/key>$1Coming Next C $2<\/string>'); -sed("comingNextC/Info.plist", 'Identifier<\/key>(\s*?)(.*?)<\/string>', 'Identifier<\/key>$1$2c<\/string>'); - -# package release -my $zip = Archive::Zip->new(); -$zip->addTree("ComingNext", "ComingNext"); -$zip->writeToFileNamed("comingNext.wgz"); - -$zip = Archive::Zip->new(); -$zip->addTree("ComingNextB", "ComingNextB"); -$zip->writeToFileNamed("comingNextB.wgz"); - -$zip = Archive::Zip->new(); -$zip->addTree("ComingNextC", "ComingNextC"); -$zip->writeToFileNamed("comingNextC.wgz"); - -$zip = Archive::Zip->new(); -$zip->addFile("comingNext.wgz"); -$zip->addFile("comingNextB.wgz"); -$zip->addFile("comingNextC.wgz"); -$zip->addFile("Readme.txt"); -$zip->addFile("License.txt"); -$zip->addFile("ComingNext_SkinFetcher_v1.3.sisx"); -$zip->writeToFileNamed("comingNext_v$version.zip"); - -######################################### - -my $copy_source; -my $copy_target; -sub copyrecursive { - my ($source, $target) = @_; - $copy_source = $source; - $copy_target = $target; - find({ wanted => \©_files, follow => 1, no_chdir => 1 }, $copy_source ); -} -sub copy_files { - my $targetdir = $File::Find::dir; - $targetdir =~ s/^$copy_source/$copy_target/o; - mkpath( $targetdir ) if not -e $targetdir; - my $targetfile = $File::Find::name; - $targetfile =~ s/^$copy_source/$copy_target/o; - copy($File::Find::name, $targetfile); -} - -######################################### - -sub sed { - my ($filename, $search, $replace) = @_; - system("perl -p -i.bak -e \"s/$search/$replace/;\" $filename"); - unlink <$filename.bak>; +#!/usr/bin/perl + +my $version = "1.37"; + +use warnings; +use strict; +use File::Copy; +use File::Find; +use File::Path; +use Archive::Zip qw( :ERROR_CODES ); + +# cleanup +unlink <*.wgz>; +unlink <*.zip>; +rmtree("comingNextB"); +rmtree("comingNextC"); + +# update version info +sed("comingNext/index.html", 'var version = \"(.*?)\";', 'var version = \"'.$version.'\";'); +sed("comingNext/Info.plist", 'DisplayName<\/key>(\s*?)ComingNext (.*?)<\/string>', 'DisplayName<\/key>$1ComingNext '.$version.'<\/string>'); +sed("comingNext/Info.plist", 'Version<\/key>(\s*?)(.*?)<\/string>', 'Version<\/key>$1'.$version.'<\/string>'); + +# add additional widget +copyrecursive("comingNext", "comingNextB"); +sed("comingNextB/index.html", 'var panelNum = 0;', 'var panelNum = 1;'); +sed("comingNextB/Info.plist", 'DisplayName<\/key>(\s*?)ComingNext (.*?)<\/string>', 'DisplayName<\/key>$1ComingNext B $2<\/string>'); +sed("comingNextB/Info.plist", 'Identifier<\/key>(\s*?)(.*?)<\/string>', 'Identifier<\/key>$1$2b<\/string>'); + +# add additional widget +copyrecursive("comingNext", "comingNextC"); +sed("comingNextC/index.html", 'var panelNum = 0;', 'var panelNum = 2;'); +sed("comingNextC/Info.plist", 'DisplayName<\/key>(\s*?)ComingNext (.*?)<\/string>', 'DisplayName<\/key>$1ComingNext C $2<\/string>'); +sed("comingNextC/Info.plist", 'Identifier<\/key>(\s*?)(.*?)<\/string>', 'Identifier<\/key>$1$2c<\/string>'); + +# package release +my $zip = Archive::Zip->new(); +$zip->addTree("comingNext", "comingNext"); +$zip->writeToFileNamed("comingNext.wgz"); + +$zip = Archive::Zip->new(); +$zip->addTree("comingNextB", "comingNextB"); +$zip->writeToFileNamed("comingNextB.wgz"); + +$zip = Archive::Zip->new(); +$zip->addTree("comingNextC", "comingNextC"); +$zip->writeToFileNamed("comingNextC.wgz"); + +$zip = Archive::Zip->new(); +$zip->addFile("comingNext.wgz"); +$zip->addFile("comingNextB.wgz"); +$zip->addFile("comingNextC.wgz"); +$zip->addFile("Readme.txt"); +$zip->addFile("License.txt"); +$zip->addFile("ComingNext_SkinFetcher_v1.6.sisx"); +$zip->writeToFileNamed("comingNext_v$version.zip"); + +######################################### + +my $copy_source; +my $copy_target; +sub copyrecursive { + my ($source, $target) = @_; + $copy_source = $source; + $copy_target = $target; + find({ wanted => \©_files, follow => 1, no_chdir => 1 }, $copy_source ); +} +sub copy_files { + my $targetdir = $File::Find::dir; + $targetdir =~ s/^$copy_source/$copy_target/o; + mkpath( $targetdir, 1 ) if not -d $targetdir; + return if -d $File::Find::name; + my $targetfile = $File::Find::name; + $targetfile =~ s/^$copy_source/$copy_target/o; + print "copy $targetfile\n"; + copy($File::Find::name, $targetfile); +} + +######################################### + +sub sed { + my ($filename, $search, $replace) = @_; + my $delim = $^O eq "MSWin32" ? "\"" : "'"; + system("perl -p -i.bak -e ".$delim."s/$search/$replace/;".$delim." $filename"); + unlink <$filename.bak>; } \ No newline at end of file