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.

109 lines
2.8KB

  1. #!/usr/bin/make -f
  2. # Makefile for juce_audio_processors #
  3. # ---------------------------------- #
  4. # Created by falkTX
  5. #
  6. include ../../Makefile.mk
  7. # --------------------------------------------------------------
  8. BUILD_CXX_FLAGS += $(JUCE_AUDIO_PROCESSORS_FLAGS) -I. -I../../includes/ladspa -I../../includes/vst -I../../includes/vst3 -w
  9. LINK_FLAGS += $(JUCE_AUDIO_PROCESSORS_LIBS) -L.. -ljuce_audio_basics -ljuce_gui_basics -ljuce_graphics -ljuce_data_structures -ljuce_events -ljuce_core
  10. ifeq ($(CARLA_VESTIGE_HEADER),true)
  11. BUILD_CXX_FLAGS += -DVESTIGE_HEADER
  12. else
  13. # needed by vst3
  14. BUILD_CXX_FLAGS += -D_NATIVE_WCHAR_T_DEFINED -D__wchar_t=wchar_t -fpermissive
  15. ifeq ($(DEBUG),true)
  16. BUILD_CXX_FLAGS += -DDEVELOPMENT -D_DEBUG
  17. else
  18. BUILD_CXX_FLAGS += -DRELEASE
  19. endif
  20. endif
  21. ifeq ($(MACOS),true)
  22. BUILD_CXX_FLAGS += -ObjC++
  23. OBJS = juce_audio_processors.mm.o
  24. OBJS_posix32 = juce_audio_processors.mm.posix32.o
  25. OBJS_posix64 = juce_audio_processors.mm.posix64.o
  26. else
  27. OBJS = juce_audio_processors.cpp.o
  28. OBJS_posix32 = juce_audio_processors.cpp.posix32.o
  29. OBJS_posix64 = juce_audio_processors.cpp.posix64.o
  30. endif
  31. OBJS_win32 = juce_audio_processors.cpp.win32.o
  32. OBJS_win64 = juce_audio_processors.cpp.win64.o
  33. # --------------------------------------------------------------
  34. all: ../juce_audio_processors.a
  35. posix32: ../juce_audio_processors.posix32.a
  36. posix64: ../juce_audio_processors.posix64.a
  37. win32: ../juce_audio_processors.win32.a
  38. win64: ../juce_audio_processors.win64.a
  39. # --------------------------------------------------------------
  40. ../juce_audio_processors.a: $(OBJS)
  41. $(RM) $@
  42. $(AR) crs $@ $^
  43. ../juce_audio_processors.posix32.a: $(OBJS_posix32)
  44. $(RM) $@
  45. $(AR) crs $@ $^
  46. ../juce_audio_processors.posix64.a: $(OBJS_posix64)
  47. $(RM) $@
  48. $(AR) crs $@ $^
  49. ../juce_audio_processors.win32.a: $(OBJS_win32)
  50. $(RM) $@
  51. $(AR) crs $@ $^
  52. ../juce_audio_processors.win64.a: $(OBJS_win64)
  53. $(RM) $@
  54. $(AR) crs $@ $^
  55. ../libjuce_audio_processors.dll: $(OBJS)
  56. $(CXX) $^ -shared $(LINK_FLAGS) -o $@
  57. ../libjuce_audio_processors.dylib: $(OBJS)
  58. $(CXX) $^ -dynamiclib $(LINK_FLAGS) -o $@
  59. ../libjuce_audio_processors.so: $(OBJS)
  60. $(CXX) $^ -shared $(LINK_FLAGS) -o $@
  61. # --------------------------------------------------------------
  62. %.cpp.o: %.cpp
  63. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  64. %.mm.o: %.mm
  65. $(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  66. %.posix32.o: %
  67. $(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  68. %.posix64.o: %
  69. $(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  70. %.win32.o: %
  71. $(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  72. %.win64.o: %
  73. $(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  74. # --------------------------------------------------------------
  75. clean:
  76. $(RM) *.o ../juce_audio_processors*.a ../libjuce_audio_processors.*
  77. debug:
  78. $(MAKE) DEBUG=true
  79. # --------------------------------------------------------------