aboutsummaryrefslogtreecommitdiff
path: root/games/quake3
diff options
context:
space:
mode:
authorEdwin Groothuis <edwin@FreeBSD.org>2005-11-17 10:35:03 +0000
committerEdwin Groothuis <edwin@FreeBSD.org>2005-11-17 10:35:03 +0000
commitcf1bd0756de183eca0f1d6baaa437a31a62f3f1b (patch)
tree1f544e0954ac0e03c8406f2c4ee861ba4b278400 /games/quake3
parentda8f0fc9ccea394bdde07b4d20f69f18cb6949b8 (diff)
downloadports-cf1bd0756de183eca0f1d6baaa437a31a62f3f1b.tar.gz
ports-cf1bd0756de183eca0f1d6baaa437a31a62f3f1b.zip
Notes
Diffstat (limited to 'games/quake3')
-rw-r--r--games/quake3/Makefile66
-rw-r--r--games/quake3/distinfo3
-rw-r--r--games/quake3/files/patch-code-Construct58
-rw-r--r--games/quake3/files/patch-code-botlib-linux-i386.mak12
-rw-r--r--games/quake3/files/patch-code-bspc-Conscript12
-rw-r--r--games/quake3/files/patch-code-bspc-Makefile12
-rw-r--r--games/quake3/files/patch-code-bspc-linux-i386.mak12
-rw-r--r--games/quake3/files/patch-code-cgame-Conscript12
-rw-r--r--games/quake3/files/patch-code-game-Conscript12
-rw-r--r--games/quake3/files/patch-code-game-q_shared.h17
-rw-r--r--games/quake3/files/patch-code-q3_ui-Conscript12
-rw-r--r--games/quake3/files/patch-code-qcommon-common.c19
-rw-r--r--games/quake3/files/patch-code-ui-Conscript12
-rw-r--r--games/quake3/files/patch-code-unix-Conscript-client20
-rw-r--r--games/quake3/files/patch-code-unix-Conscript-dedicated12
-rw-r--r--games/quake3/files/patch-code-unix-Makefile99
-rw-r--r--games/quake3/files/patch-code-unix-cons21
-rw-r--r--games/quake3/files/patch-code-unix-linux_common.c18
-rw-r--r--games/quake3/files/patch-code-unix-linux_glimp.c11
-rw-r--r--games/quake3/files/patch-code-unix-unix_shared.c45
-rw-r--r--games/quake3/files/patch-lcc-custom.mk6
-rw-r--r--games/quake3/files/patch-lcc-makefile12
-rw-r--r--games/quake3/pkg-descr18
-rw-r--r--games/quake3/pkg-message7
-rw-r--r--games/quake3/pkg-plist19
25 files changed, 547 insertions, 0 deletions
diff --git a/games/quake3/Makefile b/games/quake3/Makefile
new file mode 100644
index 000000000000..2f6a87f57851
--- /dev/null
+++ b/games/quake3/Makefile
@@ -0,0 +1,66 @@
+# New ports collection makefile for: quake3
+# Date created: 23 August 2005
+# Whom: pypt
+#
+# $FreeBSD$
+#
+
+PORTNAME= quake3
+PORTVERSION= 1.32b
+CATEGORIES= games
+MASTER_SITES= ftp://ftp.idsoftware.com/idstuff/source/
+EXTRACT_SUFX= -source.zip
+EXTRACT_ONLY=
+
+MAINTAINER= shirshegsm@gmail.com
+COMMENT= Quake III Arena -- first person shooter (native build)
+
+EXTRACT_DEPENDS= unzip:${PORTSDIR}/archivers/unzip
+BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
+
+USE_GMAKE= yes
+USE_PERL5_BUILD= yes
+USE_GL= yes
+USE_REINPLACE= yes
+CONFLICTS= q3server-1.32*
+
+# We need that -a flag
+do-extract:
+ ${MKDIR} ${WRKDIR} && \
+ cd ${WRKDIR} && \
+ ${UNZIP_CMD} -aqx ${DISTDIR}/${PORTNAME}-${PORTVERSION}-source.zip
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|##PREFIX##|${PREFIX}|g' ${WRKSRC}/code/unix/unix_shared.c
+
+pre-build:
+ ${MKDIR} ${WRKSRC}/lcc/build
+
+do-build:
+ cd ${WRKSRC}/code && \
+ ${PERL} unix/cons
+ ${MV} ${WRKSRC}/code/install/linuxq3ded ${WRKSRC}/code/install/q3ded
+ ${MV} ${WRKSRC}/code/install/linuxquake3 ${WRKSRC}/code/install/quake3
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/code/install/q3ded ${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/code/install/quake3 ${PREFIX}/bin
+ ${MKDIR} ${PREFIX}/lib/quake3/baseq3/vm
+ ${CP} ${WRKSRC}/code/install/baseq3/cgamei386.so ${PREFIX}/lib/quake3/baseq3
+ ${CP} ${WRKSRC}/code/install/baseq3/qagamei386.so ${PREFIX}/lib/quake3/baseq3
+ ${CP} ${WRKSRC}/code/install/baseq3/uii386.so ${PREFIX}/lib/quake3/baseq3
+ ${CP} ${WRKSRC}/code/install/baseq3/vm/cgame.qvm ${PREFIX}/lib/quake3/baseq3/vm
+ ${CP} ${WRKSRC}/code/install/baseq3/vm/qagame.qvm ${PREFIX}/lib/quake3/baseq3/vm
+ ${CP} ${WRKSRC}/code/install/baseq3/vm/ui.qvm ${PREFIX}/lib/quake3/baseq3/vm
+ ${MKDIR} ${PREFIX}/lib/quake3/missionpack/vm
+ ${CP} ${WRKSRC}/code/install/missionpack/cgamei386.so ${PREFIX}/lib/quake3/missionpack
+ ${CP} ${WRKSRC}/code/install/missionpack/qagamei386.so ${PREFIX}/lib/quake3/missionpack
+ ${CP} ${WRKSRC}/code/install/missionpack/uii386.so ${PREFIX}/lib/quake3/missionpack
+ ${CP} ${WRKSRC}/code/install/missionpack/vm/cgame.qvm ${PREFIX}/lib/quake3/missionpack/vm
+ ${CP} ${WRKSRC}/code/install/missionpack/vm/qagame.qvm ${PREFIX}/lib/quake3/missionpack/vm
+ ${CP} ${WRKSRC}/code/install/missionpack/vm/ui.qvm ${PREFIX}/lib/quake3/missionpack/vm
+
+post-install:
+ ${CAT} pkg-message
+
+.include <bsd.port.mk>
diff --git a/games/quake3/distinfo b/games/quake3/distinfo
new file mode 100644
index 000000000000..c786a5cf29df
--- /dev/null
+++ b/games/quake3/distinfo
@@ -0,0 +1,3 @@
+MD5 (quake3-1.32b-source.zip) = af8aaac46cc82035e1cba632b1a16e03
+SHA256 (quake3-1.32b-source.zip) = 74d42070eea4c7ce47955d831327e70f480c493172b485bf7dd1a58838e92fab
+SIZE (quake3-1.32b-source.zip) = 5724791
diff --git a/games/quake3/files/patch-code-Construct b/games/quake3/files/patch-code-Construct
new file mode 100644
index 000000000000..21b6c1d5ab76
--- /dev/null
+++ b/games/quake3/files/patch-code-Construct
@@ -0,0 +1,58 @@
+--- code/Construct Mon Aug 15 23:56:27 2005
++++ ../../work/quake3-1.32b/code/Construct Sun Aug 28 23:13:56 2005
+@@ -19,8 +19,8 @@
+ use Cons_gcc;
+
+ # defaults
+-$config = 'debug';
+-$do_smp = 1;
++$config = 'release';
++$do_smp = 0;
+ $do_masterserver = 0;
+ $do_authserver = 0;
+ $do_authport = 0;
+@@ -63,9 +63,9 @@
+ else
+ {
+ # libc .. do the little magic!
+- $libc_cmd = '/lib/libc.so.6 |grep "GNU C "|grep version|awk -F "version " \'{ print $2 }\'|cut -b -3';
+- $libc = `$libc_cmd`;
+- chop ($libc);
++ # $libc_cmd = '/lib/libc.so.6 |grep "GNU C "|grep version|awk -F "version " \'{ print $2 }\'|cut -b -3';
++ # $libc = `$libc_cmd`;
++ # chop ($libc);
+ }
+
+ if ($DO_WIN32 eq 1)
+@@ -227,7 +227,7 @@
+ # build the config directory
+ $CONFIG_DIR = $config . '-' . $cpu . '-' . $OS . '-' . $libc;
+
+-$COMMON_CFLAGS = '-pipe -fsigned-char ';
++$COMMON_CFLAGS = '-pipe -fsigned-char -I/usr/local/include -L/usr/local/lib -I/usr/X11R6/include -L/usr/X11R6/lib ';
+
+ if ($config eq 'debug')
+ {
+@@ -237,7 +237,7 @@
+ }
+ else
+ {
+- $BASE_CFLAGS = $COMMON_CFLAGS . '-DNDEBUG -O6 -mcpu=pentiumpro -march=pentium -fomit-frame-pointer -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fno-strict-aliasing -fstrength-reduce ';
++ $BASE_CFLAGS = $COMMON_CFLAGS . '-DNDEBUG -O6 -march=pentiumpro -march=pentium -fomit-frame-pointer -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce ';
+ $BSPC_BASE_CFLAGS = $BASE_CFLAGS . '-DLINUX -DBSPC -Dstricmp=strcasecmp ';
+ }
+
+@@ -287,11 +287,11 @@
+ system("mkdir qvmtools 2>/dev/null");
+ if (@_[0] eq 'q3lcc')
+ {
+- system("cd ../lcc ; make all ; cp /tmp/lcc ../code/qvmtools/q3lcc ; cp /tmp/rcc ../code/qvmtools/q3rcc ; cp /tmp/cpp ../code/qvmtools/q3cpp");
++ system("cd ../lcc ; gmake all ; cp ../lcc/build/lcc ../code/qvmtools/q3lcc ; cp ../lcc/build/rcc ../code/qvmtools/q3rcc ; cp ../lcc/build/cpp ../code/qvmtools/q3cpp");
+ }
+ elsif (@_[0] eq 'q3asm')
+ {
+- system("cd ../q3asm ; make ; cp q3asm ../code/qvmtools");
++ system("cd ../q3asm ; gmake ; cp q3asm ../code/qvmtools");
+ }
+ else
+ {
diff --git a/games/quake3/files/patch-code-botlib-linux-i386.mak b/games/quake3/files/patch-code-botlib-linux-i386.mak
new file mode 100644
index 000000000000..2fadee73c19a
--- /dev/null
+++ b/games/quake3/files/patch-code-botlib-linux-i386.mak
@@ -0,0 +1,12 @@
+diff -ruN ./code/botlib/linux-i386.mak ../quake3-1.32b-BUILT/./code/botlib/linux-i386.mak
+--- ./code/botlib/linux-i386.mak Wed May 23 15:07:59 2001
++++ ../quake3-1.32b-BUILT/./code/botlib/linux-i386.mak Mon Aug 22 20:55:02 2005
+@@ -14,7 +14,7 @@
+ #use these when debugging
+ #CFLAGS=$(BASE_CFLAGS) -g
+
+-LDFLAGS=-ldl -lm
++LDFLAGS=-lm
+ SHLIBEXT=so
+ SHLIBCFLAGS=-fPIC
+ SHLIBLDFLAGS=-shared
diff --git a/games/quake3/files/patch-code-bspc-Conscript b/games/quake3/files/patch-code-bspc-Conscript
new file mode 100644
index 000000000000..08ed1797e7c2
--- /dev/null
+++ b/games/quake3/files/patch-code-bspc-Conscript
@@ -0,0 +1,12 @@
+diff -ruN ./code/bspc/Conscript ../quake3-1.32b-BUILT/./code/bspc/Conscript
+--- ./code/bspc/Conscript Tue Aug 16 01:47:07 2005
++++ ../quake3-1.32b-BUILT/./code/bspc/Conscript Mon Aug 22 20:54:27 2005
+@@ -67,7 +67,7 @@
+ CXX => $CXX,
+ LINK => $LINK,
+ CFLAGS => $BSPC_BASE_CFLAGS,
+- LIBS => '-ldl -lm -lpthread'
++ LIBS => '-lm -lpthread'
+ );
+
+ Program $env 'bspc', @$BSPC_REF;
diff --git a/games/quake3/files/patch-code-bspc-Makefile b/games/quake3/files/patch-code-bspc-Makefile
new file mode 100644
index 000000000000..d8a00e38bfd4
--- /dev/null
+++ b/games/quake3/files/patch-code-bspc-Makefile
@@ -0,0 +1,12 @@
+diff -ruN ./code/bspc/Makefile ../quake3-1.32b-BUILT/./code/bspc/Makefile
+--- ./code/bspc/Makefile Wed May 23 15:07:59 2001
++++ ../quake3-1.32b-BUILT/./code/bspc/Makefile Mon Aug 22 20:54:39 2005
+@@ -18,7 +18,7 @@
+ #use these when debugging
+ #CFLAGS=$(BASE_CFLAGS) -g
+
+-LDFLAGS=-ldl -lm -lpthread
++LDFLAGS=-lm -lpthread
+
+ DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
+
diff --git a/games/quake3/files/patch-code-bspc-linux-i386.mak b/games/quake3/files/patch-code-bspc-linux-i386.mak
new file mode 100644
index 000000000000..d8be0355f149
--- /dev/null
+++ b/games/quake3/files/patch-code-bspc-linux-i386.mak
@@ -0,0 +1,12 @@
+diff -ruN ./code/bspc/linux-i386.mak ../quake3-1.32b-BUILT/./code/bspc/linux-i386.mak
+--- ./code/bspc/linux-i386.mak Wed May 23 15:07:59 2001
++++ ../quake3-1.32b-BUILT/./code/bspc/linux-i386.mak Mon Aug 22 20:54:48 2005
+@@ -14,7 +14,7 @@
+ #use these when debugging
+ #CFLAGS=$(BASE_CFLAGS) -g
+
+-LDFLAGS=-ldl -lm -lpthread
++LDFLAGS=-lm -lpthread
+
+ DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
+
diff --git a/games/quake3/files/patch-code-cgame-Conscript b/games/quake3/files/patch-code-cgame-Conscript
new file mode 100644
index 000000000000..8e19ef9e567c
--- /dev/null
+++ b/games/quake3/files/patch-code-cgame-Conscript
@@ -0,0 +1,12 @@
+diff -ruN ./code/cgame/Conscript ../quake3-1.32b-BUILT/./code/cgame/Conscript
+--- ./code/cgame/Conscript Sun Jan 19 18:03:48 2003
++++ ../quake3-1.32b-BUILT/./code/cgame/Conscript Mon Aug 22 20:54:15 2005
+@@ -22,7 +22,7 @@
+ LINK => $LINK,
+ ENV => { PATH => $ENV{PATH}, HOME => $ENV{HOME} },
+ CFLAGS => $BASE_CFLAGS . '-fPIC',
+- LDFLAGS => '-shared -ldl -lm'
++ LDFLAGS => '-shared -lm'
+ );
+
+ # for TA, use -DMISSIONPACK
diff --git a/games/quake3/files/patch-code-game-Conscript b/games/quake3/files/patch-code-game-Conscript
new file mode 100644
index 000000000000..d6ae11d79bea
--- /dev/null
+++ b/games/quake3/files/patch-code-game-Conscript
@@ -0,0 +1,12 @@
+diff -ruN ./code/game/Conscript ../quake3-1.32b-BUILT/./code/game/Conscript
+--- ./code/game/Conscript Sun Jan 19 18:03:48 2003
++++ ../quake3-1.32b-BUILT/./code/game/Conscript Mon Aug 22 20:54:04 2005
+@@ -21,7 +21,7 @@
+ LINK => $LINK,
+ ENV => { PATH => $ENV{PATH}, HOME => $ENV{HOME} },
+ CFLAGS => $BASE_CFLAGS . '-fPIC',
+- LDFLAGS => '-shared -ldl -lm'
++ LDFLAGS => '-shared -lm'
+ );
+
+ # for TA, use -DMISSIONPACK
diff --git a/games/quake3/files/patch-code-game-q_shared.h b/games/quake3/files/patch-code-game-q_shared.h
new file mode 100644
index 000000000000..d628bf7b5a3c
--- /dev/null
+++ b/games/quake3/files/patch-code-game-q_shared.h
@@ -0,0 +1,17 @@
+diff -ruN ./code/game/q_shared.h ../quake3-1.32b-BUILT/./code/game/q_shared.h
+--- ./code/game/q_shared.h Tue Aug 16 02:10:07 2005
++++ ../quake3-1.32b-BUILT/./code/game/q_shared.h Tue Aug 23 14:16:34 2005
+@@ -452,13 +452,9 @@
+ void *Hunk_Alloc( int size, ha_pref preference );
+ #endif
+
+-#ifdef __linux__
+ // https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=371
+ // custom Snd_Memset implementation for glibc memset bug workaround
+ void Snd_Memset (void* dest, const int val, const size_t count);
+-#else
+-#define Snd_Memset Com_Memset
+-#endif
+
+ #if !( defined __VECTORC )
+ void Com_Memset (void* dest, const int val, const size_t count);
diff --git a/games/quake3/files/patch-code-q3_ui-Conscript b/games/quake3/files/patch-code-q3_ui-Conscript
new file mode 100644
index 000000000000..bbddde9f2ca5
--- /dev/null
+++ b/games/quake3/files/patch-code-q3_ui-Conscript
@@ -0,0 +1,12 @@
+diff -ruN ./code/q3_ui/Conscript ../quake3-1.32b-BUILT/./code/q3_ui/Conscript
+--- ./code/q3_ui/Conscript Sun Jan 19 18:03:48 2003
++++ ../quake3-1.32b-BUILT/./code/q3_ui/Conscript Mon Aug 22 20:56:57 2005
+@@ -16,7 +16,7 @@
+ LINK => $LINK,
+ ENV => { PATH => $ENV{PATH}, HOME => $ENV{HOME} },
+ CFLAGS => $BASE_CFLAGS . '-fPIC',
+- LDFLAGS => '-shared -ldl -lm'
++ LDFLAGS => '-shared -lm'
+ );
+
+ # qvm building
diff --git a/games/quake3/files/patch-code-qcommon-common.c b/games/quake3/files/patch-code-qcommon-common.c
new file mode 100644
index 000000000000..94164ed41b01
--- /dev/null
+++ b/games/quake3/files/patch-code-qcommon-common.c
@@ -0,0 +1,19 @@
+diff -ruN ./code/qcommon/common.c ../quake3-1.32b-BUILT/./code/qcommon/common.c
+--- ./code/qcommon/common.c Tue Aug 16 02:10:07 2005
++++ ../quake3-1.32b-BUILT/./code/qcommon/common.c Mon Aug 22 21:03:32 2005
+@@ -24,15 +24,7 @@
+ #include "../game/q_shared.h"
+ #include "qcommon.h"
+ #include <setjmp.h>
+-#ifdef __linux__
+ #include <netinet/in.h>
+-#else
+-#if defined(MACOS_X)
+-#include <netinet/in.h>
+-#else
+-#include <winsock.h>
+-#endif
+-#endif
+
+ int demo_protocols[] =
+ { 66, 67, 68, 0 };
diff --git a/games/quake3/files/patch-code-ui-Conscript b/games/quake3/files/patch-code-ui-Conscript
new file mode 100644
index 000000000000..0b19a27ed11f
--- /dev/null
+++ b/games/quake3/files/patch-code-ui-Conscript
@@ -0,0 +1,12 @@
+diff -ruN ./code/ui/Conscript ../quake3-1.32b-BUILT/./code/ui/Conscript
+--- ./code/ui/Conscript Sun Jan 19 18:03:48 2003
++++ ../quake3-1.32b-BUILT/./code/ui/Conscript Mon Aug 22 20:53:50 2005
+@@ -16,7 +16,7 @@
+ LINK => $LINK,
+ ENV => { PATH => $ENV{PATH}, HOME => $ENV{HOME} },
+ CFLAGS => $BASE_CFLAGS . '-DMISSIONPACK -fPIC',
+- LDFLAGS => '-shared -ldl -lm'
++ LDFLAGS => '-shared -lm'
+ );
+
+ # qvm building
diff --git a/games/quake3/files/patch-code-unix-Conscript-client b/games/quake3/files/patch-code-unix-Conscript-client
new file mode 100644
index 000000000000..d96e68cfd001
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-Conscript-client
@@ -0,0 +1,20 @@
+diff -ruN ./code/unix/Conscript-client ../quake3-1.32b-BUILT/./code/unix/Conscript-client
+--- ./code/unix/Conscript-client Mon Aug 15 23:56:27 2005
++++ ../quake3-1.32b-BUILT/./code/unix/Conscript-client Mon Aug 22 21:55:50 2005
+@@ -153,7 +153,7 @@
+ . $BUILD_DIR . '/unix/asmlib.a '
+ . $BUILD_DIR . '/unix/inlinelib.a '
+ . $BASE_LDFLAGS
+- . '-L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm -ldl -lm'
++ . '-L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm -lm'
+ );
+
+ @RENDERER_FILES = qw(
+@@ -231,7 +231,6 @@
+ ../unix/linux_common.c
+ ../unix/linux_qgl.c
+ ../unix/linux_glimp.c
+- ../unix/linux_joystick.c
+ ../unix/linux_snd.c
+ ../unix/linux_signals.c
+ );
diff --git a/games/quake3/files/patch-code-unix-Conscript-dedicated b/games/quake3/files/patch-code-unix-Conscript-dedicated
new file mode 100644
index 000000000000..3de75039ffe0
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-Conscript-dedicated
@@ -0,0 +1,12 @@
+diff -ruN ./code/unix/Conscript-dedicated ../quake3-1.32b-BUILT/./code/unix/Conscript-dedicated
+--- ./code/unix/Conscript-dedicated Mon Aug 15 23:56:27 2005
++++ ../quake3-1.32b-BUILT/./code/unix/Conscript-dedicated Mon Aug 22 20:52:42 2005
+@@ -63,7 +63,7 @@
+ ENV => { PATH => $ENV{PATH}, HOME => $ENV{HOME} },
+ # FIXME TTimo I'm not sure about what C_ONLY is for
+ CFLAGS => $BASE_CFLAGS . '-DC_ONLY',
+- LDFLAGS => '-ldl -lm',
++ LDFLAGS => '-lm',
+ LIBS => ' '
+ . $BUILD_DIR . '/unix/botlib.a '
+ . $BUILD_DIR . '/unix/asmlib.a '
diff --git a/games/quake3/files/patch-code-unix-Makefile b/games/quake3/files/patch-code-unix-Makefile
new file mode 100644
index 000000000000..2e5555444b17
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-Makefile
@@ -0,0 +1,99 @@
+--- code/unix/Makefile Sun May 5 12:21:10 2002
++++ ../../work/quake3-1.32b/code/unix/Makefile Sun Aug 28 23:16:03 2005
+@@ -136,7 +136,7 @@
+ ifeq ($(ARCH),ppc)
+ NEWPGCC=/loki/global/ppc/bin/gcc
+ CC=$(NEWPGCC)
+- RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -fomit-frame-pointer -pipe -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fno-strict-aliasing -fstrength-reduce
++ RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce
+ else
+ #NEWPGCC=/usr/local/gcc-2.95.2/bin/gcc # bk001205
+ #NEWPGCC=/loki/global/x86/bin/gcc
+@@ -146,9 +146,9 @@
+ # TTimo: legacy RELEASE_CFLAGS
+ # NOTE: the -fomit-frame-pointer option leads to an unstable binary on my test box if it was built on the main box
+ # but building on the Mdk 7.2 baseline seems to work
+- RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -mcpu=pentiumpro -march=pentium -fomit-frame-pointer -pipe -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fno-strict-aliasing -fstrength-reduce
++ RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -march=pentiumpro -march=pentium -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce
+ # TTimo: use this for building on P3 gcc 2.95.3 libc2.2 for all targets (experimental! -fomit-fram-pointer removed)
+-# RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -mcpu=pentiumpro -march=pentium -pipe -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fno-strict-aliasing -fstrength-reduce
++# RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -march=pentiumpro -march=pentium -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce
+ endif
+ endif
+
+@@ -162,7 +162,7 @@
+ RANLIB=ranlib
+
+ THREAD_LDFLAGS=-lpthread
+- LDFLAGS=-ldl -lm
++ LDFLAGS=-lm
+ GLLDFLAGS=-L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm
+
+ ifeq ($(ARCH),axp)
+@@ -223,7 +223,7 @@
+ #NEWPGCC=/usr/local/gcc-2.95.2/bin/gcc
+ NEWPGCC=/home/raistllin/src/gcc/build/install/bin/gcc
+ CC=$(shell if [ -f $(NEWPGCC) ]; then echo $(NEWPGCC); else echo pgcc; fi )
+-RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -mcpu=pentiumpro -march=pentium -fomit-frame-pointer -pipe -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -fno-strict-aliasing - fstrength-reduce
++RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -march=pentiumpro -march=pentium -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing - fstrength-reduce
+ endif
+
+ LIBEXT=a
+@@ -283,7 +283,7 @@
+ ARFLAGS=ar rv
+ RANLIB=ranlib
+
+-LDFLAGS=-ldl -lm
++LDFLAGS=-lm
+ GLLDFLAGS=-L/usr/X11/lib -lGL -lX11 -lXext -lm
+
+ TARGETS=$(B)/sgiquake3 \
+@@ -312,7 +312,7 @@
+ ifeq ($(PLATFORM),freebsd)
+ LDFLAGS=-lm
+ else
+-LDFLAGS=-ldl -lm
++LDFLAGS=-lm
+ endif # ifeq freebsd
+
+ TARGETS=\
+@@ -578,7 +578,6 @@
+ $(B)/client/linux_common.o \
+ $(B)/client/linux_qgl.o \
+ $(B)/client/linux_glimp.o \
+- $(B)/client/linux_joystick.o \
+ $(B)/client/linux_snd.o \
+ $(B)/client/snd_mixa.o \
+ $(B)/client/matha.o \
+@@ -587,7 +586,6 @@
+ $(B)/client/linux_common.o \
+ $(B)/client/linux_qgl.o \
+ $(B)/client/linux_glimp_smp.o \
+- $(B)/client/linux_joystick.o \
+ $(B)/client/linux_snd.o \
+ $(B)/client/snd_mixa.o \
+ $(B)/client/matha.o
+@@ -754,7 +752,6 @@
+ $(B)/client/linux_common.o : $(UDIR)/linux_common.c; $(DO_CC)
+ $(B)/client/linux_glimp.o : $(UDIR)/linux_glimp.c; $(DO_CC) $(GL_CFLAGS)
+ $(B)/client/linux_glimp_smp.o : $(UDIR)/linux_glimp.c; $(DO_SMP_CC) $(GL_CFLAGS)
+-$(B)/client/linux_joystick.o : $(UDIR)/linux_joystick.c; $(DO_CC)
+ $(B)/client/linux_qgl.o : $(UDIR)/linux_qgl.c; $(DO_CC) $(GL_CFLAGS)
+ $(B)/client/linux_input.o : $(UDIR)/linux_input.c; $(DO_CC)
+ $(B)/client/linux_snd.o : $(UDIR)/linux_snd.c; $(DO_CC)
+@@ -1629,7 +1626,6 @@
+ \
+ $(B)/q3static/linux_qgl.o \
+ $(B)/q3static/linux_glimp.o \
+- $(B)/q3static/linux_joystick.o \
+ $(B)/q3static/linux_snd.o \
+ $(B)/q3static/snd_mixa.o \
+ $(B)/q3static/matha.o
+@@ -1779,7 +1775,6 @@
+ $(B)/q3static/unix_net.o : $(UDIR)/unix_net.c; $(DO_CC) -DQ3_STATIC
+ $(B)/q3static/unix_shared.o : $(UDIR)/unix_shared.c; $(DO_CC) -DQ3_STATIC
+ $(B)/q3static/linux_glimp.o : $(UDIR)/linux_glimp.c; $(DO_CC) -DQ3_STATIC
+-$(B)/q3static/linux_joystick.o : $(UDIR)/linux_joystick.c; $(DO_CC) -DQ3_STATIC
+ $(B)/q3static/linux_qgl.o : $(UDIR)/linux_qgl.c; $(DO_CC) -DQ3_STATIC
+ $(B)/q3static/linux_input.o : $(UDIR)/linux_input.c; $(DO_CC) -DQ3_STATIC
+ $(B)/q3static/linux_snd.o : $(UDIR)/linux_snd.c; $(DO_CC) -DQ3_STATIC
diff --git a/games/quake3/files/patch-code-unix-cons b/games/quake3/files/patch-code-unix-cons
new file mode 100644
index 000000000000..71d5fac4ad93
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-cons
@@ -0,0 +1,21 @@
+diff -ruN ./code/unix/cons ../quake3-1.32b-BUILT/./code/unix/cons
+--- ./code/unix/cons Fri Jun 14 15:01:32 2002
++++ ../quake3-1.32b-BUILT/./code/unix/cons Tue Aug 23 14:21:45 2005
+@@ -271,7 +271,7 @@
+ # Defaults for a typical (?) UNIX platform.
+ # Your mileage may vary.
+ 'unix' => [
+- 'CC' => 'cc',
++ 'CC' => 'gcc',
+ 'CFLAGS' => '',
+ 'CCCOM' => '%CC %CFLAGS %_IFLAGS -c %< -o %>',
+ 'CXX' => '%CC',
+@@ -294,7 +294,7 @@
+ 'LD' => 'ld',
+ 'LDFLAGS' => '',
+ 'PREFLIB' => 'lib',
+- 'ENV' => { 'PATH' => '/bin:/usr/bin' },
++ 'ENV' => { 'PATH' => '/bin:/usr/bin:/usr/local/bin' },
+ ],
+ );
+
diff --git a/games/quake3/files/patch-code-unix-linux_common.c b/games/quake3/files/patch-code-unix-linux_common.c
new file mode 100644
index 000000000000..a03c4f64ece7
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-linux_common.c
@@ -0,0 +1,18 @@
+diff -ruN ./code/unix/linux_common.c ../quake3-1.32b-BUILT/./code/unix/linux_common.c
+--- ./code/unix/linux_common.c Tue Aug 16 02:10:07 2005
++++ ../quake3-1.32b-BUILT/./code/unix/linux_common.c Tue Aug 23 13:38:35 2005
+@@ -33,6 +33,7 @@
+ #include <unistd.h> // AH - for size_t
+ #include <string.h>
+
++
+ // bk001207 - we need something under Linux, too. Mac?
+ #if 1 // defined(C_ONLY) // bk010102 - dedicated?
+ void Com_Memcpy (void* dest, const void* src, const size_t count) {
+@@ -340,5 +341,6 @@
+ break;
+ }
+ }
++
+
+ #endif
diff --git a/games/quake3/files/patch-code-unix-linux_glimp.c b/games/quake3/files/patch-code-unix-linux_glimp.c
new file mode 100644
index 000000000000..e4c4654000b4
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-linux_glimp.c
@@ -0,0 +1,11 @@
+diff -ruN ./code/unix/linux_glimp.c ../quake3-1.32b-BUILT/./code/unix/linux_glimp.c
+--- ./code/unix/linux_glimp.c Tue Aug 16 02:10:07 2005
++++ ../quake3-1.32b-BUILT/./code/unix/linux_glimp.c Mon Aug 22 22:11:16 2005
+@@ -1774,7 +1774,5 @@
+ // bk010216 - added stubs for non-Linux UNIXes here
+ // FIXME - use NO_JOYSTICK or something else generic
+
+-#if defined( __FreeBSD__ ) // rb010123
+ void IN_StartupJoystick( void ) {}
+ void IN_JoyMove( void ) {}
+-#endif
diff --git a/games/quake3/files/patch-code-unix-unix_shared.c b/games/quake3/files/patch-code-unix-unix_shared.c
new file mode 100644
index 000000000000..27492d29bbbb
--- /dev/null
+++ b/games/quake3/files/patch-code-unix-unix_shared.c
@@ -0,0 +1,45 @@
+--- code/unix/unix_shared.c Tue Aug 16 02:10:07 2005
++++ ../../work/quake3-1.32b/code/unix/unix_shared.c Mon Aug 29 00:37:41 2005
+@@ -38,7 +38,7 @@
+ static char cdPath[MAX_OSPATH];
+
+ // Used to determine local installation path
+-static char installPath[MAX_OSPATH];
++static char installPath[MAX_OSPATH] = "##PREFIX##/lib/quake3"; // FreeBSD
+
+ // Used to determine where to store user-specific files
+ static char homePath[MAX_OSPATH];
+@@ -76,7 +76,7 @@
+ return curtime;
+ }
+
+-#if defined(__linux__) && !defined(DEDICATED)
++// #if defined(__linux__) && !defined(DEDICATED)
+ /*
+ ================
+ Sys_XTimeToSysTime
+@@ -98,11 +98,15 @@
+ {
+ int ret, time, test;
+
++ /*
++ Let's try to comment out this and see what will happen :-)
++
+ if (!in_subframe->value)
+ {
+ // if you don't want to do any event times corrections
+ return Sys_Milliseconds();
+ }
++ */
+
+ // test the wrap issue
+ #if 0
+@@ -136,7 +140,7 @@
+
+ return ret;
+ }
+-#endif
++// #endif
+
+ //#if 0 // bk001215 - see snapvector.nasm for replacement
+ #if (defined __APPLE__) // rcg010206 - using this for PPC builds...
diff --git a/games/quake3/files/patch-lcc-custom.mk b/games/quake3/files/patch-lcc-custom.mk
new file mode 100644
index 000000000000..8e6807919e3b
--- /dev/null
+++ b/games/quake3/files/patch-lcc-custom.mk
@@ -0,0 +1,6 @@
+diff -ruN ./lcc/custom.mk ../quake3-1.32b-BUILT/./lcc/custom.mk
+--- ./lcc/custom.mk Wed Oct 17 23:53:10 2001
++++ ../quake3-1.32b-BUILT/./lcc/custom.mk Mon Aug 22 20:50:29 2005
+@@ -1 +1 @@
+-BUILDDIR=/tmp
++BUILDDIR=./build
diff --git a/games/quake3/files/patch-lcc-makefile b/games/quake3/files/patch-lcc-makefile
new file mode 100644
index 000000000000..f5bf35620127
--- /dev/null
+++ b/games/quake3/files/patch-lcc-makefile
@@ -0,0 +1,12 @@
+diff -ruN ./lcc/makefile ../quake3-1.32b-BUILT/./lcc/makefile
+--- ./lcc/makefile Wed Oct 17 23:53:10 2001
++++ ../quake3-1.32b-BUILT/./lcc/makefile Mon Aug 22 20:59:15 2005
+@@ -136,7 +136,7 @@
+
+ $Blcc$E: $Blcc$O $Bhost$O; $(LD) $(LDFLAGS) -o $@ $Blcc$O $Bhost$O
+
+-SYSTEM=$(shell cc -print-search-dirs | head -n 1 | cut -b 10-)
++SYSTEM=/usr/lib
+
+ $Blcc$O: etc/lcc.c; $(CC) $(CFLAGS) -c -DTEMPDIR=\"$(TEMPDIR)\" -o $@ etc/lcc.c
+ $Bhost$O: $(HOSTFILE); $(CC) $(CFLAGS) -c -DSYSTEM=\"$(SYSTEM)\" -o $@ $(HOSTFILE)
diff --git a/games/quake3/pkg-descr b/games/quake3/pkg-descr
new file mode 100644
index 000000000000..9212bbe81040
--- /dev/null
+++ b/games/quake3/pkg-descr
@@ -0,0 +1,18 @@
+Quake III Arena, developed by the gaming wizards at id Software,
+is the third installment of one of the most popular computer game
+franchises of all time. Organic caverns, gothic cathedrals and
+futuristic spacescapes play host to Quake III Arena's unrivaled
+blend of action, strategy and jaw-dropping technology as Linux
+gamers are invited to square off against 32 of history's greatest
+warriors. Built around a revolutionary new graphics engine capable
+of delivering mind blowing 3D special effects including curved
+surfaces and volumetric fog, Quake III Arena is the final word in
+deathmatching mayhem.
+
+This is a native build for FreeBSD. Sorry, no joystick support
+is available at this time.
+
+WWW: http://www.idsoftware.com/games/quake/quake3-arena/
+
+- Linas
+shirshegsm@gmail.com
diff --git a/games/quake3/pkg-message b/games/quake3/pkg-message
new file mode 100644
index 000000000000..3ad5ccdfa8a5
--- /dev/null
+++ b/games/quake3/pkg-message
@@ -0,0 +1,7 @@
+-----
+Quake III client is installed in bin/quake3 and
+Quake III dedicated server in bin/q3ded.
+
+No .pak3's are installed, you need to copy/link them to
+~/.q3a/baseq3
+-----
diff --git a/games/quake3/pkg-plist b/games/quake3/pkg-plist
new file mode 100644
index 000000000000..584f4808a57b
--- /dev/null
+++ b/games/quake3/pkg-plist
@@ -0,0 +1,19 @@
+bin/q3ded
+bin/quake3
+lib/quake3/baseq3/cgamei386.so
+lib/quake3/baseq3/qagamei386.so
+lib/quake3/baseq3/uii386.so
+lib/quake3/baseq3/vm/cgame.qvm
+lib/quake3/baseq3/vm/qagame.qvm
+lib/quake3/baseq3/vm/ui.qvm
+lib/quake3/missionpack/cgamei386.so
+lib/quake3/missionpack/qagamei386.so
+lib/quake3/missionpack/uii386.so
+lib/quake3/missionpack/vm/cgame.qvm
+lib/quake3/missionpack/vm/qagame.qvm
+lib/quake3/missionpack/vm/ui.qvm
+@dirrm lib/quake3/baseq3/vm
+@dirrm lib/quake3/baseq3
+@dirrm lib/quake3/missionpack/vm
+@dirrm lib/quake3/missionpack
+@dirrm lib/quake3