Mercurial > hg > pub > prymula > com
diff DPF-Prymula-audioplugins/dpf/dgl/Makefile @ 3:84e66ea83026
DPF-Prymula-audioplugins-0.231015-2
author | prymula <prymula76@outlook.com> |
---|---|
date | Mon, 16 Oct 2023 21:53:34 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DPF-Prymula-audioplugins/dpf/dgl/Makefile Mon Oct 16 21:53:34 2023 +0200 @@ -0,0 +1,273 @@ +#!/usr/bin/make -f +# Makefile for DGL # +# ---------------- # +# Created by falkTX +# + +include ../Makefile.base.mk + +# --------------------------------------------------------------------------------------------------------------------- + +BUILD_C_FLAGS += $(DGL_FLAGS) -I. -Isrc +BUILD_CXX_FLAGS += $(DGL_FLAGS) -I. -Isrc -DDONT_SET_USING_DGL_NAMESPACE -Wno-unused-parameter +BUILD_CXX_FLAGS += -Isrc/pugl-upstream/include +LINK_FLAGS += $(DGL_LIBS) + +ifeq ($(MACOS),true) +BUILD_CXX_FLAGS += -Wno-deprecated-declarations +else +PUGL_EXTRA_FLAGS = -Wno-extra -Wmissing-field-initializers +endif + +# ifneq ($(MACOS_OLD),true) +# needed by sofd right now, fix later +# BUILD_CXX_FLAGS += -Wno-type-limits -fpermissive +# endif + +# --------------------------------------------------------------------------------------------------------------------- + +ifeq ($(MODGUI_BUILD),true) +BUILD_DIR_SUFFIX = -modgui +endif + +BUILD_DIR = ../build$(BUILD_DIR_SUFFIX) + +# --------------------------------------------------------------------------------------------------------------------- + +OBJS_common = \ + $(BUILD_DIR)/dgl/Application.cpp.o \ + $(BUILD_DIR)/dgl/ApplicationPrivateData.cpp.o \ + $(BUILD_DIR)/dgl/Color.cpp.o \ + $(BUILD_DIR)/dgl/EventHandlers.cpp.o \ + $(BUILD_DIR)/dgl/Geometry.cpp.o \ + $(BUILD_DIR)/dgl/ImageBase.cpp.o \ + $(BUILD_DIR)/dgl/ImageBaseWidgets.cpp.o \ + $(BUILD_DIR)/dgl/Layout.cpp.o \ + $(BUILD_DIR)/dgl/Resources.cpp.o \ + $(BUILD_DIR)/dgl/SubWidget.cpp.o \ + $(BUILD_DIR)/dgl/SubWidgetPrivateData.cpp.o \ + $(BUILD_DIR)/dgl/TopLevelWidget.cpp.o \ + $(BUILD_DIR)/dgl/TopLevelWidgetPrivateData.cpp.o \ + $(BUILD_DIR)/dgl/Widget.cpp.o \ + $(BUILD_DIR)/dgl/WidgetPrivateData.cpp.o \ + $(BUILD_DIR)/dgl/Window.cpp.o \ + $(BUILD_DIR)/dgl/WindowPrivateData.cpp.o + +# --------------------------------------------------------------------------------------------------------------------- + +OBJS_cairo = $(OBJS_common) \ + $(BUILD_DIR)/dgl/Cairo.cpp.cairo.o + +ifeq ($(MACOS),true) +OBJS_cairo += $(BUILD_DIR)/dgl/pugl.mm.cairo.o +else +OBJS_cairo += $(BUILD_DIR)/dgl/pugl.cpp.cairo.o +endif + +# --------------------------------------------------------------------------------------------------------------------- + +OBJS_opengl = $(OBJS_common) \ + $(BUILD_DIR)/dgl/OpenGL.cpp.opengl.o \ + $(BUILD_DIR)/dgl/NanoVG.cpp.opengl.o + +ifeq ($(MACOS),true) +OBJS_opengl += $(BUILD_DIR)/dgl/pugl.mm.opengl.o +else +OBJS_opengl += $(BUILD_DIR)/dgl/pugl.cpp.opengl.o +endif + +# --------------------------------------------------------------------------------------------------------------------- + +OBJS_opengl3 = $(OBJS_common) \ + $(BUILD_DIR)/dgl/OpenGL.cpp.opengl3.o \ + $(BUILD_DIR)/dgl/NanoVG.cpp.opengl3.o + +ifeq ($(MACOS),true) +OBJS_opengl3 += $(BUILD_DIR)/dgl/pugl.mm.opengl3.o +else +OBJS_opengl3 += $(BUILD_DIR)/dgl/pugl.cpp.opengl3.o +endif + +# --------------------------------------------------------------------------------------------------------------------- + +OBJS_stub = $(OBJS_common) + +ifeq ($(MACOS),true) +OBJS_stub += $(BUILD_DIR)/dgl/pugl.mm.o +else +OBJS_stub += $(BUILD_DIR)/dgl/pugl.cpp.o +endif + +# --------------------------------------------------------------------------------------------------------------------- + +OBJS_vulkan = $(OBJS_common) \ + $(BUILD_DIR)/dgl/Vulkan.cpp.vulkan.o + +ifeq ($(MACOS),true) +OBJS_vulkan += $(BUILD_DIR)/dgl/pugl.mm.vulkan.o +else +OBJS_vulkan += $(BUILD_DIR)/dgl/pugl.cpp.vulkan.o +endif + +# --------------------------------------------------------------------------------------------------------------------- + +ifeq ($(HAVE_CAIRO),true) +TARGETS += $(BUILD_DIR)/libdgl-cairo.a +endif + +ifeq ($(HAVE_OPENGL),true) +TARGETS += $(BUILD_DIR)/libdgl-opengl.a +# Compat name, to be removed soon +TARGETS += $(BUILD_DIR)/libdgl.a +endif + +ifeq ($(HAVE_STUB),true) +TARGETS += $(BUILD_DIR)/libdgl-stub.a +endif + +ifeq ($(HAVE_VULKAN),true) +TARGETS += $(BUILD_DIR)/libdgl-vulkan.a +endif + +# --------------------------------------------------------------------------------------------------------------------- + +all: $(TARGETS) + +cairo: $(BUILD_DIR)/libdgl-cairo.a +opengl: $(BUILD_DIR)/libdgl-opengl.a +opengl3: $(BUILD_DIR)/libdgl-opengl3.a +stub: $(BUILD_DIR)/libdgl-stub.a +vulkan: $(BUILD_DIR)/libdgl-vulkan.a + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/libdgl-cairo.a: $(OBJS_cairo) + -@mkdir -p $(BUILD_DIR) + @echo "Creating libdgl-cairo.a" + $(SILENT)rm -f $@ + $(SILENT)$(AR) crs $@ $^ + +$(BUILD_DIR)/libdgl-opengl.a: $(OBJS_opengl) + -@mkdir -p $(BUILD_DIR) + @echo "Creating libdgl-opengl.a" + $(SILENT)rm -f $@ + $(SILENT)$(AR) crs $@ $^ + +$(BUILD_DIR)/libdgl-opengl3.a: $(OBJS_opengl3) + -@mkdir -p $(BUILD_DIR) + @echo "Creating libdgl-opengl3.a" + $(SILENT)rm -f $@ + $(SILENT)$(AR) crs $@ $^ + +$(BUILD_DIR)/libdgl-stub.a: $(OBJS_stub) + -@mkdir -p $(BUILD_DIR) + @echo "Creating libdgl-stub.a" + $(SILENT)rm -f $@ + $(SILENT)$(AR) crs $@ $^ + +$(BUILD_DIR)/libdgl-vulkan.a: $(OBJS_vulkan) + -@mkdir -p $(BUILD_DIR) + @echo "Creating libdgl-vulkan.a" + $(SILENT)rm -f $@ + $(SILENT)$(AR) crs $@ $^ + +# Compat name, to be removed soon +$(BUILD_DIR)/libdgl.a: $(BUILD_DIR)/libdgl-opengl.a + @echo "Symlinking libdgl.a" + $(SILENT)ln -sf $< $@ + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/dgl/%.c.o: src/%.c + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $<" + $(SILENT)$(CC) $< $(BUILD_C_FLAGS) -c -o $@ + +$(BUILD_DIR)/dgl/%.cpp.o: src/%.cpp + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ + +$(BUILD_DIR)/dgl/%.mm.o: src/%.mm + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -ObjC++ -o $@ + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/dgl/pugl.cpp.o: src/pugl.cpp + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) -c -o $@ + +$(BUILD_DIR)/dgl/pugl.mm.o: src/pugl.mm + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) -c -ObjC++ -o $@ + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/dgl/%.cpp.cairo.o: src/%.cpp + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (Cairo variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(CAIRO_FLAGS) -DDGL_CAIRO -c -o $@ + +$(BUILD_DIR)/dgl/%.mm.cairo.o: src/%.mm + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (Cairo variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(CAIRO_FLAGS) -DDGL_CAIRO -c -ObjC++ -o $@ + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/dgl/%.cpp.opengl.o: src/%.cpp + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (OpenGL variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(OPENGL_FLAGS) -DDGL_OPENGL -c -o $@ + +$(BUILD_DIR)/dgl/%.mm.opengl.o: src/%.mm + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (OpenGL variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(OPENGL_FLAGS) -DDGL_OPENGL -c -ObjC++ -o $@ + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/dgl/%.cpp.opengl3.o: src/%.cpp + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (OpenGL3 variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(OPENGL_FLAGS) -DDGL_OPENGL -DDGL_USE_OPENGL3 -c -o $@ + +$(BUILD_DIR)/dgl/%.mm.opengl3.o: src/%.mm + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (OpenGL3 variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(OPENGL_FLAGS) -DDGL_OPENGL -DDGL_USE_OPENGL3 -c -ObjC++ -o $@ + +# --------------------------------------------------------------------------------------------------------------------- + +$(BUILD_DIR)/dgl/%.cpp.vulkan.o: src/%.cpp + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (Vulkan variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(VULKAN_FLAGS) -DDGL_VULKAN -c -o $@ + +$(BUILD_DIR)/dgl/%.mm.vulkan.o: src/%.mm + -@mkdir -p $(BUILD_DIR)/dgl + @echo "Compiling $< (Vulkan variant)" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) $(PUGL_EXTRA_FLAGS) $(VULKAN_FLAGS) -DDGL_VULKAN -c -ObjC++ -o $@ + +# --------------------------------------------------------------------------------------------------------------------- + +clean: + rm -rf $(BUILD_DIR)/dgl $(BUILD_DIR)/libdgl*.* + +debug: + $(MAKE) DEBUG=true + +# --------------------------------------------------------------------------------------------------------------------- + +-include $(OBJS_common:%.o=%.d) +-include $(OBJS_cairo:%.o=%.d) +-include $(OBJS_opengl:%.o=%.d) +-include $(OBJS_opengl3:%.o=%.d) +-include $(OBJS_stub:%.o=%.d) +-include $(OBJS_vulkan:%.o=%.d) + +# ---------------------------------------------------------------------------------------------------------------------