[packages/libopensync-plugin-google-calendar] - up to 0.36, patched for libopensync 0.39

qboosh qboosh at pld-linux.org
Sun Sep 7 13:24:02 CEST 2025


commit be7f037252137f48b45bf64bc195662068d9493e
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Sep 7 13:26:51 2025 +0200

    - up to 0.36, patched for libopensync 0.39

 ...nc-plugin-google-calendar-libopensync0.39.patch | 433 +++++++++++++++++++++
 libopensync-plugin-google-calendar.spec            |  33 +-
 2 files changed, 453 insertions(+), 13 deletions(-)
---
diff --git a/libopensync-plugin-google-calendar.spec b/libopensync-plugin-google-calendar.spec
index 468d9ab..60ac250 100644
--- a/libopensync-plugin-google-calendar.spec
+++ b/libopensync-plugin-google-calendar.spec
@@ -1,21 +1,23 @@
 Summary:	OpenSync Google Calendar Plugin
 Summary(pl.UTF-8):	Wtyczka Google Calendar do OpenSync
 Name:		libopensync-plugin-google-calendar
-Version:	0.22
-Release:	3
+Version:	0.36
+Release:	1
 License:	GPL v2+
 Group:		Libraries
 # originally http://www.opensync.org/attachment/wiki/download/%{name}-%{version}.tar.bz2?format=raw, dead now
+# resored from http://ftp.iij.ad.jp/pub/linux/momonga/5/Everything/SOURCES/libopensync-plugin-google-calendar-0.36.tar.bz2
 Source0:	%{name}-%{version}.tar.bz2
-# Source0-md5:	e97862bc7479e449206e2a438a159336
+# Source0-md5:	69b382845fb62a58e1976bc74a82dd86
+Patch0:		%{name}-libopensync0.39.patch
 # dead domain
 #URL:		http://www.opensync.org/
 BuildRequires:	glib2-devel >= 2.0
-BuildRequires:	libopensync-devel >= %{version}
-BuildRequires:	libxml2-devel >= 2.0
+BuildRequires:	libopensync-devel >= 0.39
 BuildRequires:	pkgconfig
 BuildRequires:	python-httplib2
 BuildRequires:	sed >= 4.0
+Requires:	libopensync >= 0.39
 Requires:	python-httplib2
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -40,26 +42,31 @@ Ten pakiet zawiera wtyczkę Google Calendar dla szkieletu OpenSync.
 
 %prep
 %setup -q
