Commit Graph

249 Commits

Author SHA1 Message Date
Robbert van der Helm 75c64e6be8 Bump version to 3.7.0 2021-11-21 16:04:49 +01:00
Robbert van der Helm a94be56387 Relax dependency version bounds somewhat
These initially strictly followed the subprojects to prevent issues on
the AUR, but the PKGBUILDs there nuke these directories anyways.
2021-11-11 03:41:01 +01:00
Robbert van der Helm 7bdcdb6eff Use Meson 0.55 provides instead of fallback 2021-11-11 03:40:12 +01:00
Robbert van der Helm 52d0232c91 Update tomlplusplus wrap to 2.5.0 2021-11-11 03:40:12 +01:00
Robbert van der Helm a7f63725eb Specify a minimum Meson version
Now that we use patch_directory for the wraps.
2021-11-11 03:40:12 +01:00
Robbert van der Helm fe1c2e3848 Update bitsery wrap to 5.2.2 and patch_directory
And switch to wrap-git.
2021-11-11 03:40:12 +01:00
Robbert van der Helm 43c66b6dc3 Update function2 wrap to 4.2.0 and patch_directory
And switch to wrap-git.
2021-11-11 03:26:56 +01:00
Robbert van der Helm 5be149cb52 Prevent wineg++ from including the SAL headers
This otherwise breaks compilation under Wine 6.20:

