1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-29 10:18:30 +00:00

This project, icculus.org/quake3 (sometimes referred to ioquake3, or ioq3 for

short) aims to build upon id Software's Quake 3 source code release. The
source code was released on August 20, 2005 under the GPL. Since then, we have
been cleaning up, fixing bugs, and adding features. Our permanent goal is to
create the open source Quake 3 distribution upon which people base their games
and projects. We also seek to have the perfect version of the engine for
playing Quake 3: Arena, Team Arena, and all popular mods. This distribution of
the engine has been ported to many new platforms and has had a slew of new
features added, along with massive bug extermination.

WWW: http://icculus.org/quake3/
This commit is contained in:
Alejandro Pulver 2006-06-07 22:42:16 +00:00
parent 64d74e1caf
commit e9a83999f9
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=164768
23 changed files with 1221 additions and 0 deletions

View File

@ -315,6 +315,7 @@
SUBDIR += imaze
SUBDIR += inform
SUBDIR += interlogic
SUBDIR += ioquake3
SUBDIR += ishido
SUBDIR += ivan
SUBDIR += jchessboard

158
games/ioquake3/Makefile Normal file
View File

@ -0,0 +1,158 @@
# New ports collection makefile for: ioquake3
# Date created: 3 Jun 2006
# Whom: alepulver
#
# $FreeBSD$
#
PORTNAME= ioquake3
PORTVERSION= 1.33
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_LOCAL}
MASTER_SITE_SUBDIR= alepulver
MAINTAINER= alepulver@FreeBSD.org
COMMENT= Cleaned-up and enhaced version of Quake 3
USE_BZIP2= yes
USE_GCC= 3.2+
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/quake3
OPTIONS= CLIENT "Build client" on \
GAMELIBS "Build game libraries (when not mandatory)" off \
DEDICATED "Build dedicated server" on \
OPENAL "Enable OpenAL (3D sound) support" off \
OPENAL_DLOPEN "Enable dynamic loading of OpenAL" off \
OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
SDL_AUDIO "Use SDL for audio" off \
SDL_VIDEO "Use SDL for video" off \
SMP "Build SMP (threaded) client" on \
VORBIS "Enable Ogg Vorbis codec support" off
MAKE_ENV+= DEFAULT_BASEDIR="${Q3DIR}" LIBDIR="${LIBDIR}" \
PTHREAD_LIBS="${PTHREAD_LIBS}"
PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
LIBDIR= ${PREFIX}/lib/${PORTNAME}
SVN_REV= 777
VM_ARCHS= amd64 i386 powerpc
.include <bsd.port.pre.mk>
.if ${OSVERSION} < 500000
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-code__unix__unix_shared.c
.endif
.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) && \
defined(WITHOUT_SMP)
IGNORE= needs at least one of CLIENT, DEDICATED and SMP options
.endif
.for i in ${ARCH}
. if ${VM_ARCHS:M${i}} != ""
HAVE_VM_COMPILED= yes
. endif
.endfor
.if defined(HAVE_VM_COMPILED)
MAKE_ENV+= HAVE_VM_COMPILED=true
.endif
.if !defined(WITHOUT_CLIENT) || !defined(WITHOUT_SMP)
# OpenAL
. if defined(WITH_OPENAL)
LIB_DEPENDS+= openal.0:${PORTSDIR}/audio/openal
MAKE_ENV+= USE_OPENAL=1
. if defined(WITH_OPENAL_DLOPEN)
MAKE_ENV+= USE_OPENAL_DLOPEN=1
. endif
. endif
# SDL
. if defined(WITH_SDL_AUDIO)
USE_SDL= sdl
MAKE_ENV+= USE_SDL_AUDIO=1
. endif
. if defined(WITH_SDL_VIDEO)
USE_SDL= sdl
MAKE_ENV+= USE_SDL_VIDEO=1
. else
USE_GL= yes
. endif
# Vorbis
. if defined(WITH_VORBIS)
LIB_DEPENDS+= vorbis.3:${PORTSDIR}/audio/libvorbis
MAKE_ENV+= USE_CODEC_VORBIS=1
. endif
.endif
.if !defined(WITHOUT_CLIENT)
MAKE_ENV+= BUILD_CLIENT=1
PLIST_SUB+= CLIENT=""
Q3BIN+= ioquake3
.else
PLIST_SUB+= CLIENT="@comment "
.endif
.if !defined(WITHOUT_DEDICATED)
MAKE_ENV+= BUILD_SERVER=1
PLIST_SUB+= DEDICATED=""
Q3BIN+= ioq3ded
.else
PLIST_SUB+= DEDICATED="@comment "
.endif
.if defined(WITH_GAMELIBS) || !defined(HAVE_VM_COMPILED)
MAKE_ENV+= BUILD_GAME_SO=1
PLIST_SUB+= GAMELIBS=""
.else
PLIST_SUB+= GAMELIBS="@comment "
.endif
.if !defined(WITHOUT_OPTIMIZED_CFLAGS)
MAKE_ENV+= USE_OPTIMIZED_CFLAGS=1
.endif
.if !defined(WITHOUT_SMP)
MAKE_ENV+= BUILD_CLIENT_SMP=1
PLIST_SUB+= SMP=""
Q3BIN+= ioquake3-smp
.else
PLIST_SUB+= SMP="@comment "
.endif
.if ${OSVERSION} < 500000
post-patch:
@${REINPLACE_CMD} -e 's|stdint\.h|inttypes.h|' \
${BUILD_WRKSRC}/code/qcommon/q_shared.h
.endif
do-install:
.for bin in ${Q3BIN}
${INSTALL_PROGRAM} ${WRKSRC}/build/release/${bin} ${PREFIX}/bin
.endfor
.if defined(WITH_GAMELIBS) || !defined(HAVE_VM_COMPILED)
.for dir in baseq3 missionpack
${MKDIR} ${LIBDIR}/${dir}
${INSTALL_PROGRAM} ${WRKSRC}/build/release/${dir}/*.so ${LIBDIR}/${dir}
.endfor
.endif
post-install:
.if defined(WITH_SDL_AUDIO) || defined(WITH_OPENAL)
@${ECHO_CMD}
@${ECHO_CMD} "WARNING: if you have sound problems try recompiling without SDL_AUDIO and OPENAL options." | ${FMT}
@${ECHO_CMD}
.endif
maint-gen-distfile:
@if [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \
${ECHO_CMD} "ERROR: the distfile already exists."; \
${FALSE}; \
fi
svn export -r${SVN_REV} svn://svn.icculus.org/quake3/trunk quake3
${TAR} jcf ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} quake3
${RM} -rf quake3
.include "${.CURDIR}/../quake3-data/Makefile.include"
.include <bsd.port.post.mk>

3
games/ioquake3/distinfo Normal file
View File

@ -0,0 +1,3 @@
MD5 (ioquake3-1.33.tar.bz2) = 0eaf6eb252e6b56d1195faf2d898c533
SHA256 (ioquake3-1.33.tar.bz2) = 9e9b7f4d7b39eb82c8b1de9dc0ce62d0eed4d676d21e1adfb4930832c5123abb
SIZE (ioquake3-1.33.tar.bz2) = 2421997

View File

@ -0,0 +1,24 @@
--- ./code/unix/unix_shared.c.orig Fri Nov 4 19:32:00 2005
+++ ./code/unix/unix_shared.c Wed Jun 7 16:52:01 2006
@@ -20,6 +20,7 @@
===========================================================================
*/
#include <sys/types.h>
+#include <sys/sysctl.h>
#include <sys/stat.h>
#include <errno.h>
#include <stdio.h>
@@ -430,6 +431,12 @@
// sysconf() in libc, POSIX.1 compliant
unsigned int Sys_ProcessorCount(void)
{
- return sysconf(_SC_NPROCESSORS_ONLN);
+ int mib[2], value, len;
+
+ mib[0] = CTL_HW;
+ mib[1] = HW_NCPU;
+ len = sizeof(value);
+ sysctl(mib, 2, &value, &len, NULL, 0);
+ return (value);
}
#endif

