-
Notifications
You must be signed in to change notification settings - Fork 15
macos arm64 build #53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
e76439e
c042088
c173bcc
93f5531
ca85acd
34f3564
4a09007
19ba74a
cf836ed
72e6b5f
3e16738
060da29
a4cf419
571bdeb
e1abae8
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
+3 −3 | .appveyor.yml | |
+16 −5 | .travis.yml | |
+1 −1 | LICENSE | |
+82 −27 | README.rst | |
+47 −23 | common_utils.sh | |
+23 −10 | configure_build.sh | |
+72 −28 | library_builders.sh | |
+17 −3 | manylinux_utils.sh | |
+108 −11 | osx_utils.sh | |
+3 −0 | tests/config.sh | |
+3 −1 | tests/test_fill_pyver.sh | |
+6 −5 | tests/test_library_builders.sh | |
+15 −11 | tests/test_multibuild.sh | |
+7 −1 | tests/test_osx_utils.sh | |
+9 −3 | tests/test_python_install.sh | |
+1 −3 | travis_linux_steps.sh | |
+0 −4 | travis_osx_steps.sh |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,7 +7,7 @@ ROOT_DIR=$(dirname $(dirname "${BASH_SOURCE[0]}")) | |
source ${ROOT_DIR}/multibuild/common_utils.sh | ||
source ${ROOT_DIR}/gfortran-install/gfortran_utils.sh | ||
|
||
MB_PYTHON_VERSION=3.7 | ||
MB_PYTHON_VERSION=3.9 | ||
|
||
function before_build { | ||
# Manylinux Python version set in build_lib | ||
|
@@ -44,7 +44,7 @@ function build_lib { | |
# Make directory to store built archive | ||
if [ -n "$IS_OSX" ]; then | ||
# Do build, add gfortran hash to end of name | ||
do_build_lib "$plat" "gf_${GFORTRAN_SHA:0:7}" "$interface64" | ||
wrap_wheel_builder do_build_lib "$plat" "gf_${GFORTRAN_SHA:0:7}" "$interface64" | ||
return | ||
fi | ||
# Manylinux wrapper | ||
|
@@ -85,24 +85,33 @@ function do_build_lib { | |
local suffix=$2 | ||
local interface64=$3 | ||
echo "Building with settings: '$plat' '$suffix' '$interface64'" | ||
case $plat in | ||
x86_64) | ||
case $(get_os)-$plat in | ||
Linux-x86_64) | ||
local bitness=64 | ||
local target_flags="TARGET=PRESCOTT" | ||
;; | ||
i686) | ||
Darwin-x86_64) | ||
local bitness=64 | ||
local target_flags="TARGET=CORE2" | ||
;; | ||
*-i686) | ||
local bitness=32 | ||
local target_flags="TARGET=PRESCOTT" | ||
;; | ||
aarch64) | ||
Linux-aarch64) | ||
local bitness=64 | ||
local target_flags="TARGET=ARMV8" | ||
;; | ||
s390x) | ||
Darwin-arm64) | ||
local bitness=64 | ||
local target_flags="TARGET=VORTEX" | ||
;; | ||
isuruf marked this conversation as resolved.
Show resolved
Hide resolved
|
||
*-s390x) | ||
local bitness=64 | ||
;; | ||
ppc64le) | ||
*-ppc64le) | ||
local bitness=64 | ||
local target_flags="TARGET=POWER8" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I wonder if this change will impact the future numpy / scipy wheels built for ppc64le. Those wheels are typically built on a PPC host (without cross-compilation) so maybe this won't change a thing (but I agree it's best to make the target architecture explicit). There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
It will if the host becomes a power9 or power10 some day. |
||
;; | ||
*) echo "Strange plat value $plat"; exit 1 ;; | ||
esac | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure we need
platform
at all in this file, it might be some cruft left over from the transition to github actions?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add a comment to explain that this entry of the build matrix is using cross-compilation to build an macos/arm64 on a macos/x86_64 host (typically on github actions that does not provide native macos/arm64 runners at this time).