home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Editores / Perl5 / perl / lib / site / Tk / MMtry.pm < prev    next >
Encoding:
Perl POD Document  |  1997-08-10  |  950 b   |  42 lines

  1. # Copyright (c) 1995-1997 Nick Ing-Simmons. All rights reserved.
  2. # This program is free software; you can redistribute it and/or
  3. # modify it under the same terms as Perl itself.
  4. package Tk::MMtry;
  5. use Config;
  6. require Exporter;
  7. @ISA = qw(Exporter);
  8. @EXPORT = qw(try_compile try_run);
  9. use strict;
  10. use File::Basename;
  11.  
  12. my $stderr_too = ($^O eq 'MSWin32') ? '' : '2>&1';
  13.  
  14. sub try_compile
  15. {
  16.  my $file  = shift;
  17.  my $out   = basename($file,'.c').$Config{'exe_ext'};
  18.  warn "Test Compiling $file\n";
  19.  my $msgs  = `$Config{'cc'} -o $out $Config{'ccflags'} $file $stderr_too`;
  20.  my $ok = ($? == 0);
  21.  unlink($out) if (-f $out);
  22.  return $ok;
  23. }
  24.  
  25. sub try_run
  26. {
  27.  my $file  = shift;
  28.  my $out   = basename($file,'.c').$Config{'exe_ext'};
  29.  warn "Test Compiling $file\n";
  30.  my $msgs  = `$Config{'cc'} -o $out $Config{'ccflags'} $file $stderr_too`;
  31.  my $ok = ($? == 0);
  32.  if ($ok)
  33.   {
  34.    system($out);
  35.    $ok = ($? == 0);
  36.   }
  37.  unlink($out) if (-f $out);
  38.  return $ok;
  39. }
  40.  
  41. 1;
  42.