commit:     f0ae631080260122958819b093615dc7f93cab33
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  5 13:26:56 2021 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Fri Nov  5 13:33:07 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0ae6310

gnome-extra/evolution-data-server: bump to 3.42.1

Package-Manager: Portage-3.0.20, Repoman-3.0.2
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 gnome-extra/evolution-data-server/Manifest         |   1 +
 .../evolution-data-server-3.42.1.ebuild            | 158 +++++++++++++++++++++
 .../files/3.42.1-fix-build.patch                   |  28 ++++
 .../files/3.42.1-fix-calendar-crash.patch          |  64 +++++++++
 4 files changed, 251 insertions(+)

diff --git a/gnome-extra/evolution-data-server/Manifest 
b/gnome-extra/evolution-data-server/Manifest
index b1126d05a0c..b26a9057c85 100644
--- a/gnome-extra/evolution-data-server/Manifest
+++ b/gnome-extra/evolution-data-server/Manifest
@@ -1,3 +1,4 @@
 DIST evolution-data-server-3.40.3.tar.xz 4625980 BLAKE2B 
7b344c1bb279367c9eca136b9f4689f049ba126b9ffd6ba1a1a819c5f86db66bae4082ebab83c8895831e97a4ed4384bb923584146b6081ffbbc24c327d5f3d4
 SHA512 
ba5db9850d68c23ddc77e53ccb2500f613dcdc5689234b3365edbc97eb6e73c4f15c13df5dee0b2aab1d0af5a22d543c6aeb814c4abfe1dc652b46712c0e2e79
 DIST evolution-data-server-3.40.4.tar.xz 4622640 BLAKE2B 
93a4570da53fb34b496cd471e5daff07fa044ed5c230f7de85276ab9aacd0f2e6c6f749a0d63d076fc192e695f68a0c451a7a6573621ff5092cd5ea6a9302ee2
 SHA512 
664c2d41b6f212e6ddef554767ca651e4179ce861898cb11ed373f30473c2a1a3a47191ae504be7d38beb0e721782564b70f5f519a3184216a02be1bd89678b5
 DIST evolution-data-server-3.42.0.tar.xz 4614616 BLAKE2B 
801e1a71c10af4f7c8b2e8478631ed76269170b01bb30dca296da7b151041981e0f45f9a69fe4873f503d0d38b7e6fdf50c6a7006d001af7d16663478a102b6e
 SHA512 
44e4a45ac7779fd5a336aa84b8e23926cc861c1a3d1ca5629a4997a8783415eca1f6bdcef4fa6ed10e5417a64eef31dbe9edbf027954a653f4c22e25c90f16c1
+DIST evolution-data-server-3.42.1.tar.xz 4621996 BLAKE2B 
d5d163503b34cad06d03eb7711b3de4d2b0101ac7718f41e060efcc8189a0aa3654d435015a6c06f87e922e320c4032d8e1d31280095989f45d38744e92b85df
 SHA512 
8e0673af07b00e1d658b98b811312a57368e634d7a1e11ece6af02794d8e4743cd496dbd4ea9e6a1f1c8b0b55a242296f36342f5827521e903794814bcaacff8

