forked from Tulip-Dev/tulip
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gha/macos: Add jobs using GitHub macOS arm64 runners
- Loading branch information
Showing
2 changed files
with
20 additions
and
27 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,12 +8,14 @@ jobs: | |
fail-fast: false | ||
matrix: | ||
config: | ||
- name: Talipot build on macOS 12 | ||
- name: Talipot build on macOS 12 (x86_64) | ||
os: macos-12 | ||
pyver: "3.11" | ||
- name: Talipot build on macOS 13 | ||
os: macos-13 | ||
homebrew_path: /usr/local | ||
- name: Talipot build on macOS 14 (arm64) | ||
os: macos-14 | ||
pyver: "3.11" | ||
homebrew_path: /opt/homebrew | ||
steps: | ||
- name: Cancel Previous Runs | ||
uses: styfle/[email protected] | ||
|
@@ -60,10 +62,14 @@ jobs: | |
working-directory: ./build | ||
run: cmake .. -DCMAKE_BUILD_TYPE=Release | ||
-DCMAKE_INSTALL_PREFIX=$PWD/install | ||
-DCMAKE_C_COMPILER=/usr/local/opt/llvm/bin/clang | ||
-DCMAKE_CXX_COMPILER=/usr/local/opt/llvm/bin/clang++ | ||
-DCMAKE_C_COMPILER=${{ matrix.config.homebrew_path }}/opt/llvm/bin/clang | ||
-DCMAKE_CXX_COMPILER=${{ matrix.config.homebrew_path }}/opt/llvm/bin/clang++ | ||
-DCMAKE_SHARED_LINKER_FLAGS="-L/opt/homebrew/opt/llvm/lib/c++ | ||
-Wl,-rpath,/opt/homebrew/opt/llvm/lib/c++" | ||
-DCMAKE_EXE_LINKER_FLAGS="-L/opt/homebrew/opt/llvm/lib/c++ | ||
-Wl,-rpath,/opt/homebrew/opt/llvm/lib/c++" | ||
-DCMAKE_RANLIB=/usr/bin/ranlib | ||
-DPython3_EXECUTABLE=/usr/local/opt/python@${{ matrix.config.pyver }}/bin/python${{ matrix.config.pyver }} | ||
-DPython3_EXECUTABLE=${{ matrix.config.homebrew_path }}/opt/python@${{ matrix.config.pyver }}/bin/python${{ matrix.config.pyver }} | ||
-DTALIPOT_BUILD_CORE_ONLY=ON | ||
-DTALIPOT_BUILD_TESTS=ON | ||
-DTALIPOT_BUILD_DOC=OFF | ||
|
@@ -81,7 +87,7 @@ jobs: | |
working-directory: ./build | ||
run: cmake . | ||
-DTALIPOT_BUILD_CORE_ONLY=OFF | ||
-DCMAKE_PREFIX_PATH=/usr/local/opt/qt6 | ||
-DCMAKE_PREFIX_PATH=${{ matrix.config.homebrew_path }}/opt/qt6 | ||
-DTALIPOT_USE_QT6=ON | ||
- name: Talipot complete build | ||
working-directory: ./build | ||
|
@@ -96,11 +102,11 @@ jobs: | |
working-directory: ./build/install/bin | ||
run: ./talipot --check-application-starts --debug-plugins-load | ||
- name: Generate Talipot dmg bundle | ||
if: matrix.config.os == 'macos-12' | ||
if: matrix.config.os == 'macos-12' || matrix.config.os == 'macos-14' | ||
working-directory: ./build | ||
run: make bundle | ||
- name: Upload Talipot bundle to GitHub Actions artifacts | ||
if: matrix.config.os == 'macos-12' | ||
if: matrix.config.os == 'macos-12' || matrix.config.os == 'macos-14' | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: Talipot-macOS-bundles-${{ matrix.config.os }} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,7 +14,7 @@ jobs: | |
- name: Talipot build on macOS x86_64 | ||
os: macos-11 | ||
- name: Talipot build on macOS arm64 | ||
os: flyci-macos-large-latest-m1 | ||
os: macos-14 | ||
steps: | ||
- name: Cancel Previous Runs | ||
uses: styfle/[email protected] | ||
|
@@ -32,7 +32,6 @@ jobs: | |
echo "date=$(date -u "+%Y-%m-%d-%H-%m-%S")" >> $GITHUB_OUTPUT | ||
shell: bash | ||
- name: Cache files | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
uses: actions/cache@v4 | ||
with: | ||
path: | | ||
|
@@ -43,13 +42,11 @@ jobs: | |
${{ matrix.config.os }}-ccache- | ||
save-always: true | ||
- name: Install MacPorts | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
run: | | ||
curl -LO https://raw.githubusercontent.com/GiovanniBussi/macports-ci/master/macports-ci | ||
source ./macports-ci install | ||
source ./macports-ci ccache | ||
- name: Install Talipot build dependencies | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
run: sudo port -N install | ||
cmake | ||
clang-${{ env.CLANG_VERSION }} | ||
|
@@ -74,66 +71,56 @@ jobs: | |
quazip | ||
py${{ env.PYTHON_VERSION_NO_DOT }}-pip | ||
- name: Install Sphinx | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
run: pip-${{ env.PYTHON_VERSION }} install sphinx | ||
- name: Save MacPorts ccache | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
run: source ./macports-ci ccache --save | ||
- name: Create build directory | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
run: mkdir build | ||
- name: Configure Talipot core build with CMake | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: cmake .. -DCMAKE_BUILD_TYPE=Release | ||
-DCMAKE_INSTALL_PREFIX=$PWD/install | ||
-DCMAKE_C_COMPILER=/opt/local/bin/clang-mp-${{ env.CLANG_VERSION }} | ||
-DCMAKE_CXX_COMPILER=/opt/local/bin/clang++-mp-${{ env.CLANG_VERSION }} | ||
-DCMAKE_SHARED_LINKER_FLAGS="-L/opt/local/libexec/llvm-${{ env.CLANG_VERSION }}/lib | ||
-Wl,-rpath,/opt/local/libexec/llvm-${{ env.CLANG_VERSION }}/lib" | ||
-DCMAKE_EXE_LINKER_FLAGS="-L/opt/local/libexec/llvm-${{ env.CLANG_VERSION }}/lib | ||
-Wl,-rpath,/opt/local/libexec/llvm-${{ env.CLANG_VERSION }}/lib" | ||
-DPython3_EXECUTABLE=/opt/local/bin/python${{ env.PYTHON_VERSION }} | ||
-DTALIPOT_BUILD_TESTS=ON | ||
-DTALIPOT_USE_CCACHE=ON | ||
-DTALIPOT_BUILD_DOC=OFF | ||
-DTALIPOT_BUILD_CORE_ONLY=ON | ||
- name: Talipot core build | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make -j4 | ||
- name: Install Talipot core build | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make -j4 install | ||
- name: Run Talipot core build unit tests | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make tests | ||
- name: Configure Talipot complete build with CMake | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: cmake . | ||
-DTALIPOT_BUILD_CORE_ONLY=OFF | ||
-DTALIPOT_BUILD_DOC=ON | ||
- name: Talipot complete build | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make -j4 | ||
- name: Install Talipot complete build | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make -j4 install | ||
- name: Run Talipot complete build unit tests | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make tests | ||
- name: Check Talipot application can be executed | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build/install/bin | ||
run: ./talipot --check-application-starts --debug-plugins-load | ||
- name: Generate Talipot dmg bundle | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
working-directory: ./build | ||
run: make bundle | ||
- name: Upload Talipot bundle to GitHub Actions artifacts | ||
if: matrix.config.os == 'macos-11' || github.ref == 'refs/tags/dev-latest' | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: Talipot-macOS-bundles-${{ matrix.config.os }} | ||
|