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.

115 lines
3.4KB

  1. #!/usr/bin/make -f
  2. # Makefile for dgl #
  3. # ---------------- #
  4. # Created by falkTX
  5. #
  6. CWD=../..
  7. MODULENAME=dgl
  8. include ../Makefile.mk
  9. # ---------------------------------------------------------------------------------------------------------------------
  10. BUILD_CXX_FLAGS += $(DGL_FLAGS) -Isrc
  11. BUILD_CXX_FLAGS += -Isrc/pugl-upstream/include
  12. ifneq ($(MACOS),true)
  13. WINE_FLAGS = -I/usr/include/wine/wine/windows
  14. WINE_FLAGS += -I/usr/include/wine-development/windows
  15. WINE_FLAGS += -I/opt/wine-devel/include/wine/windows
  16. endif
  17. # ---------------------------------------------------------------------------------------------------------------------
  18. OBJS = \
  19. $(OBJDIR)/pugl.cpp.o \
  20. $(OBJDIR)/Application.cpp.o \
  21. $(OBJDIR)/ApplicationPrivateData.cpp.o \
  22. $(OBJDIR)/Color.cpp.o \
  23. $(OBJDIR)/EventHandlers.cpp.o \
  24. $(OBJDIR)/Geometry.cpp.o \
  25. $(OBJDIR)/ImageBase.cpp.o \
  26. $(OBJDIR)/ImageBaseWidgets.cpp.o \
  27. $(OBJDIR)/NanoVG.cpp.o \
  28. $(OBJDIR)/OpenGL.cpp.o \
  29. $(OBJDIR)/OpenGL2.cpp.o \
  30. $(OBJDIR)/SubWidget.cpp.o \
  31. $(OBJDIR)/SubWidgetPrivateData.cpp.o \
  32. $(OBJDIR)/TopLevelWidget.cpp.o \
  33. $(OBJDIR)/TopLevelWidgetPrivateData.cpp.o \
  34. $(OBJDIR)/Widget.cpp.o \
  35. $(OBJDIR)/WidgetPrivateData.cpp.o \
  36. $(OBJDIR)/Window.cpp.o \
  37. $(OBJDIR)/WindowPrivateData.cpp.o
  38. OBJS_wine = \
  39. $(OBJDIR)/pugl.cpp-wine.o \
  40. $(OBJDIR)/Application.cpp-wine.o \
  41. $(OBJDIR)/ApplicationPrivateData.cpp-wine.o \
  42. $(OBJDIR)/Color.cpp-wine.o \
  43. $(OBJDIR)/EventHandlers.cpp-wine.o \
  44. $(OBJDIR)/Geometry.cpp-wine.o \
  45. $(OBJDIR)/ImageBase.cpp-wine.o \
  46. $(OBJDIR)/ImageBaseWidgets.cpp-wine.o \
  47. $(OBJDIR)/OpenGL.cpp-wine.o \
  48. $(OBJDIR)/OpenGL2.cpp-wine.o \
  49. $(OBJDIR)/SubWidget.cpp-wine.o \
  50. $(OBJDIR)/SubWidgetPrivateData.cpp-wine.o \
  51. $(OBJDIR)/TopLevelWidget.cpp-wine.o \
  52. $(OBJDIR)/TopLevelWidgetPrivateData.cpp-wine.o \
  53. $(OBJDIR)/Widget.cpp-wine.o \
  54. $(OBJDIR)/WidgetPrivateData.cpp-wine.o \
  55. $(OBJDIR)/Window.cpp-wine.o \
  56. $(OBJDIR)/WindowPrivateData.cpp-wine.o
  57. # ---------------------------------------------------------------------------------------------------------------------
  58. all: $(MODULEDIR)/$(MODULENAME).a
  59. wine: $(MODULEDIR)/$(MODULENAME).wine.a
  60. # ---------------------------------------------------------------------------------------------------------------------
  61. clean:
  62. rm -f $(OBJDIR)/*.o $(MODULEDIR)/$(MODULENAME)*.a $(MODULEDIR)/$(MODULENAME).wine.a
  63. debug:
  64. $(MAKE) DEBUG=true
  65. # ---------------------------------------------------------------------------------------------------------------------
  66. $(MODULEDIR)/$(MODULENAME).a: $(OBJS)
  67. -@mkdir -p $(MODULEDIR)
  68. @echo "Creating $(MODULENAME).a"
  69. $(SILENT)rm -f $@
  70. $(SILENT)$(AR) crs $@ $^
  71. $(MODULEDIR)/$(MODULENAME).wine.a: $(OBJS_wine)
  72. -@mkdir -p $(MODULEDIR)
  73. @echo "Creating $(MODULENAME).wine.a"
  74. $(SILENT)rm -f $@
  75. $(SILENT)$(AR) crs $@ $^
  76. # ---------------------------------------------------------------------------------------------------------------------
  77. ifeq ($(MACOS),true)
  78. $(OBJDIR)/pugl.cpp.o: src/pugl.cpp
  79. -@mkdir -p $(OBJDIR)
  80. @echo "Compiling $<"
  81. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -ObjC++ -c -o $@
  82. endif
  83. $(OBJDIR)/%.cpp.o: src/%.cpp
  84. -@mkdir -p $(OBJDIR)
  85. @echo "Compiling $<"
  86. $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
  87. $(OBJDIR)/%.cpp-wine.o: src/%.cpp
  88. -@mkdir -p $(OBJDIR)
  89. @echo "Compiling $< (Wine)"
  90. $(SILENT)$(WINECC) $< $(BUILD_CXX_FLAGS) $(WINE_FLAGS) -c -o $@
  91. -include $(OBJS:%.o=%.d)
  92. -include $(OBJS_wine:%.o=%.d)
  93. # ---------------------------------------------------------------------------------------------------------------------