summaryrefslogtreecommitdiff
path: root/games
diff options
context:
space:
mode:
authorjmcneill <jmcneill@pkgsrc.org>2015-01-22 12:51:00 +0000
committerjmcneill <jmcneill@pkgsrc.org>2015-01-22 12:51:00 +0000
commitf31b0dd0009fb9118aac3cefae9faeee90ca27e7 (patch)
tree5da7a24a8cb9c02c82306068f17a188144c2322b /games
parent294ae478e46a2167593cc6dd8bb453f4575a746e (diff)
downloadpkgsrc-f31b0dd0009fb9118aac3cefae9faeee90ca27e7.tar.gz
Import ioquake3-raspberrypi-20150118 as games/ioquake3-raspberrypi.
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.
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