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.

80 lines
2.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 += -fvisibility=hidden -fPIC -I. -I.. -I../../includes -I../../libs -I../../utils
  9. BUILD_CXX_FLAGS += $(shell pkg-config --cflags liblo QtCore)
  10. LINK_FLAGS += -shared
  11. LINK_FLAGS += $(shell pkg-config --libs liblo QtCore)
  12. ifeq ($(HAVE_JACK),true)
  13. BUILD_CXX_FLAGS += $(shell pkg-config --cflags jack) -D__UNIX_JACK__
  14. LINK_FLAGS += $(shell pkg-config --libs jack)
  15. WANT_JACK = true
  16. endif
  17. ifeq ($(HAVE_ALSA),true)
  18. BUILD_CXX_FLAGS += $(shell pkg-config --cflags alsa) -D__LINUX_ALSA__ -D__LINUX_ALSASEQ__
  19. LINK_FLAGS += $(shell pkg-config --libs alsa)
  20. WANT_RTAUDIO = true
  21. endif
  22. ifeq ($(HAVE_PULSEAUDIO),true)
  23. BUILD_CXX_FLAGS += $(shell pkg-config --cflags libpulse-simple) -D__LINUX_PULSE__
  24. LINK_FLAGS += $(shell pkg-config --libs libpulse-simple)
  25. WANT_RTAUDIO = true
  26. endif
  27. ifeq ($(WANT_JACK),true)
  28. BUILD_CXX_FLAGS += -DCARLA_ENGINE_JACK
  29. endif
  30. ifeq ($(WANT_RTAUDIO),true)
  31. BUILD_CXX_FLAGS += -DCARLA_ENGINE_RTAUDIO -DHAVE_GETTIMEOFDAY
  32. BUILD_CXX_FLAGS += -Irtaudio-4.0.11 -Irtmidi-2.0.1
  33. ifeq ($(DEBUG),true)
  34. BUILD_CXX_FLAGS += -D__RTAUDIO_DEBUG__ -D__RTMIDI_DEBUG__
  35. else
  36. BUILD_CXX_FLAGS += -D_FORTIFY_SOURCE=2
  37. endif
  38. endif
  39. # --------------------------------------------------------------
  40. OBJS = \
  41. carla_engine.cpp.o
  42. # carla_engine_osc.cpp.o \
  43. # carla_engine_thread.cpp.o \
  44. # jack.cpp.o \
  45. # rtaudio.cpp.o
  46. ifeq ($(WANT_RTAUDIO),true)
  47. OBJS += \
  48. rtaudio-4.0.11/RtAudio.cpp.o \
  49. rtmidi-2.0.1/RtMidi.cpp.o
  50. endif
  51. TARGET = ../carla_engine.so
  52. # --------------------------------------------------------------
  53. all: $(TARGET)
  54. clean:
  55. rm -f $(OBJS) $(TARGET)
  56. # --------------------------------------------------------------
  57. %.cpp.o: %.cpp
  58. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  59. $(TARGET): $(OBJS)
  60. $(CXX) $^ $(LINK_FLAGS) -o $@