name: build_osx on: push: branches: [ master ] pull_request: jobs: osx_app: runs-on: macos-11 steps: - uses: actions/checkout@v2 - name: Set up Python uses: actions/setup-python@v2 with: python-version: 3.8 - name: Build KataGo run: | export OPENSSL_ROOT_DIR=$(brew --prefix openssl@1.1) export OPENSSL_LIBRARIES="${OPENSSL_ROOT_DIR}/lib" echo $OPENSSL_ROOT_DIR ls $OPENSSL_ROOT_DIR echo $OPENSSL_LIBRARIES ls $OPENSSL_LIBRARIES rm katrain/KataGo/katago rm katrain/KataGo/*.dll rm katrain/KataGo/katago.exe cd .. git clone --branch stable https://github.com/lightvector/KataGo.git pushd KataGo/cpp cmake . -DUSE_BACKEND=OPENCL -DBUILD_DISTRIBUTED=1 make cp katago ../../katrain/katrain/KataGo/katago-osx - name: Install platypus run: | curl -L --output "platypus.zip" https://github.com/sveinbjornt/Platypus/releases/download/5.3/platypus5.3.zip unzip "platypus.zip" gunzip Platypus.app/Contents/Resources/platypus_clt.gz gunzip Platypus.app/Contents/Resources/ScriptExec.gz mkdir -p /usr/local/bin mkdir -p /usr/local/share/platypus cp Platypus.app/Contents/Resources/platypus_clt /usr/local/bin/platypus cp Platypus.app/Contents/Resources/ScriptExec /usr/local/share/platypus/ScriptExec cp -a Platypus.app/Contents/Resources/MainMenu.nib /usr/local/share/platypus/MainMenu.nib chmod -R 755 /usr/local/share/platypus - name: Get Kivy dependencies run: | cd .. git clone https://github.com/kivy/kivy-sdk-packager.git cd kivy-sdk-packager/osx ./create-osx-bundle.sh -n "KaTrain" -a "Sander Land" -o "org.katrain.KaTrain" -i "../../katrain/katrain/img/icon.ico" - name: Install KaTrain pip dependencies run: | pushd ../kivy-sdk-packager/osx/build/KaTrain.app/Contents/Resources/venv/bin source activate popd python -m pip install . - name: Finalize KaTrain bundle run: | export KATRAIN_VERSION=`python -c 'from katrain.core.constants import VERSION;print(VERSION)' ` echo "Setting version to ${KATRAIN_VERSION}" cd ../kivy-sdk-packager/osx/build pushd KaTrain.app/Contents/Resources/ ln -s ./venv/bin/KaTrain yourapp popd ../fix-bundle-metadata.sh KaTrain.app -n KaTrain -v "${KATRAIN_VERSION}" -a "Sander Land" -o "org.katrain.KaTrain" -i "../../katrain/katrain/img/icon.ico" ../cleanup-app.sh KaTrain.app ../relocate.sh KaTrain.app - name: Create dmg run: | pushd ../kivy-sdk-packager/osx ./create-osx-dmg.sh build/KaTrain.app KaTrain popd mkdir osx_app cp ../kivy-sdk-packager/osx/KaTrain.dmg osx_app/ - name: Upload app as artifact uses: actions/upload-artifact@v2 with: name: KaTrainOSX path: osx_app