aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortma <tma@edf5b092-35ff-0310-97b2-ce42778d08ea>2005-12-27 19:46:01 +0000
committertma <tma@edf5b092-35ff-0310-97b2-ce42778d08ea>2005-12-27 19:46:01 +0000
commitf517f31a6f8c1e3adcd41d020575c27f217ee8e0 (patch)
tree0de4db6ccdc73164ed4d1a9d66d7ccb42f4fa036
parentb0a5b18fc58cf4b9b0ad2eb72f0678b344a2db25 (diff)
downloadioquake3-aero-f517f31a6f8c1e3adcd41d020575c27f217ee8e0.tar.gz
ioquake3-aero-f517f31a6f8c1e3adcd41d020575c27f217ee8e0.zip
* NetBSD support patch from optical (alex@rigbo.se)
git-svn-id: svn://svn.icculus.org/quake3/trunk@448 edf5b092-35ff-0310-97b2-ce42778d08ea
-rw-r--r--code/qcommon/q_platform.h26
-rw-r--r--code/unix/Makefile42
-rw-r--r--web/include/status.php7
3 files changed, 75 insertions, 0 deletions
diff --git a/code/qcommon/q_platform.h b/code/qcommon/q_platform.h
index 8859b7a..16817c8 100644
--- a/code/qcommon/q_platform.h
+++ b/code/qcommon/q_platform.h
@@ -192,6 +192,32 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#endif
+//================================================================ NetBSD ===
+
+// This is very much like the FreeBSD one and can probably be merged
+#ifdef __NetBSD__
+
+#include <machine/endian.h>
+
+#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
diff --git a/code/unix/Makefile b/code/unix/Makefile
index 2247bcd..e47a948 100644
--- a/code/unix/Makefile
+++ b/code/unix/Makefile
@@ -473,6 +473,47 @@ ifeq ($(PLATFORM),freebsd)
else # ifeq freebsd
#############################################################################
+# SETUP AND BUILD -- NETBSD
+#############################################################################
+
+ifeq ($(PLATFORM),netbsd)
+
+ ifeq ($(shell uname -m),i386)
+ ARCH=i386
+ endif
+
+ CC=gcc
+ LDFLAGS=-lm
+ SHLIBEXT=so
+ SHLIBCFLAGS=-fPIC
+ SHLIBLDFLAGS=-shared $(LDFLAGS)
+ THREAD_LDFLAGS=-lpthread
+
+ BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes
+ DEBUG_CFLAGS=$(BASE_CFLAGS) -g
+
+ ifneq ($(ARCH),i386)
+ BASE_CFLAGS += -DNO_VM_COMPILED
+ endif
+
+ ifeq ($(ARCH),i386)
+ TARGETS=\
+ $(B)/baseq3/cgame$(ARCH).$(SHLIBEXT) \
+ $(B)/baseq3/qagame$(ARCH).$(SHLIBEXT) \
+ $(B)/baseq3/ui$(ARCH).$(SHLIBEXT) \
+ $(B)/missionpack/cgame$(ARCH).$(SHLIBEXT) \
+ $(B)/missionpack/qagame$(ARCH).$(SHLIBEXT) \
+ $(B)/missionpack/ui$(ARCH).$(SHLIBEXT) \
+ $(B)/$(PLATFORM)q3ded
+ else
+ TARGETS=\
+ $(B)/$(PLATFORM)q3ded
+
+ endif
+
+else # ifeq netbsd
+
+#############################################################################
# SETUP AND BUILD -- IRIX
#############################################################################
@@ -630,6 +671,7 @@ endif #Linux
endif #darwin
endif #mingw32
endif #FreeBSD
+endif #NetBSD
endif #IRIX
endif #SunOS
diff --git a/web/include/status.php b/web/include/status.php
index fc91454..c3f3bd0 100644
--- a/web/include/status.php
+++ b/web/include/status.php
@@ -74,6 +74,13 @@
<td></td> <!--Notes-->
</tr>
<tr>
+ <td scope="row">NetBSD</td> <!--OS-->
+ <td>gcc-x86</td> <!--Platform-->
+ <td>working</td> <!--Status-->
+ <td></td> <!--LKWR-->
+ <td>Dedicated server only with native libs.</td> <!--Notes-->
+ </tr>
+ <tr>
<td scope="row" rowspan="2">Solaris</td> <!--OS-->
<td>gcc-x86</td> <!--Platform-->
<td>working</td> <!--Status-->