- Bump PORTREVISION (package contents change - files added).

- Put port mirrors before IDSOFTWARE ones.
- Use USE_DOS2UNIX instead of USE_CRLF provided by games/quake3.
- Use Makefile instead of cons, remove Perl dependencies. Avoid building unncessary components.
- Add OPTIONS. Allow building without X11 and optimizations.
- Add pkg-plist.
- Fix on non-i386.

PR:		ports/97930
Submitted by:	alepulver (myself)
Approved by:	garga (mentor, implicitly), maintainer
This commit is contained in:
Alejandro Pulver 2006-05-25 21:42:29 +00:00
parent 8e712e0aa7
commit eb157204cc
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=163425
48 changed files with 1616 additions and 594 deletions

View file

@ -7,57 +7,106 @@
PORTNAME= quake3
PORTVERSION= 1.32b
PORTREVISION= 4
PORTREVISION= 5
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_IDSOFTWARE:S|$|source/|} \
http://www.proarena.com/p/ftpx/x8524/quake_3_arena/ \
MASTER_SITES= http://www.proarena.com/p/ftpx/x8524/quake_3_arena/ \
http://www.planetgargoyle.com/ \
http://www.teamdarkside.net/ \
http://0day.icculus.org/mirrors/quake3/ \
http://www.olpainless.net/files/
http://www.olpainless.net/files/ \
${MASTER_SITE_IDSOFTWARE:S|$|source/|}
DISTFILES= ${DISTNAME}-source${EXTRACT_SUFX}
MAINTAINER= shirshegsm@gmail.com
COMMENT= Quake III Arena -- first person shooter (native build)
BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
USE_ZIP= yes
USE_CRLF= yes
USE_DOS2UNIX= yes
USE_GMAKE= yes
USE_PERL5_BUILD=yes
USE_GL= yes
USE_GCC= 3.2+
BUILD_WRKSRC= ${WRKSRC}/code/unix
PLIST_FILES= bin/q3ded bin/quake3
OPTIONS= CLIENT "Build client" on \
DEDICATED "Build dedicated server" on \
GAMELIBS "Build game libraries (mandatory on !i386)" off \
OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
SMP "Build SMP (threaded) client" on
MAKE_ENV= LIBDIR="${LIBDIR}" DLL_ONLY=true
PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
LIBDIR= ${PREFIX}/lib/${PORTNAME}
.include <bsd.port.pre.mk>
# Anyone to play with this on !i386
.if ${ARCH} != "i386"
BROKEN= "Does not compile on !i386 (feel free to submit fixes)"
.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) \
&& defined(WITHOUT_SMP)
IGNORE= needs at least one of CLIENT, DEDICATED and SMP options
.endif
.if ${PERL_LEVEL} < 500600
BUILD_DEPENDS+= ${SITE_PERL}/${PERL_ARCH}/Digest/MD5.pm:${PORTSDIR}/security/p5-Digest-MD5
.if ${ARCH} == "i386"
BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
.endif
.if !defined(WITHOUT_CLIENT) && !defined(WITHOUT_SMP)
USE_GL= yes
.endif
.if !defined(WITHOUT_CLIENT)
MAKE_ENV+= CLIENT=YES
PLIST_SUB+= CLIENT=""
Q3BIN+= quake3
.else
PLIST_SUB+= CLIENT="@comment "
.endif
.if !defined(WITHOUT_DEDICATED)
MAKE_ENV+= DEDICATED=YES
PLIST_SUB+= DEDICATED=""
Q3BIN+= q3ded
.else
PLIST_SUB+= DEDICATED="@comment "
.endif
.if defined(WITH_GAMELIBS) || ${ARCH} != "i386"
MAKE_ENV+= GAMELIBS=YES
PLIST_SUB+= GAMELIBS=""
.else
PLIST_SUB+= GAMELIBS="@comment "
.endif
.if !defined(WITHOUT_OPTIMIZED_CFLAGS)
MAKE_ENV+= OPTIMIZED_CFLAGS=YES
.endif
.if !defined(WITHOUT_SMP)
MAKE_ENV+= SMP=YES \
PTHREAD_LIBS="${PTHREAD_LIBS}"
PLIST_SUB+= SMP=""
Q3BIN+= quake3-smp
.else
PLIST_SUB+= SMP="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e 's|%%Q3DIR%%|"${Q3DIR}"|' \
${WRKSRC}/code/unix/unix_shared.c
@${REINPLACE_CMD} -e 's|botlib.log|/dev/null|' ${WRKSRC}/code/botlib/be_interface.c
pre-build:
${MKDIR} ${WRKSRC}/lcc/build
do-build:
cd ${WRKSRC}/code && ${MAKE_ENV} ${PERL} unix/cons
@${REINPLACE_CMD} -e 's|botlib\.log|/dev/null|' \
${WRKSRC}/code/botlib/be_interface.c
@${REINPLACE_CMD} -e \
's|//[[:blank:]]*\(Swap_Init[[:blank:]]*();\)|\1|' \
${WRKSRC}/code/botlib/be_interface.c \
${WRKSRC}/code/qcommon/common.c \
${WRKSRC}/code/renderer/tr_init.c
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/code/install/linuxq3ded \
${PREFIX}/bin/q3ded
${INSTALL_PROGRAM} ${WRKSRC}/code/install/linuxquake3 \
${PREFIX}/bin/quake3
.for bin in ${Q3BIN}
${INSTALL_PROGRAM} ${BUILD_WRKSRC}/release/${bin} ${PREFIX}/bin
.endfor
.if defined(WITH_GAMELIBS) || ${ARCH} != "i386"
.for dir in baseq3 missionpack
${MKDIR} ${LIBDIR}/${dir}
${INSTALL_PROGRAM} ${BUILD_WRKSRC}/release/${dir}/*.so ${LIBDIR}/${dir}
.endfor
.endif
.include "${.CURDIR}/../quake3-data/Makefile.include"
.include <bsd.port.post.mk>

View file

@ -1,69 +0,0 @@
--- code/Construct.orig Mon Aug 15 20:56:27 2005
+++ code/Construct Wed Nov 23 10:37:04 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;
@@ -32,8 +32,8 @@
$DO_WIN32 = 0;
$NO_VM = 0;
$NO_SO = 0;
-$CC='gcc';
-$CXX='g++';
+$CC=$ENV{CC};
+$CXX=$ENV{CXX};
# detect an sdk build (don't attempt client build and other things)
if ( -r 'unix/Conscript-client' )
@@ -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 -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
{

View file

@ -1,12 +0,0 @@
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

View file

@ -1,12 +0,0 @@
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;

View file

@ -1,12 +0,0 @@
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 $<

View file

@ -1,12 +0,0 @@
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 $<

View file

@ -1,12 +0,0 @@
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

View file

@ -0,0 +1,11 @@
--- code/client/cl_ui.c.orig Thu May 25 15:41:27 2006
+++ code/client/cl_ui.c Thu May 25 15:46:39 2006
@@ -1166,7 +1166,7 @@
// init for this gamestate
VM_Call( uivm, UI_INIT, (cls.state >= CA_AUTHORIZING && cls.state < CA_ACTIVE));
}
- else if (v != UI_API_VERSION) {
+ else if (v != 0 && v != UI_API_VERSION) {
Com_Error( ERR_DROP, "User Interface is version %d, expected %d", v, UI_API_VERSION );
cls.uiStarted = qfalse;
}

View file

@ -1,12 +0,0 @@
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

View file

@ -0,0 +1,99 @@
--- code/game/q_shared.c.orig Thu May 25 13:42:26 2006
+++ code/game/q_shared.c Thu May 25 13:44:30 2006
@@ -99,29 +99,29 @@
============================================================================
*/
-/*
+
// can't just use function pointers, or dll linkage can
// mess up when qcommon is included in multiple places
-static short (*_BigShort) (short l);
-static short (*_LittleShort) (short l);
-static int (*_BigLong) (int l);
-static int (*_LittleLong) (int l);
+static int16_t (*_BigShort) (int16_t l);
+static int16_t (*_LittleShort) (int16_t l);
+static int32_t (*_BigLong) (int32_t l);
+static int32_t (*_LittleLong) (int32_t l);
static qint64 (*_BigLong64) (qint64 l);
static qint64 (*_LittleLong64) (qint64 l);
static float (*_BigFloat) (const float *l);
static float (*_LittleFloat) (const float *l);
-short BigShort(short l){return _BigShort(l);}
-short LittleShort(short l) {return _LittleShort(l);}
-int BigLong (int l) {return _BigLong(l);}
-int LittleLong (int l) {return _LittleLong(l);}
-qint64 BigLong64 (qint64 l) {return _BigLong64(l);}
-qint64 LittleLong64 (qint64 l) {return _LittleLong64(l);}
-float BigFloat (const float *l) {return _BigFloat(l);}
-float LittleFloat (const float *l) {return _LittleFloat(l);}
-*/
+int16_t BigShort(int16_t l){return _BigShort(l);}
+int16_t LittleShort(int16_t l) {return _LittleShort(l);}
+int32_t BigLong (int32_t l) {return _BigLong(l);}
+int32_t LittleLong (int32_t l) {return _LittleLong(l);}
+qint64 BigLong64 (qint64 l) {return _BigLong64(l);}
+qint64 LittleLong64 (qint64 l) {return _LittleLong64(l);}
+float BigFloat (float l) {return _BigFloat(&l);}
+float LittleFloat (float l) {return _LittleFloat(&l);}
-short ShortSwap (short l)
+
+int16_t ShortSwap (int16_t l)
{
byte b1,b2;
@@ -131,12 +131,12 @@
return (b1<<8) + b2;
}
-short ShortNoSwap (short l)
+int16_t ShortNoSwap (int16_t l)
{
return l;
}
-int LongSwap (int l)
+int32_t LongSwap (int32_t l)
{
byte b1,b2,b3,b4;
@@ -145,15 +145,15 @@
b3 = (l>>16)&255;
b4 = (l>>24)&255;
- return ((int)b1<<24) + ((int)b2<<16) + ((int)b3<<8) + b4;
+ return ((int32_t)b1<<24) + ((int32_t)b2<<16) + ((int32_t)b3<<8) + b4;
}
-int LongNoSwap (int l)
+int32_t LongNoSwap (int32_t l)
{
return l;
}
-qint64 Long64Swap (qint64 ll)
+qint64 Long64Swap (qint64 ll)
{
qint64 result;
@@ -199,7 +199,7 @@
Swap_Init
================
*/
-/*
+
void Swap_Init (void)
{
byte swaptest[2] = {1,0};
@@ -229,7 +229,7 @@
}
}
-*/
+
/*
============================================================================

View file

@ -1,7 +1,94 @@
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 @@
--- code/game/q_shared.h.orig Thu May 25 13:26:31 2006
+++ code/game/q_shared.h Thu May 25 13:26:58 2006
@@ -150,12 +150,14 @@
#define ID_INLINE __inline
+#if 0
static ID_INLINE short BigShort( short l) { return ShortSwap(l); }
#define LittleShort
static ID_INLINE int BigLong(int l) { LongSwap(l); }
#define LittleLong
static ID_INLINE float BigFloat(const float *l) { FloatSwap(l); }
#define LittleFloat
+#endif
#define PATH_SEP '\\'
@@ -206,12 +208,14 @@
return fi;
}
+#if 0
#define BigShort
static inline short LittleShort(short l) { return ShortSwap(l); }
#define BigLong
static inline int LittleLong (int l) { return LongSwap(l); }
#define BigFloat
static inline float LittleFloat (const float l) { return FloatSwap(&l); }
+#endif
#endif
@@ -229,12 +233,14 @@
void Sys_PumpEvents( void );
+#if 0
#define BigShort
static inline short LittleShort(short l) { return ShortSwap(l); }
#define BigLong
static inline int LittleLong (int l) { return LongSwap(l); }
#define BigFloat
static inline float LittleFloat (const float l) { return FloatSwap(&l); }
+#endif
#endif
@@ -268,6 +274,7 @@
#define BOTLIB_HARD_LINKED
#endif
+#if 0
#if !idppc
inline static short BigShort( short l) { return ShortSwap(l); }
#define LittleShort
@@ -283,6 +290,7 @@
#define BigFloat
inline static float LittleFloat (const float *l) { return FloatSwap(l); }
#endif
+#endif
#endif
@@ -302,10 +310,18 @@
#define CPUSTRING "freebsd-other"
#endif
+#include <machine/param.h>
+#if __FreeBSD_version < 500000
+#include <inttypes.h>
+#else
+#include <stdint.h>
+#endif
+
#define PATH_SEP '/'
// bk010116 - omitted Q3STATIC (see Linux above), broken target
+#if 0
#if !idppc
static short BigShort( short l) { return ShortSwap(l); }
#define LittleShort
@@ -321,6 +337,7 @@
#define BigFloat
static float LittleFloat (const float *l) { return FloatSwap(l); }
#endif
+#endif
#endif
@@ -452,13 +469,9 @@
void *Hunk_Alloc( int size, ha_pref preference );
#endif
@ -15,3 +102,32 @@ diff -ruN ./code/game/q_shared.h ../quake3-1.32b-BUILT/./code/game/q_shared.h
#if !( defined __VECTORC )
void Com_Memset (void* dest, const int val, const size_t count);
@@ -888,18 +901,18 @@
} qint64;
//=============================================
-/*
-short BigShort(short l);
-short LittleShort(short l);
-int BigLong (int l);
-int LittleLong (int l);
-qint64 BigLong64 (qint64 l);
-qint64 LittleLong64 (qint64 l);
-float BigFloat (const float *l);
-float LittleFloat (const float *l);
+
+int16_t BigShort(int16_t l);
+int16_t LittleShort(int16_t l);
+int32_t BigLong (int32_t l);
+int32_t LittleLong (int32_t l);
+qint64 BigLong64 (qint64 l);
+qint64 LittleLong64 (qint64 l);
+float BigFloat (float l);
+float LittleFloat (float l);
void Swap_Init (void);
-*/
+
char * QDECL va(char *format, ...);
//=============================================

View file

@ -1,12 +0,0 @@
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

View file

@ -0,0 +1,26 @@
--- code/qcommon/files.c.orig Thu May 25 16:39:34 2006
+++ code/qcommon/files.c Thu May 25 16:41:43 2006
@@ -2763,6 +2763,7 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory( fs_basepath->string, gameName );
}
+ FS_AddGameDirectory( LIBDIR, gameName );
// 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)) {
@@ -2777,6 +2778,7 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory(fs_basepath->string, fs_basegame->string);
}
+ FS_AddGameDirectory(LIBDIR, fs_basegame->string);
if (fs_homepath->string[0] && Q_stricmp(fs_homepath->string,fs_basepath->string)) {
FS_AddGameDirectory(fs_homepath->string, fs_basegame->string);
}
@@ -2790,6 +2792,7 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory(fs_basepath->string, fs_gamedirvar->string);
}
+ FS_AddGameDirectory(LIBDIR, fs_gamedirvar->string);
if (fs_homepath->string[0] && Q_stricmp(fs_homepath->string,fs_basepath->string)) {
FS_AddGameDirectory(fs_homepath->string, fs_gamedirvar->string);
}

