* add rcm-modules * Fix build Signed-off-by: falkTX <falktx@falktx.com> * append README and LICENSES files * setup symbol conflicts for RCM Signed-off-by: falkTX <falktx@falktx.com> --------- Signed-off-by: falkTX <falktx@falktx.com> Co-authored-by: falkTX <falktx@falktx.com>tags/24.09
@@ -251,3 +251,6 @@ | |||||
[submodule "deps/JUCE"] | [submodule "deps/JUCE"] | ||||
path = deps/JUCE | path = deps/JUCE | ||||
url = https://github.com/CardinalModules/JUCE.git | url = https://github.com/CardinalModules/JUCE.git | ||||
[submodule "plugins/rcm-modules"] | |||||
path = plugins/rcm-modules | |||||
url = https://github.com/Rcomian/rcm-modules.git |
@@ -182,6 +182,7 @@ At the moment the following 3rd-party modules are provided: | |||||
- [PinkTrombone](https://github.com/VegaDeftwing/PinkTromboneVCV) | - [PinkTrombone](https://github.com/VegaDeftwing/PinkTromboneVCV) | ||||
- [Prism](https://github.com/SteveRussell33/Prism) | - [Prism](https://github.com/SteveRussell33/Prism) | ||||
- [rackwindows](https://github.com/n0jo/rackwindows) | - [rackwindows](https://github.com/n0jo/rackwindows) | ||||
- [RCM](https://github.com/Rcomian/rcm-modules/) | |||||
- [RebelTech](https://github.com/hemmer/rebel-tech-vcv) | - [RebelTech](https://github.com/hemmer/rebel-tech-vcv) | ||||
- [repelzen](https://github.com/wiqid/repelzen) | - [repelzen](https://github.com/wiqid/repelzen) | ||||
- [Sapphire](https://github.com/cosinekitty/sapphire) | - [Sapphire](https://github.com/cosinekitty/sapphire) | ||||
@@ -77,6 +77,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | |||||
| PinkTrombone | GPL-3.0-or-later | | | | PinkTrombone | GPL-3.0-or-later | | | ||||
| Prism | BSD-3-Clause | | | | Prism | BSD-3-Clause | | | ||||
| Rackwindows | MIT | | | | Rackwindows | MIT | | | ||||
| RCM | GPL-2.0-or-later | | | |||||
| repelzen | GPL-3.0-or-later | | | | repelzen | GPL-3.0-or-later | | | ||||
| RebelTech | GPL-2.0-or-later | | | | RebelTech | GPL-2.0-or-later | | | ||||
| Sapphire | GPL-3.0-or-later | | | | Sapphire | GPL-3.0-or-later | | | ||||
@@ -240,6 +241,7 @@ Below is a list of artwork licenses from plugins | |||||
| Prism/* | CC-BY-SA-4.0 | | | | Prism/* | CC-BY-SA-4.0 | | | ||||
| Prism/RobotoCondensed-Regular.ttf | Apache-2.0 | | | | Prism/RobotoCondensed-Regular.ttf | Apache-2.0 | | | ||||
| Rackwindows/* | MIT | [Same license as source code](https://github.com/n0jo/rackwindows/issues/15) | | | Rackwindows/* | MIT | [Same license as source code](https://github.com/n0jo/rackwindows/issues/15) | | ||||
| RCM/* | GPL-2.0-or-later | No artwork specific license provided | | |||||
| repelzen/* | CC-BY-SA-4.0 | | | | repelzen/* | CC-BY-SA-4.0 | | | ||||
| RebelTech/* | CC-BY-NC-4.0 | | | | RebelTech/* | CC-BY-NC-4.0 | | | ||||
| Sapphire/* | GPL-3.0-or-later | No artwork specific license provided | | | Sapphire/* | GPL-3.0-or-later | No artwork specific license provided | | ||||
@@ -1002,6 +1002,16 @@ PRISM_CUSTOM = bogaudio Scale | |||||
PLUGIN_FILES += $(filter-out rackwindows/src/plugin.cpp,$(wildcard rackwindows/src/*.cpp)) | PLUGIN_FILES += $(filter-out rackwindows/src/plugin.cpp,$(wildcard rackwindows/src/*.cpp)) | ||||
# -------------------------------------------------------------- | |||||
# RCM | |||||
PLUGIN_FILES += $(filter-out rcm-modules/src/plugin.cpp,$(wildcard rcm-modules/src/*.cpp)) | |||||
PLUGIN_FILES += $(wildcard rcm-modules/src/*.c) | |||||
PLUGIN_FILES += $(wildcard rcm-modules/src/PianoRoll/*.cpp) | |||||
# modules/types which are present in other plugins | |||||
RCM_CUSTOM = Transport | |||||
# -------------------------------------------------------------- | # -------------------------------------------------------------- | ||||
# RebelTech | # RebelTech | ||||
@@ -2680,6 +2690,19 @@ $(BUILD_DIR)/rackwindows/%.cpp.o: rackwindows/%.cpp | |||||
-Wno-implicit-fallthrough \ | -Wno-implicit-fallthrough \ | ||||
-Wno-sign-compare | -Wno-sign-compare | ||||
$(BUILD_DIR)/rcm-modules/%.c.o: rcm-modules/%.c | |||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | |||||
@echo "Compiling $<" | |||||
$(SILENT)$(CC) $< $(BUILD_C_FLAGS) -c -o $@ \ | |||||
$(foreach m,$(RCM_CUSTOM),$(call custom_module_names,$(m),RCM)) | |||||
$(BUILD_DIR)/rcm-modules/%.cpp.o: rcm-modules/%.cpp | |||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | |||||
@echo "Compiling $<" | |||||
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ | |||||
$(foreach m,$(RCM_CUSTOM),$(call custom_module_names,$(m),RCM)) \ | |||||
-DpluginInstance=pluginInstance__RCM | |||||
$(BUILD_DIR)/RebelTech/%.cpp.o: RebelTech/%.cpp | $(BUILD_DIR)/RebelTech/%.cpp.o: RebelTech/%.cpp | ||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | ||||
@echo "Compiling $<" | @echo "Compiling $<" | ||||
@@ -796,6 +796,9 @@ extern Model* modelBlankPanel; | |||||
// rackwindows | // rackwindows | ||||
#include "rackwindows/src/plugin.hpp" | #include "rackwindows/src/plugin.hpp" | ||||
// RCM | |||||
#include "rcm-modules/src/plugin.hpp" | |||||
// RebelTech | // RebelTech | ||||
#define BefacoInputPort BefacoInputPortRebelTech | #define BefacoInputPort BefacoInputPortRebelTech | ||||
#define BefacoOutputPort BefacoOutputPortRebelTech | #define BefacoOutputPort BefacoOutputPortRebelTech | ||||
@@ -961,6 +964,7 @@ Plugin* pluginInstance__PdArray; | |||||
Plugin* pluginInstance__PinkTrombone; | Plugin* pluginInstance__PinkTrombone; | ||||
Plugin* pluginInstance__Prism; | Plugin* pluginInstance__Prism; | ||||
Plugin* pluginInstance__rackwindows; | Plugin* pluginInstance__rackwindows; | ||||
Plugin* pluginInstance__RCM; | |||||
Plugin* pluginInstance__RebelTech; | Plugin* pluginInstance__RebelTech; | ||||
Plugin* pluginInstance__repelzen; | Plugin* pluginInstance__repelzen; | ||||
Plugin* pluginInstance__sapphire; | Plugin* pluginInstance__sapphire; | ||||
@@ -2996,6 +3000,28 @@ static void initStatic__rackwindows() | |||||
} | } | ||||
} | } | ||||
static void initStatic__RCM() | |||||
{ | |||||
Plugin* const p = new Plugin; | |||||
pluginInstance__RCM = p; | |||||
const StaticPluginLoader spl(p, "rcm-modules"); | |||||
if (spl.ok()) | |||||
{ | |||||
p->addModel(modelGVerbModule); | |||||
p->addModel(modelCV0to10Module); | |||||
p->addModel(modelCVS0to10Module); | |||||
p->addModel(modelCV5to5Module); | |||||
p->addModel(modelCVMmtModule); | |||||
p->addModel(modelCVTglModule); | |||||
p->addModel(modelPianoRollModule); | |||||
p->addModel(modelDuckModule); | |||||
p->addModel(modelSEQAdapterModule); | |||||
p->addModel(modelSyncModule); | |||||
p->addModel(modelPolyNosModule); | |||||
} | |||||
} | |||||
static void initStatic__RebelTech() | static void initStatic__RebelTech() | ||||
{ | { | ||||
Plugin* const p = new Plugin; | Plugin* const p = new Plugin; | ||||
@@ -3458,6 +3484,7 @@ void initStaticPlugins() | |||||
initStatic__PinkTrombone(); | initStatic__PinkTrombone(); | ||||
initStatic__Prism(); | initStatic__Prism(); | ||||
initStatic__rackwindows(); | initStatic__rackwindows(); | ||||
initStatic__RCM(); | |||||
initStatic__RebelTech(); | initStatic__RebelTech(); | ||||
initStatic__repelzen(); | initStatic__repelzen(); | ||||
initStatic__Sapphire(); | initStatic__Sapphire(); | ||||
@@ -0,0 +1 @@ | |||||
Subproject commit c4a243ec7089254aa19225c0666bb4bda2163a6a |