]> code.delx.au - comingnext/blobdiff - build.pl
Work around for bug by fixing the current Date rather than amending calendar dates
[comingnext] / build.pl
old mode 100644 (file)
new mode 100755 (executable)
index f06477e..cb54aa5
--- a/build.pl
+++ b/build.pl
@@ -1,82 +1,85 @@
-#!/usr/bin/perl\r
-\r
-my $version = "1.30";\r
-\r
-use warnings;\r
-use strict;\r
-use File::Copy;\r
-use File::Find;\r
-use File::Path;\r
-use Archive::Zip qw( :ERROR_CODES );\r
-\r
-# cleanup\r
-unlink <*.wgz>;\r
-unlink <*.zip>;\r
-rmtree("ComingNextB");\r
-rmtree("ComingNextC");\r
-\r
-# update version info\r
-sed("comingNext/index.html", 'var version = \"(.*?)\";', 'var version = \"'.$version.'\";');\r
-sed("comingNext/Info.plist", '<key>DisplayName<\/key>(\s*?)<string>ComingNext (.*?)<\/string>', '<key>DisplayName<\/key>$1<string>ComingNext '.$version.'<\/string>');\r
-sed("comingNext/Info.plist", '<key>Version<\/key>(\s*?)<string>(.*?)<\/string>', '<key>Version<\/key>$1<string>'.$version.'<\/string>');\r
-\r
-# add additional widget\r
-copyrecursive("comingNext", "comingNextB");\r
-sed("comingNextB/index.html", 'var panelNum = 0;', 'var panelNum = 1;');\r
-sed("comingNextB/Info.plist", '<key>DisplayName<\/key>(\s*?)<string>ComingNext (.*?)<\/string>', '<key>DisplayName<\/key>$1<string>ComingNext B $2<\/string>');\r
-sed("comingNextB/Info.plist", '<key>Identifier<\/key>(\s*?)<string>(.*?)<\/string>', '<key>Identifier<\/key>$1<string>$2b<\/string>');\r
-\r
-# add additional widget\r
-copyrecursive("comingNext", "comingNextC");\r
-sed("comingNextC/index.html", 'var panelNum = 0;', 'var panelNum = 2;');\r
-sed("comingNextC/Info.plist", '<key>DisplayName<\/key>(\s*?)<string>ComingNext (.*?)<\/string>', '<key>DisplayName<\/key>$1<string>ComingNext C $2<\/string>');\r
-sed("comingNextC/Info.plist", '<key>Identifier<\/key>(\s*?)<string>(.*?)<\/string>', '<key>Identifier<\/key>$1<string>$2c<\/string>');\r
-\r
-# package release\r
-my $zip = Archive::Zip->new();\r
-$zip->addTree("ComingNext", "ComingNext");\r
-$zip->writeToFileNamed("comingNext.wgz");\r
-\r
-$zip = Archive::Zip->new();\r
-$zip->addTree("ComingNextB", "ComingNextB");\r
-$zip->writeToFileNamed("comingNextB.wgz");\r
-\r
-$zip = Archive::Zip->new();\r
-$zip->addTree("ComingNextC", "ComingNextC");\r
-$zip->writeToFileNamed("comingNextC.wgz");\r
-\r
-$zip = Archive::Zip->new();\r
-$zip->addFile("comingNext.wgz");\r
-$zip->addFile("comingNextB.wgz");\r
-$zip->addFile("comingNextC.wgz");\r
-$zip->addFile("Readme.txt");\r
-$zip->addFile("License.txt");\r
-$zip->addFile("ComingNext_SkinFetcher_v1.3.sisx");\r
-$zip->writeToFileNamed("comingNext_v$version.zip");\r
-\r
-#########################################\r
-\r
-my $copy_source;\r
-my $copy_target;\r
-sub copyrecursive {\r
-       my ($source, $target) = @_;\r
-       $copy_source = $source;\r
-       $copy_target = $target;\r
-       find({ wanted => \&copy_files, follow => 1, no_chdir => 1 }, $copy_source );\r
-}\r
-sub copy_files {\r
-       my $targetdir = $File::Find::dir;\r
-       $targetdir =~ s/^$copy_source/$copy_target/o;\r
-       mkpath( $targetdir ) if not -e $targetdir;\r
-       my $targetfile = $File::Find::name;\r
-       $targetfile =~ s/^$copy_source/$copy_target/o;\r
-       copy($File::Find::name, $targetfile);\r
-}\r
-\r
-#########################################\r
-\r
-sub sed {\r
-       my ($filename, $search, $replace) = @_;\r
-       system("perl -p -i.bak -e \"s/$search/$replace/;\" $filename");\r
-       unlink <$filename.bak>;\r
+#!/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", '<key>DisplayName<\/key>(\s*?)<string>ComingNext (.*?)<\/string>', '<key>DisplayName<\/key>$1<string>ComingNext '.$version.'<\/string>');
+sed("comingNext/Info.plist", '<key>Version<\/key>(\s*?)<string>(.*?)<\/string>', '<key>Version<\/key>$1<string>'.$version.'<\/string>');
+
+# add additional widget
+copyrecursive("comingNext", "comingNextB");
+sed("comingNextB/index.html", 'var panelNum = 0;', 'var panelNum = 1;');
+sed("comingNextB/Info.plist", '<key>DisplayName<\/key>(\s*?)<string>ComingNext (.*?)<\/string>', '<key>DisplayName<\/key>$1<string>ComingNext B $2<\/string>');
+sed("comingNextB/Info.plist", '<key>Identifier<\/key>(\s*?)<string>(.*?)<\/string>', '<key>Identifier<\/key>$1<string>$2b<\/string>');
+
+# add additional widget
+copyrecursive("comingNext", "comingNextC");
+sed("comingNextC/index.html", 'var panelNum = 0;', 'var panelNum = 2;');
+sed("comingNextC/Info.plist", '<key>DisplayName<\/key>(\s*?)<string>ComingNext (.*?)<\/string>', '<key>DisplayName<\/key>$1<string>ComingNext C $2<\/string>');
+sed("comingNextC/Info.plist", '<key>Identifier<\/key>(\s*?)<string>(.*?)<\/string>', '<key>Identifier<\/key>$1<string>$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 => \&copy_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