Add AnimatedCircuits, for ABI on plugins (okay since static builds)

This commit is contained in:
falkTX 2021-10-17 03:11:14 +01:00
parent c1233ab66e
commit 27c10e10e0
6 changed files with 40 additions and 4 deletions

3
.gitmodules vendored
View file

@ -19,3 +19,6 @@
[submodule "plugins/AudibleInstruments"]
path = plugins/AudibleInstruments
url = https://github.com/VCVRack/AudibleInstruments.git
[submodule "plugins/AnimatedCircuits"]
path = plugins/AnimatedCircuits
url = https://github.com/AnimatedCircuits/RackModules.git

2
dpf

@ -1 +1 @@
Subproject commit 2f1b5127cc2da84e3c3f155808efb34d650b3489
Subproject commit 2ebf89eef32bc81210c75aa1c572cb32c5e052bc

@ -0,0 +1 @@
Subproject commit 7c64770febc78a56d8db10fb87caf3a07990f7a4

View file

@ -19,6 +19,11 @@ include ../dpf/Makefile.base.mk
PLUGIN_FILES = plugins.cpp
# --------------------------------------------------------------
# AnimatedCircuits
PLUGIN_FILES += $(wildcard AnimatedCircuits/src/Folding/*.cpp)
# --------------------------------------------------------------
# AudibleInstruments
@ -220,6 +225,11 @@ $(BUILD_DIR)/plugins.cpp.o: plugins.cpp
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
$(BUILD_DIR)/AnimatedCircuits/%.cpp.o: AnimatedCircuits/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DpluginInstance=pluginInstance__AnimatedCircuits -c -o $@
$(BUILD_DIR)/AudibleInstruments/%.cc.o: AudibleInstruments/%.cc
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"

View file

@ -19,10 +19,12 @@
#include "DistrhoUtils.hpp"
#include "AnimatedCircuits/src/plugin.hpp"
#include "AudibleInstruments/src/plugin.hpp"
#include "Befaco/src/plugin.hpp"
#include "Fundamental/src/plugin.hpp"
Plugin* pluginInstance__AnimatedCircuits;
Plugin* pluginInstance__AudibleInstruments;
Plugin* pluginInstance__Befaco;
Plugin* pluginInstance__Fundamental;
@ -56,6 +58,11 @@ struct StaticPluginLoader {
d_stderr2("JSON parsing error at %s %d:%d %s", manifestFilename.c_str(), error.line, error.column, error.text);
return;
}
// force ABI, we use static plugins so this doesnt matter as long as it builds
json_t* const version = json_string((APP_VERSION_MAJOR + ".0").c_str());
json_object_set(rootJ, "version", version);
json_decref(version);
}
~StaticPluginLoader()
@ -77,6 +84,18 @@ struct StaticPluginLoader {
}
};
static void initStatic__AnimatedCircuits()
{
Plugin* p = new Plugin;
pluginInstance__AnimatedCircuits = p;
const StaticPluginLoader spl(p, "AnimatedCircuits");
if (spl.ok())
{
p->addModel(model_AC_Folding);
}
}
static void initStatic__AudibleInstruments()
{
Plugin* p = new Plugin;
@ -166,6 +185,7 @@ static void initStatic__Fundamental()
void initStaticPlugins()
{
initStatic__AnimatedCircuits();
initStatic__AudibleInstruments();
initStatic__Befaco();
initStatic__Fundamental();

View file

@ -64,6 +64,8 @@ EXTRA_LIBS += Rack/dep/lib/libarchive.a
endif
EXTRA_LIBS += Rack/dep/lib/libzstd.a
EXTRA_DEPENDENCIES = $(EXTRA_LIBS)
# --------------------------------------------------------------
# Do some magic