View file

@ -0,0 +1,20 @@
--- code/qcommon/vm.c.orig Thu May 25 16:59:36 2006
+++ code/qcommon/vm.c Thu May 25 17:08:51 2006
@@ -478,7 +478,7 @@
}
}
- if ( interpret == VMI_NATIVE ) {
+ if ( 1 ) {
// try to load as a system dll
Com_Printf( "Loading dll file %s.\n", vm->name );
vm->dllHandle = Sys_LoadDll( module, vm->fqpath , &vm->entryPoint, VM_DllSyscall );
@@ -826,7 +826,7 @@
-#ifdef oDLL_ONLY // bk010215 - for DLL_ONLY dedicated servers/builds w/o VM
+#ifdef DLL_ONLY // bk010215 - for DLL_ONLY dedicated servers/builds w/o VM
int VM_CallCompiled( vm_t *vm, int *args ) {
return(0);
}

View file

@ -1,12 +0,0 @@
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

View file

@ -1,20 +0,0 @@
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
);

View file

@ -1,12 +0,0 @@
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 '

View file

@ -1,6 +1,43 @@
--- code/unix/Makefile.orig Sun May 5 07:21:10 2002
+++ code/unix/Makefile Sun Nov 20 18:48:48 2005
@@ -136,7 +136,7 @@
--- code/unix/Makefile.orig Thu May 25 16:59:37 2006
+++ code/unix/Makefile Thu May 25 17:04:46 2006
@@ -19,6 +19,7 @@
PLATFORM=$(shell uname|tr A-Z a-z)
PLATFORM_RELEASE=$(shell uname -r)
+ARCH=$(shell uname -m)
###
### These paths are where you probably want to change things
@@ -34,7 +35,7 @@
# Build name
# BUILD_NAME=$(BUILD_NAME)
-BUILD_NAME=quake3.x86
+BUILD_NAME=quake3
@@ -46,8 +47,8 @@
BASEQ3_DIR=$(BDIR)/baseq3
-BD=debug$(ARCH)$(GLIBC)
-BR=release$(ARCH)$(GLIBC)
+BD=debug
+BR=release
CDIR=$(MOUNT_DIR)/client
SDIR=$(MOUNT_DIR)/server
RDIR=$(MOUNT_DIR)/renderer
@@ -76,7 +77,7 @@
#############################################################################
## Defaults
-DLL_ONLY=false
+DLL_ONLY?=false
# bk010215 - TODO - add all defaults / kill Ryan
@@ -136,7 +137,7 @@
ifeq ($(ARCH),ppc)
NEWPGCC=/loki/global/ppc/bin/gcc
CC=$(NEWPGCC)
@ -9,7 +46,7 @@
else
#NEWPGCC=/usr/local/gcc-2.95.2/bin/gcc # bk001205
#NEWPGCC=/loki/global/x86/bin/gcc
@@ -146,9 +146,9 @@
@@ -146,9 +147,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
@ -21,7 +58,7 @@
endif
endif
@@ -162,7 +162,7 @@
@@ -162,7 +163,7 @@
RANLIB=ranlib
THREAD_LDFLAGS=-lpthread
@ -30,16 +67,109 @@
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 )
@@ -199,31 +200,27 @@
GLIBC= #libc is irrelevant
-ifneq (,$(findstring alpha,$(shell uname -m)))
-ARCH=axp
-RPMARCH=alpha
-VENDOR=dec
-else #default to i386
-ARCH=i386
-RPMARCH=i386
-VENDOR=unknown
-endif #alpha test
+BASE_CFLAGS = $(CFLAGS) -DDATADIR='\"$(Q3DIR)\"' -DLIBDIR='\"$(LIBDIR)\"' -pipe
+GL_CFLAGS = -I$(X11BASE)/include
-BASE_CFLAGS = -pipe
+DEBUG_CFLAGS=$(BASE_CFLAGS) -g -Wall -Werror
+RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG
-GL_CFLAGS = -I$(MESADIR)/include -I/usr/X11R6/include
+ifdef OPTIMIZED_CFLAGS
+ ifeq ($(ARCH),i386)
+RELEASE_CFLAGS+=-O6 -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce
+ else
+RELEASE_CFLAGS+=-O6 -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations
+ endif
+endif
-DEBUG_CFLAGS=$(BASE_CFLAGS) -g -Wall -Werror
-ifeq ($(ARCH),axp)
-CC=pgcc
-RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations
-else
-#NEWPGCC=/loki/global/x86/bin/gcc # raistlin012301
-#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 -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing - fstrength-reduce
+ifneq ($(ARCH),i386)
+DLL_ONLY=true
+endif
+
+ifeq ($(DLL_ONLY),true)
+BASE_CFLAGS += -DDLL_ONLY
endif
LIBEXT=a
@@ -283,7 +283,7 @@
@@ -235,25 +232,37 @@
ARFLAGS=ar rv
RANLIB=ranlib
-THREAD_LDFLAGS=-lpthread
+THREAD_LDFLAGS=$(PTHREAD_LIBS)
# don't need -ldl (FreeBSD)
-LDFLAGS=-lm
+LDFLAGS+=-lm
#GLLDFLAGS=-L/usr/X11R6/lib -L$(MESADIR)/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
#GLLDFLAGS=-L/usr/X11/lib -lGL -lX11 -lXext -lm
-GLLDFLAGS=-L/usr/X11R6/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
+GLLDFLAGS=-L$(X11BASE)/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
-ifeq ($(ARCH),axp)
-TARGETS=\
- $(B)/$(PLATFORM)q3ded
-else
-TARGETS=\
- $(B)/$(PLATFORM)quake3 \
- $(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)
+ifdef CLIENT
+TARGETS+=$(B)/quake3
+endif
+
+ifdef DEDICATED
+TARGETS+=$(B)/q3ded
+endif
+
+ifdef SMP
+TARGETS+=$(B)/quake3-smp
+endif
+
+ifeq ($(DLL_ONLY),true)
+GAMELIBS=yes
+endif
+
+ifdef GAMELIBS
+TARGETS+=\
+ $(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
else # ifeq freebsd
@@ -283,7 +292,7 @@
ARFLAGS=ar rv
RANLIB=ranlib
@ -48,16 +178,88 @@
GLLDFLAGS=-L/usr/X11/lib -lGL -lX11 -lXext -lm
TARGETS=$(B)/sgiquake3 \
@@ -312,7 +312,7 @@
@@ -310,9 +319,9 @@
RANLIB=ranlib
ifeq ($(PLATFORM),freebsd)
LDFLAGS=-lm
-LDFLAGS=-lm
+LDFLAGS+=-lm
else
-LDFLAGS=-ldl -lm
+LDFLAGS=-lm
endif # ifeq freebsd
TARGETS=\
@@ -578,7 +578,6 @@
@@ -348,7 +357,7 @@
$(MAKE) targets B=$(BR) CFLAGS="$(RELEASE_CFLAGS)"
#Build both debug and release builds
-all:build_debug build_release
+all:build_release
targets:makedirs $(TARGETS)
@@ -516,20 +525,6 @@
$(B)/client/unix_net.o \
$(B)/client/unix_shared.o \
\
- $(B)/client/ahoptim.o \
- $(B)/client/autohint.o \
- $(B)/client/ftbase.o \
- $(B)/client/ftdebug.o \
- $(B)/client/ftglyph.o \
- $(B)/client/ftinit.o \
- $(B)/client/ftmm.o \
- $(B)/client/ftsystem.o \
- $(B)/client/raster1.o \
- $(B)/client/sfnt.o \
- $(B)/client/sfobjs.o \
- $(B)/client/smooth.o \
- $(B)/client/truetype.o
-# \
# $(B)/client/q_parse.o \
# $(B)/client/math_quaternion.o \
# $(B)/client/util_str.o \
@@ -541,7 +536,9 @@
# $(B)/client/q_shared.o \
ifeq ($(ARCH),i386)
- Q3OBJ += $(B)/client/vm_x86.o
+ ifeq ($(DLL_ONLY),false)
+ Q3OBJ += $(B)/client/vm_x86.o
+ endif
endif
ifeq ($(ARCH),ppc)
@@ -559,10 +556,24 @@
$(B)/client/linux_qgl.o \
$(B)/client/linux_glimp.o \
$(B)/client/linux_snd.o \
+ $(B)/client/linux_signals.o \
+ $(B)/client/snd_mixa.o \
+ $(B)/client/matha.o
+
+ Q3POBJ_SMP=\
+ $(B)/client/linux_common.o \
+ $(B)/client/linux_qgl.o \
+ $(B)/client/linux_glimp_smp.o \
+ $(B)/client/linux_snd.o \
+ $(B)/client/linux_signals.o \
$(B)/client/snd_mixa.o \
- $(B)/client/matha.o \
- $(B)/client/ftol.o \
- $(B)/client/snapvector.o
+ $(B)/client/matha.o
+
+ ifeq ($(ARCH),i386)
+ Q3POBJ += $(B)/client/ftol.o $(B)/client/snapvector.o
+ Q3POBJ_SMP += $(B)/client/ftol.o $(B)/client/snapvector.o
+ endif
+
else
ifeq ($(PLATFORM),irix)
Q3POBJ=\
@@ -578,7 +589,6 @@
$(B)/client/linux_common.o \
$(B)/client/linux_qgl.o \
$(B)/client/linux_glimp.o \
@ -65,7 +267,7 @@
$(B)/client/linux_snd.o \
$(B)/client/snd_mixa.o \
$(B)/client/matha.o \
@@ -587,7 +586,6 @@
@@ -587,7 +597,6 @@
$(B)/client/linux_common.o \
$(B)/client/linux_qgl.o \
$(B)/client/linux_glimp_smp.o \
@ -73,7 +275,22 @@
$(B)/client/linux_snd.o \
$(B)/client/snd_mixa.o \
$(B)/client/matha.o
@@ -754,7 +752,6 @@
@@ -602,12 +611,12 @@
endif #FreeBSD
endif #IRIX
-$(B)/$(PLATFORM)quake3 : $(Q3OBJ) $(Q3POBJ)
+$(B)/quake3 : $(Q3OBJ) $(Q3POBJ)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ) $(GLLDFLAGS) $(LDFLAGS)
# TTimo: splines code requires C++ linking, but splines have not been officially included in the codebase
# $(CXX) -o $@ $(Q3OBJ) $(Q3POBJ) $(GLLDFLAGS) $(LDFLAGS)
-$(B)/$(PLATFORM)quake3-smp : $(Q3OBJ) $(Q3POBJ_SMP)
+$(B)/quake3-smp : $(Q3OBJ) $(Q3POBJ_SMP)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) $(GLLDFLAGS) \
$(THREAD_LDFLAGS) $(LDFLAGS)
@@ -754,10 +763,10 @@
$(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)
@ -81,15 +298,134 @@
$(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)/client/linux_signals.o : $(UDIR)/linux_signals.c; $(DO_CC) $(GL_CFLAGS)
$(B)/client/snd_mixa.o : $(UDIR)/snd_mixa.s; $(DO_AS)
$(B)/client/matha.o : $(UDIR)/matha.s; $(DO_AS)
@@ -912,13 +921,17 @@
$(B)/ded/unix_main.o \
$(B)/ded/unix_net.o \
$(B)/ded/unix_shared.o \
+ $(B)/ded/linux_signals.o \
\
$(B)/ded/null_client.o \
$(B)/ded/null_input.o \
$(B)/ded/null_snddma.o
ifeq ($(ARCH),i386)
- Q3DOBJ += $(B)/ded/vm_x86.o $(B)/ded/ftol.o $(B)/ded/snapvector.o
+ Q3DOBJ += $(B)/ded/ftol.o $(B)/ded/snapvector.o
+ ifeq ($(DLL_ONLY),false)
+ Q3DOBJ += $(B)/ded/vm_x86.o
+ endif
endif
ifeq ($(ARCH),ppc)
@@ -927,7 +940,7 @@
endif
endif
-$(B)/$(PLATFORM)q3ded : $(Q3DOBJ)
+$(B)/q3ded : $(Q3DOBJ)
$(CC) -o $@ $(Q3DOBJ) $(LDFLAGS)
$(B)/ded/sv_bot.o : $(SDIR)/sv_bot.c; $(DO_DED_CC)
@@ -988,6 +1001,7 @@
$(B)/ded/unix_main.o : $(UDIR)/unix_main.c; $(DO_DED_CC)
$(B)/ded/unix_net.o : $(UDIR)/unix_net.c; $(DO_DED_CC)
$(B)/ded/unix_shared.o : $(UDIR)/unix_shared.c; $(DO_DED_CC)
+$(B)/ded/linux_signals.o : $(UDIR)/linux_signals.c; $(DO_DED_CC)
$(B)/ded/null_client.o : $(NDIR)/null_client.c; $(DO_DED_CC)
$(B)/ded/null_input.o : $(NDIR)/null_input.c; $(DO_DED_CC)
$(B)/ded/null_snddma.o : $(NDIR)/null_snddma.c; $(DO_DED_CC)
@@ -1068,7 +1082,7 @@
$(B)/baseq3/cgame/q_math.o \
$(B)/baseq3/cgame/q_shared.o
-$(B)/baseq3/cgame$(ARCH).$(SHLIBEXT) : $(Q3CGOBJ)
+$(B)/baseq3/cgame.$(SHLIBEXT) : $(Q3CGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3CGOBJ)
$(B)/baseq3/cgame/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC)
@@ -1128,7 +1142,7 @@
$(B)/missionpack/cgame/q_shared.o \
$(B)/missionpack/cgame/ui_shared.o
-$(B)/missionpack/cgame$(ARCH).$(SHLIBEXT) : $(MPCGOBJ)
+$(B)/missionpack/cgame.$(SHLIBEXT) : $(MPCGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPCGOBJ)
$(B)/missionpack/cgame/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC) -DMISSIONPACK
@@ -1200,7 +1214,7 @@
$(B)/baseq3/game/q_math.o \
$(B)/baseq3/game/q_shared.o
-$(B)/baseq3/qagame$(ARCH).$(SHLIBEXT) : $(Q3GOBJ)
+$(B)/baseq3/qagame.$(SHLIBEXT) : $(Q3GOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3GOBJ)
$(B)/baseq3/game/ai_chat.o : $(GDIR)/ai_chat.c; $(DO_SHLIB_CC)
@@ -1278,7 +1292,7 @@
$(B)/missionpack/game/q_math.o \
$(B)/missionpack/game/q_shared.o
-$(B)/missionpack/qagame$(ARCH).$(SHLIBEXT) : $(MPGOBJ)
+$(B)/missionpack/qagame.$(SHLIBEXT) : $(MPGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPGOBJ)
$(B)/missionpack/game/ai_chat.o : $(GDIR)/ai_chat.c; $(DO_SHLIB_CC) -DMISSIONPACK
@@ -1367,7 +1381,7 @@
$(B)/baseq3/ui/q_math.o \
$(B)/baseq3/ui/q_shared.o
-$(B)/baseq3/ui$(ARCH).$(SHLIBEXT) : $(Q3UIOBJ)
+$(B)/baseq3/ui.$(SHLIBEXT) : $(Q3UIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(Q3UIOBJ)
$(B)/baseq3/ui/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC)
@@ -1410,7 +1424,7 @@
$(B)/baseq3/ui/ui_startserver.o : $(Q3UIDIR)/ui_startserver.c; $(DO_SHLIB_CC)
$(B)/baseq3/ui/ui_team.o : $(Q3UIDIR)/ui_team.c; $(DO_SHLIB_CC)
$(B)/baseq3/ui/ui_teamorders.o : $(Q3UIDIR)/ui_teamorders.c; $(DO_SHLIB_CC)
-$(B)/baseq3/ui/ui_syscalls.o : $(Q3UIDIR)/ui_syscalls.c; $(DO_SHLIB_CC)
+$(B)/baseq3/ui/ui_syscalls.o : $(UIDIR)/ui_syscalls.c; $(DO_SHLIB_CC)
$(B)/baseq3/ui/ui_video.o : $(Q3UIDIR)/ui_video.c; $(DO_SHLIB_CC)
# bk001205 - these wre the only SHLIB compiles in 1.17
@@ -1450,7 +1464,7 @@
# $(B)/missionpack/ui/q_math.o \
# $(B)/missionpack/ui/q_shared.o
-$(B)/missionpack/ui$(ARCH).$(SHLIBEXT) : $(MPUIOBJ)
+$(B)/missionpack/ui.$(SHLIBEXT) : $(MPUIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(MPUIOBJ)
$(B)/missionpack/ui/ui_atoms.o : $(UIDIR)/ui_atoms.c; $(DO_SHLIB_CC) -DMISSIONPACK
@@ -1613,23 +1627,8 @@
$(B)/q3static/unix_net.o \
$(B)/q3static/unix_shared.o \
\
- $(B)/q3static/ahoptim.o \
- $(B)/q3static/autohint.o \
- $(B)/q3static/ftbase.o \
- $(B)/q3static/ftdebug.o \
- $(B)/q3static/ftglyph.o \
- $(B)/q3static/ftinit.o \
- $(B)/q3static/ftmm.o \
- $(B)/q3static/ftsystem.o \
- $(B)/q3static/raster1.o \
- $(B)/q3static/sfnt.o \
- $(B)/q3static/sfobjs.o \
- $(B)/q3static/smooth.o \
- $(B)/q3static/truetype.o \
- \
$(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 @@
@@ -1779,7 +1778,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
@ -97,3 +433,25 @@
$(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
@@ -2020,7 +2018,7 @@
-$(B)/$(PLATFORM)q3static : $(Q3SOBJ)
+$(B)/q3static : $(Q3SOBJ)
$(CC) $(CFLAGS) -o $@ $(Q3SOBJ) $(GLLDFLAGS) $(LDFLAGS)
@@ -2059,9 +2057,9 @@
copyfiles:
-mkdirhier $(COPYDIR)
- cp $(BR)/linuxquake3 $(COPYDIR)/quake3.x86
- strip $(COPYDIR)/quake3.x86
- chmod 755 $(COPYDIR)/quake3.x86
+ cp $(BR)/linuxquake3 $(COPYDIR)/quake3
+ strip $(COPYDIR)/quake3
+ chmod 755 $(COPYDIR)/quake3
cp $(BR)/linuxq3ded $(COPYDIR)/q3ded
strip $(COPYDIR)/q3ded
chmod 755 $(COPYDIR)/q3ded

View file

@ -1,27 +0,0 @@
--- code/unix/cons.orig Fri Jun 14 13:01:32 2002
+++ code/unix/cons Wed Nov 23 10:32:49 2005
@@ -271,11 +271,11 @@
# Defaults for a typical (?) UNIX platform.
# Your mileage may vary.
'unix' => [
- 'CC' => 'cc',
- 'CFLAGS' => '',
+ 'CC' => $ENV{CC},
+ 'CFLAGS' => $ENV{CFLAGS},
'CCCOM' => '%CC %CFLAGS %_IFLAGS -c %< -o %>',
- 'CXX' => '%CC',
- 'CXXFLAGS' => '%CFLAGS',
+ 'CXX' => $ENV{CXX},
+ 'CXXFLAGS' => $ENV{CXXFLAGS},
'CXXCOM' => '%CXX %CXXFLAGS %_IFLAGS -c %< -o %>',
'INCDIRPREFIX' => '-I',
'INCDIRSUFFIX' => '',
@@ -294,7 +294,7 @@
'LD' => 'ld',
'LDFLAGS' => '',
'PREFLIB' => 'lib',
- 'ENV' => { 'PATH' => '/bin:/usr/bin' },
+ 'ENV' => { 'PATH' => '/bin:/usr/bin:/usr/local/bin' },
],
);

View file

@ -0,0 +1,58 @@
--- code/unix/unix_main.c.orig Thu May 25 16:59:37 2006
+++ code/unix/unix_main.c Thu May 25 17:00:58 2006
@@ -707,12 +707,12 @@
{
void *libHandle;
void (*dllEntry)( int (*syscallptr)(int, ...) );
- char curpath[MAX_OSPATH];
char fname[MAX_OSPATH];
char *basepath;
char *homepath;
char *pwdpath;
char *gamedir;
+ char *libdir = LIBDIR;
char *fn;
const char* err = NULL;
@@ -721,18 +721,7 @@
// bk001206 - let's have some paranoia
assert( name );
- getcwd(curpath, sizeof(curpath));
-#if defined __i386__
- snprintf (fname, sizeof(fname), "%si386.so", name);
-#elif defined __powerpc__ //rcg010207 - PPC support.
- snprintf (fname, sizeof(fname), "%sppc.so", name);
-#elif defined __axp__
- snprintf (fname, sizeof(fname), "%saxp.so", name);
-#elif defined __mips__
- snprintf (fname, sizeof(fname), "%smips.so", name);
-#else
-#error Unknown arch
-#endif
+ snprintf (fname, sizeof(fname), "%s.so", name);
// bk001129 - was RTLD_LAZY
#define Q_RTLD RTLD_NOW
@@ -742,10 +731,19 @@
homepath = Cvar_VariableString( "fs_homepath" );
gamedir = Cvar_VariableString( "fs_game" );
- // pwdpath
- fn = FS_BuildOSPath( pwdpath, gamedir, fname );
+ // libdir
+ fn = FS_BuildOSPath( libdir, gamedir, fname );
Com_Printf( "Sys_LoadDll(%s)... \n", fn );
libHandle = dlopen( fn, Q_RTLD );
+
+ // pwdpath
+ if ( !libHandle )
+ {
+ Com_Printf( "Sys_LoadDll(%s) failed:\n\"%s\"\n", fn, dlerror() );
+ fn = FS_BuildOSPath( pwdpath, gamedir, fname );
+ Com_Printf( "Sys_LoadDll(%s)... \n", fn );
+ libHandle = dlopen( fn, Q_RTLD );
+ }
if ( !libHandle )
{

View file

@ -1,11 +1,11 @@
--- code/unix/unix_shared.c.orig Mon Aug 15 20:10:07 2005
+++ code/unix/unix_shared.c Sun Nov 20 18:41:22 2005
--- code/unix/unix_shared.c.orig Thu May 25 14:38:44 2006
+++ code/unix/unix_shared.c Thu May 25 14:41:26 2006
@@ -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] = %%Q3DIR%%;
+static char installPath[MAX_OSPATH] = DATADIR;
// Used to determine where to store user-specific files
static char homePath[MAX_OSPATH];
@ -34,7 +34,7 @@
// test the wrap issue
#if 0
@@ -136,7 +140,7 @@
@@ -136,10 +140,10 @@
return ret;
}
@ -42,4 +42,8 @@
+// #endif
//#if 0 // bk001215 - see snapvector.nasm for replacement
#if (defined __APPLE__) // rcg010206 - using this for PPC builds...
-#if (defined __APPLE__) // rcg010206 - using this for PPC builds...
+#ifndef __i386__ // rcg010206 - using this for PPC builds...
long fastftol( float f ) { // bk001213 - from win32/win_shared.c
//static int tmp;
// __asm fld f

View file

@ -1,6 +0,0 @@
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

View file

@ -1,12 +0,0 @@
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)

View file

@ -0,0 +1,12 @@
%%DEDICATED%%bin/q3ded
%%CLIENT%%bin/quake3
%%SMP%%bin/quake3-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

@ -7,57 +7,106 @@
PORTNAME= quake3
PORTVERSION= 1.32b
PORTREVISION= 4
PORTREVISION= 5
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_IDSOFTWARE:S|$|source/|} \
http://www.proarena.com/p/ftpx/x8524/quake_3_arena/ \
MASTER_SITES= http://www.proarena.com/p/ftpx/x8524/quake_3_arena/ \
http://www.planetgargoyle.com/ \
http://www.teamdarkside.net/ \
http://0day.icculus.org/mirrors/quake3/ \
http://www.olpainless.net/files/
http://www.olpainless.net/files/ \
${MASTER_SITE_IDSOFTWARE:S|$|source/|}
DISTFILES= ${DISTNAME}-source${EXTRACT_SUFX}
MAINTAINER= shirshegsm@gmail.com
COMMENT= Quake III Arena -- first person shooter (native build)
BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
USE_ZIP= yes
USE_CRLF= yes
USE_DOS2UNIX= yes
USE_GMAKE= yes
USE_PERL5_BUILD=yes
USE_GL= yes
USE_GCC= 3.2+
BUILD_WRKSRC= ${WRKSRC}/code/unix
PLIST_FILES= bin/q3ded bin/quake3
OPTIONS= CLIENT "Build client" on \
DEDICATED "Build dedicated server" on \
GAMELIBS "Build game libraries (mandatory on !i386)" off \
OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
SMP "Build SMP (threaded) client" on
MAKE_ENV= LIBDIR="${LIBDIR}" DLL_ONLY=true
PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
LIBDIR= ${PREFIX}/lib/${PORTNAME}
.include <bsd.port.pre.mk>
# Anyone to play with this on !i386
.if ${ARCH} != "i386"
BROKEN= "Does not compile on !i386 (feel free to submit fixes)"
.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) \
&& defined(WITHOUT_SMP)
IGNORE= needs at least one of CLIENT, DEDICATED and SMP options
.endif
.if ${PERL_LEVEL} < 500600
BUILD_DEPENDS+= ${SITE_PERL}/${PERL_ARCH}/Digest/MD5.pm:${PORTSDIR}/security/p5-Digest-MD5
.if ${ARCH} == "i386"
BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
.endif
.if !defined(WITHOUT_CLIENT) && !defined(WITHOUT_SMP)
USE_GL= yes
.endif
.if !defined(WITHOUT_CLIENT)
MAKE_ENV+= CLIENT=YES
PLIST_SUB+= CLIENT=""
Q3BIN+= quake3
.else
PLIST_SUB+= CLIENT="@comment "
.endif
.if !defined(WITHOUT_DEDICATED)
MAKE_ENV+= DEDICATED=YES
PLIST_SUB+= DEDICATED=""
Q3BIN+= q3ded
.else
PLIST_SUB+= DEDICATED="@comment "
.endif
.if defined(WITH_GAMELIBS) || ${ARCH} != "i386"
MAKE_ENV+= GAMELIBS=YES
PLIST_SUB+= GAMELIBS=""
.else
PLIST_SUB+= GAMELIBS="@comment "
.endif
.if !defined(WITHOUT_OPTIMIZED_CFLAGS)
MAKE_ENV+= OPTIMIZED_CFLAGS=YES
.endif
.if !defined(WITHOUT_SMP)
MAKE_ENV+= SMP=YES \
PTHREAD_LIBS="${PTHREAD_LIBS}"
PLIST_SUB+= SMP=""
Q3BIN+= quake3-smp
.else
PLIST_SUB+= SMP="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e 's|%%Q3DIR%%|"${Q3DIR}"|' \
${WRKSRC}/code/unix/unix_shared.c
@${REINPLACE_CMD} -e 's|botlib.log|/dev/null|' ${WRKSRC}/code/botlib/be_interface.c
pre-build:
${MKDIR} ${WRKSRC}/lcc/build
do-build:
cd ${WRKSRC}/code && ${MAKE_ENV} ${PERL} unix/cons
@${REINPLACE_CMD} -e 's|botlib\.log|/dev/null|' \
${WRKSRC}/code/botlib/be_interface.c
@${REINPLACE_CMD} -e \
's|//[[:blank:]]*\(Swap_Init[[:blank:]]*();\)|\1|' \
${WRKSRC}/code/botlib/be_interface.c \
${WRKSRC}/code/qcommon/common.c \
${WRKSRC}/code/renderer/tr_init.c
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/code/install/linuxq3ded \
${PREFIX}/bin/q3ded
${INSTALL_PROGRAM} ${WRKSRC}/code/install/linuxquake3 \
${PREFIX}/bin/quake3
.for bin in ${Q3BIN}
${INSTALL_PROGRAM} ${BUILD_WRKSRC}/release/${bin} ${PREFIX}/bin
.endfor
.if defined(WITH_GAMELIBS) || ${ARCH} != "i386"
.for dir in baseq3 missionpack
${MKDIR} ${LIBDIR}/${dir}
${INSTALL_PROGRAM} ${BUILD_WRKSRC}/release/${dir}/*.so ${LIBDIR}/${dir}
.endfor
.endif
.include "${.CURDIR}/../quake3-data/Makefile.include"
.include <bsd.port.post.mk>

View file

@ -1,69 +0,0 @@
--- code/Construct.orig Mon Aug 15 20:56:27 2005
+++ code/Construct Wed Nov 23 10:37:04 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;
@@ -32,8 +32,8 @@
$DO_WIN32 = 0;
$NO_VM = 0;
$NO_SO = 0;
-$CC='gcc';
-$CXX='g++';
+$CC=$ENV{CC};
+$CXX=$ENV{CXX};
# detect an sdk build (don't attempt client build and other things)
if ( -r 'unix/Conscript-client' )
@@ -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 -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
{

View file

@ -1,12 +0,0 @@
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

View file

@ -1,12 +0,0 @@
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;

View file

@ -1,12 +0,0 @@
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 $<

View file

@ -1,12 +0,0 @@
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 $<

View file

@ -1,12 +0,0 @@
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

View file

@ -0,0 +1,11 @@
--- code/client/cl_ui.c.orig Thu May 25 15:41:27 2006
+++ code/client/cl_ui.c Thu May 25 15:46:39 2006
@@ -1166,7 +1166,7 @@
// init for this gamestate
VM_Call( uivm, UI_INIT, (cls.state >= CA_AUTHORIZING && cls.state < CA_ACTIVE));
}
- else if (v != UI_API_VERSION) {
+ else if (v != 0 && v != UI_API_VERSION) {
Com_Error( ERR_DROP, "User Interface is version %d, expected %d", v, UI_API_VERSION );
cls.uiStarted = qfalse;
}

View file

@ -1,12 +0,0 @@
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

View file

@ -0,0 +1,99 @@
--- code/game/q_shared.c.orig Thu May 25 13:42:26 2006
+++ code/game/q_shared.c Thu May 25 13:44:30 2006
@@ -99,29 +99,29 @@
============================================================================
*/
-/*
+
// can't just use function pointers, or dll linkage can
// mess up when qcommon is included in multiple places
-static short (*_BigShort) (short l);
-static short (*_LittleShort) (short l);
-static int (*_BigLong) (int l);
-static int (*_LittleLong) (int l);
+static int16_t (*_BigShort) (int16_t l);
+static int16_t (*_LittleShort) (int16_t l);
+static int32_t (*_BigLong) (int32_t l);
+static int32_t (*_LittleLong) (int32_t l);
static qint64 (*_BigLong64) (qint64 l);
static qint64 (*_LittleLong64) (qint64 l);
static float (*_BigFloat) (const float *l);
static float (*_LittleFloat) (const float *l);
-short BigShort(short l){return _BigShort(l);}
-short LittleShort(short l) {return _LittleShort(l);}
-int BigLong (int l) {return _BigLong(l);}
-int LittleLong (int l) {return _LittleLong(l);}
-qint64 BigLong64 (qint64 l) {return _BigLong64(l);}
-qint64 LittleLong64 (qint64 l) {return _LittleLong64(l);}
-float BigFloat (const float *l) {return _BigFloat(l);}
-float LittleFloat (const float *l) {return _LittleFloat(l);}
-*/
+int16_t BigShort(int16_t l){return _BigShort(l);}
+int16_t LittleShort(int16_t l) {return _LittleShort(l);}
+int32_t BigLong (int32_t l) {return _BigLong(l);}
+int32_t LittleLong (int32_t l) {return _LittleLong(l);}
+qint64 BigLong64 (qint64 l) {return _BigLong64(l);}
+qint64 LittleLong64 (qint64 l) {return _LittleLong64(l);}
+float BigFloat (float l) {return _BigFloat(&l);}
+float LittleFloat (float l) {return _LittleFloat(&l);}
-short ShortSwap (short l)
+
+int16_t ShortSwap (int16_t l)
{
byte b1,b2;
@@ -131,12 +131,12 @@
return (b1<<8) + b2;
}
-short ShortNoSwap (short l)
+int16_t ShortNoSwap (int16_t l)
{
return l;
}
-int LongSwap (int l)
+int32_t LongSwap (int32_t l)
{
byte b1,b2,b3,b4;
@@ -145,15 +145,15 @@
b3 = (l>>16)&255;
b4 = (l>>24)&255;
- return ((int)b1<<24) + ((int)b2<<16) + ((int)b3<<8) + b4;
+ return ((int32_t)b1<<24) + ((int32_t)b2<<16) + ((int32_t)b3<<8) + b4;
}
-int LongNoSwap (int l)
+int32_t LongNoSwap (int32_t l)
{
return l;
}
-qint64 Long64Swap (qint64 ll)
+qint64 Long64Swap (qint64 ll)
{
qint64 result;
@@ -199,7 +199,7 @@
Swap_Init
================
*/
-/*
+
void Swap_Init (void)
{
byte swaptest[2] = {1,0};
@@ -229,7 +229,7 @@
}
}
-*/
+
/*
============================================================================

View file

@ -1,7 +1,94 @@
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 @@
--- code/game/q_shared.h.orig Thu May 25 13:26:31 2006
+++ code/game/q_shared.h Thu May 25 13:26:58 2006
@@ -150,12 +150,14 @@
#define ID_INLINE __inline
+#if 0
static ID_INLINE short BigShort( short l) { return ShortSwap(l); }
#define LittleShort
static ID_INLINE int BigLong(int l) { LongSwap(l); }
#define LittleLong
static ID_INLINE float BigFloat(const float *l) { FloatSwap(l); }
#define LittleFloat
+#endif
#define PATH_SEP '\\'
@@ -206,12 +208,14 @@
return fi;
}
+#if 0
#define BigShort
static inline short LittleShort(short l) { return ShortSwap(l); }
#define BigLong
static inline int LittleLong (int l) { return LongSwap(l); }
#define BigFloat
static inline float LittleFloat (const float l) { return FloatSwap(&l); }
+#endif
#endif
@@ -229,12 +233,14 @@
void Sys_PumpEvents( void );
+#if 0
#define BigShort
static inline short LittleShort(short l) { return ShortSwap(l); }
#define BigLong
static inline int LittleLong (int l) { return LongSwap(l); }
#define BigFloat
static inline float LittleFloat (const float l) { return FloatSwap(&l); }
+#endif
#endif
@@ -268,6 +274,7 @@
#define BOTLIB_HARD_LINKED
#endif
+#if 0
#if !idppc
inline static short BigShort( short l) { return ShortSwap(l); }
#define LittleShort
@@ -283,6 +290,7 @@
#define BigFloat
inline static float LittleFloat (const float *l) { return FloatSwap(l); }
#endif
+#endif
#endif
@@ -302,10 +310,18 @@
#define CPUSTRING "freebsd-other"
#endif
+#include <machine/param.h>
+#if __FreeBSD_version < 500000
+#include <inttypes.h>
+#else
+#include <stdint.h>
+#endif
+
#define PATH_SEP '/'
// bk010116 - omitted Q3STATIC (see Linux above), broken target
+#if 0
#if !idppc
static short BigShort( short l) { return ShortSwap(l); }
#define LittleShort
@@ -321,6 +337,7 @@
#define BigFloat
static float LittleFloat (const float *l) { return FloatSwap(l); }
#endif
+#endif
#endif
@@ -452,13 +469,9 @@
void *Hunk_Alloc( int size, ha_pref preference );
#endif
@ -15,3 +102,32 @@ diff -ruN ./code/game/q_shared.h ../quake3-1.32b-BUILT/./code/game/q_shared.h
#if !( defined __VECTORC )
void Com_Memset (void* dest, const int val, const size_t count);
@@ -888,18 +901,18 @@
} qint64;
//=============================================
-/*
-short BigShort(short l);
-short LittleShort(short l);
-int BigLong (int l);
-int LittleLong (int l);
-qint64 BigLong64 (qint64 l);
-qint64 LittleLong64 (qint64 l);
-float BigFloat (const float *l);
-float LittleFloat (const float *l);
+
+int16_t BigShort(int16_t l);
+int16_t LittleShort(int16_t l);
+int32_t BigLong (int32_t l);
+int32_t LittleLong (int32_t l);
+qint64 BigLong64 (qint64 l);
+qint64 LittleLong64 (qint64 l);
+float BigFloat (float l);
+float LittleFloat (float l);
void Swap_Init (void);
-*/
+
char * QDECL va(char *format, ...);
//=============================================

View file

@ -1,12 +0,0 @@
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

View file

@ -0,0 +1,26 @@
--- code/qcommon/files.c.orig Thu May 25 16:39:34 2006
+++ code/qcommon/files.c Thu May 25 16:41:43 2006
@@ -2763,6 +2763,7 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory( fs_basepath->string, gameName );
}
+ FS_AddGameDirectory( LIBDIR, gameName );
// 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)) {
@@ -2777,6 +2778,7 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory(fs_basepath->string, fs_basegame->string);
}
+ FS_AddGameDirectory(LIBDIR, fs_basegame->string);
if (fs_homepath->string[0] && Q_stricmp(fs_homepath->string,fs_basepath->string)) {
FS_AddGameDirectory(fs_homepath->string, fs_basegame->string);
}
@@ -2790,6 +2792,7 @@
if (fs_basepath->string[0]) {
FS_AddGameDirectory(fs_basepath->string, fs_gamedirvar->string);
}
+ FS_AddGameDirectory(LIBDIR, fs_gamedirvar->string);
if (fs_homepath->string[0] && Q_stricmp(fs_homepath->string,fs_basepath->string)) {
FS_AddGameDirectory(fs_homepath->string, fs_gamedirvar->string);
}

