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.

93 lines
2.7KB

  1. #!/usr/bin/make -f
  2. # Makefile for native-plugins #
  3. # --------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=..
  7. CWDE=..
  8. MODULENAME=native-plugins
  9. include ../modules/Makefile.mk
  10. # ---------------------------------------------------------------------------------------------------------------------
  11. BUILD_C_FLAGS += -I..
  12. BUILD_CXX_FLAGS += -I.. -I$(CWD)/modules
  13. # ---------------------------------------------------------------------------------------------------------------------
  14. # Set targets
  15. TARGETS = $(MODULEDIR)/$(MODULENAME).a
  16. # ---------------------------------------------------------------------------------------------------------------------
  17. # Set objects
  18. OBJS = \
  19. $(OBJDIR)/_all.c.o \
  20. $(OBJDIR)/_data.cpp.o \
  21. $(OBJDIR)/audio-gain.c.o \
  22. $(OBJDIR)/bypass.c.o \
  23. $(OBJDIR)/lfo.c.o \
  24. $(OBJDIR)/midi-channel-filter.c.o \
  25. $(OBJDIR)/midi-channel-ab.c.o \
  26. $(OBJDIR)/midi-channelize.c.o \
  27. $(OBJDIR)/midi-gain.c.o \
  28. $(OBJDIR)/midi-join.c.o \
  29. $(OBJDIR)/midi-split.c.o \
  30. $(OBJDIR)/midi-through.c.o \
  31. $(OBJDIR)/midi-transpose.c.o \
  32. $(OBJDIR)/audio-file.cpp.o \
  33. $(OBJDIR)/bigmeter.cpp.o \
  34. $(OBJDIR)/midi-file.cpp.o \
  35. $(OBJDIR)/midi-pattern.cpp.o \
  36. $(OBJDIR)/notes.cpp.o
  37. # ---------------------------------------------------------------------------------------------------------------------
  38. # Include external plugins, if present
  39. ifeq ($(EXTERNAL_PLUGINS),true)
  40. ifneq (,$(wildcard external/Makefile.mk2))
  41. include external/Makefile.mk2
  42. else
  43. $(error External plugins build requested but submodule not present, cannot build)
  44. endif
  45. endif
  46. # ---------------------------------------------------------------------------------------------------------------------
  47. all: $(TARGETS)
  48. # ---------------------------------------------------------------------------------------------------------------------
  49. clean:
  50. rm -f $(OBJDIR)/*.o $(MODULEDIR)/$(MODULENAME)*.a $(ZYN_UI_FILES_H) $(ZYN_UI_FILES_CPP) $(TARGETS)
  51. debug:
  52. $(MAKE) DEBUG=true
  53. # ---------------------------------------------------------------------------------------------------------------------
  54. $(MODULEDIR)/$(MODULENAME).a: $(OBJS)
  55. -@mkdir -p $(MODULEDIR)
  56. @echo "Creating $(MODULENAME).a"
  57. @rm -f $@
  58. @$(AR) crs $@ $^
  59. # ---------------------------------------------------------------------------------------------------------------------
  60. $(OBJDIR)/%.c.o: %.c
  61. -@mkdir -p $(OBJDIR)
  62. @echo "Compiling $<"
  63. @$(CC) $< $(BUILD_C_FLAGS) -c -o $@
  64. $(OBJDIR)/%.cpp.o: %.cpp
  65. -@mkdir -p $(OBJDIR)
  66. @echo "Compiling $<"
  67. @$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  68. # ---------------------------------------------------------------------------------------------------------------------
  69. -include $(OBJS:%.o=%.d)
  70. # ---------------------------------------------------------------------------------------------------------------------