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.

99 lines
3.1KB

  1. #!/usr/bin/make -f
  2. # Makefile for carla-interposer #
  3. # ----------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=..
  7. include $(CWD)/Makefile.mk
  8. # ----------------------------------------------------------------------------------------------------------------------------
  9. BINDIR := $(CWD)/../bin
  10. ifeq ($(DEBUG),true)
  11. OBJDIR := $(CWD)/../build/interposer/Debug
  12. MODULEDIR := $(CWD)/../build/modules/Debug
  13. else
  14. OBJDIR := $(CWD)/../build/interposer/Release
  15. MODULEDIR := $(CWD)/../build/modules/Release
  16. endif
  17. # ----------------------------------------------------------------------------------------------------------------------------
  18. BUILD_CXX_FLAGS += -I$(CWD) -I$(CWD)/backend -I$(CWD)/includes -I$(CWD)/modules -I$(CWD)/utils
  19. INTERPOSER_SAFE_LIBS = -ldl
  20. INTERPOSER_X11_LIBS = $(X11_LIBS) -ldl
  21. LIBJACK_LIBS = $(MODULEDIR)/juce_core.a
  22. LIBJACK_LIBS += $(JUCE_CORE_LIBS)
  23. # ----------------------------------------------------------------------------------------------------------------------------
  24. OBJS =
  25. TARGETS =
  26. ifeq ($(LINUX),true)
  27. OBJS += $(OBJDIR)/interposer-safe.cpp.o
  28. TARGETS += $(BINDIR)/libcarla_interposer-safe.so
  29. OBJS += $(OBJDIR)/libjack.cpp.o
  30. TARGETS += $(BINDIR)/jack/libjack.so.0
  31. ifeq ($(HAVE_X11),true)
  32. OBJS += $(OBJDIR)/interposer-x11.cpp.o
  33. TARGETS += $(BINDIR)/libcarla_interposer-x11.so
  34. endif
  35. endif
  36. # ----------------------------------------------------------------------------------------------------------------------------
  37. all: $(TARGETS)
  38. # ----------------------------------------------------------------------------------------------------------------------------
  39. clean:
  40. rm -f $(OBJDIR)/*.o $(TARGETS)
  41. debug:
  42. $(MAKE) DEBUG=true
  43. # ----------------------------------------------------------------------------------------------------------------------------
  44. $(BINDIR)/libcarla_interposer-safe.so: $(OBJDIR)/interposer-safe.cpp.o
  45. -@mkdir -p $(BINDIR)
  46. @echo "Linking libcarla_interposer-safe.so"
  47. @$(CXX) $< $(SHARED) $(LINK_FLAGS) $(INTERPOSER_SAFE_LIBS) -o $@
  48. $(BINDIR)/libcarla_interposer-x11.so: $(OBJDIR)/interposer-x11.cpp.o
  49. -@mkdir -p $(BINDIR)
  50. @echo "Linking libcarla_interposer-x11.so"
  51. @$(CXX) $< $(SHARED) $(LINK_FLAGS) $(INTERPOSER_X11_LIBS) -o $@
  52. $(BINDIR)/jack/libjack.so.0: $(OBJDIR)/libjack.cpp.o
  53. -@mkdir -p $(BINDIR)/jack
  54. @echo "Linking libjack.so.0"
  55. @$(CXX) $< $(SHARED) $(LINK_FLAGS) $(LIBJACK_LIBS) -o $@
  56. # ----------------------------------------------------------------------------------------------------------------------------
  57. $(OBJDIR)/interposer-safe.cpp.o: interposer-safe.cpp
  58. -@mkdir -p $(OBJDIR)
  59. @echo "Compiling $<"
  60. @$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  61. $(OBJDIR)/interposer-x11.cpp.o: interposer-x11.cpp
  62. -@mkdir -p $(OBJDIR)
  63. @echo "Compiling $<"
  64. @$(CXX) $< $(BUILD_CXX_FLAGS) $(X11_FLAGS) -c -o $@
  65. $(OBJDIR)/libjack.cpp.o: libjack.cpp
  66. -@mkdir -p $(OBJDIR)
  67. @echo "Compiling $<"
  68. @$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  69. # -Wno-missing-declarations
  70. -include $(OBJS:%.o=%.d)
  71. # ----------------------------------------------------------------------------------------------------------------------------