diff options
author | xdegaye <xdegaye@gmail.com> | 2017-11-23 10:44:38 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-23 10:44:38 (GMT) |
commit | c06c22e9a9fb9326e79fcf1551601eacc1fd457d (patch) | |
tree | f38029612fd0dcc789f3f7d60ca134911dced9f1 | |
parent | 5ad7ef8e420de8a54fb30ed37362194c6b96012c (diff) | |
download | cpython-c06c22e9a9fb9326e79fcf1551601eacc1fd457d.zip cpython-c06c22e9a9fb9326e79fcf1551601eacc1fd457d.tar.gz cpython-c06c22e9a9fb9326e79fcf1551601eacc1fd457d.tar.bz2 |
bpo-29040: Support building Android with Unified Headers (GH-4492)
-rw-r--r-- | Include/pyport.h | 4 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Build/2017-11-21-16-56-24.bpo-29040.14lCSr.rst | 2 | ||||
-rwxr-xr-x | configure | 5 | ||||
-rw-r--r-- | configure.ac | 5 |
4 files changed, 13 insertions, 3 deletions
diff --git a/Include/pyport.h b/Include/pyport.h index 0e82543..f2e247a 100644 --- a/Include/pyport.h +++ b/Include/pyport.h @@ -784,7 +784,9 @@ extern _invalid_parameter_handler _Py_silent_invalid_parameter_handler; #endif /* Py_BUILD_CORE */ #ifdef __ANDROID__ -#include <android/api-level.h> +/* The Android langinfo.h header is not used. */ +#undef HAVE_LANGINFO_H +#undef CODESET #endif /* Maximum value of the Windows DWORD type */ diff --git a/Misc/NEWS.d/next/Build/2017-11-21-16-56-24.bpo-29040.14lCSr.rst b/Misc/NEWS.d/next/Build/2017-11-21-16-56-24.bpo-29040.14lCSr.rst new file mode 100644 index 0000000..60f05db --- /dev/null +++ b/Misc/NEWS.d/next/Build/2017-11-21-16-56-24.bpo-29040.14lCSr.rst @@ -0,0 +1,2 @@ +Support building Android with Unified Headers. The first NDK release to +support Unified Headers is android-ndk-r14. @@ -5611,7 +5611,6 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; } $as_echo_n "checking for the Android API level... " >&6; } cat >> conftest.c <<EOF #ifdef __ANDROID__ -#include <android/api-level.h> android_api = __ANDROID_API__ arm_arch = __ARM_ARCH #else @@ -5624,6 +5623,10 @@ if $CPP $CPPFLAGS conftest.c >conftest.out 2>/dev/null; then _arm_arch=`sed -n -e '/__ARM_ARCH/d' -e 's/^arm_arch = //p' conftest.out` { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ANDROID_API_LEVEL" >&5 $as_echo "$ANDROID_API_LEVEL" >&6; } + if test -z "$ANDROID_API_LEVEL"; then + echo 'Fatal: you must define __ANDROID_API__' + exit 1 + fi cat >>confdefs.h <<_ACEOF #define ANDROID_API_LEVEL $ANDROID_API_LEVEL diff --git a/configure.ac b/configure.ac index 501f078..6a69f78 100644 --- a/configure.ac +++ b/configure.ac @@ -885,7 +885,6 @@ AC_USE_SYSTEM_EXTENSIONS AC_MSG_CHECKING([for the Android API level]) cat >> conftest.c <<EOF #ifdef __ANDROID__ -#include <android/api-level.h> android_api = __ANDROID_API__ arm_arch = __ARM_ARCH #else @@ -897,6 +896,10 @@ if $CPP $CPPFLAGS conftest.c >conftest.out 2>/dev/null; then ANDROID_API_LEVEL=`sed -n -e '/__ANDROID_API__/d' -e 's/^android_api = //p' conftest.out` _arm_arch=`sed -n -e '/__ARM_ARCH/d' -e 's/^arm_arch = //p' conftest.out` AC_MSG_RESULT([$ANDROID_API_LEVEL]) + if test -z "$ANDROID_API_LEVEL"; then + echo 'Fatal: you must define __ANDROID_API__' + exit 1 + fi AC_DEFINE_UNQUOTED(ANDROID_API_LEVEL, $ANDROID_API_LEVEL, [The Android API level.]) AC_MSG_CHECKING([for the Android arm ABI]) |