diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index 2870daa..9af63d9 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -587,7 +587,7 @@
         test_winreg
         test_winsound
         """,
-    'unixware5':
+    'unixware7':
         """
         test_al
         test_bsddb
@@ -611,6 +611,63 @@
         test_winreg
         test_winsound
         """,
+    'openunix8':
+        """
+        test_al
+        test_bsddb
+        test_cd
+        test_cl
+        test_dl
+        test_gl
+        test_imgfile
+        test_largefile
+        test_linuxaudiodev
+        test_minidom
+        test_nis
+        test_ntpath
+        test_openpty
+        test_pyexpat
+        test_sax
+        test_socketserver
+        test_sunaudiodev
+        test_sundry
+        test_unicode_file
+        test_winreg
+        test_winsound
+        """,
+    'sco_sv3':
+        """
+        test_al
+        test_asynchat
+        test_bsddb
+        test_cd
+        test_cl
+        test_dl
+        test_fork1
+        test_gettext
+        test_gl
+        test_imgfile
+        test_largefile
+        test_linuxaudiodev
+        test_locale
+        test_minidom
+        test_nis
+        test_ntpath
+        test_openpty
+        test_pyexpat
+        test_queue
+        test_sax
+        test_socketserver
+        test_sunaudiodev
+        test_sundry
+        test_thread
+        test_threaded_import
+        test_threadedtempfile
+        test_threading
+        test_unicode_file
+        test_winreg
+        test_winsound
+        """,
     'riscos':
         """
         test_al
diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c
index 65f60f0..aab24cf 100644
--- a/Modules/_cursesmodule.c
+++ b/Modules/_cursesmodule.c
@@ -124,7 +124,7 @@
 #include <term.h>
 #endif
 
-#if !defined(HAVE_NCURSES_H) && (defined(sgi) || defined(__sun))
+#if !defined(HAVE_NCURSES_H) && (defined(sgi) || defined(__sun) || defined(SCO5))
 #define STRICT_SYSV_CURSES       /* Don't use ncurses extensions */
 typedef chtype attr_t;           /* No attr_t type is available */
 #endif
diff --git a/Modules/_hotshot.c b/Modules/_hotshot.c
index 1908a2d..37879b9 100644
--- a/Modules/_hotshot.c
+++ b/Modules/_hotshot.c
@@ -64,6 +64,8 @@
 #ifndef PATH_MAX
 #   ifdef MAX_PATH
 #       define PATH_MAX MAX_PATH
+#   elif defined (_POSIX_PATH_MAX)
+#       define PATH_MAX _POSIX_PATH_MAX
 #   else
 #       error "Need a defn. for PATH_MAX in _hotshot.c"
 #   endif
diff --git a/configure b/configure
index 62d66a1..9c995c3 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 1.347 .
+# From configure.in Revision: 1.348 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.53.
 #
@@ -1295,7 +1295,8 @@
 if test -z "$MACHDEP"
 then
 	ac_sys_system=`uname -s`
-	if test "$ac_sys_system" = "AIX" -o "$ac_sys_system" = "Monterey64"; then
+	if test "$ac_sys_system" = "AIX" -o "$ac_sys_system" = "Monterey64" \
+	-o "$ac_sys_system" = "UnixWare" -o "$ac_sys_system" = "OpenUNIX"; then
 		ac_sys_release=`uname -v`
 	else
 		ac_sys_release=`uname -r`
@@ -3459,11 +3460,17 @@
 	*)
 	    OPT="-O3 -Wall -Wstrict-prototypes";;
 	esac
+	case $ac_sys_system in
+	    SCO_SV*) OPT="$OPT -m486 -DSCO5";;
+	esac
 	;;
     *)
 	case $ac_sys_system in
 	OpenUNIX*|UnixWare*)
 	    OPT="-O -K pentium,host,inline,loop_unroll,alloca ";;
+	SCO_SV*)
+	    CFLAGS="$CFLAGS -belf"
+	    OPT="-belf -O -Ki486 -DSCO5";;
 	*)
 	    OPT="-O";;
 	esac
@@ -8891,7 +8898,7 @@
 		then LDSHARED="$(CC) -shared"
 		else LDSHARED="$(CC) -G"
 		fi;;
