Skip to content

Auto venv on Windows supports Python 3.9+ but only Qt6.7.3 for now [d… #87

Auto venv on Windows supports Python 3.9+ but only Qt6.7.3 for now [d…

Auto venv on Windows supports Python 3.9+ but only Qt6.7.3 for now [d… #87

name: Build Sigil on macOS arm64
on:
push:
branches: [ master ]
tags-ignore:
- '**'
paths-ignore:
- 'docs/**'
- 'installer/win_installer_note.txt'
- 'ChangeLog.txt'
- 'COPYING.txt'
- 'version.xml'
- '.retired_travis.yml'
- '**/**.md'
pull_request:
branches: [ master ]
tags-ignore:
- '**'
paths-ignore:
- 'docs/**'
- 'installer/win_installer_note.txt'
- 'ChangeLog.txt'
- 'COPYING.txt'
- 'version.xml'
- '.retired_travis.yml'
- '**/**.md'
env:
HOMEBREW_NO_AUTO_UPDATE: 1
HOMEBREW_NO_INSTALL_CLEANUP: 1
MACOSX_DEPLOYMENT_TARGET: 11
DOWNLOADQT: https://github.com/kevinhendricks/BuildSigilOnMac/releases/download/for_sigil_1.0.0/Qt673_arm64.tar.xz
DOWNLOADPY: https://github.com/kevinhendricks/BuildSigilOnMac/releases/download/for_sigil_1.0.0/Python.framework_arm64.tar.xz
PY_VER: 3.11
QT: Qt673
jobs:
build:
if: "!contains(github.event.head_commit.message, '[skip ci]')"
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Cache Custom Qt
uses: actions/cache@v4
with:
path: ${{runner.workspace}}/${{env.QT}}
key: ${{ runner.os }}-qtdeps-${{hashFiles('**/reset-mac_arm64-caches.txt')}}
- name: Cache Custom Python
uses: actions/cache@v4
with:
path: ${{runner.workspace}}/Frameworks
key: ${{ runner.os }}-qtdeps-${{hashFiles('**/reset-mac_arm64-caches.txt')}}
- name: Install dependencies
shell: bash
working-directory: ${{runner.workspace}}
run: |
pwd
if [[ ! -d ${{runner.workspace}}/${{env.QT}} ]]; \
then curl -L -o qt6.tar.xz ${DOWNLOADQT} && tar xzf qt6.tar.xz; fi
if [[ -d ${{runner.workspace}}/${{env.QT}}/bin ]]; \
then cd ${{runner.workspace}}/${{env.QT}}/bin && \
echo [Paths] > qt.conf && echo Prefix=.. >> qt.conf; fi
export MYQTHOME=${{runner.workspace}}/${{env.QT}}
echo ${MYQTHOME}/bin >> $GITHUB_PATH
cd ${{runner.workspace}}
if [[ ! -d ${{runner.workspace}}/Frameworks ]]; \
then mkdir Frameworks && cd ${{runner.workspace}}/Frameworks && \
curl -L -o python3.tar.xz ${DOWNLOADPY} && tar xzf python3.tar.xz; fi
export MYDEST=${{runner.workspace}}/Frameworks
echo ${MYDEST}/Python.framework/Versions/${PY_VER}/bin >> $GITHUB_PATH
echo "Qt6_DIR=${{runner.workspace}}/${{env.QT}}/lib/cmake/Qt6" >> $GITHUB_ENV
echo "Qt6_Dir=${{runner.workspace}}/${{env.QT}}/lib/cmake/Qt6" >> $GITHUB_ENV
echo "QT_PLUGIN_PATH=${{runner.workspace}}/${{env.QT}}/plugins" >> $GITHUB_ENV
- name: Test environment
shell: bash
run: |
qmake -v
python3 --version
mkdir ${{runner.workspace}}/build
pwd
- name: Build Sigil
working-directory: ${{runner.workspace}}/build
shell: bash
run: |
cmake -DPKG_SYSTEM_PYTHON=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET=11 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_FLAGS=-Wno-inconsistent-missing-override \
-DCMAKE_PREFIX_PATH=${{runner.workspace}}/${{env.QT}}/lib/cmake \
-DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/ $GITHUB_WORKSPACE
make -j$(getconf _NPROCESSORS_ONLN)
- name: Build Installer
working-directory: ${{runner.workspace}}/build
shell: bash
if: "contains(github.event.head_commit.message, '[deploy]')"
run: |
echo 'Deploying App'
make addframeworks
bash $GITHUB_WORKSPACE/ci_scripts/rpath_adjust.sh
cd ./bin
tar -cJf Sigil_arm64.tar.xz Sigil.app
# RIP gdrive
#- name: Upload to gdrive
# working-directory: ${{runner.workspace}}/build
# shell: bash
# if: "contains(github.event.head_commit.message, '[deploy]') && github.event_name != 'pull_request'"
# run: |
# gdrive version
# python3 $GITHUB_WORKSPACE/ci_scripts/newgddeploy.py
- uses: actions/upload-artifact@v4
if: "contains(github.event.head_commit.message, '[deploy]')"
with:
name: sigil-installer
path: ${{runner.workspace}}/build/bin/Sigil_arm64.tar.xz
retention-days: 5