newlib: libm: switch to autoconf long double macro
Now that we require a recent version of autoconf, we can rely on this macro working. We shift the call in configure.ac down a little to help keep the generated diff minimal -- there should be no functional difference otherwise. This is because the autoconf macros will call a bunch of standard toolchain macros first, and arguably the current code is incorrect in how it does its testing.
This commit is contained in:
parent
0f29c6fc3c
commit
6783cceb0a
|
@ -635,6 +635,8 @@ am__EXEEXT_TRUE
|
||||||
LTLIBOBJS
|
LTLIBOBJS
|
||||||
LIBOBJS
|
LIBOBJS
|
||||||
LIBM_MACHINE_LIB
|
LIBM_MACHINE_LIB
|
||||||
|
HAVE_LONG_DOUBLE_FALSE
|
||||||
|
HAVE_LONG_DOUBLE_TRUE
|
||||||
subdirs
|
subdirs
|
||||||
CPP
|
CPP
|
||||||
OTOOL64
|
OTOOL64
|
||||||
|
@ -739,8 +741,6 @@ build
|
||||||
newlib_basedir
|
newlib_basedir
|
||||||
MAY_SUPPLY_SYSCALLS_FALSE
|
MAY_SUPPLY_SYSCALLS_FALSE
|
||||||
MAY_SUPPLY_SYSCALLS_TRUE
|
MAY_SUPPLY_SYSCALLS_TRUE
|
||||||
HAVE_LONG_DOUBLE_FALSE
|
|
||||||
HAVE_LONG_DOUBLE_TRUE
|
|
||||||
NEWLIB_HW_FP_FALSE
|
NEWLIB_HW_FP_FALSE
|
||||||
NEWLIB_HW_FP_TRUE
|
NEWLIB_HW_FP_TRUE
|
||||||
target_alias
|
target_alias
|
||||||
|
@ -2194,41 +2194,6 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking long double support" >&5
|
|
||||||
$as_echo_n "checking Checking long double support... " >&6; }
|
|
||||||
if ${acnewlib_cv_type_long_double+:} false; then :
|
|
||||||
$as_echo_n "(cached) " >&6
|
|
||||||
else
|
|
||||||
cat > conftest.c <<EOF
|
|
||||||
int main() {
|
|
||||||
long double x = 0.0L;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
if { ac_try='${CC} $CFLAGS $CPPFLAGS -c conftest.c 1>&5'
|
|
||||||
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
|
||||||
(eval $ac_try) 2>&5
|
|
||||||
ac_status=$?
|
|
||||||
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
|
||||||
test $ac_status = 0; }; }
|
|
||||||
then
|
|
||||||
acnewlib_cv_type_long_double=yes
|
|
||||||
else
|
|
||||||
acnewlib_cv_type_long_double=no
|
|
||||||
fi
|
|
||||||
rm -f conftest*
|
|
||||||
fi
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acnewlib_cv_type_long_double" >&5
|
|
||||||
$as_echo "$acnewlib_cv_type_long_double" >&6; }
|
|
||||||
if test x"$acnewlib_cv_type_long_double" = x"yes"; then
|
|
||||||
HAVE_LONG_DOUBLE_TRUE=
|
|
||||||
HAVE_LONG_DOUBLE_FALSE='#'
|
|
||||||
else
|
|
||||||
HAVE_LONG_DOUBLE_TRUE='#'
|
|
||||||
HAVE_LONG_DOUBLE_FALSE=
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
ac_aux_dir=
|
ac_aux_dir=
|
||||||
for ac_dir in ../.. "$srcdir"/../..; do
|
for ac_dir in ../.. "$srcdir"/../..; do
|
||||||
if test -f "$ac_dir/install-sh"; then
|
if test -f "$ac_dir/install-sh"; then
|
||||||
|
@ -11651,7 +11616,7 @@ else
|
||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<_LT_EOF
|
cat > conftest.$ac_ext <<_LT_EOF
|
||||||
#line 11654 "configure"
|
#line 11619 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
|
@ -11757,7 +11722,7 @@ else
|
||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<_LT_EOF
|
cat > conftest.$ac_ext <<_LT_EOF
|
||||||
#line 11760 "configure"
|
#line 11725 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
|
@ -12001,6 +11966,57 @@ fi
|
||||||
subdirs="$subdirs machine"
|
subdirs="$subdirs machine"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long double" >&5
|
||||||
|
$as_echo_n "checking for long double... " >&6; }
|
||||||
|
if ${ac_cv_type_long_double+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test "$GCC" = yes; then
|
||||||
|
ac_cv_type_long_double=yes
|
||||||
|
else
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
/* The Stardent Vistra knows sizeof (long double), but does
|
||||||
|
not support it. */
|
||||||
|
long double foo = 0.0L;
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
static int test_array [1 - 2 * !(/* On Ultrix 4.3 cc, long double is 4 and double is 8. */
|
||||||
|
sizeof (double) <= sizeof (long double))];
|
||||||
|
test_array [0] = 0;
|
||||||
|
return test_array [0];
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
ac_cv_type_long_double=yes
|
||||||
|
else
|
||||||
|
ac_cv_type_long_double=no
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_double" >&5
|
||||||
|
$as_echo "$ac_cv_type_long_double" >&6; }
|
||||||
|
if test $ac_cv_type_long_double = yes; then
|
||||||
|
|
||||||
|
$as_echo "#define HAVE_LONG_DOUBLE 1" >>confdefs.h
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test x"$ac_cv_type_long_double" = x"yes"; then
|
||||||
|
HAVE_LONG_DOUBLE_TRUE=
|
||||||
|
HAVE_LONG_DOUBLE_FALSE='#'
|
||||||
|
else
|
||||||
|
HAVE_LONG_DOUBLE_TRUE='#'
|
||||||
|
HAVE_LONG_DOUBLE_FALSE=
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
LIBM_MACHINE_LIB=
|
LIBM_MACHINE_LIB=
|
||||||
if test -n "${libm_machine_dir}"; then
|
if test -n "${libm_machine_dir}"; then
|
||||||
if test "${use_libtool}" = "yes"; then
|
if test "${use_libtool}" = "yes"; then
|
||||||
|
@ -12163,10 +12179,6 @@ if test -z "${NEWLIB_HW_FP_TRUE}" && test -z "${NEWLIB_HW_FP_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"NEWLIB_HW_FP\" was never defined.
|
as_fn_error $? "conditional \"NEWLIB_HW_FP\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
if test -z "${HAVE_LONG_DOUBLE_TRUE}" && test -z "${HAVE_LONG_DOUBLE_FALSE}"; then
|
|
||||||
as_fn_error $? "conditional \"HAVE_LONG_DOUBLE\" was never defined.
|
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
|
||||||
fi
|
|
||||||
if test -z "${MAY_SUPPLY_SYSCALLS_TRUE}" && test -z "${MAY_SUPPLY_SYSCALLS_FALSE}"; then
|
if test -z "${MAY_SUPPLY_SYSCALLS_TRUE}" && test -z "${MAY_SUPPLY_SYSCALLS_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"MAY_SUPPLY_SYSCALLS\" was never defined.
|
as_fn_error $? "conditional \"MAY_SUPPLY_SYSCALLS\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
|
@ -12227,6 +12239,10 @@ if test -z "${USE_LIBTOOL_TRUE}" && test -z "${USE_LIBTOOL_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"USE_LIBTOOL\" was never defined.
|
as_fn_error $? "conditional \"USE_LIBTOOL\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
|
if test -z "${HAVE_LONG_DOUBLE_TRUE}" && test -z "${HAVE_LONG_DOUBLE_FALSE}"; then
|
||||||
|
as_fn_error $? "conditional \"HAVE_LONG_DOUBLE\" was never defined.
|
||||||
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
|
fi
|
||||||
|
|
||||||
: "${CONFIG_STATUS=./config.status}"
|
: "${CONFIG_STATUS=./config.status}"
|
||||||
ac_write_fail=0
|
ac_write_fail=0
|
||||||
|
|
|
@ -13,26 +13,6 @@ AC_ARG_ENABLE(newlib_hw_fp,
|
||||||
esac],[newlib_hw_fp=false])
|
esac],[newlib_hw_fp=false])
|
||||||
AM_CONDITIONAL(NEWLIB_HW_FP, test x$newlib_hw_fp = xtrue)
|
AM_CONDITIONAL(NEWLIB_HW_FP, test x$newlib_hw_fp = xtrue)
|
||||||
|
|
||||||
dnl Autoconf 2.59 doesn't support the AC_TYPE_LONG_DOUBLE macro. Instead of:
|
|
||||||
dnl AC_TYPE_LONG_DOUBLE
|
|
||||||
dnl AM_CONDITIONAL(HAVE_LONG_DOUBLE, test x"$ac_cv_type_long_double" = x"yes")
|
|
||||||
dnl we specify our own long double test.
|
|
||||||
AC_CACHE_CHECK([Checking long double support], [acnewlib_cv_type_long_double],[dnl
|
|
||||||
cat > conftest.c <<EOF
|
|
||||||
int main() {
|
|
||||||
long double x = 0.0L;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
if AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS -c conftest.c 1>&AS_MESSAGE_LOG_FD])
|
|
||||||
then
|
|
||||||
acnewlib_cv_type_long_double=yes
|
|
||||||
else
|
|
||||||
acnewlib_cv_type_long_double=no
|
|
||||||
fi
|
|
||||||
rm -f conftest*])
|
|
||||||
AM_CONDITIONAL(HAVE_LONG_DOUBLE, test x"$acnewlib_cv_type_long_double" = x"yes")
|
|
||||||
|
|
||||||
dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
|
dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
|
||||||
AC_CONFIG_AUX_DIR(../..)
|
AC_CONFIG_AUX_DIR(../..)
|
||||||
|
|
||||||
|
@ -49,6 +29,9 @@ fi
|
||||||
|
|
||||||
AC_CONFIG_SUBDIRS(machine)
|
AC_CONFIG_SUBDIRS(machine)
|
||||||
|
|
||||||
|
AC_TYPE_LONG_DOUBLE
|
||||||
|
AM_CONDITIONAL(HAVE_LONG_DOUBLE, test x"$ac_cv_type_long_double" = x"yes")
|
||||||
|
|
||||||
LIBM_MACHINE_LIB=
|
LIBM_MACHINE_LIB=
|
||||||
if test -n "${libm_machine_dir}"; then
|
if test -n "${libm_machine_dir}"; then
|
||||||
if test "${use_libtool}" = "yes"; then
|
if test "${use_libtool}" = "yes"; then
|
||||||
|
|
Loading…
Reference in New Issue