From 47ca64a3007e413ca97f9c4a8d2e2471df8865c0 Mon Sep 17 00:00:00 2001 From: cloudwalk Date: Wed, 22 Jul 2020 13:58:22 +0000 Subject: [PATCH] Fix OpenSolaris build. Add platform ID for a few other platforms git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12862 d7cf8633-e32d-0410-b094-e92efae38249 --- common.h | 3 --- quakedef.h | 11 +++++++++++ sys_sdl.c | 12 ++++++------ sys_unix.c | 8 ++++---- 4 files changed, 21 insertions(+), 13 deletions(-) diff --git a/common.h b/common.h index bf1d5c13..f05450f9 100644 --- a/common.h +++ b/common.h @@ -35,9 +35,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # define MACOSX #endif -#ifdef SUNOS -#include ///< Needed for O_NDELAY -#endif //============================================================================ diff --git a/quakedef.h b/quakedef.h index 1596f94e..207c05f6 100644 --- a/quakedef.h +++ b/quakedef.h @@ -460,12 +460,23 @@ extern cvar_t sessionid; #elif defined(__OpenBSD__) # define DP_OS_NAME "OpenBSD" # define DP_OS_STR "openbsd" +#elif defined(__DragonFly__) +# define DP_OS_NAME "DragonFlyBSD" +# define DP_OS_STR "dragonflybsd" #elif defined(MACOSX) # define DP_OS_NAME "Mac OS X" # define DP_OS_STR "osx" #elif defined(__MORPHOS__) # define DP_OS_NAME "MorphOS" # define DP_OS_STR "morphos" +#elif defined (sun) || defined (__sun) +# if defined (__SVR4) || defined (__svr4__) +# define DP_OS_NAME "Solaris" +# define DP_OS_STR "solaris" +# else +# define DP_OS_NAME "SunOS" +# define DP_OS_STR "sunos" +# endif #else # define DP_OS_NAME "Unknown" # define DP_OS_STR "unknown" diff --git a/sys_sdl.c b/sys_sdl.c index e57bd669..8667f722 100644 --- a/sys_sdl.c +++ b/sys_sdl.c @@ -37,7 +37,7 @@ void Sys_Shutdown (void) Sys_AllowProfiling(false); #endif #ifndef WIN32 - fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NDELAY); + fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NONBLOCK); #endif fflush(stdout); SDL_Quit(); @@ -51,7 +51,7 @@ void Sys_Error (const char *error, ...) // change stdin to non blocking #ifndef WIN32 - fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NDELAY); + fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NONBLOCK); #endif va_start (argptr,error); @@ -77,12 +77,12 @@ void Sys_PrintToTerminal(const char *text) #else if(sys.outfd < 0) return; -#ifdef O_NDELAY +#ifndef WIN32 // BUG: for some reason, NDELAY also affects stdout (1) when used on stdin (0). // this is because both go to /dev/tty by default! { int origflags = fcntl (sys.outfd, F_GETFL, 0); - fcntl (sys.outfd, F_SETFL, origflags & ~O_NDELAY); + fcntl (sys.outfd, F_SETFL, origflags & ~O_NONBLOCK); #endif #ifdef WIN32 #define write _write @@ -94,7 +94,7 @@ void Sys_PrintToTerminal(const char *text) break; // sorry, I cannot do anything about this error - without an output text += written; } -#ifdef O_NDELAY +#ifndef WIN32 fcntl (sys.outfd, F_SETFL, origflags); } #endif @@ -214,7 +214,7 @@ int main (int argc, char *argv[]) sys.outfd = 1; #ifndef WIN32 - fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | O_NDELAY); + fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | O_NONBLOCK); #endif // we don't know which systems we'll want to init, yet... diff --git a/sys_unix.c b/sys_unix.c index 4837d3ad..70e4bd56 100644 --- a/sys_unix.c +++ b/sys_unix.c @@ -22,7 +22,7 @@ sys_t sys; void Sys_Shutdown (void) { #ifndef WIN32 - fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NDELAY); + fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NONBLOCK); #endif fflush(stdout); } @@ -34,7 +34,7 @@ void Sys_Error (const char *error, ...) // change stdin to non blocking #ifndef WIN32 - fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NDELAY); + fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NONBLOCK); #endif va_start (argptr,error); dpvsnprintf (string, sizeof (string), error, argptr); @@ -55,7 +55,7 @@ void Sys_PrintToTerminal(const char *text) { #ifndef WIN32 int origflags = fcntl (sys.outfd, F_GETFL, 0); - fcntl (sys.outfd, F_SETFL, origflags & ~O_NDELAY); + fcntl (sys.outfd, F_SETFL, origflags & ~O_NONBLOCK); #else #define write _write #endif @@ -162,7 +162,7 @@ int main (int argc, char **argv) else sys.outfd = 1; #ifndef WIN32 - fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | O_NDELAY); + fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | O_NONBLOCK); #endif Host_Main(); -- 2.39.2