# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit vala meson gnome2-utils optfeature systemd virtualx xdg MY_PN="${PN#gnome-}" MY_P="${MY_PN}-v${PV}" LCU_V="0.2.1" DESCRIPTION="Phone dialer and call handler" HOMEPAGE="https://gitlab.gnome.org/GNOME/calls" GITLAB="https://gitlab.gnome.org" SRC_URI=" ${GITLAB}/GNOME/${MY_PN}/-/archive/v${PV}/${MY_P}.tar.bz2 ${GITLAB}/World/Phosh/libcall-ui/-/archive/v${LCU_V}/libcall-ui-v${LCU_V}.tar.bz2 " S="${WORKDIR}/${MY_P}" LICENSE="CC0-1.0 CC-BY-SA-4.0 GPL-3+ LGPL-2+ LGPL-2.1+" SLOT="0" KEYWORDS="~amd64 ~arm64" IUSE="gtk-doc man" COMMON_DEPEND=" app-crypt/libsecret dev-libs/feedbackd dev-libs/folks:= >=dev-libs/glib-2.74:2 dev-libs/gom dev-libs/libgee:0.8= dev-libs/libpeas:2 gnome-extra/evolution-data-server:=[vala] >=gui-libs/gtk-4.12:4 >=gui-libs/libadwaita-1.5:1 media-libs/gstreamer:1.0 media-sound/callaudiod net-libs/sofia-sip[glib] net-misc/modemmanager:= " RDEPEND="${COMMON_DEPEND} gnome-base/librsvg:2 " DEPEND="${COMMON_DEPEND} test? ( media-libs/gst-plugins-base:1.0 media-libs/gst-plugins-good:1.0 media-plugins/gst-plugins-srtp:1.0 ) " BDEPEND=" $(vala_depend) dev-libs/glib:2 dev-libs/libxml2 dev-util/gdbus-codegen dev-util/glib-utils sys-devel/gettext gtk-doc? ( dev-util/gtk-doc ) man? ( dev-python/docutils ) " src_unpack() { default cd "${S}" || die rmdir subprojects/libcall-ui || die mv "${WORKDIR}"/libcall-ui-v${LCU_V} subprojects/libcall-ui || die } src_prepare() { default vala_setup } src_configure() { local emesonargs=( $(meson_use gtk-doc gtk_doc) $(meson_use man manpages) $(meson_use test tests) -Dsystemd_user_unit_dir="$(systemd_get_userunitdir)" ) meson_src_configure } src_test() { local tests=( calls:call calls:contacts calls:emergency-call-types calls:dbus calls:manager calls:media calls:origin calls:plugins calls:provider calls:sdp-crypto calls:settings calls:srtp calls:ui-call calls:util # TODO: # All tests pass, but the runner doesn't exit and gets timed out #calls:application # TODO: # not ok /Calls/Ringer/accept_call # GLib-GObject-FATAL-CRITICAL: cannot register existing type 'LfbEvent' #calls:ringer # TODO: # hangs at /Calls/SIP/calls_direct_call #calls:sip ) virtx meson_src_test "${tests[@]}" } pkg_postinst() { xdg_pkg_postinst gnome2_schemas_update optfeature "SIP support" "\ media-libs/gst-plugins-base:1.0 \ media-libs/gst-plugins-good:1.0 \ media-plugins/gst-plugins-srtp:1.0 \ " } pkg_postrm() { xdg_pkg_postrm gnome2_schemas_update }