summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD82
1 files changed, 39 insertions, 43 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 46f528cba041..4890ecfdcb97 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -22,8 +22,8 @@ pkgdesc='Qt Creator prerelease/latest'
arch=('x86_64')
url='http://qt.io/ide'
license=('GPL')
-provides=('qtcreator' 'qbs')
-conflicts=('qtcreator' 'qbs')
+provides=('qtcreator')
+conflicts=('qtcreator')
depends=('python2-beautifulsoup4' 'qt5-tools' 'qt5-declarative' 'qt5-script' 'qt5-quickcontrols' 'qt5-quickcontrols2' 'qt5-webengine' 'clang' 'llvm')
install=qtcreator-prerelease.install
optdepends=('qbs'
@@ -37,59 +37,55 @@ optdepends=('qbs'
'mercurial: mercurial support'
'bzr: bazaar support'
'valgrind: analyze support')
-makedepends=('qbs' 'clang' 'qt5-base')
-source=("${_urlbase}/qtcreator/${_pkgvermajmin}/${_pkgver}/${_filename}.tar.xz")
-sha256sums=('d76655799ad2af81fb15f85d412d74583659fb1b4cf27b758ad8aae73675948b')
-
-_qmake_cmd=qmake
-_tmp_dir=$(mktemp -d)
-_qbs_settings="--settings-dir ${_tmp_dir}"
-_qbs_profile="sysqtprofile"
-_qbs_args="profile:${_qbs_profile}"
-
-if [[ -z ${startdir} ]]; then
- _building=false
-fi
+makedepends=('qbs' 'clang' 'qt5-base' 'patchelf')
+source=("${_urlbase}/qtcreator/${_pkgvermajmin}/${_pkgver}/${_filename}.tar.xz"
+ qtcreator-preload-plugins.patch
+ qtcreator-clang-libs.patch)
+sha256sums=('d76655799ad2af81fb15f85d412d74583659fb1b4cf27b758ad8aae73675948b'
+ 'b40e222b30c355d1230160a4e933dbd161b8748125662e3bde312ea52296457a'
+ '0f6d0dc41a87aae9ef371b1950f5b9d823db8b5685c6ac04a7a7ac133eb19a3f')
prepare() {
cd ${srcdir}/${_filename}
- sed -i '/LLVM_INCLUDEPATH/d' src/tools/clangbackend/clangbackend.pro
+
+ # 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
}
build() {
- export PATH=${startdir}:$PATH
- set -o nounset
- local _src_dir=${srcdir}/${_filename}
- [[ -d build ]] && rm -r build
+ cd ${srcdir}/${_filename}
- cd ${_src_dir}
- qmake -spec linux-clang
- make
+ qmake \
+ -r \
+ -spec linux-clang \
+ 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}/${_filename}/qtcreator.pro
- #qbs ${_qbs_settings} -d build -f ${src_dir} --all-products project.withAutotests:false profile:${_qbs_profile} config:release
- set +o nounset
+ make
+ make docs
}
package() {
- set -o nounset
- local _src_dir=${srcdir}/${_filename}
- local _pkg_dir=${pkgdir}/usr/
+ cd ${srcdir}/${_filename}
- #qbs install ${_qbs_settings} -d build -f ${_src_dir} --install-root ${_pkg_dir} --all-products project.withAutotests:false profile:${_qbs_profile} config:release
- cd ${_src_dir}
- INSTALL_ROOT=${_pkg_dir} make install
+ make INSTALL_ROOT="$pkgdir/usr/" install
+ make INSTALL_ROOT="$pkgdir/usr/" install_docs
- # Workaround for FS#40583
- mv "${pkgdir}"/usr/bin/qtcreator "${pkgdir}"/usr/bin/qtcreator-bin
- echo "#!/bin/sh" > "${pkgdir}"/usr/bin/qtcreator
- echo "QT_LOGGING_TO_CONSOLE=1 qtcreator-bin \$@" >> "${pkgdir}"/usr/bin/qtcreator
- chmod +x "${pkgdir}"/usr/bin/qtcreator
+ install -Dm644 "$srcdir"/qt-creator-opensource-src-$pkgver/LICENSE.GPL3-EXCEPT "$pkgdir"/usr/share/licenses/qtcreator/LICENSE.GPL3-EXCEPT
- install -Dm644 ${srcdir}/${_filename}/LICENSE.GPL3-EXCEPT ${pkgdir}/usr/share/licenses/qtcreator/LICENSE.GPL3-EXCEPT
- rm -Rf ${_tmp_dir}
- set +o nounset
+# Link clazy plugin explicitely
+ patchelf --add-needed ClazyPlugin.so "$pkgdir"/usr/lib/qtcreator/clangbackend
}
-
-#if $_building; then
-# qbs setup-qt ${_qbs_settings} /usr/bin/qmake ${_qbs_profile}
-#fi