MPE/iX fixes from Mark Bixby (a Configure fix is also needed.)
Jarkko Hietaniemi [Wed, 20 Jun 2001 14:00:23 +0000 (14:00 +0000)]
p4raw-id: //depot/perl@10752

ext/Filter/t/call.t
ext/IO/lib/IO/t/io_sock.t
hints/mpeix.sh
lib/File/Temp/security.t
lib/FileHandle.t
mpeix/mpeixish.h
mpeix/relink
t/op/pwent.t

index dc667c9..0c086ab 100644 (file)
@@ -50,7 +50,7 @@ sub import { filter_add(bless []) }
 EOM
  
 my $a = `$Perl "-I." $Inc -e "use ${module} ;"  2>&1` ;
-ok(1, (($? >>8) != 0 or (($^O eq 'MSWin32' || $^O eq 'NetWare') && $? != 0))) ;
+ok(1, (($? >>8) != 0 or (($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'mpeix') && $? != 0))) ;
 ok(2, $a =~ /^Can't locate object method "filter" via package "MyTest"/) ;
  
 # no reference parameter in filter_add
@@ -67,7 +67,7 @@ sub import { filter_add() }
 EOM
  
 $a = `$Perl "-I." $Inc -e "use ${module} ;"  2>&1` ;
-ok(3, (($? >>8) != 0 or (($^O eq 'MSWin32' || $^O eq 'NetWare') && $? != 0))) ;
+ok(3, (($? >>8) != 0 or (($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'mpeix') && $? != 0))) ;
 #ok(4, $a =~ /^usage: filter_add\(ref\) at ${module}.pm/) ;
 ok(4, $a =~ /^Not enough arguments for Filter::Util::Call::filter_add/) ;
  
index b752fd8..1c9bcc7 100755 (executable)
@@ -270,6 +270,9 @@ if( $server_pid) {
     ### a recv(2) call on the socket, while ungetc(3) put back a character
     ### to an IO buffer, which never again was read.
     #
+    if ($^O eq 'mpeix') {
+       print "ok 19 # skipped: broken on MPE/iX\n";
+    } else {
     $sock = IO::Socket::INET->new("localhost:$serverport")
          || IO::Socket::INET->new("127.0.0.1:$serverport");
 
@@ -292,6 +295,7 @@ if( $server_pid) {
        print "not ";
     }
     print "ok 19\n";
+    }
 
     ### TEST 20
     ### Stop the server
index f6fd44c..6b4b877 100644 (file)
@@ -23,6 +23,10 @@ _nm=$nm
 nm_opt='-configperl'
 usenm='true'
 #
+# Work around the broken inline cat bug that corrupts here docs
+#
+alias -x cat=/bin/cat
+#
 # Various directory locations.
 #
 # Which ones of these does Configure get wrong?
@@ -43,7 +47,7 @@ startsh='#!/bin/sh'
 test -z "$cc" && cc='gcc'
 cccdlflags='none'
 ccflags="$ccflags -DMPE -D_POSIX_SOURCE -D_SOCKET_SOURCE -D_POSIX_JOB_CONTROL -DIS_SOCKET_CLIB_ITSELF"
-locincpth="$locincpth /usr/local/include /usr/contrib/include /BIND/PUB/include"
+locincpth="$locincpth /usr/local/include /usr/contrib/include /BINDFW/CURRENT/include /SYSLOG/PUB"
 test -z "$optimize" && optimize="-O2"
 ranlib='/bin/true'
 # Special compiling options for certain source files.
@@ -62,7 +66,7 @@ for mpe_remove in bind bsd BSD c curses m socket str svipc syslog; do
   libswanted="$*"
 done
 libswanted="$libswanted bind syslog curses svipc socket str m c"
-loclibpth="$loclibpth /usr/local/lib /usr/contrib/lib /BIND/PUB/lib /SYSLOG/PUB"
+loclibpth="$loclibpth /usr/local/lib /usr/contrib/lib /BINDFW/CURRENT/lib /SYSLOG/PUB"
 #
 # External functions and data items.
 #
@@ -83,10 +87,12 @@ loclibpth="$loclibpth /usr/local/lib /usr/contrib/lib /BIND/PUB/lib /SYSLOG/PUB"
 # Unix named functions that are really vanilla MPE functions that do something
 # completely different than on POSIX or Unix.
 d_crypt='define'
+d_dbmclose='undef'
 d_difftime='define'
 d_dlerror='undef'
 d_dlopen='undef'
 d_Gconvert='gcvt((x),(n),(b))'
+d_gettimeod='undef'
 d_inetaton='undef'
 d_link='undef'
 d_mblen='define'
@@ -101,6 +107,9 @@ d_pwage='undef'
 d_pwcomment='undef'
 d_pwgecos='undef'
 d_pwpasswd='undef'
+d_setegid='undef'
+d_seteuid='undef'
+d_setitimer='undef'
 d_setpgid='undef'
 d_setsid='undef'
 d_setvbuf='define'
@@ -120,6 +129,7 @@ d_wctomb='define'
 #
 # Include files.
 #
+i_gdbm='undef' # the port is currently incomplete
 i_termios='undef' # we have termios, but not the full set (just tcget/setattr)
 i_time='define'
 i_systime='undef'
index f9be237..7f557e3 100755 (executable)
@@ -27,7 +27,7 @@ ok(1);
 # The high security tests must currently be skipped on some platforms
 my $skipplat = ( (
                  # No sticky bits.
-                 $^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'os2' || $^O eq 'dos'
+                 $^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'os2' || $^O eq 'dos' || $^O eq 'mpeix'
                  ) ? 1 : 0 );
 
 # Can not run high security tests in perls before 5.6.0
index eaddf49..c994c8b 100755 (executable)
@@ -8,6 +8,10 @@ BEGIN {
        print "1..0\n";
        exit 0;
     }
+    if ($^O eq 'mpeix') {
+       print "1..0 # Skip: broken on MPE/iX\n";
+       exit 0;
+    }
 }
 
 use FileHandle;
index 8dba0a8..821d593 100644 (file)
 #undef PWAGE
 #undef PWCOMMENT
 
-#define ITIMER_REAL 0
+/* various missing external function declarations */
+
+#include <sys/ipc.h>
+extern key_t ftok (char *pathname, char id);
+extern char *gcvt (double value, int ndigit, char *buf);
+extern int isnan (double value);
+extern void srand48(long int seedval);
index a36e23c..073b707 100755 (executable)
@@ -8,6 +8,6 @@ gcc -o perl perlmain.o \
   lib/auto/DynaLoader/DynaLoader.a \
   libperl.a \
   `cat ext.libs` \
-  -L/BIND/PUB/lib -lbind \
+  -L/BINDFW/CURRENT/lib -lbind \
   -L/SYSLOG/PUB -lsyslog
 callci 'linkedit "altprog ./perl;xl=/usr/lib/libcurses.sl,/lib/libsvipc.sl,/usr/lib/libsocket.sl,/usr/lib/libstr.sl,/lib/libm.sl,/lib/libc.sl"'
index d811f06..01dbd24 100755 (executable)
@@ -3,7 +3,7 @@
 BEGIN {
     chdir 't' if -d 't';
     @INC = '../lib';
-    eval {my @n = getpwuid 0};
+    eval {my @n = getpwuid 0; setpwent()};
     if ($@ && $@ =~ /(The \w+ function is unimplemented)/) {
        print "1..0 # Skip: $1\n";
        exit 0;