-	SCO_SV*) LDSHARED="cc -G -KPIC -Ki486 -belf -Wl,-Bexport";;
+	SCO_SV*) LDSHARED="$(CC) -Wl,-G,-Bexport";;
 	Monterey*) LDSHARED="cc -G -dy -Bdynamic -Bexport -L/usr/lib/ia64l64";;
 	CYGWIN*) LDSHARED="gcc -shared -Wl,--enable-auto-image-base";;
 	atheos*) LDSHARED="gcc -shared";;
@@ -8923,7 +8930,11 @@
 		then CCSHARED="-fPIC"
 		else CCSHARED="-KPIC"
 		fi;;
-	SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
+	SCO_SV*)
+		if test "$GCC" = "yes"
+		then CCSHARED="-fPIC"
+		else CCSHARED="-Kpic -belf"
+		fi;;
 	Monterey*) CCSHARED="-G";;
 	IRIX*/6*)  case $CC in
 		   *gcc*) CCSHARED="-shared";;
@@ -8963,7 +8974,7 @@
 		fi
 		LINKFORSHARED="$LINKFORSHARED $extra_frameworks";;
 	OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";;
-	SCO_SV*) LINKFORSHARED="-Bdynamic -dy -Wl,-Bexport";;
+	SCO_SV*) LINKFORSHARED="-Wl,-Bexport";;
 	ReliantUNIX*) LINKFORSHARED="-W1 -Blargedynsym";;
 	FreeBSD*|NetBSD*|OpenBSD*)
 		if [ "`$CC -dM -E - </dev/null | grep __ELF__`" != "" ]
diff --git a/configure.in b/configure.in
index 5e68e75..27462a6 100644
--- a/configure.in
+++ b/configure.in
@@ -80,7 +80,8 @@
 if test -z "$MACHDEP"
 then
 	ac_sys_system=`uname -s`
-	if test "$ac_sys_system" = "AIX" -o "$ac_sys_system" = "Monterey64"; then
+	if test "$ac_sys_system" = "AIX" -o "$ac_sys_system" = "Monterey64" \
+	-o "$ac_sys_system" = "UnixWare" -o "$ac_sys_system" = "OpenUNIX"; then
 		ac_sys_release=`uname -v`
 	else
 		ac_sys_release=`uname -r`
@@ -473,11 +474,17 @@
 	*)
 	    OPT="-O3 -Wall -Wstrict-prototypes";;
 	esac
+	case $ac_sys_system in
+	    SCO_SV*) OPT="$OPT -m486 -DSCO5";;
+	esac
 	;;
     *)
 	case $ac_sys_system in
 	OpenUNIX*|UnixWare*)
 	    OPT="-O -K pentium,host,inline,loop_unroll,alloca ";;
+	SCO_SV*)
+	    CFLAGS="$CFLAGS -belf"
+	    OPT="-belf -O -Ki486 -DSCO5";;
 	*)
 	    OPT="-O";;
 	esac
@@ -940,7 +947,7 @@
 		then LDSHARED="$(CC) -shared"
 		else LDSHARED="$(CC) -G"
 		fi;;
-	SCO_SV*) LDSHARED="cc -G -KPIC -Ki486 -belf -Wl,-Bexport";;
+	SCO_SV*) LDSHARED="$(CC) -Wl,-G,-Bexport";;
 	Monterey*) LDSHARED="cc -G -dy -Bdynamic -Bexport -L/usr/lib/ia64l64";;
 	CYGWIN*) LDSHARED="gcc -shared -Wl,--enable-auto-image-base";;
 	atheos*) LDSHARED="gcc -shared";;
@@ -970,7 +977,11 @@
 		then CCSHARED="-fPIC"
 		else CCSHARED="-KPIC"
 		fi;;
-	SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
+	SCO_SV*)
+		if test "$GCC" = "yes"
+		then CCSHARED="-fPIC"
+		else CCSHARED="-Kpic -belf"
+		fi;;
 	Monterey*) CCSHARED="-G";;
 	IRIX*/6*)  case $CC in
 		   *gcc*) CCSHARED="-shared";;
@@ -1008,7 +1019,7 @@
 		fi
 		LINKFORSHARED="$LINKFORSHARED $extra_frameworks";;
 	OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";;
-	SCO_SV*) LINKFORSHARED="-Bdynamic -dy -Wl,-Bexport";;
+	SCO_SV*) LINKFORSHARED="-Wl,-Bexport";;
 	ReliantUNIX*) LINKFORSHARED="-W1 -Blargedynsym";;
 	FreeBSD*|NetBSD*|OpenBSD*) 
 		if [[ "`$CC -dM -E - </dev/null | grep __ELF__`" != "" ]]