diff --git 
a/gnome-extra/evolution-data-server/evolution-data-server-3.42.1.ebuild 
b/gnome-extra/evolution-data-server/evolution-data-server-3.42.1.ebuild
new file mode 100644
index 00000000000..d13cfee8d20
--- /dev/null
+++ b/gnome-extra/evolution-data-server/evolution-data-server-3.42.1.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+VALA_USE_DEPEND="vapigen"
+
+inherit cmake db-use flag-o-matic gnome2 systemd vala virtualx
+
+DESCRIPTION="Evolution groupware backend"
+HOMEPAGE="https://wiki.gnome.org/Apps/Evolution";
+
+# Note: explicitly "|| ( LGPL-2 LGPL-3 )", not "LGPL-2+".
+LICENSE="|| ( LGPL-2 LGPL-3 ) BSD Sleepycat"
+SLOT="0/63-26-20" # subslot = libcamel-1.2/libedataserver-1.2/libebook-1.2.so 
soname version
+
+IUSE="berkdb +gnome-online-accounts +gtk gtk-doc +introspection ipv6 ldap 
kerberos oauth vala +weather"
+REQUIRED_USE="vala? ( introspection )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 
~amd64-linux ~x86-linux ~x86-solaris"
+
+# gdata-0.17.7 soft required for new gdata_feed_get_next_page_token API to 
handle more than 100 google tasks
+# berkdb needed only for migrating old addressbook data from <3.13 versions, 
bug #519512
+# glib-2.70 for build-time optional GPowerProfileMonitor
+gdata_depend=">=dev-libs/libgdata-0.17.7:="
+RDEPEND="
+       >=app-crypt/gcr-3.4
+       >=app-crypt/libsecret-0.5[crypt]
+       >=dev-db/sqlite-3.7.17:=
+       >=dev-libs/glib-2.70:2
+       >=dev-libs/libical-3.0.8:=[glib,introspection?]
+       >=dev-libs/libxml2-2
+       >=dev-libs/nspr-4.4:=
+       >=dev-libs/nss-3.9:=
+       >=net-libs/libsoup-2.58:2.4
+
+       dev-libs/icu:=
+       sys-libs/zlib:=
+       virtual/libiconv
+
+       berkdb? ( >=sys-libs/db-4:= )
+       gtk? (
+               >=app-crypt/gcr-3.4[gtk]
+               >=x11-libs/gtk+-3.16:3
+               >=media-libs/libcanberra-0.25[gtk3]
+       )
+       oauth? (
+               >=dev-libs/json-glib-1.0.4
+               >=net-libs/webkit-gtk-2.28.0:4
+               ${gdata_depend}
+       )
+       gnome-online-accounts? (
+               >=net-libs/gnome-online-accounts-3.8:=
+               ${gdata_depend} )
+       introspection? ( >=dev-libs/gobject-introspection-0.9.12:= )
+       kerberos? ( virtual/krb5:= )
+       ldap? ( >=net-nds/openldap-2:= )
+       weather? ( >=dev-libs/libgweather-3.10:2= )
+"
+DEPEND="${RDEPEND}
+       vala? ( $(vala_depend)
+               net-libs/libsoup:2.4[vala]
+               dev-libs/libical[vala]
+               oauth? ( dev-libs/libgdata[vala] )
+               gnome-online-accounts? ( dev-libs/libgdata[vala] )
+       )
+"
+BDEPEND="
+       dev-util/gdbus-codegen
+       dev-util/glib-utils
+       dev-util/gperf
+       gtk-doc? ( >=dev-util/gtk-doc-1.14
+               app-text/docbook-xml-dtd:4.1.2 )
+       >=dev-util/intltool-0.35.5
+       >=sys-devel/gettext-0.18.3
+       virtual/pkgconfig
+"
+
+# Some tests fail due to missing locales.
+# Also, dbus tests are flaky, bugs #397975 #501834
+# It looks like a nightmare to disable those for now.
+RESTRICT="test !test? ( test )"
+
+# global scope PATCHES or DOCS array mustn't be used due to double 
default_src_prepare call
+src_prepare() {
+       use vala && vala_src_prepare
+       cmake_src_prepare
+       gnome2_src_prepare
+
+       eapply "${FILESDIR}"/3.36.5-gtk-doc-1.32-compat.patch
+       # From gnome-41 branch:
+       eapply "${FILESDIR}"/${PV}-fix-build.patch
+       eapply "${FILESDIR}"/${PV}-fix-calendar-crash.patch
+
+       # Make CMakeLists versioned vala enabled
+       sed -e "s;\(find_program(VALAC\) valac);\1 ${VALAC});" \
+               -e "s;\(find_program(VAPIGEN\) vapigen);\1 ${VAPIGEN});" \
+               -i "${S}"/CMakeLists.txt || die
+}
+
+src_configure() {
+       # /usr/include/db.h is always db-1 on FreeBSD
+       # so include the right dir in CPPFLAGS
+       use berkdb && append-cppflags "-I$(db_includedir)"
+
+       local google_enable
+       if use oauth || use gnome-online-accounts; then
+               google_enable="ON"
+       else
+               google_enable="OFF"
+       fi
+
+       # phonenumber does not exist in tree
+       local mycmakeargs=(
+               -DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
+               -DENABLE_GTK_DOC=$(usex gtk-doc)
+               -DWITH_PRIVATE_DOCS=$(usex gtk-doc)
+               -DENABLE_SCHEMAS_COMPILE=OFF
+               -DENABLE_INTROSPECTION=$(usex introspection)
+               -DWITH_KRB5=$(usex kerberos)
+               -DWITH_KRB5_INCLUDES=$(usex kerberos "${EPREFIX}"/usr "")
+               -DWITH_KRB5_LIBS=$(usex kerberos "${EPREFIX}"/usr/$(get_libdir) 
"")
+               -DWITH_OPENLDAP=$(usex ldap)
+               -DWITH_PHONENUMBER=OFF
+               -DENABLE_SMIME=ON
+               -DENABLE_GTK=$(usex gtk)
+               -DENABLE_CANBERRA=$(usex gtk)
+               -DENABLE_OAUTH2=$(usex oauth)
+               -DENABLE_EXAMPLES=OFF
+               -DENABLE_GOA=$(usex gnome-online-accounts)
+               -DWITH_LIBDB=$(usex berkdb "${EPREFIX}"/usr OFF)
+               # ENABLE_BACKTRACES requires libdwarf ?
+               -DENABLE_IPV6=$(usex ipv6)
+               -DENABLE_WEATHER=$(usex weather)
+               -DENABLE_GOOGLE=${google_enable}
+               -DENABLE_LARGEFILE=ON
+               -DENABLE_VALA_BINDINGS=$(usex vala)
+       )
+
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+}
+
+src_test() {
+       virtx cmake_src_test
+}
+
+src_install() {
+       cmake_src_install
+
+       if use ldap; then
+               insinto /etc/openldap/schema
+               doins "${FILESDIR}"/calentry.schema
+               dosym ../../../usr/share/${PN}/evolutionperson.schema 
/etc/openldap/schema/evolutionperson.schema
+       fi
+}

