Skip to content

Add two higher FFT sizes #36

Add two higher FFT sizes

Add two higher FFT sizes #36

Workflow file for this run

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