From be7ecb773258b487af19accadb1fa2c0252b1679 Mon Sep 17 00:00:00 2001 From: Peter Donald Date: Thu, 15 Nov 2001 08:00:09 +0000 Subject: [PATCH] A perl script to make it easier to get Execute to run under netware. Submitted by: "Jeff Tulley" git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269915 13f79535-47bb-0310-9956-ffa450edef68 --- src/script/antRun.pl | 51 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 src/script/antRun.pl diff --git a/src/script/antRun.pl b/src/script/antRun.pl new file mode 100644 index 000000000..649d9e5eb --- /dev/null +++ b/src/script/antRun.pl @@ -0,0 +1,51 @@ +#!/usr/bin/perl +####################################################################### +# +# antRun.pl +# +# wrapper script for invoking commands on a platform with Perl installed +# this is akin to antRun.bat, and antRun the SH script +# +# created: 2001-10-18 +# last modified: 2001-11-13 +# author: Jeff Tulley jtulley@novell.com +####################################################################### +#be fussy about variables +use strict; + +#turn warnings on during dev; generates a few spurious uninitialised var access warnings +#use warnings; + +#and set $debug to 1 to turn on trace info (currently unused) +my $debug=1; + +####################################################################### +# change drive and directory to "%1" +my $ANT_RUN_CMD = @ARGV[0]; + +# assign current run command to "%2" +chdir (@ARGV[0]) || die "Can't cd to $ARGV[0]: $!\n"; +if ($^O eq "NetWare") { + # There is a bug in Perl 5 on NetWare, where chdir does not + # do anything. On NetWare, the following path-prefixed form should + # always work. (afaict) + $ANT_RUN_CMD .= "/".@ARGV[1]; +} +else { + $ANT_RUN_CMD = @ARGV[1]; +} + +# dispose of the first two arguments, leaving only the command's args. +shift; +shift; + +# run the command +my $returnValue = system $ANT_RUN_CMD, @ARGV; +if ($returnValue eq 0) { + exit 0; +} +else { + # only 0 and 1 are widely recognized as exit values + # so change the exit value to 1 + exit 1; +}