commit:     0a5a81b94069143e452d8196d659b1d8a8565475
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar  4 05:44:19 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar  4 05:44:43 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a5a81b9

net-im/dino: fix modern C issues

Closes: https://bugs.gentoo.org/926073
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-im/dino/dino-0.4.3-r1.ebuild       | 103 +++++++++++++++++++++++++++++++++
 net-im/dino/files/dino-0.4.3-c99.patch |  57 ++++++++++++++++++
 2 files changed, 160 insertions(+)

diff --git a/net-im/dino/dino-0.4.3-r1.ebuild b/net-im/dino/dino-0.4.3-r1.ebuild
new file mode 100644
index 000000000000..0badcf1fd992
--- /dev/null
+++ b/net-im/dino/dino-0.4.3-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake vala xdg readme.gentoo-r1
+
+DESCRIPTION="Modern Jabber/XMPP Client using GTK+/Vala"
+HOMEPAGE="https://dino.im";
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+gpg +http +omemo +notification-sound +rtp test"
+RESTRICT="!test? ( test )"
+
+MY_REPO_URI="https://github.com/dino/dino";
+if [[ ${PV} == "9999" ]]; then
+       EGIT_REPO_URI="${MY_REPO_URI}.git"
+       inherit git-r3
+else
+       KEYWORDS="~amd64 ~arm64"
+       SRC_URI="${MY_REPO_URI}/releases/download/v${PV}/${P}.tar.gz"
+fi
+
+RDEPEND="
+       dev-db/sqlite:3
+       dev-libs/glib:2
+       dev-libs/icu:=
+       dev-libs/libgee:0.8=
+       gui-libs/gtk:4
+       >=gui-libs/libadwaita-1.2.0:1[vala]
+       media-libs/graphene
+       net-libs/glib-networking
+       net-libs/gnutls:=
+       >=net-libs/libnice-0.1.15
+       net-libs/libsignal-protocol-c
+       net-libs/libsrtp:2=
+       x11-libs/cairo
+       x11-libs/gdk-pixbuf:2
+       x11-libs/pango
+       gpg? ( app-crypt/gpgme:= )
+       http? ( net-libs/libsoup:2.4 )
+       notification-sound? ( media-libs/libcanberra:0[sound] )
+       omemo? (
+               dev-libs/libgcrypt:=
+               media-gfx/qrencode:=
+       )
+       rtp? (
+               media-libs/gst-plugins-base:1.0
+               media-libs/gstreamer:1.0
+               media-libs/webrtc-audio-processing:0
+       )
+"
+DEPEND="
+       ${RDEPEND}
+       media-libs/gst-plugins-base
+       media-libs/gstreamer
+"
+BDEPEND="
+       sys-devel/gettext
+       $(vala_depend)
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-c99.patch
+)
+
+src_configure() {
+       vala_setup
+
+       local disabled_plugins=(
+               $(usex gpg "" "openpgp")
+               $(usex omemo "" "omemo")
+               $(usex http  "" "http-files")
+               $(usex rtp "" rtp)
+       )
+       local enabled_plugins=(
+               $(usex notification-sound "notification-sound" "")
+       )
+       local mycmakeargs=(
+               "-DENABLED_PLUGINS=$(local IFS=";"; echo 
"${enabled_plugins[*]}")"
+               "-DDISABLED_PLUGINS=$(local IFS=";"; echo 
"${disabled_plugins[*]}")"
+               "-DVALA_EXECUTABLE=${VALAC}"
+               "-DSOUP_VERSION=2"
+               "-DBUILD_TESTS=$(usex test)"
+       )
+
+       cmake_src_configure
+}
+
+src_test() {
+       "${BUILD_DIR}"/xmpp-vala-test || die
+}
+
+src_install() {
+       cmake_src_install
+       readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+       readme.gentoo_print_elog
+}

diff --git a/net-im/dino/files/dino-0.4.3-c99.patch 
b/net-im/dino/files/dino-0.4.3-c99.patch
new file mode 100644
index 000000000000..d21ff5e4adec
--- /dev/null
+++ b/net-im/dino/files/dino-0.4.3-c99.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/926073
+https://github.com/dino/dino/commit/0c45387bf903e5b0d02502d27642dd2a78aa6539
+
+From 0c45387bf903e5b0d02502d27642dd2a78aa6539 Mon Sep 17 00:00:00 2001
+From: fiaxh <[email protected]>
+Date: Sat, 7 Oct 2023 13:56:38 +0200
+Subject: [PATCH] Fix implicit-function-declaration compiler warnings
+
+--- a/xmpp-vala/src/module/xep/0384_omemo/omemo_encryptor.vala
++++ b/xmpp-vala/src/module/xep/0384_omemo/omemo_encryptor.vala
+@@ -72,27 +72,27 @@ namespace Xmpp.Xep.Omemo {
+     }
+ 
+     public class EncryptionResult {
+-        public int lost { get; internal set; }
+-        public int success { get; internal set; }
+-        public int unknown { get; internal set; }
+-        public int failure { get; internal set; }
++        public int lost { get; set; }
++        public int success { get; set; }
++        public int unknown { get; set; }
++        public int failure { get; set; }
+     }
+ 
+     public class EncryptState {
+-        public bool encrypted { get; internal set; }
+-        public int other_devices { get; internal set; }
+-        public int other_success { get; internal set; }
+-        public int other_lost { get; internal set; }
+-        public int other_unknown { get; internal set; }
+-        public int other_failure { get; internal set; }
+-        public int other_waiting_lists { get; internal set; }
+-
+-        public int own_devices { get; internal set; }
+-        public int own_success { get; internal set; }
+-        public int own_lost { get; internal set; }
+-        public int own_unknown { get; internal set; }
+-        public int own_failure { get; internal set; }
+-        public bool own_list { get; internal set; }
++        public bool encrypted { get; set; }
++        public int other_devices { get; set; }
++        public int other_success { get; set; }
++        public int other_lost { get; set; }
++        public int other_unknown { get; set; }
++        public int other_failure { get; set; }
++        public int other_waiting_lists { get; set; }
++
++        public int own_devices { get; set; }
++        public int own_success { get; set; }
++        public int own_lost { get; set; }
++        public int own_unknown { get; set; }
++        public int own_failure { get; set; }
++        public bool own_list { get; set; }
+ 
+         public void add_result(EncryptionResult enc_res, bool own) {
+             if (own) {
+

Reply via email to