mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-06 19:40:10 +02:00
Implement yabridge_version for all plugin bridges
The host can use this to query the yabridge version in use.
This commit is contained in:
@@ -54,7 +54,7 @@ const void* (*yabridge_module_get_factory)(ClapPluginBridge* instance,
|
|||||||
// This bridges the `yabridge_version()` call from the plugin library. This
|
// This bridges the `yabridge_version()` call from the plugin library. This
|
||||||
// function was added later, so through weird version mixing it may be missing
|
// function was added later, so through weird version mixing it may be missing
|
||||||
// on the yabridge library.
|
// on the yabridge library.
|
||||||
char* (*remote_yabridge_version)() = nullptr;
|
const char* (*remote_yabridge_version)() = nullptr;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The bridge instance for this chainloader. This is initialized when
|
* The bridge instance for this chainloader. This is initialized when
|
||||||
@@ -181,7 +181,7 @@ CLAP_EXPORT const clap_plugin_entry_t clap_entry = {
|
|||||||
* wouldn't be very useful, and that would also cause the chainloader to be
|
* wouldn't be very useful, and that would also cause the chainloader to be
|
||||||
* rebuilt on every git commit in development.
|
* rebuilt on every git commit in development.
|
||||||
*/
|
*/
|
||||||
extern "C" YABRIDGE_EXPORT char* yabridge_version() {
|
extern "C" YABRIDGE_EXPORT const char* yabridge_version() {
|
||||||
if (!initialize_library() || !remote_yabridge_version) {
|
if (!initialize_library() || !remote_yabridge_version) {
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ AEffect* (*yabridge_plugin_init)(audioMasterCallback host_callback,
|
|||||||
// This bridges the `yabridge_version()` call from the plugin library. This
|
// This bridges the `yabridge_version()` call from the plugin library. This
|
||||||
// function was added later, so through weird version mixing it may be missing
|
// function was added later, so through weird version mixing it may be missing
|
||||||
// on the yabridge library.
|
// on the yabridge library.
|
||||||
char* (*remote_yabridge_version)() = nullptr;
|
const char* (*remote_yabridge_version)() = nullptr;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The first time one of the exported functions from this library gets called,
|
* The first time one of the exported functions from this library gets called,
|
||||||
@@ -127,7 +127,7 @@ YABRIDGE_EXPORT AEffect* deprecated_main(audioMasterCallback audioMaster) {
|
|||||||
* wouldn't be very useful, and that would also cause the chainloader to be
|
* wouldn't be very useful, and that would also cause the chainloader to be
|
||||||
* rebuilt on every git commit in development.
|
* rebuilt on every git commit in development.
|
||||||
*/
|
*/
|
||||||
extern "C" YABRIDGE_EXPORT char* yabridge_version() {
|
extern "C" YABRIDGE_EXPORT const char* yabridge_version() {
|
||||||
if (!initialize_library() || !remote_yabridge_version) {
|
if (!initialize_library() || !remote_yabridge_version) {
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ PluginFactory* (*yabridge_module_get_plugin_factory)(
|
|||||||
// This bridges the `yabridge_version()` call from the plugin library. This
|
// This bridges the `yabridge_version()` call from the plugin library. This
|
||||||
// function was added later, so through weird version mixing it may be missing
|
// function was added later, so through weird version mixing it may be missing
|
||||||
// on the yabridge library.
|
// on the yabridge library.
|
||||||
char* (*remote_yabridge_version)() = nullptr;
|
const char* (*remote_yabridge_version)() = nullptr;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The bridge instance for this chainloader. This is initialized when
|
* The bridge instance for this chainloader. This is initialized when
|
||||||
@@ -164,7 +164,7 @@ extern "C" YABRIDGE_EXPORT PluginFactory* GetPluginFactory() {
|
|||||||
* wouldn't be very useful, and that would also cause the chainloader to be
|
* wouldn't be very useful, and that would also cause the chainloader to be
|
||||||
* rebuilt on every git commit in development.
|
* rebuilt on every git commit in development.
|
||||||
*/
|
*/
|
||||||
extern "C" YABRIDGE_EXPORT char* yabridge_version() {
|
extern "C" YABRIDGE_EXPORT const char* yabridge_version() {
|
||||||
if (!initialize_library() || !remote_yabridge_version) {
|
if (!initialize_library() || !remote_yabridge_version) {
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,9 @@
|
|||||||
|
|
||||||
#include <clap/entry.h>
|
#include <clap/entry.h>
|
||||||
|
|
||||||
|
// Generated inside of the build directory
|
||||||
|
#include <version.h>
|
||||||
|
|
||||||
#include "bridges/clap.h"
|
#include "bridges/clap.h"
|
||||||
|
|
||||||
using namespace std::literals::string_literals;
|
using namespace std::literals::string_literals;
|
||||||
@@ -167,3 +170,11 @@ extern "C" YABRIDGE_EXPORT const void* yabridge_module_get_factory(
|
|||||||
|
|
||||||
return instance->get_factory(factory_id);
|
return instance->get_factory(factory_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the yabridge version in use. Can be queried by hosts through the
|
||||||
|
* chainloader. Both functions have the same name and signature.
|
||||||
|
*/
|
||||||
|
extern "C" YABRIDGE_EXPORT const char* yabridge_version() {
|
||||||
|
return yabridge_git_version;
|
||||||
|
}
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
|
|
||||||
#include <vestige/aeffectx.h>
|
#include <vestige/aeffectx.h>
|
||||||
|
|
||||||
|
// Generated inside of the build directory
|
||||||
|
#include <version.h>
|
||||||
|
|
||||||
#include "../common/linking.h"
|
#include "../common/linking.h"
|
||||||
#include "bridges/vst2.h"
|
#include "bridges/vst2.h"
|
||||||
|
|
||||||
@@ -130,3 +133,11 @@ extern "C" YABRIDGE_EXPORT AEffect* yabridge_plugin_init(
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the yabridge version in use. Can be queried by hosts through the
|
||||||
|
* chainloader. Both functions have the same name and signature.
|
||||||
|
*/
|
||||||
|
extern "C" YABRIDGE_EXPORT const char* yabridge_version() {
|
||||||
|
return yabridge_git_version;
|
||||||
|
}
|
||||||
|
|||||||
@@ -14,6 +14,9 @@
|
|||||||
// You should have received a copy of the GNU General Public License
|
// You should have received a copy of the GNU General Public License
|
||||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
// Generated inside of the build directory
|
||||||
|
#include <version.h>
|
||||||
|
|
||||||
#include "../common/linking.h"
|
#include "../common/linking.h"
|
||||||
#include "bridges/vst3.h"
|
#include "bridges/vst3.h"
|
||||||
|
|
||||||
@@ -165,3 +168,11 @@ yabridge_module_get_plugin_factory(Vst3PluginBridge* instance) {
|
|||||||
|
|
||||||
return instance->get_plugin_factory();
|
return instance->get_plugin_factory();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the yabridge version in use. Can be queried by hosts through the
|
||||||
|
* chainloader. Both functions have the same name and signature.
|
||||||
|
*/
|
||||||
|
extern "C" YABRIDGE_EXPORT const char* yabridge_version() {
|
||||||
|
return yabridge_git_version;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user