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.

102 lines
3.0KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-engine #
  3. # ------------------------- #
  4. # Created by falkTX
  5. #
  6. include ../Makefile.mk
  7. # --------------------------------------------------------------
  8. BUILD_CXX_FLAGS += $(shell pkg-config --cflags liblo QtCore QtXml)
  9. LINK_FLAGS += $(shell pkg-config --libs liblo QtCore QtXml)
  10. # --------------------------------------------------------------
  11. ifeq ($(CARLA_RTAUDIO_SUPPORT),true)
  12. BUILD_CXX_FLAGS += -DHAVE_GETTIMEOFDAY
  13. BUILD_CXX_FLAGS += -Irtaudio-4.0.11 -Irtaudio-4.0.11/include -Irtmidi-2.0.1
  14. ifeq ($(DEBUG),true)
  15. BUILD_CXX_FLAGS += -D__RTAUDIO_DEBUG__ -D__RTMIDI_DEBUG__
  16. endif
  17. endif
  18. # --------------------------------------------------------------
  19. ifeq ($(HAVE_ALSA),true)
  20. BUILD_CXX_FLAGS += $(shell pkg-config --cflags alsa) -D__LINUX_ALSA__ -D__LINUX_ALSASEQ__
  21. LINK_FLAGS += $(shell pkg-config --libs alsa)
  22. endif
  23. ifeq ($(HAVE_JACK),true)
  24. BUILD_CXX_FLAGS += $(shell pkg-config --cflags jack) -D__UNIX_JACK__
  25. LINK_FLAGS += $(shell pkg-config --libs jack)
  26. endif
  27. ifeq ($(HAVE_PULSEAUDIO),true)
  28. BUILD_CXX_FLAGS += $(shell pkg-config --cflags libpulse-simple) -D__LINUX_PULSE__
  29. LINK_FLAGS += $(shell pkg-config --libs libpulse-simple)
  30. endif
  31. PLUGIN_CXX_FLAGS = $(BUILD_CXX_FLAGS)
  32. PLUGIN_CXX_FLAGS += -Idistrho -I../../libs/distrho
  33. PLUGIN_CXX_FLAGS += -DWANT_PLUGIN
  34. # --------------------------------------------------------------
  35. OBJS = \
  36. CarlaEngine.cpp.o \
  37. CarlaEngineOsc.cpp.o \
  38. CarlaEngineThread.cpp.o \
  39. CarlaEngineBridge.cpp.o \
  40. CarlaEngineJack.cpp.o \
  41. CarlaEnginePlugin.cpp.o \
  42. CarlaEngineRtAudio.cpp.o
  43. ifeq ($(CARLA_RTAUDIO_SUPPORT),true)
  44. OBJS += \
  45. rtaudio-4.0.11/RtAudio.cpp.o \
  46. rtmidi-2.0.1/RtMidi.cpp.o
  47. ifeq ($(WIN32),true)
  48. OBJS += \
  49. rtaudio-4.0.11/include/asio.cpp.o \
  50. rtaudio-4.0.11/include/asiodrivers.cpp.o \
  51. rtaudio-4.0.11/include/asiolist.cpp.o \
  52. rtaudio-4.0.11/include/iasiothiscallresolver.cpp.o
  53. endif
  54. endif
  55. SHARED = ../libcarla_engine.so
  56. STATIC = ../libcarla_engine.a
  57. # --------------------------------------------------------------
  58. all: $(STATIC)
  59. clean:
  60. rm -f $(OBJS) $(SHARED) $(STATIC)
  61. debug:
  62. $(MAKE) DEBUG=true
  63. # --------------------------------------------------------------
  64. %.cpp.o: %.cpp ../CarlaBackend.hpp ../CarlaEngine.hpp ../CarlaPlugin.hpp CarlaEngineInternal.hpp CarlaEngineOsc.hpp CarlaEngineThread.hpp
  65. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  66. %.cpp.dssi.o: %.cpp ../CarlaBackend.hpp ../CarlaEngine.hpp ../CarlaPlugin.hpp CarlaEngineInternal.hpp CarlaEngineOsc.hpp CarlaEngineThread.hpp
  67. $(CXX) $< $(PLUGIN_CXX_FLAGS) -DDISTRHO_PLUGIN_TARGET_DSSI -c -o $@
  68. %.cpp.lv2.o: %.cpp ../CarlaBackend.hpp ../CarlaEngine.hpp ../CarlaPlugin.hpp CarlaEngineInternal.hpp CarlaEngineOsc.hpp CarlaEngineThread.hpp
  69. $(CXX) $< $(PLUGIN_CXX_FLAGS) -DDISTRHO_PLUGIN_TARGET_LV2 -c -o $@
  70. %.cpp.vst.o: %.cpp ../CarlaBackend.hpp ../CarlaEngine.hpp ../CarlaPlugin.hpp CarlaEngineInternal.hpp CarlaEngineOsc.hpp CarlaEngineThread.hpp
  71. $(CXX) $< $(PLUGIN_CXX_FLAGS) -DDISTRHO_PLUGIN_TARGET_VST -c -o $@
  72. $(SHARED): $(OBJS)
  73. $(CXX) $^ -shared $(LINK_FLAGS) -o $@ && $(STRIP) $@
  74. $(STATIC): $(OBJS)
  75. $(AR) rs $@ $^