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 5.7KB

11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. #!/usr/bin/make -f
  2. # Makefile for carla-native #
  3. # ------------------------- #
  4. # Created by falkTX
  5. #
  6. include ../Makefile.mk
  7. # --------------------------------------------------------------
  8. BUILD_CXX_FLAGS += -I. -I../../libs/distrho -I../../widgets
  9. ifeq ($(HAVE_QT5),true)
  10. BUILD_CXX_FLAGS += $(shell pkg-config --cflags Qt5Core Qt5Gui Qt5Widgets)
  11. else
  12. BUILD_CXX_FLAGS += $(shell pkg-config --cflags QtCore QtGui)
  13. endif
  14. # --------------------------------------------------------------
  15. CARLA_CXX_FLAGS = $(BUILD_CXX_FLAGS)
  16. CARLA_CXX_FLAGS += $(shell pkg-config --cflags liblo)
  17. CARLA_CXX_FLAGS += -I../engine
  18. ifeq ($(HAVE_AF_DEPS),true)
  19. AF_C_FLAGS = $(BUILD_C_FLAGS)
  20. AF_C_FLAGS += $(shell pkg-config --cflags sndfile)
  21. ifeq ($(HAVE_FFMPEG),true)
  22. AF_C_FLAGS += -DHAVE_FFMPEG
  23. AF_C_FLAGS += $(shell pkg-config --cflags libavcodec libavformat libavutil)
  24. endif
  25. endif
  26. ifeq ($(HAVE_MF_DEPS),true)
  27. MF_CXX_FLAGS = $(BUILD_CXX_FLAGS)
  28. MF_CXX_FLAGS += $(shell pkg-config --cflags smf)
  29. endif
  30. ifeq ($(HAVE_OPENGL),true)
  31. GL_CXX_FLAGS = $(BUILD_CXX_FLAGS)
  32. GL_CXX_FLAGS += $(shell pkg-config --cflags gl)
  33. endif
  34. ifeq ($(HAVE_ZYN_DEPS),true)
  35. ZYN_CXX_FLAGS = $(BUILD_CXX_FLAGS)
  36. ZYN_CXX_FLAGS += $(shell pkg-config --cflags fftw3 mxml zlib)
  37. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  38. ZYN_CXX_FLAGS += -DNTK_GUI
  39. ZYN_CXX_FLAGS += $(shell pkg-config --cflags ntk ntk_images)
  40. endif
  41. endif
  42. # --------------------------------------------------------------
  43. # Simple plugins
  44. OBJS = \
  45. bypass.c.o \
  46. lfo.c.o \
  47. midi-sequencer.cpp.o \
  48. midi-split.c.o \
  49. midi-through.c.o \
  50. midi-transpose.c.o \
  51. sunvox-file.cpp.o
  52. ifneq ($(WIN32),true)
  53. OBJS += \
  54. nekofilter.c.o
  55. endif
  56. # Carla
  57. OBJS += \
  58. carla.cpp.o
  59. # AudioFile
  60. ifeq ($(HAVE_AF_DEPS),true)
  61. OBJS += \
  62. audiofile.c.o
  63. endif
  64. # MidiFile
  65. ifeq ($(HAVE_MF_DEPS),true)
  66. OBJS += \
  67. midi-file.cpp.o
  68. endif
  69. # DISTRHO plugins (OpenGL)
  70. ifeq ($(HAVE_OPENGL),true)
  71. OBJS += \
  72. distrho-3bandeq.cpp.o \
  73. distrho-3bandsplitter.cpp.o \
  74. distrho-pingpongpan.cpp.o
  75. endif
  76. # DISTRHO plugins (Qt)
  77. OBJS += \
  78. distrho-notes.cpp.o
  79. ifeq ($(HAVE_ZYN_DEPS),true)
  80. # ZynAddSubFX
  81. OBJS += \
  82. zynaddsubfx.cpp.o \
  83. zynaddsubfx-src.cpp.o
  84. ifeq ($(HAVE_ZYN_UI_DEPS),true)
  85. OBJS += zynaddsubfx-ui.cpp.o
  86. ZYN_UI_FILES_CPP = \
  87. zynaddsubfx/UI/ADnoteUI.cpp \
  88. zynaddsubfx/UI/BankUI.cpp \
  89. zynaddsubfx/UI/ConfigUI.cpp \
  90. zynaddsubfx/UI/EffUI.cpp \
  91. zynaddsubfx/UI/EnvelopeUI.cpp \
  92. zynaddsubfx/UI/FilterUI.cpp \
  93. zynaddsubfx/UI/LFOUI.cpp \
  94. zynaddsubfx/UI/MasterUI.cpp \
  95. zynaddsubfx/UI/MicrotonalUI.cpp \
  96. zynaddsubfx/UI/OscilGenUI.cpp \
  97. zynaddsubfx/UI/PADnoteUI.cpp \
  98. zynaddsubfx/UI/PartUI.cpp \
  99. zynaddsubfx/UI/PresetsUI.cpp \
  100. zynaddsubfx/UI/ResonanceUI.cpp \
  101. zynaddsubfx/UI/SUBnoteUI.cpp \
  102. zynaddsubfx/UI/VirKeyboard.cpp
  103. ZYN_UI_FILES_H = \
  104. zynaddsubfx/UI/ADnoteUI.h \
  105. zynaddsubfx/UI/BankUI.h \
  106. zynaddsubfx/UI/ConfigUI.h \
  107. zynaddsubfx/UI/EffUI.h \
  108. zynaddsubfx/UI/EnvelopeUI.h \
  109. zynaddsubfx/UI/FilterUI.h \
  110. zynaddsubfx/UI/LFOUI.h \
  111. zynaddsubfx/UI/MasterUI.h \
  112. zynaddsubfx/UI/MicrotonalUI.h \
  113. zynaddsubfx/UI/OscilGenUI.h \
  114. zynaddsubfx/UI/PADnoteUI.h \
  115. zynaddsubfx/UI/PartUI.h \
  116. zynaddsubfx/UI/PresetsUI.h \
  117. zynaddsubfx/UI/ResonanceUI.h \
  118. zynaddsubfx/UI/SUBnoteUI.h \
  119. zynaddsubfx/UI/VirKeyboard.h
  120. endif
  121. endif
  122. TARGET = ../libcarla_native.a
  123. # --------------------------------------------------------------
  124. all: $(TARGET)
  125. clean:
  126. rm -f $(OBJS) $(TARGET)
  127. rm -f $(ZYN_UI_FILES_CPP)
  128. rm -f $(ZYN_UI_FILES_H)
  129. rm -f moc_*.cpp
  130. debug:
  131. $(MAKE) DEBUG=true
  132. # --------------------------------------------------------------
  133. %.c.o: %.c ../CarlaNative.h
  134. $(CC) $< $(BUILD_C_FLAGS) -c -o $@
  135. %.cpp.o: %.cpp ../CarlaNative.h ../CarlaNative.hpp
  136. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  137. $(TARGET): $(OBJS)
  138. $(AR) rs $@ $^
  139. # --------------------------------------------------------------
  140. audiofile.c.o: audiofile.c
  141. $(CC) $< $(AF_C_FLAGS) -c -o $@
  142. carla.cpp.o: carla.cpp
  143. $(CXX) $< $(CARLA_CXX_FLAGS) -c -o $@
  144. distrho-3bandeq.cpp.o: distrho-3bandeq.cpp 3bandeq/DistrhoArtwork3BandEQ.cpp 3bandeq/DistrhoPlugin3BandEQ.cpp 3bandeq/DistrhoUI3BandEQ.cpp distrho/DistrhoPluginCarla.cpp
  145. $(CXX) $< $(GL_CXX_FLAGS) -I3bandeq -DDISTRHO_NAMESPACE=DISTRHO_3BandEQ -c -o $@
  146. distrho-3bandsplitter.cpp.o: distrho-3bandsplitter.cpp 3bandsplitter/DistrhoArtwork3BandSplitter.cpp 3bandsplitter/DistrhoPlugin3BandSplitter.cpp 3bandsplitter/DistrhoUI3BandSplitter.cpp distrho/DistrhoPluginCarla.cpp
  147. $(CXX) $< $(GL_CXX_FLAGS) -I3bandsplitter -DDISTRHO_NAMESPACE=DISTRHO_3BandSplitter -c -o $@
  148. distrho-pingpongpan.cpp.o: distrho-pingpongpan.cpp pingpongpan/DistrhoArtworkPingPongPan.cpp pingpongpan/DistrhoPluginPingPongPan.cpp pingpongpan/DistrhoUIPingPongPan.cpp distrho/DistrhoPluginCarla.cpp
  149. $(CXX) $< $(GL_CXX_FLAGS) -Ipingpongpan -DDISTRHO_NAMESPACE=DISTRHO_PingPongPan -c -o $@
  150. distrho-notes.cpp.o: distrho-notes.cpp notes/DistrhoPluginNotes.cpp notes/DistrhoUINotes.cpp distrho/DistrhoPluginCarla.cpp moc_DistrhoUINotes.cpp
  151. $(CXX) $< $(BUILD_CXX_FLAGS) -Inotes -DDISTRHO_NAMESPACE=DISTRHO_Notes -c -o $@
  152. midi-file.cpp.o: midi-file.cpp
  153. $(CXX) $< $(MF_CXX_FLAGS) -c -o $@
  154. zynaddsubfx.cpp.o: zynaddsubfx.cpp $(ZYN_UI_FILES_H)
  155. $(CXX) $< $(ZYN_CXX_FLAGS) -c -o $@
  156. zynaddsubfx-src.cpp.o: zynaddsubfx-src.cpp
  157. $(CXX) $< $(ZYN_CXX_FLAGS) -c -o $@
  158. zynaddsubfx-ui.cpp.o: zynaddsubfx-ui.cpp $(ZYN_UI_FILES_CPP)
  159. $(CXX) $< $(ZYN_CXX_FLAGS) -c -o $@
  160. # --------------------------------------------------------------
  161. moc_DistrhoUINotes.cpp: notes/DistrhoUINotes.hpp
  162. $(MOC) $< -o $@
  163. zynaddsubfx/UI/%.cpp: zynaddsubfx/UI/%.fl
  164. ntk-fluid -c -o zynaddsubfx/UI/$*.cpp -h zynaddsubfx/UI/$*.h $<
  165. zynaddsubfx/UI/%.h: zynaddsubfx/UI/%.fl
  166. ntk-fluid -c -o zynaddsubfx/UI/$*.cpp -h zynaddsubfx/UI/$*.h $<
  167. # --------------------------------------------------------------
  168. ../libs/%:
  169. $(MAKE) -C ../libs $*