You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.6 KiB

10 years ago
The math module uses function pointers to math functions, which breaks
using the system libm on ARM since we compile with -mhard-float.
diff -u -r ../Python-3.4.3/Modules/mathmodule.c ./Modules/mathmodule.c
--- ../Python-3.4.3/Modules/mathmodule.c 2015-02-25 06:27:46.000000000 -0500
+++ ./Modules/mathmodule.c 2015-04-29 16:50:52.895371496 -0400
@@ -727,7 +727,7 @@
*/
static PyObject *
-math_1_to_whatever(PyObject *arg, double (*func) (double),
+math_1_to_whatever(PyObject *arg, __NDK_FPABI_MATH__ double (*func) (double),
PyObject *(*from_double_func) (double),
int can_overflow)
{
@@ -765,7 +765,7 @@
errno = ERANGE for overflow). */
static PyObject *
-math_1a(PyObject *arg, double (*func) (double))
+math_1a(PyObject *arg, __NDK_FPABI_MATH__ double (*func) (double))
{
double x, r;
x = PyFloat_AsDouble(arg);
@@ -808,19 +808,19 @@
*/
static PyObject *
-math_1(PyObject *arg, double (*func) (double), int can_overflow)
+math_1(PyObject *arg, __NDK_FPABI_MATH__ double (*func) (double), int can_overflow)
{
return math_1_to_whatever(arg, func, PyFloat_FromDouble, can_overflow);
}
static PyObject *
-math_1_to_int(PyObject *arg, double (*func) (double), int can_overflow)
+math_1_to_int(PyObject *arg, __NDK_FPABI_MATH__ double (*func) (double), int can_overflow)
{
return math_1_to_whatever(arg, func, PyLong_FromDouble, can_overflow);
}
static PyObject *
-math_2(PyObject *args, double (*func) (double, double), char *funcname)
+math_2(PyObject *args, __NDK_FPABI_MATH__ double (*func) (double, double), char *funcname)
{
PyObject *ox, *oy;
double x, y, r;