| @@ -12,7 +12,7 @@ libs: | |||
| $(MAKE) -C dpf/dgl | |||
| plugins: libs | |||
| $(MAKE) -C plugins/Nekobi | |||
| $(MAKE) all -C plugins/Nekobi | |||
| gen: plugins dpf/utils/lv2_ttl_generator | |||
| @$(CURDIR)/dpf/utils/generate-ttl.sh | |||
| @@ -29,4 +29,4 @@ clean: | |||
| # -------------------------------------------------------------- | |||
| .PHONY: libs plugins | |||
| .PHONY: plugins | |||
| @@ -1 +1 @@ | |||
| Subproject commit 05384270a88a734439db13aba8eb4714b7a78f80 | |||
| Subproject commit 304054af33b20ddbcdf0e5c87871010e8fc191dc | |||
| @@ -16,24 +16,17 @@ TARGET_DIR = ../../bin | |||
| BUILD_C_FLAGS += -I. | |||
| BUILD_CXX_FLAGS += -I. -I../../dpf/distrho -I../../dpf/dgl | |||
| # -------------------------------------------------------------- | |||
| # Enable all possible plugin types | |||
| ifeq ($(LINUX),true) | |||
| all: jack dssi lv2 vst | |||
| else | |||
| all: dssi lv2 vst | |||
| endif | |||
| # -------------------------------------------------------------- | |||
| # Set plugin binary file targets | |||
| jack = $(TARGET_DIR)/$(NAME) | |||
| dssi_dsp = $(TARGET_DIR)/$(NAME)-dssi.$(EXT) | |||
| dssi_ui = $(TARGET_DIR)/$(NAME)-dssi/$(NAME)_ui | |||
| lv2_dsp = $(TARGET_DIR)/$(NAME).lv2/$(NAME).$(EXT) | |||
| lv2_ui = $(TARGET_DIR)/$(NAME).lv2/$(NAME)_ui.$(EXT) | |||
| vst = $(TARGET_DIR)/$(NAME)-vst.$(EXT) | |||
| jack = $(TARGET_DIR)/$(NAME) | |||
| ladspa_dsp = $(TARGET_DIR)/$(NAME)-ladspa.$(EXT) | |||
| dssi_dsp = $(TARGET_DIR)/$(NAME)-dssi.$(EXT) | |||
| dssi_ui = $(TARGET_DIR)/$(NAME)-dssi/$(NAME)_ui | |||
| lv2 = $(TARGET_DIR)/$(NAME).lv2/$(NAME).$(EXT) | |||
| lv2_dsp = $(TARGET_DIR)/$(NAME).lv2/$(NAME)_dsp.$(EXT) | |||
| lv2_ui = $(TARGET_DIR)/$(NAME).lv2/$(NAME)_ui.$(EXT) | |||
| vst = $(TARGET_DIR)/$(NAME)-vst.$(EXT) | |||
| ifeq ($(WIN32),true) | |||
| dssi_ui += .exe | |||
| @@ -47,6 +40,22 @@ endif | |||
| DISTRHO_PLUGIN_FILES = ../../dpf/distrho/DistrhoPluginMain.cpp | |||
| DISTRHO_UI_FILES = ../../dpf/distrho/DistrhoUIMain.cpp ../../dpf/libdgl.a | |||
| # -------------------------------------------------------------- | |||
| # Handle plugins without UI | |||
| ifeq ($(TARGET_NOUI),true) | |||
| dssi_ui = | |||
| lv2_ui = | |||
| DISTRHO_UI_FILES = | |||
| DGL_LIBS = | |||
| OBJS_UI = | |||
| endif | |||
| # -------------------------------------------------------------- | |||
| # all needs to be first | |||
| all: | |||
| # -------------------------------------------------------------- | |||
| # Common | |||
| @@ -58,7 +67,7 @@ DISTRHO_UI_FILES = ../../dpf/distrho/DistrhoUIMain.cpp ../../dpf/libdgl.a | |||
| clean: | |||
| rm -f *.o | |||
| rm -rf $(TARGET_DIR)/$(NAME)-* $(TARGET_DIR)/$(NAME).lv2/ | |||
| rm -rf $(TARGET_DIR)/$(NAME) $(TARGET_DIR)/$(NAME)-* $(TARGET_DIR)/$(NAME).lv2/ | |||
| # -------------------------------------------------------------- | |||
| # JACK | |||
| @@ -69,6 +78,15 @@ $(jack): $(OBJS_DSP) $(OBJS_UI) $(DISTRHO_PLUGIN_FILES) $(DISTRHO_UI_FILES) | |||
| mkdir -p $(shell dirname $@) | |||
| $(CXX) $^ $(BUILD_CXX_FLAGS) $(LINK_FLAGS) $(DGL_LIBS) $(shell pkg-config --cflags --libs jack) -lpthread -DDISTRHO_PLUGIN_TARGET_JACK -o $@ | |||
| # -------------------------------------------------------------- | |||
| # LADSPA | |||
| ladspa: $(ladspa_dsp) | |||
| $(ladspa_dsp): $(OBJS_DSP) $(DISTRHO_PLUGIN_FILES) | |||
| mkdir -p $(shell dirname $@) | |||
| $(CXX) $^ $(BUILD_CXX_FLAGS) $(LINK_FLAGS) $(SHARED) -DDISTRHO_PLUGIN_TARGET_LADSPA -o $@ | |||
| # -------------------------------------------------------------- | |||
| # DSSI | |||
| @@ -85,7 +103,12 @@ $(dssi_ui): $(OBJS_UI) $(DISTRHO_UI_FILES) | |||
| # -------------------------------------------------------------- | |||
| # LV2 | |||
| lv2: $(lv2_dsp) $(lv2_ui) | |||
| lv2_one: $(lv2) | |||
| lv2_sep: $(lv2_dsp) $(lv2_ui) | |||
| $(lv2): $(OBJS_DSP) $(OBJS_UI) $(DISTRHO_PLUGIN_FILES) $(DISTRHO_UI_FILES) | |||
| mkdir -p $(shell dirname $@) | |||
| $(CXX) $^ $(BUILD_CXX_FLAGS) $(LINK_FLAGS) $(DGL_LIBS) -lpthread $(SHARED) -DDISTRHO_PLUGIN_TARGET_LV2 -o $@ | |||
| $(lv2_dsp): $(OBJS_DSP) $(DISTRHO_PLUGIN_FILES) | |||
| mkdir -p $(shell dirname $@) | |||
| @@ -51,56 +51,63 @@ DistrhoUINekobi::DistrhoUINekobi() | |||
| // knob Tuning | |||
| fKnobTuning = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramTuning); | |||
| fKnobTuning->setPos(41, 43); | |||
| fKnobTuning->setAbsolutePos(41, 43); | |||
| fKnobTuning->setRange(-12.0f, 12.0f); | |||
| fKnobTuning->setDefault(0.0f); | |||
| fKnobTuning->setValue(0.0f); | |||
| fKnobTuning->setRotationAngle(305); | |||
| fKnobTuning->setCallback(this); | |||
| // knob Cutoff | |||
| fKnobCutoff = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramCutoff); | |||
| fKnobCutoff->setPos(185, 43); | |||
| fKnobCutoff->setAbsolutePos(185, 43); | |||
| fKnobCutoff->setRange(0.0f, 100.0f); | |||
| fKnobCutoff->setDefault(25.0f); | |||
| fKnobCutoff->setValue(25.0f); | |||
| fKnobCutoff->setRotationAngle(305); | |||
| fKnobCutoff->setCallback(this); | |||
| // knob Resonance | |||
| fKnobResonance = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramResonance); | |||
| fKnobResonance->setPos(257, 43); | |||
| fKnobResonance->setAbsolutePos(257, 43); | |||
| fKnobResonance->setRange(0.0f, 95.0f); | |||
| fKnobResonance->setDefault(25.0f); | |||
| fKnobResonance->setValue(25.0f); | |||
| fKnobResonance->setRotationAngle(305); | |||
| fKnobResonance->setCallback(this); | |||
| // knob Env Mod | |||
| fKnobEnvMod = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramEnvMod); | |||
| fKnobEnvMod->setPos(329, 43); | |||
| fKnobEnvMod->setAbsolutePos(329, 43); | |||
| fKnobEnvMod->setRange(0.0f, 100.0f); | |||
| fKnobEnvMod->setDefault(50.0f); | |||
| fKnobEnvMod->setValue(50.0f); | |||
| fKnobEnvMod->setRotationAngle(305); | |||
| fKnobEnvMod->setCallback(this); | |||
| // knob Decay | |||
| fKnobDecay = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramDecay); | |||
| fKnobDecay->setPos(400, 43); | |||
| fKnobDecay->setAbsolutePos(400, 43); | |||
| fKnobDecay->setRange(0.0f, 100.0f); | |||
| fKnobDecay->setDefault(75.0f); | |||
| fKnobDecay->setValue(75.0f); | |||
| fKnobDecay->setRotationAngle(305); | |||
| fKnobDecay->setCallback(this); | |||
| // knob Accent | |||
| fKnobAccent = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramAccent); | |||
| fKnobAccent->setPos(473, 43); | |||
| fKnobAccent->setAbsolutePos(473, 43); | |||
| fKnobAccent->setRange(0.0f, 100.0f); | |||
| fKnobAccent->setDefault(25.0f); | |||
| fKnobAccent->setValue(25.0f); | |||
| fKnobAccent->setRotationAngle(305); | |||
| fKnobAccent->setCallback(this); | |||
| // knob Volume | |||
| fKnobVolume = new ImageKnob(this, knobImage, ImageKnob::Vertical, DistrhoPluginNekobi::paramVolume); | |||
| fKnobVolume->setPos(545, 43); | |||
| fKnobVolume->setAbsolutePos(545, 43); | |||
| fKnobVolume->setRange(0.0f, 100.0f); | |||
| fKnobVolume->setDefault(75.0f); | |||
| fKnobVolume->setValue(75.0f); | |||
| fKnobVolume->setRotationAngle(305); | |||
| fKnobVolume->setCallback(this); | |||
| @@ -109,7 +116,7 @@ DistrhoUINekobi::DistrhoUINekobi() | |||
| Image aboutImageNormal(DistrhoArtworkNekobi::aboutButtonNormalData, DistrhoArtworkNekobi::aboutButtonNormalWidth, DistrhoArtworkNekobi::aboutButtonNormalHeight); | |||
| Image aboutImageHover(DistrhoArtworkNekobi::aboutButtonHoverData, DistrhoArtworkNekobi::aboutButtonHoverWidth, DistrhoArtworkNekobi::aboutButtonHoverHeight); | |||
| fButtonAbout = new ImageButton(this, aboutImageNormal, aboutImageHover, aboutImageHover); | |||
| fButtonAbout->setPos(505, 5); | |||
| fButtonAbout->setAbsolutePos(505, 5); | |||
| fButtonAbout->setCallback(this); | |||
| } | |||
| @@ -25,3 +25,12 @@ OBJS_UI = \ | |||
| include ../Makefile.mk | |||
| # -------------------------------------------------------------- | |||
| # Enable all possible plugin types | |||
| ifeq ($(LINUX),true) | |||
| all: jack dssi lv2_sep vst | |||
| else | |||
| all: dssi lv2_sep vst | |||
| endif | |||
| # -------------------------------------------------------------- | |||