Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
98 lines
3.8 KiB
Diff
98 lines
3.8 KiB
Diff
From 0002273e4df7c9448b52ce54ef38a93cf753fbfd Mon Sep 17 00:00:00 2001
|
|
From: Robbert van der Helm <mail@robbertvanderhelm.nl>
|
|
Date: Sun, 1 Jun 2025 22:22:20 +0200
|
|
Subject: [PATCH] Drop the 32-bit libyabridge support for EnergyXT
|
|
|
|
I don't think anyone is using this, and it's triggering a bug in recent
|
|
Meson versions so just removing it for now should be fine.
|
|
---
|
|
CHANGELOG.md | 9 +++++++++
|
|
README.md | 20 --------------------
|
|
meson.build | 12 +-----------
|
|
3 files changed, 10 insertions(+), 31 deletions(-)
|
|
|
|
diff --git a/CHANGELOG.md b/CHANGELOG.md
|
|
index 687e73b3..262ee298 100644
|
|
--- a/CHANGELOG.md
|
|
+++ b/CHANGELOG.md
|
|
@@ -15,6 +15,15 @@ Versioning](https://semver.org/spec/v2.0.0.html).
|
|
consuming too much memory. This only affected the prebuilt binaries from the
|
|
releases page.
|
|
|
|
+### Removed
|
|
+
|
|
+- Out of the box support for building a 32-bit version of yabridge for use in
|
|
+ 64-bit machines has been dropped as part of solving a compatibility issue with
|
|
+ newer Meson versions
|
|
+ ([#431](https://github.com/robbert-vdh/yabridge/issues/431)). This was only
|
|
+ relevant for using 64-bit Windows plugins in the old 32-bit Linux version of
|
|
+ **EnergyXT**, and should not affect most users.
|
|
+
|
|
### yabridgectl
|
|
|
|
- Fixed a regression that caused `yabridgectl set --path-auto` to no longer
|
|
diff --git a/README.md b/README.md
|
|
index 55155705..6019b67a 100644
|
|
--- a/README.md
|
|
+++ b/README.md
|
|
@@ -886,26 +886,6 @@ Yabridge will detect whether the plugin you're trying to load is 32-bit or
|
|
64-bit, and will run either the regular version or the `*-32.exe` variant
|
|
accordingly.
|
|
|
|
-### 32-bit libraries
|
|
-
|
|
-It also possible to build 32-bit versions of yabridge's libraries, which would
|
|
-let you use both 32-bit and 64-bit Windows VST2, VST3, and CLAP plugins from a
|
|
-32-bit Linux plugin host. This is mostly untested since 32-bit only Linux
|
|
-applications don't really exist anymore, but it should work! The build system
|
|
-will still assume you're compiling from a 64-bit system, so if you're compiling
|
|
-on an actual 32-bit system you would need to comment out the 64-bit
|
|
-`yabridge-host` and `yabridge-group` binaries in `meson.build`:
|
|
-
|
|
-```shell
|
|
-meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=1000 -Dbitbridge=true -Dbuild.cpp_args='-m32' -Dbuild.cpp_link_args='-m32'
|
|
-ninja -C build
|
|
-```
|
|
-
|
|
-Like the above commands, you might need to tweak the unity size based on the
|
|
-amount of system memory available. See the CI build definitions for some
|
|
-examples on how to add static linking in the mix if you're going to run this
|
|
-version of yabridge on some other machine.
|
|
-
|
|
## Debugging
|
|
|
|
Wine's error messages and warning are usually very helpful whenever a plugin
|
|
diff --git a/meson.build b/meson.build
|
|
index 9e69128d..98bf607e 100644
|
|
--- a/meson.build
|
|
+++ b/meson.build
|
|
@@ -20,19 +17,12 @@ project(
|
|
# need to pass `-Dbitbridge=true`. We just make sure that we won't build
|
|
# any 64-bit binaries in that situation.
|
|
is_64bit_system = build_machine.cpu_family() not in ['x86', 'arm']
|
|
-with_32bit_libraries = (not is_64bit_system) or get_option('build.cpp_args').contains('-m32')
|
|
with_bitbridge = get_option('bitbridge')
|
|
with_clap = get_option('clap')
|
|
with_system_asio = get_option('system-asio')
|
|
with_winedbg = get_option('winedbg')
|
|
with_vst3 = get_option('vst3')
|
|
|
|
-# Cookies can't be stored correctly when the native host is 32-bit and the
|
|
-# bridged plugin is 64-bit
|
|
-if with_clap and with_32bit_libraries and is_64bit_system
|
|
- error('CLAP support will not work correctly when using 32-bit yabridge libraries together with 64-bit host binaries.')
|
|
-endif
|
|
-
|
|
#
|
|
# Compiler flags
|
|
#
|
|
@@ -225,7 +215,7 @@ winegcc = meson.get_compiler('cpp', native : false)
|
|
if is_64bit_system
|
|
xcb_64bit_dep = dependency('xcb')
|
|
endif
|
|
-if with_32bit_libraries or with_bitbridge
|
|
+if with_bitbridge
|
|
xcb_32bit_dep = winegcc.find_library('xcb')
|
|
endif
|
|
|