Browse Source

add rcm-modules (#669)

* 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
dreamer GitHub 1 year ago
parent
commit
e5ae62d326
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
6 changed files with 57 additions and 0 deletions
  1. +3
    -0
      .gitmodules
  2. +1
    -0
      README.md
  3. +2
    -0
      docs/LICENSES.md
  4. +23
    -0
      plugins/Makefile
  5. +27
    -0
      plugins/plugins.cpp
  6. +1
    -0
      plugins/rcm-modules

+ 3
- 0
.gitmodules View File

@@ -251,3 +251,6 @@
[submodule "deps/JUCE"]
path = deps/JUCE
url = https://github.com/CardinalModules/JUCE.git
[submodule "plugins/rcm-modules"]
path = plugins/rcm-modules
url = https://github.com/Rcomian/rcm-modules.git

+ 1
- 0
README.md View File

@@ -182,6 +182,7 @@ At the moment the following 3rd-party modules are provided:
- [PinkTrombone](https://github.com/VegaDeftwing/PinkTromboneVCV)
- [Prism](https://github.com/SteveRussell33/Prism)
- [rackwindows](https://github.com/n0jo/rackwindows)
- [RCM](https://github.com/Rcomian/rcm-modules/)
- [RebelTech](https://github.com/hemmer/rebel-tech-vcv)
- [repelzen](https://github.com/wiqid/repelzen)
- [Sapphire](https://github.com/cosinekitty/sapphire)


+ 2
- 0
docs/LICENSES.md View File

@@ -77,6 +77,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule
| PinkTrombone | GPL-3.0-or-later | |
| Prism | BSD-3-Clause | |
| Rackwindows | MIT | |
| RCM | GPL-2.0-or-later | |
| repelzen | GPL-3.0-or-later | |
| RebelTech | GPL-2.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/RobotoCondensed-Regular.ttf | Apache-2.0 | |
| 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 | |
| RebelTech/* | CC-BY-NC-4.0 | |
| Sapphire/* | GPL-3.0-or-later | No artwork specific license provided |


+ 23
- 0
plugins/Makefile View File

@@ -1002,6 +1002,16 @@ PRISM_CUSTOM = bogaudio Scale

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

@@ -2680,6 +2690,19 @@ $(BUILD_DIR)/rackwindows/%.cpp.o: rackwindows/%.cpp
-Wno-implicit-fallthrough \
-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
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"


+ 27
- 0
plugins/plugins.cpp View File

@@ -796,6 +796,9 @@ extern Model* modelBlankPanel;
// rackwindows
#include "rackwindows/src/plugin.hpp"

// RCM
#include "rcm-modules/src/plugin.hpp"

// RebelTech
#define BefacoInputPort BefacoInputPortRebelTech
#define BefacoOutputPort BefacoOutputPortRebelTech
@@ -961,6 +964,7 @@ Plugin* pluginInstance__PdArray;
Plugin* pluginInstance__PinkTrombone;
Plugin* pluginInstance__Prism;
Plugin* pluginInstance__rackwindows;
Plugin* pluginInstance__RCM;
Plugin* pluginInstance__RebelTech;
Plugin* pluginInstance__repelzen;
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()
{
Plugin* const p = new Plugin;
@@ -3458,6 +3484,7 @@ void initStaticPlugins()
initStatic__PinkTrombone();
initStatic__Prism();
initStatic__rackwindows();
initStatic__RCM();
initStatic__RebelTech();
initStatic__repelzen();
initStatic__Sapphire();


+ 1
- 0
plugins/rcm-modules

@@ -0,0 +1 @@
Subproject commit c4a243ec7089254aa19225c0666bb4bda2163a6a

Loading…
Cancel
Save