View File

@ -0,0 +1,316 @@
--- ./Makefile.orig Sat Apr 29 16:54:54 2006
+++ ./Makefile Wed Jun 7 19:34:25 2006
@@ -26,11 +26,19 @@
endif
endif
-BUILD_CLIENT =
-BUILD_CLIENT_SMP =
-BUILD_SERVER =
-BUILD_GAME_SO =
-BUILD_GAME_QVM =
+BUILD_CLIENT?=0
+BUILD_CLIENT_SMP?=0
+BUILD_GAME_QVM?=0
+BUILD_GAME_SO?=0
+BUILD_SERVER?=0
+HAVE_VM_COMPILED?=false
+USE_CODEC_VORBIS?=0
+USE_LOCAL_HEADERS?=0
+USE_OPENAL?=0
+USE_OPENAL_DLOPEN?=0
+USE_OPTIMIZED_CFLAGS?=0
+USE_SDL_AUDIO?=0
+USE_SDL_VIDEO?=0
#############################################################################
#
@@ -88,30 +96,10 @@
endif
export USE_CCACHE
-ifndef USE_SDL
-USE_SDL=1
-endif
-
-ifndef USE_OPENAL
-USE_OPENAL=1
-endif
-
-ifndef USE_OPENAL_DLOPEN
-USE_OPENAL_DLOPEN=0
-endif
-
-ifndef USE_CODEC_VORBIS
-USE_CODEC_VORBIS=0
-endif
-
-ifndef USE_LOCAL_HEADERS
-USE_LOCAL_HEADERS=1
-endif
-
#############################################################################
BD=$(BUILD_DIR)/debug-$(PLATFORM)-$(ARCH)
-BR=$(BUILD_DIR)/release-$(PLATFORM)-$(ARCH)
+BR=$(BUILD_DIR)/release
CDIR=$(MOUNT_DIR)/client
SDIR=$(MOUNT_DIR)/server
RDIR=$(MOUNT_DIR)/renderer
@@ -407,18 +395,12 @@
ifeq ($(PLATFORM),freebsd)
- ifneq (,$(findstring alpha,$(shell uname -m)))
- ARCH=axp
- else #default to i386
- ARCH=i386
- endif #alpha test
-
-
- BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes
+ BASE_CFLAGS = -DARCH='\"$(ARCH)\"' -DLIBDIR='\"$(LIBDIR)\"' -I$(LOCALBASE)/include -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes
- GL_CFLAGS = -I/usr/X11R6/include
+ GL_CFLAGS = -I$(X11BASE)/include
DEBUG_CFLAGS=$(BASE_CFLAGS) -g
+ RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -pipe
ifeq ($(USE_OPENAL),1)
BASE_CFLAGS += -DUSE_OPENAL=1
@@ -431,46 +413,61 @@
BASE_CFLAGS += -DUSE_CODEC_VORBIS=1
endif
- ifeq ($(USE_SDL),1)
- BASE_CFLAGS += $(shell sdl11-config --cflags) -DUSE_SDL_VIDEO=1 -DUSE_SDL_SOUND=1
+ ifeq ($(USE_SDL_AUDIO),1)
+ BASE_CFLAGS += $(shell $(SDL_CONFIG) --cflags)
+ else
+ ifeq ($(USE_SDL_VIDEO),1)
+ BASE_CFLAGS += $(shell $(SDL_CONFIG) --cflags)
+ endif
endif
- ifeq ($(ARCH),axp)
- CC=gcc
- BASE_CFLAGS += -DNO_VM_COMPILED
- RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O3 -ffast-math -funroll-loops \
- -fomit-frame-pointer -fexpensive-optimizations
- else
- ifeq ($(ARCH),i386)
- CC=gcc
- RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O3 -mtune=pentiumpro \
- -march=pentium -fomit-frame-pointer -pipe -ffast-math \
- -falign-loops=2 -falign-jumps=2 -falign-functions=2 \
- -funroll-loops -fstrength-reduce
- else
- BASE_CFLAGS += -DNO_VM_COMPILED
+ ifeq ($(USE_SDL_AUDIO),1)
+ BASE_CFLAGS += -DUSE_SDL_SOUND=1
endif
+
+ ifeq ($(USE_SDL_VIDEO),1)
+ BASE_CFLAGS += -DUSE_SDL_VIDEO=1
+ endif
+
+ ifeq ($(USE_OPTIMIZED_CFLAGS),1)
+ RELEASE_CFLAGS+=-O3 -ffast-math -funroll-loops -fomit-frame-pointer \
+ -fexpensive-optimizations
+ ifeq ($(ARCH),i386)
+ RELEASE_CFLAGS+=-falign-loops=2 -falign-jumps=2 -falign-functions=2 \
+ -fstrength-reduce
+ endif
+ endif
+
+ ifneq ($(HAVE_VM_COMPILED),true)
+ BASE_CFLAGS += -DNO_VM_COMPILED
endif
SHLIBEXT=so
SHLIBCFLAGS=-fPIC
SHLIBLDFLAGS=-shared $(LDFLAGS)
- THREAD_LDFLAGS=-lpthread
+ THREAD_LDFLAGS=$(PTHREAD_LIBS)
# don't need -ldl (FreeBSD)
- LDFLAGS=-lm
+ LDFLAGS+=-lm
- CLIENT_LDFLAGS =
+ CLIENT_LDFLAGS = -L$(LOCALBASE)/lib
- ifeq ($(USE_SDL),1)
- CLIENT_LDFLAGS += $(shell sdl11-config --libs)
+ ifeq ($(USE_SDL_AUDIO),1)
+ CLIENT_LDFLAGS += $(shell $(SDL_CONFIG) --libs)
else
- CLIENT_LDFLAGS += -L/usr/X11R6/$(LIB) -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
+ ifeq ($(USE_SDL_VIDEO),1)
+ CLIENT_LDFLAGS += $(shell $(SDL_CONFIG) --libs)
+ endif
+ endif
+
+ ifneq ($(USE_SDL_VIDEO),1)
+ CLIENT_LDFLAGS += -L$(X11BASE)/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
endif
ifeq ($(USE_OPENAL),1)
+ CLIENT_LDFLAGS += $(THREAD_LDFLAGS)
ifneq ($(USE_OPENAL_DLOPEN),1)
- CLIENT_LDFLAGS += $(THREAD_LDFLAGS) -lopenal
+ CLIENT_LDFLAGS += -lopenal
endif
endif
@@ -632,24 +629,24 @@
TARGETS =
ifneq ($(BUILD_SERVER),0)
- TARGETS += $(B)/ioq3ded.$(ARCH)$(BINEXT)
+ TARGETS += $(B)/ioq3ded$(BINEXT)
endif
ifneq ($(BUILD_CLIENT),0)
- TARGETS += $(B)/ioquake3.$(ARCH)$(BINEXT)
+ TARGETS += $(B)/ioquake3$(BINEXT)
ifneq ($(BUILD_CLIENT_SMP),0)
- TARGETS += $(B)/ioquake3-smp.$(ARCH)$(BINEXT)
+ TARGETS += $(B)/ioquake3-smp$(BINEXT)
endif
endif
ifneq ($(BUILD_GAME_SO),0)
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)/baseq3/cgame.$(SHLIBEXT) \
+ $(B)/baseq3/qagame.$(SHLIBEXT) \
+ $(B)/baseq3/ui.$(SHLIBEXT) \
+ $(B)/missionpack/cgame.$(SHLIBEXT) \
+ $(B)/missionpack/qagame.$(SHLIBEXT) \
+ $(B)/missionpack/ui.$(SHLIBEXT)
endif
ifneq ($(BUILD_GAME_QVM),0)
@@ -707,11 +704,11 @@
$(MAKE) targets B=$(BD) CFLAGS="$(CFLAGS) $(DEBUG_CFLAGS) $(DEPEND_CFLAGS)"
build_release: B=$(BR)
-build_release: makedirs tools
+build_release: makedirs
$(MAKE) targets B=$(BR) CFLAGS="$(CFLAGS) $(RELEASE_CFLAGS) $(DEPEND_CFLAGS)"
#Build both debug and release builds
-all:build_debug build_release
+all:build_release
targets: $(TARGETS)
@@ -919,11 +916,11 @@
$(B)/client/ftola.o \
$(B)/client/snapvectora.o
endif
-ifeq ($(ARCH),x86_64)
+ifeq ($(ARCH),amd64)
Q3OBJ += $(B)/client/vm_x86_64.o
endif
-ifeq ($(ARCH),ppc)
+ifeq ($(ARCH),powerpc)
ifneq ($(VM_PPC),)
Q3OBJ += $(B)/client/$(VM_PPC).o
endif
@@ -971,10 +968,10 @@
$(B)/client/sdl_glimp_smp.o
endif
-$(B)/ioquake3.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
+$(B)/ioquake3$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ) $(CLIENT_LDFLAGS) $(LDFLAGS) $(LIBSDLMAIN)
-$(B)/ioquake3-smp.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
+$(B)/ioquake3-smp$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) $(CLIENT_LDFLAGS) \
$(THREAD_LDFLAGS) $(LDFLAGS) $(LIBSDLMAIN)
@@ -1253,17 +1250,17 @@
$(B)/ded/snapvectora.o $(B)/ded/matha.o
endif
-ifeq ($(ARCH),x86_64)
+ifeq ($(ARCH),amd64)
Q3DOBJ += $(B)/ded/vm_x86_64.o
endif
-ifeq ($(ARCH),ppc)
+ifeq ($(ARCH),powerpc)
ifneq ($(VM_PPC),)
Q3DOBJ += $(B)/ded/$(VM_PPC).o
endif
endif
-$(B)/ioq3ded.$(ARCH)$(BINEXT): $(Q3DOBJ)
+$(B)/ioq3ded$(BINEXT): $(Q3DOBJ)
$(CC) -o $@ $(Q3DOBJ) $(LDFLAGS)
$(B)/ded/sv_bot.o : $(SDIR)/sv_bot.c; $(DO_DED_CC)
@@ -1377,7 +1374,7 @@
Q3CGOBJ = $(Q3CGOBJ_) $(B)/baseq3/cgame/cg_syscalls.o
Q3CGVMOBJ = $(Q3CGOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/baseq3/cgame$(ARCH).$(SHLIBEXT) : $(Q3CGOBJ)
+$(B)/baseq3/cgame.$(SHLIBEXT) : $(Q3CGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3CGOBJ)
$(B)/baseq3/vm/cgame.qvm: $(Q3CGVMOBJ) $(CGDIR)/cg_syscalls.asm
@@ -1418,7 +1415,7 @@
MPCGOBJ = $(MPCGOBJ_) $(B)/missionpack/cgame/cg_syscalls.o
MPCGVMOBJ = $(MPCGOBJ_:%.o=%.asm) $(B)/missionpack/game/bg_lib.asm
-$(B)/missionpack/cgame$(ARCH).$(SHLIBEXT) : $(MPCGOBJ)
+$(B)/missionpack/cgame.$(SHLIBEXT) : $(MPCGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPCGOBJ)
$(B)/missionpack/vm/cgame.qvm: $(MPCGVMOBJ) $(CGDIR)/cg_syscalls.asm
@@ -1468,7 +1465,7 @@
Q3GOBJ = $(Q3GOBJ_) $(B)/baseq3/game/g_syscalls.o
Q3GVMOBJ = $(Q3GOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/baseq3/qagame$(ARCH).$(SHLIBEXT) : $(Q3GOBJ)
+$(B)/baseq3/qagame.$(SHLIBEXT) : $(Q3GOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3GOBJ)
$(B)/baseq3/vm/qagame.qvm: $(Q3GVMOBJ) $(GDIR)/g_syscalls.asm
@@ -1516,7 +1513,7 @@
MPGOBJ = $(MPGOBJ_) $(B)/missionpack/game/g_syscalls.o
MPGVMOBJ = $(MPGOBJ_:%.o=%.asm) $(B)/missionpack/game/bg_lib.asm
-$(B)/missionpack/qagame$(ARCH).$(SHLIBEXT) : $(MPGOBJ)
+$(B)/missionpack/qagame.$(SHLIBEXT) : $(MPGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPGOBJ)
$(B)/missionpack/vm/qagame.qvm: $(MPGVMOBJ) $(GDIR)/g_syscalls.asm
@@ -1576,7 +1573,7 @@
Q3UIOBJ = $(Q3UIOBJ_) $(B)/missionpack/ui/ui_syscalls.o
Q3UIVMOBJ = $(Q3UIOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/baseq3/ui$(ARCH).$(SHLIBEXT) : $(Q3UIOBJ)
+$(B)/baseq3/ui.$(SHLIBEXT) : $(Q3UIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(Q3UIOBJ)
$(B)/baseq3/vm/ui.qvm: $(Q3UIVMOBJ) $(UIDIR)/ui_syscalls.asm
@@ -1601,7 +1598,7 @@
MPUIOBJ = $(MPUIOBJ_) $(B)/missionpack/ui/ui_syscalls.o
MPUIVMOBJ = $(MPUIOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/missionpack/ui$(ARCH).$(SHLIBEXT) : $(MPUIOBJ)
+$(B)/missionpack/ui.$(SHLIBEXT) : $(MPUIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(MPUIOBJ)
$(B)/missionpack/vm/ui.qvm: $(MPUIVMOBJ) $(UIDIR)/ui_syscalls.asm

View File

@ -0,0 +1,11 @@
--- ./code/botlib/be_interface.c.orig Wed Apr 26 10:36:58 2006
+++ ./code/botlib/be_interface.c Wed Jun 7 19:34:25 2006
@@ -155,7 +155,7 @@
} else {
Com_sprintf(logfilename, sizeof(logfilename), "botlib.log");
}
- Log_Open(logfilename);
+ Log_Open("/dev/null");
//
botimport.Print(PRT_MESSAGE, "------- BotLib Initialization -------\n");
//

View File

@ -0,0 +1,10 @@
--- ./code/qcommon/common.c.orig Wed Apr 26 08:27:12 2006
+++ ./code/qcommon/common.c Wed Jun 7 19:34:25 2006
@@ -25,6 +25,7 @@
#include "qcommon.h"
#include <setjmp.h>
#ifndef _WIN32
+#include <sys/types.h>
#include <netinet/in.h>
#include <sys/stat.h> // umask
#else

View File

@ -0,0 +1,15 @@
--- ./code/qcommon/q_platform.h.orig Tue Dec 27 16:46:01 2005
+++ ./code/qcommon/q_platform.h Wed Jun 7 19:35:23 2006
@@ -176,11 +176,7 @@
#define ID_INLINE inline
#define PATH_SEP '/'
-#ifdef __i386__
-#define ARCH_STRING "i386"
-#elif defined __axp__
-#define ARCH_STRING "alpha"
-#endif
+#define ARCH_STRING ARCH
#if BYTE_ORDER == BIG_ENDIAN
#define Q3_BIG_ENDIAN

View File

@ -0,0 +1,19 @@
--- ./code/unix/linux_glimp.c.orig Sun Apr 30 11:32:56 2006
+++ ./code/unix/linux_glimp.c Wed Jun 7 19:34:25 2006
@@ -631,8 +631,14 @@
dx = ((int)event.xmotion.x - mwx);
dy = ((int)event.xmotion.y - mwy);
- mx += dx;
- my += dy;
+ if (abs(dx) > 1)
+ mx += dx * 2;
+ else
+ mx += dx;
+ if (abs(dy) > 1)
+ my += dy * 2;
+ else
+ my += dy;
mwx = event.xmotion.x;
mwy = event.xmotion.y;

View File

@ -0,0 +1,31 @@
--- ./code/unix/unix_main.c.orig Sun Feb 26 18:22:12 2006
+++ ./code/unix/unix_main.c Wed Jun 7 19:34:25 2006
@@ -774,6 +774,7 @@
char curpath[MAX_OSPATH];
char fname[MAX_OSPATH];
char *basepath;
+ char *libpath;
char *homepath;
char *pwdpath;
char *cdpath;
@@ -789,14 +790,19 @@
// TODO: use fs_searchpaths from files.c
pwdpath = Sys_Cwd();
basepath = Cvar_VariableString( "fs_basepath" );
+ libpath = LIBDIR;
homepath = Cvar_VariableString( "fs_homepath" );
cdpath = Cvar_VariableString( "fs_cdpath" );
gamedir = Cvar_VariableString( "fs_game" );
- libHandle = try_dlopen(pwdpath, gamedir, fname, fqpath);
+ if(!libHandle && homepath)
+ libHandle = try_dlopen(pwdpath, gamedir, fname, fqpath);
if(!libHandle && homepath)
libHandle = try_dlopen(homepath, gamedir, fname, fqpath);
+
+ if(!libHandle && basepath)
+ libHandle = try_dlopen(libpath, gamedir, fname, fqpath);
if(!libHandle && basepath)
libHandle = try_dlopen(basepath, gamedir, fname, fqpath);

11
games/ioquake3/pkg-descr Normal file
View File

@ -0,0 +1,11 @@
This project, icculus.org/quake3 (sometimes referred to ioquake3, or ioq3 for
short) aims to build upon id Software's Quake 3 source code release. The
source code was released on August 20, 2005 under the GPL. Since then, we have
been cleaning up, fixing bugs, and adding features. Our permanent goal is to
create the open source Quake 3 distribution upon which people base their games
and projects. We also seek to have the perfect version of the engine for
playing Quake 3: Arena, Team Arena, and all popular mods. This distribution of
the engine has been ported to many new platforms and has had a slew of new
features added, along with massive bug extermination.
WWW: http://icculus.org/quake3/

12
games/ioquake3/pkg-plist Normal file
View File

@ -0,0 +1,12 @@
%%DEDICATED%%bin/ioq3ded
%%CLIENT%%bin/ioquake3
%%SMP%%bin/ioquake3-smp
%%GAMELIBS%%%%LIBDIR%%/baseq3/cgame.so
%%GAMELIBS%%%%LIBDIR%%/baseq3/qagame.so
%%GAMELIBS%%%%LIBDIR%%/baseq3/ui.so
%%GAMELIBS%%%%LIBDIR%%/missionpack/cgame.so
%%GAMELIBS%%%%LIBDIR%%/missionpack/qagame.so
%%GAMELIBS%%%%LIBDIR%%/missionpack/ui.so
%%GAMELIBS%%@dirrm %%LIBDIR%%/missionpack
%%GAMELIBS%%@dirrm %%LIBDIR%%/baseq3
%%GAMELIBS%%@dirrm %%LIBDIR%%

View File

@ -0,0 +1,158 @@
# New ports collection makefile for: ioquake3
# Date created: 3 Jun 2006
# Whom: alepulver
#
# $FreeBSD$
#
PORTNAME= ioquake3
PORTVERSION= 1.33
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_LOCAL}
MASTER_SITE_SUBDIR= alepulver
MAINTAINER= alepulver@FreeBSD.org
COMMENT= Cleaned-up and enhaced version of Quake 3
USE_BZIP2= yes
USE_GCC= 3.2+
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/quake3
OPTIONS= CLIENT "Build client" on \
GAMELIBS "Build game libraries (when not mandatory)" off \
DEDICATED "Build dedicated server" on \
OPENAL "Enable OpenAL (3D sound) support" off \
OPENAL_DLOPEN "Enable dynamic loading of OpenAL" off \
OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
SDL_AUDIO "Use SDL for audio" off \
SDL_VIDEO "Use SDL for video" off \
SMP "Build SMP (threaded) client" on \
VORBIS "Enable Ogg Vorbis codec support" off
MAKE_ENV+= DEFAULT_BASEDIR="${Q3DIR}" LIBDIR="${LIBDIR}" \
PTHREAD_LIBS="${PTHREAD_LIBS}"
PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
LIBDIR= ${PREFIX}/lib/${PORTNAME}
SVN_REV= 777
VM_ARCHS= amd64 i386 powerpc
.include <bsd.port.pre.mk>
.if ${OSVERSION} < 500000
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-code__unix__unix_shared.c
.endif
.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) && \
defined(WITHOUT_SMP)
IGNORE= needs at least one of CLIENT, DEDICATED and SMP options
.endif
.for i in ${ARCH}
. if ${VM_ARCHS:M${i}} != ""
HAVE_VM_COMPILED= yes
. endif
.endfor
.if defined(HAVE_VM_COMPILED)
MAKE_ENV+= HAVE_VM_COMPILED=true
.endif
.if !defined(WITHOUT_CLIENT) || !defined(WITHOUT_SMP)
# OpenAL
. if defined(WITH_OPENAL)
LIB_DEPENDS+= openal.0:${PORTSDIR}/audio/openal
MAKE_ENV+= USE_OPENAL=1
. if defined(WITH_OPENAL_DLOPEN)
MAKE_ENV+= USE_OPENAL_DLOPEN=1
. endif
. endif
# SDL
. if defined(WITH_SDL_AUDIO)
USE_SDL= sdl
MAKE_ENV+= USE_SDL_AUDIO=1
. endif
. if defined(WITH_SDL_VIDEO)
USE_SDL= sdl
MAKE_ENV+= USE_SDL_VIDEO=1
. else
USE_GL= yes
. endif
# Vorbis
. if defined(WITH_VORBIS)
LIB_DEPENDS+= vorbis.3:${PORTSDIR}/audio/libvorbis
MAKE_ENV+= USE_CODEC_VORBIS=1
. endif
.endif
.if !defined(WITHOUT_CLIENT)
MAKE_ENV+= BUILD_CLIENT=1
PLIST_SUB+= CLIENT=""
Q3BIN+= ioquake3
.else
PLIST_SUB+= CLIENT="@comment "
.endif
.if !defined(WITHOUT_DEDICATED)
MAKE_ENV+= BUILD_SERVER=1
PLIST_SUB+= DEDICATED=""
Q3BIN+= ioq3ded
.else
PLIST_SUB+= DEDICATED="@comment "
.endif
.if defined(WITH_GAMELIBS) || !defined(HAVE_VM_COMPILED)
MAKE_ENV+= BUILD_GAME_SO=1
PLIST_SUB+= GAMELIBS=""
.else
PLIST_SUB+= GAMELIBS="@comment "
.endif
.if !defined(WITHOUT_OPTIMIZED_CFLAGS)
MAKE_ENV+= USE_OPTIMIZED_CFLAGS=1
.endif
.if !defined(WITHOUT_SMP)
MAKE_ENV+= BUILD_CLIENT_SMP=1
PLIST_SUB+= SMP=""
Q3BIN+= ioquake3-smp
.else
PLIST_SUB+= SMP="@comment "
.endif
.if ${OSVERSION} < 500000
post-patch:
@${REINPLACE_CMD} -e 's|stdint\.h|inttypes.h|' \
${BUILD_WRKSRC}/code/qcommon/q_shared.h
.endif
do-install:
.for bin in ${Q3BIN}
${INSTALL_PROGRAM} ${WRKSRC}/build/release/${bin} ${PREFIX}/bin
.endfor
.if defined(WITH_GAMELIBS) || !defined(HAVE_VM_COMPILED)
.for dir in baseq3 missionpack
${MKDIR} ${LIBDIR}/${dir}
${INSTALL_PROGRAM} ${WRKSRC}/build/release/${dir}/*.so ${LIBDIR}/${dir}
.endfor
.endif
post-install:
.if defined(WITH_SDL_AUDIO) || defined(WITH_OPENAL)
@${ECHO_CMD}
@${ECHO_CMD} "WARNING: if you have sound problems try recompiling without SDL_AUDIO and OPENAL options." | ${FMT}
@${ECHO_CMD}
.endif
maint-gen-distfile:
@if [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \
${ECHO_CMD} "ERROR: the distfile already exists."; \
${FALSE}; \
fi
svn export -r${SVN_REV} svn://svn.icculus.org/quake3/trunk quake3
${TAR} jcf ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} quake3
${RM} -rf quake3
.include "${.CURDIR}/../quake3-data/Makefile.include"
.include <bsd.port.post.mk>

View File

@ -0,0 +1,3 @@
MD5 (ioquake3-1.33.tar.bz2) = 0eaf6eb252e6b56d1195faf2d898c533
SHA256 (ioquake3-1.33.tar.bz2) = 9e9b7f4d7b39eb82c8b1de9dc0ce62d0eed4d676d21e1adfb4930832c5123abb
SIZE (ioquake3-1.33.tar.bz2) = 2421997

View File

@ -0,0 +1,24 @@
--- ./code/unix/unix_shared.c.orig Fri Nov 4 19:32:00 2005
+++ ./code/unix/unix_shared.c Wed Jun 7 16:52:01 2006
@@ -20,6 +20,7 @@
===========================================================================
*/
#include <sys/types.h>
+#include <sys/sysctl.h>
#include <sys/stat.h>
#include <errno.h>
#include <stdio.h>
@@ -430,6 +431,12 @@
// sysconf() in libc, POSIX.1 compliant
unsigned int Sys_ProcessorCount(void)
{
- return sysconf(_SC_NPROCESSORS_ONLN);
+ int mib[2], value, len;
+
+ mib[0] = CTL_HW;
+ mib[1] = HW_NCPU;
+ len = sizeof(value);
+ sysctl(mib, 2, &value, &len, NULL, 0);
+ return (value);
}
#endif

View File

@ -0,0 +1,316 @@
--- ./Makefile.orig Sat Apr 29 16:54:54 2006
+++ ./Makefile Wed Jun 7 19:34:25 2006
@@ -26,11 +26,19 @@
endif
endif
-BUILD_CLIENT =
-BUILD_CLIENT_SMP =
-BUILD_SERVER =
-BUILD_GAME_SO =
-BUILD_GAME_QVM =
+BUILD_CLIENT?=0
+BUILD_CLIENT_SMP?=0
+BUILD_GAME_QVM?=0
+BUILD_GAME_SO?=0
+BUILD_SERVER?=0
+HAVE_VM_COMPILED?=false
+USE_CODEC_VORBIS?=0
+USE_LOCAL_HEADERS?=0
+USE_OPENAL?=0
+USE_OPENAL_DLOPEN?=0
+USE_OPTIMIZED_CFLAGS?=0
+USE_SDL_AUDIO?=0
+USE_SDL_VIDEO?=0
#############################################################################
#
@@ -88,30 +96,10 @@
endif
export USE_CCACHE
-ifndef USE_SDL
-USE_SDL=1
-endif
-
-ifndef USE_OPENAL
-USE_OPENAL=1
-endif
-
-ifndef USE_OPENAL_DLOPEN
-USE_OPENAL_DLOPEN=0
-endif
-
-ifndef USE_CODEC_VORBIS
-USE_CODEC_VORBIS=0
-endif
-
-ifndef USE_LOCAL_HEADERS
-USE_LOCAL_HEADERS=1
-endif
-
#############################################################################
BD=$(BUILD_DIR)/debug-$(PLATFORM)-$(ARCH)
-BR=$(BUILD_DIR)/release-$(PLATFORM)-$(ARCH)
+BR=$(BUILD_DIR)/release
CDIR=$(MOUNT_DIR)/client
SDIR=$(MOUNT_DIR)/server
RDIR=$(MOUNT_DIR)/renderer
@@ -407,18 +395,12 @@
ifeq ($(PLATFORM),freebsd)
- ifneq (,$(findstring alpha,$(shell uname -m)))
- ARCH=axp
- else #default to i386
- ARCH=i386
- endif #alpha test
-
-
- BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes
+ BASE_CFLAGS = -DARCH='\"$(ARCH)\"' -DLIBDIR='\"$(LIBDIR)\"' -I$(LOCALBASE)/include -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes
- GL_CFLAGS = -I/usr/X11R6/include
+ GL_CFLAGS = -I$(X11BASE)/include
DEBUG_CFLAGS=$(BASE_CFLAGS) -g
+ RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -pipe
ifeq ($(USE_OPENAL),1)
BASE_CFLAGS += -DUSE_OPENAL=1
@@ -431,46 +413,61 @@
BASE_CFLAGS += -DUSE_CODEC_VORBIS=1
endif
- ifeq ($(USE_SDL),1)
- BASE_CFLAGS += $(shell sdl11-config --cflags) -DUSE_SDL_VIDEO=1 -DUSE_SDL_SOUND=1
+ ifeq ($(USE_SDL_AUDIO),1)
+ BASE_CFLAGS += $(shell $(SDL_CONFIG) --cflags)
+ else
+ ifeq ($(USE_SDL_VIDEO),1)
+ BASE_CFLAGS += $(shell $(SDL_CONFIG) --cflags)
+ endif
endif
- ifeq ($(ARCH),axp)
- CC=gcc
- BASE_CFLAGS += -DNO_VM_COMPILED
- RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O3 -ffast-math -funroll-loops \
- -fomit-frame-pointer -fexpensive-optimizations
- else
- ifeq ($(ARCH),i386)
- CC=gcc
- RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O3 -mtune=pentiumpro \
- -march=pentium -fomit-frame-pointer -pipe -ffast-math \
- -falign-loops=2 -falign-jumps=2 -falign-functions=2 \
- -funroll-loops -fstrength-reduce
- else
- BASE_CFLAGS += -DNO_VM_COMPILED
+ ifeq ($(USE_SDL_AUDIO),1)
+ BASE_CFLAGS += -DUSE_SDL_SOUND=1
endif
+
+ ifeq ($(USE_SDL_VIDEO),1)
+ BASE_CFLAGS += -DUSE_SDL_VIDEO=1
+ endif
+
+ ifeq ($(USE_OPTIMIZED_CFLAGS),1)
+ RELEASE_CFLAGS+=-O3 -ffast-math -funroll-loops -fomit-frame-pointer \
+ -fexpensive-optimizations
+ ifeq ($(ARCH),i386)
+ RELEASE_CFLAGS+=-falign-loops=2 -falign-jumps=2 -falign-functions=2 \
+ -fstrength-reduce
+ endif
+ endif
+
+ ifneq ($(HAVE_VM_COMPILED),true)
+ BASE_CFLAGS += -DNO_VM_COMPILED
endif
SHLIBEXT=so
SHLIBCFLAGS=-fPIC
SHLIBLDFLAGS=-shared $(LDFLAGS)
- THREAD_LDFLAGS=-lpthread
+ THREAD_LDFLAGS=$(PTHREAD_LIBS)
# don't need -ldl (FreeBSD)
- LDFLAGS=-lm
+ LDFLAGS+=-lm
- CLIENT_LDFLAGS =
+ CLIENT_LDFLAGS = -L$(LOCALBASE)/lib
- ifeq ($(USE_SDL),1)
- CLIENT_LDFLAGS += $(shell sdl11-config --libs)
+ ifeq ($(USE_SDL_AUDIO),1)
+ CLIENT_LDFLAGS += $(shell $(SDL_CONFIG) --libs)
else
- CLIENT_LDFLAGS += -L/usr/X11R6/$(LIB) -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
+ ifeq ($(USE_SDL_VIDEO),1)
+ CLIENT_LDFLAGS += $(shell $(SDL_CONFIG) --libs)
+ endif
+ endif
+
+ ifneq ($(USE_SDL_VIDEO),1)
+ CLIENT_LDFLAGS += -L$(X11BASE)/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
endif
ifeq ($(USE_OPENAL),1)
+ CLIENT_LDFLAGS += $(THREAD_LDFLAGS)
ifneq ($(USE_OPENAL_DLOPEN),1)
- CLIENT_LDFLAGS += $(THREAD_LDFLAGS) -lopenal
+ CLIENT_LDFLAGS += -lopenal
endif
endif
@@ -632,24 +629,24 @@
TARGETS =
ifneq ($(BUILD_SERVER),0)
- TARGETS += $(B)/ioq3ded.$(ARCH)$(BINEXT)
+ TARGETS += $(B)/ioq3ded$(BINEXT)
endif
ifneq ($(BUILD_CLIENT),0)
- TARGETS += $(B)/ioquake3.$(ARCH)$(BINEXT)
+ TARGETS += $(B)/ioquake3$(BINEXT)
ifneq ($(BUILD_CLIENT_SMP),0)
- TARGETS += $(B)/ioquake3-smp.$(ARCH)$(BINEXT)
+ TARGETS += $(B)/ioquake3-smp$(BINEXT)
endif
endif
ifneq ($(BUILD_GAME_SO),0)
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)/baseq3/cgame.$(SHLIBEXT) \
+ $(B)/baseq3/qagame.$(SHLIBEXT) \
+ $(B)/baseq3/ui.$(SHLIBEXT) \
+ $(B)/missionpack/cgame.$(SHLIBEXT) \
+ $(B)/missionpack/qagame.$(SHLIBEXT) \
+ $(B)/missionpack/ui.$(SHLIBEXT)
endif
ifneq ($(BUILD_GAME_QVM),0)
@@ -707,11 +704,11 @@
$(MAKE) targets B=$(BD) CFLAGS="$(CFLAGS) $(DEBUG_CFLAGS) $(DEPEND_CFLAGS)"
build_release: B=$(BR)
-build_release: makedirs tools
+build_release: makedirs
$(MAKE) targets B=$(BR) CFLAGS="$(CFLAGS) $(RELEASE_CFLAGS) $(DEPEND_CFLAGS)"
#Build both debug and release builds
-all:build_debug build_release
+all:build_release
targets: $(TARGETS)
@@ -919,11 +916,11 @@
$(B)/client/ftola.o \
$(B)/client/snapvectora.o
endif
-ifeq ($(ARCH),x86_64)
+ifeq ($(ARCH),amd64)
Q3OBJ += $(B)/client/vm_x86_64.o
endif
-ifeq ($(ARCH),ppc)
+ifeq ($(ARCH),powerpc)
ifneq ($(VM_PPC),)
Q3OBJ += $(B)/client/$(VM_PPC).o
endif
@@ -971,10 +968,10 @@
$(B)/client/sdl_glimp_smp.o
endif
-$(B)/ioquake3.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
+$(B)/ioquake3$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ) $(CLIENT_LDFLAGS) $(LDFLAGS) $(LIBSDLMAIN)
-$(B)/ioquake3-smp.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
+$(B)/ioquake3-smp$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) $(CLIENT_LDFLAGS) \
$(THREAD_LDFLAGS) $(LDFLAGS) $(LIBSDLMAIN)
@@ -1253,17 +1250,17 @@
$(B)/ded/snapvectora.o $(B)/ded/matha.o
endif
-ifeq ($(ARCH),x86_64)
+ifeq ($(ARCH),amd64)
Q3DOBJ += $(B)/ded/vm_x86_64.o
endif
-ifeq ($(ARCH),ppc)
+ifeq ($(ARCH),powerpc)
ifneq ($(VM_PPC),)
Q3DOBJ += $(B)/ded/$(VM_PPC).o
endif
endif
-$(B)/ioq3ded.$(ARCH)$(BINEXT): $(Q3DOBJ)
+$(B)/ioq3ded$(BINEXT): $(Q3DOBJ)
$(CC) -o $@ $(Q3DOBJ) $(LDFLAGS)
$(B)/ded/sv_bot.o : $(SDIR)/sv_bot.c; $(DO_DED_CC)
@@ -1377,7 +1374,7 @@
Q3CGOBJ = $(Q3CGOBJ_) $(B)/baseq3/cgame/cg_syscalls.o
Q3CGVMOBJ = $(Q3CGOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/baseq3/cgame$(ARCH).$(SHLIBEXT) : $(Q3CGOBJ)
+$(B)/baseq3/cgame.$(SHLIBEXT) : $(Q3CGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3CGOBJ)
$(B)/baseq3/vm/cgame.qvm: $(Q3CGVMOBJ) $(CGDIR)/cg_syscalls.asm
@@ -1418,7 +1415,7 @@
MPCGOBJ = $(MPCGOBJ_) $(B)/missionpack/cgame/cg_syscalls.o
MPCGVMOBJ = $(MPCGOBJ_:%.o=%.asm) $(B)/missionpack/game/bg_lib.asm
-$(B)/missionpack/cgame$(ARCH).$(SHLIBEXT) : $(MPCGOBJ)
+$(B)/missionpack/cgame.$(SHLIBEXT) : $(MPCGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPCGOBJ)
$(B)/missionpack/vm/cgame.qvm: $(MPCGVMOBJ) $(CGDIR)/cg_syscalls.asm
@@ -1468,7 +1465,7 @@
Q3GOBJ = $(Q3GOBJ_) $(B)/baseq3/game/g_syscalls.o
Q3GVMOBJ = $(Q3GOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/baseq3/qagame$(ARCH).$(SHLIBEXT) : $(Q3GOBJ)
+$(B)/baseq3/qagame.$(SHLIBEXT) : $(Q3GOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3GOBJ)
$(B)/baseq3/vm/qagame.qvm: $(Q3GVMOBJ) $(GDIR)/g_syscalls.asm
@@ -1516,7 +1513,7 @@
MPGOBJ = $(MPGOBJ_) $(B)/missionpack/game/g_syscalls.o
MPGVMOBJ = $(MPGOBJ_:%.o=%.asm) $(B)/missionpack/game/bg_lib.asm
-$(B)/missionpack/qagame$(ARCH).$(SHLIBEXT) : $(MPGOBJ)
+$(B)/missionpack/qagame.$(SHLIBEXT) : $(MPGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPGOBJ)
$(B)/missionpack/vm/qagame.qvm: $(MPGVMOBJ) $(GDIR)/g_syscalls.asm
@@ -1576,7 +1573,7 @@
Q3UIOBJ = $(Q3UIOBJ_) $(B)/missionpack/ui/ui_syscalls.o
Q3UIVMOBJ = $(Q3UIOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/baseq3/ui$(ARCH).$(SHLIBEXT) : $(Q3UIOBJ)
+$(B)/baseq3/ui.$(SHLIBEXT) : $(Q3UIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(Q3UIOBJ)
$(B)/baseq3/vm/ui.qvm: $(Q3UIVMOBJ) $(UIDIR)/ui_syscalls.asm
@@ -1601,7 +1598,7 @@
MPUIOBJ = $(MPUIOBJ_) $(B)/missionpack/ui/ui_syscalls.o
MPUIVMOBJ = $(MPUIOBJ_:%.o=%.asm) $(B)/baseq3/game/bg_lib.asm
-$(B)/missionpack/ui$(ARCH).$(SHLIBEXT) : $(MPUIOBJ)
+$(B)/missionpack/ui.$(SHLIBEXT) : $(MPUIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(MPUIOBJ)
$(B)/missionpack/vm/ui.qvm: $(MPUIVMOBJ) $(UIDIR)/ui_syscalls.asm

View File

@ -0,0 +1,11 @@
--- ./code/botlib/be_interface.c.orig Wed Apr 26 10:36:58 2006
+++ ./code/botlib/be_interface.c Wed Jun 7 19:34:25 2006
@@ -155,7 +155,7 @@
} else {
Com_sprintf(logfilename, sizeof(logfilename), "botlib.log");
}
- Log_Open(logfilename);
+ Log_Open("/dev/null");
//
botimport.Print(PRT_MESSAGE, "------- BotLib Initialization -------\n");
//

View File

@ -0,0 +1,10 @@
--- ./code/qcommon/common.c.orig Wed Apr 26 08:27:12 2006
+++ ./code/qcommon/common.c Wed Jun 7 19:34:25 2006
@@ -25,6 +25,7 @@
#include "qcommon.h"
#include <setjmp.h>
#ifndef _WIN32
+#include <sys/types.h>
#include <netinet/in.h>
#include <sys/stat.h> // umask
#else

View File

@ -0,0 +1,15 @@
--- ./code/qcommon/q_platform.h.orig Tue Dec 27 16:46:01 2005
+++ ./code/qcommon/q_platform.h Wed Jun 7 19:35:23 2006
@@ -176,11 +176,7 @@
#define ID_INLINE inline
#define PATH_SEP '/'
-#ifdef __i386__
-#define ARCH_STRING "i386"
-#elif defined __axp__
-#define ARCH_STRING "alpha"
-#endif
+#define ARCH_STRING ARCH
#if BYTE_ORDER == BIG_ENDIAN
#define Q3_BIG_ENDIAN

View File

@ -0,0 +1,19 @@
--- ./code/unix/linux_glimp.c.orig Sun Apr 30 11:32:56 2006
+++ ./code/unix/linux_glimp.c Wed Jun 7 19:34:25 2006
@@ -631,8 +631,14 @@
dx = ((int)event.xmotion.x - mwx);
dy = ((int)event.xmotion.y - mwy);
- mx += dx;
- my += dy;
+ if (abs(dx) > 1)
+ mx += dx * 2;
+ else
+ mx += dx;
+ if (abs(dy) > 1)
+ my += dy * 2;
+ else
+ my += dy;
mwx = event.xmotion.x;
mwy = event.xmotion.y;

View File

@ -0,0 +1,31 @@
--- ./code/unix/unix_main.c.orig Sun Feb 26 18:22:12 2006
+++ ./code/unix/unix_main.c Wed Jun 7 19:34:25 2006
@@ -774,6 +774,7 @@
char curpath[MAX_OSPATH];
char fname[MAX_OSPATH];
char *basepath;
+ char *libpath;
char *homepath;
char *pwdpath;
char *cdpath;
@@ -789,14 +790,19 @@
// TODO: use fs_searchpaths from files.c
pwdpath = Sys_Cwd();
basepath = Cvar_VariableString( "fs_basepath" );
+ libpath = LIBDIR;
homepath = Cvar_VariableString( "fs_homepath" );
cdpath = Cvar_VariableString( "fs_cdpath" );
gamedir = Cvar_VariableString( "fs_game" );
- libHandle = try_dlopen(pwdpath, gamedir, fname, fqpath);
+ if(!libHandle && homepath)
+ libHandle = try_dlopen(pwdpath, gamedir, fname, fqpath);
if(!libHandle && homepath)
libHandle = try_dlopen(homepath, gamedir, fname, fqpath);
+
+ if(!libHandle && basepath)
+ libHandle = try_dlopen(libpath, gamedir, fname, fqpath);
if(!libHandle && basepath)
libHandle = try_dlopen(basepath, gamedir, fname, fqpath);

View File

@ -0,0 +1,11 @@
This project, icculus.org/quake3 (sometimes referred to ioquake3, or ioq3 for
short) aims to build upon id Software's Quake 3 source code release. The
source code was released on August 20, 2005 under the GPL. Since then, we have
been cleaning up, fixing bugs, and adding features. Our permanent goal is to
create the open source Quake 3 distribution upon which people base their games
and projects. We also seek to have the perfect version of the engine for
playing Quake 3: Arena, Team Arena, and all popular mods. This distribution of
the engine has been ported to many new platforms and has had a slew of new
features added, along with massive bug extermination.
WWW: http://icculus.org/quake3/

View File

@ -0,0 +1,12 @@
%%DEDICATED%%bin/ioq3ded
%%CLIENT%%bin/ioquake3
%%SMP%%bin/ioquake3-smp
%%GAMELIBS%%%%LIBDIR%%/baseq3/cgame.so
%%GAMELIBS%%%%LIBDIR%%/baseq3/qagame.so
%%GAMELIBS%%%%LIBDIR%%/baseq3/ui.so
%%GAMELIBS%%%%LIBDIR%%/missionpack/cgame.so
%%GAMELIBS%%%%LIBDIR%%/missionpack/qagame.so
%%GAMELIBS%%%%LIBDIR%%/missionpack/ui.so
%%GAMELIBS%%@dirrm %%LIBDIR%%/missionpack
%%GAMELIBS%%@dirrm %%LIBDIR%%/baseq3
%%GAMELIBS%%@dirrm %%LIBDIR%%