2 ms·
Alright, I tried to push my fixed version of the VST3 SDK to Github but because it uses a ton of Git Submodules it didn't quite work. What I did instead was do
by gavinray 5y ago
Alright, I tried to push my fixed version of the VST3 SDK to Github but because it uses a ton of Git Submodules it didn't quite work.
What I did instead was do:
git diff > vst3sdk-no-vstgui-cmake-compatible.patch
Which has a patch with the changes (EXCEPT for the file "Config.cmake.in")
https://github.com/GavinRay97/vst3sdk/blob/master/vst3sdk-no-vstgui-cmake-compatible.patch https://github.com/GavinRay97/vst3sdk/blob/master/vst3sdk-no...
I also just said fuck it and zipped up the whole project, you can download it here:
https://github.com/GavinRay97/vst3sdk/blob/master/vst3sdk.zip https://github.com/GavinRay97/vst3sdk/blob/master/vst3sdk.zi...
With this fixed version, using the VST3 SDK becomes much much easier. All you have to do is add it as a vendored subproject in CMake:
project(VST3Example CXX)
add_subdirectory(vendor/vst3sdk)
add_executable(VST3Example src/main.cpp)
target_compile_features(VST3Example PRIVATE cxx_std_20)
target_include_directories(VST3Example PRIVATE vendor/vst3sdk)
# This links SDK if you want to use the "SingleComponentEffect"
target_link_libraries(VST3Example PUBLIC sdk)
Where the project looks something like
$ tree -L 2
.
├── CMakeLists.txt
├── src
│ └── main.cpp
└── vendor
└── vst3sdk
And then here's your VST3 in "main.cpp":
#include "public.sdk/source/main/pluginfactory.h"
#include "public.sdk/source/vst/vstsinglecomponenteffect.h"
using namespace Steinberg;
using namespace Steinberg::Vst;
class MyVST : Steinberg::Vst::SingleComponentEffect {};
__declspec(dllexport) IPluginFactory* GetPluginFactory() {}
Hope this helps! I am relatively clueless about C++ though!