diff options
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/configure.in b/configure.in index ea57241230..e3b57d4b94 100644 --- a/configure.in +++ b/configure.in @@ -1555,13 +1555,17 @@ AS_CASE(["$target_cpu-$target_os"], [[i[3-6]86*]], [ if test "$rb_cv_gcc_compiler_cas" = no; then unset rb_cv_gcc_compiler_cas ARCH_FLAG="-march=i486" + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -march=i486" AC_CACHE_CHECK([for __sync_val_compare_and_swap with -march=i486], [rb_cv_gcc_compiler_cas], [ AC_TRY_LINK([unsigned long atomic_var;], [ __sync_val_compare_and_swap(&atomic_var, 0, 1); ], - [rb_cv_gcc_compiler_cas=yes], - [rb_cv_gcc_compiler_cas=no; unset ARCH_FLAG])]) + [rb_cv_gcc_compiler_cas=yes + ARCH_FLAG="-march=i486"], + [rb_cv_gcc_compiler_cas=no])]) + CFLAGS="$save_CFLAGS" fi]) AC_CACHE_CHECK(for signbit, rb_cv_have_signbit, |