diff --git a/CHANGELOG.md b/CHANGELOG.md index ec06be0e..55695d37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,9 +29,6 @@ Versioning](https://semver.org/spec/v2.0.0.html). be logged. This makes recognizing misbheaving plugins a bit easier. - Symbols in all `libyabridge.so` and all Winelib `.so` files are now hidden by default. -- Building from source now requires CMake since this is required to build the - VST3 SDK. You can disable VST3 support to remove this requirement by setting - the `with-vst3` meson build option to `false`. ## [2.1.0] - 2020-11-20 diff --git a/README.md b/README.md index 09b66402..faf8105e 100644 --- a/README.md +++ b/README.md @@ -517,7 +517,6 @@ the following dependencies: - A Wine installation with `winegcc` and the development headers. The latest commits contain a workaround for a winelib [compilation issue](https://bugs.winehq.org/show_bug.cgi?id=49138) with Wine 5.7+. -- CMake for VST3 support[\*](#building-without-vst3-support) - Boost version 1.66 or higher[\*](#building-ubuntu-18.04) - libxcb @@ -549,18 +548,6 @@ After you've finished building you can follow the instructions under the would need to be installed to compile on Ubuntu 18.04. -### Building without VST3 support - -As mentioned above, building the VST3 SDK requires CMake. We might be able to -easily replace the default build definitions for the SDK with a simple -`meson.build` file in the future, but for now if you wish to build yabridge -without VST3 support then you can disable it as follows: - -```shell -# Disable VST3 support, removing the dependency on CMake -meson configure build -Dwith-vst3=false -``` - ### 32-bit bitbridge It is also possible to compile a host application for yabridge that's compatible diff --git a/meson.build b/meson.build index ef158b98..1b881386 100644 --- a/meson.build +++ b/meson.build @@ -70,21 +70,7 @@ tomlplusplus_dep = subproject('tomlplusplus', version : '2.1.0').get_variable('t wine_threads_dep = declare_dependency(link_args : '-lpthread') xcb_dep = dependency('xcb') if with_vst3 - # TODO: Assert version '3.7.1', somehow - - cmake = import('cmake') - vst3_sdk_options = cmake.subproject_options() - vst3_sdk_options.add_cmake_defines({ - 'SMTG_ADD_VST3_HOSTING_SAMPLES': 'OFF', - 'SMTG_ADD_VST3_PLUGINS_SAMPLES': 'OFF', - 'SMTG_ADD_VSTGUI': 'OFF', - }) - vst3_sdk = cmake.subproject('vst3', options : vst3_sdk_options) - # TODO: This is not going to work due to - # https://github.com/mesonbuild/meson/issues/8043 - # We'll have to replace this with a Meson subproject for the time being - # and remove all references to cmake - # vst3_pluginterfaces_dep = vst3_sdk.dependency('pluginterfaces', native : true) + vst3_pluginterfaces_dep = subproject('vst3', version : '3.7.1').get_variable('pluginterfaces_dep') else message('VST3 support has been disabled') endif diff --git a/meson_options.txt b/meson_options.txt index 319d0d54..c42a9a40 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -12,6 +12,13 @@ option( description : 'Enable static linking for Boost. Needed when distributing the binaries to other systems.' ) +# NOTE: Right now this does not actually require CMake. Because of a limitation +# in Meson we can't use the original build definitions just yet. For the +# time being we have just written our own meson.build to replace the SDK's +# CMake project. Once Meson allows mixing native and cross compiled CMake +# subprojects the commit that added this notice can be reverted. +# +# https://github.com/mesonbuild/meson/issues/8043 option( 'with-vst3', type : 'boolean',