You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/kde-apps/kopete/kopete-23.04.3.ebuild

177 lines
4.5 KiB

# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ECM_HANDBOOK="forceoptional"
ECM_TEST="forceoptional"
PVCUT=$(ver_cut 1-3)
KFMIN=5.106.0
QTMIN=5.15.9
inherit ecm gear.kde.org
DESCRIPTION="Multi-protocol IM client based on KDE Frameworks"
HOMEPAGE="https://apps.kde.org/kopete/"
LICENSE="GPL-2" # TODO: CHECK
SLOT="5"
KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
IUSE="ssl v4l"
# Available plugins
# addbookmarks: NO DEPS
# alias: NO DEPS (disabled upstream)
# autoreplace: NO DEPS
# contactnotes: NO DEPS
# cryptography: BROKEN (app-crypt/gpgme[cxx,qt5], kde-apps/libkleo:5)
# highlight: NO DEPS
# history: NO DEPS
# latex: virtual/latex as RDEPEND
# nowlistening: NO DEPS
# otr: libotr
# pipes: NO DEPS
# privacy: NO DEPS
# statistics: dev-db/sqlite:3
# texteffect: NO DEPS
# translator: NO DEPS
# urlpicpreview: NO DEPS
# webpresence: libxml2 libxslt
# NOTE: By default we enable all plugins that don't have any dependencies
PLUGINS="+addbookmarks +autoreplace +contactnotes +highlight history latex nowlistening
otr pipes +privacy +statistics +texteffect translator +urlpicpreview webpresence"
# Available protocols
# gadu: net-libs/libgadu @since 4.3
# groupwise: app-crypt/qca:2
# irc: NO DEPS, probably will fail so inform user about it
# meanwhile: net-libs/meanwhile
# telepathy: net-libs/decibel
# testbed: NO DEPS
# winpopup: NO DEPS (we're adding samba as RDEPEND so it works)
# zeroconf (bonjour): NO DEPS
PROTOCOLS="gadu groupwise meanwhile testbed winpopup zeroconf"
# disabled protocols
# irc: NO DEPS
# jingle: media-libs/speex net-libs/ortp DISABLED BY UPSTREAM
# qq: NO DEPS
# telepathy: net-libs/decibel
# sms (until fixed)
# oscar (until fixed: KDE-bug #402647
# xmpp: continuously broken, KDE-bugs #304722, 412228, 457330, 410938, ...
IUSE="${IUSE} ${PLUGINS} ${PROTOCOLS}"
# tests hang, last checked for 4.2.96
RESTRICT="test"
COMMON_DEPEND="
app-crypt/gpgme:=[cxx,qt5]
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtsql-${QTMIN}:5
>=dev-qt/qtwidgets-${QTMIN}:5
>=dev-qt/qtxml-${QTMIN}:5
>=kde-apps/kidentitymanagement-${PVCUT}:5
>=kde-apps/libkleo-${PVCUT}:5
>=kde-frameworks/kcmutils-${KFMIN}:5
>=kde-frameworks/kconfig-${KFMIN}:5
>=kde-frameworks/kcontacts-${KFMIN}:5
>=kde-frameworks/kcoreaddons-${KFMIN}:5
>=kde-frameworks/kcrash-${KFMIN}:5
>=kde-frameworks/kdbusaddons-${KFMIN}:5
>=kde-frameworks/kdelibs4support-${KFMIN}:5
>=kde-frameworks/kemoticons-${KFMIN}:5
>=kde-frameworks/khtml-${KFMIN}:5
>=kde-frameworks/ki18n-${KFMIN}:5
>=kde-frameworks/knotifyconfig-${KFMIN}:5
>=kde-frameworks/kparts-${KFMIN}:5
>=kde-frameworks/ktexteditor-${KFMIN}:5
>=media-libs/phonon-4.11.0[qt5(+)]
x11-libs/libX11
x11-libs/libXScrnSaver
gadu? ( >=net-libs/libgadu-1.8.0[threads] )
groupwise? ( >=app-crypt/qca-2.3.0:2[qt5(+)] )
meanwhile? ( net-libs/meanwhile )
otr? ( >=net-libs/libotr-4.0.0 )
statistics? ( dev-db/sqlite:3 )
v4l? ( media-libs/libv4l )
webpresence? (
dev-libs/libxml2
dev-libs/libxslt
)
zeroconf? (
>=kde-apps/kidentitymanagement-${PVCUT}:5
>=kde-frameworks/kdnssd-${KFMIN}:5
)
"
# jingle? (
# dev-libs/expat
# dev-libs/openssl:0=
# >=media-libs/mediastreamer-2.3.0
# media-libs/speex
# net-libs/libsrtp:0=
# net-libs/ortp:=
# )
# xmpp? (
# >=app-crypt/qca-2.3.0:2[qt5(+)]
# net-dns/libidn:0=
# sys-libs/zlib
# )
RDEPEND="${COMMON_DEPEND}
latex? (
|| (
media-gfx/imagemagick
media-gfx/graphicsmagick[imagemagick]
)
virtual/latex-base
)
ssl? ( >=app-crypt/qca-2.3.0:2[qt5(+),ssl] )
"
# sms? ( app-mobilephone/smssend )
# winpopup? ( net-fs/samba )
# xmpp? ( >=app-crypt/qca-2.3.0:2[qt5(+),ssl?] )
DEPEND="${COMMON_DEPEND}
x11-base/xorg-proto
"
# jingle? ( dev-libs/jsoncpp )
src_prepare() {
ecm_src_prepare
# breaks with oscar disabled, bug 901487
cmake_run_in tests/protocols cmake_comment_add_subdirectory oscar
}
src_configure() {
local x x2
# Handle common stuff
local mycmakeargs=(
-DWITH_qq=OFF
-DDISABLE_VIDEOSUPPORT=$(usex !v4l)
)
# $(cmake_use_find_package jingle LiboRTP)
# $(cmake_use_find_package jingle Mediastreamer)
# $(cmake_use_find_package jingle Speex)
# enable protocols
for x in ${PROTOCOLS}; do
case ${x/+/} in
jingle) x2=libjingle ;;
xmpp) x2=jabber ;;
zeroconf) x2=bonjour ;;
*) x2=${x/+/} ;;
esac
mycmakeargs+=( -DWITH_${x2}=$(usex ${x/+/}) )
done
# disable until fixed:
mycmakeargs+=( -DWITH_{cryptography,jabber,libjingle,oscar,sms}=OFF )
# enable plugins
for x in ${PLUGINS}; do
mycmakeargs+=( -DWITH_${x/+/}=$(usex ${x/+/}) )
done
ecm_src_configure
}