bpo-44009: Provide "python3.x-intel64" for Apple Silicon Macs (GH-25804)

This allows reliably forcing macOS universal2 framework builds
to run under Rosetta 2 Intel-64 emulation on Apple Silicon Macs
if needed for testing or when universal2 wheels are not yet
available.
This commit is contained in:
Ned Deily 2021-05-02 04:48:29 -04:00 committed by GitHub
parent 91554e4c5c
commit 0cb33da1cc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 62 additions and 9 deletions

15
configure vendored
View file

@ -752,6 +752,7 @@ PYTHONFRAMEWORKPREFIX
PYTHONFRAMEWORKDIR
PYTHONFRAMEWORKIDENTIFIER
PYTHONFRAMEWORK
LIPO_INTEL64_FLAGS
LIPO_32BIT_FLAGS
ARCH_RUN_32BIT
UNIVERSALSDK
@ -1519,11 +1520,12 @@ Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-universal-archs=ARCH
specify the kind of universal binary that should be
created. this option is only valid when
specify the kind of macOS universal binary that
should be created. This option is only valid when
--enable-universalsdk is set; options are:
("universal2", "32-bit", "64-bit", "3-way", "intel",
"intel-32", "intel-64", or "all") see Mac/README.rst
("universal2", "intel-64", "intel-32", "intel",
"32-bit", "64-bit", "3-way", or "all") see
Mac/README.rst
--with-framework-name=FRAMEWORK
specify the name for the python framework on macOS
only valid when --enable-framework is set. see
@ -3139,6 +3141,7 @@ then
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-universal-archs" >&5
$as_echo_n "checking for --with-universal-archs... " >&6; }
@ -7522,6 +7525,7 @@ $as_echo_n "checking which compiler should be used... " >&6; }
$as_echo "$CC" >&6; }
fi
LIPO_INTEL64_FLAGS=""
if test "${enable_universalsdk}"
then
case "$UNIVERSAL_ARCHS" in
@ -7543,8 +7547,9 @@ $as_echo "$CC" >&6; }
universal2)
UNIVERSAL_ARCH_FLAGS="-arch arm64 -arch x86_64"
LIPO_32BIT_FLAGS=""
LIPO_INTEL64_FLAGS="-extract x86_64"
ARCH_RUN_32BIT="true"
;;
;;
intel)
UNIVERSAL_ARCH_FLAGS="-arch i386 -arch x86_64"
LIPO_32BIT_FLAGS="-extract i386"