diff options
Diffstat (limited to 'ACE/bin/PerlACE/TestTarget_VxWorks.pm')
-rw-r--r-- | ACE/bin/PerlACE/TestTarget_VxWorks.pm | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/ACE/bin/PerlACE/TestTarget_VxWorks.pm b/ACE/bin/PerlACE/TestTarget_VxWorks.pm new file mode 100644 index 00000000000..6d42aa5c555 --- /dev/null +++ b/ACE/bin/PerlACE/TestTarget_VxWorks.pm @@ -0,0 +1,93 @@ +#! /usr/bin/perl + +package PerlACE::TestTarget_VxWorks; + +# ****************************************************************** +# Description : Creates a PerlACE::ProcessVX +# Author : Chad Elliott +# Create Date : 6/20/2008 +# $Id$ +# ****************************************************************** + +# ****************************************************************** +# Pragma Section +# ****************************************************************** +use PerlACE::TestTarget; + +use strict; + +use PerlACE::ProcessVX; +use Cwd; +use English; + +our @ISA = qw(PerlACE::TestTarget); + +# ****************************************************************** +# Subroutine Section +# ****************************************************************** + +sub LocalFile { + my($self, $file) = @_; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "LocalFile is $file\n"; + } + return $file; +} + +sub AddLibPath ($) { + my $self = shift; + my $dir = shift; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "Adding libpath $dir\n"; + } + PerlACE::add_lib_path ($dir); +} + +sub CreateProcess { + my $self = shift; + my $process = new PerlACE::ProcessVX (@_); + $process->{TARGET} = $self; + return $process; +} + +# Need a reboot when this target is destroyed. +sub NeedReboot ($) +{ + my $self = shift; + $self->{REBOOT_NEEDED} = 1; +} + +# Reboot target +sub RebootNow ($) +{ + my $self = shift; + $self->{REBOOT_NEEDED} = undef; + print STDERR "Attempting to reboot target...\n"; + reboot (); +} + +sub WaitForFileTimed ($) +{ + my $self = shift; + my $file = shift; + my $timeout = shift; + my $cwdrel = $file; + my $prjroot = defined $ENV{'ACE_RUN_VX_PRJ_ROOT'} ? $ENV{'ACE_RUN_VX_PRJ_ROOT'} : $ENV{'ACE_ROOT'}; + if (length ($cwdrel) > 0) { + $cwdrel = File::Spec->abs2rel( cwd(), $prjroot ); + } + else { + $cwdrel = File::Spec->abs2rel( $cwdrel, $prjroot ); + } + my $newfile = $self->{HOST_ROOT} . "/" . $cwdrel . "/" . $file; + return PerlACE::waitforfile_timed ($newfile, $timeout); +} + +sub KillAll ($) +{ + my $self = shift; + my $procmask = shift; + PerlACE::ProcessVX::kill_all ($procmask, $self); +} + +1; |