diff --git a/gnome-extra/evolution-data-server/files/3.42.1-fix-build.patch 
b/gnome-extra/evolution-data-server/files/3.42.1-fix-build.patch
new file mode 100644
index 00000000000..a0fde022765
--- /dev/null
+++ b/gnome-extra/evolution-data-server/files/3.42.1-fix-build.patch
@@ -0,0 +1,28 @@
+From c802adfdc5e16f3fc210e8e83bb3b972cd8fdc86 Mon Sep 17 00:00:00 2001
+From: Milan Crha <[email protected]>
+Date: Mon, 1 Nov 2021 16:10:13 +0100
+Subject: [PATCH 1/2] I#364 - Camel: Add a missing header include into
+ camel-hostname-utils.c
+
+Change suggested by Rainer Herzog.
+
+Closes https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/364
+---
+ src/camel/camel-hostname-utils.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/camel/camel-hostname-utils.c 
b/src/camel/camel-hostname-utils.c
+index 723c81d14..8d8d179e6 100644
+--- a/src/camel/camel-hostname-utils.c
++++ b/src/camel/camel-hostname-utils.c
+@@ -24,6 +24,7 @@
+ 
+ #include <unicode/uchar.h>
+ #include <unicode/uscript.h>
++#include <unicode/ustring.h>
+ 
+ #include "camel-string-utils.h"
+ #include "camel-hostname-utils.h"
+-- 
+2.32.0
+

