diff -Naur tcl8.4.6-orig/generic/tclClock.c tcl8.4.6-new/generic/tclClock.c
--- tcl8.4.6-orig/generic/tclClock.c	Sat Feb  1 21:27:55 2003
+++ tcl8.4.6-new/generic/tclClock.c	Wed Mar 24 16:50:40 2004
@@ -266,7 +266,9 @@
     int result;
     time_t tclockVal;
 #if !defined(HAVE_TM_ZONE) && !defined(WIN32)
+#   ifdef HAVE_TIMEZONE_VAR
     int savedTimeZone = 0;	/* lint. */
+#   endif
     char *savedTZEnv = NULL;	/* lint. */
 #endif
 
@@ -311,8 +313,10 @@
             savedTZEnv = NULL;
 	}
         Tcl_SetVar2(interp, "env", "TZ", "GMT", TCL_GLOBAL_ONLY);
+#   ifdef HAVE_TIMEZONE_VAR
         savedTimeZone = timezone;
         timezone = 0;
+#   endif
         tzset();
     }
 #endif
@@ -357,7 +361,9 @@
         } else {
             Tcl_UnsetVar2(interp, "env", "TZ", TCL_GLOBAL_ONLY);
         }
+#   ifdef HAVE_TIMEZONE_VAR
         timezone = savedTimeZone;
+#   endif
         tzset();
     }
     Tcl_MutexUnlock( &clockMutex );
diff -Naur tcl8.4.6-orig/generic/tclPosixStr.c tcl8.4.6-new/generic/tclPosixStr.c
--- tcl8.4.6-orig/generic/tclPosixStr.c	Mon May 27 10:14:21 2002
+++ tcl8.4.6-new/generic/tclPosixStr.c	Wed Mar 24 16:56:10 2004
@@ -75,7 +75,7 @@
 #ifdef EBADFD
 	case EBADFD: return "EBADFD";
 #endif
-#ifdef EBADMSG
+#if defined(EBADMSG) && (!defined(ENOTSUP) || (EBADMSG != ENOTSUP))
 	case EBADMSG: return "EBADMSG";
 #endif
 #ifdef EBADR
@@ -524,7 +524,7 @@
 #ifdef EBADFD
 	case EBADFD: return "file descriptor in bad state";
 #endif
-#ifdef EBADMSG
+#if defined(EBADMSG) && (!defined(ENOTSUP) || (EBADMSG != ENOTSUP))
 	case EBADMSG: return "not a data message";
 #endif
 #ifdef EBADR
diff -Naur tcl8.4.6-orig/unix/tcl.m4 tcl8.4.6-new/unix/tcl.m4
--- tcl8.4.6-orig/unix/tcl.m4	Mon Mar  1 23:58:59 2004
+++ tcl8.4.6-new/unix/tcl.m4	Wed Mar 24 17:32:17 2004
@@ -1187,6 +1187,15 @@
 		EXTRA_CFLAGS="-mieee"
 	    fi
 	    ;;
+	LynxOS-3.1*)
+	    # Silence (useless?) warnings about including <foo.h> instead
+	    # of <sys/foo.h>.
+	    EXTRA_CFLAGS="-D__NO_INCLUDE_WARN__"
+
+	    # Allow tcl to link with inet_ntoa, mkstemp, gethostbyaddr,
+	    # inet_addr, and getservbyname.
+	    LIBS="$LIBS -lbsd"
+	    ;;
 	MP-RAS-02*)
 	    SHLIB_CFLAGS="-K PIC"
 	    SHLIB_LD="cc -G"
