From eaeed742c5be674da39b20c1c22f26438b3a056f Mon Sep 17 00:00:00 2001 From: Tim Angus Date: Mon, 26 Nov 2007 20:18:53 +0000 Subject: [PATCH] * Move MINSDL_ values to sys_local.h from Makefile/VC project * Merge *BSD platform definitions in q_platform.h * IRIX support (Patrick Baggett ) --- Makefile | 18 +++++---- code/qcommon/net_ip.c | 1 + code/qcommon/q_platform.h | 81 +++++++++++++-------------------------- code/sys/con_tty.c | 1 + code/sys/sys_local.h | 5 +++ misc/msvc/quake3.vcproj | 2 +- 6 files changed, 44 insertions(+), 64 deletions(-) diff --git a/Makefile b/Makefile index 09171202..e702235e 100644 --- a/Makefile +++ b/Makefile @@ -636,12 +636,15 @@ else # ifeq netbsd # SETUP AND BUILD -- IRIX ############################################################################# -ifeq ($(PLATFORM),irix) +ifeq ($(PLATFORM),irix64) ARCH=mips #default to MIPS - BASE_CFLAGS=-Dstricmp=strcasecmp -Xcpluscomm -woff 1185 -mips3 \ - -nostdinc -I. -I$(ROOT)/usr/include -DNO_VM_COMPILED + CC = c99 + MKDIR = mkdir -p + + BASE_CFLAGS=-Dstricmp=strcasecmp -Xcpluscomm -woff 1185 \ + -I. $(shell sdl-config --cflags) -I$(ROOT)/usr/include -DNO_VM_COMPILED RELEASE_CFLAGS=$(BASE_CFLAGS) -O3 DEBUG_CFLAGS=$(BASE_CFLAGS) -g @@ -649,8 +652,10 @@ ifeq ($(PLATFORM),irix) SHLIBCFLAGS= SHLIBLDFLAGS=-shared - LDFLAGS=-ldl -lm - CLIENT_LDFLAGS=-L/usr/X11/$(LIB) -lGL -lX11 -lXext -lm + LDFLAGS=-ldl -lm -lgen + # FIXME: The X libraries probably aren't necessary? + CLIENT_LDFLAGS=-L/usr/X11/$(LIB) $(shell sdl-config --libs) -lGL \ + -lX11 -lXext -lm else # ifeq IRIX @@ -794,9 +799,6 @@ ifeq ($(USE_SVN),1) BASE_CFLAGS += -DSVN_VERSION=\\\"$(SVN_VERSION)\\\" endif -# Require a minimum version of SDL -BASE_CFLAGS += -DMINSDL_MAJOR=1 -DMINSDL_MINOR=2 -DMINSDL_PATCH=7 - ifeq ($(V),1) echo_cmd=@: Q= diff --git a/code/qcommon/net_ip.c b/code/qcommon/net_ip.c index 8b56b302..e8bf3971 100644 --- a/code/qcommon/net_ip.c +++ b/code/qcommon/net_ip.c @@ -50,6 +50,7 @@ static qboolean winsockInitialized = qfalse; #include #include #include +#include #include #ifdef MACOS_X diff --git a/code/qcommon/q_platform.h b/code/qcommon/q_platform.h index a10ae9be..be57ef77 100644 --- a/code/qcommon/q_platform.h +++ b/code/qcommon/q_platform.h @@ -19,7 +19,7 @@ along with Quake III Arena source code; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA =========================================================================== */ -// + #ifndef __Q_PLATFORM_H #define __Q_PLATFORM_H @@ -168,14 +168,21 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #endif -//=============================================================== FreeBSD === +//=================================================================== BSD === -#ifdef __FreeBSD__ +#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) #include #include +#if defined(__FreeBSD__) #define OS_STRING "freebsd" +#elif defined(__OpenBSD__) +#define OS_STRING "openbsd" +#elif defined(__NetBSD__) +#define OS_STRING "netbsd" +#endif + #define ID_INLINE inline #define PATH_SEP '/' @@ -195,58 +202,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #endif -//=============================================================== OpenBSD === - -#ifdef __OpenBSD__ - -#include -#include - -#define OS_STRING "openbsd" -#define ID_INLINE inline -#define PATH_SEP '/' - -#ifdef __i386__ -#define ARCH_STRING "i386" -#endif - -#if BYTE_ORDER == BIG_ENDIAN -#define Q3_BIG_ENDIAN -#else -#define Q3_LITTLE_ENDIAN -#endif - -#define DLL_EXT ".so" - -#endif - -//================================================================ NetBSD === - -// This is very much like the FreeBSD one and can probably be merged -#ifdef __NetBSD__ - -#include -#include - -#define OS_STRING "netbsd" -#define ID_INLINE inline -#define PATH_SEP '/' - -#ifdef __i386__ -#define ARCH_STRING "i386" -// Netbsd has alot of platforms -#endif - -#if BYTE_ORDER == BIG_ENDIAN -#define Q3_BIG_ENDIAN -#else -#define Q3_LITTLE_ENDIAN -#endif - -#define DLL_EXT ".so" - -#endif - //================================================================= SUNOS === #ifdef __sun @@ -274,6 +229,22 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #endif +//================================================================== IRIX === + +#ifdef __sgi + +#define OS_STRING "irix" +#define ID_INLINE __inline +#define PATH_SEP '/' + +#define ARCH_STRING "mips" + +#define Q3_BIG_ENDIAN // SGI's MIPS are always big endian + +#define DLL_EXT ".so" + +#endif + //================================================================== Q3VM === #ifdef Q3_VM diff --git a/code/sys/con_tty.c b/code/sys/con_tty.c index 5e499eb6..ee729dab 100644 --- a/code/sys/con_tty.c +++ b/code/sys/con_tty.c @@ -27,6 +27,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include #include #include +#include /* ============================================================= diff --git a/code/sys/sys_local.h b/code/sys/sys_local.h index 815852fb..af0ed7c5 100644 --- a/code/sys/sys_local.h +++ b/code/sys/sys_local.h @@ -23,6 +23,11 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include "../qcommon/q_shared.h" #include "../qcommon/qcommon.h" +// Require a minimum version of SDL +#define MINSDL_MAJOR 1 +#define MINSDL_MINOR 2 +#define MINSDL_PATCH 7 + // Input subsystem void IN_Init (void); void IN_Frame (void); diff --git a/misc/msvc/quake3.vcproj b/misc/msvc/quake3.vcproj index d23bee07..702d1754 100644 --- a/misc/msvc/quake3.vcproj +++ b/misc/msvc/quake3.vcproj @@ -46,7 +46,7 @@ Name="VCCLCompilerTool" Optimization="2" InlineFunctionExpansion="2" - PreprocessorDefinitions="_WIN32;WIN32;NDEBUG;_WINDOWS;USE_OPENAL;_CRT_SECURE_NO_DEPRECATE;MINSDL_MAJOR=1;MINSDL_MINOR=2;MINSDL_PATCH=7;BOTLIB;USE_ICON;USE_CURL" + PreprocessorDefinitions="_WIN32;WIN32;NDEBUG;_WINDOWS;USE_OPENAL;_CRT_SECURE_NO_DEPRECATE;BOTLIB;USE_ICON;USE_CURL" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true"