A JUCE/cmake based plugin project template with Travis-CI and Appveyor integration
Clone or download
Latest commit 11b3e7e Mar 12, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmake update cmake scripts Mar 12, 2018
modules switch to JUCE 5 Mar 10, 2018
src fix warnings Mar 10, 2018
support First commit Apr 19, 2017
.appveyor.yml minor changes to build configuration Apr 19, 2017
.clang-format First commit Apr 19, 2017
.gitignore First commit Apr 19, 2017
.gitmodules switch to JUCE 5 Mar 10, 2018
.travis.yml fix Travis yaml file Mar 11, 2018
CMakeLists.txt update micro version Mar 10, 2018
LICENSE First commit Apr 19, 2017
README.md update README.md Mar 10, 2018

README.md

audio-plugin-project-template

Build Status Build status

This project provides configuration files and some cmake utilities to speed-up the development of JUCE-based audio plugins. What you'll get:

  • Travis CI integration (OS X builds)
  • Appveyor integration (Windows builds)
  • Automatic deployment of release binaries using GitHub releases
  • JUCE and VST3 sdk as submodules
  • JUCE/cmake integration
  • A simple example (a gain control plugin)

The plugin UI

Configure Appveyor

  • Authorize access for Appveyor to your GitHub profile and add the plugin project
  • Create a GitHub access token with a name like "Appveyor token for deployment" and select only public_repo
  • Encrypt the token using this form
  • Replace the content of deploy.auth_token.secure in .appveyor.yml with the encrypted string generated by the form

Configure Travis CI

  • Authorize access for Travis CI to your GitHub profile and add the plugin project
  • Create a GitHub access token with a name like "Travis CI token for deployment" and select only public_repo
  • Encrypt the token using the command line utility
  • Replace the content of deploy.api_key.secure in .travis.yml with the encrypted string generated by the utility

Release

  • The creation of a new release on GitHub will trigger new builds (and automatic deployments, once the builds are succesfully completed) on Appveyor and Travis CI
  • As an alternative, you can manually add a tag to the master branch: git tag vX.Y.Z and then push it git push --tags

Building on OS X

  • Make sure cmake, git and Xcode are installed (if not, the first two can be installed via brew, while Xcode can be downloaded from the App Store)
  • From the terminal, run:
    • git clone https://github.com/shaduzlabs/audio-plugin-project-template.git --recursive
    • cd audio-plugin-project-template
    • mkdir build
    • cd build
    • cmake -DCMAKE_OSX_ARCHITECTURES="i386;x86_64" -G Xcode ..
    • cmake --build . --config Release
    • Now you should have the following bundles:
      • build/Release/gain.vst
      • build/Release/gain.vst3
      • build/Release/gain.component

Building on Windows

  • Make sure cmake, git and Visual Studio 2015 are installed
  • From the command prompt, run:
    • git clone https://github.com/shaduzlabs/audio-plugin-project-template.git --recursive
    • cd audio-plugin-project-template
    • mkdir build
    • cd build
    • cmake -G "Visual Studio 14 2015 Win64" .. to build the 64 bit version or cmake -G "Visual Studio 14 2015" .. to build the 32 bit version
    • cmake --build . --config Release
    • Now you should have the following bundles:
      • build/Release/gain.dll
      • build/Release/gain-vst3.dll