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.

Makefile 4.3KB

10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. #!/usr/bin/make -f
  2. # Makefile for juce_audio_processors #
  3. # ---------------------------------- #
  4. # Created by falkTX
  5. #
  6. CWD=../..
  7. MODULENAME=juce_audio_processors
  8. include ../Makefile.mk
  9. # ----------------------------------------------------------------------------------------------------------------------------
  10. BUILD_CXX_FLAGS += $(JUCE_AUDIO_PROCESSORS_FLAGS) -I$(CWD)/includes/ladspa -I$(CWD)/includes/vst2 -I$(CWD)/includes/vst3 -I..
  11. ifeq ($(CARLA_VESTIGE_HEADER),true)
  12. BUILD_CXX_FLAGS += -DVESTIGE_HEADER
  13. else
  14. # needed by vst3
  15. BUILD_CXX_FLAGS += -w
  16. ifeq ($(DEBUG),true)
  17. BUILD_CXX_FLAGS += -DDEVELOPMENT -D_DEBUG
  18. else
  19. BUILD_CXX_FLAGS += -DRELEASE
  20. endif
  21. # needed by vst3 on mingw
  22. ifeq ($(WIN32),true)
  23. BUILD_CXX_FLAGS += -D_NATIVE_WCHAR_T_DEFINED -D__wchar_t=wchar_t -fpermissive
  24. endif
  25. endif
  26. # ----------------------------------------------------------------------------------------------------------------------------
  27. ifeq ($(MACOS),true)
  28. OBJS = $(OBJDIR)/$(MODULENAME).mm.o
  29. OBJS_posix32 = $(OBJDIR)/$(MODULENAME).mm.posix32.o
  30. OBJS_posix64 = $(OBJDIR)/$(MODULENAME).mm.posix64.o
  31. else
  32. OBJS = $(OBJDIR)/$(MODULENAME).cpp.o
  33. OBJS_posix32 = $(OBJDIR)/$(MODULENAME).cpp.posix32.o
  34. OBJS_posix64 = $(OBJDIR)/$(MODULENAME).cpp.posix64.o
  35. endif
  36. OBJS_win32 = $(OBJDIR)/$(MODULENAME).cpp.win32.o
  37. OBJS_win64 = $(OBJDIR)/$(MODULENAME).cpp.win64.o
  38. # ----------------------------------------------------------------------------------------------------------------------------
  39. all: $(MODULEDIR)/$(MODULENAME).a
  40. posix32: $(MODULEDIR)/$(MODULENAME).posix32.a
  41. posix64: $(MODULEDIR)/$(MODULENAME).posix64.a
  42. win32: $(MODULEDIR)/$(MODULENAME).win32.a
  43. win64: $(MODULEDIR)/$(MODULENAME).win64.a
  44. # ----------------------------------------------------------------------------------------------------------------------------
  45. clean:
  46. rm -f $(OBJDIR)/*.o $(MODULEDIR)/$(MODULENAME)*.a
  47. debug:
  48. $(MAKE) DEBUG=true
  49. # ----------------------------------------------------------------------------------------------------------------------------
  50. $(MODULEDIR)/$(MODULENAME).a: $(OBJS)
  51. -@mkdir -p $(MODULEDIR)
  52. @echo "Creating $(MODULENAME).a"
  53. @rm -f $@
  54. @$(AR) crs $@ $^
  55. $(MODULEDIR)/$(MODULENAME).posix32.a: $(OBJS_posix32)
  56. -@mkdir -p $(MODULEDIR)
  57. @echo "Creating $(MODULENAME).posix32.a"
  58. @rm -f $@
  59. @$(AR) crs $@ $^
  60. $(MODULEDIR)/$(MODULENAME).posix64.a: $(OBJS_posix64)
  61. -@mkdir -p $(MODULEDIR)
  62. @echo "Creating $(MODULENAME).posix64.a"
  63. @rm -f $@
  64. @$(AR) crs $@ $^
  65. $(MODULEDIR)/$(MODULENAME).win32.a: $(OBJS_win32)
  66. -@mkdir -p $(MODULEDIR)
  67. @echo "Creating $(MODULENAME).win32.a"
  68. @rm -f $@
  69. @$(AR) crs $@ $^
  70. $(MODULEDIR)/$(MODULENAME).win64.a: $(OBJS_win64)
  71. -@mkdir -p $(MODULEDIR)
  72. @echo "Creating $(MODULENAME).win64.a"
  73. @rm -f $@
  74. @$(AR) crs $@ $^
  75. # ----------------------------------------------------------------------------------------------------------------------------
  76. $(OBJDIR)/$(MODULENAME).cpp.o: $(MODULENAME).cpp
  77. -@mkdir -p $(OBJDIR)
  78. @echo "Compiling $<"
  79. @$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  80. $(OBJDIR)/$(MODULENAME).cpp.%32.o: $(MODULENAME).cpp
  81. -@mkdir -p $(OBJDIR)
  82. @echo "Compiling $< (32bit)"
  83. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -c -o $@
  84. $(OBJDIR)/$(MODULENAME).cpp.%64.o: $(MODULENAME).cpp
  85. -@mkdir -p $(OBJDIR)
  86. @echo "Compiling $< (64bit)"
  87. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -c -o $@
  88. # ----------------------------------------------------------------------------------------------------------------------------
  89. $(OBJDIR)/$(MODULENAME).mm.o: $(MODULENAME).cpp
  90. -@mkdir -p $(OBJDIR)
  91. @echo "Compiling $<"
  92. @$(CXX) $< $(BUILD_CXX_FLAGS) -ObjC++ -c -o $@
  93. $(OBJDIR)/$(MODULENAME).mm.%32.o: $(MODULENAME).cpp
  94. -@mkdir -p $(OBJDIR)
  95. @echo "Compiling $< (32bit)"
  96. @$(CXX) $< $(BUILD_CXX_FLAGS) $(32BIT_FLAGS) -ObjC++ -c -o $@
  97. $(OBJDIR)/$(MODULENAME).mm.%64.o: $(MODULENAME).cpp
  98. -@mkdir -p $(OBJDIR)
  99. @echo "Compiling $< (64bit)"
  100. @$(CXX) $< $(BUILD_CXX_FLAGS) $(64BIT_FLAGS) -ObjC++ -c -o $@
  101. # ----------------------------------------------------------------------------------------------------------------------------
  102. -include $(OBJS:%.o=%.d)
  103. -include $(OBJS_posix32:%.o=%.d)
  104. -include $(OBJS_posix64:%.o=%.d)
  105. -include $(OBJS_win32:%.o=%.d)
  106. -include $(OBJS_win64:%.o=%.d)
  107. # ----------------------------------------------------------------------------------------------------------------------------