[evolution-data-server/gnome-3-18] 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/gnome-3-18] Use icaltzutil_set_exact_vtimezones_support(), if available
- Date: Wed, 20 Jan 2016 21:11:17 +0000 (UTC)
commit c85a6f125ae9bcab916c8d1771f623e46f6da6ff
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 57f897f..6e446f3 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 9d9c311..3ae8a4f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1511,19 +1511,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 50ae308..49088a0 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>
@@ -83,6 +81,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 ();
server = e_data_cal_factory_new (NULL, &error);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]