mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-10 12:40:12 +02:00
Patch the rest of the VST3 SDK for winegcc
This commit is contained in:
+13
@@ -183,6 +183,19 @@ if with_vst3
|
|||||||
override_options : ['warning_level=0'],
|
override_options : ['warning_level=0'],
|
||||||
native : false,
|
native : false,
|
||||||
)
|
)
|
||||||
|
vst3_sdk_hosting_wine = static_library(
|
||||||
|
'sdk_hosting_wine',
|
||||||
|
vst3.get_variable('sdk_common_sources') + vst3.get_variable('sdk_hosting_sources'),
|
||||||
|
link_with : [vst3_base_wine, vst3_pluginterfaces_wine],
|
||||||
|
cpp_args : vst3_compiler_options + vst3_wine_compiler_options + ['-Wno-multichar'],
|
||||||
|
include_directories : vst3_include_dir,
|
||||||
|
override_options : ['warning_level=0'],
|
||||||
|
native : false,
|
||||||
|
)
|
||||||
|
vst3_sdk_hosting_wine_dep = declare_dependency(
|
||||||
|
link_with : vst3_sdk_hosting_wine,
|
||||||
|
include_directories : vst3_include_dir,
|
||||||
|
)
|
||||||
else
|
else
|
||||||
message('VST3 support has been disabled')
|
message('VST3 support has been disabled')
|
||||||
endif
|
endif
|
||||||
|
|||||||
+10
-4
@@ -43,10 +43,10 @@ replace_char16() {
|
|||||||
|
|
||||||
wchar_version=${needle//char16_t/wchar_t}
|
wchar_version=${needle//char16_t/wchar_t}
|
||||||
sed -i "s/^$needle$/#ifdef __WINE__\\
|
sed -i "s/^$needle$/#ifdef __WINE__\\
|
||||||
$wchar_version\\
|
$wchar_version\\
|
||||||
#else\\
|
#else\\
|
||||||
\0\\
|
\0\\
|
||||||
#endif/" "$filename"
|
#endif/" "$filename"
|
||||||
}
|
}
|
||||||
|
|
||||||
replace_char16 "using ConverterFacet = std::codecvt_utf8_utf16<char16_t>;" "$sdk_directory/base/source/fstring.cpp"
|
replace_char16 "using ConverterFacet = std::codecvt_utf8_utf16<char16_t>;" "$sdk_directory/base/source/fstring.cpp"
|
||||||
@@ -57,6 +57,12 @@ replace_char16 "using Converter = std::wstring_convert<std::codecvt_utf8_utf16<c
|
|||||||
# version here is trying to do something funky
|
# version here is trying to do something funky
|
||||||
sed -i 's/\b__MINGW32__\b/__NOPE__/g' "$sdk_directory/pluginterfaces/base/funknown.cpp"
|
sed -i 's/\b__MINGW32__\b/__NOPE__/g' "$sdk_directory/pluginterfaces/base/funknown.cpp"
|
||||||
|
|
||||||
|
# We're building with `WIN32_LEAN_AND_MEAN` because some of the definitions in
|
||||||
|
# there conflict with the C standard library as provided by GCC. This also
|
||||||
|
# excludes the shell API, which the VST3 SDK uses to open URLs.
|
||||||
|
sed -i "s/^#include <windows.h>$/#include <windows.h> \\/\\/ patched for yabridge\\
|
||||||
|
#include <shellapi.h>/" "$sdk_directory/public.sdk/source/common/openurl.cpp"
|
||||||
|
|
||||||
# Meson requires this program to output something, or else it will error out
|
# Meson requires this program to output something, or else it will error out
|
||||||
# when trying to encode the empty output
|
# when trying to encode the empty output
|
||||||
echo "Successfully patched '$sdk_directory' for winegcc compatibility"
|
echo "Successfully patched '$sdk_directory' for winegcc compatibility"
|
||||||
|
|||||||
Reference in New Issue
Block a user