From d5d8a7192ad1430cf12f985dc1762e9debcd17f8 Mon Sep 17 00:00:00 2001 From: Philippe Teuwen Date: Fri, 27 Feb 2026 00:36:56 +0100 Subject: [PATCH] Qt6: makefile fixes --- client/Makefile | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/client/Makefile b/client/Makefile index d2accf1e9..e512bde00 100644 --- a/client/Makefile +++ b/client/Makefile @@ -320,7 +320,7 @@ PM3INCLUDES += $(PYTHONLIBINC) ifneq ($(SKIPQT),1) # Check for correctly configured Qt6 QTINCLUDES = $(shell $(PKG_CONFIG_ENV) pkg-config --cflags Qt6Core Qt6Widgets Qt6Gui 2>/dev/null) - QTLDLIBS = $(shell $(PKG_CONFIG_ENV) pkg-config --libs Qt6Core Qt6Widgets 2>/dev/null) + QTLDLIBS = $(shell $(PKG_CONFIG_ENV) pkg-config --libs Qt6Core Qt6Widgets Qt6Gui 2>/dev/null) MOC = $(shell $(PKG_CONFIG_ENV) pkg-config --variable=libexecdir Qt6Core)/moc UIC = $(shell $(PKG_CONFIG_ENV) pkg-config --variable=libexecdir Qt6Core)/uic QMAKE = $(shell $(PKG_CONFIG_ENV) pkg-config --variable=bindir Qt6Core)/qmake @@ -358,7 +358,10 @@ ifneq ($(SKIPQT),1) endif endif LDLIBS += $(QTLDLIBS) -CXXINCLUDES += $(QTINCLUDES) + +# Treat Qt headers as system headers, to avoid a bug with Qt 6.6.3 +QTINCLUDES_FIX = $(patsubst -I%,-isystem %,$(QTINCLUDES)) +CXXINCLUDES += $(QTINCLUDES_FIX) ## GD (optional) ifneq ($(SKIPGD),1) @@ -875,7 +878,11 @@ src/ui/ui_overlays.h: src/ui/overlays.ui $(info [-] UIC $@) $(Q)$(UIC) $^ > $@ # fix the header generated by some Qt6 versions (seen on 6.4.2 & 6.6.3) - $(Q)sed -i 's/&QLabel::setNum/qOverload(\&QLabel::setNum)/g' $@ + ifeq ($(platform),Darwin) + $(Q)sed -E -i '' 's/&QLabel::setNum/qOverload(\&QLabel::setNum)/g' $@ + else + $(Q)sed -i 's/&QLabel::setNum/qOverload(\&QLabel::setNum)/g' $@ + endif src/ui/ui_image.h: src/ui/image.ui $(info [-] UIC $@)