mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-07 03:50:11 +02:00
Remove the with- prefix from the build options
This commit is contained in:
@@ -46,7 +46,7 @@ jobs:
|
|||||||
|
|
||||||
# Statically link to libstdc++ on Ubuntu 18.04 as we're compiling
|
# Statically link to libstdc++ on Ubuntu 18.04 as we're compiling
|
||||||
# with a newer version of g++ than what's in the default repos
|
# with a newer version of g++ than what's in the default repos
|
||||||
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dwith-bitbridge=true -Dcpp_link_args='-mwindows -static-libstdc++' -Dbuild.cpp_link_args='-static-libstdc++'
|
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dbitbridge=true -Dcpp_link_args='-mwindows -static-libstdc++' -Dbuild.cpp_link_args='-static-libstdc++'
|
||||||
ninja -C build
|
ninja -C build
|
||||||
- name: Strip remaining debug symbols
|
- name: Strip remaining debug symbols
|
||||||
run: strip build/libyabridge{,-chainloader}-{vst2,vst3}.so build/yabridge-{host,group}{,-32}.exe.so
|
run: strip build/libyabridge{,-chainloader}-{vst2,vst3}.so build/yabridge-{host,group}{,-32}.exe.so
|
||||||
@@ -84,7 +84,7 @@ jobs:
|
|||||||
# In this version we don't need to statically link libstdc++ since
|
# In this version we don't need to statically link libstdc++ since
|
||||||
# Ubuntu 20.04 and similar distros will ship with a version that's
|
# Ubuntu 20.04 and similar distros will ship with a version that's
|
||||||
# compatible with GCC 10, even if that's not the default GCC version
|
# compatible with GCC 10, even if that's not the default GCC version
|
||||||
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dwith-bitbridge=true
|
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dbitbridge=true
|
||||||
ninja -C build
|
ninja -C build
|
||||||
- name: Strip remaining debug symbols
|
- name: Strip remaining debug symbols
|
||||||
run: strip build/libyabridge{,-chainloader}-{vst2,vst3}.so build/yabridge-{host,group}{,-32}.exe.so
|
run: strip build/libyabridge{,-chainloader}-{vst2,vst3}.so build/yabridge-{host,group}{,-32}.exe.so
|
||||||
@@ -124,7 +124,7 @@ jobs:
|
|||||||
|
|
||||||
# Statically link to libstdc++ on Ubuntu 18.04, and also target a
|
# Statically link to libstdc++ on Ubuntu 18.04, and also target a
|
||||||
# 32-bit OS
|
# 32-bit OS
|
||||||
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dwith-bitbridge=true -Dcpp_link_args='-mwindows -static-libstdc++' -Dbuild.cpp_args='-m32' -Dbuild.cpp_link_args='-m32 -static-libstdc++'
|
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=10000 -Dbitbridge=true -Dcpp_link_args='-mwindows -static-libstdc++' -Dbuild.cpp_args='-m32' -Dbuild.cpp_link_args='-m32 -static-libstdc++'
|
||||||
ninja -C build
|
ninja -C build
|
||||||
- name: Strip remaining debug symbols
|
- name: Strip remaining debug symbols
|
||||||
run: strip build/libyabridge{,-chainloader}-{vst2,vst3}.so build/yabridge-{host,group}{,-32}.exe.so
|
run: strip build/libyabridge{,-chainloader}-{vst2,vst3}.so build/yabridge-{host,group}{,-32}.exe.so
|
||||||
|
|||||||
@@ -46,6 +46,8 @@ Versioning](https://semver.org/spec/v2.0.0.html).
|
|||||||
- Yabridge now prints the path to the `libyabridge-{vst2,vst3}.so` library
|
- Yabridge now prints the path to the `libyabridge-{vst2,vst3}.so` library
|
||||||
that's being used on startup. This tells you where the chainloader is loading
|
that's being used on startup. This tells you where the chainloader is loading
|
||||||
the library file from. Because you can never have too much information, right?
|
the library file from. Because you can never have too much information, right?
|
||||||
|
- The `with-bitbridge`, `with-vst3`, and `with-winedbg` build options have been
|
||||||
|
renamed to `bitbridge`, `vst3`, and `winedbg`.
|
||||||
- `effProcessEvents` VST2 calls are now filtered out from the log when
|
- `effProcessEvents` VST2 calls are now filtered out from the log when
|
||||||
`YABRIDGE_DEBUG_LEVEL` is set to 1.
|
`YABRIDGE_DEBUG_LEVEL` is set to 1.
|
||||||
|
|
||||||
@@ -78,6 +80,7 @@ Versioning](https://semver.org/spec/v2.0.0.html).
|
|||||||
|
|
||||||
- `libyabridge-chainloader-vst2.so` and `libyabridge-chainloader-vst3.so` are
|
- `libyabridge-chainloader-vst2.so` and `libyabridge-chainloader-vst3.so` are
|
||||||
new files that should be included in the package.
|
new files that should be included in the package.
|
||||||
|
- The `with-bitbridge` build option has been renamed to just `bitbridge`.
|
||||||
- Completely removed the dependency on all Boost libraries.
|
- Completely removed the dependency on all Boost libraries.
|
||||||
- Added a dependency on the headers-only
|
- Added a dependency on the headers-only
|
||||||
[`ghc::filesystem`](https://github.com/gulrak/filesystem) library to replace
|
[`ghc::filesystem`](https://github.com/gulrak/filesystem) library to replace
|
||||||
|
|||||||
@@ -812,9 +812,9 @@ bit versions of the XCB library. This can then be set up as follows:
|
|||||||
|
|
||||||
```shell
|
```shell
|
||||||
# Enable the bitbridge on an existing build
|
# Enable the bitbridge on an existing build
|
||||||
meson configure build -Dwith-bitbridge=true
|
meson configure build -Dbitbridge=true
|
||||||
# Or configure a new build from scratch
|
# Or configure a new build from scratch
|
||||||
meson setup build --buildtype=release --cross-file cross-wine.conf -Dwith-bitbridge=true
|
meson setup build --buildtype=release --cross-file cross-wine.conf -Dbitbridge=true
|
||||||
|
|
||||||
ninja -C build
|
ninja -C build
|
||||||
```
|
```
|
||||||
@@ -836,7 +836,7 @@ actual 32-bit system you would need to comment out the 64-bit `yabridge-host`
|
|||||||
and `yabridge-group` binaries in `meson.build`:
|
and `yabridge-group` binaries in `meson.build`:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
meson setup build --buildtype=release --cross-file=cross-wine.conf --unity=on --unity-size=1000 -Dwith-bitbridge=true -Dbuild.cpp_args='-m32' -Dbuild.cpp_link_args='-m32'
|
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
|
ninja -C build
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -900,5 +900,5 @@ environments and window managers will require some slight modifications in
|
|||||||
rebuild yabridge:
|
rebuild yabridge:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
meson configure build --buildtype=debug -Dwith-winedbg=true
|
meson configure build --buildtype=debug -Dwinedbg=true
|
||||||
```
|
```
|
||||||
|
|||||||
+6
-6
@@ -17,19 +17,19 @@ project(
|
|||||||
#
|
#
|
||||||
|
|
||||||
# In theory yabridge should compile fine on a 32-bit system, but you will always
|
# In theory yabridge should compile fine on a 32-bit system, but you will always
|
||||||
# need to pass `-Dwith-bitbridge=true`. We just make sure that we won't build
|
# need to pass `-Dbitbridge=true`. We just make sure that we won't build
|
||||||
# any 64-bit binaries in that situation.
|
# any 64-bit binaries in that situation.
|
||||||
is_64bit_system = build_machine.cpu_family() not in ['x86', 'arm']
|
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_32bit_libraries = (not is_64bit_system) or get_option('build.cpp_args').contains('-m32')
|
||||||
with_bitbridge = get_option('with-bitbridge')
|
with_bitbridge = get_option('bitbridge')
|
||||||
with_winedbg = get_option('with-winedbg')
|
with_winedbg = get_option('winedbg')
|
||||||
with_vst3 = get_option('with-vst3')
|
with_vst3 = get_option('vst3')
|
||||||
|
|
||||||
#
|
#
|
||||||
# Compiler flags
|
# Compiler flags
|
||||||
#
|
#
|
||||||
|
|
||||||
# Depending on the `with-bitbridge` flag we'll enable building secondary 32-bit
|
# Depending on the `bitbridge` flag we'll enable building secondary 32-bit
|
||||||
# host applications that can act as a bit bridge for using 32-bit Windows
|
# host applications that can act as a bit bridge for using 32-bit Windows
|
||||||
# plugins in 64-bit Linux VST hosts. The plugin will determine which host
|
# plugins in 64-bit Linux VST hosts. The plugin will determine which host
|
||||||
# application to use based on the `.dll` file it's trying to load. This setup is
|
# application to use based on the `.dll` file it's trying to load. This setup is
|
||||||
@@ -164,7 +164,7 @@ if wine_version.returncode() == 0 and \
|
|||||||
with_vst3
|
with_vst3
|
||||||
error('Because of a bug in Wine < 5.7\n' +
|
error('Because of a bug in Wine < 5.7\n' +
|
||||||
'you cannot build yabridge with VST3 support using these older Wine versions.\n' +
|
'you cannot build yabridge with VST3 support using these older Wine versions.\n' +
|
||||||
'Use the \'-Dwith-vst3=false\' build option to disable VST3 support.\n\n' +
|
'Use the \'-Dvst3=false\' build option to disable VST3 support.\n\n' +
|
||||||
'https://github.com/robbert-vdh/yabridge/issues/63#issuecomment-757369645')
|
'https://github.com/robbert-vdh/yabridge/issues/63#issuecomment-757369645')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
+3
-5
@@ -1,21 +1,19 @@
|
|||||||
# TODO: For yabridge 4.0, remove the `with-` prefix from these options
|
|
||||||
|
|
||||||
option(
|
option(
|
||||||
'with-bitbridge',
|
'bitbridge',
|
||||||
type : 'boolean',
|
type : 'boolean',
|
||||||
value : false,
|
value : false,
|
||||||
description : 'Build a 32-bit host application for hosting 32-bit plugins. See the readme for full instructions on how to use this.'
|
description : 'Build a 32-bit host application for hosting 32-bit plugins. See the readme for full instructions on how to use this.'
|
||||||
)
|
)
|
||||||
|
|
||||||
option(
|
option(
|
||||||
'with-vst3',
|
'vst3',
|
||||||
type : 'boolean',
|
type : 'boolean',
|
||||||
value : true,
|
value : true,
|
||||||
description : 'Whether to build the VST3 version of yabridge.'
|
description : 'Whether to build the VST3 version of yabridge.'
|
||||||
)
|
)
|
||||||
|
|
||||||
option(
|
option(
|
||||||
'with-winedbg',
|
'winedbg',
|
||||||
type : 'boolean',
|
type : 'boolean',
|
||||||
value : false,
|
value : false,
|
||||||
description : 'Whether to run the Wine VST host with GDB attached. Might not always be reliable.'
|
description : 'Whether to run the Wine VST host with GDB attached. Might not always be reliable.'
|
||||||
|
|||||||
@@ -77,9 +77,9 @@ class HostProcess {
|
|||||||
* environment variables for the Wine prefix the plugin is in, setting up
|
* environment variables for the Wine prefix the plugin is in, setting up
|
||||||
* pipes or files for STDIO redirection, closing file descriptors to prevent
|
* pipes or files for STDIO redirection, closing file descriptors to prevent
|
||||||
* leaks, and wrapping all of that in a terminal process running winedbg if
|
* leaks, and wrapping all of that in a terminal process running winedbg if
|
||||||
* we're compiling with `-Dwith-winedbg=true`. Keep in mind that winedbg
|
* we're compiling with `-Dwinedbg=true`. Keep in mind that winedbg does not
|
||||||
* does not handle arguments containing spaces, so most Windows paths will
|
* handle arguments containing spaces, so most Windows paths will be split
|
||||||
* be split up into multiple arguments.
|
* up into multiple arguments.
|
||||||
*
|
*
|
||||||
* @param logger The `Logger` instance the redirected STDIO streams will be
|
* @param logger The `Logger` instance the redirected STDIO streams will be
|
||||||
* written to.
|
* written to.
|
||||||
|
|||||||
Reference in New Issue
Block a user