Audio plugin host https://kx.studio/carla
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

177 lines
3.7KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-native plugins #
  3. # ----------------------------------------------- #
  4. # Created by falkTX
  5. #
  6. include ../../Makefile.mk
  7. WANT_GUI = $(shell pkg-config --exists ntk ntk_images && echo true)
  8. # --------------------------------------------------------------
  9. BUILD_CXX_FLAGS += -fvisibility=hidden -fPIC -I.
  10. BUILD_CXX_FLAGS += -DASM_F2I_YES -DVERSION=\"2.4.3\"
  11. # BUILD_CXX_FLAGS += -DIN_DEFAULT=\"\" -DOUT_DEFAULT=\"\"
  12. BUILD_CXX_FLAGS += -DIN_DEFAULT=\"JACK\" -DOUT_DEFAULT=\"JACK\" -DJACK=1
  13. BUILD_CXX_FLAGS += $(shell pkg-config --cflags fftw3 mxml jack)
  14. LINK_FLAGS += $(shell pkg-config --libs fftw3 mxml jack)
  15. OBJS = \
  16. DSP/AnalogFilter.o \
  17. DSP/FFTwrapper.o \
  18. DSP/Filter.o \
  19. DSP/FormantFilter.o \
  20. DSP/SVFilter.o \
  21. DSP/Unison.o \
  22. Effects/Alienwah.o \
  23. Effects/Chorus.o \
  24. Effects/Distorsion.o \
  25. Effects/DynamicFilter.o \
  26. Effects/Echo.o \
  27. Effects/Effect.o \
  28. Effects/EffectLFO.o \
  29. Effects/EffectMgr.o \
  30. Effects/EQ.o \
  31. Effects/Phaser.o \
  32. Effects/Reverb.o \
  33. Misc/Bank.o \
  34. Misc/Config.o \
  35. Misc/Dump.o \
  36. Misc/Master.o \
  37. Misc/Microtonal.o \
  38. Misc/Part.o \
  39. Misc/Recorder.o \
  40. Misc/Util.o \
  41. Misc/WavFile.o \
  42. Misc/WaveShapeSmps.o \
  43. Misc/XMLwrapper.o \
  44. Nio/AudioOut.o \
  45. Nio/Engine.o \
  46. Nio/EngineMgr.o \
  47. Nio/Nio.o \
  48. Nio/NulEngine.o \
  49. Nio/InMgr.o \
  50. Nio/OutMgr.o \
  51. Nio/WavEngine.o \
  52. Params/ADnoteParameters.o \
  53. Params/Controller.o \
  54. Params/EnvelopeParams.o \
  55. Params/FilterParams.o \
  56. Params/LFOParams.o \
  57. Params/PADnoteParameters.o \
  58. Params/Presets.o \
  59. Params/PresetsArray.o \
  60. Params/PresetsStore.o \
  61. Params/SUBnoteParameters.o \
  62. Synth/ADnote.o \
  63. Synth/Envelope.o \
  64. Synth/LFO.o \
  65. Synth/OscilGen.o \
  66. Synth/PADnote.o \
  67. Synth/Resonance.o \
  68. Synth/SUBnote.o \
  69. Synth/SynthNote.o
  70. # Misc/Stereo.o
  71. # Nio/MidiIn.o
  72. OBJS += Nio/JackEngine.o
  73. # ifeq ($(WANT_GUI),true)
  74. # BUILD_CXX_FLAGS += -DFLTK_GUI=1
  75. BUILD_CXX_FLAGS += -DNTK_GUI=1
  76. # BUILD_CXX_FLAGS += -DVSTAUDIOOUT=1 # TESTING
  77. BUILD_CXX_FLAGS += -DPIXMAP_PATH=\"/usr/share/zynaddsubfx/pixmaps/\"
  78. BUILD_CXX_FLAGS += -DSOURCE_DIR=\"/usr/share/zynaddsubfx/pixmaps/nothing-here\"
  79. # BUILD_CXX_FLAGS += $(shell fltk-config --use-images --cxxflags)
  80. # LINK_FLAGS += $(shell fltk-config --use-images --ldflags)
  81. BUILD_CXX_FLAGS += $(shell pkg-config --cflags ntk ntk_images)
  82. LINK_FLAGS += $(shell pkg-config --libs ntk ntk_images)
  83. FILES = \
  84. UI/ADnoteUI.cc \
  85. UI/BankUI.cc \
  86. UI/ConfigUI.cc \
  87. UI/EffUI.cc \
  88. UI/EnvelopeUI.cc \
  89. UI/FilterUI.cc \
  90. UI/LFOUI.cc \
  91. UI/MasterUI.cc \
  92. UI/MicrotonalUI.cc \
  93. UI/OscilGenUI.cc \
  94. UI/PADnoteUI.cc \
  95. UI/PartUI.cc \
  96. UI/PresetsUI.cc \
  97. UI/ResonanceUI.cc \
  98. UI/SUBnoteUI.cc \
  99. UI/VirKeyboard.cc
  100. HEADERS = \
  101. UI/ADnoteUI.h \
  102. UI/BankUI.h \
  103. UI/ConfigUI.h \
  104. UI/EffUI.h \
  105. UI/EnvelopeUI.h \
  106. UI/FilterUI.h \
  107. UI/LFOUI.h \
  108. UI/MasterUI.h \
  109. UI/MicrotonalUI.h \
  110. UI/OscilGenUI.h \
  111. UI/PADnoteUI.h \
  112. UI/PartUI.h \
  113. UI/PresetsUI.h \
  114. UI/ResonanceUI.h \
  115. UI/SUBnoteUI.h \
  116. UI/VirKeyboard.h
  117. OBJS += \
  118. UI/ADnoteUI.o \
  119. UI/BankUI.o \
  120. UI/ConfigUI.o \
  121. UI/EffUI.o \
  122. UI/EnvelopeUI.o \
  123. UI/FilterUI.o \
  124. UI/LFOUI.o \
  125. UI/MasterUI.o \
  126. UI/MicrotonalUI.o \
  127. UI/OscilGenUI.o \
  128. UI/PADnoteUI.o \
  129. UI/PartUI.o \
  130. UI/PresetsUI.o \
  131. UI/ResonanceUI.o \
  132. UI/SUBnoteUI.o \
  133. UI/VirKeyboard.o \
  134. UI/WidgetPDial.o \
  135. UI/NioUI.o
  136. # endif
  137. TARGET = ../zynaddsubfx.a
  138. # --------------------------------------------------------------
  139. all: $(TARGET)
  140. $(TARGET): $(FILES) $(OBJS)
  141. $(AR) rs $@ $(OBJS)
  142. test: $(FILES) $(OBJS) main.o
  143. $(CXX) $(OBJS) main.o $(LINK_FLAGS) -o $@
  144. # --------------------------------------------------------------
  145. %.cc: %.fl
  146. # FIXME
  147. cd UI; ntk-fluid -c ../$<; cd ..
  148. # cd UI; fluid -c ../$<; cd ..
  149. .cc.o:
  150. $(CXX) -c $< $(BUILD_CXX_FLAGS) -o $@
  151. .cpp.o:
  152. $(CXX) -c $< $(BUILD_CXX_FLAGS) -o $@
  153. clean:
  154. rm -f $(TARGET) $(FILES) $(HEADERS) $(OBJS) main.o