Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: gnome-extra/evolution-data-server/, gnome-extra/evolution-data-server/files/
Date: Fri, 05 Nov 2021 13:36:21
Message-Id: 1636119187.f0ae631080260122958819b093615dc7f93cab33.leio@gentoo
1 commit: f0ae631080260122958819b093615dc7f93cab33
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Fri Nov 5 13:26:56 2021 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Fri Nov 5 13:33:07 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0ae6310
7
8 gnome-extra/evolution-data-server: bump to 3.42.1
9
10 Package-Manager: Portage-3.0.20, Repoman-3.0.2
11 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
12
13 gnome-extra/evolution-data-server/Manifest | 1 +
14 .../evolution-data-server-3.42.1.ebuild | 158 +++++++++++++++++++++
15 .../files/3.42.1-fix-build.patch | 28 ++++
16 .../files/3.42.1-fix-calendar-crash.patch | 64 +++++++++
17 4 files changed, 251 insertions(+)
18
19 diff --git a/gnome-extra/evolution-data-server/Manifest b/gnome-extra/evolution-data-server/Manifest
20 index b1126d05a0c..b26a9057c85 100644
21 --- a/gnome-extra/evolution-data-server/Manifest
22 +++ b/gnome-extra/evolution-data-server/Manifest
23 @@ -1,3 +1,4 @@
24 DIST evolution-data-server-3.40.3.tar.xz 4625980 BLAKE2B 7b344c1bb279367c9eca136b9f4689f049ba126b9ffd6ba1a1a819c5f86db66bae4082ebab83c8895831e97a4ed4384bb923584146b6081ffbbc24c327d5f3d4 SHA512 ba5db9850d68c23ddc77e53ccb2500f613dcdc5689234b3365edbc97eb6e73c4f15c13df5dee0b2aab1d0af5a22d543c6aeb814c4abfe1dc652b46712c0e2e79
25 DIST evolution-data-server-3.40.4.tar.xz 4622640 BLAKE2B 93a4570da53fb34b496cd471e5daff07fa044ed5c230f7de85276ab9aacd0f2e6c6f749a0d63d076fc192e695f68a0c451a7a6573621ff5092cd5ea6a9302ee2 SHA512 664c2d41b6f212e6ddef554767ca651e4179ce861898cb11ed373f30473c2a1a3a47191ae504be7d38beb0e721782564b70f5f519a3184216a02be1bd89678b5
26 DIST evolution-data-server-3.42.0.tar.xz 4614616 BLAKE2B 801e1a71c10af4f7c8b2e8478631ed76269170b01bb30dca296da7b151041981e0f45f9a69fe4873f503d0d38b7e6fdf50c6a7006d001af7d16663478a102b6e SHA512 44e4a45ac7779fd5a336aa84b8e23926cc861c1a3d1ca5629a4997a8783415eca1f6bdcef4fa6ed10e5417a64eef31dbe9edbf027954a653f4c22e25c90f16c1
27 +DIST evolution-data-server-3.42.1.tar.xz 4621996 BLAKE2B d5d163503b34cad06d03eb7711b3de4d2b0101ac7718f41e060efcc8189a0aa3654d435015a6c06f87e922e320c4032d8e1d31280095989f45d38744e92b85df SHA512 8e0673af07b00e1d658b98b811312a57368e634d7a1e11ece6af02794d8e4743cd496dbd4ea9e6a1f1c8b0b55a242296f36342f5827521e903794814bcaacff8
28
29 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
30 new file mode 100644
31 index 00000000000..d13cfee8d20
32 --- /dev/null
33 +++ b/gnome-extra/evolution-data-server/evolution-data-server-3.42.1.ebuild
34 @@ -0,0 +1,158 @@
35 +# Copyright 1999-2021 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=7
39 +VALA_USE_DEPEND="vapigen"
40 +
41 +inherit cmake db-use flag-o-matic gnome2 systemd vala virtualx
42 +
43 +DESCRIPTION="Evolution groupware backend"
44 +HOMEPAGE="https://wiki.gnome.org/Apps/Evolution"
45 +
46 +# Note: explicitly "|| ( LGPL-2 LGPL-3 )", not "LGPL-2+".
47 +LICENSE="|| ( LGPL-2 LGPL-3 ) BSD Sleepycat"
48 +SLOT="0/63-26-20" # subslot = libcamel-1.2/libedataserver-1.2/libebook-1.2.so soname version
49 +
50 +IUSE="berkdb +gnome-online-accounts +gtk gtk-doc +introspection ipv6 ldap kerberos oauth vala +weather"
51 +REQUIRED_USE="vala? ( introspection )"
52 +
53 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
54 +
55 +# gdata-0.17.7 soft required for new gdata_feed_get_next_page_token API to handle more than 100 google tasks
56 +# berkdb needed only for migrating old addressbook data from <3.13 versions, bug #519512
57 +# glib-2.70 for build-time optional GPowerProfileMonitor
58 +gdata_depend=">=dev-libs/libgdata-0.17.7:="
59 +RDEPEND="
60 + >=app-crypt/gcr-3.4
61 + >=app-crypt/libsecret-0.5[crypt]
62 + >=dev-db/sqlite-3.7.17:=
63 + >=dev-libs/glib-2.70:2
64 + >=dev-libs/libical-3.0.8:=[glib,introspection?]
65 + >=dev-libs/libxml2-2
66 + >=dev-libs/nspr-4.4:=
67 + >=dev-libs/nss-3.9:=
68 + >=net-libs/libsoup-2.58:2.4
69 +
70 + dev-libs/icu:=
71 + sys-libs/zlib:=
72 + virtual/libiconv
73 +
74 + berkdb? ( >=sys-libs/db-4:= )
75 + gtk? (
76 + >=app-crypt/gcr-3.4[gtk]
77 + >=x11-libs/gtk+-3.16:3
78 + >=media-libs/libcanberra-0.25[gtk3]
79 + )
80 + oauth? (
81 + >=dev-libs/json-glib-1.0.4
82 + >=net-libs/webkit-gtk-2.28.0:4
83 + ${gdata_depend}
84 + )
85 + gnome-online-accounts? (
86 + >=net-libs/gnome-online-accounts-3.8:=
87 + ${gdata_depend} )
88 + introspection? ( >=dev-libs/gobject-introspection-0.9.12:= )
89 + kerberos? ( virtual/krb5:= )
90 + ldap? ( >=net-nds/openldap-2:= )
91 + weather? ( >=dev-libs/libgweather-3.10:2= )
92 +"
93 +DEPEND="${RDEPEND}
94 + vala? ( $(vala_depend)
95 + net-libs/libsoup:2.4[vala]
96 + dev-libs/libical[vala]
97 + oauth? ( dev-libs/libgdata[vala] )
98 + gnome-online-accounts? ( dev-libs/libgdata[vala] )
99 + )
100 +"
101 +BDEPEND="
102 + dev-util/gdbus-codegen
103 + dev-util/glib-utils
104 + dev-util/gperf
105 + gtk-doc? ( >=dev-util/gtk-doc-1.14
106 + app-text/docbook-xml-dtd:4.1.2 )
107 + >=dev-util/intltool-0.35.5
108 + >=sys-devel/gettext-0.18.3
109 + virtual/pkgconfig
110 +"
111 +
112 +# Some tests fail due to missing locales.
113 +# Also, dbus tests are flaky, bugs #397975 #501834
114 +# It looks like a nightmare to disable those for now.
115 +RESTRICT="test !test? ( test )"
116 +
117 +# global scope PATCHES or DOCS array mustn't be used due to double default_src_prepare call
118 +src_prepare() {
119 + use vala && vala_src_prepare
120 + cmake_src_prepare
121 + gnome2_src_prepare
122 +
123 + eapply "${FILESDIR}"/3.36.5-gtk-doc-1.32-compat.patch
124 + # From gnome-41 branch:
125 + eapply "${FILESDIR}"/${PV}-fix-build.patch
126 + eapply "${FILESDIR}"/${PV}-fix-calendar-crash.patch
127 +
128 + # Make CMakeLists versioned vala enabled
129 + sed -e "s;\(find_program(VALAC\) valac);\1 ${VALAC});" \
130 + -e "s;\(find_program(VAPIGEN\) vapigen);\1 ${VAPIGEN});" \
131 + -i "${S}"/CMakeLists.txt || die
132 +}
133 +
134 +src_configure() {
135 + # /usr/include/db.h is always db-1 on FreeBSD
136 + # so include the right dir in CPPFLAGS
137 + use berkdb && append-cppflags "-I$(db_includedir)"
138 +
139 + local google_enable
140 + if use oauth || use gnome-online-accounts; then
141 + google_enable="ON"
142 + else
143 + google_enable="OFF"
144 + fi
145 +
146 + # phonenumber does not exist in tree
147 + local mycmakeargs=(
148 + -DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
149 + -DENABLE_GTK_DOC=$(usex gtk-doc)
150 + -DWITH_PRIVATE_DOCS=$(usex gtk-doc)
151 + -DENABLE_SCHEMAS_COMPILE=OFF
152 + -DENABLE_INTROSPECTION=$(usex introspection)
153 + -DWITH_KRB5=$(usex kerberos)
154 + -DWITH_KRB5_INCLUDES=$(usex kerberos "${EPREFIX}"/usr "")
155 + -DWITH_KRB5_LIBS=$(usex kerberos "${EPREFIX}"/usr/$(get_libdir) "")
156 + -DWITH_OPENLDAP=$(usex ldap)
157 + -DWITH_PHONENUMBER=OFF
158 + -DENABLE_SMIME=ON
159 + -DENABLE_GTK=$(usex gtk)
160 + -DENABLE_CANBERRA=$(usex gtk)
161 + -DENABLE_OAUTH2=$(usex oauth)
162 + -DENABLE_EXAMPLES=OFF
163 + -DENABLE_GOA=$(usex gnome-online-accounts)
164 + -DWITH_LIBDB=$(usex berkdb "${EPREFIX}"/usr OFF)
165 + # ENABLE_BACKTRACES requires libdwarf ?
166 + -DENABLE_IPV6=$(usex ipv6)
167 + -DENABLE_WEATHER=$(usex weather)
168 + -DENABLE_GOOGLE=${google_enable}
169 + -DENABLE_LARGEFILE=ON
170 + -DENABLE_VALA_BINDINGS=$(usex vala)
171 + )
172 +
173 + cmake_src_configure
174 +}
175 +
176 +src_compile() {
177 + cmake_src_compile
178 +}
179 +
180 +src_test() {
181 + virtx cmake_src_test
182 +}
183 +
184 +src_install() {
185 + cmake_src_install
186 +
187 + if use ldap; then
188 + insinto /etc/openldap/schema
189 + doins "${FILESDIR}"/calentry.schema
190 + dosym ../../../usr/share/${PN}/evolutionperson.schema /etc/openldap/schema/evolutionperson.schema
191 + fi
192 +}
193
194 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
195 new file mode 100644
196 index 00000000000..a0fde022765
197 --- /dev/null
198 +++ b/gnome-extra/evolution-data-server/files/3.42.1-fix-build.patch
199 @@ -0,0 +1,28 @@
200 +From c802adfdc5e16f3fc210e8e83bb3b972cd8fdc86 Mon Sep 17 00:00:00 2001
201 +From: Milan Crha <mcrha@××××××.com>
202 +Date: Mon, 1 Nov 2021 16:10:13 +0100
203 +Subject: [PATCH 1/2] I#364 - Camel: Add a missing header include into
204 + camel-hostname-utils.c
205 +
206 +Change suggested by Rainer Herzog.
207 +
208 +Closes https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/364
209 +---
210 + src/camel/camel-hostname-utils.c | 1 +
211 + 1 file changed, 1 insertion(+)
212 +
213 +diff --git a/src/camel/camel-hostname-utils.c b/src/camel/camel-hostname-utils.c
214 +index 723c81d14..8d8d179e6 100644
215 +--- a/src/camel/camel-hostname-utils.c
216 ++++ b/src/camel/camel-hostname-utils.c
217 +@@ -24,6 +24,7 @@
218 +
219 + #include <unicode/uchar.h>
220 + #include <unicode/uscript.h>
221 ++#include <unicode/ustring.h>
222 +
223 + #include "camel-string-utils.h"
224 + #include "camel-hostname-utils.h"
225 +--
226 +2.32.0
227 +
228
229 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
230 new file mode 100644
231 index 00000000000..011e8bd0b99
232 --- /dev/null
233 +++ b/gnome-extra/evolution-data-server/files/3.42.1-fix-calendar-crash.patch
234 @@ -0,0 +1,64 @@
235 +From 7cbcdd3974abf7135617b1e9a230b4a9f5d829c6 Mon Sep 17 00:00:00 2001
236 +From: Milan Crha <mcrha@××××××.com>
237 +Date: Thu, 4 Nov 2021 17:00:20 +0100
238 +Subject: [PATCH 2/2] I#365 - Calendar: Crash on local calandar file change
239 +
240 +Closes https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/365
241 +---
242 + src/calendar/backends/file/e-cal-backend-file.c | 1 +
243 + src/calendar/backends/http/e-cal-backend-http.c | 7 ++++++-
244 + src/calendar/libecal/e-cal-component.c | 2 ++
245 + 3 files changed, 9 insertions(+), 1 deletion(-)
246 +
247 +diff --git a/src/calendar/backends/file/e-cal-backend-file.c b/src/calendar/backends/file/e-cal-backend-file.c
248 +index f40bf807c..79ae53632 100644
249 +--- a/src/calendar/backends/file/e-cal-backend-file.c
250 ++++ b/src/calendar/backends/file/e-cal-backend-file.c
251 +@@ -904,6 +904,7 @@ scan_vcalendar (ECalBackendFile *cbfile)
252 + if (e_cal_component_set_icalcomponent (comp, icomp)) {
253 + /* Thus it's not freed while being used in the 'comp' */
254 + g_object_ref (icomp);
255 ++ i_cal_object_set_owner (I_CAL_OBJECT (icomp), G_OBJECT (priv->vcalendar));
256 +
257 + check_dup_uid (cbfile, comp);
258 +
259 +diff --git a/src/calendar/backends/http/e-cal-backend-http.c b/src/calendar/backends/http/e-cal-backend-http.c
260 +index a7e930ca0..bfe9b4554 100644
261 +--- a/src/calendar/backends/http/e-cal-backend-http.c
262 ++++ b/src/calendar/backends/http/e-cal-backend-http.c
263 +@@ -477,13 +477,18 @@ ecb_http_get_changes_sync (ECalMetaBackend *meta_backend,
264 + } else {
265 + iter = i_cal_component_begin_component (maincomp, I_CAL_VCALENDAR_COMPONENT);
266 + subcomp = i_cal_comp_iter_deref (iter);
267 ++ if (subcomp)
268 ++ i_cal_object_set_owner (I_CAL_OBJECT (subcomp), G_OBJECT (maincomp));
269 + }
270 +
271 + while (subcomp && success) {
272 + ICalComponent *next_subcomp = NULL;
273 +
274 +- if (iter)
275 ++ if (iter) {
276 + next_subcomp = i_cal_comp_iter_next (iter);
277 ++ if (next_subcomp)
278 ++ i_cal_object_set_owner (I_CAL_OBJECT (next_subcomp), G_OBJECT (maincomp));
279 ++ }
280 +
281 + if (i_cal_component_isa (subcomp) == I_CAL_VCALENDAR_COMPONENT) {
282 + success = e_cal_meta_backend_gather_timezones_sync (meta_backend, subcomp, TRUE, cancellable, error);
283 +diff --git a/src/calendar/libecal/e-cal-component.c b/src/calendar/libecal/e-cal-component.c
284 +index a3dddcc8f..c7629813a 100644
285 +--- a/src/calendar/libecal/e-cal-component.c
286 ++++ b/src/calendar/libecal/e-cal-component.c
287 +@@ -95,6 +95,8 @@ foreach_subcomponent (ICalComponent *icalcomp,
288 + while (subcomp) {
289 + ICalComponent *next_subcomp;
290 +
291 ++ i_cal_object_set_owner (I_CAL_OBJECT (subcomp), G_OBJECT (icalcomp));
292 ++
293 + next_subcomp = i_cal_comp_iter_next (iter);
294 +
295 + if (!func (icalcomp, subcomp, user_data)) {
296 +--
297 +2.32.0
298 +