This is the mail archive of the
libffi-discuss@sourceware.org
mailing list for the libffi project.
[patch] Check for libffi_cv_as_x86_pcrel should not look for just "warning"
- From: Rafael Avila de Espindola <respindola at mozilla dot com>
- To: libffi-discuss at sourceware dot org
- Date: Fri, 04 Feb 2011 15:35:10 -0500
- Subject: [patch] Check for libffi_cv_as_x86_pcrel should not look for just "warning"
The check that sets libffi_cv_as_x86_pcrel currently check for "warning"
or "illegal". The problem is that when trying to build libffi with LTO
clang will produce the warning
clang: warning: argument unused during compilation: '-emit-llvm'
The attached patch just uses the $CC error code instead. Is that OK or
is there some strange assembler out there that rejects the assembly bug
exists with 0?
Cheers,
Rafael
diff --git a/configure b/configure
index e086c65..a1c5ec8 100755
--- a/configure
+++ b/configure
@@ -14506,10 +14506,10 @@ if test "${libffi_cv_as_x86_pcrel+set}" = set; then
$as_echo_n "(cached) " >&6
else
- libffi_cv_as_x86_pcrel=yes
+ libffi_cv_as_x86_pcrel=no
echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s
- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then
- libffi_cv_as_x86_pcrel=no
+ if $CC $CFLAGS -c conftest.s > /dev/null; then
+ libffi_cv_as_x86_pcrel=yes
fi
fi
diff --git a/configure.ac b/configure.ac
index c7cead8..c12c858 100644
--- a/configure.ac
+++ b/configure.ac
@@ -276,10 +276,10 @@ fi
if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64; then
AC_CACHE_CHECK([assembler supports pc related relocs],
libffi_cv_as_x86_pcrel, [
- libffi_cv_as_x86_pcrel=yes
+ libffi_cv_as_x86_pcrel=no
echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s
- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then
- libffi_cv_as_x86_pcrel=no
+ if $CC $CFLAGS -c conftest.s > /dev/null; then
+ libffi_cv_as_x86_pcrel=yes
fi
])
if test "x$libffi_cv_as_x86_pcrel" = xyes; then