#!/usr/bin/perl umask 022; my $PROGNAME = $0; $PROGNAME =~ s|.*/||; sub fatal { foreach my $msg (@_) { print STDERR "[$PROGNAME] ERROR: $msg\n"; } unlink('Documentation.html'); unlink('License.txt'); exit(-1); } my $VERSION = shift @ARGV || fatal("No version supplied?"); my $ver_dir = 'album.versions'; print "Tarring/Zipping album version [$VERSION]\n"; symlink('/WWW/web/MarginalHacks.com/Hacks/album/Chapters/Documentation/Section_1.html', 'Documentation.html') || fatal("Couldn't link Documentation"); symlink('/WWW/web/MarginalHacks.com/Hacks/album/License.txt','License.txt') || fatal("Couldn't link License"); my @files = qw(album album.1 Documentation.html License.txt); my $tar = "$ver_dir/album-${VERSION}.tar.gz"; my $zip = "$ver_dir/album-${VERSION}.zip"; # Tar unlink($tar); system("tar hczf $tar @files"); fatal("Couldn't tar $tar") if $?; chmod 0644, $tar; # Zip unlink($zip); system("zip -q $zip @files"); fatal("Couldn't zip $zip") if $?; chmod 0644, $zip; # Update current links unlink("album.tar.gz"); symlink($tar,"album.tar.gz") || fatal("Couldn't link album.tar.gz"); unlink("album.zip"); symlink($zip,"album.zip") || fatal("Couldn't link album.zip"); unlink('Documentation.html') || fatal("Couldn't unlink Documentation"); unlink('License.txt') || fatal("Couldn't unlink License");