+2014-03-14 Anthony Green <green@moxielogic.com>
+
+ * configure, Makefile.in: Rebuilt.
+
2014-03-10 Mike Hommey <mh+mozilla@glandium.org>
* configure.ac: Allow building for mipsel with Android NDK r8.
* Makefile.am (AM_MAKEFLAGS): Replace double quotes with single quotes.
+2014-03-10 Landry Breuil <landry@openbsd.org>
+
+ * configure.ac: Ensure the linker supports @unwind sections in libffi.
+
2014-03-01 Anthony Green <green@moxielogic.com>
* Makefile.am (EXTRA_DIST): Replace old scripts with
# values defined in terms of make variables, as is the case for CC and
# friends when we are called from the top level Makefile.
AM_MAKEFLAGS = \
- 'AR_FLAGS=$(AR_FLAGS)' \
- 'CC_FOR_BUILD=$(CC_FOR_BUILD)' \
- 'CFLAGS=$(CFLAGS)' \
- 'CXXFLAGS=$(CXXFLAGS)' \
- 'CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)' \
- 'CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)' \
- 'INSTALL=$(INSTALL)' \
- 'INSTALL_DATA=$(INSTALL_DATA)' \
- 'INSTALL_PROGRAM=$(INSTALL_PROGRAM)' \
- 'INSTALL_SCRIPT=$(INSTALL_SCRIPT)' \
- 'JC1FLAGS=$(JC1FLAGS)' \
- 'LDFLAGS=$(LDFLAGS)' \
- 'LIBCFLAGS=$(LIBCFLAGS)' \
- 'LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)' \
- 'MAKE=$(MAKE)' \
- 'MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)' \
- 'PICFLAG=$(PICFLAG)' \
- 'PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)' \
- 'RUNTESTFLAGS=$(RUNTESTFLAGS)' \
- 'SHELL=$(SHELL)' \
- 'exec_prefix=$(exec_prefix)' \
- 'infodir=$(infodir)' \
- 'libdir=$(libdir)' \
- 'mandir=$(mandir)' \
- 'prefix=$(prefix)' \
- 'AR=$(AR)' \
- 'AS=$(AS)' \
- 'CC=$(CC)' \
- 'CXX=$(CXX)' \
- 'LD=$(LD)' \
- 'NM=$(NM)' \
- 'RANLIB=$(RANLIB)' \
- 'DESTDIR=$(DESTDIR)'
+ "AR_FLAGS=$(AR_FLAGS)" \
+ "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
+ "CFLAGS=$(CFLAGS)" \
+ "CXXFLAGS=$(CXXFLAGS)" \
+ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
+ "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
+ "INSTALL=$(INSTALL)" \
+ "INSTALL_DATA=$(INSTALL_DATA)" \
+ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
+ "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
+ "JC1FLAGS=$(JC1FLAGS)" \
+ "LDFLAGS=$(LDFLAGS)" \
+ "LIBCFLAGS=$(LIBCFLAGS)" \
+ "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
+ "MAKE=$(MAKE)" \
+ "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
+ "PICFLAG=$(PICFLAG)" \
+ "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
+ "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
+ "SHELL=$(SHELL)" \
+ "exec_prefix=$(exec_prefix)" \
+ "infodir=$(infodir)" \
+ "libdir=$(libdir)" \
+ "mandir=$(mandir)" \
+ "prefix=$(prefix)" \
+ "AR=$(AR)" \
+ "AS=$(AS)" \
+ "CC=$(CC)" \
+ "CXX=$(CXX)" \
+ "LD=$(LD)" \
+ "NM=$(NM)" \
+ "RANLIB=$(RANLIB)" \
+ "DESTDIR=$(DESTDIR)"
# Subdir rules rely on $(FLAGS_TO_PASS)
mips-sgi-irix5.* | mips-sgi-irix6.* | mips*-*-rtems*)
TARGET=MIPS; TARGETDIR=mips
;;
- mips*-*-linux* | mips*-*-openbsd*)
+ mips*-*linux* | mips*-*-openbsd*)
# Support 128-bit long double for NewABI.
HAVE_LONG_DOUBLE='defined(__mips64)'
TARGET=MIPS; TARGETDIR=mips
if test x$TARGET = xX86_64; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler supports unwind section type" >&5
-$as_echo_n "checking assembler supports unwind section type... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking toolchain supports unwind section type" >&5
+$as_echo_n "checking toolchain supports unwind section type... " >&6; }
if ${libffi_cv_as_x86_64_unwind_section_type+:} false; then :
$as_echo_n "(cached) " >&6
else
- libffi_cv_as_x86_64_unwind_section_type=yes
- echo '.section .eh_frame,"a",@unwind' > conftest.s
- if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then
- libffi_cv_as_x86_64_unwind_section_type=no
+ cat > conftest1.s << EOF
+.text
+.globl foo
+foo:
+jmp bar
+.section .eh_frame,"a",@unwind
+bar:
+EOF
+
+ cat > conftest2.c << EOF
+extern void foo();
+int main(){foo();}
+EOF
+
+ libffi_cv_as_x86_64_unwind_section_type=no
+ # we ensure that we can compile _and_ link an assembly file containing an @unwind section
+ # since the compiler can support it and not the linker (ie old binutils)
+ if $CC -Wa,--fatal-warnings $CFLAGS -c conftest1.s > /dev/null 2>&1 && \
+ $CC conftest2.c conftest1.o > /dev/null 2>&1 ; then
+ libffi_cv_as_x86_64_unwind_section_type=yes
fi
fi
AC_SUBST(FFI_EXEC_TRAMPOLINE_TABLE)
if test x$TARGET = xX86_64; then
- AC_CACHE_CHECK([assembler supports unwind section type],
+ AC_CACHE_CHECK([toolchain supports unwind section type],
libffi_cv_as_x86_64_unwind_section_type, [
- libffi_cv_as_x86_64_unwind_section_type=yes
- echo '.section .eh_frame,"a",@unwind' > conftest.s
- if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then
- libffi_cv_as_x86_64_unwind_section_type=no
+ cat > conftest1.s << EOF
+.text
+.globl foo
+foo:
+jmp bar
+.section .eh_frame,"a",@unwind
+bar:
+EOF
+
+ cat > conftest2.c << EOF
+extern void foo();
+int main(){foo();}
+EOF
+
+ libffi_cv_as_x86_64_unwind_section_type=no
+ # we ensure that we can compile _and_ link an assembly file containing an @unwind section
+ # since the compiler can support it and not the linker (ie old binutils)
+ if $CC -Wa,--fatal-warnings $CFLAGS -c conftest1.s > /dev/null 2>&1 && \
+ $CC conftest2.c conftest1.o > /dev/null 2>&1 ; then
+ libffi_cv_as_x86_64_unwind_section_type=yes
fi
])
if test "x$libffi_cv_as_x86_64_unwind_section_type" = xyes; then