travis_osx_steps.sh 1.46 KB
Newer Older
1
#!/bin/bash
2
# Wheel build, install, run test steps on OSX
3
4
5
set -e

# Get needed utilities
6
MULTIBUILD_DIR=$(dirname "${BASH_SOURCE[0]}")
7
MB_PYTHON_VERSION=${MB_PYTHON_VERSION:-$TRAVIS_PYTHON_VERSION}
8
9
10

ENV_VARS_PATH=${ENV_VARS_PATH:-env_vars.sh}

11
12
13
14
15
16
17
18
if [ "$PLAT" == "universal2" ] || [ "$PLAT" == "arm64" ]; then
  if [ "$TRAVIS" == "true" ]; then
    # Setup xcode and compilers to use the new SDK for universal2 and arm64 builds
    sudo xcode-select -switch /Applications/Xcode_12.2.app
    export SDKROOT=/Applications/Xcode_12.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
  fi
fi

19
# These load common_utils.sh
Matthew Brett's avatar
Matthew Brett committed
20
source $MULTIBUILD_DIR/osx_utils.sh
21
22
MB_PYTHON_OSX_VER=${MB_PYTHON_OSX_VER:-$(macpython_sdk_for_version $MB_PYTHON_VERSION)}

23
if [ -r "$ENV_VARS_PATH" ]; then source "$ENV_VARS_PATH"; fi
24
source $MULTIBUILD_DIR/configure_build.sh
25
source $MULTIBUILD_DIR/library_builders.sh
26

27
28
# NB - config.sh sourced at end of this function.
# config.sh can override any function defined here.
29
30
31
32

function before_install {
    export CC=clang
    export CXX=clang++
33

34
    get_macpython_environment $MB_PYTHON_VERSION venv
35
36
37
38
    source venv/bin/activate
    pip install --upgrade pip wheel
}

39
# build_wheel function defined in common_utils (via osx_utils)
40
# install_run function defined in common_utils
41
42

# Local configuration may define custom pre-build, source patching.
43
# It can also overwrite the functions above.
44
45
CONFIG_PATH=${CONFIG_PATH:-config.sh}
source "$CONFIG_PATH"