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.

123 lines
3.9KB

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