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.

Makefile 9.0KB

11 years ago
11 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
10 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
11 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
9 years ago
9 years ago
10 years ago
10 years ago
11 years ago
10 years ago
10 years ago
10 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. #!/usr/bin/make -f
  2. # Makefile for native-plugins #
  3. # --------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=..
  7. MODULENAME=native-plugins
  8. include ../modules/Makefile.mk
  9. # ----------------------------------------------------------------------------------------------------------------------------
  10. BUILD_C_FLAGS += -I..
  11. BUILD_CXX_FLAGS += -I.. -isystem $(CWD)/modules -I$(CWD)/modules/distrho
  12. # ----------------------------------------------------------------------------------------------------------------------------
  13. # Flags for _all.c
  14. ALL_C_FLAGS = $(BUILD_C_FLAGS)
  15. # DISTRHO ProM
  16. ifeq ($(HAVE_DGL),true)
  17. ifeq ($(HAVE_PROJECTM),true)
  18. ALL_C_FLAGS += -DWANT_DISTRHO_PROM
  19. endif
  20. endif
  21. # ZynAddSubFX
  22. ifeq ($(HAVE_ZYN_DEPS),true)
  23. ALL_C_FLAGS += -DWANT_ZYNADDSUBFX
  24. endif
  25. # Experimental plugins
  26. ifeq ($(EXPERIMENTAL_PLUGINS),true)
  27. ALL_C_FLAGS += -DWANT_EXPERIMENTAL_PLUGINS
  28. endif
  29. # ----------------------------------------------------------------------------------------------------------------------------
  30. # Flags for ZynAddSubFX
  31. ifeq ($(HAVE_ZYN_DEPS),true)
  32. ZYN_CXX_FLAGS = $(BUILD_CXX_FLAGS) -isystem zynaddsubfx
  33. ZYN_CXX_FLAGS += $(shell pkg-config --cflags fftw3 mxml zlib)
  34. ifneq ($(MACOS),true)
  35. ZYN_CXX_FLAGS += -DHAVE_SCHEDULER
  36. endif
  37. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  38. ZYN_CXX_FLAGS += -DNTK_GUI -DWANT_ZYNADDSUBFX_UI
  39. ZYN_CXX_FLAGS += $(shell pkg-config --cflags ntk_images ntk)
  40. endif
  41. endif
  42. # ----------------------------------------------------------------------------------------------------------------------------
  43. # Set objects
  44. OBJS = \
  45. $(OBJDIR)/_all.c.o
  46. # ----------------------------------------------------------------------------------------------------------------------------
  47. # Simple plugins
  48. OBJS += \
  49. $(OBJDIR)/bypass.c.o \
  50. $(OBJDIR)/lfo.c.o \
  51. $(OBJDIR)/midi-gain.c.o \
  52. $(OBJDIR)/midi-split.c.o \
  53. $(OBJDIR)/midi-through.c.o \
  54. $(OBJDIR)/midi-transpose.c.o \
  55. $(OBJDIR)/nekofilter.c.o
  56. OBJS += \
  57. $(OBJDIR)/audio-file.cpp.o \
  58. $(OBJDIR)/bigmeter.cpp.o \
  59. $(OBJDIR)/midi-file.cpp.o \
  60. $(OBJDIR)/midi-sequencer.cpp.o \
  61. $(OBJDIR)/notes.cpp.o
  62. # ----------------------------------------------------------------------------------------------------------------------------
  63. # DISTRHO plugins
  64. OBJS += \
  65. $(OBJDIR)/distrho-3bandeq.cpp.o \
  66. $(OBJDIR)/distrho-3bandsplitter.cpp.o \
  67. $(OBJDIR)/distrho-mverb.cpp.o \
  68. $(OBJDIR)/distrho-nekobi.cpp.o \
  69. $(OBJDIR)/distrho-pingpongpan.cpp.o
  70. ifeq ($(HAVE_DGL),true)
  71. ifeq ($(HAVE_PROJECTM),true)
  72. OBJS += $(OBJDIR)/distrho-prom.cpp.o
  73. endif
  74. endif
  75. # ----------------------------------------------------------------------------------------------------------------------------
  76. # ZynAddSubFX
  77. ifeq ($(HAVE_ZYN_DEPS),true)
  78. OBJS += \
  79. $(OBJDIR)/zynaddsubfx-fx.cpp.o \
  80. $(OBJDIR)/zynaddsubfx-synth.cpp.o \
  81. $(OBJDIR)/zynaddsubfx-src.cpp.o
  82. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  83. OBJS += \
  84. $(OBJDIR)/zynaddsubfx-ui.cpp.o
  85. ZYN_UI_FILES_CPP = \
  86. zynaddsubfx/UI/ADnoteUI.cpp \
  87. zynaddsubfx/UI/BankUI.cpp \
  88. zynaddsubfx/UI/ConfigUI.cpp \
  89. zynaddsubfx/UI/EffUI.cpp \
  90. zynaddsubfx/UI/EnvelopeUI.cpp \
  91. zynaddsubfx/UI/FilterUI.cpp \
  92. zynaddsubfx/UI/LFOUI.cpp \
  93. zynaddsubfx/UI/MasterUI.cpp \
  94. zynaddsubfx/UI/MicrotonalUI.cpp \
  95. zynaddsubfx/UI/OscilGenUI.cpp \
  96. zynaddsubfx/UI/PADnoteUI.cpp \
  97. zynaddsubfx/UI/PartUI.cpp \
  98. zynaddsubfx/UI/PresetsUI.cpp \
  99. zynaddsubfx/UI/ResonanceUI.cpp \
  100. zynaddsubfx/UI/SUBnoteUI.cpp \
  101. zynaddsubfx/UI/VirKeyboard.cpp
  102. ZYN_UI_FILES_H = \
  103. zynaddsubfx/UI/ADnoteUI.h \
  104. zynaddsubfx/UI/BankUI.h \
  105. zynaddsubfx/UI/ConfigUI.h \
  106. zynaddsubfx/UI/EffUI.h \
  107. zynaddsubfx/UI/EnvelopeUI.h \
  108. zynaddsubfx/UI/FilterUI.h \
  109. zynaddsubfx/UI/LFOUI.h \
  110. zynaddsubfx/UI/MasterUI.h \
  111. zynaddsubfx/UI/MicrotonalUI.h \
  112. zynaddsubfx/UI/OscilGenUI.h \
  113. zynaddsubfx/UI/PADnoteUI.h \
  114. zynaddsubfx/UI/PartUI.h \
  115. zynaddsubfx/UI/PresetsUI.h \
  116. zynaddsubfx/UI/ResonanceUI.h \
  117. zynaddsubfx/UI/SUBnoteUI.h \
  118. zynaddsubfx/UI/VirKeyboard.h
  119. endif
  120. endif
  121. # ----------------------------------------------------------------------------------------------------------------------------
  122. # Experimental plugins
  123. ifeq ($(EXPERIMENTAL_PLUGINS),true)
  124. OBJS += \
  125. $(OBJDIR)/zita-at1.cpp.o \
  126. $(OBJDIR)/zita-bls1.cpp.o \
  127. $(OBJDIR)/zita-rev1.cpp.o
  128. endif
  129. # ----------------------------------------------------------------------------------------------------------------------------
  130. all: $(MODULEDIR)/$(MODULENAME).a
  131. # ----------------------------------------------------------------------------------------------------------------------------
  132. clean:
  133. rm -f $(OBJDIR)/*.o $(MODULEDIR)/$(MODULENAME)*.a $(ZYN_UI_FILES_H) $(ZYN_UI_FILES_CPP)
  134. debug:
  135. $(MAKE) DEBUG=true
  136. # ----------------------------------------------------------------------------------------------------------------------------
  137. $(MODULEDIR)/$(MODULENAME).a: $(OBJS)
  138. -@mkdir -p $(MODULEDIR)
  139. @echo "Creating $(MODULENAME).a"
  140. @rm -f $@
  141. @$(AR) crs $@ $^
  142. # ----------------------------------------------------------------------------------------------------------------------------
  143. zynaddsubfx/UI/%.cpp: zynaddsubfx/UI/%.fl
  144. @echo "Generating $@/h"
  145. @ntk-fluid -c -o zynaddsubfx/UI/$*.cpp -h zynaddsubfx/UI/$*.h $<
  146. zynaddsubfx/UI/%.h: zynaddsubfx/UI/%.fl
  147. @echo "Generating $@/cpp"
  148. @ntk-fluid -c -o zynaddsubfx/UI/$*.cpp -h zynaddsubfx/UI/$*.h $<
  149. # ----------------------------------------------------------------------------------------------------------------------------
  150. $(OBJDIR)/_all.c.o: _all.c
  151. -@mkdir -p $(OBJDIR)
  152. @echo "Compiling $<"
  153. @$(CC) $< $(ALL_C_FLAGS) -c -o $@
  154. $(OBJDIR)/%.c.o: %.c
  155. -@mkdir -p $(OBJDIR)
  156. @echo "Compiling $<"
  157. @$(CC) $< $(BUILD_C_FLAGS) -c -o $@
  158. # ----------------------------------------------------------------------------------------------------------------------------
  159. $(OBJDIR)/distrho-3bandeq.cpp.o: distrho-3bandeq.cpp
  160. -@mkdir -p $(OBJDIR)
  161. @echo "Compiling $<"
  162. @$(CXX) $< $(BUILD_CXX_FLAGS) -DDISTRHO_NAMESPACE=DISTRHO_3BandEQ -Idistrho-3bandeq -I$(CWD)/modules/dgl -Wno-effc++ -c -o $@
  163. $(OBJDIR)/distrho-3bandsplitter.cpp.o: distrho-3bandsplitter.cpp
  164. -@mkdir -p $(OBJDIR)
  165. @echo "Compiling $<"
  166. @$(CXX) $< $(BUILD_CXX_FLAGS) -DDISTRHO_NAMESPACE=DISTRHO_3BandSplitter -Idistrho-3bandsplitter -I$(CWD)/modules/dgl -Wno-effc++ -c -o $@
  167. $(OBJDIR)/distrho-mverb.cpp.o: distrho-mverb.cpp
  168. -@mkdir -p $(OBJDIR)
  169. # FIXME - fix mverb strict warnings
  170. @echo "Compiling $<"
  171. @$(CXX) $< $(BUILD_CXX_FLAGS) -DDISTRHO_NAMESPACE=DISTRHO_MVerb -Idistrho-mverb -I$(CWD)/modules/dgl -Wno-conversion -Wno-effc++ -Wno-shadow -c -o $@
  172. $(OBJDIR)/distrho-nekobi.cpp.o: distrho-nekobi.cpp
  173. -@mkdir -p $(OBJDIR)
  174. # FIXME - fix nekobi strict warnings
  175. @echo "Compiling $<"
  176. @$(CXX) $< $(BUILD_CXX_FLAGS) -DDISTRHO_NAMESPACE=DISTRHO_Nekobi -Idistrho-nekobi -I$(CWD)/modules/dgl -w -c -o $@
  177. $(OBJDIR)/distrho-pingpongpan.cpp.o: distrho-pingpongpan.cpp
  178. -@mkdir -p $(OBJDIR)
  179. @echo "Compiling $<"
  180. @$(CXX) $< $(BUILD_CXX_FLAGS) -DDISTRHO_NAMESPACE=DISTRHO_PingPongPan -Idistrho-pingpongpan -I$(CWD)/modules/dgl -Wno-effc++ -c -o $@
  181. $(OBJDIR)/distrho-prom.cpp.o: distrho-prom.cpp
  182. -@mkdir -p $(OBJDIR)
  183. @echo "Compiling $<"
  184. @$(CXX) $< $(BUILD_CXX_FLAGS) $(PROJECTM_FLAGS) -DDISTRHO_NAMESPACE=DISTRHO_ProM -Idistrho-prom -I$(CWD)/modules/dgl -Wno-effc++ -c -o $@
  185. # ----------------------------------------------------------------------------------------------------------------------------
  186. $(OBJDIR)/zynaddsubfx-fx.cpp.o: zynaddsubfx-fx.cpp $(ZYN_UI_FILES_H)
  187. -@mkdir -p $(OBJDIR)
  188. @echo "Compiling $<"
  189. @$(CXX) $< $(ZYN_CXX_FLAGS) -c -o $@
  190. $(OBJDIR)/zynaddsubfx-synth.cpp.o: zynaddsubfx-synth.cpp $(ZYN_UI_FILES_H)
  191. -@mkdir -p $(OBJDIR)
  192. @echo "Compiling $<"
  193. @$(CXX) $< $(ZYN_CXX_FLAGS) -c -o $@
  194. $(OBJDIR)/zynaddsubfx-src.cpp.o: zynaddsubfx-src.cpp $(ZYN_UI_FILES_H)
  195. -@mkdir -p $(OBJDIR)
  196. @echo "Compiling $<"
  197. @$(CXX) $< $(ZYN_CXX_FLAGS) -w -c -o $@
  198. $(OBJDIR)/zynaddsubfx-ui.cpp.o: zynaddsubfx-ui.cpp $(ZYN_UI_FILES_H) $(ZYN_UI_FILES_CPP)
  199. -@mkdir -p $(OBJDIR)
  200. @echo "Compiling $<"
  201. @$(CXX) $< $(ZYN_CXX_FLAGS) -w -c -o $@
  202. # ----------------------------------------------------------------------------------------------------------------------------
  203. $(OBJDIR)/zita-at1.cpp.o: zita-at1.cpp
  204. -@mkdir -p $(OBJDIR)
  205. @echo "Compiling $<"
  206. @$(CXX) $< $(BUILD_CXX_FLAGS) $(shell pkg-config --cflags fftw3f x11 xft) -Wno-unused-parameter -Wno-unused-result -c -o $@
  207. $(OBJDIR)/zita-bls1.cpp.o: zita-bls1.cpp
  208. -@mkdir -p $(OBJDIR)
  209. @echo "Compiling $<"
  210. @$(CXX) $< $(BUILD_CXX_FLAGS) $(shell pkg-config --cflags cairo fftw3f libpng12 x11 xft) -Wno-unused-parameter -Wno-unused-result -c -o $@
  211. $(OBJDIR)/zita-rev1.cpp.o: zita-rev1.cpp
  212. -@mkdir -p $(OBJDIR)
  213. @echo "Compiling $<"
  214. @$(CXX) $< $(BUILD_CXX_FLAGS) $(shell pkg-config --cflags fftw3f x11 xft) -Wno-unused-parameter -Wno-unused-result -c -o $@
  215. # ----------------------------------------------------------------------------------------------------------------------------
  216. $(OBJDIR)/%.cpp.o: %.cpp
  217. -@mkdir -p $(OBJDIR)
  218. @echo "Compiling $<"
  219. @$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  220. # ----------------------------------------------------------------------------------------------------------------------------
  221. -include $(OBJS:%.o=%.d)
  222. # ----------------------------------------------------------------------------------------------------------------------------