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
