ci: Add builds for MacOS x86-64

Due to OBS Studio not yet supporting ARM64 out of the box, we currently only provide builds for x86. Additionally, due to our use of C++17 (which we will not drop to C++14, don't bother asking), the minimum OSX version is 10.15.
This commit is contained in:
Michael Fabian 'Xaymar' Dirks 2021-02-18 23:13:43 +01:00 committed by Xaymar
parent 49beafb425
commit 53f2edcc87

View file

@ -38,10 +38,9 @@ jobs:
CMAKE_SYSTEM_VERSION: ${{ matrix.windows_sdk }} CMAKE_SYSTEM_VERSION: ${{ matrix.windows_sdk }}
steps: steps:
- name: "Clone Repository" - name: "Clone Repository"
uses: actions/checkout@v1 uses: actions/checkout@v2
- name: "Clone Submodules" with:
shell: bash submodules: recursive
run: git submodule update --init --recursive
- name: "Cache: OBS" - name: "Cache: OBS"
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
@ -68,6 +67,7 @@ jobs:
shell: bash shell: bash
run: | run: |
cmake -H. -B"build/temp" \ cmake -H. -B"build/temp" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="build/distrib" \ -DCMAKE_INSTALL_PREFIX="build/distrib" \
-DPACKAGE_NAME="streamfx-${{ matrix.id }}" \ -DPACKAGE_NAME="streamfx-${{ matrix.id }}" \
-DPACKAGE_PREFIX="build/package" \ -DPACKAGE_PREFIX="build/package" \
@ -125,10 +125,9 @@ jobs:
CXX: ${{ matrix.compiler-cxx }} CXX: ${{ matrix.compiler-cxx }}
steps: steps:
- name: "Clone Repository" - name: "Clone Repository"
uses: actions/checkout@v1 uses: actions/checkout@v2
- name: "Prerequisites: Submodules" with:
shell: bash submodules: recursive
run: git submodule update --init --recursive
- name: "Prerequisites: Apt-Get" - name: "Prerequisites: Apt-Get"
shell: bash shell: bash
run: | run: |
@ -154,6 +153,7 @@ jobs:
shell: bash shell: bash
run: | run: |
cmake -H. -B"build/temp" \ cmake -H. -B"build/temp" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="build/distrib" \ -DCMAKE_INSTALL_PREFIX="build/distrib" \
-DENABLE_FILTER_NVIDIA_FACE_TRACKING=FALSE \ -DENABLE_FILTER_NVIDIA_FACE_TRACKING=FALSE \
-DPACKAGE_NAME="streamfx-${{ matrix.id }}" \ -DPACKAGE_NAME="streamfx-${{ matrix.id }}" \
@ -173,3 +173,51 @@ jobs:
with: with:
name: ${{ matrix.id }} name: ${{ matrix.id }}
path: build/package path: build/package
macos:
strategy:
fail-fast: true
matrix:
runner: [ macos-latest ]
include:
- runner: macos-latest
id: macos-10.15
target-version: "10.15"
name: "MacOS (${{ matrix.target-version }})"
runs-on: ${{ matrix.runner }}
env:
CMAKE_GENERATOR: "Xcode"
CMAKE_OSX_DEPLOYMENT_TARGET: "${{ matrix.target-version }}"
steps:
- name: "Clone Repository"
uses: actions/checkout@v2
with:
submodules: recursive
- name: "Prerequisties: Qt"
shell: bash
run: |
brew install qt5
ls -lha /usr/local/opt/qt/lib/cmake/Qt5
- name: "Configure Project"
shell: bash
run: |
cmake -H. -B"build/temp" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="build/distrib" \
-DPACKAGE_NAME="streamfx-${{ matrix.id }}" \
-DPACKAGE_PREFIX="build/package" \
-DQt5_DIR=/usr/local/opt/qt/lib/cmake/Qt5
- name: "Build Project"
shell: bash
run: |
cmake --build "build/temp" --config RelWithDebInfo --target install
- name: "Package Project"
shell: bash
run: |
mkdir build/package
cmake --build "build/temp" --config RelWithDebInfo --target PACKAGE_7Z
cmake --build "build/temp" --config RelWithDebInfo --target PACKAGE_ZIP
- name: "Upload Artifacts"
uses: actions/upload-artifact@v1
with:
name: ${{ matrix.id }}
path: build/package