diff --git a/desktop/toolkit/qt6/qt6-tools/files/llvm22.patch b/desktop/toolkit/qt6/qt6-tools/files/llvm22.patch new file mode 100644 index 0000000000..3fca9f4ca5 --- /dev/null +++ b/desktop/toolkit/qt6/qt6-tools/files/llvm22.patch @@ -0,0 +1,43 @@ +diff --git a/src/qdoc/cmake/QDocConfiguration.cmake b/src/qdoc/cmake/QDocConfiguration.cmake +index 72d27db9e..8a3cba463 100644 +--- a/src/qdoc/cmake/QDocConfiguration.cmake ++++ b/src/qdoc/cmake/QDocConfiguration.cmake +@@ -8,7 +8,7 @@ set(QDOC_MINIMUM_CLANG_VERSION "17") + + # List of explicitly supported Clang versions for QDoc + set(QDOC_SUPPORTED_CLANG_VERSIONS +- "21.1" "20.1" "19.1" "18.1" "17.0.6" ++ "22.1" "22.0" "21.1" "20.1" "19.1" "18.1" "17.0.6" + ) + + # Check for QDoc coverage dependencies +diff --git a/src/qdoc/qdoc/CMakeLists.txt b/src/qdoc/qdoc/CMakeLists.txt +index 90f1d7c23..84ebc3a28 100644 +--- a/src/qdoc/qdoc/CMakeLists.txt ++++ b/src/qdoc/qdoc/CMakeLists.txt +@@ -191,6 +191,7 @@ qt_internal_add_tool(${target_name} + DEFINES + # To provide the ability to workaround version-specific Clang issues. + # A re-export of (LLVM|CLANG)_VERSION_MAJOR done in WrapLibClang.cmake ++ QT_NO_EMIT + LIBCLANG_VERSION_MAJOR=${QT_LIB_CLANG_VERSION_MAJOR} + ) + +diff --git a/src/qdoc/qdoc/src/qdoc/clangcodeparser.cpp b/src/qdoc/qdoc/src/qdoc/clangcodeparser.cpp +index 66a750a3d..3f54ddff5 100644 +--- a/src/qdoc/qdoc/src/qdoc/clangcodeparser.cpp ++++ b/src/qdoc/qdoc/src/qdoc/clangcodeparser.cpp +@@ -43,7 +43,12 @@ + #include + #include + +-#include "clang/AST/QualTypeNames.h" ++#if LIBCLANG_VERSION_MAJOR >= 22 ++// LLVM 22 provides a compatible QualTypeNames implementation in libclang. ++# include ++#else ++# include "clang/AST/QualTypeNames.h" ++#endif + #include "template_declaration.h" + + #include diff --git a/desktop/toolkit/qt6/qt6-tools/pspec.xml b/desktop/toolkit/qt6/qt6-tools/pspec.xml index 4e9b6bc433..32032ab83e 100755 --- a/desktop/toolkit/qt6/qt6-tools/pspec.xml +++ b/desktop/toolkit/qt6/qt6-tools/pspec.xml @@ -34,7 +34,7 @@ qt6-declarative-devel - + llvm22.patch