@@ -17,6 +17,7 @@ endif | |||
plugins: libs | |||
$(MAKE) all -C plugins/AmplitudeImposer | |||
$(MAKE) all -C plugins/CycleShifter | |||
$(MAKE) all -C plugins/SoulForce | |||
gen: plugins dpf/utils/lv2_ttl_generator | |||
@@ -36,6 +37,7 @@ ifeq ($(HAVE_DGL),true) | |||
endif | |||
$(MAKE) clean -C dpf/utils/lv2-ttl-generator | |||
$(MAKE) clean -C plugins/AmplitudeImposer | |||
$(MAKE) clean -C plugins/CycleShifter | |||
$(MAKE) clean -C plugins/SoulForce | |||
# -------------------------------------------------------------- | |||
@@ -11,5 +11,8 @@ This collection currently includes:<br/> | |||
Amplitude Imposer:<br/> | |||
<br/> | |||
CycleShifter<br/> | |||
<br/> | |||
Soul Force:<br/> | |||
<br/> |
@@ -0,0 +1,20 @@ | |||
/* (Auto-generated binary data file). */ | |||
#ifndef BINARY_DISTRHOARTWORKCYCLESHIFTER_HPP | |||
#define BINARY_DISTRHOARTWORKCYCLESHIFTER_HPP | |||
namespace DistrhoArtworkCycleShifter | |||
{ | |||
extern const char* backData; | |||
const unsigned int backDataSize = 57352; | |||
const unsigned int backWidth = 268; | |||
const unsigned int backHeight = 107; | |||
extern const char* sliderData; | |||
const unsigned int sliderDataSize = 392; | |||
const unsigned int sliderWidth = 14; | |||
const unsigned int sliderHeight = 14; | |||
} | |||
#endif // BINARY_DISTRHOARTWORKCYCLESHIFTER_HPP | |||
@@ -0,0 +1,197 @@ | |||
/* | |||
* DISTRHO CycleShifter, a DPF'ied CycleShifter. | |||
* Copyright (C) 2004 Niall Moody | |||
* Copyright (C) 2015 Filipe Coelho <falktx@falktx.com> | |||
* | |||
* Permission is hereby granted, free of charge, to any person obtaining a | |||
* copy of this software and associated documentation files (the "Software"), | |||
* to deal in the Software without restriction, including without limitation | |||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||
* and/or sell copies of the Software, and to permit persons to whom the | |||
* Software is furnished to do so, subject to the following conditions: | |||
* | |||
* The above copyright notice and this permission notice shall be included in | |||
* all copies or substantial portions of the Software. | |||
* | |||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |||
* DEALINGS IN THE SOFTWARE. | |||
*/ | |||
#include "DistrhoPluginCycleShifter.hpp" | |||
START_NAMESPACE_DISTRHO | |||
// ----------------------------------------------------------------------- | |||
DistrhoPluginCycleShifter::DistrhoPluginCycleShifter() | |||
: Plugin(kParameterCount, 1, 0), // 1 program, 0 states | |||
fNewCycleVolume(1.0f), | |||
fInputVolume(1.0f), | |||
OutIndex(0), | |||
InCount(0), | |||
ReadWrite(false), | |||
EnvOld(0.0f) | |||
{ | |||
std::memset(CycleBuffer, 0, sizeof(float)*BUFFER_SIZE); | |||
} | |||
// ----------------------------------------------------------------------- | |||
// Init | |||
void DistrhoPluginCycleShifter::d_initParameter(uint32_t index, Parameter& parameter) | |||
{ | |||
parameter.hints = kParameterIsAutomable; | |||
parameter.ranges.min = 0.0f; | |||
parameter.ranges.max = 1.0f; | |||
switch (index) | |||
{ | |||
case kParameterNewCycleVolume: | |||
parameter.name = "New Cycle Vol"; | |||
parameter.symbol = "ncvolume"; | |||
parameter.ranges.def = 1.0f; | |||
break; | |||
case kParameterInputVolume: | |||
parameter.name = "Input Vol"; | |||
parameter.symbol = "ipvolume"; | |||
parameter.ranges.def = 1.0f; | |||
break; | |||
} | |||
} | |||
void DistrhoPluginCycleShifter::d_initProgramName(uint32_t index, d_string& programName) | |||
{ | |||
switch(index) | |||
{ | |||
case 0: | |||
programName = "Default"; | |||
break; | |||
} | |||
} | |||
// ----------------------------------------------------------------------- | |||
// Internal data | |||
float DistrhoPluginCycleShifter::d_getParameterValue(uint32_t index) const | |||
{ | |||
switch(index) | |||
{ | |||
case kParameterNewCycleVolume: | |||
return fNewCycleVolume; | |||
case kParameterInputVolume: | |||
return fInputVolume; | |||
default: | |||
return 0.0f; | |||
} | |||
} | |||
void DistrhoPluginCycleShifter::d_setParameterValue(uint32_t index, float value) | |||
{ | |||
switch(index) | |||
{ | |||
case kParameterNewCycleVolume: | |||
fNewCycleVolume = value; | |||
break; | |||
case kParameterInputVolume: | |||
fInputVolume = value; | |||
break; | |||
} | |||
} | |||
void DistrhoPluginCycleShifter::d_setProgram(uint32_t index) | |||
{ | |||
switch(index) | |||
{ | |||
case 0: | |||
fNewCycleVolume = 1.0f; | |||
fInputVolume = 1.0f; | |||
break; | |||
} | |||
} | |||
// ----------------------------------------------------------------------- | |||
// Process | |||
void DistrhoPluginCycleShifter::d_activate() | |||
{ | |||
std::memset(CycleBuffer, 0, sizeof(float)*BUFFER_SIZE); | |||
OutIndex = 0; | |||
InCount = 0; | |||
ReadWrite = false; | |||
EnvOld = 0.0f; | |||
} | |||
void DistrhoPluginCycleShifter::d_run(const float** inputs, float** outputs, uint32_t frames) | |||
{ | |||
const float* in = inputs[0]; | |||
/**/ float* out = outputs[0]; | |||
for (uint32_t i=0; i<frames; ++i) | |||
*out++ = DoProcess(*in++); | |||
} | |||
// ----------------------------------------------------------------------- | |||
// Borrowed this from Toby Bear's Delphi template - it maybe adds a bit to cpu | |||
// usage, but it makes things simpler... | |||
// ----------------------------------------------------------------------- | |||
float DistrhoPluginCycleShifter::DoProcess(float a) | |||
{ | |||
const float tempval = a; | |||
if (! ReadWrite) // if we're in read mode | |||
{ | |||
if (InCount == 0) // if we're waiting for the start of a new cycle to read | |||
{ | |||
if (EnvOld < 0.0f && tempval >= 0.0f) // as soon as the input goes past 0 we start reading | |||
{ | |||
CycleBuffer[InCount++] = tempval; | |||
} | |||
} | |||
else if (! (EnvOld < 0.0f && tempval >= 0.0f)) // if we've not reached the end of the cycle yet | |||
{ | |||
CycleBuffer[InCount] = tempval; | |||
if (++InCount >= BUFFER_SIZE) // if we've reached the end of the buffer | |||
{ | |||
InCount = BUFFER_SIZE; | |||
ReadWrite = true; // we're in write mode now | |||
} | |||
} | |||
else // we've reached the end of the cycle | |||
{ | |||
CycleBuffer[InCount++] = 0.0f; | |||
ReadWrite = true; | |||
} | |||
a *= fInputVolume; | |||
} | |||
else // we're in write mode | |||
{ | |||
a = (a*fInputVolume) + (CycleBuffer[OutIndex]*fNewCycleVolume); | |||
if (++OutIndex == InCount) // we've reached the end of our stored cycle | |||
{ | |||
InCount = 0; | |||
OutIndex = 0; | |||
ReadWrite = false; | |||
} | |||
} | |||
EnvOld = tempval; | |||
return a; | |||
} | |||
// ----------------------------------------------------------------------- | |||
Plugin* createPlugin() | |||
{ | |||
return new DistrhoPluginCycleShifter(); | |||
} | |||
// ----------------------------------------------------------------------- | |||
END_NAMESPACE_DISTRHO |
@@ -0,0 +1,116 @@ | |||
/* | |||
* DISTRHO CycleShifter, a DPF'ied CycleShifter. | |||
* Copyright (C) 2004 Niall Moody | |||
* Copyright (C) 2015 Filipe Coelho <falktx@falktx.com> | |||
* | |||
* Permission is hereby granted, free of charge, to any person obtaining a | |||
* copy of this software and associated documentation files (the "Software"), | |||
* to deal in the Software without restriction, including without limitation | |||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||
* and/or sell copies of the Software, and to permit persons to whom the | |||
* Software is furnished to do so, subject to the following conditions: | |||
* | |||
* The above copyright notice and this permission notice shall be included in | |||
* all copies or substantial portions of the Software. | |||
* | |||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |||
* DEALINGS IN THE SOFTWARE. | |||
*/ | |||
#ifndef DISTRHO_PLUGIN_CYCLE_SHIFTER_HPP_INCLUDED | |||
#define DISTRHO_PLUGIN_CYCLE_SHIFTER_HPP_INCLUDED | |||
#include "DistrhoPlugin.hpp" | |||
#define BUFFER_SIZE 11025 | |||
START_NAMESPACE_DISTRHO | |||
// ----------------------------------------------------------------------- | |||
class DistrhoPluginCycleShifter : public Plugin | |||
{ | |||
public: | |||
enum Parameters { | |||
kParameterNewCycleVolume, | |||
kParameterInputVolume, | |||
kParameterCount | |||
}; | |||
DistrhoPluginCycleShifter(); | |||
protected: | |||
// ------------------------------------------------------------------- | |||
// Information | |||
const char* d_getLabel() const noexcept override | |||
{ | |||
return "CycleShifter"; | |||
} | |||
const char* d_getMaker() const noexcept override | |||
{ | |||
return "ndc Plugs"; | |||
} | |||
const char* d_getLicense() const noexcept override | |||
{ | |||
return "MIT"; | |||
} | |||
uint32_t d_getVersion() const noexcept override | |||
{ | |||
return 0x1000; | |||
} | |||
int64_t d_getUniqueId() const noexcept override | |||
{ | |||
return d_cconst('C', 'S', 'f', 't'); | |||
} | |||
// ------------------------------------------------------------------- | |||
// Init | |||
void d_initParameter(uint32_t index, Parameter& parameter) override; | |||
void d_initProgramName(uint32_t index, d_string& programName) override; | |||
// ------------------------------------------------------------------- | |||
// Internal data | |||
float d_getParameterValue(uint32_t index) const override; | |||
void d_setParameterValue(uint32_t index, float value) override; | |||
void d_setProgram(uint32_t index) override; | |||
// ------------------------------------------------------------------- | |||
// Process | |||
void d_activate() override; | |||
void d_run(const float** inputs, float** outputs, uint32_t frames) override; | |||
// ------------------------------------------------------------------- | |||
private: | |||
float fNewCycleVolume; | |||
float fInputVolume; | |||
float CycleBuffer[BUFFER_SIZE]; // buffer to store the cycle in | |||
int OutIndex; // index for playing the buffer | |||
int InCount; // counts how many samples we've recorded | |||
bool ReadWrite; // 0=read, 1=write | |||
float EnvOld; // last (input) sample - used to determine zero-crossings | |||
float DoProcess(float a); | |||
DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(DistrhoPluginCycleShifter) | |||
}; | |||
// ----------------------------------------------------------------------- | |||
END_NAMESPACE_DISTRHO | |||
#endif // DISTRHO_PLUGIN_CYCLE_SHIFTER_HPP_INCLUDED |
@@ -0,0 +1,37 @@ | |||
/* | |||
* DISTRHO CycleShifter, a DPF'ied CycleShifter. | |||
* Copyright (C) 2004 Niall Moody | |||
* Copyright (C) 2015 Filipe Coelho <falktx@falktx.com> | |||
* | |||
* Permission is hereby granted, free of charge, to any person obtaining a | |||
* copy of this software and associated documentation files (the "Software"), | |||
* to deal in the Software without restriction, including without limitation | |||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||
* and/or sell copies of the Software, and to permit persons to whom the | |||
* Software is furnished to do so, subject to the following conditions: | |||
* | |||
* The above copyright notice and this permission notice shall be included in | |||
* all copies or substantial portions of the Software. | |||
* | |||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |||
* DEALINGS IN THE SOFTWARE. | |||
*/ | |||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | |||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | |||
#define DISTRHO_PLUGIN_NAME "Cycle Shifter" | |||
#define DISTRHO_PLUGIN_URI "http://www.niallmoody.com/ndcplugs/cycleshifter.htm" | |||
#define DISTRHO_PLUGIN_HAS_UI 1 | |||
#define DISTRHO_PLUGIN_IS_RT_SAFE 1 | |||
#define DISTRHO_PLUGIN_NUM_INPUTS 1 | |||
#define DISTRHO_PLUGIN_NUM_OUTPUTS 1 | |||
#define DISTRHO_PLUGIN_WANT_PROGRAMS 1 | |||
#endif // DISTRHO_PLUGIN_INFO_H_INCLUDED |
@@ -0,0 +1,118 @@ | |||
/* | |||
* DISTRHO CycleShifter, a DPF'ied CycleShifter. | |||
* Copyright (C) 2004 Niall Moody | |||
* Copyright (C) 2015 Filipe Coelho <falktx@falktx.com> | |||
* | |||
* Permission is hereby granted, free of charge, to any person obtaining a | |||
* copy of this software and associated documentation files (the "Software"), | |||
* to deal in the Software without restriction, including without limitation | |||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||
* and/or sell copies of the Software, and to permit persons to whom the | |||
* Software is furnished to do so, subject to the following conditions: | |||
* | |||
* The above copyright notice and this permission notice shall be included in | |||
* all copies or substantial portions of the Software. | |||
* | |||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |||
* DEALINGS IN THE SOFTWARE. | |||
*/ | |||
#include "DistrhoUICycleShifter.hpp" | |||
#include "DistrhoPluginCycleShifter.hpp" | |||
START_NAMESPACE_DISTRHO | |||
namespace Art = DistrhoArtworkCycleShifter; | |||
// ----------------------------------------------------------------------- | |||
DistrhoUICycleShifter::DistrhoUICycleShifter() | |||
: UI(Art::backWidth, Art::backHeight), | |||
fImgBackground(Art::backData, Art::backWidth, Art::backHeight, GL_LUMINANCE) | |||
{ | |||
// sliders | |||
Image sliderImage(Art::sliderData, Art::sliderWidth, Art::sliderHeight, GL_LUMINANCE); | |||
fSliderNewCycleVol = new ImageSlider(this, sliderImage); | |||
fSliderNewCycleVol->setId(DistrhoPluginCycleShifter::kParameterNewCycleVolume); | |||
fSliderNewCycleVol->setStartPos(6, 49); | |||
fSliderNewCycleVol->setEndPos(247, 49); | |||
fSliderNewCycleVol->setRange(0.0f, 1.0f); | |||
fSliderNewCycleVol->setCallback(this); | |||
fSliderInputVol = new ImageSlider(this, sliderImage); | |||
fSliderInputVol->setId(DistrhoPluginCycleShifter::kParameterInputVolume); | |||
fSliderInputVol->setStartPos(6, 80); | |||
fSliderInputVol->setEndPos(247, 80); | |||
fSliderInputVol->setRange(0.0f, 1.0f); | |||
fSliderInputVol->setCallback(this); | |||
// set initial values | |||
d_programChanged(0); | |||
} | |||
// ----------------------------------------------------------------------- | |||
// DSP Callbacks | |||
void DistrhoUICycleShifter::d_parameterChanged(uint32_t index, float value) | |||
{ | |||
switch (index) | |||
{ | |||
case DistrhoPluginCycleShifter::kParameterNewCycleVolume: | |||
fSliderNewCycleVol->setValue(value); | |||
break; | |||
case DistrhoPluginCycleShifter::kParameterInputVolume: | |||
fSliderInputVol->setValue(value); | |||
break; | |||
} | |||
} | |||
void DistrhoUICycleShifter::d_programChanged(uint32_t index) | |||
{ | |||
switch(index) | |||
{ | |||
case 0: | |||
fSliderNewCycleVol->setValue(1.0f); | |||
fSliderInputVol->setValue(1.0f); | |||
break; | |||
} | |||
} | |||
// ----------------------------------------------------------------------- | |||
// Widget Callbacks | |||
void DistrhoUICycleShifter::imageSliderDragStarted(ImageSlider* slider) | |||
{ | |||
d_editParameter(slider->getId(), true); | |||
} | |||
void DistrhoUICycleShifter::imageSliderDragFinished(ImageSlider* slider) | |||
{ | |||
d_editParameter(slider->getId(), false); | |||
} | |||
void DistrhoUICycleShifter::imageSliderValueChanged(ImageSlider* slider, float value) | |||
{ | |||
d_setParameterValue(slider->getId(), value); | |||
} | |||
void DistrhoUICycleShifter::onDisplay() | |||
{ | |||
fImgBackground.draw(); | |||
} | |||
// ----------------------------------------------------------------------- | |||
UI* createUI() | |||
{ | |||
return new DistrhoUICycleShifter(); | |||
} | |||
// ----------------------------------------------------------------------- | |||
END_NAMESPACE_DISTRHO |
@@ -0,0 +1,74 @@ | |||
/* | |||
* DISTRHO CycleShifter, a DPF'ied CycleShifter. | |||
* Copyright (C) 2004 Niall Moody | |||
* Copyright (C) 2015 Filipe Coelho <falktx@falktx.com> | |||
* | |||
* Permission is hereby granted, free of charge, to any person obtaining a | |||
* copy of this software and associated documentation files (the "Software"), | |||
* to deal in the Software without restriction, including without limitation | |||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||
* and/or sell copies of the Software, and to permit persons to whom the | |||
* Software is furnished to do so, subject to the following conditions: | |||
* | |||
* The above copyright notice and this permission notice shall be included in | |||
* all copies or substantial portions of the Software. | |||
* | |||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |||
* DEALINGS IN THE SOFTWARE. | |||
*/ | |||
#ifndef DISTRHO_UI_CYCLE_SHIFTER_HPP_INCLUDED | |||
#define DISTRHO_UI_CYCLE_SHIFTER_HPP_INCLUDED | |||
#include "DistrhoUI.hpp" | |||
#include "ImageSlider.hpp" | |||
#include "DistrhoArtworkCycleShifter.hpp" | |||
using DGL::Image; | |||
using DGL::ImageSlider; | |||
START_NAMESPACE_DISTRHO | |||
// ----------------------------------------------------------------------- | |||
class DistrhoUICycleShifter : public UI, | |||
public ImageSlider::Callback | |||
{ | |||
public: | |||
DistrhoUICycleShifter(); | |||
protected: | |||
// ------------------------------------------------------------------- | |||
// DSP Callbacks | |||
void d_parameterChanged(uint32_t index, float value) override; | |||
void d_programChanged(uint32_t index) override; | |||
// ------------------------------------------------------------------- | |||
// Widget Callbacks | |||
void imageSliderDragStarted(ImageSlider* slider) override; | |||
void imageSliderDragFinished(ImageSlider* slider) override; | |||
void imageSliderValueChanged(ImageSlider* slider, float value) override; | |||
void onDisplay() override; | |||
private: | |||
Image fImgBackground; | |||
ScopedPointer<ImageSlider> fSliderNewCycleVol, fSliderInputVol; | |||
DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(DistrhoUICycleShifter) | |||
}; | |||
// ----------------------------------------------------------------------- | |||
END_NAMESPACE_DISTRHO | |||
#endif // DISTRHO_UI_CYCLE_SHIFTER_HPP_INCLUDED |
@@ -0,0 +1,53 @@ | |||
#!/usr/bin/make -f | |||
# Makefile for DISTRHO Plugins # | |||
# ---------------------------- # | |||
# Created by falkTX | |||
# | |||
# -------------------------------------------------------------- | |||
# Project name, used for binaries | |||
NAME = CycleShifter | |||
# -------------------------------------------------------------- | |||
# Files to build | |||
OBJS_DSP = \ | |||
DistrhoPluginCycleShifter.cpp.o | |||
OBJS_UI = \ | |||
DistrhoArtworkCycleShifter.cpp.o \ | |||
DistrhoUICycleShifter.cpp.o | |||
# -------------------------------------------------------------- | |||
# Do some magic | |||
include ../Makefile.mk | |||
# -------------------------------------------------------------- | |||
# Enable all possible plugin types | |||
ifeq ($(HAVE_JACK),true) | |||
TARGETS += jack | |||
endif | |||
ifeq ($(LINUX),true) | |||
TARGETS += ladspa | |||
ifeq ($(HAVE_DGL),true) | |||
ifeq ($(HAVE_LIBLO),true) | |||
TARGETS += dssi | |||
endif | |||
endif | |||
endif | |||
ifeq ($(HAVE_DGL),true) | |||
TARGETS += lv2_sep | |||
else | |||
TARGETS += lv2_dsp | |||
endif | |||
TARGETS += vst | |||
all: $(TARGETS) | |||
# -------------------------------------------------------------- |