diff --git 
a/gnome-extra/evolution-data-server/files/3.42.1-fix-calendar-crash.patch 
b/gnome-extra/evolution-data-server/files/3.42.1-fix-calendar-crash.patch
new file mode 100644
index 00000000000..011e8bd0b99
--- /dev/null
+++ b/gnome-extra/evolution-data-server/files/3.42.1-fix-calendar-crash.patch
@@ -0,0 +1,64 @@
+From 7cbcdd3974abf7135617b1e9a230b4a9f5d829c6 Mon Sep 17 00:00:00 2001
+From: Milan Crha <[email protected]>
+Date: Thu, 4 Nov 2021 17:00:20 +0100
+Subject: [PATCH 2/2] I#365 - Calendar: Crash on local calandar file change
+
+Closes https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/365
+---
+ src/calendar/backends/file/e-cal-backend-file.c | 1 +
+ src/calendar/backends/http/e-cal-backend-http.c | 7 ++++++-
+ src/calendar/libecal/e-cal-component.c          | 2 ++
+ 3 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/src/calendar/backends/file/e-cal-backend-file.c 
b/src/calendar/backends/file/e-cal-backend-file.c
+index f40bf807c..79ae53632 100644
+--- a/src/calendar/backends/file/e-cal-backend-file.c
++++ b/src/calendar/backends/file/e-cal-backend-file.c
+@@ -904,6 +904,7 @@ scan_vcalendar (ECalBackendFile *cbfile)
+                       if (e_cal_component_set_icalcomponent (comp, icomp)) {
+                               /* Thus it's not freed while being used in the 
'comp' */
+                               g_object_ref (icomp);
++                              i_cal_object_set_owner (I_CAL_OBJECT (icomp), 
G_OBJECT (priv->vcalendar));
+ 
+                               check_dup_uid (cbfile, comp);
+ 
+diff --git a/src/calendar/backends/http/e-cal-backend-http.c 
b/src/calendar/backends/http/e-cal-backend-http.c
+index a7e930ca0..bfe9b4554 100644
+--- a/src/calendar/backends/http/e-cal-backend-http.c
++++ b/src/calendar/backends/http/e-cal-backend-http.c
+@@ -477,13 +477,18 @@ ecb_http_get_changes_sync (ECalMetaBackend *meta_backend,
+       } else {
+               iter = i_cal_component_begin_component (maincomp, 
I_CAL_VCALENDAR_COMPONENT);
+               subcomp = i_cal_comp_iter_deref (iter);
++              if (subcomp)
++                      i_cal_object_set_owner (I_CAL_OBJECT (subcomp), 
G_OBJECT (maincomp));
+       }
+ 
+       while (subcomp && success) {
+               ICalComponent *next_subcomp = NULL;
+ 
+-              if (iter)
++              if (iter) {
+                       next_subcomp = i_cal_comp_iter_next (iter);
++                      if (next_subcomp)
++                              i_cal_object_set_owner (I_CAL_OBJECT 
(next_subcomp), G_OBJECT (maincomp));
++              }
+ 
+               if (i_cal_component_isa (subcomp) == I_CAL_VCALENDAR_COMPONENT) 
{
+                       success = e_cal_meta_backend_gather_timezones_sync 
(meta_backend, subcomp, TRUE, cancellable, error);
+diff --git a/src/calendar/libecal/e-cal-component.c 
b/src/calendar/libecal/e-cal-component.c
+index a3dddcc8f..c7629813a 100644
+--- a/src/calendar/libecal/e-cal-component.c
++++ b/src/calendar/libecal/e-cal-component.c
+@@ -95,6 +95,8 @@ foreach_subcomponent (ICalComponent *icalcomp,
+       while (subcomp) {
+               ICalComponent *next_subcomp;
+ 
++              i_cal_object_set_owner (I_CAL_OBJECT (subcomp), G_OBJECT 
(icalcomp));
++
+               next_subcomp = i_cal_comp_iter_next (iter);
+ 
+               if (!func (icalcomp, subcomp, user_data)) {
+-- 
+2.32.0
+

Reply via email to