Update maximum input size to support the largest FFT size #38
Workflow file for this run
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
name: build-github | |
on: | |
push: | |
# Pattern matched against refs/tags | |
tags: | |
- '**' | |
jobs: | |
deploy-win: | |
runs-on: windows-2019 | |
steps: | |
- name: Add msbuild to PATH | |
uses: microsoft/[email protected] | |
- name: Checkout iPlug2 | |
uses: actions/checkout@v3 | |
with: | |
repository: 'iPlug2/iPlug2' | |
path: "iPlug2" | |
- name: Get the VST Dependency | |
shell: bash | |
env: | |
VST_DEP: ${{ secrets.VST_DEP }} | |
run: | | |
mkdir temp | |
echo $VST_DEP | base64 -d > temp/temp.unzip | |
unzip temp/temp.unzip -d temp | |
mv temp/VST2_SDK/* "iPlug2/Dependencies/IPlug/VST2_SDK" | |
- name: Checkout VST3 SDK | |
uses: actions/checkout@v3 | |
with: | |
repository: steinbergmedia/vst3sdk | |
submodules: recursive | |
path: "iPlug2/Dependencies/IPlug/VST3_SDK" | |
- name: Download iPlug2 Windows Dependencies | |
shell: bash | |
run: | | |
cd iPlug2/Dependencies | |
./download-prebuilt-libs.sh | |
- name: Checkout Main Repo | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
path: "iPlug2/Projects/HISSTools_Freeze" | |
- name: Checkout HISSTools PluginLib | |
uses: actions/checkout@v3 | |
with: | |
repository: 'AlexHarker/HISSTools_PluginLib' | |
path: "iPlug2/Projects/HISSTools_PluginLib" | |
- name: Checkout FrameLib | |
uses: actions/checkout@v3 | |
with: | |
repository: 'AlexHarker/FrameLib' | |
path: "FrameLib" | |
- name: Build Windows Plugins | |
run: | | |
New-Item -Path 'iPlug2\Projects\HISSTools_Freeze\dependencies\build\Win32' -ItemType Directory | |
New-Item -Path 'iPlug2\Projects\HISSTools_Freeze\dependencies\build\x64' -ItemType Directory | |
msbuild "FrameLib/FrameLib.sln" "/t:framelib_objects" /p:configuration="Static" "/p:platform=x86" /v:q /clp:ErrorsOnly /nologo /m | |
msbuild "FrameLib/FrameLib.sln" "/t:framelib_objects" /p:configuration="Static" "/p:platform=x64" /v:q /clp:ErrorsOnly /nologo /m | |
Move-Item -Path FrameLib\build\Static_Win32\framelib.lib -Destination iPlug2\Projects\HISSTools_Freeze\dependencies\build\Win32\framelib.lib | |
Move-Item -Path FrameLib\build\Static_Win32\framelib_objects.lib -Destination iPlug2\Projects\HISSTools_Freeze\dependencies\build\Win32\framelib_objects.lib | |
Move-Item -Path FrameLib\build\Static_x64\framelib.lib -Destination iPlug2\Projects\HISSTools_Freeze\dependencies\build\x64\framelib.lib | |
Move-Item -Path FrameLib\build\Static_x64\framelib_objects.lib -Destination iPlug2\Projects\HISSTools_Freeze\dependencies\build\x64\framelib_objects.lib | |
msbuild "iPlug2/Projects/HISSTools_Freeze/HISSToolsFreeze.sln" "/t:HISSToolsFreeze-vst2;HISSToolsFreeze-vst3" /p:configuration="release" /p:platform=win32 /v:q /clp:ErrorsOnly /nologo /m | |
msbuild "iPlug2/Projects/HISSTools_Freeze/HISSToolsFreeze.sln" "/t:HISSToolsFreeze-vst2;HISSToolsFreeze-vst3" /p:configuration="release" /p:platform=x64 /v:q /clp:ErrorsOnly /nologo /m | |
- name: Prepare Windows Uploads | |
shell: bash | |
run: mkdir win-builds | |
- name: Prepare VST2 (32 bit) | |
uses: thedoctor0/[email protected] | |
with: | |
path: "HISSToolsFreeze.dll" | |
directory: "iPlug2/Projects/HISSTools_Freeze/build-win/vst2/Win32/Release/" | |
filename: "../../../../../../../win-builds/HISSToolsFreeze_VST2_32bit.zip" | |
- name: Prepare VST3 (32 bit) | |
uses: thedoctor0/[email protected] | |
with: | |
path: "HISSToolsFreeze.vst3" | |
directory: "iPlug2/Projects/HISSTools_Freeze/build-win/vst3/Win32/Release/" | |
filename: "../../../../../../../win-builds/HISSToolsFreeze_VST3_32bit.zip" | |
- name: Prepare VST2 (64 bit) | |
uses: thedoctor0/[email protected] | |
with: | |
path: "HISSToolsFreeze.dll" | |
directory: "iPlug2/Projects/HISSTools_Freeze/build-win/vst2/x64/Release/" | |
filename: "../../../../../../../win-builds/HISSToolsFreeze_VST2_64bit.zip" | |
- name: Prepare VST3 (64 bit) | |
uses: thedoctor0/[email protected] | |
with: | |
path: "HISSToolsFreeze.vst3/" | |
directory: "iPlug2/Projects/HISSTools_Freeze/build-win/" | |
filename: "../../../../win-builds/HISSToolsFreeze_VST3_64bit.zip" | |
- name: Upload Windows Builds | |
uses: actions/upload-artifact@v3 | |
with: | |
name: deploy-win | |
path: "win-builds" | |
deploy-mac: | |
runs-on: macos-11 | |
needs: deploy-win | |
env: | |
release_notes: ${{ github.workspace }}/iPlug2/Projects/HISSTools_Freeze/.github/releases/release-notes-${{ github.ref_name }}.txt | |
testing_version: ${{ endsWith(github.ref_name, 'rc') }} | |
steps: | |
- name: Checkout iPlug2 | |
uses: actions/checkout@v3 | |
with: | |
repository: 'iPlug2/iPlug2' | |
path: "iPlug2" | |
- name: Get the VST Dependency | |
shell: bash | |
env: | |
VST_DEP: ${{ secrets.VST_DEP }} | |
run: | | |
mkdir temp | |
echo $VST_DEP | base64 -d > temp/temp.unzip | |
unzip temp/temp.unzip -d temp | |
mv temp/VST2_SDK/* "iPlug2/Dependencies/IPlug/VST2_SDK" | |
- name: Checkout VST3 SDK | |
uses: actions/checkout@v3 | |
with: | |
repository: steinbergmedia/vst3sdk | |
submodules: recursive | |
path: "iPlug2/Dependencies/IPlug/VST3_SDK" | |
- name: Download iPlug2 Mac Dependencies | |
shell: bash | |
run: | | |
cd iPlug2/Dependencies | |
./download-prebuilt-libs.sh | |
- name: Checkout Main Repo | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
path: "iPlug2/Projects/HISSTools_Freeze" | |
- name: Checkout HISSTools PluginLib | |
uses: actions/checkout@v3 | |
with: | |
repository: 'AlexHarker/HISSTools_PluginLib' | |
path: "iPlug2/Projects/HISSTools_PluginLib" | |
- name: Checkout FrameLib | |
uses: actions/checkout@v3 | |
with: | |
repository: 'AlexHarker/FrameLib' | |
path: "FrameLib" | |
- name: Download Windows Builds | |
uses: actions/download-artifact@v3 | |
with: | |
name: deploy-win | |
path: "iPlug2/Projects/HISSTools_Freeze/build-mac/HISSTools_Freeze/Windows/" | |
- name: Setup Keychain and Identities | |
shell: bash | |
env: | |
TEAM_ID: ${{ secrets.TEAM_ID }} | |
APPLE_ID: ${{ secrets.APPLE_ID }} | |
APP_SPECIFIC_PWD: ${{ secrets.APP_SPECIFIC_PWD }} | |
CERT_PWD: ${{ secrets.CERT_PWD }} | |
CERT_BASE64: ${{ secrets.CERT_BASE64}} | |
CERTPATH: ${{ runner.temp }}/certificate.p12 | |
KEYCHAINPWD: temporarykeychainpassword | |
KEYCHAINPATH: ${{ runner.temp }}/app-signing.keychain-db | |
# create and setup a temporary keychain, then decode the certificate and setup creditials for codesigning and notarization | |
run: | | |
security create-keychain -p "$KEYCHAINPWD" "$KEYCHAINPATH" | |
security list-keychain -d user -s "$KEYCHAINPATH" | |
security set-keychain-settings "$KEYCHAINPATH" | |
security unlock-keychain -p "$KEYCHAINPWD" "$KEYCHAINPATH" | |
echo -n "$CERT_BASE64" | base64 --decode --output $CERTPATH | |
security import "$CERTPATH" -P "$CERT_PWD" -A -t cert -f pkcs12 -k "$KEYCHAINPATH" -T /usr/bin/codesign | |
security set-key-partition-list -S apple-tool:,apple:, -s -k "$KEYCHAINPATH" -D "$CERT_BASE64" -t private "$KEYCHAINPATH" | |
xcrun notarytool store-credentials "AJH-NOTARISE" --apple-id $APPLE_ID --team-id $TEAM_ID --password $APP_SPECIFIC_PWD | |
- name: Build Mac Plugins | |
run: | | |
mkdir -p iPlug2/Projects/HISSTools_Freeze/dependencies/build/ | |
xcodebuild -project 'FrameLib/framelib.xcodeproj' -scheme 'framelib_objects' -destination 'platform=OS X,arch=x86_64' -configuration Deployment -quiet build CODE_SIGNING_ALLOWED=YES | |
mv FrameLib/build/lib/libframelib_objects.a iPlug2/Projects/HISSTools_Freeze/dependencies/build/libframelib_objects.a | |
xcodebuild -project 'iPlug2/Projects/HISSTools_Freeze/projects/HISSToolsFreeze-macOS.xcodeproj' -scheme 'Finished Plugs' -destination 'platform=OS X,arch=x86_64' -configuration Deployment -quiet build CODE_SIGNING_ALLOWED=YES | |
- name: Zip All | |
run: iPlug2/Projects/HISSTools_Freeze/scripts/dist-zip.sh | |
- name: "Check Release Notes Existence" | |
uses: andstor/file-existence-action@v2 | |
id: release_notes_check | |
with: | |
files: ${{ env.release_notes }} | |
- name: Make release | |
uses: "softprops/action-gh-release@v1" | |
with: | |
prerelease: ${{ env.testing_version }} | |
fail_on_unmatched_files: true | |
files: iPlug2/Projects/HISSTools_Freeze/build-mac/HISSTools_Freeze.zip | |
target_commitish: ${{ github.sha }} | |
body_path: ${{ steps.release_notes_check.outputs.files_exists == 'true' && env.release_notes || '' }} | |
body: | | |
This is an automated build of the HISSTools Freeze plugin. | |
${{ env.testing_version == 'true' && 'This version is intended for further testing (not a stable version).' || 'This is a stable release version.' }} | |
Download the zip below to install the plugin. | |
generate_release_notes: true |