mirror of https://github.com/python/cpython
closes bpo-33512: use standard for detecting long double (GH-6847)
This commit is contained in:
parent
2a7bacbd91
commit
3055c947f9
|
@ -0,0 +1 @@
|
||||||
|
configure's check for "long double" has been simplified
|
|
@ -779,7 +779,6 @@ infodir
|
||||||
docdir
|
docdir
|
||||||
oldincludedir
|
oldincludedir
|
||||||
includedir
|
includedir
|
||||||
runstatedir
|
|
||||||
localstatedir
|
localstatedir
|
||||||
sharedstatedir
|
sharedstatedir
|
||||||
sysconfdir
|
sysconfdir
|
||||||
|
@ -887,7 +886,6 @@ datadir='${datarootdir}'
|
||||||
sysconfdir='${prefix}/etc'
|
sysconfdir='${prefix}/etc'
|
||||||
sharedstatedir='${prefix}/com'
|
sharedstatedir='${prefix}/com'
|
||||||
localstatedir='${prefix}/var'
|
localstatedir='${prefix}/var'
|
||||||
runstatedir='${localstatedir}/run'
|
|
||||||
includedir='${prefix}/include'
|
includedir='${prefix}/include'
|
||||||
oldincludedir='/usr/include'
|
oldincludedir='/usr/include'
|
||||||
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
||||||
|
@ -1140,15 +1138,6 @@ do
|
||||||
| -silent | --silent | --silen | --sile | --sil)
|
| -silent | --silent | --silen | --sile | --sil)
|
||||||
silent=yes ;;
|
silent=yes ;;
|
||||||
|
|
||||||
-runstatedir | --runstatedir | --runstatedi | --runstated \
|
|
||||||
| --runstate | --runstat | --runsta | --runst | --runs \
|
|
||||||
| --run | --ru | --r)
|
|
||||||
ac_prev=runstatedir ;;
|
|
||||||
-runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
|
|
||||||
| --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
|
|
||||||
| --run=* | --ru=* | --r=*)
|
|
||||||
runstatedir=$ac_optarg ;;
|
|
||||||
|
|
||||||
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
|
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
|
||||||
ac_prev=sbindir ;;
|
ac_prev=sbindir ;;
|
||||||
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
|
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
|
||||||
|
@ -1286,7 +1275,7 @@ fi
|
||||||
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
|
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
|
||||||
datadir sysconfdir sharedstatedir localstatedir includedir \
|
datadir sysconfdir sharedstatedir localstatedir includedir \
|
||||||
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
|
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
|
||||||
libdir localedir mandir runstatedir
|
libdir localedir mandir
|
||||||
do
|
do
|
||||||
eval ac_val=\$$ac_var
|
eval ac_val=\$$ac_var
|
||||||
# Remove trailing slashes.
|
# Remove trailing slashes.
|
||||||
|
@ -1439,7 +1428,6 @@ Fine tuning of the installation directories:
|
||||||
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
||||||
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
||||||
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
||||||
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
|
|
||||||
--libdir=DIR object code libraries [EPREFIX/lib]
|
--libdir=DIR object code libraries [EPREFIX/lib]
|
||||||
--includedir=DIR C header files [PREFIX/include]
|
--includedir=DIR C header files [PREFIX/include]
|
||||||
--oldincludedir=DIR C header files for non-gcc [/usr/include]
|
--oldincludedir=DIR C header files for non-gcc [/usr/include]
|
||||||
|
@ -8603,32 +8591,48 @@ _ACEOF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long double support" >&5
|
|
||||||
$as_echo_n "checking for long double support... " >&6; }
|
|
||||||
have_long_double=no
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
||||||
/* end confdefs.h. */
|
|
||||||
|
|
||||||
|
{ $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
|
int
|
||||||
main ()
|
main ()
|
||||||
{
|
{
|
||||||
long double x; x = (long double)0;
|
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;
|
return 0;
|
||||||
}
|
}
|
||||||
_ACEOF
|
_ACEOF
|
||||||
if ac_fn_c_try_compile "$LINENO"; then :
|
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
|
$as_echo "#define HAVE_LONG_DOUBLE 1" >>confdefs.h
|
||||||
|
|
||||||
have_long_double=yes
|
fi
|
||||||
|
|
||||||
fi
|
|
||||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_long_double" >&5
|
|
||||||
$as_echo "$have_long_double" >&6; }
|
|
||||||
if test "$have_long_double" = yes ; then
|
|
||||||
# The cast to long int works around a bug in the HP C Compiler
|
# The cast to long int works around a bug in the HP C Compiler
|
||||||
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
|
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
|
||||||
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
|
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
|
||||||
|
@ -8662,7 +8666,6 @@ cat >>confdefs.h <<_ACEOF
|
||||||
_ACEOF
|
_ACEOF
|
||||||
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
# The cast to long int works around a bug in the HP C Compiler
|
# The cast to long int works around a bug in the HP C Compiler
|
||||||
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
|
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
|
||||||
|
|
10
configure.ac
10
configure.ac
|
@ -2198,16 +2198,8 @@ AC_CHECK_SIZEOF(size_t, 4)
|
||||||
AC_CHECK_SIZEOF(pid_t, 4)
|
AC_CHECK_SIZEOF(pid_t, 4)
|
||||||
AC_CHECK_SIZEOF(uintptr_t)
|
AC_CHECK_SIZEOF(uintptr_t)
|
||||||
|
|
||||||
AC_MSG_CHECKING(for long double support)
|
AC_TYPE_LONG_DOUBLE
|
||||||
have_long_double=no
|
|
||||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[long double x; x = (long double)0;]])],[
|
|
||||||
AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define this if you have the type long double.])
|
|
||||||
have_long_double=yes
|
|
||||||
],[])
|
|
||||||
AC_MSG_RESULT($have_long_double)
|
|
||||||
if test "$have_long_double" = yes ; then
|
|
||||||
AC_CHECK_SIZEOF(long double, 16)
|
AC_CHECK_SIZEOF(long double, 16)
|
||||||
fi
|
|
||||||
|
|
||||||
AC_CHECK_SIZEOF(_Bool, 1)
|
AC_CHECK_SIZEOF(_Bool, 1)
|
||||||
|
|
||||||
|
|
|
@ -617,7 +617,7 @@
|
||||||
/* Define to 1 if you have the `log2' function. */
|
/* Define to 1 if you have the `log2' function. */
|
||||||
#undef HAVE_LOG2
|
#undef HAVE_LOG2
|
||||||
|
|
||||||
/* Define this if you have the type long double. */
|
/* Define to 1 if the system has the type `long double'. */
|
||||||
#undef HAVE_LONG_DOUBLE
|
#undef HAVE_LONG_DOUBLE
|
||||||
|
|
||||||
/* Define to 1 if you have the `lstat' function. */
|
/* Define to 1 if you have the `lstat' function. */
|
||||||
|
|
Loading…
Reference in New Issue