Skip to content

1. MacOS qt6.12.0 AppleSilicon cmake C/C++ CI #22

1. MacOS qt6.12.0 AppleSilicon cmake C/C++ CI

1. MacOS qt6.12.0 AppleSilicon cmake C/C++ CI #22

Workflow file for this run

name: 1. MacOS qt6.10.2 Universal cmake C/C++ CI
on:
workflow_dispatch:
inputs:
yyyymmdd:
description: 'Date string for release (yyyymmdd)'
required: true
jobs:
build:
runs-on: macos-26
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: '6.10.*'
extra: '--external 7z'
# modules: 'qtcharts'
- name: Clone CaptureStream2
run: |
git clone https://github.com/CSReviser/CaptureStream2.git
cd CaptureStream2
git checkout feature
git submodule update --init --recursive
# git checkout feature
- name: Configure CMake
run: |
mkdir build
cmake -S CaptureStream2 -B build -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
- name: Build with Make
run: cmake --build build --parallel
- name: Prepare CaptureStream2 executable
run: |
wget -qO FFmpeg.tar.gz https://github.com/CSReviser/ffmpeg-build/releases/download/8.0/ffmpeg-macos-universal.tar.gz || { echo "Failed to download FFmpeg"; exit 1; }
tar -xzvf FFmpeg.tar.gz ffmpeg
cp ffmpeg ./build/CaptureStream2.app/Contents/MacOS/
cp CaptureStream2/icon.icns ./build/CaptureStream2.app/Contents/Resources/
cp CaptureStream2/qss_files/stylesheet-mac.qss ./build/CaptureStream2.app/Contents/MacOS/
- name: Create MacCaptureStream2 directory
run: |
mkdir -p build/MacCaptureStream2
mv build/CaptureStream2.app build/MacCaptureStream2/
- name: Create DMG file
run: |
hdiutil create -volname CaptureStream2 \
-srcfolder build/MacCaptureStream2 \
-ov -format UDZO \
"build/CaptureStream2-MacOS26-${{ github.event.inputs.yyyymmdd }}.dmg"
- name: Format release title
id: format_date
run: |
yyyy=${{ github.event.inputs.yyyymmdd }}
echo "title=${yyyy:0:4}/${yyyy:4:2}/${yyyy:6:2}版リリース" >> "$GITHUB_OUTPUT"
- name: Upload DMG to GitHub Release
uses: softprops/action-gh-release@v2
with:
files: build/CaptureStream2-MacOS26-${{ github.event.inputs.yyyymmdd }}.dmg
tag_name: ${{ github.event.inputs.yyyymmdd }}
name: ${{ steps.format_date.outputs.title }}
body: "Universal Qt 6.9 build for macOS"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}