Date: Monday, May 6, 2019 @ 16:13:29 Author: arojas Revision: 352577 Preload analyzer plugins in .desktop file (FS#62221)
Added: qtcreator/trunk/qtcreator-preload-plugins.patch Modified: qtcreator/trunk/PKGBUILD Deleted: qtcreator/trunk/qtcreator-clang-plugins.patch ---------------------------------+ PKGBUILD | 15 +++++--- qtcreator-clang-plugins.patch | 65 -------------------------------------- qtcreator-preload-plugins.patch | 12 +++++++ 3 files changed, 22 insertions(+), 70 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2019-05-06 13:56:21 UTC (rev 352576) +++ PKGBUILD 2019-05-06 16:13:29 UTC (rev 352577) @@ -9,7 +9,7 @@ pkgname=qtcreator pkgver=4.9.0 _clangver=8.0.0 -pkgrel=1 +pkgrel=2 pkgdesc='Lightweight, cross-platform integrated development environment' arch=(x86_64) url='https://www.qt.io' @@ -28,9 +28,11 @@ 'bzr: bazaar support' 'valgrind: analyze support') source=("https://download.qt.io/official_releases/qtcreator/${pkgver%.*}/$pkgver/qt-creator-opensource-src-$pkgver.tar.xz" - qtcreator-clang-plugins.patch) + qtcreator-clazy-1.5.patch + qtcreator-preload-plugins.patch) sha256sums=('46ee1992531b769450f8be96cf63520b609d7dd305df345d7cd8216ac396e6a8' - 'ba4ebfa0cb2a9977b9ec9f12eaa92dac152ed2d67976829f2a596bc27888f0ab') + '1f6998fea92b9a157f42cca783839ce95f70ccc667027078b7881cbb253838f0' + '0e59c98c02d46f93275dda2b22216a0ba467104f0151f35c88ae2172c3858b03') prepare() { mkdir -p build @@ -40,15 +42,18 @@ sed -e 's|libexec\/qtcreator|lib\/qtcreator|g' -i qtcreator.pri # use system qbs rm -r src/shared/qbs - # Load analyzer plugins on demand, since upstream clang doesn't link to all plugins + # Preload analyzer plugins, since upstream clang doesn't link to all plugins # see http://code.qt.io/cgit/clang/clang.git/commit/?id=7f349701d3ea0c47be3a43e265699dddd3fd55cf # and https://bugs.archlinux.org/task/59492 - patch -p1 -i ../qtcreator-clang-plugins.patch + patch -p1 -i ../qtcreator-preload-plugins.patch + # Adapt to clazy 1.5 plugin rename + patch -p1 -i ../qtcreator-clazy-1.5.patch } build() { cd build + export LDFLAGS=${LDFLAGS/--as-needed,/} qmake LLVM_INSTALL_DIR=/usr QBS_INSTALL_DIR=/usr \ KSYNTAXHIGHLIGHTING_LIB_DIR=/usr/lib KSYNTAXHIGHLIGHTING_INCLUDE_DIR=/usr/include/KF5/KSyntaxHighlighting \ CONFIG+=journald QMAKE_CFLAGS_ISYSTEM=-I \ Deleted: qtcreator-clang-plugins.patch =================================================================== --- qtcreator-clang-plugins.patch 2019-05-06 13:56:21 UTC (rev 352576) +++ qtcreator-clang-plugins.patch 2019-05-06 16:13:29 UTC (rev 352577) @@ -1,65 +0,0 @@ -diff --git a/src/plugins/clangcodemodel/clangeditordocumentprocessor.cpp b/src/plugins/clangcodemodel/clangeditordocumentprocessor.cpp -index 706c5101a3..dbfaeb8457 100644 ---- a/src/plugins/clangcodemodel/clangeditordocumentprocessor.cpp -+++ b/src/plugins/clangcodemodel/clangeditordocumentprocessor.cpp -@@ -511,6 +511,7 @@ private: - if (tidyMode == Mode::Disabled) - return; - -+ m_options.append(CppTools::XclangArgs({"-load", "libclangTidyPlugin.so"})); - m_options.append(CppTools::XclangArgs({"-add-plugin", "clang-tidy"})); - - if (tidyMode == Mode::File) -@@ -526,15 +527,15 @@ private: - if (checks.isEmpty()) - return; - -- m_options.append(CppTools::XclangArgs({"-add-plugin", -- "clang-lazy", -- "-plugin-arg-clang-lazy", -+ m_options.append(CppTools::XclangArgs({"-load", "ClazyPlugin.so", "-add-plugin", -+ "clazy", -+ "-plugin-arg-clazy", - "enable-all-fixits", -- "-plugin-arg-clang-lazy", -+ "-plugin-arg-clazy", - "no-autowrite-fixits", -- "-plugin-arg-clang-lazy", -+ "-plugin-arg-clazy", - checks, -- "-plugin-arg-clang-lazy", -+ "-plugin-arg-clazy", - "ignore-included-files"})); - } - -diff --git a/src/plugins/clangtools/clangtidyclazyrunner.cpp b/src/plugins/clangtools/clangtidyclazyrunner.cpp -index a580704243..7a8740a5cc 100644 ---- a/src/plugins/clangtools/clangtidyclazyrunner.cpp -+++ b/src/plugins/clangtools/clangtidyclazyrunner.cpp -@@ -76,6 +76,7 @@ QStringList ClangTidyClazyRunner::constructCommandLineArguments(const QStringLis - - const ClangDiagnosticConfig::TidyMode tidyMode = m_diagnosticConfig.clangTidyMode(); - if (tidyMode != ClangDiagnosticConfig::TidyMode::Disabled) { -+ arguments << XclangArgs({"-load", "libclangTidyPlugin.so"}); - arguments << XclangArgs({"-add-plugin", "clang-tidy"}); - if (tidyMode != ClangDiagnosticConfig::TidyMode::File) { - const QString tidyChecks = m_diagnosticConfig.clangTidyChecks(); -@@ -85,13 +86,13 @@ QStringList ClangTidyClazyRunner::constructCommandLineArguments(const QStringLis - - const QString clazyChecks = m_diagnosticConfig.clazyChecks(); - if (!clazyChecks.isEmpty()) { -- arguments << XclangArgs({"-add-plugin", -- "clang-lazy", -- "-plugin-arg-clang-lazy", -+ arguments << XclangArgs({"-load", "ClazyPlugin.so", "-add-plugin", -+ "clazy", -+ "-plugin-arg-clazy", - "enable-all-fixits", -- "-plugin-arg-clang-lazy", -+ "-plugin-arg-clazy", - "no-autowrite-fixits", -- "-plugin-arg-clang-lazy", -+ "-plugin-arg-clazy", - m_diagnosticConfig.clazyChecks()}); - } - Added: qtcreator-preload-plugins.patch =================================================================== --- qtcreator-preload-plugins.patch (rev 0) +++ qtcreator-preload-plugins.patch 2019-05-06 16:13:29 UTC (rev 352577) @@ -0,0 +1,12 @@ +diff --git a/dist/org.qt-project.qtcreator.desktop b/dist/org.qt-project.qtcreator.desktop +index 034721891d..93351f28da 100644 +--- a/dist/org.qt-project.qtcreator.desktop ++++ b/dist/org.qt-project.qtcreator.desktop +@@ -1,6 +1,6 @@ + [Desktop Entry] + Type=Application +-Exec=qtcreator %F ++Exec=LD_PRELOAD=ClazyPlugin.so:libclangTidyPlugin.so qtcreator %F + Name=Qt Creator + GenericName=C++ IDE for developing Qt applications + X-KDE-StartupNotify=true
