summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Gianelloni <wolf31o2@gentoo.org>2006-10-13 17:02:16 +0000
committerChris Gianelloni <wolf31o2@gentoo.org>2006-10-13 17:02:16 +0000
commit76fefd116a9ce0dfef88644eca42f6ffd411550e (patch)
treed07e553fe27c888a5da49124cdf6fb47bd14e0be /games-fps
parentMarking amd64, sparc stable (diff)
downloadhistorical-76fefd116a9ce0dfef88644eca42f6ffd411550e.tar.gz
historical-76fefd116a9ce0dfef88644eca42f6ffd411550e.tar.bz2
historical-76fefd116a9ce0dfef88644eca42f6ffd411550e.zip
Added patches from Tristan Heaven <nyhm@gentoo.org> and Mike Frysinger <vapier@gentoo.org> and closing bug #132389.
Package-Manager: portage-2.1.2_pre2-r8
Diffstat (limited to 'games-fps')
-rw-r--r--games-fps/avp/ChangeLog7
-rw-r--r--games-fps/avp/Manifest34
-rw-r--r--games-fps/avp/avp-20031110.ebuild6
-rw-r--r--games-fps/avp/files/avp-20031110-cleanup.patch735
-rw-r--r--games-fps/avp/files/avp-20031110-gentoo.patch136
5 files changed, 906 insertions, 12 deletions
diff --git a/games-fps/avp/ChangeLog b/games-fps/avp/ChangeLog
index 4f0d6b35cc47..afb32c434391 100644
--- a/games-fps/avp/ChangeLog
+++ b/games-fps/avp/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for games-fps/avp
# Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-fps/avp/ChangeLog,v 1.6 2006/10/05 11:24:45 nyhm Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-fps/avp/ChangeLog,v 1.7 2006/10/13 17:02:16 wolf31o2 Exp $
+
+ 13 Oct 2006; Chris Gianelloni <wolf31o2@gentoo.org>
+ +files/avp-20031110-cleanup.patch, +files/avp-20031110-gentoo.patch:
+ Added patches from Tristan Heaven <nyhm@gentoo.org> and Mike Frysinger
+ <vapier@gentoo.org> and closing bug #132389.
05 Oct 2006; Tristan Heaven <nyhm@gentoo.org> avp-20031110.ebuild:
Remove nvidia-glx version check
diff --git a/games-fps/avp/Manifest b/games-fps/avp/Manifest
index f15f03307401..d1f2a0a41612 100644
--- a/games-fps/avp/Manifest
+++ b/games-fps/avp/Manifest
@@ -1,16 +1,27 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+AUX avp-20031110-cleanup.patch 27213 RMD160 fac9616d5fa6ec3f89fbc4de8a2827d9e241023b SHA1 60a661dafa728540ba319d54bcd86162cf4b6858 SHA256 0e63ebd625113e6aafd7a6fc33042f0599f4aa665e65031b8646e86114edfcdb
+MD5 828e4c0ef38b4dfe7de6fa057ebc084d files/avp-20031110-cleanup.patch 27213
+RMD160 fac9616d5fa6ec3f89fbc4de8a2827d9e241023b files/avp-20031110-cleanup.patch 27213
+SHA256 0e63ebd625113e6aafd7a6fc33042f0599f4aa665e65031b8646e86114edfcdb files/avp-20031110-cleanup.patch 27213
AUX avp-20031110-gcc34.patch 1405 RMD160 f93111cb38b73671d447944aad148589bd579a16 SHA1 f4aea1ce60867abb6f48e0a745bbf914160e5ae4 SHA256 39b83a89a6e7c74e1e291c1989f5b1a579095c2058db46b86edcc808629b37f3
MD5 b816fec413a9baaca535625132ffb7a0 files/avp-20031110-gcc34.patch 1405
RMD160 f93111cb38b73671d447944aad148589bd579a16 files/avp-20031110-gcc34.patch 1405
SHA256 39b83a89a6e7c74e1e291c1989f5b1a579095c2058db46b86edcc808629b37f3 files/avp-20031110-gcc34.patch 1405
+AUX avp-20031110-gentoo.patch 4368 RMD160 ed65d58d7ecd3bc0e86229d2a9d3a61a3c3f8437 SHA1 06f4309898bb32e49311003ea3e6603c3ea2cfe0 SHA256 e079e3a5d77aa0b8659c3cc224ed0af98e9acdec67853dbb95952f99b865fc41
+MD5 6c6ed803e887ec6b6c0912edc9bc62cc files/avp-20031110-gentoo.patch 4368
+RMD160 ed65d58d7ecd3bc0e86229d2a9d3a61a3c3f8437 files/avp-20031110-gentoo.patch 4368
+SHA256 e079e3a5d77aa0b8659c3cc224ed0af98e9acdec67853dbb95952f99b865fc41 files/avp-20031110-gentoo.patch 4368
DIST avp-20031110.tar.bz2 1502637 RMD160 b8b90f6608d9a824eb88da83f6f0cf086f62fd40 SHA1 cf60fcef1ef4434bd32a80e99abd8c6f3465940f SHA256 d4f14eae1ea9e81fd170ecf05ae7e281b5b1fdc95ac9787eed03357c76dc77a7
-EBUILD avp-20031110.ebuild 1222 RMD160 7fdbcffa6c80a36b9b9a4daed23404f17e00a95e SHA1 7556e417710d5e88c6514be7d0f8a8f1d8ca2304 SHA256 a973f5f37e3716cccdec0675d84246f14d5e3a0db7d3a0c2dd724d9df821bd02
-MD5 2fc7abb0afd9f2c4e69e9c04f07bf04e avp-20031110.ebuild 1222
-RMD160 7fdbcffa6c80a36b9b9a4daed23404f17e00a95e avp-20031110.ebuild 1222
-SHA256 a973f5f37e3716cccdec0675d84246f14d5e3a0db7d3a0c2dd724d9df821bd02 avp-20031110.ebuild 1222
-MISC ChangeLog 2374 RMD160 05eacf2855e2c5914cbc833785c1a7eb6e99b56e SHA1 e91f88b26851cd7e5b7950f521ad19093e0ce80e SHA256 61f71ee4bac6f9d1c29f5280bb46fedde1d6f5e568c7fe2e5bfc2160812dccda
-MD5 3478bf9c1429c783d7e8b7844719f201 ChangeLog 2374
-RMD160 05eacf2855e2c5914cbc833785c1a7eb6e99b56e ChangeLog 2374
-SHA256 61f71ee4bac6f9d1c29f5280bb46fedde1d6f5e568c7fe2e5bfc2160812dccda ChangeLog 2374
+EBUILD avp-20031110.ebuild 1197 RMD160 def04baf49615b1ae6f8603b3a14ba1efc58f71b SHA1 32554462894701f32e4b58d759765aa244e935d7 SHA256 481dbf8c41472fd43b655315f0e9f7285873264da969af04791cf6805cfb42c6
+MD5 df0abb7f7810b83794befdd3ea25c248 avp-20031110.ebuild 1197
+RMD160 def04baf49615b1ae6f8603b3a14ba1efc58f71b avp-20031110.ebuild 1197
+SHA256 481dbf8c41472fd43b655315f0e9f7285873264da969af04791cf6805cfb42c6 avp-20031110.ebuild 1197
+MISC ChangeLog 2624 RMD160 d14ba72ab16b76936312cc3c28cf9f5e570ce6ec SHA1 4a09691cb48715a1fdde82e320c6b6dcdaf5dbc2 SHA256 004096f4991269b17d80aa4d4f99a39123a13ac387eed894f5b3e7de334ee9fd
+MD5 19115ee1790590d16eafdc124525d8ca ChangeLog 2624
+RMD160 d14ba72ab16b76936312cc3c28cf9f5e570ce6ec ChangeLog 2624
+SHA256 004096f4991269b17d80aa4d4f99a39123a13ac387eed894f5b3e7de334ee9fd ChangeLog 2624
MISC metadata.xml 158 RMD160 cbd9984bb6b426c8c9cee5022fe0a26261612fea SHA1 be5251fa1dacef5c41b74761bb1c8c54fb633b9e SHA256 1423a4fdd4a79b1728a2056d9e300f7e1074253095d82726218d9e9b953888a3
MD5 f17b9b8fa07a38914fe1c03268f51678 metadata.xml 158
RMD160 cbd9984bb6b426c8c9cee5022fe0a26261612fea metadata.xml 158
@@ -18,3 +29,10 @@ SHA256 1423a4fdd4a79b1728a2056d9e300f7e1074253095d82726218d9e9b953888a3 metadata
MD5 820a03c878452c5af062656cf1c0677c files/digest-avp-20031110 244
RMD160 c55bd4fdc7bf44a8edc6b0f89a301e653bdae503 files/digest-avp-20031110 244
SHA256 2605bcb0e21bddfb1000fc67232b59cde9229d91a171dbeb74d34f7ba2a27c99 files/digest-avp-20031110 244
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.5 (GNU/Linux)
+
+iD8DBQFFL8ajkT4lNIS36YERAj1tAKCsal2EXf41OtD+htJmehObSehuwgCfc02G
+wnzI4TTUN/mxf4i6p+KtrZE=
+=Y6Ba
+-----END PGP SIGNATURE-----
diff --git a/games-fps/avp/avp-20031110.ebuild b/games-fps/avp/avp-20031110.ebuild
index 485f8f9a74ae..8214d0ed2c8e 100644
--- a/games-fps/avp/avp-20031110.ebuild
+++ b/games-fps/avp/avp-20031110.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-fps/avp/avp-20031110.ebuild,v 1.5 2006/10/05 11:24:45 nyhm Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-fps/avp/avp-20031110.ebuild,v 1.6 2006/10/13 17:02:16 wolf31o2 Exp $
#ECVS_SERVER="icculus.org:/cvs/cvsroot"
ECVS_PASS="anonymous"
@@ -31,12 +31,12 @@ src_unpack() {
cd "${S}"
- sed -i '/alut.h/d' openal.c || die "sed openal.c failed"
sed -i \
- -e "s:-lopenal:/usr/$(get_libdir)/libopenal.a:" \
-e "/^CFLAGS =/s:=.*:=${CFLAGS}:" Makefile \
|| die "sed Makefile failed"
epatch "${FILESDIR}/${P}-gcc34.patch"
+ epatch "${FILESDIR}/${P}-cleanup.patch"
+ epatch "${FILESDIR}/${P}-gentoo.patch"
}
src_install() {
diff --git a/games-fps/avp/files/avp-20031110-cleanup.patch b/games-fps/avp/files/avp-20031110-cleanup.patch
new file mode 100644
index 000000000000..7f23ec098f37
--- /dev/null
+++ b/games-fps/avp/files/avp-20031110-cleanup.patch
@@ -0,0 +1,735 @@
+- change all 'unsigned int' vars that are used with ffreadbuf() to 'size_t'
+- create headers with prototypes to get ride of implicit warnings
+ main.h smacker.h avp/win95/winmain.h win95/dd_func.h
+- declare all the render funcs as using a const char for the textPtr (only
+ some do atm instead of all of them)
+- fix warning in LoadWavFromFastFile about pointer ... func returns a bool
+- fix pointer warning in opengl.c
+- use %p instead of %x when outputting pointers
+- tweak how debug vars are declared to get rid of 'unused variable' warnings
+- cast the 2nd param to an int in avp/support/coordstr.cpp to get rid of
+ implicit double->int cast warning
+- use a regular C cast instead of CXX in win95/hash_tem.hpp to get rid of
+ error about losing precision
+
+Index: main.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/main.c,v
+retrieving revision 1.65
+diff -u -p -r1.65 main.c
+--- main.c 12 Jan 2004 20:39:35 -0000 1.65
++++ main.c 12 Dec 2005 22:50:24 -0000
+@@ -43,6 +43,7 @@
+ #include "progress_bar.h"
+ #include "scrshot.hpp"
+ #include "version.h"
++#include "main.h"
+
+ char LevelName[] = {"predbit6\0QuiteALongNameActually"}; /* the real way to load levels */
+
+Index: menus.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/menus.c,v
+retrieving revision 1.9
+diff -u -p -r1.9 menus.c
+--- menus.c 9 Jan 2002 23:07:34 -0000 1.9
++++ menus.c 12 Dec 2005 22:50:24 -0000
+@@ -290,7 +290,7 @@ static void LoadMenuFont()
+ {
+ AVPMENUGFX *gfxPtr;
+ char buffer[100];
+- unsigned int fastFileLength;
++ size_t fastFileLength;
+ void const *pFastFileData;
+
+ IntroFont_Light.height = 33;
+@@ -600,7 +600,7 @@ int RenderMenuText_Clipped(char *textPtr
+
+ }
+
+-static int RenderSmallFontString(char *textPtr,int sx,int sy,int alpha, int red, int green, int blue)
++static int RenderSmallFontString(const char *textPtr,int sx,int sy,int alpha, int red, int green, int blue)
+ {
+ unsigned char *srcPtr;
+ unsigned short *destPtr;
+@@ -851,10 +851,10 @@ Determine area used by text , so we can
+ if(output_y) *output_y=sy;
+ }
+
+-int RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
++int RenderSmallMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
+ {
+ int length;
+- char *ptr;
++ const char *ptr;
+
+ switch(format) {
+ default:
+@@ -889,10 +889,10 @@ int RenderSmallMenuText(char *textPtr, i
+ return RenderSmallFontString(textPtr,x,y,alpha,ONE_FIXED,ONE_FIXED,ONE_FIXED);
+ }
+
+-int RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
++int RenderSmallMenuText_Coloured(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
+ {
+ int length;
+- char *ptr;
++ const char *ptr;
+
+ switch(format) {
+ default:
+@@ -1050,7 +1050,7 @@ void LoadAvPMenuGfx(enum AVPMENUGFX_ID m
+ {
+ AVPMENUGFX *gfxPtr;
+ char buffer[100];
+- unsigned int fastFileLength;
++ size_t fastFileLength;
+ void const *pFastFileData;
+
+ GLOBALASSERT(menuGfxID < MAX_NO_OF_AVPMENUGFXS);
+Index: openal.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/openal.c,v
+retrieving revision 1.24
+diff -u -p -r1.24 openal.c
+--- openal.c 10 Aug 2003 02:38:08 -0000 1.24
++++ openal.c 12 Dec 2005 22:50:24 -0000
+@@ -1029,7 +1029,7 @@ int LoadWavFromFastFile(int soundNum, ch
+ strcpy (buf, wavFileName);
+ ffread (&buf[strlen(wavFileName)+1], len, 1, fp);
+ ffclose (fp);
+- len = (int)ExtractWavFile (soundNum, buf);
++ len = (ExtractWavFile (soundNum, buf) == NULL ? 0 : 1);
+ free (buf);
+ }
+
+Index: opengl.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/opengl.c,v
+retrieving revision 1.40
+diff -u -p -r1.40 opengl.c
+--- opengl.c 15 Oct 2003 06:10:42 -0000 1.40
++++ opengl.c 12 Dec 2005 22:50:25 -0000
+@@ -334,7 +334,7 @@ static void CheckTriangleBuffer(int rver
+ FlushTriangleBuffers(0);
+ }
+
+- if ((int)tex != -1)
++ if (tex != (D3DTexture *)-1)
+ CheckBoundTextureIsCorrect(tex);
+ if (mode != -1)
+ CheckTranslucencyModeIsCorrect(mode);
+@@ -1598,7 +1598,7 @@ void D3D_RenderHUDNumber_Centred(unsigne
+ } while (--noOfDigits);
+ }
+
+-void D3D_RenderHUDString(char *stringPtr,int x,int y,int colour)
++void D3D_RenderHUDString(const char *stringPtr,int x,int y,int colour)
+ {
+ struct VertexTag quadVertices[4];
+
+@@ -1809,7 +1809,7 @@ void RenderStringVertically(char *string
+ }
+ }
+
+-int Hardware_RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
++int Hardware_RenderSmallMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
+ {
+ switch(format)
+ {
+@@ -1825,7 +1825,7 @@ int Hardware_RenderSmallMenuText(char *t
+ case AVPMENUFORMAT_RIGHTJUSTIFIED:
+ {
+ int length = 0;
+- signed char *ptr = textPtr;
++ const signed char *ptr = textPtr;
+
+ while(*ptr)
+ {
+@@ -1838,7 +1838,7 @@ int Hardware_RenderSmallMenuText(char *t
+ case AVPMENUFORMAT_CENTREJUSTIFIED:
+ {
+ int length = 0;
+- signed char *ptr = textPtr;
++ const signed char *ptr = textPtr;
+
+ while(*ptr)
+ {
+@@ -1861,7 +1861,7 @@ int Hardware_RenderSmallMenuText(char *t
+ return x;
+ }
+
+-int Hardware_RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
++int Hardware_RenderSmallMenuText_Coloured(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
+ {
+ switch(format)
+ {
+@@ -1877,7 +1877,7 @@ int Hardware_RenderSmallMenuText_Coloure
+ case AVPMENUFORMAT_RIGHTJUSTIFIED:
+ {
+ int length = 0;
+- signed char *ptr = textPtr;
++ const signed char *ptr = textPtr;
+
+ while(*ptr)
+ {
+@@ -1890,7 +1890,7 @@ int Hardware_RenderSmallMenuText_Coloure
+ case AVPMENUFORMAT_CENTREJUSTIFIED:
+ {
+ int length = 0;
+- signed char *ptr = textPtr;
++ const signed char *ptr = textPtr;
+
+ while(*ptr)
+ {
+Index: avp/avpview.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/avpview.c,v
+retrieving revision 1.6
+diff -u -p -r1.6 avpview.c
+--- avp/avpview.c 18 Dec 2001 02:23:40 -0000 1.6
++++ avp/avpview.c 12 Dec 2005 22:50:25 -0000
+@@ -9,6 +9,7 @@
+ #include "avpview.h"
+ #include "opengl.h"
+
++#include "smacker.h"
+ #include "kshape.h"
+ #include "kzsort.h"
+ #include "frustum.h"
+Index: avp/bh_near.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/bh_near.c,v
+retrieving revision 1.4
+diff -u -p -r1.4 bh_near.c
+--- avp/bh_near.c 22 Dec 2001 00:49:58 -0000 1.4
++++ avp/bh_near.c 12 Dec 2005 22:50:26 -0000
+@@ -1646,7 +1646,7 @@ static void AlienNearState_Retreat(STRAT
+
+ if (targetModule) {
+ //textprint("Target module is %s\n",targetModule->name);
+- textprint("Target AI module found, %x.\n",(int)targetModule);
++ textprint("Target AI module found, %p.\n",targetModule);
+ } else {
+ textprint("Target module is NULL!\n");
+ }
+@@ -1830,7 +1830,7 @@ static void AlienNearState_Hunt(STRATEGY
+
+ if (targetModule) {
+ //textprint("Target module is %s\n",targetModule->name);
+- textprint("Target AI module for hunt found, %x.\n",(int)targetModule);
++ textprint("Target AI module for hunt found, %p.\n",targetModule);
+ } else {
+ textprint("Target module is NULL!\n");
+ }
+Index: avp/bh_queen.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/bh_queen.c,v
+retrieving revision 1.6
+diff -u -p -r1.6 bh_queen.c
+--- avp/bh_queen.c 22 May 2003 00:23:07 -0000 1.6
++++ avp/bh_queen.c 12 Dec 2005 22:50:27 -0000
+@@ -505,10 +505,9 @@ void MakeQueenFar(STRATEGYBLOCK *sbPtr)
+
+ /* get the queen's status block */
+ int i;
+- QUEEN_STATUS_BLOCK *queenStatusPointer= (QUEEN_STATUS_BLOCK *)(sbPtr->SBdataptr);
+
+ LOCALASSERT(sbPtr);
+- LOCALASSERT(queenStatusPointer);
++ LOCALASSERT((QUEEN_STATUS_BLOCK *)(sbPtr->SBdataptr));
+ LOCALASSERT(sbPtr->SBdptr != NULL);
+
+ /* get rid of the displayblock */
+Index: avp/bh_waypt.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/bh_waypt.c,v
+retrieving revision 1.3
+diff -u -p -r1.3 bh_waypt.c
+--- avp/bh_waypt.c 22 Dec 2001 00:49:58 -0000 1.3
++++ avp/bh_waypt.c 12 Dec 2005 22:50:27 -0000
+@@ -131,7 +131,7 @@ int NPCGetWaypointDirection(WAYPOINT_HEA
+
+ //Base shift value on strategy block so that the aliens don't keep changing their minds
+ //about which route to take
+- GlobalLinkShift=(((int)sbPtr)&0xffff)>>4;
++ GlobalLinkShift=(((size_t)sbPtr)&0xffff)>>4;
+ if (FindBestRoute(&current_route,waypoints)==0) {
+ /* Yuck! */
+ textprint("Waypoint dropout: no continuous route!\n");
+Index: avp/dynamics.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/dynamics.c,v
+retrieving revision 1.4
+diff -u -p -r1.4 dynamics.c
+--- avp/dynamics.c 22 Dec 2001 00:49:58 -0000 1.4
++++ avp/dynamics.c 12 Dec 2005 22:50:28 -0000
+@@ -43,8 +43,10 @@ you should have seen the previous versio
+ #if 0
+ extern int GlobalFrameCounter;
+ #define LogInfo LOGDXFMT
++ #define LogInfoVar(x) x
+ #else
+ #define LogInfo(args) (void)0
++ #define LogInfoVar(x)
+ #endif
+
+ extern MORPHDISPLAY MorphDisplay;
+@@ -295,7 +297,7 @@ extern void ObjectDynamics(void)
+ InitialiseDynamicObjectsList();
+
+ {
+- DYNAMICSBLOCK *dynPtr = Player->ObStrategyBlock->DynPtr;
++ LogInfoVar(DYNAMICSBLOCK *dynPtr = Player->ObStrategyBlock->DynPtr);
+ LogInfo
+ ((
+ "Dynamics Logging: frame %d\nDL: player's Position %d,%d,%d\nDL: player's Displacement %d,%d,%d\nDL: NormalFrameTime %d\n",
+Index: avp/game.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/game.c,v
+retrieving revision 1.7
+diff -u -p -r1.7 game.c
+--- avp/game.c 22 Dec 2001 00:49:58 -0000 1.7
++++ avp/game.c 12 Dec 2005 22:50:28 -0000
+@@ -10,6 +10,7 @@
+ #include "dynblock.h"
+ #include "dynamics.h"
+
++#include "winmain.h"
+ #include "bh_types.h"
+ #include "bh_alien.h"
+ #include "pheromon.h"
+Index: avp/psndproj.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/psndproj.c,v
+retrieving revision 1.6
+diff -u -p -r1.6 psndproj.c
+--- avp/psndproj.c 9 Jan 2002 23:07:35 -0000 1.6
++++ avp/psndproj.c 12 Dec 2005 22:50:28 -0000
+@@ -856,7 +856,7 @@ int FindAndLoadWavFile(int soundNum,char
+ #if LOAD_SOUND_FROM_FAST_FILE
+ //first look in fast file
+ {
+- unsigned nLen;
++ size_t nLen;
+ if(ffreadbuf(sound_name,&nLen))
+ {
+ return LoadWavFromFastFile(soundNum,sound_name);
+Index: avp/pvisible.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/pvisible.c,v
+retrieving revision 1.3
+diff -u -p -r1.3 pvisible.c
+--- avp/pvisible.c 9 Jan 2002 23:07:35 -0000 1.3
++++ avp/pvisible.c 12 Dec 2005 22:50:29 -0000
+@@ -236,7 +236,7 @@ void DoObjectVisibility(STRATEGYBLOCK *s
+ module. However, we will do a paranoia check for a null containingModule... */
+ if(!sbPtr->containingModule)
+ {
+- textprint("Calling Far EmergencyRelocateObject, On object %x, type %d!\n",(int)sbPtr, sbPtr->I_SBtype);
++ textprint("Calling Far EmergencyRelocateObject, On object %p, type %d!\n",sbPtr, sbPtr->I_SBtype);
+ IdentifyObject(sbPtr);
+ if(!(EmergencyRelocateObject(sbPtr))) {
+ textprint("Relocate failed!\n");
+@@ -432,7 +432,7 @@ void DoObjectVisibility(STRATEGYBLOCK *s
+ if(!(newModule))
+ {
+ /* attempt to relocate object */
+- textprint("Calling Near EmergencyRelocateObject, On object %x, type %d!\n",(int)sbPtr, sbPtr->I_SBtype);
++ textprint("Calling Near EmergencyRelocateObject, On object %p, type %d!\n",sbPtr, sbPtr->I_SBtype);
+ IdentifyObject(sbPtr);
+ if(!(EmergencyRelocateObject(sbPtr))) {
+ textprint("Relocate failed!\n");
+Index: avp/savegame.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/savegame.c,v
+retrieving revision 1.7
+diff -u -p -r1.7 savegame.c
+--- avp/savegame.c 22 May 2003 00:23:07 -0000 1.7
++++ avp/savegame.c 12 Dec 2005 22:50:29 -0000
+@@ -8,6 +8,7 @@
+ #include "comp_shp.h"
+ #include "dynblock.h"
+
++#include "smacker.h"
+ #include "bh_alien.h"
+ #include "pvisible.h"
+ #include "bh_pred.h"
+Index: avp/weapons.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/weapons.c,v
+retrieving revision 1.8
+diff -u -p -r1.8 weapons.c
+--- avp/weapons.c 22 May 2003 00:23:07 -0000 1.8
++++ avp/weapons.c 12 Dec 2005 22:50:31 -0000
+@@ -10138,8 +10138,7 @@ SECTION_DATA *CheckBiteIntegrity(void) {
+ if ((targetpos.vz >0)
+ && (targetpos.vz < (BITE_RANGE<<1))) {
+
+- DYNAMICSBLOCK *dynPtr = Biting->DynPtr;
+- GLOBALASSERT(dynPtr);
++ GLOBALASSERT(Biting->DynPtr);
+
+ if (IsThisObjectVisibleFromThisPosition_WithIgnore(objectPtr,Player,&Global_VDB_Ptr->VDB_World,(BITE_RANGE<<1))) {
+
+Index: avp/support/coordstr.cpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/support/coordstr.cpp,v
+retrieving revision 1.3
+diff -u -p -r1.3 coordstr.cpp
+--- avp/support/coordstr.cpp 9 Jan 2002 23:07:35 -0000 1.3
++++ avp/support/coordstr.cpp 12 Dec 2005 22:50:31 -0000
+@@ -210,7 +210,7 @@ ACTIVITY_RETURN_TYPE AcyclicPulsingCoord
+ textprint("AcyclicPulsingCoordinate :: Activity(%i)\n", FixP_Time);
+ #endif
+
+- int Int_CurrentCoord_Old = Int_CurrentCoord_Val;
++ ACTIVITY_RVAL_TEMP(int Int_CurrentCoord_Old = Int_CurrentCoord_Val);
+
+ ApplyVelocity( FixP_Time );
+
+@@ -276,7 +276,7 @@ ACTIVITY_RETURN_TYPE CyclicPulsingCoordi
+ textprint("CyclicPulsingCoordinate :: Activity(%i)\n", FixP_Time);
+ #endif
+
+- int Int_CurrentCoord_Old = Int_CurrentCoord_Val;
++ ACTIVITY_RVAL_TEMP(int Int_CurrentCoord_Old = Int_CurrentCoord_Val);
+
+ ApplyVelocity( FixP_Time );
+
+@@ -343,7 +343,7 @@ HomingCoordinate::HomingCoordinate
+ FixP_IdealVelocity_Val = DIV_FIXED
+ (
+ (FixP_TargetCoord_Val - FixP_Position_Val),
+- FIXP_SECONDS_FOR_STANDARD_HOMING
++ (int)FIXP_SECONDS_FOR_STANDARD_HOMING
+ );
+ }
+
+@@ -383,7 +383,7 @@ AcyclicHomingCoordinate :: AcyclicHoming
+
+ ACTIVITY_RETURN_TYPE AcyclicHomingCoordinate :: Activity(ACTIVITY_INPUT)
+ {
+- int Int_CurrentCoord_Old = Int_CurrentCoord_Val;
++ ACTIVITY_RVAL_TEMP(int Int_CurrentCoord_Old = Int_CurrentCoord_Val);
+
+ #if 0
+ textprint("acyclic homing coord for time %i\n",FixP_Time);
+@@ -503,7 +503,7 @@ void AcyclicHomingCoordinate :: SetTarge
+
+ FixP_IdealVelocity_Val = DIV_FIXED(
+ (FixP_TargetCoord_Val - FixP_Position_Val),
+- FIXP_SECONDS_FOR_STANDARD_HOMING
++ (int)FIXP_SECONDS_FOR_STANDARD_HOMING
+ );
+
+
+@@ -553,7 +553,7 @@ AcyclicFixedSpeedHoming :: ~AcyclicFixed
+
+ ACTIVITY_RETURN_TYPE AcyclicFixedSpeedHoming :: Activity(ACTIVITY_INPUT)
+ {
+- int Int_CurrentCoord_Old = Int_CurrentCoord_Val;
++ ACTIVITY_RVAL_TEMP(int Int_CurrentCoord_Old = Int_CurrentCoord_Val);
+
+ #if 0
+ textprint("acyclic homing coord for time %i\n",FixP_Time);
+Index: avp/support/daemon.h
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/support/daemon.h,v
+retrieving revision 1.2
+diff -u -p -r1.2 daemon.h
+--- avp/support/daemon.h 29 Jul 2001 02:29:46 -0000 1.2
++++ avp/support/daemon.h 12 Dec 2005 22:50:31 -0000
+@@ -30,12 +30,14 @@
+ #if SupportCallbackHooks
+ #define ACTIVITY_RETURN_TYPE OurBool
+
++ #define ACTIVITY_RVAL_TEMP(b) b
+ #define ACTIVITY_RVAL_CHANGE {return Yes;}
+ #define ACTIVITY_RVAL_NOCHANGE {return No;}
+ #define ACTIVITY_RVAL_BOOL(b) {return b;}
+ #else
+ #define ACTIVITY_RETURN_TYPE void
+
++ #define ACTIVITY_RVAL_TEMP(b)
+ #define ACTIVITY_RVAL_CHANGE {return;}
+ #define ACTIVITY_RVAL_NOCHANGE {return;}
+ #define ACTIVITY_RVAL_BOOL(ignore) {return;}
+Index: avp/win95/progress_bar.cpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/win95/progress_bar.cpp,v
+retrieving revision 1.10
+diff -u -p -r1.10 progress_bar.cpp
+--- avp/win95/progress_bar.cpp 22 Dec 2001 00:49:59 -0000 1.10
++++ avp/win95/progress_bar.cpp 12 Dec 2005 22:50:31 -0000
+@@ -59,7 +59,7 @@ void Start_Progress_Bar()
+ CL_GetImageFileName(buffer, 100,Loading_Bar_Empty_Image_Name, LIO_RELATIVEPATH);
+
+ //see if graphic can be found in fast file
+- unsigned int fastFileLength;
++ size_t fastFileLength;
+ void const * pFastFileData = ffreadbuf(buffer,&fastFileLength);
+
+ if(pFastFileData)
+@@ -89,7 +89,7 @@ void Start_Progress_Bar()
+ CL_GetImageFileName(buffer, 100,Loading_Bar_Full_Image_Name, LIO_RELATIVEPATH);
+
+ //see if graphic can be found in fast file
+- unsigned int fastFileLength;
++ size_t fastFileLength;
+ void const * pFastFileData = ffreadbuf(buffer,&fastFileLength);
+
+ if(pFastFileData)
+@@ -128,7 +128,7 @@ void Start_Progress_Bar()
+
+
+ //see if graphic can be found in fast file
+- unsigned int fastFileLength;
++ size_t fastFileLength;
+ void const * pFastFileData = ffreadbuf(buffer,&fastFileLength);
+
+ if(pFastFileData)
+Index: avp/win95/system.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/win95/system.c,v
+retrieving revision 1.10
+diff -u -p -r1.10 system.c
+--- avp/win95/system.c 9 Jan 2002 23:07:36 -0000 1.10
++++ avp/win95/system.c 12 Dec 2005 22:50:31 -0000
+@@ -12,6 +12,7 @@
+ #include "messagehistory.h"
+ #include "particle.h"
+ #include "pldnet.h"
++#include "smacker.h"
+ #define UseLocalAssert Yes
+ #include "ourasert.h"
+
+Index: avp/win95/frontend/avp_intro.cpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/win95/frontend/avp_intro.cpp,v
+retrieving revision 1.3
+diff -u -p -r1.3 avp_intro.cpp
+--- avp/win95/frontend/avp_intro.cpp 22 Dec 2001 00:49:59 -0000 1.3
++++ avp/win95/frontend/avp_intro.cpp 12 Dec 2005 22:50:31 -0000
+@@ -4,7 +4,8 @@ extern "C"
+ #include "3dc.h"
+ //#include "intro.hpp"
+ #include "inline.h"
+- //#include "smacker.h"
++ #include "smacker.h"
++ #include "winmain.h"
+ #include "avp_menus.h"
+ #include "avp_intro.h"
+ extern int NormalFrameTime;
+@@ -24,7 +25,6 @@ void Show_ARebellionGame(void);
+ void Show_AvPLogo(void);
+ extern void ShowSplashScreens(void);
+ extern void Show_WinnerScreen(void);
+-extern void PlayBinkedFMV(char *filenamePtr);
+ extern void DrawMainMenusBackdrop(void);
+ extern void FadedScreen(int alpha);
+
+Index: avp/win95/frontend/avp_menugfx.cpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/win95/frontend/avp_menugfx.cpp,v
+retrieving revision 1.4
+diff -u -p -r1.4 avp_menugfx.cpp
+--- avp/win95/frontend/avp_menugfx.cpp 9 Jan 2002 23:07:36 -0000 1.4
++++ avp/win95/frontend/avp_menugfx.cpp 12 Dec 2005 22:50:32 -0000
+@@ -256,7 +256,7 @@ extern int RenderMenuText_Clipped(char *
+ }
+
+
+-extern int RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
++extern int RenderSmallMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
+ {
+ switch(format)
+ {
+@@ -300,7 +300,7 @@ extern int RenderSmallMenuText(char *tex
+ x = RenderSmallFontString(textPtr,x,y,alpha,ONE_FIXED,ONE_FIXED,ONE_FIXED);
+ return x;
+ }
+-extern int RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
++extern int RenderSmallMenuText_Coloured(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
+ {
+ switch(format)
+ {
+@@ -345,7 +345,7 @@ extern int RenderSmallMenuText_Coloured(
+ return x;
+ }
+
+-extern int Hardware_RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
++extern int Hardware_RenderSmallMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format)
+ {
+ switch(format)
+ {
+@@ -395,7 +395,7 @@ extern int Hardware_RenderSmallMenuText(
+ return x;
+ }
+
+-extern int Hardware_RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
++extern int Hardware_RenderSmallMenuText_Coloured(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue)
+ {
+ switch(format)
+ {
+Index: avp/win95/frontend/avp_menugfx.hpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/win95/frontend/avp_menugfx.hpp,v
+retrieving revision 1.6
+diff -u -p -r1.6 avp_menugfx.hpp
+--- avp/win95/frontend/avp_menugfx.hpp 9 Jan 2002 23:07:36 -0000 1.6
++++ avp/win95/frontend/avp_menugfx.hpp 12 Dec 2005 22:50:32 -0000
+@@ -99,11 +99,11 @@ extern void ReleaseAllAvPMenuGfx(void);
+
+ extern int RenderMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
+
+-extern int RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
+-extern int RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue);
++extern int RenderSmallMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
++extern int RenderSmallMenuText_Coloured(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue);
+
+-extern int Hardware_RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
+-extern int Hardware_RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue);
++extern int Hardware_RenderSmallMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
++extern int Hardware_RenderSmallMenuText_Coloured(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue);
+
+ extern int RenderMenuText_Clipped(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int topY, int bottomY);
+ extern void RenderSmallFontString_Wrapped(const char *textPtr,RECT* area,int alpha,int* output_x,int* output_y);
+Index: avp/win95/frontend/avp_menus.c
+===================================================================
+RCS file: /cvs/cvsroot/avp/avp/win95/frontend/avp_menus.c,v
+retrieving revision 1.11
+diff -u -p -r1.11 avp_menus.c
+--- avp/win95/frontend/avp_menus.c 22 May 2003 01:55:16 -0000 1.11
++++ avp/win95/frontend/avp_menus.c 12 Dec 2005 22:50:33 -0000
+@@ -8,6 +8,10 @@
+ #include "net.h"
+ #include "opengl.h"
+ #include "pldnet.h"
++#include "main.h"
++#include "winmain.h"
++#include "smacker.h"
++#include "dd_func.h"
+
+ #include "avp_menudata.h"
+ #include "avp_menus.h"
+@@ -1788,7 +1792,7 @@ static void RenderLoadGameMenu(void)
+ AVPMENU_ELEMENT *elementPtr = AvPMenus.MenuElements;
+ int e;
+ int y;
+- int (*RenderText)(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
++ int (*RenderText)(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
+
+ if (AvPMenus.MenusState == MENUSSTATE_MAINMENUS)
+ {
+@@ -3224,8 +3228,8 @@ int LengthOfSmallMenuText(char *textPtr)
+
+ static void RenderMenuElement(AVPMENU_ELEMENT *elementPtr, int e, int y)
+ {
+- int (*RenderText)(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
+- int (*RenderText_Coloured)(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int r, int g, int b);
++ int (*RenderText)(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
++ int (*RenderText_Coloured)(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int r, int g, int b);
+ int (*MenuTextLength)(char *textPtr);
+
+ if (AvPMenus.FontToUse==AVPMENU_FONT_BIG)
+Index: win95/chnktexi.cpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/win95/chnktexi.cpp,v
+retrieving revision 1.4
+diff -u -p -r1.4 chnktexi.cpp
+--- win95/chnktexi.cpp 18 Dec 2001 05:08:53 -0000 1.4
++++ win95/chnktexi.cpp 12 Dec 2005 22:50:33 -0000
+@@ -102,7 +102,7 @@ static char * RiffBasename(Chunk_With_Ch
+ #if CL_SUPPORT_FASTFILE
+ static inline bool IsFileInFastFile(char const * pszFileName)
+ {
+- unsigned nLen;
++ size_t nLen;
+ return ffreadbuf(pszFileName,&nLen) ? true : false;
+ }
+ #endif
+@@ -714,7 +714,7 @@ int CL_LoadImageOnce(char const * pszFil
+ case LIO_DDSURFACE:
+ {
+ #if CL_SUPPORT_FASTFILE
+- unsigned nFastFileLen;
++ size_t nFastFileLen;
+ void const * pFastFileData = ffreadbuf(szBuf,&nFastFileLen);
+ if (pFastFileData)
+ {
+@@ -823,7 +823,7 @@ int CL_LoadImageOnce(char const * pszFil
+ {
+ fAwLoad |= AW_TLF_COMPRESS; // required on some cards!!
+ #if CL_SUPPORT_FASTFILE
+- unsigned nFastFileLen;
++ size_t nFastFileLen;
+ void const * pFastFileData = ffreadbuf(szBuf,&nFastFileLen);
+ if (pFastFileData)
+ {
+Index: win95/hash_tem.hpp
+===================================================================
+RCS file: /cvs/cvsroot/avp/win95/hash_tem.hpp,v
+retrieving revision 1.5
+diff -u -p -r1.5 hash_tem.hpp
+--- win95/hash_tem.hpp 18 Aug 2004 04:20:41 -0000 1.5
++++ win95/hash_tem.hpp 12 Dec 2005 22:50:33 -0000
+@@ -242,7 +242,7 @@
+ inline unsigned HashFunction(void const * const _vP)
+ {
+ // treat as integer
+- return HashFunction(reinterpret_cast<unsigned>(_vP));
++ return HashFunction((unsigned long)(_vP));
+ }
+
+ // a hash function for strings
+--- /dev/null 2005-12-12 17:15:01.544366500 -0500
++++ main.h 2005-12-12 16:33:39.000000000 -0500
+@@ -0,0 +1,11 @@
++#ifndef __MAIN_H__
++#define __MAIN_H__
++
++extern void LoadDeviceAndVideoModePreferences(void);
++extern void SaveDeviceAndVideoModePreferences(void);
++extern void PreviousVideoMode2(void);
++extern void NextVideoMode2(void);
++extern char *GetVideoModeDescription2(void);
++extern char *GetVideoModeDescription3(void);
++
++#endif
+--- /dev/null 2005-12-12 17:15:01.544366500 -0500
++++ smacker.h 2005-12-12 16:29:16.000000000 -0500
+@@ -0,0 +1,11 @@
++#ifndef __SMACKER_H__
++#define __SMACKER_H__
++
++extern void GetFMVInformation(int *messageNumberPtr, int *frameNumberPtr);
++extern void InitialiseTriggeredFMVs(void);
++extern void StartFMVAtFrame(int number, int frame);
++extern void StartTriggerPlotFMV(int number);
++extern void UpdateAllFMVTextures(void);
++extern void EndMenuMusic(void);
++
++#endif
+--- /dev/null 2005-12-12 17:15:01.544366500 -0500
++++ avp/win95/winmain.h 2005-12-12 16:26:06.000000000 -0500
+@@ -0,0 +1,10 @@
++#ifndef __WINMAIN_H__
++#define __WINMAIN_H__
++
++extern void PlayBinkedFMV(char *filenamePtr);
++extern void StartMenuBackgroundBink(void);
++extern int PlayMenuBackgroundBink(void);
++extern void EndMenuBackgroundBink(void);
++extern void InitialiseTriggeredFMVs(void);
++
++#endif
+--- /dev/null 2005-12-12 17:15:01.544366500 -0500
++++ win95/dd_func.h 2005-12-12 16:34:43.000000000 -0500
+@@ -0,0 +1,6 @@
++#ifndef __DD_FUNC_H__
++#define __DD_FUNC_H__
++
++extern int SelectDirectDrawObject(void *pGUID);
++
++#endif
diff --git a/games-fps/avp/files/avp-20031110-gentoo.patch b/games-fps/avp/files/avp-20031110-gentoo.patch
new file mode 100644
index 000000000000..29879e698ddc
--- /dev/null
+++ b/games-fps/avp/files/avp-20031110-gentoo.patch
@@ -0,0 +1,136 @@
+diff -ur avp.orig/avp/win95/gadgets/trepgadg.hpp avp/avp/win95/gadgets/trepgadg.hpp
+--- avp.orig/avp/win95/gadgets/trepgadg.hpp 2001-12-09 01:21:49.000000000 +0000
++++ avp/avp/win95/gadgets/trepgadg.hpp 2006-09-18 23:38:01.000000000 +0100
+@@ -56,12 +56,12 @@
+ int FixP_Alpha
+ );
+
+- struct r2pos TextReportGadget :: GetPos_Rel
++ struct r2pos GetPos_Rel
+ (
+ const struct r2rect& R2Rect_Parent
+ ) const;
+
+- r2size TextReportGadget :: GetSize
++ r2size GetSize
+ (
+ const struct r2rect& R2Rect_Parent
+ ) const;
+diff -ur avp.orig/avp/win95/projload.hpp avp/avp/win95/projload.hpp
+--- avp.orig/avp/win95/projload.hpp 2001-08-03 06:30:40.000000000 +0100
++++ avp/avp/win95/projload.hpp 2006-09-18 23:38:01.000000000 +0100
+@@ -54,6 +54,8 @@
+ struct hierarchy_variant_data;
+ };
+
++class File_Chunk;
++
+ class Global_Hierarchy_Store
+ {
+
+diff -ur avp.orig/Makefile avp/Makefile
+--- avp.orig/Makefile 2003-10-15 07:10:42.000000000 +0100
++++ avp/Makefile 2006-09-18 22:45:49.000000000 +0100
+@@ -12,7 +12,7 @@
+ CFLAGS += $(shell sdl-config --cflags)
+ CXXFLAGS = $(CFLAGS)
+
+-LDLIBS = $(shell sdl-config --libs) -lopenal
++LDFLAGS += $(shell sdl-config --libs) $(shell openal-config --libdir)/libopenal.a
+
+ AFLAGS = -g -w+macro-params -w+orphan-labels -w+number-overflow
+
+@@ -56,7 +56,7 @@
+ all: AvP
+
+ AvP: $(OBJ) # depend $(OBJ)
+- $(CXX) -o AvP $(OBJ) $(LDLIBS)
++ $(CXX) -o AvP $(OBJ) $(LDFLAGS)
+
+ compile: $(OBJ)
+
+diff -ur avp.orig/openal.c avp/openal.c
+--- avp.orig/openal.c 2003-08-10 03:38:08.000000000 +0100
++++ avp/openal.c 2006-09-18 23:50:23.000000000 +0100
+@@ -5,7 +5,6 @@
+
+ #include <AL/al.h>
+ #include <AL/alc.h>
+-#include <AL/alut.h>
+
+ #include <SDL/SDL_audio.h> // For a few defines (AUDIO_*)
+
+diff -ur avp.orig/win95/chnkload.hpp avp/win95/chnkload.hpp
+--- avp.orig/win95/chnkload.hpp 2001-08-07 03:38:43.000000000 +0100
++++ avp/win95/chnkload.hpp 2006-09-18 23:38:01.000000000 +0100
+@@ -41,6 +41,8 @@
+ const ChunkObject* object=0 //object used so that conversion from float to int can be done in world coordinates
+ );
+
++class Sprite_Header_Chunk;
++
+ extern BOOL copy_sprite_to_shapeheader (RIFFHANDLE, SHAPEHEADER *& shphd,Sprite_Header_Chunk* shc, int listpos = GLS_NOTINLIST);
+
+
+diff -ur avp.orig/win95/chunk.hpp avp/win95/chunk.hpp
+--- avp.orig/win95/chunk.hpp 2001-07-28 05:44:27.000000000 +0100
++++ avp/win95/chunk.hpp 2006-09-18 23:38:01.000000000 +0100
+@@ -365,7 +365,7 @@
+ virtual void fill_data_block_for_process(char * data_start);
+
+
+- Chunk* Chunk_With_Children::DynCreate(const char* data);
++ Chunk* DynCreate(const char* data);
+
+ protected:
+
+diff -ur avp.orig/win95/chunkpal.hpp avp/win95/chunkpal.hpp
+--- avp.orig/win95/chunkpal.hpp 2001-12-18 02:23:41.000000000 +0000
++++ avp/win95/chunkpal.hpp 2006-09-18 23:38:01.000000000 +0100
+@@ -549,7 +549,7 @@
+ class Environment_Game_Mode_Chunk;
+ class Environment_Game_Mode_Header_Chunk;
+
+-
++class Environment_Data_Chunk;
+
+ class Environment_Game_Mode_Chunk : public Chunk_With_Children
+ {
+diff -ur avp.orig/win95/hash_tem.hpp avp/win95/hash_tem.hpp
+--- avp.orig/win95/hash_tem.hpp 2003-01-14 05:43:38.000000000 +0000
++++ avp/win95/hash_tem.hpp 2006-09-18 23:38:01.000000000 +0100
+@@ -231,8 +231,13 @@
+ // HashFunction(unsigned), HashFunction(void const *), HashFunction(char const *)
+ // you can disable the default hash functions by defining HT_NODEFAULTFNS
+
++namespace IFF {
++class RegEntry;
++};
++
+ #ifndef HT_NODEFAULTFNS
+ // a hash function for integral (unsigned) values
++ inline unsigned int HashFunction(const IFF::RegEntry& rEntry);
+ inline unsigned HashFunction(unsigned const _i)
+ {
+ return _i ^ _i>>4 ^ _i>>9 ^ _i>>15 ^ _i>>22;
+@@ -418,7 +423,7 @@
+ };
+
+ // a _base_HashTable non-const iterator - can remove entry pointed to
+- class Iterator : public ConstIterator
++ class Iterator : public _base_HashTable::ConstIterator
+ {
+ // Nested class functions apparently have to be declared here for MSVC compatability
+ public:
+diff -ur avp.orig/win95/iff.cpp avp/win95/iff.cpp
+--- avp.orig/win95/iff.cpp 2001-12-06 00:22:49.000000000 +0000
++++ avp/win95/iff.cpp 2006-09-18 23:38:01.000000000 +0100
+@@ -219,7 +219,7 @@
+
+ } // namespace IFF
+
+-inline unsigned HashFunction(IFF::RegEntry const & rEntry)
++inline unsigned int HashFunction(const IFF::RegEntry& rEntry)
+ {
+ return HashFunction(rEntry.m_idChunk.m_nID);
+ }