patches for perl 5.005_51 under U/WIN
Joe Buehler [Sat, 29 Aug 1998 17:13:28 +0000 (13:13 -0400)]
Message-ID: <yd37lzro5jb.fsf@pandora.hekimian.com>

p4raw-id: //depot/perl@1823

Configure
hints/uwin.sh [new file with mode: 0644]
installman
lib/ExtUtils/MM_Unix.pm
makedepend.SH
t/lib/posix.t

index bc5c59d..9a11052 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1968,6 +1968,12 @@ EOM
                        osvers="$2.$3"
                fi
        fi
+       $test -f /sys/posix.dll &&
+               $test -f /usr/bin/what &&
+               set X `/usr/bin/what /sys/posix.dll` &&
+               $test "$3" = UWIN &&
+               osname=uwin &&
+               osvers="$5"
        if $test -f $uname; then
                set X $myuname
                shift
diff --git a/hints/uwin.sh b/hints/uwin.sh
new file mode 100644 (file)
index 0000000..0e5e11a
--- /dev/null
@@ -0,0 +1,36 @@
+#
+# hint file for U/WIN (UNIX for Windows 95/NT)
+#
+# created for U/WIN version 1.55
+# running under Windows NT 4.0 SP 3
+# using MSVC++ 5.0 for the compiler
+#
+# created by Joe Buehler (jbuehler@hekimian.com)
+#
+# for information about U/WIN see www.gtlinc.com
+#
+
+#ccflags=-D_BSDCOMPAT
+# confusion in Configure over preprocessor
+cppstdin=`pwd`/cppstdin
+cpprun=`pwd`/cppstdin
+# pwd.h confuses Configure
+d_pwcomment=undef
+d_pwgecos=define
+# work around case-insensitive file names
+firstmakefile=GNUmakefile
+# avoid compilation error
+i_utime=undef
+# compile/link flags
+ldflags=-g
+optimize=-g
+static_ext="B Data/Dumper Fcntl IO IPC/SysV Opcode POSIX SDBM_File Socket attrs"
+#static_ext=none
+# dynamic loading needs work
+usedl=undef
+# perl malloc will not work
+usemymalloc=n
+# cannot use nm
+usenm=undef
+# vfork() is buggy (as of 1.55 anyway)
+usevfork=false
index e637720..6fa4231 100755 (executable)
@@ -134,7 +134,7 @@ sub runpod2man {
        # Convert name from  File/Basename.pm to File::Basename.3 format,
        # if necessary.
        $manpage =~ s#\.p(m|od)$##;
-       if ($^O eq 'os2' || $^O eq 'amigaos') {
+       if ($^O eq 'os2' || $^O eq 'amigaos' || $^O eq 'uwin') {
          $manpage =~ s#/#.#g;
        } else {
          $manpage =~ s#/#::#g;
index 9a96504..e979f7a 100644 (file)
@@ -2943,7 +2943,11 @@ form Foo/Bar and replaces the slash with C<::>. Returns the replacement.
 
 sub replace_manpage_separator {
     my($self,$man) = @_;
-    $man =~ s,/+,::,g;
+       if ($^O eq 'uwin') {
+               $man =~ s,/+,.,g;
+       } else {
+               $man =~ s,/+,::,g;
+       }
     $man;
 }
 
index efc12b0..74c3ecb 100755 (executable)
@@ -98,6 +98,11 @@ $MAKE clist || ($echo "Searching for .c files..."; \
        $echo *.c | $tr ' ' $trnl | $egrep -v '\*' >.clist)
 for file in `$cat .clist`; do
 # for file in `cat /dev/null`; do
+       if [ "$osname" = uwin ]; then
+               uwinfix="-e s,\\\\\\\\,/,g -e s,\\([a-zA-Z]\\):/,/\\1/,g"
+       else
+               uwinfix=
+       fi
     case "$file" in
     *.c) filebase=`basename $file .c` ;;
     *.y) filebase=`basename $file .y` ;;
@@ -126,7 +131,7 @@ for file in `$cat .clist`; do
        -e 's/^.*"\(.*\)".*$/'$filebase'\$(OBJ_EXT): \1/' \
        -e 's/^# *[0-9][0-9]* \(.*\)$/'$filebase'\$(OBJ_EXT): \1/' \
        -e 's|: \./|: |' \
-       -e 's|\.c\.c|.c|' | \
+       -e 's|\.c\.c|.c|' $uwinfix | \
     $uniq | $sort | $uniq >> .deptmp
 done
 
index 8dafc80..4f5ee19 100755 (executable)
@@ -97,5 +97,5 @@ print POSIX::strftime("ok 18 # %H:%M, on %D\n", localtime());
 
 $| = 0;
 # The following line assumes buffered output, which may be not true with EMX:
-print '@#!*$@(!@#$' unless $^O eq 'os2';
+print '@#!*$@(!@#$' unless ($^O eq 'os2' || $^O eq 'uwin');
 _exit(0);