Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 May 2005 21:17:04 +0200
From:      Miguel Mendez <flynn@energyhq.es.eu.org>
To:        Volker Stolz <vs@FreeBSD.org>
Cc:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/81171: [Maintainer Update] emulators/xmame to 0.96
Message-ID:  <20050519211704.1890f1fd.flynn@energyhq.es.eu.org>
In-Reply-To: <200505181613.j4IGDA0F024781@freefall.freebsd.org>
References:  <200505181613.j4IGDA0F024781@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 18 May 2005 16:13:10 GMT
Volker Stolz <vs@FreeBSD.org> wrote:

> On 4.11:
> [OSDEPEND] Compiling src/unix/blit/blit_16_24.c ...
> In file included from src/unix/blit/blit_16_24.c:34:
> src/unix/blit/advance/xq2x.h: In function `blit_lq2x_16_24':
> src/unix/blit/advance/xq2x.h:222: virtual memory exhausted
> cpp0: output pipe has been closed
> gmake: *** [xmame.obj/unix.SDL/blit/blit_16_24.o] Error 1

Okay, this is interesting. 0.95 seems to build fine on the ports
cluster, so bear with me for a second...

flynn@scienide% diff -ruN xmame-0.95/src/unix/blit xmame-0.96/src/unix/
blit diff -ruN xmame-0.95/src/unix/blit/pixel_defs.h xmame-0.96/src/
unix/blit/pixel_defs.h --- xmame-0.95/src/unix/blit pixel_defs.h
Tue Mar 29 06:20:18 2005 +++ xmame-0.96/src/unix/blit/
pixel_defs.h       Wed May  4 00:26:28 2005 @@ -10,9 +10,9 @@
                                     (((p) & 0x000000F8) >> 3))
 
 #define RGB2YUV(r,g,b,y,u,v) \
-    (y) = ((  9836*(r) + 19310*(g) +  3750*(b)          ) >> 15); \
-    (u) = (( -5527*(r) - 10921*(g) + 16448*(b) + 4194304) >> 15); \
-    (v) = (( 16448*(r) - 13783*(g) -  2665*(b) + 4194304) >> 15)
+    (y) = ((  8453*(r) + 16594*(g) +  3223*(b) +  524288) >> 15); \
+    (u) = (( -4878*(r) -  9578*(g) + 14456*(b) + 4210688) >> 15); \
+    (v) = (( 14456*(r) - 12105*(g) -  2351*(b) + 4210688) >> 15)
 
 #ifdef LSB_FIRST    
 #define Y1MASK  0x000000FF

That's all that has changed from 0.95 to 0.96. Now, and this is the
tricky part, gcc 2.95 seems to be incredibly inefficient when compiling
the blit* bits (gcc 3.3 to a lesser extent too). The thing is, you can
actually compile this on RELENG_4... if you have 1GiB of total memory.
IIRC the cluster boxen have 1-2 GiBs, so that's why the problem went
unnoticed so far. How much memory does the box where you tried have?

So basically we have two options: Add a HEADS UP message informing
about the huge memory requirements (why hasn't anybody complained yet?)
or have this port build with gcc3.x, at least optionally. What do you
think? I'm not even sure the xmame guys support using gcc < 3.x

Cheers,
-- 
Miguel Mendez <flynn@energyhq.es.eu.org>
http://www.energyhq.es.eu.org
PGP Key: 0xDC8514F1



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050519211704.1890f1fd.flynn>