From DONOTREPLY at icculus.org Tue Aug 1 07:41:49 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 1 Aug 2006 07:41:49 -0400
Subject: r827 - trunk/code/win32
Message-ID: <20060801114149.1949.qmail@icculus.org>
Author: tma
Date: 2006-08-01 07:41:49 -0400 (Tue, 01 Aug 2006)
New Revision: 827
Modified:
trunk/code/win32/win_local.h
trunk/code/win32/win_shared.c
Log:
* Windows home directory support (tjw)
Modified: trunk/code/win32/win_local.h
===================================================================
--- trunk/code/win32/win_local.h 2006-07-31 19:05:14 UTC (rev 826)
+++ trunk/code/win32/win_local.h 2006-08-01 11:41:49 UTC (rev 827)
@@ -37,6 +37,7 @@
#include
#include
#include
+#include
void IN_MouseEvent (int mstate);
Modified: trunk/code/win32/win_shared.c
===================================================================
--- trunk/code/win32/win_shared.c 2006-07-31 19:05:14 UTC (rev 826)
+++ trunk/code/win32/win_shared.c 2006-08-01 11:41:49 UTC (rev 827)
@@ -285,7 +285,26 @@
}
char *Sys_DefaultHomePath(void) {
- return NULL;
+ TCHAR szPath[MAX_PATH];
+ static char path[MAX_OSPATH];
+
+ if( !SUCCEEDED( SHGetFolderPath( NULL, CSIDL_LOCAL_APPDATA,
+ NULL, 0, szPath ) ) )
+ {
+
+ return NULL;
+ }
+ Q_strncpyz( path, szPath, sizeof(path) );
+ Q_strcat( path, sizeof(path), "\\Quake3" );
+ if( CreateDirectory( path, NULL ) )
+ {
+ if( GetLastError() != ERROR_ALREADY_EXISTS )
+ {
+ Com_Printf("Unable to create directory \"%s\"\n", path);
+ return NULL;
+ }
+ }
+ return path;
}
char *Sys_DefaultInstallPath(void)
From DONOTREPLY at icculus.org Tue Aug 1 12:51:14 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 1 Aug 2006 12:51:14 -0400
Subject: r828 - trunk/code/qcommon
Message-ID: <20060801165114.5337.qmail@icculus.org>
Author: tjw
Date: 2006-08-01 12:51:13 -0400 (Tue, 01 Aug 2006)
New Revision: 828
Modified:
trunk/code/qcommon/cvar.c
Log:
bug 2810 once a latched cvar was changed it could not be reset to its original value
Modified: trunk/code/qcommon/cvar.c
===================================================================
--- trunk/code/qcommon/cvar.c 2006-08-01 11:41:49 UTC (rev 827)
+++ trunk/code/qcommon/cvar.c 2006-08-01 16:51:13 UTC (rev 828)
@@ -331,7 +331,11 @@
value = var->resetString;
}
- if (!strcmp(value,var->string)) {
+ if((var->flags & CVAR_LATCH) && var->latchedString) {
+ if(!strcmp(value,var->latchedString))
+ return var;
+ }
+ else if (!strcmp(value,var->string)) {
return var;
}
// note what types of cvars have been modified (userinfo, archive, serverinfo, systeminfo)
From DONOTREPLY at icculus.org Tue Aug 1 13:36:48 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 1 Aug 2006 13:36:48 -0400
Subject: r829 - in trunk: . code/win32
Message-ID: <20060801173648.21016.qmail@icculus.org>
Author: tjw
Date: 2006-08-01 13:36:47 -0400 (Tue, 01 Aug 2006)
New Revision: 829
Modified:
trunk/Makefile
trunk/code/win32/win_shared.c
Log:
bug 2813
* fixed bug with new win32 home path detection
* added SHFolder.lib linking to the mingw build for win98/win95 compat
Modified: trunk/Makefile
===================================================================
--- trunk/Makefile 2006-08-01 16:51:13 UTC (rev 828)
+++ trunk/Makefile 2006-08-01 17:36:47 UTC (rev 829)
@@ -385,7 +385,7 @@
BINEXT=.exe
- LDFLAGS= -mwindows -lwsock32 -lgdi32 -lwinmm -lole32
+ LDFLAGS= -mwindows -lshfolder -lwsock32 -lgdi32 -lwinmm -lole32
CLIENT_LDFLAGS=
ifeq ($(USE_CODEC_VORBIS),1)
Modified: trunk/code/win32/win_shared.c
===================================================================
--- trunk/code/win32/win_shared.c 2006-08-01 16:51:13 UTC (rev 828)
+++ trunk/code/win32/win_shared.c 2006-08-01 17:36:47 UTC (rev 829)
@@ -296,7 +296,7 @@
}
Q_strncpyz( path, szPath, sizeof(path) );
Q_strcat( path, sizeof(path), "\\Quake3" );
- if( CreateDirectory( path, NULL ) )
+ if( !CreateDirectory( path, NULL ) )
{
if( GetLastError() != ERROR_ALREADY_EXISTS )
{
From DONOTREPLY at icculus.org Wed Aug 2 00:02:31 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 2 Aug 2006 00:02:31 -0400
Subject: r830 - in trunk: . code/client code/libs/macosx code/qcommon code/unix
Message-ID: <20060802040231.29353.qmail@icculus.org>
Author: tjw
Date: 2006-08-02 00:01:36 -0400 (Wed, 02 Aug 2006)
New Revision: 830
Added:
trunk/make-macosx-ub.sh
Modified:
trunk/Makefile
trunk/code/client/snd_openal.c
trunk/code/libs/macosx/libSDL-1.2.0.dylib
trunk/code/qcommon/files.c
trunk/code/unix/sdl_glimp.c
trunk/code/unix/unix_net.c
Log:
bug 2723
* adds a shell script ./make-macosx-ub.sh that builds Mac OS X Universal Binary
* fixes Mac OS X x86 VM crashes (-mstackrealign)
* adds current working directory to the search path on Mac OS X to make
working with .app bundles easier
* various tweaks to make ioquake3 build against the 10.2 SDK
* changed default OpenAL .dylib location to the path of the one included with
the Framework bundled in 10.4 (for USE_OPENAL_DLOPEN)
* updated to a Universal libSDL-1.2.0.dylib
Modified: trunk/Makefile
===================================================================
--- trunk/Makefile 2006-08-01 17:36:47 UTC (rev 829)
+++ trunk/Makefile 2006-08-02 04:01:36 UTC (rev 830)
@@ -262,45 +262,108 @@
ifeq ($(PLATFORM),darwin)
CC=gcc
-
- # !!! FIXME: calling conventions are still broken! See Bugzilla #2519
VM_PPC=vm_ppc_new
+ HAVE_VM_COMPILED=true
+ BASE_CFLAGS=
+ CLIENT_LDFLAGS=
+ LDFLAGS=
+ OPTIMIZE=
+ ifeq ($(BUILD_MACOSX_UB),ppc)
+ CC=gcc-3.3
+ BASE_CFLAGS += -arch ppc -DSMP \
+ -DMAC_OS_X_VERSION_MIN_REQUIRED=1020 -nostdinc \
+ -F/Developer/SDKs/MacOSX10.2.8.sdk/System/Library/Frameworks \
+ -I/Developer/SDKs/MacOSX10.2.8.sdk/usr/include/gcc/darwin/3.3 \
+ -isystem /Developer/SDKs/MacOSX10.2.8.sdk/usr/include
+ # when using the 10.2 SDK we are not allowed the two-level namespace so
+ # in order to get the OpenAL dlopen() stuff to work without major
+ # modifications, the controversial -m linker flag must be used. this
+ # throws a ton of multiply defined errors which cannot be suppressed.
+ LDFLAGS += -arch ppc \
+ -L/Developer/SDKs/MacOSX10.2.8.sdk/usr/lib/gcc/darwin/3.3 \
+ -F/Developer/SDKs/MacOSX10.2.8.sdk/System/Library/Frameworks \
+ -Wl,-syslibroot,/Developer/SDKs/MacOSX10.2.8.sdk,-m
+ ARCH=ppc
- BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes
- BASE_CFLAGS += -DMACOS_X -fno-common -pipe
+ # OS X 10.2 sdk lacks dlopen() so ded would need libSDL anyway
+ BUILD_SERVER=0
+ # because of a problem with linking on 10.2 this will generate multiply
+ # defined symbol errors. The errors can be turned into warnings with
+ # the -m linker flag, but you can't shut up the warnings
+ USE_OPENAL_DLOPEN=1
+ else
+ ifeq ($(BUILD_MACOSX_UB),x86)
+ CC=gcc-4.0
+ BASE_CFLAGS += -arch i386 -DSMP \
+ -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
+ -mmacosx-version-min=10.4 \
+ -DMAC_OS_X_VERSION_MIN_REQUIRED=1040 -nostdinc \
+ -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks \
+ -I/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/i686-apple-darwin8/4.0.1/include \
+ -isystem /Developer/SDKs/MacOSX10.4u.sdk/usr/include
+ LDFLAGS = -mmacosx-version-min=10.4 \
+ -L/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/i686-apple-darwin8/4.0.1
+ ARCH=x86
+ BUILD_SERVER=0
+ else
+ # for whatever reason using the headers in the MacOSX SDKs tend to throw
+ # errors even though they are identical to the system ones which don't
+ # therefore we shut up warning flags when running the universal build
+ # script as much as possible.
+ BASE_CFLAGS += -Wall -Wimplicit -Wstrict-prototypes
+ endif
+ endif
+
+ ifeq ($(ARCH),ppc)
+ OPTIMIZE += -faltivec
+ # Carbon is required on PPC only to make a call to MakeDataExecutable
+ # in the PPC vm (should be a better non-Carbon way).
+ LDFLAGS += -framework Carbon
+ endif
+ ifeq ($(ARCH),x86)
+ OPTIMIZE += -msse2
+ # x86 vm will crash without -mstackrealign since MMX instructions will be
+ # used no matter what and they corrupt the frame pointer in VM calls
+ BASE_CFLAGS += -mstackrealign
+ endif
+
+ BASE_CFLAGS += -fno-strict-aliasing -DMACOS_X -fno-common -pipe
+
# Always include debug symbols...you can strip the binary later...
BASE_CFLAGS += -gfull
ifeq ($(USE_OPENAL),1)
BASE_CFLAGS += -DUSE_OPENAL=1
- ifeq ($(USE_OPENAL_DLOPEN),1)
+ ifneq ($(USE_OPENAL_DLOPEN),1)
+ CLIENT_LDFLAGS += -framework OpenAL
+ else
BASE_CFLAGS += -DUSE_OPENAL_DLOPEN=1
endif
endif
ifeq ($(USE_CODEC_VORBIS),1)
BASE_CFLAGS += -DUSE_CODEC_VORBIS=1
+ CLIENT_LDFLAGS += -lvorbisfile -lvorbis -logg
endif
ifeq ($(USE_SDL),1)
- BASE_CFLAGS += -DUSE_SDL_VIDEO=1 -DUSE_SDL_SOUND=1 -D_THREAD_SAFE=1 -I$(SDLHDIR)/include
+ BASE_CFLAGS += -DUSE_SDL_VIDEO=1 -DUSE_SDL_SOUND=1 -D_THREAD_SAFE=1 \
+ -I$(SDLHDIR)/include
GL_CFLAGS =
+ # We copy sdlmain before ranlib'ing it so that subversion doesn't think
+ # the file has been modified by each build.
+ LIBSDLMAIN=$(B)/libSDLmain.a
+ LIBSDLMAINSRC=$(LIBSDIR)/macosx/libSDLmain.a
+ CLIENT_LDFLAGS += -framework Cocoa -framework OpenGL \
+ $(LIBSDIR)/macosx/libSDL-1.2.0.dylib
+ else
+ # !!! FIXME: frameworks: OpenGL, Carbon, etc...
+ #CLIENT_LDFLAGS += -L/usr/X11R6/$(LIB) -lX11 -lXext -lXxf86dga -lXxf86vm
endif
- OPTIMIZE = -O3 -ffast-math -falign-loops=16
+ OPTIMIZE += -O3 -ffast-math -falign-loops=16
- ifeq ($(ARCH),ppc)
- BASE_CFLAGS += -faltivec
- ifneq ($(VM_PPC),)
- HAVE_VM_COMPILED=true
- endif
- endif
-
- ifeq ($(ARCH),i386)
- # !!! FIXME: x86-specific flags here...
- endif
-
ifneq ($(HAVE_VM_COMPILED),true)
BASE_CFLAGS += -DNO_VM_COMPILED
endif
@@ -315,34 +378,6 @@
NOTSHLIBCFLAGS=-mdynamic-no-pic
- #THREAD_LDFLAGS=-lpthread
- #LDFLAGS=-ldl -lm
- LDFLAGS += -framework Carbon
-
- ifeq ($(USE_SDL),1)
- # We copy sdlmain before ranlib'ing it so that subversion doesn't think
- # the file has been modified by each build.
- LIBSDLMAIN=$(B)/libSDLmain.a
- LIBSDLMAINSRC=$(LIBSDIR)/macosx/libSDLmain.a
- CLIENT_LDFLAGS=-framework Cocoa -framework OpenGL $(LIBSDIR)/macosx/libSDL-1.2.0.dylib
- else
- # !!! FIXME: frameworks: OpenGL, Carbon, etc...
- #CLIENT_LDFLAGS=-L/usr/X11R6/$(LIB) -lX11 -lXext -lXxf86dga -lXxf86vm
- endif
-
- # -framework OpenAL requires 10.4 or later...for builds shipping to the
- # public, you'll want to use USE_OPENAL_DLOPEN and ship your own OpenAL
- # library (http://openal.org/ or http://icculus.org/al_osx/)
- ifeq ($(USE_OPENAL),1)
- ifneq ($(USE_OPENAL_DLOPEN),1)
- CLIENT_LDFLAGS += -framework OpenAL
- endif
- endif
-
- ifeq ($(USE_CODEC_VORBIS),1)
- CLIENT_LDFLAGS += -lvorbisfile -lvorbis -logg
- endif
-
else # ifeq darwin
@@ -1261,6 +1296,12 @@
$(B)/ded/snapvectora.o \
$(B)/ded/matha.o
endif
+ifeq ($(ARCH),x86)
+ Q3DOBJ += \
+ $(B)/ded/ftola.o \
+ $(B)/ded/snapvectora.o \
+ $(B)/ded/matha.o
+endif
ifeq ($(HAVE_VM_COMPILED),true)
ifeq ($(ARCH),i386)
Modified: trunk/code/client/snd_openal.c
===================================================================
--- trunk/code/client/snd_openal.c 2006-08-01 17:36:47 UTC (rev 829)
+++ trunk/code/client/snd_openal.c 2006-08-02 04:01:36 UTC (rev 830)
@@ -1524,6 +1524,8 @@
#ifdef _WIN32
#define ALDRIVER_DEFAULT "OpenAL32.dll"
+#elif defined(MACOS_X)
+#define ALDRIVER_DEFAULT "/System/Library/Frameworks/OpenAL.framework/OpenAL"
#else
#define ALDRIVER_DEFAULT "libopenal.so.0"
#endif
Modified: trunk/code/libs/macosx/libSDL-1.2.0.dylib
===================================================================
(Binary files differ)
Modified: trunk/code/qcommon/files.c
===================================================================
--- trunk/code/qcommon/files.c 2006-08-01 17:36:47 UTC (rev 829)
+++ trunk/code/qcommon/files.c 2006-08-02 04:01:36 UTC (rev 830)
@@ -2829,6 +2829,10 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory( fs_basepath->string, gameName );
}
+#ifdef MACOS_X
+ // allow .app bundles to be placed along side base dir
+ FS_AddGameDirectory( ".", gameName );
+#endif
// fs_homepath is somewhat particular to *nix systems, only add if relevant
// NOTE: same filtering below for mods and basegame
if (fs_basepath->string[0] && Q_stricmp(fs_homepath->string,fs_basepath->string)) {
Modified: trunk/code/unix/sdl_glimp.c
===================================================================
--- trunk/code/unix/sdl_glimp.c 2006-08-01 17:36:47 UTC (rev 829)
+++ trunk/code/unix/sdl_glimp.c 2006-08-02 04:01:36 UTC (rev 830)
@@ -67,7 +67,12 @@
#include
#include
#include
+#if USE_SDL_VIDEO
+#include "SDL.h"
+#include "SDL_loadso.h"
+#else
#include
+#endif
#include "../renderer/tr_local.h"
#include "../client/client.h"
@@ -832,7 +837,7 @@
if ( strstr( glConfig.extensions_string, "GL_EXT_texture_filter_anisotropic" ) )
{
if ( r_ext_texture_filter_anisotropic->integer ) {
- qglGetIntegerv( GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, &maxAnisotropy );
+ qglGetIntegerv( GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, (GLint *)&maxAnisotropy );
if ( maxAnisotropy <= 0 ) {
ri.Printf( PRINT_ALL, "...GL_EXT_texture_filter_anisotropic not properly supported!\n" );
maxAnisotropy = 0;
Modified: trunk/code/unix/unix_net.c
===================================================================
--- trunk/code/unix/unix_net.c 2006-08-01 17:36:47 UTC (rev 829)
+++ trunk/code/unix/unix_net.c 2006-08-02 04:01:36 UTC (rev 830)
@@ -25,6 +25,10 @@
#include "../qcommon/qcommon.h"
#include
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+ // needed for socket_t on OSX 10.2
+ #define _BSD_SOCKLEN_T_
+#endif
#include
#include
#include
Added: trunk/make-macosx-ub.sh
===================================================================
--- trunk/make-macosx-ub.sh 2006-08-01 17:36:47 UTC (rev 829)
+++ trunk/make-macosx-ub.sh 2006-08-02 04:01:36 UTC (rev 830)
@@ -0,0 +1,62 @@
+#!/bin/sh
+
+DESTDIR=build/release-darwin-ub
+BASEDIR=baseq3
+MPACKDIR=missionpack
+
+BIN_OBJ="
+ build/release-darwin-ppc/ioquake3.ppc
+ build/release-darwin-x86/ioquake3.x86
+"
+BASE_OBJ="
+ build/release-darwin-ppc/$BASEDIR/cgameppc.dylib
+ build/release-darwin-x86/$BASEDIR/cgamex86.dylib
+ build/release-darwin-ppc/$BASEDIR/uippc.dylib
+ build/release-darwin-x86/$BASEDIR/uix86.dylib
+ build/release-darwin-ppc/$BASEDIR/qagameppc.dylib
+ build/release-darwin-x86/$BASEDIR/qagamex86.dylib
+"
+MPACK_OBJ="
+ build/release-darwin-ppc/$MPACKDIR/cgameppc.dylib
+ build/release-darwin-x86/$MPACKDIR/cgamex86.dylib
+ build/release-darwin-ppc/$MPACKDIR/uippc.dylib
+ build/release-darwin-x86/$MPACKDIR/uix86.dylib
+ build/release-darwin-ppc/$MPACKDIR/qagameppc.dylib
+ build/release-darwin-x86/$MPACKDIR/qagamex86.dylib
+"
+if [ ! -f Makefile ]; then
+ echo "This script must be run from the ioquake3 build directory";
+fi
+
+if [ ! -d /Developer/SDKs/MacOSX10.2.8.sdk ]; then
+ echo "
+/Developer/SDKs/MacOSX10.2.8.sdk/ is missing.
+The installer for this SDK is included with XCode 2.2 or newer"
+ exit 1;
+fi
+
+if [ ! -d /Developer/SDKs/MacOSX10.4u.sdk ]; then
+ echo "
+/Developer/SDKs/MacOSX10.4u.sdk/ is missing.
+The installer for this SDK is included with XCode 2.2 or newer"
+ exit 1;
+fi
+
+(BUILD_MACOSX_UB=ppc make && BUILD_MACOSX_UB=x86 make) || exit 1;
+
+if [ ! -d $DESTDIR ]; then
+ mkdir $DESTDIR || exit 1;
+fi
+if [ ! -d $DESTDIR/$BASEDIR ]; then
+ mkdir $DESTDIR/$BASEDIR || exit 1;
+fi
+if [ ! -d $DESTDIR/$MPACKDIR ]; then
+ mkdir $DESTDIR/$MPACKDIR || exit 1;
+fi
+
+echo "Installing Universal Binaries in $DESTDIR"
+lipo -create -o $DESTDIR/ioquake3.ub $BIN_OBJ
+cp $BASE_OBJ $DESTDIR/$BASEDIR/
+cp $MPACK_OBJ $DESTDIR/$MPACKDIR/
+cp code/libs/macosx/*.dylib $DESTDIR/
+
Property changes on: trunk/make-macosx-ub.sh
___________________________________________________________________
Name: svn:executable
+ *
From DONOTREPLY at icculus.org Wed Aug 2 01:12:20 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 2 Aug 2006 01:12:20 -0400
Subject: r831 - trunk
Message-ID: <20060802051220.17210.qmail@icculus.org>
Author: tjw
Date: 2006-08-02 01:12:20 -0400 (Wed, 02 Aug 2006)
New Revision: 831
Modified:
trunk/Makefile
trunk/make-macosx-ub.sh
Log:
bug 2723
* ARCH should be i386 instead of x86 for Mac OS X too
Modified: trunk/Makefile
===================================================================
--- trunk/Makefile 2006-08-02 04:01:36 UTC (rev 830)
+++ trunk/Makefile 2006-08-02 05:12:20 UTC (rev 831)
@@ -293,7 +293,7 @@
# the -m linker flag, but you can't shut up the warnings
USE_OPENAL_DLOPEN=1
else
- ifeq ($(BUILD_MACOSX_UB),x86)
+ ifeq ($(BUILD_MACOSX_UB),i386)
CC=gcc-4.0
BASE_CFLAGS += -arch i386 -DSMP \
-isysroot /Developer/SDKs/MacOSX10.4u.sdk \
@@ -304,7 +304,7 @@
-isystem /Developer/SDKs/MacOSX10.4u.sdk/usr/include
LDFLAGS = -mmacosx-version-min=10.4 \
-L/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/i686-apple-darwin8/4.0.1
- ARCH=x86
+ ARCH=i386
BUILD_SERVER=0
else
# for whatever reason using the headers in the MacOSX SDKs tend to throw
@@ -321,7 +321,7 @@
# in the PPC vm (should be a better non-Carbon way).
LDFLAGS += -framework Carbon
endif
- ifeq ($(ARCH),x86)
+ ifeq ($(ARCH),i386)
OPTIMIZE += -msse2
# x86 vm will crash without -mstackrealign since MMX instructions will be
# used no matter what and they corrupt the frame pointer in VM calls
Modified: trunk/make-macosx-ub.sh
===================================================================
--- trunk/make-macosx-ub.sh 2006-08-02 04:01:36 UTC (rev 830)
+++ trunk/make-macosx-ub.sh 2006-08-02 05:12:20 UTC (rev 831)
@@ -6,23 +6,23 @@
BIN_OBJ="
build/release-darwin-ppc/ioquake3.ppc
- build/release-darwin-x86/ioquake3.x86
+ build/release-darwin-i386/ioquake3.i386
"
BASE_OBJ="
build/release-darwin-ppc/$BASEDIR/cgameppc.dylib
- build/release-darwin-x86/$BASEDIR/cgamex86.dylib
+ build/release-darwin-i386/$BASEDIR/cgamei386.dylib
build/release-darwin-ppc/$BASEDIR/uippc.dylib
- build/release-darwin-x86/$BASEDIR/uix86.dylib
+ build/release-darwin-i386/$BASEDIR/uii386.dylib
build/release-darwin-ppc/$BASEDIR/qagameppc.dylib
- build/release-darwin-x86/$BASEDIR/qagamex86.dylib
+ build/release-darwin-i386/$BASEDIR/qagamei386.dylib
"
MPACK_OBJ="
build/release-darwin-ppc/$MPACKDIR/cgameppc.dylib
- build/release-darwin-x86/$MPACKDIR/cgamex86.dylib
+ build/release-darwin-i386/$MPACKDIR/cgamei386.dylib
build/release-darwin-ppc/$MPACKDIR/uippc.dylib
- build/release-darwin-x86/$MPACKDIR/uix86.dylib
+ build/release-darwin-i386/$MPACKDIR/uii386.dylib
build/release-darwin-ppc/$MPACKDIR/qagameppc.dylib
- build/release-darwin-x86/$MPACKDIR/qagamex86.dylib
+ build/release-darwin-i386/$MPACKDIR/qagamei386.dylib
"
if [ ! -f Makefile ]; then
echo "This script must be run from the ioquake3 build directory";
@@ -42,7 +42,7 @@
exit 1;
fi
-(BUILD_MACOSX_UB=ppc make && BUILD_MACOSX_UB=x86 make) || exit 1;
+(BUILD_MACOSX_UB=ppc make && BUILD_MACOSX_UB=i386 make) || exit 1;
if [ ! -d $DESTDIR ]; then
mkdir $DESTDIR || exit 1;
From DONOTREPLY at icculus.org Wed Aug 2 22:29:47 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 2 Aug 2006 22:29:47 -0400
Subject: r832 - trunk/code/client
Message-ID: <20060803022947.19907.qmail@icculus.org>
Author: tjw
Date: 2006-08-02 22:29:47 -0400 (Wed, 02 Aug 2006)
New Revision: 832
Modified:
trunk/code/client/snd_openal.c
Log:
bug 2747
* open music stream in S_AL_StartBackgroundTrack() instead of relying
on S_AL_MusicProcess() to open it. This allows S_AL_MusicProcess() to
return early when called whenever there is no open music stream to prevent
a segfault.
Modified: trunk/code/client/snd_openal.c
===================================================================
--- trunk/code/client/snd_openal.c 2006-08-02 05:12:20 UTC (rev 831)
+++ trunk/code/client/snd_openal.c 2006-08-03 02:29:47 UTC (rev 832)
@@ -1369,6 +1369,9 @@
int l;
ALuint format;
+ if(!mus_stream)
+ return;
+
l = S_CodecReadStream(mus_stream, MUSIC_BUFFER_SIZE, decode_buffer);
// Run out data to read, start at the beginning again
@@ -1443,6 +1446,13 @@
if(musicSourceHandle == -1)
return;
+ mus_stream = S_CodecOpenStream(s_backgroundLoop);
+ if(!mus_stream)
+ {
+ S_AL_MusicSourceFree();
+ return;
+ }
+
// Generate the musicBuffers
qalGenBuffers(NUM_MUSIC_BUFFERS, musicBuffers);
@@ -1450,19 +1460,6 @@
for(i = 0; i < NUM_MUSIC_BUFFERS; i++)
{
S_AL_MusicProcess(musicBuffers[i]);
-
- // check whether our stream still exists.
- if(!mus_stream)
- {
- // there was an error in reading which resulted in a
- // closed stream. We must bail out or we'll crash.
-
- // deallocate everything we allocated so far:
- qalDeleteBuffers(NUM_MUSIC_BUFFERS, musicBuffers);
- S_AL_MusicSourceFree();
-
- return;
- }
}
qalSourceQueueBuffers(musicSource, NUM_MUSIC_BUFFERS, musicBuffers);
From DONOTREPLY at icculus.org Wed Aug 2 23:15:24 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 2 Aug 2006 23:15:24 -0400
Subject: r833 - trunk/code/client
Message-ID: <20060803031524.1541.qmail@icculus.org>
Author: tjw
Date: 2006-08-02 23:15:24 -0400 (Wed, 02 Aug 2006)
New Revision: 833
Modified:
trunk/code/client/snd_openal.c
Log:
bug 2747
* it turns out Apple's OpenAL only allows for 64 alSource's by default
http://opensource.creative.com/pipermail/openal/2005-October/008893.html
This was the main cause of the Mac OS X OpenAL probem since we were using
128 as MAX_SRC
Modified: trunk/code/client/snd_openal.c
===================================================================
--- trunk/code/client/snd_openal.c 2006-08-03 02:29:47 UTC (rev 832)
+++ trunk/code/client/snd_openal.c 2006-08-03 03:15:24 UTC (rev 833)
@@ -465,7 +465,11 @@
qboolean local; // Is this local (relative to the cam)
} src_t;
-#define MAX_SRC 128
+#ifdef MACOS_X
+ #define MAX_SRC 64
+#else
+ #define MAX_SRC 128
+#endif
static src_t srcList[MAX_SRC];
static int srcCount = 0;
static qboolean alSourcesInitialised = qfalse;
From DONOTREPLY at icculus.org Tue Aug 8 19:57:20 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 8 Aug 2006 19:57:20 -0400
Subject: r834 - trunk
Message-ID: <20060808235720.22615.qmail@icculus.org>
Author: zakk
Date: 2006-08-08 19:57:20 -0400 (Tue, 08 Aug 2006)
New Revision: 834
Modified:
trunk/.svnignore
Log:
Makefile.local gets ignored for great justice!
Modified: trunk/.svnignore
===================================================================
--- trunk/.svnignore 2006-08-03 03:15:24 UTC (rev 833)
+++ trunk/.svnignore 2006-08-08 23:57:20 UTC (rev 834)
@@ -1 +1,2 @@
build
+Makefile.local
From DONOTREPLY at icculus.org Wed Aug 9 17:03:11 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 9 Aug 2006 17:03:11 -0400
Subject: r835 - webspace/include
Message-ID: <20060809210311.7019.qmail@icculus.org>
Author: tjw
Date: 2006-08-09 17:03:11 -0400 (Wed, 09 Aug 2006)
New Revision: 835
Modified:
webspace/include/downloads.php
Log:
updated Mac OS X download info
Modified: webspace/include/downloads.php
===================================================================
--- webspace/include/downloads.php 2006-08-08 23:57:20 UTC (rev 834)
+++ webspace/include/downloads.php 2006-08-09 21:03:11 UTC (rev 835)
@@ -54,18 +54,19 @@
Nussel.
',
- "apple" => 'Mac OS X (PowerPC)
- You must download patch data seperately
- with this dmg. When the installation is complete,
- you need to copy your pak0.pk3 from your legal CD-ROM.
- Further instruction is in the ReadMe.rtf included in
- the dmg. Intel binaries will be coming shortly.
+ "apple" => 'Mac OS X (Universal Binary)
+ Provides latest patch pk3 data from id. You only need to copy
+ the pak0.pk3 file from your legal Quake 3 CD-ROM to complete
+ the installation process.
+
+ Installation instructions are in the ReadMe.rtf included in
+ the dmg.
- Download for OS X (PowerPC), 5.5MB.
- MD5: f9fc08c9bcc68ee5c1a8462533c66bf4
+ Download for OS X (Universal Binary), 35.7MB.
+ MD5: 6adeae5048e4f0049ab7cf5f54beea1e
Built from Subversion
- revision 653.
-
Thanks to Vincent Mor?nas.
'
+ revision 834.
+ Thanks to Tony J. White.
'
);
uksort($downloads, "oscompare");
From DONOTREPLY at icculus.org Sat Aug 12 01:05:56 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 12 Aug 2006 01:05:56 -0400
Subject: r836 - webspace/include
Message-ID: <20060812050556.17924.qmail@icculus.org>
Author: zakk
Date: 2006-08-12 01:05:55 -0400 (Sat, 12 Aug 2006)
New Revision: 836
Modified:
webspace/include/home.php
Log:
Server stuff
Modified: webspace/include/home.php
===================================================================
--- webspace/include/home.php 2006-08-09 21:03:11 UTC (rev 835)
+++ webspace/include/home.php 2006-08-12 05:05:55 UTC (rev 836)
@@ -9,7 +9,8 @@
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.
+of new features added, along with massive bug extermination. While we don't have PunkBuster (and never will), we do have
+more security for servers.
Check out some screenshots!
Download Now
From DONOTREPLY at icculus.org Sat Aug 12 14:48:30 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 12 Aug 2006 14:48:30 -0400
Subject: r837 - webspace/include
Message-ID: <20060812184830.7846.qmail@icculus.org>
Author: zakk
Date: 2006-08-12 14:48:30 -0400 (Sat, 12 Aug 2006)
New Revision: 837
Modified:
webspace/include/home.php
Log:
Minor edit
Modified: webspace/include/home.php
===================================================================
--- webspace/include/home.php 2006-08-12 05:05:55 UTC (rev 836)
+++ webspace/include/home.php 2006-08-12 18:48:30 UTC (rev 837)
@@ -10,7 +10,7 @@
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. While we don't have PunkBuster (and never will), we do have
-more security for servers.
+more security for servers and clients from various bugfixes which aren't in id's client.
Check out some screenshots!
Download Now
From DONOTREPLY at icculus.org Sun Aug 13 13:09:06 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 13 Aug 2006 13:09:06 -0400
Subject: r838 - in trunk: . code/client code/renderer code/server
Message-ID: <20060813170906.13101.qmail@icculus.org>
Author: tma
Date: 2006-08-13 13:09:05 -0400 (Sun, 13 Aug 2006)
New Revision: 838
Modified:
trunk/Makefile
trunk/code/client/cl_input.c
trunk/code/client/cl_main.c
trunk/code/client/client.h
trunk/code/renderer/tr_image.c
trunk/code/renderer/tr_init.c
trunk/code/server/sv_snapshot.c
Log:
* qvm files no longer installed by "make copyfiles"
* Loopback clients only get snapshots at the server frame rate now
(Anonymous )
* JPEG chroma subsampling disabled if the quality value is >= 85
(Anonymous )
* cl_lanForcePackets. When set to 0 (default is 1) the cl_maxpackets setting
will be ignored if on a LAN. (Anonymous )
Modified: trunk/Makefile
===================================================================
--- trunk/Makefile 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/Makefile 2006-08-13 17:09:05 UTC (rev 838)
@@ -1760,17 +1760,6 @@
$(COPYDIR)/missionpack/.
endif
-ifneq ($(BUILD_GAME_QVM),0)
- -$(MKDIR) -p -m 0755 $(COPYDIR)/baseq3/vm
- $(INSTALL) -m 0755 $(BR)/baseq3/vm/qagame.qvm $(COPYDIR)/baseq3/vm/qagame.qvm
- $(INSTALL) -m 0755 $(BR)/baseq3/vm/cgame.qvm $(COPYDIR)/baseq3/vm/cgame.qvm
- $(INSTALL) -m 0755 $(BR)/baseq3/vm/ui.qvm $(COPYDIR)/baseq3/vm/ui.qvm
- -$(MKDIR) -p -m 0755 $(COPYDIR)/missionpack/vm
- $(INSTALL) -m 0755 $(BR)/missionpack/vm/qagame.qvm $(COPYDIR)/missionpack/vm/qagame.qvm
- $(INSTALL) -m 0755 $(BR)/missionpack/vm/cgame.qvm $(COPYDIR)/missionpack/vm/cgame.qvm
- $(INSTALL) -m 0755 $(BR)/missionpack/vm/ui.qvm $(COPYDIR)/missionpack/vm/ui.qvm
-endif
-
clean: clean-debug clean-release
$(MAKE) -C $(LOKISETUPDIR) clean
Modified: trunk/code/client/cl_input.c
===================================================================
--- trunk/code/client/cl_input.c 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/code/client/cl_input.c 2006-08-13 17:09:05 UTC (rev 838)
@@ -645,7 +645,7 @@
}
// send every frame for LAN
- if ( Sys_IsLANAddress( clc.netchan.remoteAddress ) ) {
+ if ( cl_lanForcePackets->integer && Sys_IsLANAddress( clc.netchan.remoteAddress ) ) {
return qtrue;
}
Modified: trunk/code/client/cl_main.c
===================================================================
--- trunk/code/client/cl_main.c 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/code/client/cl_main.c 2006-08-13 17:09:05 UTC (rev 838)
@@ -72,6 +72,8 @@
cvar_t *cl_serverStatusResendTime;
cvar_t *cl_trn;
+cvar_t *cl_lanForcePackets;
+
clientActive_t cl;
clientConnection_t clc;
clientStatic_t cls;
@@ -2484,6 +2486,7 @@
Cvar_Get( "cl_maxPing", "800", CVAR_ARCHIVE );
+ cl_lanForcePackets = Cvar_Get ("cl_lanForcePackets", "1", CVAR_ARCHIVE);
// userinfo
Cvar_Get ("name", "UnnamedPlayer", CVAR_USERINFO | CVAR_ARCHIVE );
Modified: trunk/code/client/client.h
===================================================================
--- trunk/code/client/client.h 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/code/client/client.h 2006-08-13 17:09:05 UTC (rev 838)
@@ -355,6 +355,8 @@
extern cvar_t *cl_conXOffset;
extern cvar_t *cl_inGameVideo;
+extern cvar_t *cl_lanForcePackets;
+
//=================================================
//
Modified: trunk/code/renderer/tr_image.c
===================================================================
--- trunk/code/renderer/tr_image.c 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/code/renderer/tr_image.c 2006-08-13 17:09:05 UTC (rev 838)
@@ -1816,6 +1816,11 @@
* Here we just illustrate the use of quality (quantization table) scaling:
*/
jpeg_set_quality(&cinfo, quality, TRUE /* limit to baseline-JPEG values */);
+ /* If quality is set high, disable chroma subsampling */
+ if (quality >= 85) {
+ cinfo.comp_info[0].h_samp_factor = 1;
+ cinfo.comp_info[0].v_samp_factor = 1;
+ }
/* Step 4: Start compressor */
@@ -1890,6 +1895,11 @@
jpeg_set_defaults(&cinfo);
jpeg_set_quality(&cinfo, quality, TRUE /* limit to baseline-JPEG values */);
+ /* If quality is set high, disable chroma subsampling */
+ if (quality >= 85) {
+ cinfo.comp_info[0].h_samp_factor = 1;
+ cinfo.comp_info[0].v_samp_factor = 1;
+ }
/* Step 4: Start compressor */
jpeg_start_compress(&cinfo, TRUE);
Modified: trunk/code/renderer/tr_init.c
===================================================================
--- trunk/code/renderer/tr_init.c 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/code/renderer/tr_init.c 2006-08-13 17:09:05 UTC (rev 838)
@@ -423,7 +423,7 @@
}
ri.FS_WriteFile( fileName, buffer, 1 ); // create path
- SaveJPG( fileName, 95, glConfig.vidWidth, glConfig.vidHeight, buffer);
+ SaveJPG( fileName, 90, glConfig.vidWidth, glConfig.vidHeight, buffer);
ri.Hunk_FreeTempMemory( buffer );
}
@@ -727,7 +727,7 @@
if( cmd->motionJpeg )
{
- frameSize = SaveJPGToBuffer( cmd->encodeBuffer, 95,
+ frameSize = SaveJPGToBuffer( cmd->encodeBuffer, 90,
cmd->width, cmd->height, cmd->captureBuffer );
ri.CL_WriteAVIVideoFrame( cmd->encodeBuffer, frameSize );
}
Modified: trunk/code/server/sv_snapshot.c
===================================================================
--- trunk/code/server/sv_snapshot.c 2006-08-12 18:48:30 UTC (rev 837)
+++ trunk/code/server/sv_snapshot.c 2006-08-13 17:09:05 UTC (rev 838)
@@ -583,11 +583,11 @@
// set nextSnapshotTime based on rate and requested number of updates
- // local clients get snapshots every frame
+ // local clients get snapshots every server frame
// TTimo - https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=491
// added sv_lanForceRate check
if ( client->netchan.remoteAddress.type == NA_LOOPBACK || (sv_lanForceRate->integer && Sys_IsLANAddress (client->netchan.remoteAddress)) ) {
- client->nextSnapshotTime = svs.time - 1;
+ client->nextSnapshotTime = svs.time + (1000/sv_fps->integer);
return;
}
From DONOTREPLY at icculus.org Tue Aug 15 01:32:59 2006
From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org)
Date: 15 Aug 2006 01:32:59 -0400
Subject: r839 - in webspace: . include
Message-ID: <20060815053259.6162.qmail@icculus.org>
Author: zakk
Date: 2006-08-15 01:32:59 -0400 (Tue, 15 Aug 2006)
New Revision: 839
Modified:
webspace/include/discuss.php
webspace/include/get.php
webspace/include/getdata.php
webspace/include/media.php
webspace/include/status.php
webspace/index.php
Log:
Curse you, illiterate people.
Modified: webspace/include/discuss.php
===================================================================
--- webspace/include/discuss.php 2006-08-13 17:09:05 UTC (rev 838)
+++ webspace/include/discuss.php 2006-08-15 05:32:59 UTC (rev 839)
@@ -1,7 +1,7 @@
Web Forums
We provide web forums to facilitate the desire for a place to discuss this project
and seek help from peers online. Please be courteous!
-Enter the icculus.org/quake3 forums.
+
Enter the ioquake3 forums.
If you need more technical help, or have a bug to report, please consult the mailing lists
and Bugzilla.
@@ -13,7 +13,7 @@
quake3 at icculus.org
There is a general discussion mailing list where you can discuss this project,
ask for help, announce patches, and anything else that could possibly be talked
- about with the developers and users of icculus.org/quake3.
+ about with the developers and users of ioquake3.
To join the list, send a blank e-mail to
quake3-subscribe at icculus.org.
@@ -42,8 +42,8 @@
IRC
To join the IRC channel, aim
-your client at
-#icculus.org/quake3 on irc.freenode.net
+your client at
+#ioquake3 on irc.freenode.net
Please make sure that you've read the Help section
before you start wasting your time bugging people!.
Modified: webspace/include/get.php
===================================================================
--- webspace/include/get.php 2006-08-13 17:09:05 UTC (rev 838)
+++ webspace/include/get.php 2006-08-15 05:32:59 UTC (rev 839)
@@ -1,6 +1,6 @@
The Quake 3 engine is open source, this does not
mean that Quake III: Arena the game is free. You must purchase the game to use the data!
-Get icculus.org/quake3
+Get ioquake3
There are three methods of installation. The preffered way is to use an official
installer. Note that just as before, you can use a Quake 3: Arena CD-ROM from any version of Quake 3 (Windows, Linux, Gold, etc) to get the needed pak0.pk3.
@@ -15,7 +15,7 @@
$official ="
Sanctioned Installers
-We have provided installers for the most popular platforms icculus.org/quake3
+
We have provided installers for the most popular platforms ioquake3
supports. These have been tested, and if they do not work you can report bugs to us
about them.
@@ -83,7 +83,7 @@
- Read the README
file. Really. Do it.
- - Compile and install icculus.org/quake3:
+
- Compile and install ioquake3:
Linux and friends
We all can compile it ourselves:
Modified: webspace/include/getdata.php
===================================================================
--- webspace/include/getdata.php 2006-08-13 17:09:05 UTC (rev 838)
+++ webspace/include/getdata.php 2006-08-15 05:32:59 UTC (rev 839)
@@ -18,7 +18,7 @@
$eula = file_get_contents("include/id_patch_pk3s_Q3A_EULA.txt");
$html =
"Newer pk3 files from id point release patches
-are required to play Quake III: Arena on icculus.org/quake3.
+are required to play Quake III: Arena on ioquake3.
EULA
In order for us to distribute the updated pk3 files from id
Software, you need to agree to their EULA. Read through it, then click Agree if
Modified: webspace/include/media.php
===================================================================
--- webspace/include/media.php 2006-08-13 17:09:05 UTC (rev 838)
+++ webspace/include/media.php 2006-08-15 05:32:59 UTC (rev 839)
@@ -1,5 +1,5 @@
Screenshots
-Here be some screenshots of icculus.org/quake3 and its children in action on
+
Here be some screenshots of ioquake3 and its children in action on
different platforms.