diff --git a/devel/qtcreator/Makefile b/devel/qtcreator/Makefile index fd89b65fc54b..b5d3a38f5078 100644 --- a/devel/qtcreator/Makefile +++ b/devel/qtcreator/Makefile @@ -1,106 +1,109 @@ PORTNAME= qtcreator DISTVERSION= 15.0.0 CATEGORIES= devel 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 LICENSE= QtGPL LICENSE_GROUPS_QtGPL= GPL LICENSE_NAME= GPLv3 with Qt Company GPL Exception 1.0 LICENSE_FILE= ${WRKSRC}/LICENSE.GPL3-EXCEPT LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BUILD_DEPENDS= vulkan-headers>0:graphics/vulkan-headers LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader \ libxkbcommon.so:x11/libxkbcommon \ libzstd.so:archivers/zstd USES= cmake compiler:c++17-lang desktop-file-utils gl \ llvm:build,run,noexport,min=17 pkgconfig python \ qt:6 shebangfix tar:xz USE_GL= gl USE_LDCONFIG= ${LOCALBASE}/lib/${PORTNAME} USE_QT= 5compat base declarative positioning quick3d \ quicktimeline serialport shadertools sqldriver-sqlite \ svg tools translations webchannel SHEBANG_GLOB= *.pl *.py *.sh SHEBANG_FILES= src/plugins/terminal/tests/* \ src/plugins/terminal/tests/cursor/* \ tests/manual/distribution/elflint python_OLD_CMD+="/usr/bin/env python3.10" # Provide library paths, default llvm first as a hint to the clang code model. CMAKE_ARGS+= -DCMAKE_PREFIX_PATH:STRING="${LLVM_PREFIX};${PREFIX}" # - Prevent accidental pickup of devel/elfutils libraries. # - Prevent accidental use of devel/googletest headers, use bundled. CMAKE_ON= CMAKE_DISABLE_FIND_PACKAGE_elfutils \ CMAKE_DISABLE_FIND_PACKAGE_Googletest # - Disable precompiled headers for now, they are missing compile flags. # - Disable the AppStatisticsPlugin for now, not implemented for FreeBSD. # - Suppress installed yaml-cpp, use bundled. CMAKE_OFF= BUILD_WITH_PCH \ BUILD_PLUGIN_APPSTATISTICSMONITOR \ yaml-cpp_FOUND LDFLAGS+= -lexecinfo # be paranoid and do not extract qbs (devel/qbs) copy from source tree EXTRACT_AFTER_ARGS+= --exclude '${DISTNAME}/src/shared/qbs' PLIST_SUB= SHLIB_VER="${PORTVERSION}" \ SHLIB_SHVER="${PORTVERSION:C/\..*//}" .if defined(WITH_DEBUG) PLIST_SUB+= DEBUG="" .else PLIST_SUB+= DEBUG="@comment " .endif PORTDOCS= * OPTIONS_DEFINE= DOCS EXAMPLES LIBSECRET QTWEBENGINE OPTIONS_DEFAULT= DOCS EXAMPLES LIBSECRET OPTIONS_DEFAULT_amd64= QTWEBENGINE OPTIONS_DEFAULT_i386= QTWEBENGINE OPTIONS_SUB= yes DOCS_DESC= Install the Qt6 api documentation EXAMPLES_DESC= Install the Qt6 example projects LIBSECRET_DESC= Libsecret keychain support in qtkeychain QTWEBENGINE_DESC= Add dependency on qt6-webengine DOCS_USE= QT=doc:run DOCS_CMAKE_BOOL= WITH_DOCS EXAMPLES_USE= QT=examples:run LIBSECRET_LIB_DEPENDS= libsecret-1.so:security/libsecret LIBSECRET_USES= gettext-runtime gnome localbase:ldflags LIBSECRET_USE= GNOME=glib20 LIBSECRET_CMAKE_BOOL= LIBSECRET_SUPPORT QTWEBENGINE_USE= qt=webengine QTWEBENGINE_CMAKE_BOOL= BUILD_HELPVIEWERBACKEND_QTWEBENGINE # Documentation is excluded from the default build targets. do-build-DOCS-on: ${SETENVI} ${WRK_ENV} ${CONFIGURE_ENV} ${CMAKE_BIN} \ --build ${BUILD_WRKSRC} \ --target docs # This also means separate install steps for documentation. do-install-DOCS-on: ${SETENVI} ${WRK_ENV} ${CONFIGURE_ENV} ${CMAKE_BIN} \ --install ${BUILD_WRKSRC} \ --prefix ${STAGEDIR}${PREFIX} \ --component qch_docs ${SETENVI} ${WRK_ENV} ${CONFIGURE_ENV} ${CMAKE_BIN} \ --install ${BUILD_WRKSRC} \ --prefix ${STAGEDIR}${PREFIX} \ --component html_docs .include 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>, - typename ResultContainer = C> - 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(std::forward(container), function); - } - --#ifdef Q_CC_CLANG -+#if defined(Q_CC_CLANG) && !defined(__cpp_template_template_args) - template class C, // result container type - typename SC, // input container type - typename F, // function type