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.

152 lines
4.3KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla plugin #
  3. # ------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=..
  7. include ../Makefile.mk
  8. # --------------------------------------------------------------
  9. BUILD_CXX_FLAGS += -I../backend -I../includes -I../utils -isystem ../modules
  10. BUILD_CXX_FLAGS += $(NATIVE_PLUGINS_FLAGS)
  11. # --------------------------------------------------------------
  12. # Link flags
  13. LINK_FLAGS += $(JACKBRIDGE_LIBS)
  14. LINK_FLAGS += $(JUCE_AUDIO_BASICS_LIBS)
  15. LINK_FLAGS += $(JUCE_AUDIO_FORMATS_LIBS)
  16. LINK_FLAGS += $(JUCE_CORE_LIBS)
  17. LINK_FLAGS += $(LIBLO_LIBS)
  18. LINK_FLAGS += $(LILV_LIBS)
  19. LINK_FLAGS += $(NATIVE_PLUGINS_LIBS)
  20. LINK_FLAGS += $(RTMEMPOOL_LIBS)
  21. ifeq ($(MACOS_OR_WIN32),true)
  22. LINK_FLAGS += $(JUCE_AUDIO_PROCESSORS_LIBS)
  23. LINK_FLAGS += $(JUCE_DATA_STRUCTURES_LIBS)
  24. LINK_FLAGS += $(JUCE_EVENTS_LIBS)
  25. LINK_FLAGS += $(JUCE_GRAPHICS_LIBS)
  26. LINK_FLAGS += $(JUCE_GUI_BASICS_LIBS)
  27. LINK_FLAGS += $(JUCE_GUI_EXTRA_LIBS)
  28. endif
  29. ifeq ($(HAVE_FLUIDSYNTH),true)
  30. LINK_FLAGS += $(FLUIDSYNTH_LIBS)
  31. endif
  32. ifeq ($(HAVE_LINUXSAMPLER),true)
  33. LINK_FLAGS += $(LINUXSAMPLER_LIBS)
  34. endif
  35. ifeq ($(HAVE_X11),true)
  36. LINK_FLAGS += $(X11_LIBS)
  37. endif
  38. ifeq ($(LINUX),true)
  39. LINK_FLAGS += -lmagic
  40. endif
  41. # --------------------------------------------------------------
  42. # Libs
  43. LIBS += ../backend/carla_engine_plugin.a
  44. LIBS += ../backend/carla_plugin.a
  45. LIBS += ../modules/native-plugins.a
  46. LIBS += ../modules/jackbridge.a
  47. LIBS += ../modules/juce_audio_basics.a
  48. LIBS += ../modules/juce_audio_formats.a
  49. LIBS += ../modules/juce_core.a
  50. LIBS += ../modules/lilv.a
  51. LIBS += ../modules/rtmempool.a
  52. ifeq ($(MACOS_OR_WIN32),true)
  53. LIBS += ../modules/juce_audio_processors.a
  54. LIBS += ../modules/juce_data_structures.a
  55. LIBS += ../modules/juce_events.a
  56. LIBS += ../modules/juce_graphics.a
  57. LIBS += ../modules/juce_gui_basics.a
  58. LIBS += ../modules/juce_gui_extra.a
  59. endif
  60. # --------------------------------------------------------------
  61. TARGETS =
  62. ifneq ($(WIN32),true)
  63. TARGETS += \
  64. ../../bin/carla.lv2/carla$(LIB_EXT) \
  65. ../../bin/carla-lv2-export$(APP_EXT)
  66. endif
  67. ifeq ($(LINUX),true)
  68. ifeq ($(DEFAULT_QT),4)
  69. ifeq ($(HAVE_X11),true)
  70. TARGETS += \
  71. ../../bin/CarlaRack$(LIB_EXT) \
  72. ../../bin/CarlaRackFX$(LIB_EXT) \
  73. ../../bin/CarlaPatchbay$(LIB_EXT) \
  74. ../../bin/CarlaPatchbayFX$(LIB_EXT)
  75. endif
  76. endif
  77. endif
  78. # --------------------------------------------------------------
  79. all: $(TARGETS)
  80. clean:
  81. $(RM) $(TARGETS) *.o
  82. $(RM) carla.lv2/*.*
  83. debug:
  84. $(MAKE) DEBUG=true
  85. # --------------------------------------------------------------
  86. carla-base.cpp.o: carla-base.cpp ../modules/CarlaNative.h
  87. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  88. carla-lv2.cpp.o: carla-lv2.cpp carla-base.cpp ../modules/CarlaNative.h
  89. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  90. carla-lv2-export.cpp.o: carla-lv2-export.cpp carla-base.cpp ../modules/CarlaNative.h
  91. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  92. carla-vst.cpp.rack-fx.o: carla-vst.cpp carla-base.cpp ../modules/CarlaNative.h
  93. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  94. carla-vst.cpp.rack-syn.o: carla-vst.cpp carla-base.cpp ../modules/CarlaNative.h
  95. $(CXX) $< $(BUILD_CXX_FLAGS) -DCARLA_PLUGIN_SYNTH -c -o $@
  96. carla-vst.cpp.patchbay-fx.o: carla-vst.cpp carla-base.cpp ../modules/CarlaNative.h
  97. $(CXX) $< $(BUILD_CXX_FLAGS) -DCARLA_PLUGIN_PATCHBAY -c -o $@
  98. carla-vst.cpp.patchbay-syn.o: carla-vst.cpp carla-base.cpp ../modules/CarlaNative.h
  99. $(CXX) $< $(BUILD_CXX_FLAGS) -DCARLA_PLUGIN_PATCHBAY -DCARLA_PLUGIN_SYNTH -c -o $@
  100. # --------------------------------------------------------------
  101. ../../bin/carla.lv2/carla$(LIB_EXT): carla-lv2.cpp.o $(LIBS)
  102. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(SHARED) $(LINK_FLAGS) -o $@
  103. ../../bin/carla-lv2-export$(APP_EXT): carla-lv2-export.cpp.o $(LIBS)
  104. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(LINK_FLAGS) -o $@
  105. ../../bin/CarlaRack$(LIB_EXT): carla-vst.cpp.rack-syn.o $(LIBS)
  106. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(SHARED) $(LINK_FLAGS) -o $@
  107. ../../bin/CarlaRackFX$(LIB_EXT): carla-vst.cpp.rack-fx.o $(LIBS)
  108. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(SHARED) $(LINK_FLAGS) -o $@
  109. ../../bin/CarlaPatchbay$(LIB_EXT): carla-vst.cpp.patchbay-syn.o $(LIBS)
  110. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(SHARED) $(LINK_FLAGS) -o $@
  111. ../../bin/CarlaPatchbayFX$(LIB_EXT): carla-vst.cpp.patchbay-fx.o $(LIBS)
  112. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(SHARED) $(LINK_FLAGS) -o $@
  113. # --------------------------------------------------------------