# Maintainer: bill-auger # Maintainer (Arch): Sven-Hendrik Haase # Maintainer (Arch): Antonio Rojas # Contributor (Arch): Imanol Celaya # Contributor (Arch): Lukas Jirkovsky # Contributor (Arch): Dan Vratil # Contributor (Arch): thotypous # Contributor (Arch): delor # Contributor: André Silva # parabola changes and rationale: # - removed support for qt5-webengine pkgname=qtcreator pkgver=4.9.2 _clangver=8.0.1 pkgrel=1 pkgrel+=.parabola1 pkgdesc='Lightweight, cross-platform integrated development environment' pkgdesc+=', without nonfree qt5-webengine support' arch=(x86_64) arch+=(i686 armv7h) url='https://www.qt.io' license=(LGPL) depends=(qt5-tools qt5-quickcontrols qt5-quickcontrols2 \ clang=$_clangver qbs clazy syntax-highlighting desktop-file-utils) makedepends=(llvm python patchelf) options=(docs) optdepends=('qt5-doc: integrated Qt documentation' 'qt5-examples: welcome page examples' 'qt5-translations: for other languages' 'gdb: debugger' 'cmake: cmake project support' 'x11-ssh-askpass: ssh support' 'git: git support' 'mercurial: mercurial support' 'bzr: bazaar support' 'valgrind: analyze support' 'perf: performer analyzer') source=("https://download.qt.io/official_releases/qtcreator/${pkgver%.*}/$pkgver/qt-creator-opensource-src-$pkgver.tar.xz" qtcreator-clazy-1.5.patch qtcreator-preload-plugins.patch qtcreator-mime-database.patch) source+=('libre.patch') sha256sums=('b7e0c797e7704c6c22eb35351946c0a758502fd082f6beaee043166e1739d3d7' '1f6998fea92b9a157f42cca783839ce95f70ccc667027078b7881cbb253838f0' '150c444e76ec969fc8765774b648984037829623300d0ce9d41a915b2afa792d' '8d64b5c28535dcaab910f32e82b04b425253015ca70f379cbe5e9693526a852a') sha256sums+=('b44b9217770573b16e7bea873b0a0fb1b9f6f59502686eb6136d78bebc671ddb') 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 # Adapt to clazy 1.5 plugin rename patch -p1 -i ../qtcreator-clazy-1.5.patch # 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 patch -p1 -i ../qtcreator-mime-database.patch # Use system shared-mime-info # remove qt5-webengine support patch -Np1 -i "$srcdir"/libre.patch rm -rv src/plugins/help/webenginehelpviewer.{cpp,h} } 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 } 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 # Link clazy plugin explicitely patchelf --add-needed ClazyPlugin.so "$pkgdir"/usr/lib/qtcreator/clangbackend }