rebuilt with debug package and x86_64 target [release 0.8.8-2mamba;Mon May 10 2021]

This commit is contained in:
Silvan Calarco 2024-01-06 08:09:23 +01:00
parent f2c9432897
commit 5af1ebb4c4
7 changed files with 667 additions and 0 deletions

View File

@ -1,2 +1,5 @@
# openarena # openarena
An open-source content package for Quake III Arena licensed under the GPL, effectively creating a free stand-alone game.
Warning: this game was rated appropriate for an adult audience.

308
menudef.h Normal file
View File

@ -0,0 +1,308 @@
/*
===========================================================================
Copyright (C) 1999-2005 Id Software, Inc.
This file is part of Quake III Arena source code.
Quake III Arena source code is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the License,
or (at your option) any later version.
Quake III Arena source code is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Foobar; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
===========================================================================
*/
#define ITEM_TYPE_TEXT 0 // simple text
#define ITEM_TYPE_BUTTON 1 // button, basically text with a border
#define ITEM_TYPE_RADIOBUTTON 2 // toggle button, may be grouped
#define ITEM_TYPE_CHECKBOX 3 // check box
#define ITEM_TYPE_EDITFIELD 4 // editable text, associated with a cvar
#define ITEM_TYPE_COMBO 5 // drop down list
#define ITEM_TYPE_LISTBOX 6 // scrollable list
#define ITEM_TYPE_MODEL 7 // model
#define ITEM_TYPE_OWNERDRAW 8 // owner draw, name specs what it is
#define ITEM_TYPE_NUMERICFIELD 9 // editable text, associated with a cvar
#define ITEM_TYPE_SLIDER 10 // mouse speed, volume, etc.
#define ITEM_TYPE_YESNO 11 // yes no cvar setting
#define ITEM_TYPE_MULTI 12 // multiple list setting, enumerated
#define ITEM_TYPE_BIND 13 // multiple list setting, enumerated
#define ITEM_ALIGN_LEFT 0 // left alignment
#define ITEM_ALIGN_CENTER 1 // center alignment
#define ITEM_ALIGN_RIGHT 2 // right alignment
#define ITEM_TEXTSTYLE_NORMAL 0 // normal text
#define ITEM_TEXTSTYLE_BLINK 1 // fast blinking
#define ITEM_TEXTSTYLE_PULSE 2 // slow pulsing
#define ITEM_TEXTSTYLE_SHADOWED 3 // drop shadow ( need a color for this )
#define ITEM_TEXTSTYLE_OUTLINED 4 // drop shadow ( need a color for this )
#define ITEM_TEXTSTYLE_OUTLINESHADOWED 5 // drop shadow ( need a color for this )
#define ITEM_TEXTSTYLE_SHADOWEDMORE 6 // drop shadow ( need a color for this )
#define WINDOW_BORDER_NONE 0 // no border
#define WINDOW_BORDER_FULL 1 // full border based on border color ( single pixel )
#define WINDOW_BORDER_HORZ 2 // horizontal borders only
#define WINDOW_BORDER_VERT 3 // vertical borders only
#define WINDOW_BORDER_KCGRADIENT 4 // horizontal border using the gradient bars
#define WINDOW_STYLE_EMPTY 0 // no background
#define WINDOW_STYLE_FILLED 1 // filled with background color
#define WINDOW_STYLE_GRADIENT 2 // gradient bar based on background color
#define WINDOW_STYLE_SHADER 3 // gradient bar based on background color
#define WINDOW_STYLE_TEAMCOLOR 4 // team color
#define WINDOW_STYLE_CINEMATIC 5 // cinematic
#define MENU_TRUE 1 // uh.. true
#define MENU_FALSE 0 // and false
#define HUD_VERTICAL 0x00
#define HUD_HORIZONTAL 0x01
// list box element types
#define LISTBOX_TEXT 0x00
#define LISTBOX_IMAGE 0x01
// list feeders
#define FEEDER_HEADS 0x00 // model heads
#define FEEDER_MAPS 0x01 // text maps based on game type
#define FEEDER_SERVERS 0x02 // servers
#define FEEDER_CLANS 0x03 // clan names
#define FEEDER_ALLMAPS 0x04 // all maps available, in graphic format
#define FEEDER_REDTEAM_LIST 0x05 // red team members
#define FEEDER_BLUETEAM_LIST 0x06 // blue team members
#define FEEDER_PLAYER_LIST 0x07 // players
#define FEEDER_TEAM_LIST 0x08 // team members for team voting
#define FEEDER_MODS 0x09 // team members for team voting
#define FEEDER_DEMOS 0x0a // team members for team voting
#define FEEDER_SCOREBOARD 0x0b // team members for team voting
#define FEEDER_Q3HEADS 0x0c // model heads
#define FEEDER_SERVERSTATUS 0x0d // server status
#define FEEDER_FINDPLAYER 0x0e // find player
#define FEEDER_CINEMATICS 0x0f // cinematics
// display flags
#define CG_SHOW_BLUE_TEAM_HAS_REDFLAG 0x00000001
#define CG_SHOW_RED_TEAM_HAS_BLUEFLAG 0x00000002
#define CG_SHOW_ANYTEAMGAME 0x00000004
#define CG_SHOW_HARVESTER 0x00000008
#define CG_SHOW_ONEFLAG 0x00000010
#define CG_SHOW_CTF 0x00000020
#define CG_SHOW_OBELISK 0x00000040
#define CG_SHOW_HEALTHCRITICAL 0x00000080
#define CG_SHOW_SINGLEPLAYER 0x00000100
#define CG_SHOW_TOURNAMENT 0x00000200
#define CG_SHOW_DURINGINCOMINGVOICE 0x00000400
#define CG_SHOW_IF_PLAYER_HAS_FLAG 0x00000800
#define CG_SHOW_LANPLAYONLY 0x00001000
#define CG_SHOW_MINED 0x00002000
#define CG_SHOW_HEALTHOK 0x00004000
#define CG_SHOW_TEAMINFO 0x00008000
#define CG_SHOW_NOTEAMINFO 0x00010000
#define CG_SHOW_OTHERTEAMHASFLAG 0x00020000
#define CG_SHOW_YOURTEAMHASENEMYFLAG 0x00040000
#define CG_SHOW_ANYNONTEAMGAME 0x00080000
#define CG_SHOW_2DONLY 0x10000000
#define UI_SHOW_LEADER 0x00000001
#define UI_SHOW_NOTLEADER 0x00000002
#define UI_SHOW_FAVORITESERVERS 0x00000004
#define UI_SHOW_ANYNONTEAMGAME 0x00000008
#define UI_SHOW_ANYTEAMGAME 0x00000010
#define UI_SHOW_NEWHIGHSCORE 0x00000020
#define UI_SHOW_DEMOAVAILABLE 0x00000040
#define UI_SHOW_NEWBESTTIME 0x00000080
#define UI_SHOW_FFA 0x00000100
#define UI_SHOW_NOTFFA 0x00000200
#define UI_SHOW_NETANYNONTEAMGAME 0x00000400
#define UI_SHOW_NETANYTEAMGAME 0x00000800
#define UI_SHOW_NOTFAVORITESERVERS 0x00001000
// owner draw types
// ideally these should be done outside of this file but
// this makes it much easier for the macro expansion to
// convert them for the designers ( from the .menu files )
#define CG_OWNERDRAW_BASE 1
#define CG_PLAYER_ARMOR_ICON 1
#define CG_PLAYER_ARMOR_VALUE 2
#define CG_PLAYER_HEAD 3
#define CG_PLAYER_HEALTH 4
#define CG_PLAYER_AMMO_ICON 5
#define CG_PLAYER_AMMO_VALUE 6
#define CG_SELECTEDPLAYER_HEAD 7
#define CG_SELECTEDPLAYER_NAME 8
#define CG_SELECTEDPLAYER_LOCATION 9
#define CG_SELECTEDPLAYER_STATUS 10
#define CG_SELECTEDPLAYER_WEAPON 11
#define CG_SELECTEDPLAYER_POWERUP 12
#define CG_FLAGCARRIER_HEAD 13
#define CG_FLAGCARRIER_NAME 14
#define CG_FLAGCARRIER_LOCATION 15
#define CG_FLAGCARRIER_STATUS 16
#define CG_FLAGCARRIER_WEAPON 17
#define CG_FLAGCARRIER_POWERUP 18
#define CG_PLAYER_ITEM 19
#define CG_PLAYER_SCORE 20
#define CG_BLUE_FLAGHEAD 21
#define CG_BLUE_FLAGSTATUS 22
#define CG_BLUE_FLAGNAME 23
#define CG_RED_FLAGHEAD 24
#define CG_RED_FLAGSTATUS 25
#define CG_RED_FLAGNAME 26
#define CG_BLUE_SCORE 27
#define CG_RED_SCORE 28
#define CG_RED_NAME 29
#define CG_BLUE_NAME 30
#define CG_HARVESTER_SKULLS 31 // only shows in harvester
#define CG_ONEFLAG_STATUS 32 // only shows in one flag
#define CG_PLAYER_LOCATION 33
#define CG_TEAM_COLOR 34
#define CG_CTF_POWERUP 35
#define CG_AREA_POWERUP 36
#define CG_AREA_LAGOMETER 37 // painted with old system
#define CG_PLAYER_HASFLAG 38
#define CG_GAME_TYPE 39 // not done
#define CG_SELECTEDPLAYER_ARMOR 40
#define CG_SELECTEDPLAYER_HEALTH 41
#define CG_PLAYER_STATUS 42
#define CG_FRAGGED_MSG 43 // painted with old system
#define CG_PROXMINED_MSG 44 // painted with old system
#define CG_AREA_FPSINFO 45 // painted with old system
#define CG_AREA_SYSTEMCHAT 46 // painted with old system
#define CG_AREA_TEAMCHAT 47 // painted with old system
#define CG_AREA_CHAT 48 // painted with old system
#define CG_GAME_STATUS 49
#define CG_KILLER 50
#define CG_PLAYER_ARMOR_ICON2D 51
#define CG_PLAYER_AMMO_ICON2D 52
#define CG_ACCURACY 53
#define CG_ASSISTS 54
#define CG_DEFEND 55
#define CG_EXCELLENT 56
#define CG_IMPRESSIVE 57
#define CG_PERFECT 58
#define CG_GAUNTLET 59
#define CG_SPECTATORS 60
#define CG_TEAMINFO 61
#define CG_VOICE_HEAD 62
#define CG_VOICE_NAME 63
#define CG_PLAYER_HASFLAG2D 64
#define CG_HARVESTER_SKULLS2D 65 // only shows in harvester
#define CG_CAPFRAGLIMIT 66
#define CG_1STPLACE 67
#define CG_2NDPLACE 68
#define CG_CAPTURES 69
#define UI_OWNERDRAW_BASE 200
#define UI_HANDICAP 200
#define UI_EFFECTS 201
#define UI_PLAYERMODEL 202
#define UI_CLANNAME 203
#define UI_CLANLOGO 204
#define UI_GAMETYPE 205
#define UI_MAPPREVIEW 206
#define UI_SKILL 207
#define UI_BLUETEAMNAME 208
#define UI_REDTEAMNAME 209
#define UI_BLUETEAM1 210
#define UI_BLUETEAM2 211
#define UI_BLUETEAM3 212
#define UI_BLUETEAM4 213
#define UI_BLUETEAM5 214
#define UI_REDTEAM1 215
#define UI_REDTEAM2 216
#define UI_REDTEAM3 217
#define UI_REDTEAM4 218
#define UI_REDTEAM5 219
#define UI_NETSOURCE 220
#define UI_NETMAPPREVIEW 221
#define UI_NETFILTER 222
#define UI_TIER 223
#define UI_OPPONENTMODEL 224
#define UI_TIERMAP1 225
#define UI_TIERMAP2 226
#define UI_TIERMAP3 227
#define UI_PLAYERLOGO 228
#define UI_OPPONENTLOGO 229
#define UI_PLAYERLOGO_METAL 230
#define UI_OPPONENTLOGO_METAL 231
#define UI_PLAYERLOGO_NAME 232
#define UI_OPPONENTLOGO_NAME 233
#define UI_TIER_MAPNAME 234
#define UI_TIER_GAMETYPE 235
#define UI_ALLMAPS_SELECTION 236
#define UI_OPPONENT_NAME 237
#define UI_VOTE_KICK 238
#define UI_BOTNAME 239
#define UI_BOTSKILL 240
#define UI_REDBLUE 241
#define UI_CROSSHAIR 242
#define UI_SELECTEDPLAYER 243
#define UI_MAPCINEMATIC 244
#define UI_NETGAMETYPE 245
#define UI_NETMAPCINEMATIC 246
#define UI_SERVERREFRESHDATE 247
#define UI_SERVERMOTD 248
#define UI_GLINFO 249
#define UI_KEYBINDSTATUS 250
#define UI_CLANCINEMATIC 251
#define UI_MAP_TIMETOBEAT 252
#define UI_JOINGAMETYPE 253
#define UI_PREVIEWCINEMATIC 254
#define UI_STARTMAPCINEMATIC 255
#define UI_MAPS_SELECTION 256
#define VOICECHAT_GETFLAG "getflag" // command someone to get the flag
#define VOICECHAT_OFFENSE "offense" // command someone to go on offense
#define VOICECHAT_DEFEND "defend" // command someone to go on defense
#define VOICECHAT_DEFENDFLAG "defendflag" // command someone to defend the flag
#define VOICECHAT_PATROL "patrol" // command someone to go on patrol (roam)
#define VOICECHAT_CAMP "camp" // command someone to camp (we don't have sounds for this one)
#define VOICECHAT_FOLLOWME "followme" // command someone to follow you
#define VOICECHAT_RETURNFLAG "returnflag" // command someone to return our flag
#define VOICECHAT_FOLLOWFLAGCARRIER "followflagcarrier" // command someone to follow the flag carrier
#define VOICECHAT_YES "yes" // yes, affirmative, etc.
#define VOICECHAT_NO "no" // no, negative, etc.
#define VOICECHAT_ONGETFLAG "ongetflag" // I'm getting the flag
#define VOICECHAT_ONOFFENSE "onoffense" // I'm on offense
#define VOICECHAT_ONDEFENSE "ondefense" // I'm on defense
#define VOICECHAT_ONPATROL "onpatrol" // I'm on patrol (roaming)
#define VOICECHAT_ONCAMPING "oncamp" // I'm camping somewhere
#define VOICECHAT_ONFOLLOW "onfollow" // I'm following
#define VOICECHAT_ONFOLLOWCARRIER "onfollowcarrier" // I'm following the flag carrier
#define VOICECHAT_ONRETURNFLAG "onreturnflag" // I'm returning our flag
#define VOICECHAT_INPOSITION "inposition" // I'm in position
#define VOICECHAT_IHAVEFLAG "ihaveflag" // I have the flag
#define VOICECHAT_BASEATTACK "baseattack" // the base is under attack
#define VOICECHAT_ENEMYHASFLAG "enemyhasflag" // the enemy has our flag (CTF)
#define VOICECHAT_STARTLEADER "startleader" // I'm the leader
#define VOICECHAT_STOPLEADER "stopleader" // I resign leadership
#define VOICECHAT_TRASH "trash" // lots of trash talk
#define VOICECHAT_WHOISLEADER "whoisleader" // who is the team leader
#define VOICECHAT_WANTONDEFENSE "wantondefense" // I want to be on defense
#define VOICECHAT_WANTONOFFENSE "wantonoffense" // I want to be on offense
#define VOICECHAT_KILLINSULT "kill_insult" // I just killed you
#define VOICECHAT_TAUNT "taunt" // I want to taunt you
#define VOICECHAT_DEATHINSULT "death_insult" // you just killed me
#define VOICECHAT_KILLGAUNTLET "kill_gauntlet" // I just killed you with the gauntlet
#define VOICECHAT_PRAISE "praise" // you did something good

