Merge branch 'aria' into main
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
commit
40c086b789
9 changed files with 145 additions and 24 deletions
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -79,3 +79,6 @@
|
|||
[submodule "plugins/repelzen"]
|
||||
path = plugins/repelzen
|
||||
url = https://github.com/wiqid/repelzen.git
|
||||
[submodule "plugins/AriaModules"]
|
||||
path = plugins/AriaModules
|
||||
url = https://github.com/CardinalModules/AriaModules.git
|
||||
|
|
33
deps/Makefile
vendored
33
deps/Makefile
vendored
|
@ -130,7 +130,7 @@ DEP_MAKE += DEP_MAC_SDK_FLAGS=
|
|||
DEP_MAKE += MACHINE=$(MACHINE)$(MACHINE_SUFFIX)
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# VCV internal dependencies target
|
||||
# Rack internal dependencies target
|
||||
|
||||
$(DEP_PATH)/lib/%.a:
|
||||
$(DEP_MAKE) -C $(DEP_PATH) lib/$*.a
|
||||
|
@ -176,10 +176,40 @@ $(DEP_PATH)/zstd-1.4.5/.stamp-patched:
|
|||
sed -i -e "142,144d" $(DEP_PATH)/zstd-1.4.5/programs/util.c
|
||||
touch $@
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# QuickJS target, needed for AriaModules
|
||||
|
||||
QUICKJS_MAKE_FLAGS = CFLAGS="$(BUILD_C_FLAGS) -D_GNU_SOURCE -DCONFIG_VERSION='\"Cardinal\"' -w"
|
||||
QUICKJS_MAKE_FLAGS += PROGS=libquickjs.a
|
||||
|
||||
ifeq ($(WITH_LTO),true)
|
||||
QUICKJS_MAKE_FLAGS += CONFIG_LTO=y
|
||||
else
|
||||
QUICKJS_MAKE_FLAGS += CONFIG_LTO=n
|
||||
endif
|
||||
|
||||
ifeq ($(WINDOWS),true)
|
||||
QUICKJS_MAKE_FLAGS += CONFIG_WIN32=y
|
||||
else ifeq ($(MACOS),true)
|
||||
QUICKJS_MAKE_FLAGS += CONFIG_DARWIN=y
|
||||
endif
|
||||
|
||||
$(DEP_PATH)/lib/libquickjs.a: $(DEP_PATH)/QuickJS
|
||||
$(DEP_MAKE) $(QUICKJS_MAKE_FLAGS) -C $(DEP_PATH)/QuickJS
|
||||
install -d $(DEP_PATH)/include
|
||||
install -d $(DEP_PATH)/lib
|
||||
install -m644 $(DEP_PATH)/QuickJS/libquickjs.a $@
|
||||
install -m644 $(DEP_PATH)/QuickJS/quickjs.h $(DEP_PATH)/include/quickjs.h
|
||||
|
||||
$(DEP_PATH)/QuickJS:
|
||||
git clone "https://github.com/JerrySievert/QuickJS.git" $(DEP_PATH)/QuickJS
|
||||
git -C $(DEP_PATH)/QuickJS checkout b70d5344013836544631c361ae20569b978176c9
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# Build targets
|
||||
|
||||
TARGETS += $(DEP_PATH)/lib/libjansson.a
|
||||
TARGETS += $(DEP_PATH)/lib/libquickjs.a
|
||||
TARGETS += $(DEP_PATH)/lib/libsamplerate.a
|
||||
TARGETS += $(DEP_PATH)/lib/libspeexdsp.a
|
||||
|
||||
|
@ -206,5 +236,6 @@ clean:
|
|||
rm -rf $(DEP_PATH)/libsamplerate-0.1.9
|
||||
rm -rf $(DEP_PATH)/speexdsp-SpeexDSP-1.2rc3
|
||||
rm -rf $(DEP_PATH)/zstd-1.4.5
|
||||
rm -rf $(DEP_PATH)/QuickJS
|
||||
|
||||
# --------------------------------------------------------------
|
||||
|
|
1
plugins/AriaModules
Submodule
1
plugins/AriaModules
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 90f8009e1431341225c616bb3a9c250b02bce2c1
|
|
@ -1 +1 @@
|
|||
Subproject commit b5215ae3e907fab07ebd1fc3098a678306065483
|
||||
Subproject commit e80c8cb0873fbccca2d382d564e69b1a88ecb1f5
|
|
@ -207,6 +207,14 @@ AMALGAMATEDHARMONICS_CUSTOM += bogaudio
|
|||
|
||||
PLUGIN_FILES += $(wildcard AnimatedCircuits/src/Folding/*.cpp)
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# Aria
|
||||
|
||||
PLUGIN_FILES += $(filter-out AriaModules/src/Arcane.cpp AriaModules/src/plugin.cpp,$(wildcard AriaModules/src/*.cpp))
|
||||
|
||||
# modules/types which are present in other plugins
|
||||
ARIA_CUSTOM = Blank
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# AS
|
||||
|
||||
|
@ -775,6 +783,13 @@ $(BUILD_DIR)/AnimatedCircuits/%.cpp.o: AnimatedCircuits/%.cpp
|
|||
$(foreach m,$(ANIMATEDCIRCUITS_CUSTOM),$(call custom_module_names,$(m),AnimatedCircuits)) \
|
||||
-DpluginInstance=pluginInstance__AnimatedCircuits
|
||||
|
||||
$(BUILD_DIR)/AriaModules/%.cpp.o: AriaModules/%.cpp
|
||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
||||
@echo "Compiling $<"
|
||||
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
|
||||
$(foreach m,$(ARIA_CUSTOM),$(call custom_module_names,$(m),Aria)) \
|
||||
-DpluginInstance=pluginInstance__Aria
|
||||
|
||||
$(BUILD_DIR)/AS/%.cpp.o: AS/%.cpp
|
||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
||||
@echo "Compiling $<"
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 1f63e91e1e32bf31bc5dbccf5b924316f69f45f9
|
||||
Subproject commit 0ef9be3619f822849f5a4621380777a6c39a2aa6
|
|
@ -30,6 +30,33 @@
|
|||
// AnimatedCircuits
|
||||
#include "AnimatedCircuits/src/plugin.hpp"
|
||||
|
||||
// Aria
|
||||
/* NOTE too much noise in original include, do this a different way
|
||||
// #include "AriaModules/src/plugin.hpp"
|
||||
*/
|
||||
#define modelBlank modelAriaBlank
|
||||
extern Model *modelSplort;
|
||||
extern Model *modelSmerge;
|
||||
extern Model *modelSpleet;
|
||||
extern Model *modelSwerge;
|
||||
extern Model *modelSplirge;
|
||||
// extern Model *modelSrot;
|
||||
extern Model *modelQqqq;
|
||||
extern Model *modelQuack;
|
||||
extern Model *modelQ;
|
||||
extern Model *modelQuale;
|
||||
extern Model *modelDarius;
|
||||
extern Model *modelSolomon4;
|
||||
extern Model *modelSolomon8;
|
||||
extern Model *modelSolomon16;
|
||||
extern Model *modelPsychopump;
|
||||
extern Model *modelPokies4;
|
||||
extern Model *modelGrabby;
|
||||
extern Model *modelRotatoes4;
|
||||
extern Model *modelUndular;
|
||||
extern Model *modelBlank;
|
||||
#undef modelBlank
|
||||
|
||||
// AS
|
||||
#define modelADSR modelASADSR
|
||||
#define modelVCA modelASVCA
|
||||
|
@ -327,6 +354,7 @@ Plugin* pluginInstance__Cardinal;
|
|||
#ifndef NOPLUGINS
|
||||
Plugin* pluginInstance__AmalgamatedHarmonics;
|
||||
Plugin* pluginInstance__AnimatedCircuits;
|
||||
Plugin* pluginInstance__Aria;
|
||||
Plugin* pluginInstance__AS;
|
||||
Plugin* pluginInstance__Atelier;
|
||||
Plugin* pluginInstance__AudibleInstruments;
|
||||
|
@ -429,6 +457,29 @@ struct StaticPluginLoader {
|
|||
{
|
||||
return rootJ != nullptr;
|
||||
}
|
||||
|
||||
void removeModule(const char* const slugToRemove) const noexcept
|
||||
{
|
||||
json_t* const modules = json_object_get(rootJ, "modules");
|
||||
DISTRHO_SAFE_ASSERT_RETURN(modules != nullptr,);
|
||||
|
||||
size_t i;
|
||||
json_t* v;
|
||||
json_array_foreach(modules, i, v)
|
||||
{
|
||||
if (json_t* const slug = json_object_get(v, "slug"))
|
||||
{
|
||||
if (const char* const value = json_string_value(slug))
|
||||
{
|
||||
if (std::strcmp(value, slugToRemove) == 0)
|
||||
{
|
||||
json_array_remove(modules, i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
static void initStatic__Core()
|
||||
|
@ -516,6 +567,43 @@ static void initStatic__AnimatedCircuits()
|
|||
}
|
||||
}
|
||||
|
||||
static void initStatic__Aria()
|
||||
{
|
||||
Plugin* const p = new Plugin;
|
||||
pluginInstance__Aria = p;
|
||||
|
||||
const StaticPluginLoader spl(p, "AriaModules");
|
||||
if (spl.ok())
|
||||
{
|
||||
#define modelBlank modelAriaBlank
|
||||
p->addModel(modelSplort);
|
||||
p->addModel(modelSmerge);
|
||||
p->addModel(modelSpleet);
|
||||
p->addModel(modelSwerge);
|
||||
p->addModel(modelSplirge);
|
||||
// p->addModel(modelSrot);
|
||||
p->addModel(modelQqqq);
|
||||
p->addModel(modelQuack);
|
||||
p->addModel(modelQ);
|
||||
p->addModel(modelQuale);
|
||||
p->addModel(modelDarius);
|
||||
p->addModel(modelSolomon4);
|
||||
p->addModel(modelSolomon8);
|
||||
p->addModel(modelSolomon16);
|
||||
p->addModel(modelPsychopump);
|
||||
p->addModel(modelPokies4);
|
||||
p->addModel(modelGrabby);
|
||||
p->addModel(modelRotatoes4);
|
||||
p->addModel(modelUndular);
|
||||
p->addModel(modelBlank);
|
||||
#undef modelBlank
|
||||
// NOTE disabled in Cardinal due to online requirement
|
||||
spl.removeModule("Arcane");
|
||||
spl.removeModule("Atout");
|
||||
spl.removeModule("Aleister");
|
||||
}
|
||||
}
|
||||
|
||||
static void initStatic__AS()
|
||||
{
|
||||
Plugin* const p = new Plugin;
|
||||
|
@ -711,27 +799,7 @@ static void initStatic__Bidoo()
|
|||
|
||||
// NOTE disabled in Cardinal due to curl usage
|
||||
// p->addModel(modelANTN);
|
||||
|
||||
// intentionally remove known bad plugin
|
||||
if (json_t* const modules = json_object_get(spl.rootJ, "modules"))
|
||||
{
|
||||
size_t i;
|
||||
json_t* v;
|
||||
json_array_foreach(modules, i, v)
|
||||
{
|
||||
if (json_t* const slug = json_object_get(v, "slug"))
|
||||
{
|
||||
if (const char* const value = json_string_value(slug))
|
||||
{
|
||||
if (std::strcmp(value, "antN") == 0)
|
||||
{
|
||||
json_array_remove(modules, i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
spl.removeModule("antN");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1289,6 +1357,7 @@ void initStaticPlugins()
|
|||
#ifndef NOPLUGINS
|
||||
initStatic__AmalgamatedHarmonics();
|
||||
initStatic__AnimatedCircuits();
|
||||
initStatic__Aria();
|
||||
initStatic__AS();
|
||||
initStatic__Atelier();
|
||||
initStatic__AudibleInstruments();
|
||||
|
|
1
plugins/res/AriaModules
Symbolic link
1
plugins/res/AriaModules
Symbolic link
|
@ -0,0 +1 @@
|
|||
../AriaModules/res/
|
|
@ -96,6 +96,7 @@ RACK_EXTRA_LIBS += ../rack.a
|
|||
|
||||
ifneq ($(SYSDEPS),true)
|
||||
RACK_EXTRA_LIBS += ../Rack/dep/lib/libjansson.a
|
||||
RACK_EXTRA_LIBS += ../Rack/dep/lib/libquickjs.a
|
||||
RACK_EXTRA_LIBS += ../Rack/dep/lib/libsamplerate.a
|
||||
RACK_EXTRA_LIBS += ../Rack/dep/lib/libspeexdsp.a
|
||||
ifeq ($(WINDOWS),true)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue