summaryrefslogtreecommitdiff
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
commit2863834a8a2317c9a2626c07c5b92a09dc51f9cc (patch)
tree5da7a24a8cb9c02c82306068f17a188144c2322b
parent65d4eb89a1d41c206bbd125d4e10d28b376529ed (diff)
downloadpkgsrc-2863834a8a2317c9a2626c07c5b92a09dc51f9cc.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.
-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