nasm 2.09 compatibility

nasm-2.09 makes `elf' alias to `elf32', thus __OUTPUT_FORMAT__ macro
becomes `elf32' instead of `elf' (on x86). Unmatched macro value causes
omitting .note.GNU-stack marker and creates ELFs with executable stack.
This is unneeded and attracts security policies like SELinux.

--HG--
branch : SDL-1.2
This commit is contained in:
Sam Lantinga 2011-02-24 09:39:23 -08:00
parent eff699e265
commit ae48cd353d
6 changed files with 7 additions and 7 deletions

View file

@ -740,13 +740,13 @@ AC_HELP_STRING([--enable-nasm], [use nasm assembly blitters on x86 [[default=yes
NASMFLAGS="-f macho"
;;
*)
NASMFLAGS="-f elf"
NASMFLAGS="-f elf32"
;;
esac
fi
AC_PATH_PROG(NASM, nasm)
echo "%ifidn __OUTPUT_FORMAT__,elf" > unquoted-sections
echo "%ifidn __OUTPUT_FORMAT__,elf32" > unquoted-sections
echo "section .note.GNU-stack noalloc noexec nowrite progbits" >> unquoted-sections
echo "%endif" >> unquoted-sections
CompileNASM unquoted-sections || NASM=""

View file

@ -69,6 +69,6 @@ endconvert:
ret
%ifidn __OUTPUT_FORMAT__,elf
%ifidn __OUTPUT_FORMAT__,elf32
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -400,6 +400,6 @@ _convert_bgr555_cheat:
.L4:
retn
%ifidn __OUTPUT_FORMAT__,elf
%ifidn __OUTPUT_FORMAT__,elf32
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -70,6 +70,6 @@ endconvert:
%ifidn __OUTPUT_FORMAT__,elf
%ifidn __OUTPUT_FORMAT__,elf32
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -485,6 +485,6 @@ _ConvertX86p16_8RGB332:
.L7 pop ebp
retn
%ifidn __OUTPUT_FORMAT__,elf
%ifidn __OUTPUT_FORMAT__,elf32
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -1040,6 +1040,6 @@ _ConvertX86p32_8RGB332:
.L4:
retn
%ifidn __OUTPUT_FORMAT__,elf
%ifidn __OUTPUT_FORMAT__,elf32
section .note.GNU-stack noalloc noexec nowrite progbits
%endif