View file

@ -0,0 +1,20 @@
--- code/qcommon/vm.c.orig Thu May 25 16:59:36 2006
+++ code/qcommon/vm.c Thu May 25 17:08:51 2006
@@ -478,7 +478,7 @@
}
}
- if ( interpret == VMI_NATIVE ) {
+ if ( 1 ) {
// try to load as a system dll
Com_Printf( "Loading dll file %s.\n", vm->name );
vm->dllHandle = Sys_LoadDll( module, vm->fqpath , &vm->entryPoint, VM_DllSyscall );
@@ -826,7 +826,7 @@
-#ifdef oDLL_ONLY // bk010215 - for DLL_ONLY dedicated servers/builds w/o VM
+#ifdef DLL_ONLY // bk010215 - for DLL_ONLY dedicated servers/builds w/o VM
int VM_CallCompiled( vm_t *vm, int *args ) {
return(0);
}

View file

@ -1,12 +0,0 @@
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

View file

@ -1,20 +0,0 @@
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
);

View file

@ -1,12 +0,0 @@
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 '

View file

@ -1,6 +1,43 @@
--- code/unix/Makefile.orig Sun May 5 07:21:10 2002
+++ code/unix/Makefile Sun Nov 20 18:48:48 2005
@@ -136,7 +136,7 @@
--- code/unix/Makefile.orig Thu May 25 16:59:37 2006
+++ code/unix/Makefile Thu May 25 17:04:46 2006
@@ -19,6 +19,7 @@
PLATFORM=$(shell uname|tr A-Z a-z)
PLATFORM_RELEASE=$(shell uname -r)
+ARCH=$(shell uname -m)
###
### These paths are where you probably want to change things
@@ -34,7 +35,7 @@
# Build name
# BUILD_NAME=$(BUILD_NAME)
-BUILD_NAME=quake3.x86
+BUILD_NAME=quake3
@@ -46,8 +47,8 @@
BASEQ3_DIR=$(BDIR)/baseq3
-BD=debug$(ARCH)$(GLIBC)
-BR=release$(ARCH)$(GLIBC)
+BD=debug
+BR=release
CDIR=$(MOUNT_DIR)/client
SDIR=$(MOUNT_DIR)/server
RDIR=$(MOUNT_DIR)/renderer
@@ -76,7 +77,7 @@
#############################################################################
## Defaults
-DLL_ONLY=false
+DLL_ONLY?=false
# bk010215 - TODO - add all defaults / kill Ryan
@@ -136,7 +137,7 @@
ifeq ($(ARCH),ppc)
NEWPGCC=/loki/global/ppc/bin/gcc
CC=$(NEWPGCC)
@ -9,7 +46,7 @@
else
#NEWPGCC=/usr/local/gcc-2.95.2/bin/gcc # bk001205
#NEWPGCC=/loki/global/x86/bin/gcc
@@ -146,9 +146,9 @@
@@ -146,9 +147,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
@ -21,7 +58,7 @@
endif
endif
@@ -162,7 +162,7 @@
@@ -162,7 +163,7 @@
RANLIB=ranlib
THREAD_LDFLAGS=-lpthread
@ -30,16 +67,109 @@
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 )
@@ -199,31 +200,27 @@
GLIBC= #libc is irrelevant
-ifneq (,$(findstring alpha,$(shell uname -m)))
-ARCH=axp
-RPMARCH=alpha
-VENDOR=dec
-else #default to i386
-ARCH=i386
-RPMARCH=i386
-VENDOR=unknown
-endif #alpha test
+BASE_CFLAGS = $(CFLAGS) -DDATADIR='\"$(Q3DIR)\"' -DLIBDIR='\"$(LIBDIR)\"' -pipe
+GL_CFLAGS = -I$(X11BASE)/include
-BASE_CFLAGS = -pipe
+DEBUG_CFLAGS=$(BASE_CFLAGS) -g -Wall -Werror
+RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG
-GL_CFLAGS = -I$(MESADIR)/include -I/usr/X11R6/include
+ifdef OPTIMIZED_CFLAGS
+ ifeq ($(ARCH),i386)
+RELEASE_CFLAGS+=-O6 -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce
+ else
+RELEASE_CFLAGS+=-O6 -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations
+ endif
+endif
-DEBUG_CFLAGS=$(BASE_CFLAGS) -g -Wall -Werror
-ifeq ($(ARCH),axp)
-CC=pgcc
-RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O6 -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations
-else
-#NEWPGCC=/loki/global/x86/bin/gcc # raistlin012301
-#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 -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing - fstrength-reduce
+ifneq ($(ARCH),i386)
+DLL_ONLY=true
+endif
+
+ifeq ($(DLL_ONLY),true)
+BASE_CFLAGS += -DDLL_ONLY
endif
LIBEXT=a
@@ -283,7 +283,7 @@
@@ -235,25 +232,37 @@
ARFLAGS=ar rv
RANLIB=ranlib
-THREAD_LDFLAGS=-lpthread
+THREAD_LDFLAGS=$(PTHREAD_LIBS)
# don't need -ldl (FreeBSD)
-LDFLAGS=-lm
+LDFLAGS+=-lm
#GLLDFLAGS=-L/usr/X11R6/lib -L$(MESADIR)/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
#GLLDFLAGS=-L/usr/X11/lib -lGL -lX11 -lXext -lm
-GLLDFLAGS=-L/usr/X11R6/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
+GLLDFLAGS=-L$(X11BASE)/lib -lGL -lX11 -lXext -lXxf86dga -lXxf86vm
-ifeq ($(ARCH),axp)
-TARGETS=\
- $(B)/$(PLATFORM)q3ded
-else
-TARGETS=\
- $(B)/$(PLATFORM)quake3 \
- $(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)
+ifdef CLIENT
+TARGETS+=$(B)/quake3
+endif
+
+ifdef DEDICATED
+TARGETS+=$(B)/q3ded
+endif
+
+ifdef SMP
+TARGETS+=$(B)/quake3-smp
+endif
+
+ifeq ($(DLL_ONLY),true)
+GAMELIBS=yes
+endif
+
+ifdef GAMELIBS
+TARGETS+=\
+ $(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
else # ifeq freebsd
@@ -283,7 +292,7 @@
ARFLAGS=ar rv
RANLIB=ranlib
@ -48,16 +178,88 @@
GLLDFLAGS=-L/usr/X11/lib -lGL -lX11 -lXext -lm
TARGETS=$(B)/sgiquake3 \
@@ -312,7 +312,7 @@
@@ -310,9 +319,9 @@
RANLIB=ranlib
ifeq ($(PLATFORM),freebsd)
LDFLAGS=-lm
-LDFLAGS=-lm
+LDFLAGS+=-lm
else
-LDFLAGS=-ldl -lm
+LDFLAGS=-lm
endif # ifeq freebsd
TARGETS=\
@@ -578,7 +578,6 @@
@@ -348,7 +357,7 @@
$(MAKE) targets B=$(BR) CFLAGS="$(RELEASE_CFLAGS)"
#Build both debug and release builds
-all:build_debug build_release
+all:build_release
targets:makedirs $(TARGETS)
@@ -516,20 +525,6 @@
$(B)/client/unix_net.o \
$(B)/client/unix_shared.o \
\
- $(B)/client/ahoptim.o \
- $(B)/client/autohint.o \
- $(B)/client/ftbase.o \
- $(B)/client/ftdebug.o \
- $(B)/client/ftglyph.o \
- $(B)/client/ftinit.o \
- $(B)/client/ftmm.o \
- $(B)/client/ftsystem.o \
- $(B)/client/raster1.o \
- $(B)/client/sfnt.o \
- $(B)/client/sfobjs.o \
- $(B)/client/smooth.o \
- $(B)/client/truetype.o
-# \
# $(B)/client/q_parse.o \
# $(B)/client/math_quaternion.o \
# $(B)/client/util_str.o \
@@ -541,7 +536,9 @@
# $(B)/client/q_shared.o \
ifeq ($(ARCH),i386)
- Q3OBJ += $(B)/client/vm_x86.o
+ ifeq ($(DLL_ONLY),false)
+ Q3OBJ += $(B)/client/vm_x86.o
+ endif
endif
ifeq ($(ARCH),ppc)
@@ -559,10 +556,24 @@
$(B)/client/linux_qgl.o \
$(B)/client/linux_glimp.o \
$(B)/client/linux_snd.o \
+ $(B)/client/linux_signals.o \
+ $(B)/client/snd_mixa.o \
+ $(B)/client/matha.o
+
+ Q3POBJ_SMP=\
+ $(B)/client/linux_common.o \
+ $(B)/client/linux_qgl.o \
+ $(B)/client/linux_glimp_smp.o \
+ $(B)/client/linux_snd.o \
+ $(B)/client/linux_signals.o \
$(B)/client/snd_mixa.o \
- $(B)/client/matha.o \
- $(B)/client/ftol.o \
- $(B)/client/snapvector.o
+ $(B)/client/matha.o
+
+ ifeq ($(ARCH),i386)
+ Q3POBJ += $(B)/client/ftol.o $(B)/client/snapvector.o
+ Q3POBJ_SMP += $(B)/client/ftol.o $(B)/client/snapvector.o
+ endif
+
else
ifeq ($(PLATFORM),irix)
Q3POBJ=\
@@ -578,7 +589,6 @@
$(B)/client/linux_common.o \
$(B)/client/linux_qgl.o \
$(B)/client/linux_glimp.o \
@ -65,7 +267,7 @@
$(B)/client/linux_snd.o \
$(B)/client/snd_mixa.o \
$(B)/client/matha.o \
@@ -587,7 +586,6 @@
@@ -587,7 +597,6 @@
$(B)/client/linux_common.o \
$(B)/client/linux_qgl.o \
$(B)/client/linux_glimp_smp.o \
@ -73,7 +275,22 @@
$(B)/client/linux_snd.o \
$(B)/client/snd_mixa.o \
$(B)/client/matha.o
@@ -754,7 +752,6 @@
@@ -602,12 +611,12 @@
endif #FreeBSD
endif #IRIX
-$(B)/$(PLATFORM)quake3 : $(Q3OBJ) $(Q3POBJ)
+$(B)/quake3 : $(Q3OBJ) $(Q3POBJ)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ) $(GLLDFLAGS) $(LDFLAGS)
# TTimo: splines code requires C++ linking, but splines have not been officially included in the codebase
# $(CXX) -o $@ $(Q3OBJ) $(Q3POBJ) $(GLLDFLAGS) $(LDFLAGS)
-$(B)/$(PLATFORM)quake3-smp : $(Q3OBJ) $(Q3POBJ_SMP)
+$(B)/quake3-smp : $(Q3OBJ) $(Q3POBJ_SMP)
$(CC) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) $(GLLDFLAGS) \
$(THREAD_LDFLAGS) $(LDFLAGS)
@@ -754,10 +763,10 @@
$(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)
@ -81,15 +298,134 @@
$(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)/client/linux_signals.o : $(UDIR)/linux_signals.c; $(DO_CC) $(GL_CFLAGS)
$(B)/client/snd_mixa.o : $(UDIR)/snd_mixa.s; $(DO_AS)
$(B)/client/matha.o : $(UDIR)/matha.s; $(DO_AS)
@@ -912,13 +921,17 @@
$(B)/ded/unix_main.o \
$(B)/ded/unix_net.o \
$(B)/ded/unix_shared.o \
+ $(B)/ded/linux_signals.o \
\
$(B)/ded/null_client.o \
$(B)/ded/null_input.o \
$(B)/ded/null_snddma.o
ifeq ($(ARCH),i386)
- Q3DOBJ += $(B)/ded/vm_x86.o $(B)/ded/ftol.o $(B)/ded/snapvector.o
+ Q3DOBJ += $(B)/ded/ftol.o $(B)/ded/snapvector.o
+ ifeq ($(DLL_ONLY),false)
+ Q3DOBJ += $(B)/ded/vm_x86.o
+ endif
endif
ifeq ($(ARCH),ppc)
@@ -927,7 +940,7 @@
endif
endif
-$(B)/$(PLATFORM)q3ded : $(Q3DOBJ)
+$(B)/q3ded : $(Q3DOBJ)
$(CC) -o $@ $(Q3DOBJ) $(LDFLAGS)
$(B)/ded/sv_bot.o : $(SDIR)/sv_bot.c; $(DO_DED_CC)
@@ -988,6 +1001,7 @@
$(B)/ded/unix_main.o : $(UDIR)/unix_main.c; $(DO_DED_CC)
$(B)/ded/unix_net.o : $(UDIR)/unix_net.c; $(DO_DED_CC)
$(B)/ded/unix_shared.o : $(UDIR)/unix_shared.c; $(DO_DED_CC)
+$(B)/ded/linux_signals.o : $(UDIR)/linux_signals.c; $(DO_DED_CC)
$(B)/ded/null_client.o : $(NDIR)/null_client.c; $(DO_DED_CC)
$(B)/ded/null_input.o : $(NDIR)/null_input.c; $(DO_DED_CC)
$(B)/ded/null_snddma.o : $(NDIR)/null_snddma.c; $(DO_DED_CC)
@@ -1068,7 +1082,7 @@
$(B)/baseq3/cgame/q_math.o \
$(B)/baseq3/cgame/q_shared.o
-$(B)/baseq3/cgame$(ARCH).$(SHLIBEXT) : $(Q3CGOBJ)
+$(B)/baseq3/cgame.$(SHLIBEXT) : $(Q3CGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3CGOBJ)
$(B)/baseq3/cgame/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC)
@@ -1128,7 +1142,7 @@
$(B)/missionpack/cgame/q_shared.o \
$(B)/missionpack/cgame/ui_shared.o
-$(B)/missionpack/cgame$(ARCH).$(SHLIBEXT) : $(MPCGOBJ)
+$(B)/missionpack/cgame.$(SHLIBEXT) : $(MPCGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPCGOBJ)
$(B)/missionpack/cgame/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC) -DMISSIONPACK
@@ -1200,7 +1214,7 @@
$(B)/baseq3/game/q_math.o \
$(B)/baseq3/game/q_shared.o
-$(B)/baseq3/qagame$(ARCH).$(SHLIBEXT) : $(Q3GOBJ)
+$(B)/baseq3/qagame.$(SHLIBEXT) : $(Q3GOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3GOBJ)
$(B)/baseq3/game/ai_chat.o : $(GDIR)/ai_chat.c; $(DO_SHLIB_CC)
@@ -1278,7 +1292,7 @@
$(B)/missionpack/game/q_math.o \
$(B)/missionpack/game/q_shared.o
-$(B)/missionpack/qagame$(ARCH).$(SHLIBEXT) : $(MPGOBJ)
+$(B)/missionpack/qagame.$(SHLIBEXT) : $(MPGOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(MPGOBJ)
$(B)/missionpack/game/ai_chat.o : $(GDIR)/ai_chat.c; $(DO_SHLIB_CC) -DMISSIONPACK
@@ -1367,7 +1381,7 @@
$(B)/baseq3/ui/q_math.o \
$(B)/baseq3/ui/q_shared.o
-$(B)/baseq3/ui$(ARCH).$(SHLIBEXT) : $(Q3UIOBJ)
+$(B)/baseq3/ui.$(SHLIBEXT) : $(Q3UIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(Q3UIOBJ)
$(B)/baseq3/ui/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC)
@@ -1410,7 +1424,7 @@
$(B)/baseq3/ui/ui_startserver.o : $(Q3UIDIR)/ui_startserver.c; $(DO_SHLIB_CC)
$(B)/baseq3/ui/ui_team.o : $(Q3UIDIR)/ui_team.c; $(DO_SHLIB_CC)
$(B)/baseq3/ui/ui_teamorders.o : $(Q3UIDIR)/ui_teamorders.c; $(DO_SHLIB_CC)
-$(B)/baseq3/ui/ui_syscalls.o : $(Q3UIDIR)/ui_syscalls.c; $(DO_SHLIB_CC)
+$(B)/baseq3/ui/ui_syscalls.o : $(UIDIR)/ui_syscalls.c; $(DO_SHLIB_CC)
$(B)/baseq3/ui/ui_video.o : $(Q3UIDIR)/ui_video.c; $(DO_SHLIB_CC)
# bk001205 - these wre the only SHLIB compiles in 1.17
@@ -1450,7 +1464,7 @@
# $(B)/missionpack/ui/q_math.o \
# $(B)/missionpack/ui/q_shared.o
-$(B)/missionpack/ui$(ARCH).$(SHLIBEXT) : $(MPUIOBJ)
+$(B)/missionpack/ui.$(SHLIBEXT) : $(MPUIOBJ)
$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(MPUIOBJ)
$(B)/missionpack/ui/ui_atoms.o : $(UIDIR)/ui_atoms.c; $(DO_SHLIB_CC) -DMISSIONPACK
@@ -1613,23 +1627,8 @@
$(B)/q3static/unix_net.o \
$(B)/q3static/unix_shared.o \
\
- $(B)/q3static/ahoptim.o \
- $(B)/q3static/autohint.o \
- $(B)/q3static/ftbase.o \
- $(B)/q3static/ftdebug.o \
- $(B)/q3static/ftglyph.o \
- $(B)/q3static/ftinit.o \
- $(B)/q3static/ftmm.o \
- $(B)/q3static/ftsystem.o \
- $(B)/q3static/raster1.o \
- $(B)/q3static/sfnt.o \
- $(B)/q3static/sfobjs.o \
- $(B)/q3static/smooth.o \
- $(B)/q3static/truetype.o \
- \
$(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 @@
@@ -1779,7 +1778,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
@ -97,3 +433,25 @@
$(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
@@ -2020,7 +2018,7 @@
-$(B)/$(PLATFORM)q3static : $(Q3SOBJ)
+$(B)/q3static : $(Q3SOBJ)
$(CC) $(CFLAGS) -o $@ $(Q3SOBJ) $(GLLDFLAGS) $(LDFLAGS)
@@ -2059,9 +2057,9 @@
copyfiles:
-mkdirhier $(COPYDIR)
- cp $(BR)/linuxquake3 $(COPYDIR)/quake3.x86
- strip $(COPYDIR)/quake3.x86
- chmod 755 $(COPYDIR)/quake3.x86
+ cp $(BR)/linuxquake3 $(COPYDIR)/quake3
+ strip $(COPYDIR)/quake3
+ chmod 755 $(COPYDIR)/quake3
cp $(BR)/linuxq3ded $(COPYDIR)/q3ded
strip $(COPYDIR)/q3ded
chmod 755 $(COPYDIR)/q3ded

View file

@ -1,27 +0,0 @@
--- code/unix/cons.orig Fri Jun 14 13:01:32 2002
+++ code/unix/cons Wed Nov 23 10:32:49 2005
@@ -271,11 +271,11 @@
# Defaults for a typical (?) UNIX platform.
# Your mileage may vary.
'unix' => [
- 'CC' => 'cc',
- 'CFLAGS' => '',
+ 'CC' => $ENV{CC},
+ 'CFLAGS' => $ENV{CFLAGS},
'CCCOM' => '%CC %CFLAGS %_IFLAGS -c %< -o %>',
- 'CXX' => '%CC',
- 'CXXFLAGS' => '%CFLAGS',
+ 'CXX' => $ENV{CXX},
+ 'CXXFLAGS' => $ENV{CXXFLAGS},
'CXXCOM' => '%CXX %CXXFLAGS %_IFLAGS -c %< -o %>',
'INCDIRPREFIX' => '-I',
'INCDIRSUFFIX' => '',
@@ -294,7 +294,7 @@
'LD' => 'ld',
'LDFLAGS' => '',
'PREFLIB' => 'lib',
- 'ENV' => { 'PATH' => '/bin:/usr/bin' },
+ 'ENV' => { 'PATH' => '/bin:/usr/bin:/usr/local/bin' },
],
);

View file

@ -0,0 +1,58 @@
--- code/unix/unix_main.c.orig Thu May 25 16:59:37 2006
+++ code/unix/unix_main.c Thu May 25 17:00:58 2006
@@ -707,12 +707,12 @@
{
void *libHandle;
void (*dllEntry)( int (*syscallptr)(int, ...) );
- char curpath[MAX_OSPATH];
char fname[MAX_OSPATH];
char *basepath;
char *homepath;
char *pwdpath;
char *gamedir;
+ char *libdir = LIBDIR;
char *fn;
const char* err = NULL;
@@ -721,18 +721,7 @@
// bk001206 - let's have some paranoia
assert( name );
- getcwd(curpath, sizeof(curpath));
-#if defined __i386__
- snprintf (fname, sizeof(fname), "%si386.so", name);
-#elif defined __powerpc__ //rcg010207 - PPC support.
- snprintf (fname, sizeof(fname), "%sppc.so", name);
-#elif defined __axp__
- snprintf (fname, sizeof(fname), "%saxp.so", name);
-#elif defined __mips__
- snprintf (fname, sizeof(fname), "%smips.so", name);
-#else
-#error Unknown arch
-#endif
+ snprintf (fname, sizeof(fname), "%s.so", name);
// bk001129 - was RTLD_LAZY
#define Q_RTLD RTLD_NOW
@@ -742,10 +731,19 @@
homepath = Cvar_VariableString( "fs_homepath" );
gamedir = Cvar_VariableString( "fs_game" );
- // pwdpath
- fn = FS_BuildOSPath( pwdpath, gamedir, fname );
+ // libdir
+ fn = FS_BuildOSPath( libdir, gamedir, fname );
Com_Printf( "Sys_LoadDll(%s)... \n", fn );
libHandle = dlopen( fn, Q_RTLD );
+
+ // pwdpath
+ if ( !libHandle )
+ {
+ Com_Printf( "Sys_LoadDll(%s) failed:\n\"%s\"\n", fn, dlerror() );
+ fn = FS_BuildOSPath( pwdpath, gamedir, fname );
+ Com_Printf( "Sys_LoadDll(%s)... \n", fn );
+ libHandle = dlopen( fn, Q_RTLD );
+ }
if ( !libHandle )
{

View file

@ -1,11 +1,11 @@
--- code/unix/unix_shared.c.orig Mon Aug 15 20:10:07 2005
+++ code/unix/unix_shared.c Sun Nov 20 18:41:22 2005
--- code/unix/unix_shared.c.orig Thu May 25 14:38:44 2006
+++ code/unix/unix_shared.c Thu May 25 14:41:26 2006
@@ -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] = %%Q3DIR%%;
+static char installPath[MAX_OSPATH] = DATADIR;
// Used to determine where to store user-specific files
static char homePath[MAX_OSPATH];
@ -34,7 +34,7 @@
// test the wrap issue
#if 0
@@ -136,7 +140,7 @@
@@ -136,10 +140,10 @@
return ret;
}
@ -42,4 +42,8 @@
+// #endif
//#if 0 // bk001215 - see snapvector.nasm for replacement
#if (defined __APPLE__) // rcg010206 - using this for PPC builds...
-#if (defined __APPLE__) // rcg010206 - using this for PPC builds...
+#ifndef __i386__ // rcg010206 - using this for PPC builds...
long fastftol( float f ) { // bk001213 - from win32/win_shared.c
//static int tmp;
// __asm fld f

View file

@ -1,6 +0,0 @@
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

View file

@ -1,12 +0,0 @@
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)

12
games/quake3/pkg-plist Normal file
View file

@ -0,0 +1,12 @@
%%DEDICATED%%bin/q3ded
%%CLIENT%%bin/quake3
%%SMP%%bin/quake3-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%%