-#!/usr/bin/perl
+#!/usr/bin/env perl
=comment
###################################################
-use vars qw($VERSION); $VERSION = 'REL_0.1';
+our $VERSION = 'REL_0.1';
use strict;
use warnings;
use File::Basename;
use File::Temp;
use File::Spec;
+use FindBin qw'$Bin';
use IO::Handle;
use POSIX qw(:signal_h strftime);
use Data::Dumper;
exec $1, @ARGV;
}
+die "$0: please use an umask of 022\n"
+ if umask > 022;
my %module_hooks;
my $orig_dir = getcwd();
# process config file
#
require $buildconf;
+#use Data::Dumper;
+#die Dumper \%EximBuild::conf;
+
+# some basic checks
+die "$0: need read/write permissions on '$EximBuild::conf{global_lock_dir}': $!\n"
+ if not -r -w $EximBuild::conf{global_lock_dir};
+
+# Does not seem to be necessary
+#die "$0: permissions on '$EximBuild::conf{build_root}' should be >= 0775\n"
+# if -d $EximBuild::conf{build_root}
+# and ((stat $EximBuild::conf{build_root})[2] & 0775) != 0775;
+
# get the config data into some local variables
my (
orig_env => $orig_env,
};
delete $conf->{secret};
+
+ if ($conf->{scm} eq 'git') {
+ chomp($conf->{farm}{revision} = `git -C $Bin describe --tags --always --dirty=+`);
+ $conf->{farm}{cwd} = getcwd();
+ $conf->{farm}{bindir} = $Bin;
+ }
+
$Data::Dumper::Sortkeys = 1;
return Data::Dumper->Dump([$conf],['Script_Config']);
}