Merged r3042:3043 from branches/SDL-1.2: legacy yasm fix.
--HG-- extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%402329
This commit is contained in:
parent
152b74331d
commit
3ed9f2bf42
1 changed files with 40 additions and 22 deletions
62
configure.in
62
configure.in
|
@ -641,38 +641,56 @@ CheckNASM()
|
|||
AC_HELP_STRING([--enable-nasm], [use nasm assembly blitters on x86 [[default=yes]]]),
|
||||
, enable_nasm=yes)
|
||||
if test x$enable_video = xyes -a x$enable_assembly = xyes -a x$enable_nasm = xyes; then
|
||||
CompileNASM()
|
||||
{
|
||||
# Usage: CompileNASM <filename>
|
||||
AC_MSG_CHECKING(to see if $NASM supports $1)
|
||||
if $NASM $NASMFLAGS $1 -o $1.o >&AS_MESSAGE_LOG_FD 2>&1; then
|
||||
CompileNASM_ret="yes"
|
||||
else
|
||||
CompileNASM_ret="no"
|
||||
fi
|
||||
rm -f $1 $1.o
|
||||
AC_MSG_RESULT($CompileNASM_ret)
|
||||
test "$CompileNASM_ret" = "yes"
|
||||
}
|
||||
|
||||
if test x"$NASMFLAGS" = x; then
|
||||
case $ARCH in
|
||||
win32)
|
||||
NASMFLAGS="-f win32"
|
||||
;;
|
||||
openbsd)
|
||||
NASMFLAGS="-f aoutb"
|
||||
;;
|
||||
macosx)
|
||||
NASMFLAGS="-f macho"
|
||||
;;
|
||||
*)
|
||||
NASMFLAGS="-f elf"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
AC_PATH_PROG(NASM, yasm)
|
||||
echo "%ifidn __OUTPUT_FORMAT__,elf" > unquoted-sections
|
||||
echo "section .note.GNU-stack noalloc noexec nowrite progbits" >> unquoted-sections
|
||||
echo "%endif" >> unquoted-sections
|
||||
CompileNASM unquoted-sections || NASM=""
|
||||
|
||||
if test "x$NASM" = x -o "x$NASM" = x'"$NASM"'; then
|
||||
$as_unset ac_cv_path_NASM
|
||||
AC_PATH_PROG(NASM, nasm)
|
||||
fi
|
||||
if test "x$NASM" != x -a "x$NASM" != x'"$NASM"'; then
|
||||
AC_DEFINE(SDL_HERMES_BLITTERS)
|
||||
SOURCES="$SOURCES $srcdir/src/hermes/*.asm"
|
||||
if test x"$NASMFLAGS" = x; then
|
||||
case $ARCH in
|
||||
win32)
|
||||
NASMFLAGS="-f win32"
|
||||
;;
|
||||
openbsd)
|
||||
NASMFLAGS="-f aoutb"
|
||||
;;
|
||||
macosx)
|
||||
NASMFLAGS="-f macho"
|
||||
;;
|
||||
*)
|
||||
NASMFLAGS="-f elf"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
NASMFLAGS="$NASMFLAGS -i $srcdir/src/hermes/"
|
||||
|
||||
dnl See if hidden visibility is supported
|
||||
echo "GLOBAL _bar:function hidden" > nasm_vis.asm
|
||||
echo "_bar:" >>nasm_vis.asm
|
||||
if $NASM $NASMFLAGS nasm_vis.asm -o nasm_vis.o >&AS_MESSAGE_LOG_FD 2>&1; then
|
||||
NASMFLAGS="$NASMFLAGS -DHIDDEN_VISIBILITY"
|
||||
fi
|
||||
rm -f nasm_vis.asm nasm_vis.o
|
||||
echo "GLOBAL _bar:function hidden" > symbol-visibility
|
||||
echo "_bar:" >> symbol-visibility
|
||||
CompileNASM symbol-visibility && NASMFLAGS="$NASMFLAGS -DHIDDEN_VISIBILITY"
|
||||
|
||||
AC_SUBST(NASM)
|
||||
AC_SUBST(NASMFLAGS)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue