Some hosts on Apple Silicon require that the entire bundle has a
well-formed signature, rather than just the plugin binary itself. This
patch checks whether the bundle signature is valid, and if it is not,
ad-hoc signs the bundle before copying.
This change allows users to use macro values defined by Visual Studio in
library names, which might be useful e.g. when selecting different
libraries based on the build configuration.
If the filename of a library contains a special character that would
have a special meaning in the Visual Studio project file, you must use
the ASCII escape sequence for this character instead ("$" becomes "%24",
"%" becomes "%25").
This escaping will happen automatically for non-user-specified library
dependencies, including windows libraries specified in module header
blocks, and the plugin shared code target.
Since the window borders are unknown for a short time after window creation on
Linux, restoreWindowStateFromString() needs to adjust the restored position
before passing it on to the XWindow system.
The adjustment is dependent on whether we use the native or the JUCE titlebar.
Hence the adjustment can only be correct if the titlebar configuration has
already happened before calling restoreWindowStateFromString().
With this patch applied, the DemoRunner should build under MinGW, and be
(nearly) feature-complete compared to the MSVC build.
Specifically, when building with MinGW:
- Adds support for accessibility
- Fixes build issues in the juce_video module
- Fixes a link issue in the VST3 wrapper when VST3_CAN_REPLACE_VST2 is
defined
- Adds support for the new-style native FileChooser
- Tidies up some other low-severity warnings
Known issues:
- Direct2D rendering is still not supported when building with MinGW due
to ABI compatibilities.
When the AvailableModulesList is destroyed, it will wait for the current
module scanning job (running on a background thread) to complete. This
job will try to take the AvailableModulesList::lock when it completes,
so the lock must outlive the background thread.