https://bugs.winehq.org/show_bug.cgi?id=51919
2021-10-23 20:21:10 +02:00
Robbert van der Helm e79d1ec03a Bump to version 3.6.0 2021-10-15 10:34:31 +02:00
Robbert van der Helm 63975115d2 Bump to version 3.5.2 2021-08-08 15:49:17 +02:00
Robbert van der Helm 1db6e853da Bump to version 3.5.1 2021-07-31 21:29:48 +02:00
Robbert van der Helm 4b256d456b Bump to version 3.5.0 2021-07-23 16:38:00 +02:00
Robbert van der Helm ae454be4b5 Bump to version 3.4.0 2021-07-15 16:06:15 +02:00
Robbert van der Helm 4013aea63a Include the configuration as a dependency
Apparently this wasn't even supposed to work, so it's probably a good
idea to do it properly before things break.
2021-07-13 22:05:11 +02:00
Robbert van der Helm 661fc4fee2 Move notice about 32-bit Boost.Filesystem dep
This got lost somewhere during the refactor.
2021-07-01 15:21:46 +02:00
Robbert van der Helm 9edae35304 Don't build 64-bit plugin hosts on 32-bit systems
This should in theory work.
2021-07-01 15:16:56 +02:00
Robbert van der Helm d459649f49 Move most of the Meson build to subdirectories
We sadly cannot call `shared_library()` and `executable()` in these
subdirectories while still maintaining the same `build/` directory
structure, but this is still much cleaner. All of the other build
artifacts are now also gone from the root of `build/` so it's cleaner
overall.
2021-07-01 14:57:23 +02:00
Robbert van der Helm 8dd3e091fb Move VST3 SDK deps to a separate meson.build file
We should only have the global options in the main meson.build file. It
made sense to keep everything in one place at one point, but an 800 line
build script becomes a bit difficult to skim through.
2021-07-01 14:57:23 +02:00
Robbert van der Helm 9ed3c357aa Rearrange the Meson build file
This order should make more sense. We should probably also try to split
it up a bit into separate `meson.build` files now that it's become 800
lines long.
2021-07-01 14:57:21 +02:00
Robbert van der Helm c067cd1b40 Prevent cursors from being unintentionally hidden
Some interaction between JUCE and Wine would cause these cursors to be
hidden and then never shown again. This is of course more of a temporary
workaround until the issue gets solved within Wine.
2021-06-28 18:13:43 +02:00
Robbert van der Helm c51f92276a Reorganize dependencies 2021-06-28 17:55:29 +02:00
Robbert van der Helm 6573b01c2d Fix non-VST3 builds
We now always initialize the COM library since yabridge 3.3.1.
2021-06-24 19:08:02 +02:00
Robbert van der Helm 02feb8fab3 Fix static linking Boost in 32-bit yabridge build 2021-06-24 19:06:02 +02:00
Robbert van der Helm 81e4a4d0fc Improve style in meson.build 2021-06-24 18:39:14 +02:00
Robbert van der Helm 741b2b7fb5 Add proper macro defs for 32-bit Boost Filesystem 2021-06-24 18:38:03 +02:00
Robbert van der Helm f0c26cbe06 Allow building 32-bit yabridge libraries 2021-06-24 13:41:43 +02:00
Robbert van der Helm 15e271f70a Fix unity builds after reintroduction of vfork
Boost.Process was being included before this flag was set. Seems safer
to set it in the build anyways.
2021-06-22 19:00:21 +02:00
Robbert van der Helm 9d11b501cd Add a shared memory based audio buffer
We'll be using this to reduce the amount of copying we have to do during
audio processing.
2021-06-09 20:06:57 +02:00
Robbert van der Helm 53e4fa369f Bump to version 3.3.1 2021-06-09 16:36:02 +02:00
Robbert van der Helm 7228d49507 Bump to version 3.3.0 2021-06-03 17:35:45 +02:00
Robbert van der Helm db6ecdbbd4 Also define the shobjidl.h define globally
This was needed for Wine 6.2.
2021-05-11 02:27:43 +02:00
Robbert van der Helm af299f3c66 Always define NOMINMAX and friends globally
Repeating this every time is worse than defining them in the compiler
command line.
2021-05-11 02:27:43 +02:00
Robbert van der Helm 5577c4bfd8 Fix build on Wine 6.8 #103
Wine dropped `WINE_NOWINSOCK`, so now we sadly have to define this
globally instead.
2021-05-11 02:27:38 +02:00
Robbert van der Helm ffdab23d46 Bump the version to 3.2.0 2021-05-03 13:09:18 +02:00
Robbert van der Helm 459e7ac56b Fix syntax error in meson.build
As a result of 9daddb777b.
2021-05-01 19:31:44 +02:00
Robbert van der Helm 9daddb777b Fix unity builds
The version header was not being included in the correct unit,
sometimes.
2021-05-01 19:28:00 +02:00
Robbert van der Helm 5b28d44797 Define a static library for the Wine hosts
This means we only have to compile everything two times, instead of four
times. We sadly still need to compile lots of files at least three
times. (once for native, once for 64-bit Wine, and once for 32-bit Wine)
2021-05-01 01:09:58 +02:00
Robbert van der Helm 588a8fd590 Better structure the meson.build file
It's been growing a bit over the last year.
2021-04-30 16:16:35 +02:00
Robbert van der Helm 5680ed5035 Enable additional assertions in debug builds 2021-04-30 16:06:50 +02:00
Robbert van der Helm 93f089eca7 Always set FTZ instead of gating it behind a flag
After a quick round of testing it seems like REAPER doesn't always
enable this on the audio thread, but Bitwig, Ardour, Carla and Renoise
do. So it should be safe to just get rid of the option and to leave this
enabled all the time.
2021-04-28 12:07:14 +02:00
Robbert van der Helm a12e0dcc27 Enable SSE2 instructions
We need this to enable FTZ in 3aac8e3483.
SSSE2 is a default on x86_64, but we need to explicitly enable it when
compiling the 32-bit bitbridge.
2021-04-27 23:50:28 +02:00
Robbert van der Helm dd552dc8d7 Print the Wine version at Meson configure time 2021-04-18 14:06:33 +02:00
Robbert van der Helm ba6b87c790 Bump to version 3.1.0 2021-04-15 12:38:11 +02:00
Robbert van der Helm b1eaaa0638 Fix ABI compatibility with 32-bit VST3 plugins #80
This would cause 32-bit VST3 plugins to crash in mysterious ways. What
ended up being the issue is that the plugins expected doubles to be
8-byte aligned in structs, while GCC doesn't do that by default in x86
code for legacy ABI compatibility reasons. Figuring out what exactly was
the issue took months, but luckily the fix was to just add an
`-malign-double`!
2021-04-12 22:35:09 +02:00
Robbert van der Helm 05f739d9db Update to version 3.7.2 of the VST3 SDK 2021-04-03 18:02:23 +02:00
Robbert van der Helm 36e64d89dc Use dependency() with subproject fallback for deps
None of these libraries are packaged anywhere right now since they do
not have Meson build definitions, but in case they ever do it should be
possible to use them from a system package manager.
2021-03-12 14:50:42 +01:00
Robbert van der Helm 0d7b9bd178 Bump to version 3.0.2 2021-03-07 16:08:54 +01:00
Robbert van der Helm d91c8eeb07 Bump to version 3.0.1 2021-02-26 16:21:16 +01:00
Robbert van der Helm 8c2594f902 Bump to version 3.0.0 2021-02-14 14:36:01 +01:00
Robbert van der Helm 4f8eaaaa75 Refactor plugin factories into Vst3*Proxy format
Now every proxy object that's directly created by the host or plugin
shares the same structure.
2021-02-13 15:42:05 +01:00