On Sat, Dec 31, 2016 at 12:39:31PM +0000, Stuart Henderson wrote:

> > cc -DHAVE_CONFIG_H -DUSE_LSB -DUSE_ASM_INLINE -DUSE_ASM_EMUMIPS3 -O2 -pipe 
> > -DNDEBUG -D_REENTRANT -I./advance/osd -I./advance/lib -I./advance/blit 
> > -I./advance/linux -DADV_DATADIR=\"/usr/local/share/advance\" 
> > -DADV_SYSCONFDIR=\"/etc\" -DUSE_VIDEO_NONE -DUSE_SOUND_NONE 
> > -DUSE_KEYBOARD_NONE -DUSE_MOUSE_NONE -DUSE_JOYSTICK_NONE -DUSE_LCD 
> > -DUSE_SMP -I/usr/local/include -I/usr/local/include/SDL -D_GNU_SOURCE=1 
> > -D_REENTRANT -I/usr/X11R6/include -DXTHREADS -I./advance/sdl 
> > -DUSE_VIDEO_SDL -DUSE_SOUND_SDL -DUSE_KEYBOARD_SDL -DUSE_MOUSE_SDL 
> > -DUSE_JOYSTICK_SDL  -I/usr/X11R6/include/freetype2 -DUSE_FREETYPE 
> > -DUSE_MOUSE_RAW -DADV_VERSION=\"3.0\" -DADV_EMU -c advance/blit/blit.c -o 
> > obj/mame/generic/blend/advance/blit/blit.o
> > advance/blit/vpalette.h: In function 'video_line_palette16to8_asm':
> > advance/blit/vpalette.h:347: error: can't find a register in class 
> > 'GENERAL_REGS' while reloading 'asm'
> > advance/blit/vpalette.h:347: error: 'asm' operand has impossible constraints
> > ===> Exiting emulators/advancemame with an error
> 
> advancemess has the same build problem, and I see what's triggering it now:
> if nasm is installed then things fail on i386.

Indeed, thanks for diagnosing and reporting the issue Stuart.

Here is a diff to disable assembly code on i386 for advancemame and
advancemess.

When nasm is installed, assembly optimized code is enabled at configure
time on i386, and compilation fails. This code only exists for i386,
so disabling it globally using CONFIGURE_ARGS does not affect other
architectures.

Comments? OK?

Index: emulators/advancemame/Makefile
===================================================================
RCS file: /cvs/ports/emulators/advancemame/Makefile,v
retrieving revision 1.3
diff -u -p -r1.3 Makefile
--- emulators/advancemame/Makefile      5 Dec 2016 10:05:39 -0000       1.3
+++ emulators/advancemame/Makefile      1 Jan 2017 19:44:35 -0000
@@ -4,6 +4,7 @@ COMMENT =       MAME port with advanced video 
 
 V =            3.0
 DISTNAME =     advancemame-$V
+REVISION =     0
 
 CATEGORIES =   emulators games
 
@@ -23,6 +24,9 @@ MASTER_SITES =        https://github.com/amadva
 LIB_DEPENDS =  devel/sdl
 
 CONFIGURE_STYLE = gnu
+
+CONFIGURE_ARGS += --disable-asm \
+                 --disable-asm-mips3
 
 USE_GMAKE =    Yes
 
Index: emulators/advancemess/Makefile
===================================================================
RCS file: /cvs/ports/emulators/advancemess/Makefile,v
retrieving revision 1.2
diff -u -p -r1.2 Makefile
--- emulators/advancemess/Makefile      16 Dec 2016 21:24:54 -0000      1.2
+++ emulators/advancemess/Makefile      1 Jan 2017 19:44:35 -0000
@@ -2,9 +2,10 @@
 
 COMMENT =      MESS port with advanced video support for monitors and TVs
 
-V =             3.0
-DISTNAME =      advancemame-$V
-PKGNAME =       advancemess-$V
+V =            3.0
+DISTNAME =     advancemame-$V
+PKGNAME =      advancemess-$V
+REVISION =     0
 
 CATEGORIES =   emulators games
 
@@ -25,7 +26,9 @@ LIB_DEPENDS = devel/sdl
 
 CONFIGURE_STYLE = gnu
 
-CONFIGURE_ARGS += --with-emu=mess
+CONFIGURE_ARGS += --with-emu=mess \
+                 --disable-asm \
+                 --disable-asm-mips3
 
 USE_GMAKE =    Yes
 

Reply via email to