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.

126 lines
3.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. # Common
  13. LINK_FLAGS += $(JUCE_AUDIO_BASICS_LIBS)
  14. LINK_FLAGS += $(JUCE_CORE_LIBS)
  15. LINK_FLAGS += $(LIBLO_LIBS)
  16. LINK_FLAGS += $(RTMEMPOOL_LIBS)
  17. # --------------------------------------------------------------
  18. # Engine
  19. LINK_FLAGS += $(JACKBRIDGE_LIBS)
  20. # --------------------------------------------------------------
  21. # Plugin
  22. ifeq ($(CARLA_PLUGIN_SUPPORT),true)
  23. LINK_FLAGS += $(LILV_LIBS)
  24. endif
  25. ifeq ($(HAVE_FLUIDSYNTH),true)
  26. LINK_FLAGS += $(FLUIDSYNTH_LIBS)
  27. endif
  28. ifeq ($(HAVE_LINUXSAMPLER),true)
  29. LINK_FLAGS += $(LINUXSAMPLER_LIBS)
  30. endif
  31. # --------------------------------------------------------------
  32. # Coomon
  33. ifeq ($(HAVE_JUCE_UI),true)
  34. LINK_FLAGS += $(JUCE_AUDIO_PROCESSORS_LIBS)
  35. LINK_FLAGS += $(JUCE_DATA_STRUCTURES_LIBS)
  36. LINK_FLAGS += $(JUCE_EVENTS_LIBS)
  37. LINK_FLAGS += $(JUCE_GRAPHICS_LIBS)
  38. LINK_FLAGS += $(JUCE_GUI_BASICS_LIBS)
  39. LINK_FLAGS += $(JUCE_GUI_EXTRA_LIBS)
  40. endif
  41. # --------------------------------------------------------------
  42. # Native
  43. LINK_FLAGS += $(NATIVE_PLUGINS_LIBS)
  44. # --------------------------------------------------------------
  45. # Libs
  46. LIBS += ../backend/carla_engine_plugin.a
  47. LIBS += ../backend/carla_plugin.a
  48. LIBS += ../modules/native-plugins.a
  49. LIBS += ../modules/jackbridge.a
  50. LIBS += ../modules/juce_audio_basics.a
  51. LIBS += ../modules/juce_core.a
  52. LIBS += ../modules/rtmempool.a
  53. ifeq ($(HAVE_AF_DEPS),true)
  54. LIBS += ../modules/audio_decoder.a
  55. endif
  56. ifeq ($(HAVE_JUCE_UI),true)
  57. LIBS += ../modules/juce_audio_processors.a
  58. LIBS += ../modules/juce_data_structures.a
  59. LIBS += ../modules/juce_events.a
  60. LIBS += ../modules/juce_graphics.a
  61. LIBS += ../modules/juce_gui_basics.a
  62. LIBS += ../modules/juce_gui_extra.a
  63. endif
  64. ifeq ($(CARLA_PLUGIN_SUPPORT),true)
  65. LIBS += ../modules/lilv.a
  66. endif
  67. # --------------------------------------------------------------
  68. TARGETS = \
  69. ../../bin/carla-native.lv2/carla-native$(LIB_EXT) \
  70. ../../bin/carla-native-lv2-export$(APP_EXT)
  71. # --------------------------------------------------------------
  72. all: $(TARGETS)
  73. clean:
  74. $(RM) $(TARGETS) *.o
  75. $(RM) carla-native.lv2/*.*
  76. debug:
  77. $(MAKE) DEBUG=true
  78. # --------------------------------------------------------------
  79. carla-native-base.cpp.o: carla-native-base.cpp ../modules/CarlaNative.h
  80. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  81. carla-native-lv2.cpp.o: carla-native-lv2.cpp carla-native-base.cpp ../modules/CarlaNative.h
  82. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  83. carla-native-lv2-export.cpp.o: carla-native-lv2-export.cpp carla-native-base.cpp ../modules/CarlaNative.h
  84. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  85. # --------------------------------------------------------------
  86. ../../bin/carla-native.lv2/carla-native$(LIB_EXT): carla-native-lv2.cpp.o $(LIBS)
  87. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(SHARED) $(LINK_FLAGS) -o $@
  88. ../../bin/carla-native-lv2-export$(APP_EXT): carla-native-lv2-export.cpp.o $(LIBS)
  89. $(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_END) $(LINK_FLAGS) -o $@
  90. # --------------------------------------------------------------