From 9217878a82278d4800ab8266b1e3029f8ca16e5b Mon Sep 17 00:00:00 2001 From: falkTX Date: Thu, 11 May 2023 13:03:29 +0200 Subject: [PATCH] setup binaries for macOS standalone bundle Signed-off-by: falkTX --- plugins/Common/IldaeilPlugin.cpp | 15 +++++++++++++-- plugins/Common/Makefile.mk | 10 ++++++++-- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/plugins/Common/IldaeilPlugin.cpp b/plugins/Common/IldaeilPlugin.cpp index 11ba3bc..19d0d0d 100644 --- a/plugins/Common/IldaeilPlugin.cpp +++ b/plugins/Common/IldaeilPlugin.cpp @@ -1,6 +1,6 @@ /* * DISTRHO Ildaeil Plugin - * Copyright (C) 2021-2022 Filipe Coelho + * Copyright (C) 2021-2023 Filipe Coelho * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -16,6 +16,7 @@ */ #include "IldaeilBasePlugin.hpp" +#include "DistrhoPluginUtils.hpp" #include "CarlaEngine.hpp" #include "water/files/File.h" @@ -329,8 +330,18 @@ public: { fDiscoveryTool = bundlePath; carla_set_engine_option(fCarlaHostHandle, ENGINE_OPTION_PATH_BINARIES, 0, bundlePath); - // carla_set_engine_option(fCarlaHostHandle, ENGINE_OPTION_PATH_RESOURCES, 0, ""); + carla_set_engine_option(fCarlaHostHandle, ENGINE_OPTION_PATH_RESOURCES, 0, getResourcePath(bundlePath)); } + #ifdef CARLA_OS_MAC + else if (bundlePath != nullptr + && water::File(bundlePath + water::String("/Contents/MacOS/carla-bridge-native" EXT)).existsAsFile()) + { + fDiscoveryTool = bundlePath; + fDiscoveryTool += "/Contents/MacOS"; + carla_set_engine_option(fCarlaHostHandle, ENGINE_OPTION_PATH_BINARIES, 0, fDiscoveryTool); + carla_set_engine_option(fCarlaHostHandle, ENGINE_OPTION_PATH_RESOURCES, 0, getResourcePath(bundlePath)); + } + #endif else { #ifdef CARLA_OS_MAC diff --git a/plugins/Common/Makefile.mk b/plugins/Common/Makefile.mk index 3762e8f..984479e 100644 --- a/plugins/Common/Makefile.mk +++ b/plugins/Common/Makefile.mk @@ -96,7 +96,6 @@ BUILD_CXX_FLAGS += -I../../dpf-widgets/opengl BUILD_CXX_FLAGS += -DCARLA_BACKEND_NAMESPACE=$(CARLA_BACKEND_NAMESPACE) BUILD_CXX_FLAGS += -DSTATIC_PLUGIN_TARGET -BUILD_CXX_FLAGS += -DREAL_BUILD BUILD_CXX_FLAGS += -I../../carla/source/backend BUILD_CXX_FLAGS += -I../../carla/source/includes BUILD_CXX_FLAGS += -I../../carla/source/modules @@ -114,6 +113,9 @@ ifeq ($(STANDALONE),true) TARGETS_BASE = TARGETS_EXTRA = jack +ifeq ($(MACOS),true) +TARGETS_EXTRA += carlabins +endif else @@ -137,7 +139,7 @@ ifneq ($(USE_SYSTEM_CARLA_BINS),true) CARLA_BINARIES = $(CURDIR)/../../carla/bin/carla-bridge-native$(APP_EXT) CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-lv2-gtk2$(APP_EXT) CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-lv2-gtk3$(APP_EXT) -CARLA_BINARIES = $(CURDIR)/../../carla/bin/carla-discovery-native$(APP_EXT) +CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-discovery-native$(APP_EXT) ifeq ($(CARLA_EXTRA_TARGETS),true) @@ -161,12 +163,16 @@ endif endif # CARLA_EXTRA_TARGETS carlabins: $(TARGETS_BASE) +ifeq ($(STANDALONE),true) + install -m 755 $(CARLA_BINARIES) $(shell dirname $(jack)) +else install -m 755 $(CARLA_BINARIES) $(shell dirname $(lv2)) install -m 755 $(CARLA_BINARIES) $(shell dirname $(vst2)) install -m 755 $(CARLA_BINARIES) $(shell dirname $(clap)) ifneq ($(NAME),Ildaeil-MIDI) install -m 755 $(CARLA_BINARIES) $(shell dirname $(vst3)) endif +endif else # USE_SYSTEM_CARLA_BINS