media-gfx/freecad: fix build with qt 6.11

Closes: https://bugs.gentoo.org/977409
Signed-off-by: Nowa Ammerlaan <nowa@gentoo.org>
This commit is contained in:
Nowa Ammerlaan
2026-06-29 16:11:54 +02:00
parent f57b1d5e40
commit 338ce0cfda
2 changed files with 26 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
https://github.com/FreeCAD/FreeCAD/pull/29905
https://bugs.gentoo.org/977409
diff --git a/cMake/FreeCAD_Helpers/SetupQt.cmake b/cMake/FreeCAD_Helpers/SetupQt.cmake
index 8a7ba9bdeb37..7654ef39e9fc 100644
--- a/cMake/FreeCAD_Helpers/SetupQt.cmake
+++ b/cMake/FreeCAD_Helpers/SetupQt.cmake
@@ -29,8 +29,16 @@ endif ()
foreach(COMPONENT IN LISTS FREECAD_QT_COMPONENTS)
find_package(Qt${FREECAD_QT_MAJOR_VERSION} REQUIRED COMPONENTS ${COMPONENT})
- set(Qt${COMPONENT}_LIBRARIES ${Qt${FREECAD_QT_MAJOR_VERSION}${COMPONENT}_LIBRARIES})
- set(Qt${COMPONENT}_INCLUDE_DIRS ${Qt${FREECAD_QT_MAJOR_VERSION}${COMPONENT}_INCLUDE_DIRS})
+ if(TARGET Qt${FREECAD_QT_MAJOR_VERSION}::${COMPONENT})
+ set(Qt${COMPONENT}_LIBRARIES Qt${FREECAD_QT_MAJOR_VERSION}::${COMPONENT})
+ get_target_property(Qt${COMPONENT}_INCLUDE_DIRS Qt${FREECAD_QT_MAJOR_VERSION}::${COMPONENT} INTERFACE_INCLUDE_DIRECTORIES)
+ if(NOT Qt${COMPONENT}_INCLUDE_DIRS)
+ set(Qt${COMPONENT}_INCLUDE_DIRS "")
+ endif()
+ else()
+ set(Qt${COMPONENT}_LIBRARIES ${Qt${FREECAD_QT_MAJOR_VERSION}${COMPONENT}_LIBRARIES})
+ set(Qt${COMPONENT}_INCLUDE_DIRS ${Qt${FREECAD_QT_MAJOR_VERSION}${COMPONENT}_INCLUDE_DIRS})
+ endif()
set(Qt${COMPONENT}_FOUND ${Qt${FREECAD_QT_MAJOR_VERSION}${COMPONENT}_FOUND})
set(Qt${COMPONENT}_VERSION ${Qt${FREECAD_QT_MAJOR_VERSION}${COMPONENT}_VERSION})
endforeach()

View File

@@ -139,6 +139,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch
"${FILESDIR}"/${PN}-9999-Gentoo-specific-don-t-check-vcs.patch
"${FILESDIR}"/${PN}-1.1.1-fix-sketcher-toolbars.patch
"${FILESDIR}"/${PN}-1.1.1-qt-6.11.patch
"${FILESDIR}"/${PN}-1.0.2-pybind11-latent-slots-macro-conflicts-with-Qt.patch # fixed in pybind-3.0.1
)