196
oachanges.diff Normal file
View File

@ -0,0 +1,196 @@
Index: q3_ui/ui_mods.c
===================================================================
--- q3_ui/ui_mods.c (revision 1107)
+++ q3_ui/ui_mods.c (working copy)
@@ -161,7 +161,7 @@
// always start off with baseq3
s_mods.list.numitems = 1;
- s_mods.list.itemnames[0] = s_mods.descriptionList[0] = "Quake III Arena";
+ s_mods.list.itemnames[0] = s_mods.descriptionList[0] = "OpenArena";
s_mods.fs_gameList[0] = "";
numdirs = trap_FS_GetFileList( "$modlist", "", dirlist, sizeof(dirlist) );
Index: server/sv_ccmds.c
===================================================================
--- server/sv_ccmds.c (revision 1107)
+++ server/sv_ccmds.c (working copy)
@@ -430,6 +430,12 @@
return;
}
+ if(strlen(AUTHORIZE_SERVER_NAME) < 1)
+ {
+ Com_Printf("Ban function disabled due to lack of authorizing server.\n");
+ return;
+ }
+
// look up the authorize server's IP
if ( !svs.authorizeAddress.ip[0] && svs.authorizeAddress.type != NA_BAD ) {
Com_Printf( "Resolving %s\n", AUTHORIZE_SERVER_NAME );
@@ -484,6 +490,12 @@
return;
}
+ if(strlen(AUTHORIZE_SERVER_NAME) < 1)
+ {
+ Com_Printf("Ban function disabled due to lack of authorizing server.\n");
+ return;
+ }
+
// look up the authorize server's IP
if ( !svs.authorizeAddress.ip[0] && svs.authorizeAddress.type != NA_BAD ) {
Com_Printf( "Resolving %s\n", AUTHORIZE_SERVER_NAME );
Index: server/sv_client.c
===================================================================
--- server/sv_client.c (revision 1107)
+++ server/sv_client.c (working copy)
@@ -88,6 +88,15 @@
return;
}
+ // if there's no authorize server defined, just let them in
+ if(strlen(AUTHORIZE_SERVER_NAME) < 1)
+ {
+ Com_Printf("Not authorizing client due to lack of auth server\n");
+ challenge->pingTime = svs.time;
+ NET_OutOfBandPrint( NS_SERVER, from, "challengeResponse %i", challenge->challenge );
+ return;
+ }
+
// look up the authorize server's IP
if ( !svs.authorizeAddress.ip[0] && svs.authorizeAddress.type != NA_BAD ) {
Com_Printf( "Resolving %s\n", AUTHORIZE_SERVER_NAME );
Index: qcommon/q_shared.h
===================================================================
--- qcommon/q_shared.h (revision 1107)
+++ qcommon/q_shared.h (working copy)
@@ -26,17 +26,17 @@
// q_shared.h -- included first by ALL program modules.
// A user mod should never modify this file
-#define Q3_VERSION "ioQ3 1.33"
+#define Q3_VERSION "ioQ3 1.33+oa"
#ifndef SVN_VERSION
#define SVN_VERSION Q3_VERSION
#endif
-#define CLIENT_WINDOW_TITLE "ioquake3"
-#define CLIENT_WINDOW_ICON "ioq3"
-#define CONSOLE_WINDOW_TITLE "ioquake3 console"
-#define CONSOLE_WINDOW_ICON "ioq3 console"
+#define CLIENT_WINDOW_TITLE "OpenArena"
+#define CLIENT_WINDOW_ICON "OpenArena"
+#define CONSOLE_WINDOW_TITLE "OpenArena console"
+#define CONSOLE_WINDOW_ICON "OpenArena console"
// 1.32 released 7-10-2002
-#define BASEGAME "baseq3"
+#define BASEGAME "baseoa"
#define MAX_TEAMNAME 32
Index: client/cl_main.c
===================================================================
--- client/cl_main.c (revision 1107)
+++ client/cl_main.c (working copy)
@@ -3582,7 +3582,7 @@
*/
qboolean CL_CDKeyValidate( const char *key, const char *checksum ) {
- char ch;
+/* char ch;
byte sum;
char chs[3];
int i, len;
@@ -3636,8 +3636,8 @@
if (!checksum) {
return qtrue;
}
-
- return qfalse;
+*/
+ return qtrue;
}
Index: qcommon/files.c
===================================================================
--- qcommon/files.c (revision 1107)
+++ qcommon/files.c (working copy)
@@ -2900,6 +2900,7 @@
*/
static void FS_CheckPak0( void )
{
+/*
searchpath_t *path;
qboolean founddemo = qfalse;
unsigned foundPak = 0;
@@ -2972,6 +2973,7 @@
|| !Q_stricmp( fs_gamedirvar->string, "missionpack" ))
Com_Error(ERR_FATAL, "\n*** you need to install Quake III Arena in order to play ***");
}
+*/
}
/*
@@ -3383,7 +3385,7 @@
// try to start up normally
FS_Startup( BASEGAME );
- FS_CheckPak0( );
+ // FS_CheckPak0( );
// if we can't find default.cfg, assume that the paths are
// busted and error out now, rather than getting an unreadable
Index: qcommon/qcommon.h
===================================================================
--- qcommon/qcommon.h (revision 1107)
+++ qcommon/qcommon.h (working copy)
@@ -236,10 +236,10 @@
#define UPDATE_SERVER_NAME "update.quake3arena.com"
// override on command line, config files etc.
#ifndef MASTER_SERVER_NAME
-#define MASTER_SERVER_NAME "master.quake3arena.com"
+#define MASTER_SERVER_NAME "dpmaster.deathmask.net"
#endif
#ifndef AUTHORIZE_SERVER_NAME
-#define AUTHORIZE_SERVER_NAME "authorize.quake3arena.com"
+#define AUTHORIZE_SERVER_NAME ""
#endif
#define PORT_MASTER 27950
Index: ui/ui_main.c
===================================================================
--- ui/ui_main.c (revision 1107)
+++ ui/ui_main.c (working copy)
@@ -64,7 +64,7 @@
static const serverFilter_t serverFilters[] = {
{"All", "" },
- {"Quake 3 Arena", "" },
+ {"OpenArena", "" },
{"Team Arena", "missionpack" },
{"Rocket Arena", "arena" },
{"Alliance", "alliance20" },
Index: client/snd_dma.c
===================================================================
--- client/snd_dma.c (revision 1107)
+++ client/snd_dma.c (working copy)
@@ -364,7 +364,7 @@
Com_Memset( s_knownSfx, 0, sizeof( s_knownSfx ) );
Com_Memset(sfxHash, 0, sizeof(sfx_t *)*LOOP_HASH);
- S_Base_RegisterSound("sound/feedback/hit.wav", qfalse); // changed to a sound in baseq3
+ S_Base_RegisterSound("sound/misc/silence.wav", qfalse); // changed to a sound in baseq3
}
}
Index: client/snd_openal.c
===================================================================
--- client/snd_openal.c (revision 1107)
+++ client/snd_openal.c (working copy)
@@ -384,7 +384,7 @@
numSfx = 0;
// Load the default sound, and lock it
- default_sfx = S_AL_BufferFind("sound/feedback/hit.wav");
+ default_sfx = S_AL_BufferFind("sound/misc/silence.wav");
S_AL_BufferUse(default_sfx);
knownSfx[default_sfx].isLocked = qtrue;

23
openarena-runner.sh Normal file
View File

@ -0,0 +1,23 @@
#!/usr/bin/env bash
arch=$(uname -m)
if [ "$arch" == 'x86_64' ]; then
arch="x86_64"
else
arch="i386"
fi
file=`basename "$0"`
if [ "$file" == 'openarena' ]; then
file='openarena'
else
file='oa_ded'
fi
cd '/usr/share/openarena'
# Comment by syrjala
# openarena-runner.sh should pass on the command line options. I just banged my
# head against the wall for a while trying to figure out why my command line
# options didn't do anything.
# So, here it is
"./${file}.${arch}" $@

10
openarena.desktop Normal file
View File

@ -0,0 +1,10 @@
[Desktop Entry]
Encoding=UTF-8
Categories=Application;Game;ArcadeGame
Name=openarena
GenericName=First-person shooter game
GenericName[it]=Gioco sparatutto in prima persona
Exec=openarena
Terminal=0
Type=Application
Icon=/usr/share/pixmaps/openarena.ico

BIN
openarena.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

127
openarena.spec Normal file
View File

@ -0,0 +1,127 @@
%define pkgver %(echo %version | tr -d . )
Name: openarena
Version: 0.8.8
Release: 2mamba
Summary: An open-source content package for Quake III Arena licensed under the GPL
Group: Graphical Desktop/Applications/Games
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://openarena.ws
Source: http://download.tuxfamily.net/openarena/rel/%{pkgver}/openarena-%{version}.zip
Source1: http://openarena.ws/svn/source/ioq3-src-oa.tar.bz2
Source2: http://download.tuxfamily.org/openarena/rel/077/oa077-patch.zip
Source3: http://www.openarena.ws/svn/source/ui/menudef.h
Source4: openarena.ico
Source5: openarena.desktop
Source6: openarena-runner.sh
Patch0: oachanges.diff
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libSDL-devel
BuildRequires: libglvnd-devel
BuildRequires: libogg-devel
BuildRequires: libvorbis-devel
## AUTOBUILDREQ-END
ExclusiveArch: x86_64 %{ix86}
%description
An open-source content package for Quake III Arena licensed under the GPL, effectively creating a free stand-alone game.
Warning: this game was rated appropriate for an adult audience.
%debug_package
%prep
%setup -q
#-a1
rm *.dll *.exe
rm -rf __MACOSX *.app
:<< _OLD
#rm ioq* -f
rm *.dll -f
rm openarena.exe
cp %{SOURCE3} code/ui/menudef.h
mkdir ui
cp %{SOURCE3} ui/menudef.h
cd ..
#unzip -qqo %{SOURCE2}
%build
#% make USE_CURL_DLOPEN=0
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
install -d \
%{buildroot}%{_bindir} \
%{buildroot}%{_datadir}/openarena \
%{buildroot}%{_datadir}/pixmaps \
%{buildroot}%{_datadir}/applications
cp -a * %{buildroot}%{_datadir}/openarena/
#make copyfiles COPYDIR=%{buildroot}/opt/ioquake3
#cp -a baseoa %{buildroot}/opt/ioquake3
cp %{SOURCE4} %{buildroot}%{_datadir}/pixmaps/openarena.ico
cp %{SOURCE5} %{buildroot}%{_datadir}/applications/openarena.desktop
install -D -m0755 %{SOURCE6} %{buildroot}%{_datadir}/openarena/openarena-runner.sh
ln -s %{_datadir}/openarena/openarena-runner.sh %{buildroot}%{_bindir}/openarena
ln -s %{_datadir}/openarena/openarena-runner.sh %{buildroot}%{_bindir}/openarena-server
%ifarch x86_64
rm -f %{buildroot}%{_datadir}/openarena/*.i386
%endif
%ifarch %{ix86}
rm -f %{buildroot}%{_datadir}/openarena/*.x86_64
%endif
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files
%defattr(0755,root,root)
%{_bindir}/openarena
%{_bindir}/openarena-server
%dir %{_datadir}/openarena
%{_datadir}/openarena/CHANGES
%{_datadir}/openarena/COPYING
%{_datadir}/openarena/CREDITS
%{_datadir}/openarena/LINUXNOTES
%{_datadir}/openarena/README
%{_datadir}/openarena/WENEED
%dir %{_datadir}/openarena/baseoa
%{_datadir}/openarena/baseoa/*.pk3
%dir %{_datadir}/openarena/missionpack
%{_datadir}/openarena/missionpack/*.pk3
%{_datadir}/openarena/oa_ded.*
%{_datadir}/openarena/openarena-runner.sh
%{_datadir}/openarena/openarena.*
%{_datadir}/openarena/readme_*.txt
%{_datadir}/applications/openarena.desktop
%{_datadir}/pixmaps/openarena.ico
%doc COPYING
%changelog
* Mon May 10 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 0.8.8-2mamba
- rebuilt with debug package and x86_64 target
* Fri Apr 06 2012 Ercole 'ercolinux' Carpanetto <ercole69@gmail.com> 0.8.8-1mamba
- update to 0.8.8
* Thu Apr 16 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 0.8.1-3mamba
- automatic rebuild by autodist
* Fri Dec 12 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 0.8.1-2mamba
- ... add a changelog entry
* Thu Dec 11 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 0.8.1-1mamba
- automatic update by autodist
* Sat Jul 05 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 0.7.7-2mamba
- fix files permission: don't set all to 775
* Thu Jul 03 2008 Ercole 'ercolinux' Carpanetto <ercole69@gmail.com> 0.7.7-1mamba
- update to 0.7.7
* Fri Nov 16 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 0.7.0-1mamba
- package created by autospec