Remove the "Newline in left-justified string" warning.
[p5sagit/p5-mst-13.2.git] / t / lib / 1_compile.t
index 921aa6f..ecbafde 100644 (file)
@@ -11,15 +11,22 @@ BEGIN {
 
 use strict;
 use warnings;
+use File::Spec::Functions;
 
 # Okay, this is the list.
 
 my @Core_Modules = grep /\S/, <DATA>;
 chomp @Core_Modules;
 
-# Two Net:: modules need the Convert::EBCDIC if in EBDCIC.
-if (ord("A") != 193 || eval { require Convert::EBCDIC }) {
-    push @Core_Modules, qw(Net::Cmd Net::POP3);
+if (eval { require Socket }) {
+  push @Core_Modules, qw(Net::Domain);
+  # Two Net:: modules need the Convert::EBCDIC if in EBDCIC.
+  if (ord("A") != 193 || eval { require Convert::EBCDIC }) {
+      push @Core_Modules, qw(Net::Cmd Net::POP3);
+  }
+}
+if(eval { require B }) {
+  push @Core_Modules, qw(B::C B::CC B::Stackobj);
 }
 
 @Core_Modules = sort @Core_Modules;
@@ -37,8 +44,10 @@ if (@Core_Modules) {
 my $test_num = 2;
 
 foreach my $module (@Core_Modules) {
-    print "$module compile failed\nnot " unless compile_module($module);
-    print "ok $test_num\n";
+    my $todo = '';
+    $todo = "# TODO $module needs porting on $^O" if $module eq 'ByteLoader' && $^O eq 'VMS';
+    print "# $module compile failed\nnot " unless compile_module($module);
+    print "ok $test_num $todo\n";
     $test_num++;
 }
 
@@ -47,7 +56,10 @@ foreach my $module (@Core_Modules) {
 sub compile_module {
     my ($module) = $_[0];
 
-    my $out = scalar `$^X "-I../lib" lib/compmod.pl $module`;
+    my $compmod = catfile(curdir(), 'lib', 'compmod.pl');
+    my $lib     = '-I' . catdir(updir(), 'lib');
+
+    my $out = scalar `$^X $lib $compmod $module`;
     print "# $out";
     return $out =~ /^ok/;
 }
@@ -57,18 +69,6 @@ sub compile_module {
 # http://www.pobox.com/~schwern/cgi-bin/perl-qa-wiki.cgi?UntestedModules
 # and vice-versa.  The list should only shrink.
 __DATA__
-B::CC
-B::Disassembler
-B::Stackobj
-ByteLoader
-CPAN
 CPAN::FirstTime
 DynaLoader
-ExtUtils::MM_NW5
-ExtUtils::Install
-ExtUtils::Liblist
-ExtUtils::Mksymlists
-Net::Domain
-O
 Pod::Plainer
-Test::Harness::Iterator