FS#37003 - [quassel-client] Build separate packages with and without KDE integration
Attached to Project:
Community Packages
Opened by Yaohan Chen (hagabaka) - Friday, 20 September 2013, 23:46 GMT
Last edited by Vesa Kaihlavirta (vegai) - Saturday, 28 September 2013, 21:50 GMT
Opened by Yaohan Chen (hagabaka) - Friday, 20 September 2013, 23:46 GMT
Last edited by Vesa Kaihlavirta (vegai) - Saturday, 28 September 2013, 21:50 GMT
|
Details
Description:
Currently (0.9.0-2) the quassel-client package in repository does not have KDE integration, but is built with KDE integration if the user builds it manually with KDE installed. This is probably because kdelibs isn't in makedepends. Some users use quassel with KDE while others not. There have been a bug report complaining KDE support is made mandatory, and a bug report complaining that the package does not have KDE integration. https://bugs.archlinux.org/task/24565 https://bugs.archlinux.org/task/36052 Therefore separate client packages, with and without KDE integration, should be provided. The following PKGBUILD satisfies this request. It builds the client twice with different WITH_KDE values, and packages separately, similar to how core/gvim and core/vim packages are built. # Maintainer: Vesa Kaihlavirta <vegai@iki.fi> # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> pkgbase=quassel pkgname=('quassel-client' 'quassel-client-kde' 'quassel-core') pkgver=0.9.0 pkgrel=3 pkgdesc="QT4 irc client with a separated core" arch=('i686' 'x86_64') url="http://quassel-irc.org/" license=('GPL') makedepends=('cmake' 'automoc4' 'qt4' 'icu' 'kdelibs') source=("http://quassel-irc.org/pub/quassel-$pkgver.tar.bz2" 'quassel.service' 'quassel.conf') sha256sums=('2e3fe06ae3731c829aa3c2f6bb5320619bad264c831f322985c3aa3fe58b6027' '91a1aaae47d41c11aa418dd560039ddbbfb659e02b86379d8c4789c5ada362d3' 'f3031ea8217e01ba42cea14606169e3e27affa5918968ffd5a03c21ae92fe2b8') build() { cd $srcdir mkdir build mkdir build-client mkdir build-client-kde # Core cd $srcdir/build cmake \ -DCMAKE_INSTALL_PREFIX=/usr/ \ -DWITH_KDE=0 \ -DCMAKE_BUILD_TYPE="Release" \ -DWITH_OPENSSL=ON \ -DWANT_CORE=ON \ -DWANT_MONO=OFF \ -DWANT_QTCLIENT=OFF \ -DWITH_DBUS=OFF \ -DWITH_OXYGEN=OFF \ -DWITH_PHONON=OFF \ -DWITH_WEBKIT=OFF \ -DCMAKE_BUILD_TYPE="Release" \ ../quassel-${pkgver}/ \ -Wno-dev make # Client cd $srcdir/build-client cmake \ -DCMAKE_INSTALL_PREFIX=/usr/ \ -DWITH_KDE=0 \ -DWITH_OPENSSL=ON \ -DCMAKE_BUILD_TYPE="Release" \ -DWANT_CORE=OFF \ -DWANT_QTCLIENT=ON \ -DWANT_MONO=ON \ ../quassel-${pkgver}/ \ -Wno-dev make # Client with KDE integration cd $srcdir/build-client-kde cmake \ -DCMAKE_INSTALL_PREFIX=/usr/ \ -DWITH_KDE=1 \ -DWITH_OPENSSL=ON \ -DCMAKE_BUILD_TYPE="Release" \ -DWANT_CORE=OFF \ -DWANT_QTCLIENT=ON \ -DWANT_MONO=ON \ ../quassel-${pkgver}/ \ -Wno-dev make } package_quassel-core() { pkgdesc="Qt4 IRC client with a separated core - core only" depends=('qt4' 'icu') conflicts=('quassel-core-kde') backup=(etc/conf.d/quassel) install=quassel.install cd $srcdir/build make DESTDIR="${pkgdir}" install # Remove unneeded pixmap icons rm -r $pkgdir/usr/share install -Dm644 "${srcdir}"/$pkgbase.service \ "${pkgdir}"/usr/lib/systemd/system/$pkgbase.service install -Dm644 "${srcdir}"/$pkgbase.conf \ "${pkgdir}"/etc/conf.d/$pkgbase } package_quassel-client() { pkgdesc="Qt4 IRC client with a separated core - client only" depends=('qt4') conflicts=('quassel-client-kde') install=quassel-client.install cd $srcdir/build-client make DESTDIR=${pkgdir} install } package_quassel-client-kde() { pkgdesc="Qt4 IRC client with a separated core - client only - with KDE integration" depends=('qt4' 'kdelibs') conflicts=('quassel-client') provides=('quassel-client'=$pkgver-$pkgrel) install=quassel-client.install cd $srcdir/build-client-kde make DESTDIR=${pkgdir} install } |
This task depends upon
Closed by Vesa Kaihlavirta (vegai)
Saturday, 28 September 2013, 21:50 GMT
Reason for closing: Won't implement
Saturday, 28 September 2013, 21:50 GMT
Reason for closing: Won't implement
I realize
FS#24565was closed as WONTFIX, but since I'm providing a PKGBUILD that implements it, I hoped you could reconsider. I couldn't attach the PKGBUILD by requesting reopen.