Re: [perl #21261] B::Terse not outputting correct constants or variable names
[p5sagit/p5-mst-13.2.git] / ext / Errno / Errno_pm.PL
index eafbd67..41560d5 100644 (file)
@@ -13,10 +13,6 @@ select OUT;
 my $file;
 foreach $file (get_files()) {
     process_file($file);
-    if ($^O eq 'MSWin32') {
-      $file =~ s/errno/winsock/;
-      process_file($file);
-    }
 }
 write_errno_pm();
 unlink "errno.c" if -f "errno.c";
@@ -123,14 +119,21 @@ sub get_files {
        # hidden in a special place
        $file{'/boot/develop/headers/posix/errno.h'} = 1;
 
+    } elsif ($^O eq 'vos') {
+       # avoid problem where cpp returns non-POSIX pathnames
+       $file{'/system/include_library/errno.h'} = 1;
     } else {
        open(CPPI,"> errno.c") or
            die "Cannot open errno.c";
 
        if ($^O eq 'NetWare') {
-               print CPPI "#include <nwerrno.h>\n";
+           print CPPI "#include <nwerrno.h>\n";
        } else {
-               print CPPI "#include <errno.h>\n";
+           print CPPI "#include <errno.h>\n";
+           if ($^O eq 'MSWin32') {
+               print CPPI "#define _WINSOCKAPI_\n"; # don't drag in everything
+               print CPPI "#include <winsock.h>\n";
+           }
        }
 
        close(CPPI);
@@ -284,6 +287,7 @@ use strict;
        die "Errno architecture ($Config{'archname'}-$Config{'osvers'}) does not match executable architecture (\$Config{'archname'}-\$Config{'osvers'})";
 
 \$VERSION = "$VERSION";
+\$VERSION = eval \$VERSION;
 \@ISA = qw(Exporter);
 
 EDQ