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.

108 lines
2.8KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-engine #
  3. # ------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=../..
  7. include ../Makefile.mk
  8. # Workaround GCC bug
  9. ifeq ($(TESTBUILD),true)
  10. ifeq ($(USING_JUCE),true)
  11. BUILD_CXX_FLAGS += -Wno-undef
  12. endif
  13. endif
  14. # ---------------------------------------------------------------------------------------------------------------------
  15. OBJS = \
  16. $(OBJDIR)/CarlaEngine.cpp.o \
  17. $(OBJDIR)/CarlaEngineClient.cpp.o \
  18. $(OBJDIR)/CarlaEngineData.cpp.o \
  19. $(OBJDIR)/CarlaEngineGraph.cpp.o \
  20. $(OBJDIR)/CarlaEngineInternal.cpp.o \
  21. $(OBJDIR)/CarlaEnginePorts.cpp.o \
  22. $(OBJDIR)/CarlaEngineThread.cpp.o
  23. ifeq ($(HAVE_LIBLO),true)
  24. OBJS += \
  25. $(OBJDIR)/CarlaEngineOsc.cpp.o \
  26. $(OBJDIR)/CarlaEngineOscHandlers.cpp.o \
  27. $(OBJDIR)/CarlaEngineOscSend.cpp.o
  28. endif
  29. OBJSa = $(OBJS) \
  30. $(OBJDIR)/CarlaEngineJack.cpp.o \
  31. $(OBJDIR)/CarlaEngineNative.cpp.o
  32. ifeq ($(USING_JUCE),true)
  33. OBJSa += \
  34. $(OBJDIR)/CarlaEngineJuce.cpp.o
  35. else
  36. OBJSa += \
  37. $(OBJDIR)/CarlaEngineRtAudio.cpp.o
  38. endif
  39. OBJSp = $(OBJS) \
  40. $(OBJDIR)/CarlaEngineNative.cpp.exp.o
  41. TARGETS = \
  42. $(MODULEDIR)/carla_engine.a \
  43. $(MODULEDIR)/carla_engine_plugin.a
  44. # ---------------------------------------------------------------------------------------------------------------------
  45. all: $(TARGETS)
  46. # ---------------------------------------------------------------------------------------------------------------------
  47. clean:
  48. rm -f $(OBJSa) $(OBJSp) $(TARGETS)
  49. debug:
  50. $(MAKE) DEBUG=true
  51. # ---------------------------------------------------------------------------------------------------------------------
  52. $(MODULEDIR)/carla_engine.a: $(OBJSa)
  53. -@mkdir -p $(MODULEDIR)
  54. @echo "Creating carla_engine.a"
  55. @rm -f $@
  56. @$(AR) crs $@ $^
  57. $(MODULEDIR)/carla_engine_plugin.a: $(OBJSp)
  58. -@mkdir -p $(MODULEDIR)
  59. @echo "Creating carla_engine_plugin.a"
  60. @rm -f $@
  61. @$(AR) crs $@ $^
  62. # ---------------------------------------------------------------------------------------------------------------------
  63. $(OBJDIR)/CarlaEngineRtAudio.cpp.o: CarlaEngineRtAudio.cpp
  64. -@mkdir -p $(OBJDIR)
  65. @echo "Compiling CarlaEngineRtAudio.cpp"
  66. @$(CXX) $< $(BUILD_CXX_FLAGS) $(RTAUDIO_FLAGS) $(RTMIDI_FLAGS) -c -o $@
  67. ifeq ($(MACOS),true)
  68. $(OBJDIR)/CarlaEngineNative.cpp.exp.o: CarlaEngineNative.cpp
  69. -@mkdir -p $(OBJDIR)
  70. @echo "Compiling CarlaEngineNative.cpp (plugin)"
  71. @$(CXX) $< $(BUILD_CXX_FLAGS) -DCARLA_PLUGIN_EXPORT -ObjC++ -c -o $@
  72. else
  73. $(OBJDIR)/CarlaEngineNative.cpp.exp.o: CarlaEngineNative.cpp
  74. -@mkdir -p $(OBJDIR)
  75. @echo "Compiling CarlaEngineNative.cpp (plugin)"
  76. @$(CXX) $< $(BUILD_CXX_FLAGS) -DCARLA_PLUGIN_EXPORT -c -o $@
  77. endif
  78. $(OBJDIR)/%.cpp.o: %.cpp
  79. -@mkdir -p $(OBJDIR)
  80. @echo "Compiling $<"
  81. @$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  82. -include $(OBJSa:%.o=%.d)
  83. -include $(OBJDIR)/CarlaEngineNative.cpp.exp.d
  84. # ---------------------------------------------------------------------------------------------------------------------