numpy  2.0.0
src/private/npy_config.h
Go to the documentation of this file.
00001 #ifndef _NPY_NPY_CONFIG_H_
00002 #define _NPY_NPY_CONFIG_H_
00003 
00004 #include "config.h"
00005 
00006 /* Disable broken MS math functions */
00007 #if defined(_MSC_VER) || defined(__MINGW32_VERSION)
00008 #undef HAVE_ATAN2
00009 #undef HAVE_HYPOT
00010 #endif
00011 
00012 /* Safe to use ldexp and frexp for long double for MSVC builds */
00013 #if (SIZEOF_LONG_DOUBLE == SIZEOF_DOUBLE) || defined(_MSC_VER)
00014     #ifdef HAVE_LDEXP
00015         #define HAVE_LDEXPL 1
00016     #endif
00017     #ifdef HAVE_FREXP
00018         #define HAVE_FREXPL 1
00019     #endif
00020 #endif
00021 
00022 /* Disable broken Sun Workshop Pro math functions */
00023 #ifdef __SUNPRO_C
00024 #undef HAVE_ATAN2
00025 #endif
00026 
00027 /*
00028  * On Mac OS X, because there is only one configuration stage for all the archs
00029  * in universal builds, any macro which depends on the arch needs to be
00030  * harcoded
00031  */
00032 #ifdef __APPLE__
00033     #undef SIZEOF_LONG
00034     #undef SIZEOF_PY_INTPTR_T
00035 
00036     #ifdef __LP64__
00037         #define SIZEOF_LONG         8
00038         #define SIZEOF_PY_INTPTR_T  8
00039     #else
00040         #define SIZEOF_LONG         4
00041         #define SIZEOF_PY_INTPTR_T  4
00042     #endif
00043 #endif
00044 #endif