--- a/src/effect/2xsaimmx.asm +++ b/src/effect/2xsaimmx.asm @@ -2107,3 +2107,7 @@ final1b resb 8 final2a resb 8 final2b resb 8 + +%ifidn __OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif --- a/src/effect/effect_i386.asm +++ b/src/effect/effect_i386.asm @@ -88,3 +88,7 @@ emms endproc + +%ifidn __OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif --- a/src/effect/hq2x16.asm +++ b/src/effect/hq2x16.asm @@ -1935,3 +1935,7 @@ dd ..@cross8, ..@flag0, ..@flag0, ..@flag0, dd ..@flag0, ..@flag0, ..@flag0, ..@flag0 + +%ifidn __OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif --- a/src/effect/hq3x16.asm +++ b/src/effect/hq3x16.asm @@ -2520,3 +2520,7 @@ dd ..@cross8, ..@flag0, ..@flag0, ..@flag0, dd ..@flag0, ..@flag0, ..@flag0, ..@flag0 + +%ifidn __OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif --- a/src/memcpy.S +++ b/src/memcpy.S @@ -495,4 +495,8 @@ Lmemcpy_bsrcul1l4: add r1, r1, #1 -b Lmemcpy_bl4 \ No newline at end of file +b Lmemcpy_bl4 + +#ifdef __ELF__ +.section .note.GNU-stack,"",@progbits +#endif --- a/src/raze/Makefile.am +++ b/src/raze/Makefile.am @@ -20,7 +20,7 @@ $(srcdir)/strip_ $< $@ raze2.asm: raze.asmu raze.incu raze.regu - nasm -w+orphan-labels -I $(srcdir)/ -e $< -o $@ + nasm -w+orphan-labels -f elf -I $(srcdir)/ -e $< -o $@ # This assembles the file, once it's been pre-processed raze.o: raze2.asm --- a/src/raze/raze.asm +++ b/src/raze/raze.asm @@ -4259,3 +4259,6 @@ ;- the end ------------------------------------------------------------------; +%ifidn ___OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif --- a/src/screen_i386.asm +++ b/src/screen_i386.asm @@ -96,3 +96,6 @@ endproc +%ifidn __OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif --- a/src/star/star.c +++ b/src/star/star.c @@ -2431,6 +2431,10 @@ */ static void suffixes(void) { emit("end\n"); + + emit("%%ifidn ___OUTPUT_FORMAT__,elf\n"); + emit("section .note.GNU-stack noalloc noexec nowrite progbits\n"); + emit("%%endif\n"); } /**************************************************************************** --- a/src/video_i386.asm +++ b/src/video_i386.asm @@ -86,3 +86,7 @@ popa endproc + +%ifidn __OUTPUT_FORMAT__,elf +section .note.GNU-stack noalloc noexec nowrite progbits +%endif