[issue28849] do not define sys.implementation._multiarch on Android

Xavier de Gaye report at bugs.python.org
Sat Dec 3 10:11:04 EST 2016


Xavier de Gaye added the comment:

The MULTIARCH triplet:
  * is used by the build system in the suffix of the name of the _sysconfigdata private module, it may have any value (including being empty) when the platform is non-multiarch - for example cross-compiling for an Android emulator with the 'foo-bar-foobar' MULTIARCH triplet works just fine (without the patch)
  * is not used by the interpreter
  * the Python user may not use it (sys.implementation_multiarch is private)
  * is not used in the standard library, except by the sysconfig modules to get the name of the _sysconfigdata module (and it may be empty)
  * is not needed any more to cross-compile non-multiarch platforms (even without the patch) since issue 28046, where platform-specific directories have been removed

On Android the MULTIARCH triplet adds the burden of having to maintain the list of Android processors and abis in configure.ac through a set of complex conditionals (see below [1]) whose correctness is uncertain and not verified. This is useless and removed since it is not needed anymore.

[1] The Android set of conditionals in configure.ac:

#if defined(__ANDROID__)
# if defined(__x86_64__) && defined(__LP64__)
        x86_64-linux-android
# elif defined(__i386__)
        i686-linux-android
# elif defined(__aarch64__) && defined(__AARCH64EL__)
#  if defined(__ILP32__)
        aarch64_ilp32-linux-android
#  else
        aarch64-linux-android
#  endif
# elif defined(__ARM_EABI__) && defined(__ARMEL__)
        arm-linux-androideabi
# elif defined(__mips_hard_float) && defined(_MIPSEL)
#  if _MIPS_SIM == _ABIO32
        mipsel-linux-android
#  elif _MIPS_SIM == _ABI64
        mips64el-linux-android
#  else
#   error unknown platform triplet
#  endif
# else
#   error unknown platform triplet
# endif

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue28849>
_______________________________________


More information about the Python-bugs-list mailing list