[evolution-data-server] Use icaltzutil_set_exact_vtimezones_support(), if available
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] Use icaltzutil_set_exact_vtimezones_support(), if available
- Date: Wed, 20 Jan 2016 20:53:09 +0000 (UTC)
commit 2b2a126c538fd1376b4b35c88aa2b9388f511f1c
Author: Milan Crha <mcrha redhat com>
Date: Wed Jan 20 21:52:35 2016 +0100
Use icaltzutil_set_exact_vtimezones_support(), if available
This is a function introduced in libical 2.0.0, which influences
the way libical timezones are returned. The interoperability mode
means to turn exact timezones off, thus they are returned with
RRULE, intead of "expanded".
calendar/libedata-cal/e-data-cal-factory.c | 4 ++
calendar/libedata-cal/e-subprocess-cal-factory.c | 4 ++
configure.ac | 40 +++++++++++++------
.../evolution-calendar-factory.c | 6 ++-
4 files changed, 39 insertions(+), 15 deletions(-)
---
diff --git a/calendar/libedata-cal/e-data-cal-factory.c b/calendar/libedata-cal/e-data-cal-factory.c
index aad7914..21d5153 100644
--- a/calendar/libedata-cal/e-data-cal-factory.c
+++ b/calendar/libedata-cal/e-data-cal-factory.c
@@ -277,6 +277,10 @@ e_data_cal_factory_new (GCancellable *cancellable,
ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN);
#endif
+#ifdef HAVE_ICALTZUTIL_SET_EXACT_VTIMEZONES_SUPPORT
+ icaltzutil_set_exact_vtimezones_support (0);
+#endif
+
/* XXX Pre-load all built-in timezones in libical.
*
* Built-in time zones in libical 0.43 are loaded on demand,
diff --git a/calendar/libedata-cal/e-subprocess-cal-factory.c
b/calendar/libedata-cal/e-subprocess-cal-factory.c
index 0537a46..a0288ac 100644
--- a/calendar/libedata-cal/e-subprocess-cal-factory.c
+++ b/calendar/libedata-cal/e-subprocess-cal-factory.c
@@ -144,6 +144,10 @@ e_subprocess_cal_factory_new (GCancellable *cancellable,
ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN);
#endif
+#ifdef HAVE_ICALTZUTIL_SET_EXACT_VTIMEZONES_SUPPORT
+ icaltzutil_set_exact_vtimezones_support (0);
+#endif
+
/* XXX Pre-load all built-in timezones in libical.
*
* Built-in time zones in libical 0.43 are loaded on demand,
diff --git a/configure.ac b/configure.ac
index 9e410f2..b244ff1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1549,19 +1549,33 @@ dnl *****
AC_SUBST(EVOLUTION_CALENDAR_CFLAGS)
AC_SUBST(EVOLUTION_CALENDAR_LIBS)
- dnl ****************************
- dnl Check for ical_set_unknown_token_handling_setting function
- dnl ****************************
- AC_MSG_CHECKING([ical_set_unknown_token_handling_setting function])
- save_cflags=$CFLAGS; CFLAGS=$EVOLUTION_CALENDAR_CFLAGS
- save_libs=$LIBS; LIBS="$EVOLUTION_CALENDAR_LIBS"
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[#include <libical/ical.h>]],
- [[ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN)]])],
- [AC_DEFINE(HAVE_ICAL_UNKNOWN_TOKEN_HANDLING, 1, [libical provides
ical_set_unknown_token_handling_setting function]) ac_cv_have_iuth=yes],[ac_cv_have_iuth=no])
- CFLAGS=$save_cflags
- LIBS=$save_libs
- AC_MSG_RESULT([$ac_cv_have_iuth])
+dnl ****************************
+dnl Check for ical_set_unknown_token_handling_setting function
+dnl ****************************
+AC_MSG_CHECKING([ical_set_unknown_token_handling_setting function])
+save_cflags=$CFLAGS; CFLAGS=$EVOLUTION_CALENDAR_CFLAGS
+save_libs=$LIBS; LIBS="$EVOLUTION_CALENDAR_LIBS"
+AC_LINK_IFELSE([AC_LANG_PROGRAM(
+ [[#include <libical/ical.h>]],
+ [[ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN)]])],
+ [AC_DEFINE(HAVE_ICAL_UNKNOWN_TOKEN_HANDLING, 1, [libical provides
ical_set_unknown_token_handling_setting function]) ac_cv_have_iuth=yes],[ac_cv_have_iuth=no])
+CFLAGS=$save_cflags
+LIBS=$save_libs
+AC_MSG_RESULT([$ac_cv_have_iuth])
+
+dnl ****************************
+dnl Check for icaltzutil_set_exact_vtimezones_support function
+dnl ****************************
+AC_MSG_CHECKING([icaltzutil_set_exact_vtimezones_support function])
+save_cflags=$CFLAGS; CFLAGS="$EVOLUTION_DATA_SERVER_CFLAGS"
+save_libs=$LIBS; LIBS="$EVOLUTION_DATA_SERVER_LIBS"
+AC_LINK_IFELSE([AC_LANG_PROGRAM(
+ [[#include <libical/ical.h>]],
+ [[icaltzutil_set_exact_vtimezones_support (0)]])],
+ [AC_DEFINE(HAVE_ICALTZUTIL_SET_EXACT_VTIMEZONES_SUPPORT, 1, [libical provides
icaltzutil_set_exact_vtimezones_support function]) ac_cv_have_isevs=yes],[ac_cv_have_isevs=no])
+CFLAGS=$save_cflags
+LIBS=$save_libs
+AC_MSG_RESULT([$ac_cv_have_isevs])
dnl ******************************
dnl Google flags
diff --git a/services/evolution-calendar-factory/evolution-calendar-factory.c
b/services/evolution-calendar-factory/evolution-calendar-factory.c
index ea7d952..76beda4 100644
--- a/services/evolution-calendar-factory/evolution-calendar-factory.c
+++ b/services/evolution-calendar-factory/evolution-calendar-factory.c
@@ -24,9 +24,7 @@
#include <gtk/gtk.h>
#endif
-#ifdef HAVE_ICAL_UNKNOWN_TOKEN_HANDLING
#include <libical/ical.h>
-#endif
#include <libedataserver/libedataserver.h>
#include <libedata-cal/libedata-cal.h>
@@ -84,6 +82,10 @@ main (gint argc,
ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN);
#endif
+#ifdef HAVE_ICALTZUTIL_SET_EXACT_VTIMEZONES_SUPPORT
+ icaltzutil_set_exact_vtimezones_support (0);
+#endif
+
e_gdbus_templates_init_main_thread ();
reload:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]