diff -ur links-2.1pre33.orig/os_dep.c links-2.1pre33/os_dep.c
--- links-2.1pre33.orig/os_dep.c	2007-12-28 09:40:31.000000000 +0300
+++ links-2.1pre33/os_dep.c	2008-04-10 14:06:07.000000000 +0400
@@ -167,7 +167,7 @@
 
 #endif
 
-#if defined(UNIX) || defined(BEOS) || defined(RISCOS) || defined(ATHEOS) || defined(WIN32) || defined(SPAD)
+#if defined(UNIX) || defined(BEOS) || defined(RISCOS) || defined(ATHEOS) || defined(WIN32) || defined(SPAD) || defined(DJGPP)
 
 void sigwinch(void *s)
 {
@@ -366,7 +366,7 @@
 	return xt;
 }
 
-#elif defined(BEOS) || defined(ATHEOS)
+#elif defined(BEOS) || defined(ATHEOS) || defined(DJGPP)
 
 int is_xterm(void)
 {
@@ -448,7 +448,7 @@
 
 #endif
 
-#if defined(UNIX) || defined(BEOS) || defined(RISCOS) || defined(ATHEOS) || defined(SPAD)
+#if defined(UNIX) || defined(BEOS) || defined(RISCOS) || defined(ATHEOS) || defined(SPAD) || defined (DJGPP)
 
 #if defined(BEOS) && defined(HAVE_SETPGID)
 
@@ -1056,7 +1056,7 @@
 
 #endif
 
-#if defined(UNIX) || defined(OS2) || defined(RISCOS) || defined(ATHEOS) || defined(SPAD) || defined(WIN32)
+#if defined(UNIX) || defined(OS2) || defined(RISCOS) || defined(ATHEOS) || defined(SPAD) || defined(WIN32) || defined(DJGPP)
 
 void terminate_osdep(void) {}
 
diff -ur links-2.1pre33.orig/os_dep.h links-2.1pre33/os_dep.h
--- links-2.1pre33.orig/os_dep.h	2007-12-26 09:00:48.000000000 +0300
+++ links-2.1pre33/os_dep.h	2008-04-10 13:29:19.000000000 +0400
@@ -13,6 +13,7 @@
 #define SYS_RISCOS	5
 #define SYS_ATHEOS	6
 #define SYS_SPAD	7
+#define SYS_DJGPP	8
 
 /* hardcoded limit of 10 OSes in default.c */
 
@@ -28,11 +29,13 @@
 #define ATHEOS
 #elif defined(__SPAD__)
 #define SPAD
+#elif defined(__DJGPP__)
+/* */
 #else
 #define UNIX
 #endif
 
-#if defined(OS2) || defined(WIN32) || defined(BEOS) || defined(RISCOS) || defined(ATHEOS) || defined(SPAD)
+#if defined(OS2) || defined(WIN32) || defined(BEOS) || defined(RISCOS) || defined(ATHEOS) || defined(SPAD) || defined(DJGPP)
 #ifdef UNIX
 #undef UNIX
 #endif
@@ -177,6 +180,20 @@
 #define ASSOC_CONS_XWIN
 #define NO_FORK_ON_EXIT
 
+#elif defined(DJGPP)
+static inline int dir_sep(char x) { return x == '/' || x == '\\'; }
+#define NEWLINE "\r\n"
+#define NO_ASYNC_LOOKUP
+#define SYSTEM_ID SYS_DJGPP
+#define SYSTEM_NAME "DJGPP"
+#define DEFAULT_SHELL "command.com"
+#define GETSHELL getenv("COMSPEC")
+#define SHARED_CONFIG_DIR "/dev/env/DJDIR/etc/"
+#define DOS_FS
+#define NO_FILE_SECURITY
+#define NO_FORK_ON_EXIT
+#define DISABLE_SMB
+
 #endif
 
 #if !defined(HAVE_BEGINTHREAD) && !defined(BEOS) && !defined(ATHEOS) && !defined(HAVE_PTHREADS) && !defined(HAVE_CLONE)
