summaryrefslogtreecommitdiff
path: root/games
diff options
context:
space:
mode:
Diffstat (limited to 'games')
-rw-r--r--games/ioquake3-raspberrypi/DESCR11
-rw-r--r--games/ioquake3-raspberrypi/Makefile40
-rw-r--r--games/ioquake3-raspberrypi/PLIST9
-rw-r--r--games/ioquake3-raspberrypi/distinfo7
-rw-r--r--games/ioquake3-raspberrypi/patches/patch-Makefile89
-rw-r--r--games/ioquake3-raspberrypi/patches/patch-code_qcommon_q__platform.h13
6 files changed, 169 insertions, 0 deletions
diff --git a/games/ioquake3-raspberrypi/DESCR b/games/ioquake3-raspberrypi/DESCR
new file mode 100644
index 00000000000..4eb9cdf6022
--- /dev/null
+++ b/games/ioquake3-raspberrypi/DESCR
@@ -0,0 +1,11 @@
+ioquake3 is a game engine project which aims to build upon id Software's Quake
+3 source code release. The source code was released on August 20, 2005 under
+the GPL.
+
+The project's goal is to create a bug-free, enhanced open source Quake 3
+source code distribution upon which new games and projects can be based, as
+well as an improved version (in relation to the original binaries) of the
+engine for playing Quake III: Arena, the Team Arena expansion pack and all the
+popular mods.
+
+This version of the package is optimized for the Raspberry Pi.
diff --git a/games/ioquake3-raspberrypi/Makefile b/games/ioquake3-raspberrypi/Makefile
new file mode 100644
index 00000000000..0ce9dcf2212
--- /dev/null
+++ b/games/ioquake3-raspberrypi/Makefile
@@ -0,0 +1,40 @@
+# $NetBSD: Makefile,v 1.1 2015/01/22 12:51:00 jmcneill Exp $
+
+DISTNAME= ioquake3-raspberrypi-20150118
+CATEGORIES= games
+MASTER_SITES= http://www.invisible.ca/packages/distfiles/
+EXTRACT_SUFX= .zip
+
+MAINTAINER= port-arm@NetBSD.org
+HOMEPAGE= https://github.com/raspberrypi/quake3
+COMMENT= Open source Quake 3 distribution (Raspberry Pi version)
+LICENSE= gnu-gpl-v2
+
+USE_TOOLS+= gmake pkg-config
+BUILD_TARGET= release
+# XXX install target does not work with debug builds
+#BUILD_TARGET= debug
+
+ONLY_FOR_PLATFORM= NetBSD-*-*arm*
+
+INSTALLATION_DIRS+= lib/ioquake3
+
+WRKSRC= ${WRKDIR}/quake3-master
+
+MAKE_ENV+= ARCH=rpi
+MAKE_ENV+= USE_SVN=0 USE_CURL=0 USE_OPENAL=0 USE_MUMBLE=0 USE_VOIP=0
+MAKE_ENV+= COPYDIR=${DESTDIR}${PREFIX}/lib/ioquake3
+
+CFLAGS+= -mfpu=vfp
+CFLAGS+= -I${PREFIX}/include -I${PREFIX}/include/interface/vcos/pthreads
+CFLAGS+= -I${PREFIX}/include/SDL
+CFLAGS+= -DVCMODS_MISC -DVCMODS_OPENGLES -DVCMODS_DEPTH -DVCMODS_REPLACETRIG
+LDFLAGS+= -Wl,-R${PREFIX}/lib -L${PREFIX}/lib
+LDFLAGS+= -lSDL -lpthread -lvchostif -lvcfiled_check -lbcm_host -lkhrn_static -lvchiq_arm -lopenmaxil -lEGL -lGLESv2 -lvcos
+
+do-install:
+ cd ${WRKSRC} && ${MAKE_ENV} ${GMAKE} copyfiles COPYDIR=${DESTDIR}${PREFIX}/lib/ioquake3
+
+.include "../../devel/SDL/buildlink3.mk"
+.include "../../misc/raspberrypi-userland/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/games/ioquake3-raspberrypi/PLIST b/games/ioquake3-raspberrypi/PLIST
new file mode 100644
index 00000000000..70df217c205
--- /dev/null
+++ b/games/ioquake3-raspberrypi/PLIST
@@ -0,0 +1,9 @@
+@comment $NetBSD: PLIST,v 1.1 2015/01/22 12:51:00 jmcneill Exp $
+lib/ioquake3/baseq3/cgamerpi.so
+lib/ioquake3/baseq3/qagamerpi.so
+lib/ioquake3/baseq3/uirpi.so
+lib/ioquake3/ioq3ded.rpi
+lib/ioquake3/ioquake3.rpi
+lib/ioquake3/missionpack/cgamerpi.so
+lib/ioquake3/missionpack/qagamerpi.so
+lib/ioquake3/missionpack/uirpi.so
diff --git a/games/ioquake3-raspberrypi/distinfo b/games/ioquake3-raspberrypi/distinfo
new file mode 100644
index 00000000000..cfbdb3cda4c
--- /dev/null
+++ b/games/ioquake3-raspberrypi/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2015/01/22 12:51:00 jmcneill Exp $
+
+SHA1 (ioquake3-raspberrypi-20150118.zip) = 4d41a7d4290d99ce20179d5f693e327831392436
+RMD160 (ioquake3-raspberrypi-20150118.zip) = 4baba47cddba21e25a0e9986b50c9bb6ba22b4e0
+Size (ioquake3-raspberrypi-20150118.zip) = 4062816 bytes
+SHA1 (patch-Makefile) = ea0d64b9be3647c0771ea018fd06500b521e3864
+SHA1 (patch-code_qcommon_q__platform.h) = d0a080004c40b8daebc9e5de24d6a31a6940beca
diff --git a/games/ioquake3-raspberrypi/patches/patch-Makefile b/games/ioquake3-raspberrypi/patches/patch-Makefile
new file mode 100644
index 00000000000..cc8f6b6d73d
--- /dev/null
+++ b/games/ioquake3-raspberrypi/patches/patch-Makefile
@@ -0,0 +1,89 @@
+$NetBSD: patch-Makefile,v 1.1 2015/01/22 12:51:00 jmcneill Exp $
+
+--- Makefile.orig 2014-11-03 15:11:07.000000000 +0000
++++ Makefile
+@@ -676,9 +676,6 @@ ifeq ($(PLATFORM),netbsd)
+
+ DEBUG_CFLAGS=$(BASE_CFLAGS) -g
+
+- BUILD_CLIENT = 0
+- BUILD_GAME_QVM = 0
+-
+ else # ifeq netbsd
+
+ #############################################################################
+@@ -968,11 +965,11 @@ default: release
+ all: debug release
+
+ debug:
+- @$(MAKE) targets B=$(BD) CFLAGS="$(CFLAGS) $(DEPEND_CFLAGS) \
++ @$(MAKE) targets B=$(BD) CFLAGS="$(BASE_CFLAGS) $(CFLAGS) $(DEPEND_CFLAGS) \
+ $(DEBUG_CFLAGS)" V=$(V)
+
+ release:
+- @$(MAKE) targets B=$(BR) CFLAGS="$(CFLAGS) $(DEPEND_CFLAGS) \
++ @$(MAKE) targets B=$(BR) CFLAGS="$(BASE_CFLAGS) $(CFLAGS) $(DEPEND_CFLAGS) \
+ $(RELEASE_CFLAGS)" V=$(V)
+
+ # Create the build directories, check libraries and print out
+@@ -1379,26 +1376,26 @@ Q3OBJ = \
+ $(B)/client/sys_main.o
+
+
+- Q3OBJ += $(if $(or $(findstring arm,$(ARCH)), $(USBDK)), \
+- $(B)/client/es_gamma.o $(B)/client/sdl_snd.o, \
+- $(B)/client/sdl_gamma.o $(B)/client/sdl_snd.o)
+-
+- Q3OBJ += $(if $(USBDK), \
+- $(B)/client/es_input.o, \
+- $(B)/client/sdl_input.o)
+-
+-#
+-#ifeq ($(ARCH),arm)
+-# Q3OBJ += \
+-# $(B)/client/es_gamma.o \
+-# $(B)/client/es_input.o \
+-# $(B)/client/es_snd.o
+-#else
+-# Q3OBJ += \
+-# $(B)/client/sdl_gamma.o \
+-# $(B)/client/sdl_input.o \
+-# $(B)/client/sdl_snd.o
+-#endif
++# Q3OBJ += $(if $(or $(findstring rpi,$(ARCH)), $(USBDK)), \
++# $(B)/client/es_gamma.o $(B)/client/es_snd.o, \
++# $(B)/client/sdl_gamma.o $(B)/client/sdl_snd.o)
++
++# Q3OBJ += $(if $(USBDK), \
++# $(B)/client/es_input.o, \
++# $(B)/client/sdl_input.o)
++
++
++ifeq ($(ARCH),rpi)
++ Q3OBJ += \
++ $(B)/client/es_gamma.o \
++ $(B)/client/es_input.o \
++ $(B)/client/es_snd.o
++else
++ Q3OBJ += \
++ $(B)/client/sdl_gamma.o \
++ $(B)/client/sdl_input.o \
++ $(B)/client/sdl_snd.o
++endif
+
+ ifeq ($(ARCH),i386)
+ Q3OBJ += \
+@@ -1497,11 +1494,11 @@ ifeq ($(USE_MUMBLE),1)
+ $(B)/client/libmumblelink.o
+ endif
+
+- Q3POBJ += $(if $(or $(findstring arm,$(ARCH)), $(USBDK)), \
++ Q3POBJ += $(if $(or $(findstring rpi,$(ARCH)), $(USBDK)), \
+ $(B)/client/es_glimp.o $(B)/client/etc1encode.o, \
+ $(B)/client/sdl_glimp.o)
+
+-#ifeq ($(ARCH),arm)
++#ifeq ($(ARCH),rpi)
+ # Q3POBJ += \
+ # $(B)/client/es_glimp.o \
+ # $(B)/client/etc1encode.o
diff --git a/games/ioquake3-raspberrypi/patches/patch-code_qcommon_q__platform.h b/games/ioquake3-raspberrypi/patches/patch-code_qcommon_q__platform.h
new file mode 100644
index 00000000000..9b806ea8227
--- /dev/null
+++ b/games/ioquake3-raspberrypi/patches/patch-code_qcommon_q__platform.h
@@ -0,0 +1,13 @@
+$NetBSD: patch-code_qcommon_q__platform.h,v 1.1 2015/01/22 12:51:00 jmcneill Exp $
+
+--- code/qcommon/q_platform.h.orig 2014-11-03 15:11:07.000000000 +0000
++++ code/qcommon/q_platform.h
+@@ -199,6 +199,8 @@ Foundation, Inc., 51 Franklin St, Fifth
+
+ #ifdef __i386__
+ #define ARCH_STRING "i386"
++#elif defined __arm__
++#define ARCH_STRING "rpi"
+ #elif defined __axp__
+ #define ARCH_STRING "alpha"
+ #endif