Commit 3ed9f2bf authored by Ryan C. Gordon's avatar Ryan C. Gordon

Merged r3042:3043 from branches/SDL-1.2: legacy yasm fix.

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%402329
parent 152b7433
......@@ -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)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment