Your message dated Sat, 19 Apr 2008 13:27:12 +0200
with message-id <[EMAIL PROTECTED]>
and subject line quake2: #297255 done
has caused the Debian Bug report #297255,
regarding quake2: FTBFS (amd64/gcc-4.0): pointer targets in passing argument 2
of 'ao_play' differ in signedness
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)
--
297255: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=297255
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: quake2
Severity: normal
Tags: patch
When building 'quake2' on amd64 with gcc-4.0,
I get the following error:
gcc -DHAVE_CONFIG_H -I. -I. -I.. -pipe -Wall -Werror -ffast-math
-funroll-loops -fomit-frame-pointer -fexpensive-optimizations -fPIC -O2 -MT
snd_oss_la-snd_oss.lo -MD -MP -MF .deps/snd_oss_la-snd_oss.Tpo -c snd_oss.c
-fPIC -DPIC -o .libs/snd_oss_la-snd_oss.o
/bin/sh ../libtool --mode=link gcc -O2 -o snd_oss.la -module -avoid-version
-rpath /usr/lib/games/quake2 snd_oss_la-snd_oss.lo
gcc -shared .libs/snd_oss_la-snd_oss.o -Wl,-soname -Wl,snd_oss.so -o
.libs/snd_oss.so
creating snd_oss.la
(cd .libs && rm -f snd_oss.la && ln -s ../snd_oss.la snd_oss.la)
if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -pipe
-Wall -Werror -ffast-math -funroll-loops -fomit-frame-pointer
-fexpensive-optimizations -fPIC -O2 -MT snd_ao_la-snd_ao.lo -MD -MP -MF
".deps/snd_ao_la-snd_ao.Tpo" -c -o snd_ao_la-snd_ao.lo `test -f 'snd_ao.c' ||
echo './'`snd_ao.c; \
then mv -f ".deps/snd_ao_la-snd_ao.Tpo" ".deps/snd_ao_la-snd_ao.Plo"; else rm
-f ".deps/snd_ao_la-snd_ao.Tpo"; exit 1; fi
gcc -DHAVE_CONFIG_H -I. -I. -I.. -pipe -Wall -Werror -ffast-math
-funroll-loops -fomit-frame-pointer -fexpensive-optimizations -fPIC -O2 -MT
snd_ao_la-snd_ao.lo -MD -MP -MF .deps/snd_ao_la-snd_ao.Tpo -c snd_ao.c -fPIC
-DPIC -o .libs/snd_ao_la-snd_ao.o
cc1: warnings being treated as errors
snd_ao.c: In function 'SNDDMA_Submit':
snd_ao.c:160: warning: pointer targets in passing argument 2 of 'ao_play'
differ in signedness
make[4]: *** [snd_ao_la-snd_ao.lo] Error 1
make[4]: Leaving directory `/quake2-0.3/src'
With the attached patch 'quake2' can be compiled
on amd64 using gcc-4.0.
Regards
Andreas Jochens
diff -urN ../tmp-orig/quake2-0.3/src/snd_alsa.c ./src/snd_alsa.c
--- ../tmp-orig/quake2-0.3/src/snd_alsa.c 2004-03-15 02:25:43.000000000
+0000
+++ ./src/snd_alsa.c 2005-02-28 10:11:02.466968729 +0000
@@ -104,7 +104,7 @@
int test = tryrates[i];
if ((err = snd_pcm_hw_params_set_rate_near(pcm_handle, hw_params,
- &test, &dir)) < 0) {
+ (unsigned *)&test,
&dir)) < 0) {
si->Com_Printf("ALSA snd error, cannot set sample rate %d
(%s)\n",
tryrates[i], snd_strerror(err));
} else {
diff -urN ../tmp-orig/quake2-0.3/src/snd_ao.c ./src/snd_ao.c
--- ../tmp-orig/quake2-0.3/src/snd_ao.c 2004-03-15 02:25:43.000000000 +0000
+++ ./src/snd_ao.c 2005-02-28 10:10:18.500455077 +0000
@@ -157,7 +157,7 @@
/* ao_play returns success, not number of samples successfully output
* unlike alsa or arts, so we can only assume that the whole buffer
* made it out... though this makes updating si->dma->samplepos easy */
- if (ao_play(device, si->dma->buffer, si->dma->samples * samplesize) == 0) {
+ if (ao_play(device, (char*)si->dma->buffer, si->dma->samples * samplesize)
== 0) {
Com_Printf("W: error occurred while playing buffer\n");
ao_close(device);
ao_shutdown();
diff -urN ../tmp-orig/quake2-0.3/src/snd_mix.c ./src/snd_mix.c
--- ../tmp-orig/quake2-0.3/src/snd_mix.c 2002-07-13 02:02:00.000000000
+0000
+++ ./src/snd_mix.c 2005-02-28 10:13:58.739944793 +0000
@@ -449,7 +449,7 @@
//as it would always be zero.
lscale = snd_scaletable[ ch->leftvol >> 3];
rscale = snd_scaletable[ ch->rightvol >> 3];
- sfx = (signed char *)sc->data + ch->pos;
+ sfx = (unsigned char *)sc->data + ch->pos;
samp = &paintbuffer[offset];
--- End Message ---
--- Begin Message ---
--- End Message ---