mirror of
https://github.com/royshil/obs-localvocal.git
synced 2026-01-09 20:37:58 -05:00
* Make multiple MacOS variants targeting different Metal versions Different MacOS versions support different maximum Metal versions. As we build on MacOS 14, it's likely that when embedding the Metal shaders into the Metal backend they're being built for Metal 3.1, the maximum supported version on MacOS 14. This may be why users are seeing crashes when trying to use Metal on older versions of MacOS This will also allow users of MacOS 15 and newer to take advantage of improvements from Metal 3.2 * Fix checking incorrect env var for MacOS version
130 lines
4.0 KiB
YAML
130 lines
4.0 KiB
YAML
name: 'Package plugin'
|
|
description: 'Packages the plugin for specified architecture and build config.'
|
|
inputs:
|
|
target:
|
|
description: 'Build target for dependencies'
|
|
required: true
|
|
config:
|
|
description: 'Build configuration'
|
|
required: false
|
|
default: 'RelWithDebInfo'
|
|
acceleration:
|
|
description: 'Enable acceleration'
|
|
required: false
|
|
default: 'generic'
|
|
macos_version:
|
|
description: 'Version of MacOS to target'
|
|
required: false
|
|
default: '12'
|
|
codesign:
|
|
description: 'Enable codesigning (macOS only)'
|
|
required: false
|
|
default: 'false'
|
|
notarize:
|
|
description: 'Enable notarization (macOS only)'
|
|
required: false
|
|
default: 'false'
|
|
codesignIdent:
|
|
description: 'Developer ID for application codesigning (macOS only)'
|
|
required: false
|
|
default: '-'
|
|
installerIdent:
|
|
description: 'Developer ID for installer package codesigning (macOS only)'
|
|
required: false
|
|
default: ''
|
|
codesignTeam:
|
|
description: 'Developer team for codesigning (macOS only)'
|
|
required: false
|
|
default: ''
|
|
codesignUser:
|
|
description: 'Apple ID username for notarization (macOS only)'
|
|
required: false
|
|
default: ''
|
|
codesignPass:
|
|
description: 'Apple ID password for notarization (macOS only)'
|
|
required: false
|
|
default: ''
|
|
package:
|
|
description: 'Create Windows or macOS installation package'
|
|
required: false
|
|
default: 'false'
|
|
workingDirectory:
|
|
description: 'Working directory for packaging'
|
|
required: false
|
|
default: ${{ github.workspace }}
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Run macOS Packaging
|
|
if: runner.os == 'macOS'
|
|
shell: zsh --no-rcs --errexit --pipefail {0}
|
|
working-directory: ${{ inputs.workingDirectory }}
|
|
env:
|
|
MACOS_VERSION: ${{ inputs.macos_version }}
|
|
CODESIGN_IDENT: ${{ inputs.codesignIdent }}
|
|
CODESIGN_IDENT_INSTALLER: ${{ inputs.installerIdent }}
|
|
CODESIGN_TEAM: ${{ inputs.codesignTeam }}
|
|
CODESIGN_IDENT_USER: ${{ inputs.codesignUser }}
|
|
CODESIGN_IDENT_PASS: ${{ inputs.codesignPass }}
|
|
run: |
|
|
: Run macOS Packaging
|
|
|
|
local -a package_args=(--config ${{ inputs.config }})
|
|
if (( ${+RUNNER_DEBUG} )) package_args+=(--debug)
|
|
|
|
if [[ '${{ inputs.codesign }}' == 'true' ]] package_args+=(--codesign)
|
|
if [[ '${{ inputs.notarize }}' == 'true' ]] package_args+=(--notarize)
|
|
if [[ '${{ inputs.package }}' == 'true' ]] package_args+=(--package)
|
|
|
|
.github/scripts/package-macos ${package_args}
|
|
|
|
- name: Install Dependencies 🛍️
|
|
if: runner.os == 'Linux'
|
|
shell: bash
|
|
run: |
|
|
: Install Dependencies 🛍️
|
|
echo ::group::Install Dependencies
|
|
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
|
|
echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH
|
|
brew install --quiet zsh
|
|
echo ::endgroup::
|
|
|
|
- name: Run Ubuntu Packaging
|
|
if: runner.os == 'Linux'
|
|
shell: zsh --no-rcs --errexit --pipefail {0}
|
|
working-directory: ${{ inputs.workingDirectory }}
|
|
env:
|
|
ACCELERATION: ${{ inputs.acceleration }}
|
|
run: |
|
|
: Run Ubuntu Packaging
|
|
package_args=(
|
|
--target linux-${{ inputs.target }}
|
|
--config ${{ inputs.config }}
|
|
)
|
|
if (( ${+RUNNER_DEBUG} )) build_args+=(--debug)
|
|
|
|
if [[ '${{ inputs.package }}' == 'true' ]] package_args+=(--package)
|
|
|
|
.github/scripts/package-linux ${package_args}
|
|
|
|
- name: Run Windows Packaging
|
|
if: runner.os == 'Windows'
|
|
shell: pwsh
|
|
run: |
|
|
# Run Windows Packaging
|
|
if ( $Env:RUNNER_DEBUG -ne $null ) {
|
|
Set-PSDebug -Trace 1
|
|
}
|
|
|
|
$PackageArgs = @{
|
|
Target = '${{ inputs.target }}'
|
|
Configuration = '${{ inputs.config }}'
|
|
Acceleration = '${{ inputs.acceleration }}'
|
|
}
|
|
|
|
if ( '${{ inputs.package }}' -eq 'true' ) {
|
|
$PackageArgs += @{BuildInstaller = $true}
|
|
}
|
|
|
|
.github/scripts/Package-Windows.ps1 @PackageArgs
|