I get an error while merging games-emulation/gngeo-0.7. I can reduce the problem to the patch "gngeo-0.7-execstacks.patch". Reproducible: Always Steps to Reproduce: emerge games-emulation/gngeo-0.7 Actual Results: ... i686-pc-linux-gnu-gcc -O2 -march=athlon64 -pipe -Wall -Wno-unused -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DI386_ASM -DUSE_STARSCREAM -DUSE_RAZE -Wl,-O1 -o gngeo fileio.o pd4990a.o streams.o video.o profiler.o main.o star_interf.o memory.o mamez80_interf.o raze_interf.o timer.o frame_skip.o messages.o screen.o emu.o unzip.o neocrypt.o sound.o generator68k_interf.o debug.o state.o conf.o transpack.o pbar.o driver.o list.o gui_interf.o videogl.o cyclone_interf.o gp2x.o drz80_interf.o menu.o effect/libeffect.a blitter/libblitter.a ym2610/libym2610.a star/libstar.a raze/libraze.a screen_i386.o video_i386.o -lSDL_image -lSDL -lz -lm -lSDL -lpthread video.o: In function `draw_screen_scanline': video.c:(.text+0x1431): undefined reference to `draw_scanline_tile_i386_norm' video.c:(.text+0x150a): undefined reference to `draw_scanline_tile_i386_50' video.c:(.text+0x1eba): undefined reference to `draw_one_char_i386' video.o: In function `draw_screen': video.c:(.text+0x9eb3): undefined reference to `draw_tile_i386_norm' video.c:(.text+0xa035): undefined reference to `draw_tile_i386_50' video.c:(.text+0xa1c3): undefined reference to `draw_one_char_i386' screen.o: In function `screen_update': screen.c:(.text+0x24a): undefined reference to `do_inner_interpolation_i386' effect/libeffect.a(scanline.o): In function `effect_doublex_update': scanline.c:(.text+0x22c): undefined reference to `do_inner_doublex_i386' collect2: ld returned 1 exit status make[3]: *** [gngeo] Error 1 make[3]: Leaving directory `/var/tmp/portage/games-emulation/gngeo-0.7/work/gngeo-0.7/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/games-emulation/gngeo-0.7/work/gngeo-0.7/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/games-emulation/gngeo-0.7/work/gngeo-0.7' make: *** [all] Error 2 * * ERROR: games-emulation/gngeo-0.7 failed. Expected Results: Compiling without errors ;-) sys-devel/gcc-4.3.2 dev-lang/nasm-2.05.01 CHOST="i686-pc-linux-gnu" When I edit the ebuild and prevent using the patch "gngeo-0.7-execstacks.patch" all will compile fine.
I can confirm this behavior with current stable gcc for x86.
Doesn't work with the latest nasm so I disabled the x86 asm stuff for now.