Collection of tools useful for audio production
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.

82 lines
2.0KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-engine #
  3. # ------------------------------------ #
  4. # Created by falkTX
  5. #
  6. include ../Makefile.mk
  7. HAVE_JACK = $(shell pkg-config --exists jack && echo true)
  8. ifeq ($(CARLA_RTAUDIO_SUPPORT),true)
  9. HAVE_ALSA = $(shell pkg-config --exists alsa && echo true)
  10. HAVE_PULSEAUDIO = $(shell pkg-config --exists libpulse-simple && echo true)
  11. endif
  12. # --------------------------------------------------------------
  13. BUILD_CXX_FLAGS += -fvisibility=hidden -fPIC
  14. BUILD_CXX_FLAGS += -I. -I../carla-backend -I../carla-includes -I../carla-plugin -I../carla-utils -fPIC
  15. BUILD_CXX_FLAGS += $(shell pkg-config --cflags liblo QtCore)
  16. ifeq ($(HAVE_JACK),true)
  17. BUILD_CXX_FLAGS += $(shell pkg-config --cflags jack)
  18. WANT_JACK = true
  19. endif
  20. ifeq ($(HAVE_ALSA),true)
  21. BUILD_CXX_FLAGS += $(shell pkg-config --cflags alsa) -D__LINUX_ALSA__ -D__LINUX_ALSASEQ__
  22. WANT_RTAUDIO = true
  23. endif
  24. ifeq ($(HAVE_PULSEAUDIO),true)
  25. BUILD_CXX_FLAGS += $(shell pkg-config --cflags libpulse-simple) -D__LINUX_PULSE__
  26. WANT_RTAUDIO = true
  27. endif
  28. OBJS = \
  29. carla_engine.o \
  30. carla_engine_osc.o \
  31. jack.o \
  32. rtaudio.o
  33. # FIXME - remove these
  34. OBJS += \
  35. carla_shared.o \
  36. carla_threads.o
  37. # --------------------------------------------------------------
  38. ifeq ($(WANT_JACK),true)
  39. BUILD_CXX_FLAGS += -DCARLA_ENGINE_JACK
  40. BUILD_CXX_FLAGS += -I../carla-jackbridge
  41. endif
  42. ifeq ($(WANT_RTAUDIO),true)
  43. BUILD_CXX_FLAGS += -DCARLA_ENGINE_RTAUDIO -DHAVE_GETTIMEOFDAY -D_FORTIFY_SOURCE=2
  44. BUILD_CXX_FLAGS += -I../carla-engine/rtaudio-4.0.11 -I../carla-engine/rtmidi-2.0.1
  45. ifeq ($(DEBUG),true)
  46. BUILD_CXX_FLAGS += __RTAUDIO_DEBUG__ __RTMIDI_DEBUG__
  47. endif
  48. OBJS += ../carla-engine/rtaudio-4.0.11/RtAudio.o
  49. OBJS += ../carla-engine/rtmidi-2.0.1/RtMidi.o
  50. endif
  51. # --------------------------------------------------------------
  52. all: carla_engine.a
  53. doc: carla_engine.doxygen
  54. doxygen $<
  55. carla_engine.a: $(OBJS)
  56. $(AR) rs $@ $^
  57. # --------------------------------------------------------------
  58. .cpp.o:
  59. $(CXX) -c $< $(BUILD_CXX_FLAGS) -o $@
  60. clean:
  61. rm -f *.a $(OBJS)