-%{__sed} -i -e '1s,#!.*python,#!%{__python},' src/google-cal-helper.py
+%patch -P0 -p1
+
+%{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' src/google-cal-helper.py
 
 %build
-%configure
+install -d build
+cd build
+%cmake ..
+
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
+%{__make} -C build install \
 	DESTDIR=$RPM_BUILD_ROOT
 
-rm -f $RPM_BUILD_ROOT%{_libdir}/opensync/plugins/*.la
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
 %doc README
-%attr(755,root,root) %{_libdir}/google-cal-helper
-%attr(755,root,root) %{_libdir}/opensync/plugins/gcalendar.so
-%{_datadir}/opensync/defaults/google-calendar
+%attr(755,root,root) %{_libdir}/libopensync1/google-cal-helper
+%attr(755,root,root) %{_libdir}/libopensync1/plugins/gcalendar.so
+%{_datadir}/libopensync1/capabilities/google-calendar-gcal-2005.xml
+%{_datadir}/libopensync1/defaults/google-calendar
+%{_datadir}/libopensync1/descriptions/google-calendar.xml
diff --git a/libopensync-plugin-google-calendar-libopensync0.39.patch b/libopensync-plugin-google-calendar-libopensync0.39.patch
new file mode 100644
index 0000000..b0da8e8
--- /dev/null
+++ b/libopensync-plugin-google-calendar-libopensync0.39.patch
@@ -0,0 +1,433 @@
+--- libopensync-plugin-google-calendar-0.36/cmake/modules/FindOpenSync.cmake.orig	2008-01-26 18:02:57.000000000 +0100
++++ libopensync-plugin-google-calendar-0.36/cmake/modules/FindOpenSync.cmake	2025-09-06 16:56:45.473612059 +0200
+@@ -23,15 +23,15 @@ ELSE( OpenSync_FIND_REQUIRED )
+ ENDIF ( OpenSync_FIND_REQUIRED )
+ 
+ IF ( OPENSYNC_MIN_VERSION )
+-	PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0>=${OPENSYNC_MIN_VERSION} )
++	PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync>=${OPENSYNC_MIN_VERSION} )
+ ELSE ( OPENSYNC_MIN_VERSION )
+-	PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0 )
++	PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync )
+ ENDIF ( OPENSYNC_MIN_VERSION )
+ 
+ FIND_PROGRAM( PKGCONFIG_EXECUTABLE NAMES pkg-config )
+ 
+ IF ( PKGCONFIG_EXECUTABLE )
+-	EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS opensync-1.0 --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR )
++	EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS libopensync --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR )
+ 	STRING( REGEX REPLACE "[\r\n]" " " _opensync_data_DIR "${_opensync_data_DIR}"  )
+ ENDIF ( PKGCONFIG_EXECUTABLE )
+ 
+@@ -47,7 +47,7 @@ ENDIF ( OPENSYNC_CMAKE_MODULES )
+ # Look for OpenSync include dir and libraries without pkg-config 
+ IF( NOT OPENSYNC_FOUND AND NOT PKG_CONFIG_FOUND )
+ 	# Fallback if pkg-config doesn't exist
+-	FIND_PATH( OPENSYNC_INCLUDE_DIRS opensync/opensync.h PATH_SUFFIXES opensync-1.0
++	FIND_PATH( OPENSYNC_INCLUDE_DIRS opensync/opensync.h PATH_SUFFIXES libopensync1
+ 			PATHS
+ 			/opt/local/include/
+ 			/sw/include/
+--- libopensync-plugin-google-calendar-0.36/src/gcalendar.c.orig	2008-01-26 18:02:56.000000000 +0100
++++ libopensync-plugin-google-calendar-0.36/src/gcalendar.c	2025-09-07 13:20:44.112427469 +0200
+@@ -22,15 +22,14 @@
+ #include <opensync/opensync.h>
+ #include <opensync/opensync-plugin.h>
+ #include <opensync/opensync-helper.h>
+-#include <opensync/opensync-merger.h>
++#include <opensync/opensync-capabilities.h>
+ #include <opensync/opensync-format.h>
+ #include <opensync/opensync-data.h>
+ #include <opensync/opensync-version.h>
++#include <opensync/opensync-xmlformat.h>
+ 
+ #include <glib.h>
+ 
+-#include <libxml/tree.h>
+-
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -43,7 +42,6 @@ struct gc_plgdata
+ 	char *url;
+ 	char *username;
+ 	char *password;
+-	OSyncHashTable *hashtable;
+ 	OSyncObjTypeSink *sink;
+ 	OSyncObjFormat *objformat;
+ };
+@@ -51,13 +49,11 @@ struct gc_plgdata
+ static void free_plg(struct gc_plgdata *plgdata)
+ {
+ 	if (plgdata->url)
+-		xmlFree(plgdata->url);
++		g_free(plgdata->url);
+ 	if (plgdata->username)
+-		xmlFree(plgdata->username);
++		g_free(plgdata->username);
+ 	if (plgdata->password)
+-		xmlFree(plgdata->password);
+-	if (plgdata->hashtable)
+-		osync_hashtable_free(plgdata->hashtable);
++		g_free(plgdata->password);
+ 	if (plgdata->sink)
+ 		osync_objtype_sink_unref(plgdata->sink);
+ 	if (plgdata->objformat)
+@@ -174,92 +170,64 @@ error:
+ 	return FALSE;
+ }
+ 
+-char *gc_get_cfgvalue(xmlNode *cfg, const char *name)
++const char *gc_get_cfgvalue(OSyncPluginConfig *cfg, const char *name)
+ {
+-	xmlNode *c;
+-	for (c = cfg->xmlChildrenNode; c; c = c->next) {
+-		if (!xmlStrcmp(c->name, (const xmlChar*)name))
+-			return (char*)xmlNodeGetContent(c);
++	OSyncList *optslist = osync_plugin_config_get_advancedoptions(cfg);
++	for (; optslist; optslist = optslist->next) {
++		OSyncPluginAdvancedOption *option = optslist->data;
++		if (!strcmp(osync_plugin_advancedoption_get_name(option), name))
++			return osync_plugin_advancedoption_get_value(option);
+ 	}
+ 	return NULL;
+ }
+ 
+-osync_bool gc_parse_config(struct gc_plgdata *plgdata, const char *cfg, OSyncError **error)
++osync_bool gc_parse_config(struct gc_plgdata *plgdata, OSyncPluginConfig *cfg, OSyncError **error)
+ {
+-	xmlNode *node;
+-	xmlDoc *doc;
+ 	osync_bool ret = FALSE;
+ 
+-	doc = xmlParseMemory(cfg, strlen(cfg) + 1);
+-	if (!doc) {
+-		osync_error_set(error, OSYNC_ERROR_GENERIC, "Couldn't parse configuration");
+-		goto out;
+-	}
+-
+-	node = xmlDocGetRootElement(doc);
+-	if (!node || xmlStrcmp(node->name, (const xmlChar*)"config")) {
+-		osync_error_set(error, OSYNC_ERROR_GENERIC, "Invalid configuration");
+-		goto out_freedoc;
++	OSyncPluginAuthentication *auth = osync_plugin_config_get_authentication(cfg);
++	if (auth) {
++		plgdata->username = g_strdup(osync_plugin_authentication_get_username(auth));
++	/*FIXME: We need an opensync API for getting info from the user,
++	 *       such as passwords
++	 */
++		plgdata->password = g_strdup(osync_plugin_authentication_get_password(auth));
+ 	}
+ 
+ 	/*TODO: Make this more user-friendly: allow the URL to be omitted
+ 	 *      by the user and build it automatically from the username
+ 	 */
+-	plgdata->url = gc_get_cfgvalue(node, "url");
+-	plgdata->username = gc_get_cfgvalue(node, "username");
+-	/*FIXME: We need an opensync API for getting info from the user,
+-	 *       such as passwords
+-	 */
+-	plgdata->password = gc_get_cfgvalue(node, "password");
++	plgdata->url = g_strdup(gc_get_cfgvalue(cfg, "url"));
+ 
+ 	if (!plgdata->url || !plgdata->username || !plgdata->password) {
+ 		osync_error_set(error, OSYNC_ERROR_GENERIC, "Invalid configuration");
+-		goto error_freedata;
++		goto out;
+ 	}
+ 
+ 	ret = TRUE;
+-
+-out_freedoc:
+-	xmlFreeDoc(doc);
+ out:
+ 	return ret;
+-
+-error_freedata:
+-	xmlFree(plgdata->url);
+-	xmlFree(plgdata->username);
+-	xmlFree(plgdata->password);
+-	goto out_freedoc;
+ }
+ 
+-static void gc_connect(void *data, OSyncPluginInfo *info, OSyncContext *ctx)
++static void gc_connect(OSyncObjTypeSink *sink, OSyncPluginInfo *info, OSyncContext *ctx, void *data)
+ {
+ 	osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, data, info, ctx);
+ 
+-	struct gc_plgdata *plgdata = data;
+-	OSyncObjTypeSink *sink = osync_plugin_info_get_sink(info);
++	struct gc_plgdata *plgdata = (struct gc_plgdata *)data;
+ 	OSyncError *error = NULL;
+ 
+-	char *tablepath = g_strdup_printf("%s/hashtable.db", osync_plugin_info_get_configdir(info));
+-
+-	plgdata->hashtable = osync_hashtable_new(tablepath, osync_objtype_sink_get_name(sink), &error);
+-	g_free(tablepath);
+-
+-	if (!plgdata->hashtable) {
+-		osync_context_report_osyncerror(ctx, &error);
+-		return;
+-	}
++	osync_objtype_sink_enable_hashtable(sink, TRUE);
+ 
+ 	osync_context_report_success(ctx);
+ 
+ 	osync_trace(TRACE_EXIT, "%s", __func__);
+ }
+ 
+-static void gc_get_changes(void *data, OSyncPluginInfo *info, OSyncContext *ctx)
++static void gc_get_changes(OSyncObjTypeSink *sink, OSyncPluginInfo *info, OSyncContext *ctx, osync_bool slow_sync, void *data)
+ {
+ 	osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, data, info, ctx);
+ 
+-	struct gc_plgdata *plgdata = data;
+-	OSyncObjTypeSink *sink = osync_plugin_info_get_sink(info);
++	struct gc_plgdata *plgdata = (struct gc_plgdata *)data;
+ 	OSyncError *error = NULL;
+ 
+ 	int output;
+@@ -267,14 +235,15 @@ static void gc_get_changes(void *data, O
+ 	FILE *out;
+ 	char sizeline[1024];
+ 	int status;
++	OSyncHashTable *hashtable = osync_objtype_sink_get_hashtable(sink);
+ 
+-	if (osync_objtype_sink_get_slowsync(sink)) {
+-		osync_hashtable_reset(plgdata->hashtable);
++	if (slow_sync) {
++		osync_hashtable_slowsync(hashtable, &error);
+ 	}
+ 
+ 	if (!run_helper(plgdata, "get_all", NULL,
+ 	                NULL, &output, &pid, &error)) {
+-		osync_context_report_osyncerror(ctx, &error);
++		osync_context_report_osyncerror(ctx, error);
+ 		goto error;
+ 	}
+ 
+@@ -336,7 +305,7 @@ static void gc_get_changes(void *data, O
+ 			goto error_xml;
+ 		}
+ 		/* osync_merge_merge() seems to like its input sorted... */
+-		osync_xmlformat_sort(doc);
++		osync_xmlformat_sort(doc, &error);
+ 
+ 		OSyncData *odata = osync_data_new((char *)doc, osync_xmlformat_size(), plgdata->objformat, &error);
+ 		if (!odata) {
+@@ -363,12 +332,11 @@ static void gc_get_changes(void *data, O
+ 		osync_change_set_objtype(chg, osync_objtype_sink_get_name(sink));
+ 		osync_change_set_hash(chg, hash);
+ 
+-		osync_change_set_changetype(chg, osync_hashtable_get_changetype(plgdata->hashtable, uid, hash));
+-		osync_hashtable_report(plgdata->hashtable, uid);
++		osync_change_set_changetype(chg, osync_hashtable_get_changetype(hashtable, chg));
+ 
+ 		if (osync_change_get_changetype(chg) != OSYNC_CHANGE_TYPE_UNMODIFIED) {
+ 			osync_context_report_change(ctx, chg);
+-			osync_hashtable_update_hash(plgdata->hashtable, osync_change_get_changetype(chg), uid, hash);
++			osync_hashtable_update_change(hashtable, chg);
+ 		}
+ 
+ 		osync_change_unref(chg);
+@@ -391,9 +359,8 @@ static void gc_get_changes(void *data, O
+ 		goto error_xmldata;
+ 	}
+ 
+-	char **uids = osync_hashtable_get_deleted(plgdata->hashtable);
+-	int i;
+-	for (i = 0; uids[i]; i++) {
++	OSyncList *u, *uids = osync_hashtable_get_deleted(hashtable);
++	for (u = uids; u; u = u->next) {
+ 		OSyncChange *change = osync_change_new(&error);
+ 		if (!change) {
+ 			osync_context_report_error(ctx, OSYNC_ERROR_GENERIC, "ERROR is: %s", osync_error_print(&error));
+@@ -408,14 +375,13 @@ static void gc_get_changes(void *data, O
+ 
+ 		osync_change_set_data(change, data);
+ 		osync_change_set_changetype(change, OSYNC_CHANGE_TYPE_DELETED);
+-		osync_change_set_uid(change, uids[i]);
++		osync_change_set_uid(change, u->data);
+ 		osync_context_report_change(ctx, change);
+-		osync_hashtable_update_hash(plgdata->hashtable, OSYNC_CHANGE_TYPE_DELETED, uids[i], NULL);
++		osync_hashtable_update_change(hashtable, change);
+ 		osync_change_unref(change);
+ 		osync_data_unref(data);
+-		g_free(uids[i]);
+ 	}
+-	g_free(uids);
++	osync_list_free(uids);
+ 
+ 	fclose(out);
+ 	waitpid(pid, &status, 0);
+@@ -441,13 +407,12 @@ error:
+ 	return;
+ }
+ 
+-static void gc_commit_change(void *data, OSyncPluginInfo *info,
+-			     OSyncContext *ctx, OSyncChange *change)
++static void gc_commit_change(OSyncObjTypeSink *sink, OSyncPluginInfo *info,
++			     OSyncContext *ctx, OSyncChange *change, void *data)
+ {
+ 	osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, data, info, ctx, change);
+ 
+-	OSyncObjTypeSink *sink = osync_plugin_info_get_sink(info);
+-	struct gc_plgdata *plgdata = data;
++	struct gc_plgdata *plgdata = (struct gc_plgdata *)data;
+ 
+ 	pid_t pid;
+ 	int input, output;
+@@ -457,9 +422,10 @@ static void gc_commit_change(void *data,
+ 	FILE *out;
+ 	int status;
+ 	char sizeline[1024];
+-	char *hash;
++	const char *hash;
++	OSyncHashTable *hashtable = osync_objtype_sink_get_hashtable(sink);
+ 
+-	hash = osync_hashtable_get_hash(plgdata->hashtable, osync_change_get_uid(change));
++	hash = osync_hashtable_get_hash(hashtable, osync_change_get_uid(change));
+ 
+ 	switch (osync_change_get_changetype(change)) {
+ 		case OSYNC_CHANGE_TYPE_ADDED:
+@@ -482,12 +448,10 @@ static void gc_commit_change(void *data,
+ 
+ 	if (!run_helper(plgdata, cmd, arg,
+ 			&input, &output, &pid, &error)) {
+-		osync_context_report_osyncerror(ctx, &error);
++		osync_context_report_osyncerror(ctx, error);
+ 		goto error;
+ 	}
+ 
+-	g_free(hash);
+-
+ 	out = fdopen(output, "r");
+ 	if (!out) {
+ 		osync_context_report_error(ctx, OSYNC_ERROR_GENERIC, "Couldn't open helper output");
+@@ -499,11 +463,10 @@ static void gc_commit_change(void *data,
+ 		case OSYNC_CHANGE_TYPE_ADDED:
+ 		case OSYNC_CHANGE_TYPE_MODIFIED:
+ 		{
+-			OSyncXMLFormat *doc = (OSyncXMLFormat *)osync_data_get_data_ptr(osync_change_get_data(change));
+ 			int size;
+ 			char *buffer;
+ 
+-			osync_xmlformat_assemble(doc, &buffer, &size);
++			osync_data_get_data(osync_change_get_data(change), &buffer, &size);
+ 			osync_trace(TRACE_INTERNAL, "input to helper:\n%s", buffer);
+ 			if (write(input, buffer, size) < size) {
+ 				osync_context_report_error(ctx, OSYNC_ERROR_GENERIC, "Couldn't write data to helper");
+@@ -593,10 +556,7 @@ static void gc_commit_change(void *data,
+ 			g_assert_not_reached();
+ 	}
+ 
+-	osync_hashtable_update_hash(plgdata->hashtable,
+-				    osync_change_get_changetype(change),
+-				    osync_change_get_uid(change),
+-				    osync_change_get_hash(change));
++	osync_hashtable_update_change(hashtable, change);
+ 
+ 	fclose(out);
+ 
+@@ -623,13 +583,10 @@ error:
+ 	return;
+ }
+ 
+-static void gc_disconnect(void *data, OSyncPluginInfo *info, OSyncContext *ctx)
++static void gc_disconnect(OSyncObjTypeSink *sink, OSyncPluginInfo *info, OSyncContext *ctx, void *data)
+ {
+ 	osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, data, info, ctx);
+-	struct gc_plgdata *plgdata = data;
+-
+-	osync_hashtable_free(plgdata->hashtable);
+-	plgdata->hashtable = NULL;
++	struct gc_plgdata *plgdata = (struct gc_plgdata *)data;
+ 
+ 	osync_context_report_success(ctx);
+ 	osync_trace(TRACE_EXIT, "%s", __func__);
+@@ -650,7 +607,7 @@ static void *gc_initialize(OSyncPlugin *
+ {
+ 	osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, plugin, info, error);
+ 	struct gc_plgdata *plgdata;
+-	const char *cfg;
++	OSyncPluginConfig *cfg;
+ 
+ 	plgdata = osync_try_malloc0(sizeof(struct gc_plgdata), error);
+ 	if (!plgdata)
+@@ -665,6 +622,7 @@ static void *gc_initialize(OSyncPlugin *
+ 
+ 	if (!gc_parse_config(plgdata, cfg, error))
+ 		goto error_freeplg;
++	osync_plugin_config_unref(cfg);
+ 
+ 	OSyncFormatEnv *formatenv = osync_plugin_info_get_format_env(info);
+ 	plgdata->objformat = osync_format_env_find_objformat(formatenv, "xmlformat-event");
+@@ -676,16 +634,11 @@ static void *gc_initialize(OSyncPlugin *
+ 	if (!plgdata->sink)
+ 		goto error_freeplg;
+ 
+-	osync_objtype_sink_add_objformat(plgdata->sink, "xmlformat-event");
+-
+-	OSyncObjTypeSinkFunctions functions;
+-	memset(&functions, 0, sizeof(functions));
+-	functions.connect = gc_connect;
+-	functions.disconnect = gc_disconnect;
+-	functions.get_changes = gc_get_changes;
+-	functions.commit = gc_commit_change;
+-
+-	osync_objtype_sink_set_functions(plgdata->sink, functions, plgdata);
++	osync_objtype_sink_set_userdata(plgdata->sink, plgdata);
++	osync_objtype_sink_set_connect_func(plgdata->sink, gc_connect);
++	osync_objtype_sink_set_disconnect_func(plgdata->sink, gc_disconnect);
++	osync_objtype_sink_set_get_changes_func(plgdata->sink, gc_get_changes);
++	osync_objtype_sink_set_commit_func(plgdata->sink, gc_commit_change);
+ 	osync_plugin_info_add_objtype(info, plgdata->sink);
+ 
+ 	osync_trace(TRACE_EXIT, "%s", __func__);
+@@ -699,7 +652,7 @@ out:
+ 	return NULL;
+ }
+ 
+-static osync_bool gc_discover(void *data, OSyncPluginInfo *info, OSyncError **error)
++static osync_bool gc_discover(OSyncPluginInfo *info, void *data, OSyncError **error)
+ {
+ 	osync_trace(TRACE_ENTRY, "%s(%p, %p, %p)", __func__, data, info, error);
+ 
+@@ -732,7 +685,7 @@ osync_bool get_sync_info(OSyncPluginEnv
+ 	osync_plugin_set_finalize(plugin, gc_finalize);
+ 	osync_plugin_set_discover(plugin, gc_discover);
+ 
+-	osync_plugin_env_register_plugin(env, plugin);
++	osync_plugin_env_register_plugin(env, plugin, error);
+ 	osync_plugin_unref(plugin);
+ 
+ 	osync_trace(TRACE_EXIT, "%s", __func__);
+--- libopensync-plugin-google-calendar-0.36/CMakeLists.txt.orig	2008-01-26 18:02:57.000000000 +0100
++++ libopensync-plugin-google-calendar-0.36/CMakeLists.txt	2025-09-07 13:11:21.905473205 +0200
+@@ -8,7 +8,6 @@ SET( OPENSYNC_MIN_VERSION "0.36" )
+ 
+ FIND_PACKAGE( OpenSync REQUIRED )
+ FIND_PACKAGE( GLIB2 REQUIRED )
+-FIND_PACKAGE( LibXml2 REQUIRED )
+ #TODO FIND_PACKAGE( HTTPLIB2 REQUIRED ) 
+ 
+ INCLUDE( OpenSyncInternal )
+--- libopensync-plugin-google-calendar-0.36/src/CMakeLists.txt.orig	2008-01-26 18:02:56.000000000 +0100
++++ libopensync-plugin-google-calendar-0.36/src/CMakeLists.txt	2025-09-07 13:11:04.685566494 +0200
+@@ -1,5 +1,5 @@
+-LINK_DIRECTORIES( ${OPENSYNC_LIBRARY_DIRS} ${GLIB2_LIBRARY_DIRS} ${LIBXML2_LIBRARY_DIRS} )
+-INCLUDE_DIRECTORIES( ${OPENSYNC_INCLUDE_DIRS} ${GLIB2_INCLUDE_DIRS} ${LIBXML2_INCLUDE_DIRS} )
++LINK_DIRECTORIES( ${OPENSYNC_LIBRARY_DIRS} ${GLIB2_LIBRARY_DIRS} )
++INCLUDE_DIRECTORIES( ${OPENSYNC_INCLUDE_DIRS} ${GLIB2_INCLUDE_DIRS} )
+ 
+ # gcalendar source	
+ SET( gcalendar_LIB_SRCS
+@@ -9,7 +9,7 @@ gcalendar.c
+ ADD_DEFINITIONS( -DGCAL_HELPER="\\\"${OPENSYNC_LIBEXEC_DIR}/google-cal-helper\\\"" )
+ OPENSYNC_PLUGIN_ADD( gcalendar ${gcalendar_LIB_SRCS} )
+ 
+-TARGET_LINK_LIBRARIES( gcalendar ${OPENSYNC_LIBRARIES} ${GLIB2_LIBRARIES} ${LIBXML2_LIBRARIES} )
++TARGET_LINK_LIBRARIES( gcalendar ${OPENSYNC_LIBRARIES} ${GLIB2_LIBRARIES} )
+ 
+ # Install plugin and google-cal-helper	
+ OPENSYNC_PLUGIN_INSTALL( gcalendar )
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/libopensync-plugin-google-calendar.git/commitdiff/be7f037252137f48b45bf64bc195662068d9493e



More information about the pld-cvs-commit mailing list