aboutsummaryrefslogtreecommitdiffstats
path: root/community/quassel/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/quassel/APKBUILD')
-rw-r--r--community/quassel/APKBUILD143
1 files changed, 83 insertions, 60 deletions
diff --git a/community/quassel/APKBUILD b/community/quassel/APKBUILD
index 75a9c64b578..855f6f468f0 100644
--- a/community/quassel/APKBUILD
+++ b/community/quassel/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=quassel
pkgver=0.14.0
-pkgrel=3
+pkgrel=16
url="https://www.quassel-irc.org/"
pkgdesc="Distributed IRC client - metapackage"
arch="all"
@@ -11,17 +11,36 @@ options="!check"
install="$pkgname-core.pre-install"
pkgusers="quassel"
pkggroups="quassel"
-depends="$pkgname-mono"
-makedepends="cmake dbus-dev icu-dev openldap-dev openssl1.1-compat-dev
- qca-dev qt5-qtbase-dev qt5-qtscript-dev zlib-dev boost-dev
+makedepends="
+ boost-dev
+ cmake
+ dbus-dev
+ extra-cmake-modules
+ icu-dev
+ openldap-dev
+ openssl-dev>3
+ qca-dev
+ qt5-qtbase-dev
+ qt5-qtmultimedia-dev
+ qt5-qttools-dev
+ samurai
+ zlib-dev
"
source="https://www.quassel-irc.org/pub/quassel-$pkgver.tar.bz2
quasselcore.confd
quasselcore.initd
"
-subpackages="$pkgname-common::noarch
- $pkgname-core:server $pkgname-core-openrc:server_openrc
- $pkgname-client $pkgname-mono
+subpackages="
+ $pkgname-common::noarch
+ $pkgname-core
+ $pkgname-core-openrc:core_openrc
+ $pkgname-client
+ $pkgname-mono
+ $pkgname-libs-core:core_libs
+ $pkgname-libs-qtui:qtui_libs
+ $pkgname-libs-client:client_libs
+ $pkgname-libs-common:common_libs
+ $pkgname-libs-uisupport:uisupport_libs
"
# secfixes:
@@ -29,26 +48,21 @@ subpackages="$pkgname-common::noarch
# - CVE-2021-34825
build() {
- mkdir build
-
- cd build
-
- CXXFLAGS="$CXXFLAGS -D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -fPIE -pie -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now" \
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr/ \
- -DCMAKE_BUILD_TYPE="Release" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
-DWANT_CORE=ON \
-DWANT_MONO=ON \
-DWANT_QTCLIENT=ON \
-DWITH_KDE=0 \
- -DWITH_WEBKIT=OFF \
- ../
- make
+ -DWITH_WEBKIT=OFF
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install/fast
- find "$pkgdir"
+ # install monolithic client by default
+ depends="$pkgname-mono"
+ DESTDIR="$pkgdir" cmake --install build
install -Dm0644 "$srcdir"/quasselcore.confd \
"$pkgdir"/etc/conf.d/quasselcore
@@ -57,60 +71,69 @@ package() {
}
common() {
- pkgdesc="Quassel common/shared files"
-
- mkdir -p "$subpkgdir"/usr/share
- mv \
- "$pkgdir"/usr/share/icons \
- "$pkgdir"/usr/share/$pkgname \
- "$subpkgdir"/usr/share
-
- rmdir 2>/dev/null "$pkgdir"/usr/share/icons || :
- rmdir 2>/dev/null "$pkgdir"/usr/share/$pkgname || :
- rmdir 2>/dev/null "$pkgdir"/usr/share || :
- rmdir 2>/dev/null "$pkgdir"/usr || :
+ pkgdesc="Distributed IRC client - common/shared files"
+
+ amove usr/share/icons \
+ usr/share/$pkgname
}
-server() {
- pkgdesc="Quassel core / server"
- depends="qt5-qtbase-postgresql qt5-qtbase-sqlite"
+core() {
+ pkgdesc="Distributed IRC client - server"
+ depends="qt5-qtbase-postgresql qt5-qtbase-sqlite quassel-common=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/quasselcore "$subpkgdir"/usr/bin/
+ amove usr/bin/quasselcore
}
-server_openrc() {
- pkgdesc="Quassel core / server"
+core_openrc() {
+ pkgdesc="Distributed IRC client - server (OpenRC init scripts)"
+ install_if="openrc $pkgname-core=$pkgver-r$pkgrel"
default_openrc
- rmdir 2>/dev/null "$pkgdir"/etc || :
-
- install_if="openrc $pkgname-core=$pkgver-r$pkgrel"
}
client() {
- pkgdesc="Quassel client"
+ pkgdesc="Distributed IRC client - client"
+ depends="quassel-common=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/bin \
- "$subpkgdir"/usr/share/applications
- mv "$pkgdir"/usr/bin/quasselclient "$subpkgdir"/usr/bin/
- mv "$pkgdir"/usr/share/applications/quasselclient.desktop \
- "$subpkgdir"/usr/share/applications
+ amove usr/bin/quasselclient \
+ usr/share/applications/quasselclient.desktop
}
mono() {
- pkgdesc="Quassel monolithic IRC client"
-
- mkdir -p "$subpkgdir"/usr/bin \
- "$subpkgdir"/usr/share/applications
- mv "$pkgdir"/usr/bin/quassel "$subpkgdir"/usr/bin/
- mv "$pkgdir"/usr/share/applications/quassel.desktop \
- "$subpkgdir"/usr/share/applications
-
- rmdir 2>/dev/null "$pkgdir"/usr/share/applications || :
- rmdir 2>/dev/null "$pkgdir"/usr/share || :
- rmdir 2>/dev/null "$pkgdir"/usr/bin || :
- rmdir 2>/dev/null "$pkgdir"/usr || :
+ pkgdesc="Distributed IRC client - monolithic all-in-one package"
+
+ amove usr/bin/quassel \
+ usr/share/applications/quassel.desktop
+}
+
+core_libs() {
+ pkgdesc="Distributed IRC client - server libraries"
+
+ amove usr/lib/libquassel-core.so*
+}
+
+qtui_libs() {
+ pkgdesc="Distributed IRC client - qtui libraries"
+
+ amove usr/lib/libquassel-qtui.so*
+}
+
+client_libs() {
+ pkgdesc="Distributed IRC client - client libraries"
+
+ amove usr/lib/libquassel-client.so*
+}
+
+common_libs() {
+ pkgdesc="Distributed IRC client - common libraries"
+
+ amove usr/lib/libquassel-common.so*
+}
+
+uisupport_libs() {
+ pkgdesc="Distributed IRC client - uisupport libraries"
+
+ amove usr/lib/libquassel-uisupport.so*
}
sha512sums="