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 macho"
;; ;;
*) *)
NASMFLAGS="-f elf" NASMFLAGS="-f elf32"
;; ;;
esac esac
fi fi
AC_PATH_PROG(NASM, nasm) 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 "section .note.GNU-stack noalloc noexec nowrite progbits" >> unquoted-sections
echo "%endif" >> unquoted-sections echo "%endif" >> unquoted-sections
CompileNASM unquoted-sections || NASM="" CompileNASM unquoted-sections || NASM=""

View file

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

View file

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

View file

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

View file

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

View file

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