The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/local/bin/perl -w

# Simple test to just load the F77.pm module

use strict;
use vars qw/$loaded/;

BEGIN { $| = 1; print "1..2\n"; }
END {print "not ok 1\n" unless $loaded;}
use ExtUtils::F77;
$loaded = 1;
print "ok 1\n";

# try compiling ?

open(FH,">hello.f");
print FH "
      subroutine hello_fortran
      print *, 'Hello from the wonderful world of fortran'
c     $ExtUtils::F77::Compiler $ExtUtils::F77::Cflags $ExtUtils::F77::Runtime
      return
      end
";

close FH;
unlink "hello.o" if(-e "hello.o");
my $compile_command = "$ExtUtils::F77::Compiler  $ExtUtils::F77::Cflags -c hello.f ";
my $rc = system($compile_command);
$rc = 0xffff & $rc;
if($rc){
  if($rc == 0xff00){
	 print "2  ERROR: $compile_command failed: $!";
  }elsif ($rc > 0x80) {
	 $rc >>= 8;
	 print "2  WARNING: $compile_command returned non-zero exit status $rc\n";
  }else{
	 if($rc & 0x80){
		print "2  $compile_command coredumped from signal $rc";
	 }else{
		print "2  $compile_command returned signal $rc";
	 }
  }  
}else{
  unlink "hello.f","hello.o";
  print "ok 2\n" 
}

# how about linking - too complicated?