Allow to build without external plugins

This commit is contained in:
falkTX 2021-10-26 16:52:36 +01:00
parent 98de75cba0
commit 1050969a48
2 changed files with 47 additions and 24 deletions

View file

@ -22,6 +22,12 @@ include ../dpf/Makefile.base.mk
PLUGIN_FILES = plugins.cpp
# --------------------------------------------------------------
# Cardinal (built-in)
PLUGIN_FILES += $(wildcard Cardinal/src/*.cpp)
ifeq ($(NOPLUGINS),true)
# --------------------------------------------------------------
# AmalgamatedHarmonics
@ -176,11 +182,6 @@ PLUGIN_FILES += $(wildcard BogaudioModules/src/dsp/filters/*.cpp)
BOGAUDIO_CUSTOM = ADSR BlueNoiseGenerator LFO Noise VCA VCO VCF
BOGAUDIO_CUSTOM_PER_FILE = ARQuantity AttackMenuItem ReleaseMenuItem
# --------------------------------------------------------------
# Cardinal (built-in)
PLUGIN_FILES += $(wildcard Cardinal/src/*.cpp)
# --------------------------------------------------------------
# cf
@ -241,6 +242,10 @@ PLUGIN_FILES += $(filter-out rackwindows/src/plugin.cpp,$(wildcard rackwindows/s
PLUGIN_FILES += $(filter-out ZetaCarinaeModules/src/plugin.cpp,$(wildcard ZetaCarinaeModules/src/*.cpp))
# --------------------------------------------------------------
endif # NOPLUGINS
# --------------------------------------------------------------
# Build setup
@ -290,6 +295,10 @@ ifeq ($(HEADLESS),true)
BASE_FLAGS += -DHEADLESS
endif
ifeq ($(NOPLUGINS),true)
BASE_FLAGS += -DNOPLUGINS
endif
ifeq ($(WITH_LTO),true)
BASE_FLAGS += -fno-strict-aliasing -flto
endif
@ -316,7 +325,12 @@ clean:
# --------------------------------------------------------------
PLUGIN_LIST = $(subst /plugin.json,,$(wildcard */plugin.json))
ifeq ($(NOPLUGINS),true)
PLUGIN_LIST = Cardinal
else
PLUGIN_LIST = $(subst /plugin.json,,$(wildcard */plugin.json))
endif
PLUGIN_RESOURCES = ../bin/Cardinal.lv2/resources/PluginManifests/Core.json
PLUGIN_RESOURCES += $(PLUGIN_LIST:%=../bin/Cardinal.lv2/resources/%)
PLUGIN_RESOURCES += $(PLUGIN_LIST:%=../bin/Cardinal.lv2/resources/PluginManifests/%.json)

View file

@ -19,6 +19,10 @@
#include "DistrhoUtils.hpp"
// Cardinal (built-in)
#include "Cardinal/src/plugin.hpp"
#ifndef NOPLUGINS
// AmalgamatedHarmonics
#include "AmalgamatedHarmonics/src/AH.hpp"
@ -163,9 +167,6 @@
#undef modelVCF
#undef modelVCO
// Cardinal (built-in)
#include "Cardinal/src/plugin.hpp"
// cf
#include "cf/src/plugin.hpp"
@ -227,6 +228,8 @@ extern Model *modelBlankPanel;
// ZetaCarinaeModules
#include "ZetaCarinaeModules/src/plugin.hpp"
#endif // NOPLUGINS
// stuff that reads config files, we dont want that
int loadConsoleType() { return 0; }
int loadDirectOutMode() { return 0; }
@ -238,6 +241,8 @@ void saveDirectOutMode(bool) {}
void saveHighQualityAsDefault(bool) {}
// plugin instances
Plugin* pluginInstance__Cardinal;
#ifndef NOPLUGINS
Plugin* pluginInstance__AmalgamatedHarmonics;
Plugin* pluginInstance__AnimatedCircuits;
Plugin* pluginInstance__AS;
@ -245,7 +250,6 @@ Plugin* pluginInstance__AudibleInstruments;
Plugin* pluginInstance__Befaco;
Plugin* pluginInstance__Bidoo;
Plugin* pluginInstance__BogaudioModules;
Plugin* pluginInstance__Cardinal;
Plugin* pluginInstance__cf;
Plugin* pluginInstance__ESeries;
Plugin* pluginInstance__Fundamental;
@ -255,6 +259,7 @@ Plugin* pluginInstance__JW;
Plugin* pluginInstance__rackwindows;
Plugin* pluginInstance__ValleyAudio;
Plugin* pluginInstance__ZetaCarinaeModules;
#endif // NOPLUGINS
namespace rack {
@ -360,6 +365,20 @@ static void initStatic__Core()
}
}
static void initStatic__Cardinal()
{
Plugin* const p = new Plugin;
pluginInstance__Cardinal = p;
const StaticPluginLoader spl(p, "Cardinal");
if (spl.ok())
{
p->addModel(modelHostParameters);
p->addModel(modelHostTime);
}
}
#ifndef NOPLUGINS
static void initStatic__AmalgamatedHarmonics()
{
Plugin* const p = new Plugin;
@ -744,19 +763,6 @@ static void initStatic__BogaudioModules()
}
}
static void initStatic__Cardinal()
{
Plugin* const p = new Plugin;
pluginInstance__Cardinal = p;
const StaticPluginLoader spl(p, "Cardinal");
if (spl.ok())
{
p->addModel(modelHostParameters);
p->addModel(modelHostTime);
}
}
static void initStatic__cf()
{
Plugin* const p = new Plugin;
@ -1018,10 +1024,13 @@ static void initStatic__ZetaCarinaeModules()
p->addModel(modelFirefly);
}
}
#endif // NOPLUGINS
void initStaticPlugins()
{
initStatic__Core();
initStatic__Cardinal();
#ifndef NOPLUGINS
initStatic__AmalgamatedHarmonics();
initStatic__AnimatedCircuits();
initStatic__AS();
@ -1029,7 +1038,6 @@ void initStaticPlugins()
initStatic__Befaco();
initStatic__Bidoo();
initStatic__BogaudioModules();
initStatic__Cardinal();
initStatic__cf();
initStatic__ESeries();
initStatic__Fundamental();
@ -1041,6 +1049,7 @@ void initStaticPlugins()
initStatic__ValleyAudio();
*/
initStatic__ZetaCarinaeModules();
#endif // NOPLUGINS
}
void destroyStaticPlugins()