git: 112c19906b2b - main - devel/qtcreator: Fix build with Qt 6.7.3

From: Jason E. Hale <jhale_at_FreeBSD.org>
Date: Thu, 19 Dec 2024 10:33:52 UTC
The branch main has been updated by jhale:

URL: https://cgit.FreeBSD.org/ports/commit/?id=112c19906b2b70a7e34fdeaa020ccf0fd0353560

commit 112c19906b2b70a7e34fdeaa020ccf0fd0353560
Author:     Jason E. Hale <jhale@FreeBSD.org>
AuthorDate: 2024-12-19 10:24:46 +0000
Commit:     Jason E. Hale <jhale@FreeBSD.org>
CommitDate: 2024-12-19 10:33:47 +0000

    devel/qtcreator: Fix build with Qt 6.7.3
    
    This update was tested against Qt 6.8.1, but there was some unforseen
    breakage with Qt 6.7.3 still in main. Consolidate two local patches into
    a single patch from upstream.
    
    Reported by:    pkg-fallout
---
 devel/qtcreator/Makefile                           |  3 +++
 devel/qtcreator/distinfo                           |  4 +++-
 .../patch-src_libs_sqlite_sqlitebasestatement.h    | 13 -----------
 .../files/patch-src_libs_utils_algorithm.h         | 26 ----------------------
 4 files changed, 6 insertions(+), 40 deletions(-)

diff --git a/devel/qtcreator/Makefile b/devel/qtcreator/Makefile
index fd89b65fc54b..b5d3a38f5078 100644
--- a/devel/qtcreator/Makefile
+++ b/devel/qtcreator/Makefile
@@ -5,6 +5,9 @@ MASTER_SITES=	QT/official_releases/qtcreator/${DISTVERSION:R}/${DISTVERSION}
 DISTNAME=	qt-creator-opensource-src-${DISTVERSION}
 DIST_SUBDIR=	KDE/Qt/qtcreator
 
+PATCH_SITES=	https://github.com/qt-creator/qt-creator/commit/
+PATCHFILES=	0e9943dd671877adbe13c9316bded21ac762e4dd.patch:-p1 # Fix build with LLVM 19
+
 MAINTAINER=	kde@FreeBSD.org
 COMMENT=	C++ and QML IDE for Qt development
 WWW=		https://qt-project.org/wiki/Category:Tools::QtCreator
diff --git a/devel/qtcreator/distinfo b/devel/qtcreator/distinfo
index 523b73d2868b..b907e9265f69 100644
--- a/devel/qtcreator/distinfo
+++ b/devel/qtcreator/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1734242208
+TIMESTAMP = 1734596168
 SHA256 (KDE/Qt/qtcreator/qt-creator-opensource-src-15.0.0.tar.xz) = 23b1c6b478ca760997ecddd4c728f0da280b0696008a9bddd9a1068f16d48f72
 SIZE (KDE/Qt/qtcreator/qt-creator-opensource-src-15.0.0.tar.xz) = 53254544
+SHA256 (KDE/Qt/qtcreator/0e9943dd671877adbe13c9316bded21ac762e4dd.patch) = 469e93983b09ac5f339a943318e1f29f899955779bac88e303656cf8e07790be
+SIZE (KDE/Qt/qtcreator/0e9943dd671877adbe13c9316bded21ac762e4dd.patch) = 3095
diff --git a/devel/qtcreator/files/patch-src_libs_sqlite_sqlitebasestatement.h b/devel/qtcreator/files/patch-src_libs_sqlite_sqlitebasestatement.h
deleted file mode 100644
index 7803d35ac358..000000000000
--- a/devel/qtcreator/files/patch-src_libs_sqlite_sqlitebasestatement.h
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/libs/sqlite/sqlitebasestatement.h.orig	2024-10-30 22:45:51 UTC
-+++ src/libs/sqlite/sqlitebasestatement.h
-@@ -412,9 +412,7 @@ class StatementImplementation : public BaseStatement (
-         BaseSqliteResultRange(BaseSqliteResultRange &) = delete;
-         BaseSqliteResultRange &operator=(BaseSqliteResultRange &) = delete;
- 
--        BaseSqliteResultRange(BaseSqliteResultRange &&other)
--            : m_statement{std::move(other.resetter)}
--        {}
-+        BaseSqliteResultRange(BaseSqliteResultRange &&other) = delete;
-         BaseSqliteResultRange &operator=(BaseSqliteResultRange &&) = delete;
- 
-         iterator begin() & { return iterator{m_statement}; }
diff --git a/devel/qtcreator/files/patch-src_libs_utils_algorithm.h b/devel/qtcreator/files/patch-src_libs_utils_algorithm.h
deleted file mode 100644
index 426257524d84..000000000000
--- a/devel/qtcreator/files/patch-src_libs_utils_algorithm.h
+++ /dev/null
@@ -1,26 +0,0 @@
-Fix build with LLVM >= 19.1.0-rc1.
-
-Clang >= 19.1.0-rc1 enables C++17 relaxed template template argument
-matching by default. The workaround in qtcreator before this was the
-case is now causing build failures.
-
---- src/libs/utils/algorithm.h.orig	2024-11-27 10:00:22 UTC
-+++ src/libs/utils/algorithm.h
-@@ -258,7 +258,7 @@ Q_REQUIRED_RESULT decltype(auto) transform(SC &&contai
-          typename Result = std::decay_t<std::invoke_result_t<F, Value&>>,
-          typename ResultContainer = C<Result>>
- Q_REQUIRED_RESULT decltype(auto) transform(SC &&container, F function);
--#ifdef Q_CC_CLANG
-+#if defined(Q_CC_CLANG) && !defined(__cpp_template_template_args)
- // "Matching of template template-arguments excludes compatible templates"
- // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0522r0.html (P0522R0)
- // in C++17 makes the above match e.g. C=std::vector even though that takes two
-@@ -833,7 +833,7 @@ Q_REQUIRED_RESULT decltype(auto) transform(SC &&contai
-     return transform<ResultContainer>(std::forward<SC>(container), function);
- }
- 
--#ifdef Q_CC_CLANG
-+#if defined(Q_CC_CLANG) && !defined(__cpp_template_template_args)
- template<template<typename, typename> class C, // result container type
-          typename SC,                          // input container type
-          typename F,                           // function type