#!/bin/bash set -ex # Remove any pre-existing protobuf installation. brew uninstall -f protobuf # change to repo root pushd $(dirname $0)/../../../.. # Create stage dir ORIGINAL_DIR=`pwd` pushd .. cp -R $ORIGINAL_DIR stage export STAGE_DIR="`pwd`/stage" popd export REPO_DIR=protobuf export BUILD_VERSION=`grep -i "version" python/google/protobuf/__init__.py | grep -o "'.*'" | tr -d "'"` export BUILD_COMMIT=`git rev-parse HEAD` export PLAT=x86_64 export UNICODE_WIDTH=32 export MACOSX_DEPLOYMENT_TARGET=10.9 export TRAVIS_OS_NAME="osx" rm -rf artifacts/ rm -rf multibuild/ mkdir artifacts export ARTIFACT_DIR=$(pwd)/artifacts git clone https://github.com/matthew-brett/multibuild.git # Pin multibuild scripts at a known commit to avoid potentially unwanted future changes from # silently creeping in (see https://github.com/protocolbuffers/protobuf/issues/9180). # IMPORTANT: always pin multibuild at the same commit for: # - linux/build_artifacts.sh # - linux/build_artifacts.sh # - windows/build_artifacts.bat (cd multibuild; git checkout b89bb903e94308be79abefa4f436bf123ebb1313) cp kokoro/release/python/macos/config.sh config.sh OLD_PATH=$PATH build_artifact_version() { MB_PYTHON_VERSION=$1 # Clean up env rm -rf venv sudo rm -rf $REPO_DIR cp -R $STAGE_DIR $REPO_DIR export PATH=$OLD_PATH source multibuild/common_utils.sh source multibuild/travis_steps.sh before_install clean_code $REPO_DIR $BUILD_COMMIT build_wheel $REPO_DIR/python $PLAT mv wheelhouse/* $ARTIFACT_DIR } export MB_PYTHON_OSX_VER=10.9 build_artifact_version 3.7 build_artifact_version 3.8 build_artifact_version 3.9 build_artifact_version 3.10