diff options
Diffstat (limited to 'libre/qtcreator')
-rw-r--r-- | libre/qtcreator/PKGBUILD | 75 | ||||
-rw-r--r-- | libre/qtcreator/qtcreator-clang-libs.patch | 24 | ||||
-rw-r--r-- | libre/qtcreator/qtcreator-fix-clang-paths.patch | 15 | ||||
-rw-r--r-- | libre/qtcreator/qtcreator-preload-plugins.patch | 13 |
4 files changed, 41 insertions, 86 deletions
diff --git a/libre/qtcreator/PKGBUILD b/libre/qtcreator/PKGBUILD index 0e8354d87..265c6600d 100644 --- a/libre/qtcreator/PKGBUILD +++ b/libre/qtcreator/PKGBUILD @@ -1,6 +1,5 @@ -# Maintainer (Arch): Sven-Hendrik Haase <sh@lutzhaase.com> # Maintainer (Arch): Antonio Rojas <arojas@archlinux.org> -# Contributor (Arch): Imanol Celaya <ornitorrincos@archlinux-es.org> +# Contributor (Arch): Sven-Hendrik Haase <sh@lutzhaase.com># Contributor (Arch): Imanol Celaya <ornitorrincos@archlinux-es.org> # Contributor (Arch): Lukas Jirkovsky <l.jirkovsky@gmail.com> # Contributor (Arch): Dan Vratil <progdan@progdansoft.com> # Contributor (Arch): thotypous <matiasΘarchlinux-br·org> @@ -15,9 +14,9 @@ pkgname=qtcreator -pkgver=4.12.4 -_clangver=10.0.1 -pkgrel=1 +pkgver=4.14.0 +_clangver=11.0.1 +pkgrel=4 pkgrel+=.parabola1 pkgdesc='Lightweight, cross-platform integrated development environment' pkgdesc+=', without nonfree qt5-webengine help viewer' @@ -25,15 +24,17 @@ arch=(x86_64) arch+=(i686 armv7h) url='https://www.qt.io' license=(LGPL) -depends=(qt5-tools qt5-quickcontrols qt5-quickcontrols2 qt5-webengine clang=$_clangver qbs clazy syntax-highlighting yaml-cpp desktop-file-utils) +depends=(qt5-tools qt5-quickcontrols qt5-quickcontrols2 qt5-webengine qt5-svg qt5-quick3d qt5-serialport + clang=$_clangver clazy syntax-highlighting yaml-cpp) depends=( $( sed -E 's/(qt5-webengine|yaml-cpp)//g' <<<${depends[@]} ) ) -makedepends=(llvm python patchelf) -options=(docs !strip) # https://bugs.archlinux.org/task/66078 +makedepends=(cmake llvm python) +options=(docs) optdepends=('qt5-doc: integrated Qt documentation' 'qt5-examples: welcome page examples' 'qt5-translations: for other languages' 'gdb: debugger' 'cmake: cmake project support' + 'qbs: QBS project support' 'x11-ssh-askpass: ssh support' 'git: git support' 'mercurial: mercurial support' @@ -41,56 +42,32 @@ optdepends=('qt5-doc: integrated Qt documentation' 'valgrind: analyze support' 'perf: performer analyzer') source=("https://download.qt.io/official_releases/qtcreator/${pkgver%.*}/$pkgver/qt-creator-opensource-src-$pkgver.tar.xz" - qtcreator-preload-plugins.patch - qtcreator-clang-libs.patch) -source+=(libre.patch) -sha256sums=('3f47d83344476b172f0c51a2351f5a9d8ce8dd8dd2eea827a52276763471b97a' - 'b40e222b30c355d1230160a4e933dbd161b8748125662e3bde312ea52296457a' - '0f6d0dc41a87aae9ef371b1950f5b9d823db8b5685c6ac04a7a7ac133eb19a3f') -sha256sums+=('fb3bda8aca0637fb36122706ee06ba051dcda29a2f480ff3053b4ced1c009cc4') + qtcreator-fix-clang-paths.patch) +sha256sums=('d240109351e96446ff149cbd56341ec02ba37bfa50462a85e4d02dfe6b21201e' + 'eaaa001d3b2705ca2bdfafca5ffce7919baed8726c50113ae03e1d97da5b8c8d') prepare() { - mkdir -p build - cd qt-creator-opensource-src-$pkgver - # fix hardcoded libexec path - sed -e 's|libexec\/qtcreator|lib\/qtcreator|g' -i qtcreator.pri - sed -e 's|libexec|lib|g' -i src/tools/tools.pro - # use system qbs - rm -r src/shared/qbs - # 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-preload-plugins.patch - # Fix build with clang 10 - patch -p1 -i ../qtcreator-clang-libs.patch - - # remove qt5-webengine support - patch -Np1 -i "$srcdir"/libre.patch - rm -rv src/plugins/help/webenginehelpviewer.{cpp,h} +# use system qbs + rm -r src/shared/qbs +# Fix linking to clang + sed -e 's|clangFormat|clang-cpp|' -i src/plugins/clangformat/CMakeLists.txt +# Fix libexec path + sed -e 's|libexec/qtcreator|lib/qtcreator|' -i cmake/QtCreatorAPIInternal.cmake +# Fix clang include path + patch -p1 -i ../qtcreator-fix-clang-paths.patch } build() { - cd build - - 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 \ - DEFINES+=QBS_ENABLE_PROJECT_FILE_UPDATES \ - "$srcdir"/qt-creator-opensource-src-$pkgver/qtcreator.pro - make - make docs + cmake -B build -S qt-creator-opensource-src-$pkgver \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_DOCS=ON + cmake --build build } package() { - cd build - - make INSTALL_ROOT="$pkgdir/usr/" install - make INSTALL_ROOT="$pkgdir/usr/" install_docs - - install -Dm644 "$srcdir"/qt-creator-opensource-src-$pkgver/LICENSE.GPL3-EXCEPT "$pkgdir"/usr/share/licenses/qtcreator/LICENSE.GPL3-EXCEPT + DESTDIR="$pkgdir" cmake --install build -# Link clazy plugin explicitely - patchelf --add-needed ClazyPlugin.so "$pkgdir"/usr/lib/qtcreator/clangbackend + install -Dm644 qt-creator-opensource-src-$pkgver/LICENSE.GPL3-EXCEPT "$pkgdir"/usr/share/licenses/qtcreator/LICENSE.GPL3-EXCEPT } diff --git a/libre/qtcreator/qtcreator-clang-libs.patch b/libre/qtcreator/qtcreator-clang-libs.patch deleted file mode 100644 index a0cc8c547..000000000 --- a/libre/qtcreator/qtcreator-clang-libs.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/src/shared/clang/clang_installation.pri b/src/shared/clang/clang_installation.pri -index 08838838bc..bee3779484 100644 ---- a/src/shared/clang/clang_installation.pri -+++ b/src/shared/clang/clang_installation.pri -@@ -131,9 +131,7 @@ defineReplace(extractWarnings) { - return($$result) - } - --CLANGTOOLING_LIBS=-lclangTooling -lclangIndex -lclangFrontend -lclangParse -lclangSerialization \ -- -lclangSema -lclangEdit -lclangAnalysis -lclangDriver -lclangDynamicASTMatchers \ -- -lclangASTMatchers -lclangToolingCore -lclangAST -lclangLex -lclangBasic -+CLANGTOOLING_LIBS=-lclang-cpp - win32:CLANGTOOLING_LIBS += -lversion - - BIN_EXTENSION = -@@ -207,7 +205,7 @@ isEmpty(LLVM_VERSION) { - isEmpty(QTC_CLANG_BUILDMODE_MISMATCH)|!equals(QTC_CLANG_BUILDMODE_MISMATCH, 1) { - CLANGFORMAT_MAIN_HEADER = $$LLVM_INCLUDEPATH/clang/Format/Format.h - exists($$CLANGFORMAT_MAIN_HEADER) { -- CLANGFORMAT_LIBS=-lclangFormat -lclangToolingInclusions -lclangToolingCore -lclangRewrite -lclangLex -lclangBasic -+ CLANGFORMAT_LIBS=-lclang-cpp - ALL_CLANG_LIBS=-lclangFormat -lclangToolingInclusions -lclangTooling -lclangToolingCore \ - -lclangRewrite -lclangIndex -lclangFrontend -lclangParse -lclangSerialization \ - -lclangSema -lclangEdit -lclangAnalysis -lclangDriver -lclangDynamicASTMatchers \ diff --git a/libre/qtcreator/qtcreator-fix-clang-paths.patch b/libre/qtcreator/qtcreator-fix-clang-paths.patch new file mode 100644 index 000000000..84a0a43f6 --- /dev/null +++ b/libre/qtcreator/qtcreator-fix-clang-paths.patch @@ -0,0 +1,15 @@ +diff --git a/src/libs/clangsupport/CMakeLists.txt b/src/libs/clangsupport/CMakeLists.txt +index dcaa464710..01cf7580b7 100644 +--- a/src/libs/clangsupport/CMakeLists.txt ++++ b/src/libs/clangsupport/CMakeLists.txt +@@ -5,8 +5,8 @@ add_qtc_library(ClangSupport + PUBLIC_DEPENDS Utils Sqlite Qt5::Core Qt5::Network + PUBLIC_DEFINES + CLANG_VERSION="${CLANG_VERSION}" +- CLANG_INCLUDE_DIR="${IDE_LIBEXEC_PATH}/clang/lib/clang/${CLANG_VERSION}/include" +- CLANG_BINDIR="${IDE_LIBEXEC_PATH}/clang/bin" ++ CLANG_INCLUDE_DIR="/usr/lib/clang/${CLANG_VERSION}/include" ++ CLANG_BINDIR="/usr/bin" + DEFINES CLANGSUPPORT_BUILD_LIB + PUBLIC_INCLUDES + "${CMAKE_CURRENT_LIST_DIR}" diff --git a/libre/qtcreator/qtcreator-preload-plugins.patch b/libre/qtcreator/qtcreator-preload-plugins.patch deleted file mode 100644 index d4ec515fe..000000000 --- a/libre/qtcreator/qtcreator-preload-plugins.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/plugins/clangtools/clangtidyclazyrunner.cpp b/src/plugins/clangtools/clangtidyclazyrunner.cpp -index 166d1c94e0..de0b9cc67b 100644 ---- a/src/plugins/clangtools/clangtidyclazyrunner.cpp -+++ b/src/plugins/clangtools/clangtidyclazyrunner.cpp -@@ -67,7 +67,7 @@ static QStringList clazyPluginArguments(const ClangDiagnosticConfig diagnosticCo - QStringList arguments; - - if (diagnosticConfig.isClazyEnabled()) { -- arguments << XclangArgs({"-add-plugin", "clazy"}); -+ arguments << XclangArgs({"-load", "ClazyPlugin.so", "-add-plugin", "clazy"}); - if (!diagnosticConfig.clazyChecks().isEmpty()) - arguments << XclangArgs({"-plugin-arg-clazy", diagnosticConfig.clazyChecks()}); - } |