diff --git a/.gitmodules b/.gitmodules index 01152bc3..467b06db 100644 --- a/.gitmodules +++ b/.gitmodules @@ -139,3 +139,6 @@ [submodule "plugins/Autinn"] path = plugins/Autinn url = https://github.com/NikolaiVChr/Autinn.git +[submodule "plugins/Geodesics"] + path = plugins/Geodesics + url = https://github.com/MarcBoule/Geodesics.git diff --git a/doc/LICENSES.md b/doc/LICENSES.md index 9a6159e6..4318aeec 100644 --- a/doc/LICENSES.md +++ b/doc/LICENSES.md @@ -29,6 +29,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | ExpertSleepers Encoders | MIT | | | Extratone | GPL-3.0-or-later | | | Fehler Fabrik | GPL-3.0-or-later | | +| Geodesics | GPL-3.0 | (blocker for inclusion right now) | | Glue the Giant | GPL-3.0-or-later | | | Grande | GPL-3.0-or-later | | | HetrickCV | CC0-1.0 | | diff --git a/plugins/Geodesics b/plugins/Geodesics new file mode 160000 index 00000000..ae163f97 --- /dev/null +++ b/plugins/Geodesics @@ -0,0 +1 @@ +Subproject commit ae163f9740ac4ddd3a889654298a3727c213108d diff --git a/plugins/Makefile b/plugins/Makefile index 79ac0d0b..8e649f61 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -478,6 +478,11 @@ PLUGIN_FILES += Fundamental/src/dr_wav.c FUNDAMENTAL_CUSTOM = $(DRWAV) endif +# -------------------------------------------------------------- +# Geodesics + +PLUGIN_FILES += $(filter-out Geodesics/src/plugin.cpp,$(wildcard Geodesics/src/*.cpp)) + # -------------------------------------------------------------- # GlueTheGiant @@ -1129,6 +1134,16 @@ $(BUILD_DIR)/Fundamental/%.cpp.o: Fundamental/%.cpp $(foreach m,$(FUNDAMENTAL_CUSTOM),$(call custom_module_names,$(m),Fundamental)) \ -DpluginInstance=pluginInstance__Fundamental +$(BUILD_DIR)/Geodesics/%.cpp.o: Geodesics/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(GEODESICS_CUSTOM),$(call custom_module_names,$(m),Geodesics)) \ + -DpluginInstance=pluginInstance__Geodesics \ + -DsaveDarkAsDefault=saveDarkAsDefault__Geodesics \ + -DisDark=isDark__Geodesics \ + -Dinit=init__Geodesics + $(BUILD_DIR)/GlueTheGiant/%.cpp.o: GlueTheGiant/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index 62624a01..fbb553e9 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -309,6 +309,9 @@ void setupSamples(); #include "Fundamental/src/plugin.hpp" #endif +// Geodesics +#include "Geodesics/src/Geodesics.hpp" + // GlueTheGiant #include "GlueTheGiant/src/plugin.hpp" bool audition_mixer = false; @@ -568,6 +571,7 @@ Plugin* pluginInstance__FehlerFabrik; #ifdef WITH_FUNDAMENTAL Plugin* pluginInstance__Fundamental; #endif +extern Plugin* pluginInstance__Geodesics; Plugin* pluginInstance__GrandeModular; Plugin* pluginInstance__GlueTheGiant; Plugin* pluginInstance__HetrickCV; @@ -1460,6 +1464,27 @@ static void initStatic__Fundamental() } #endif +static void initStatic__Geodesics() +{ + Plugin* const p = new Plugin; + pluginInstance__Geodesics = p; + + const StaticPluginLoader spl(p, "Geodesics"); + if (spl.ok()) + { + p->addModel(modelBlackHoles); + p->addModel(modelPulsars); + p->addModel(modelBranes); + p->addModel(modelIons); + p->addModel(modelEntropia); + p->addModel(modelEnergy); + p->addModel(modelTorus); + p->addModel(modelFate); + p->addModel(modelBlankLogo); + p->addModel(modelBlankInfo); + } +} + static void initStatic__GlueTheGiant() { Plugin* const p = new Plugin; @@ -2003,6 +2028,7 @@ void initStaticPlugins() #ifdef WITH_FUNDAMENTAL initStatic__Fundamental(); #endif + initStatic__Geodesics(); initStatic__GlueTheGiant(); initStatic__GrandeModular(); initStatic__HetrickCV(); diff --git a/plugins/todo.txt b/plugins/todo.txt index a81d6579..fc8c5e8c 100644 --- a/plugins/todo.txt +++ b/plugins/todo.txt @@ -22,9 +22,6 @@ https://github.com/squinkylabs/SquinkyVCV LindenbergResearch 43959.0 (not opensource?) -Geodesics 42761.0 -https://github.com/MarcBoule/Geodesics - Alikins 41798.0 https://github.com/alikins/Alikins-rack-plugins