#!/usr/bin/env perl eval '(exit $?0)' && eval 'exec perl -w -S $0 ${1+"$@"}' & eval 'exec perl -w -S $0 $argv:q' if 0; # ****************************************************************** # Author: Chad Elliott # Date: 6/17/2002 # ****************************************************************** # ****************************************************************** # Pragma Section # ****************************************************************** require 5.006; use strict; use FindBin; use File::Spec; use File::Basename; ## Sometimes $FindBin::RealBin will end up undefined. If it is, we need ## to use the directory of the built-in script name. And, for VMS, we ## have to convert that into a UNIX path so that Perl can use it ## internally. my $basePath = (defined $FindBin::RealBin && $FindBin::RealBin ne '' ? $FindBin::RealBin : File::Spec->rel2abs(dirname($0))); $basePath = VMS::Filespec::unixify($basePath) if ($^O eq 'VMS'); ## Add the full path to the MPC modules to the Perl include path my $mpcpath = $basePath; unshift(@INC, $mpcpath . '/modules'); ## If the ACE_ROOT environment variable is defined and this version of ## MPC is located inside the directory to which ACE_ROOT points, we will ## assume that the user wanted the ACE specific version of this script. ## We will change the $basePath to what it would have been had the user ## run this script out of $ACE_ROOT/bin. my $aceroot = $ENV{ACE_ROOT}; $aceroot =~ s!\\!/!g if (defined $aceroot); $basePath = $aceroot . '/bin/MakeProjectCreator' if (defined $aceroot && $aceroot eq dirname($basePath)); require Driver; # ************************************************************ # Subroutine Section # ************************************************************ sub getBasePath { return $mpcpath; } # ************************************************************ # Main Section # ************************************************************ my $driver = new Driver($basePath, Driver::projects()); exit($driver->run(@ARGV));