Home | History | Annotate | Download | only in bin
      1 #!/usr/bin/perl
      2 #
      3 # Licensed to the Apache Software Foundation (ASF) under one or more
      4 #  contributor license agreements.  See the NOTICE file distributed with
      5 #  this work for additional information regarding copyright ownership.
      6 #  The ASF licenses this file to You under the Apache License, Version 2.0
      7 #  (the "License"); you may not use this file except in compliance with
      8 #  the License.  You may obtain a copy of the License at
      9 #
     10 #      http://www.apache.org/licenses/LICENSE-2.0
     11 #
     12 #  Unless required by applicable law or agreed to in writing, software
     13 #  distributed under the License is distributed on an "AS IS" BASIS,
     14 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15 #  See the License for the specific language governing permissions and
     16 #  limitations under the License.
     17 #
     18 #######################################################################
     19 #
     20 # antRun.pl
     21 #
     22 # wrapper script for invoking commands on a platform with Perl installed
     23 # this is akin to antRun.bat, and antRun the SH script 
     24 #
     25 # created:         2001-10-18
     26 # author:          Jeff Tulley jtulley (at] novell.com 
     27 #######################################################################
     28 #be fussy about variables
     29 use strict;
     30 
     31 #turn warnings on during dev; generates a few spurious uninitialised var access warnings
     32 #use warnings;
     33 
     34 #and set $debug to 1 to turn on trace info (currently unused)
     35 my $debug=1;
     36 
     37 #######################################################################
     38 # change drive and directory to "%1"
     39 my $ANT_RUN_CMD = @ARGV[0];
     40 
     41 # assign current run command to "%2"
     42 chdir (@ARGV[0]) || die "Can't cd to $ARGV[0]: $!\n";
     43 if ($^O eq "NetWare") {
     44     # There is a bug in Perl 5 on NetWare, where chdir does not
     45     # do anything.  On NetWare, the following path-prefixed form should 
     46     # always work. (afaict)
     47     $ANT_RUN_CMD .= "/".@ARGV[1];
     48 }
     49 else {
     50     $ANT_RUN_CMD = @ARGV[1];
     51 }
     52 
     53 # dispose of the first two arguments, leaving only the command's args.
     54 shift;
     55 shift;
     56 
     57 # run the command
     58 my $returnValue = system $ANT_RUN_CMD, @ARGV;
     59 if ($returnValue eq 0) {
     60     exit 0;
     61 }
     62 else {
     63     # only 0 and 1 are widely recognized as exit values
     64     # so change the exit value to 1
     65     exit 1;
     66 }
     67