bpo-45440: Require math.h isinf() to build (GH-28894)

Building Python now requires a C99 <math.h> header file providing
isinf(), isnan() and isfinite() functions.

Remove the Py_FORCE_DOUBLE() macro. It was used by the
Py_IS_INFINITY() macro.

Changes:

* Remove Py_IS_NAN(), Py_IS_INFINITY() and Py_IS_FINITE()
  in PC/pyconfig.h.
* Remove the _Py_force_double() function.
* configure no longer checks if math.h defines isinf(), isnan() and
  isfinite().
This commit is contained in:
Victor Stinner 2021-10-13 23:27:50 +02:00 committed by GitHub
parent aac29af678
commit 194a9526d8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 25 additions and 143 deletions

View file

@ -460,6 +460,10 @@ Build Changes
* libpython is no longer linked against libcrypt.
(Contributed by Mike Gilbert in :issue:`45433`.)
* Building Python now requires a C99 ``<math.h>`` header file providing
``isinf()``, ``isnan()`` and ``isfinite()`` functions.
(Contributed by Victor Stinner in :issue:`45440`.)
C API Changes
=============
@ -605,3 +609,7 @@ Removed
* Remove the ``pystrhex.h`` header file. It only contains private functions.
C extensions should only include the main ``<Python.h>`` header file.
(Contributed by Victor Stinner in :issue:`45434`.)
* Remove the ``Py_FORCE_DOUBLE()`` macro. It was used by the
``Py_IS_INFINITY()`` macro.
(Contributed by Victor Stinner in :issue:`45440`.)