meta-gnome: add libical
authorRoss Burton <ross.burton@intel.com>
Wed, 15 Aug 2012 18:55:50 +0000 (18:55 +0000)
committerPatrick Ohly <patrick.ohly@intel.com>
Fri, 9 Jan 2015 16:22:57 +0000 (08:22 -0800)
(From meta-openembedded rev: ee8a3aaadfd3b0b2d9c158b0f5b9272977bb4577)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
meta-openembedded/meta-gnome/recipes-support/libical/files/pthread-fix.patch [new file with mode: 0644]
meta-openembedded/meta-gnome/recipes-support/libical/libical_0.48.bb [new file with mode: 0644]

diff --git a/meta-openembedded/meta-gnome/recipes-support/libical/files/pthread-fix.patch b/meta-openembedded/meta-gnome/recipes-support/libical/files/pthread-fix.patch
new file mode 100644 (file)
index 0000000..aa7767f
--- /dev/null
@@ -0,0 +1,52 @@
+New added pthread feathre leads some deadlock with some unlock code missing.
+This patch fix it.
+
+Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
+
+Upstream-Status: Pending
+
+Index: libical-0.47/src/libical/icaltimezone.c
+===================================================================
+--- libical-0.47.orig/src/libical/icaltimezone.c       2011-12-16 13:42:25.000000000 +0800
++++ libical-0.47/src/libical/icaltimezone.c    2011-12-16 14:16:25.000000000 +0800
+@@ -1773,7 +1773,7 @@
+     filename = (char*) malloc (filename_len);
+     if (!filename) {
+       icalerror_set_errno(ICAL_NEWFAILED_ERROR);
+-      return;
++      goto out;
+     }
+     snprintf (filename, filename_len, "%s/%s.ics", get_zone_directory(),
+@@ -1783,7 +1783,7 @@
+     free (filename);
+     if (!fp) {
+       icalerror_set_errno(ICAL_FILE_ERROR);
+-      return;
++      goto out;
+     }
+       
+@@ -1807,7 +1807,7 @@
+     if (!subcomp) {
+       icalerror_set_errno(ICAL_PARSE_ERROR);
+-      return;
++      goto out;
+     }
+     icaltimezone_get_vtimezone_properties (zone, subcomp);
+@@ -1817,10 +1817,12 @@
+     icalcomponent_free(comp);
+     }
+ #endif 
+-#ifdef HAVE_PTHREAD
++
+  out:
++#ifdef HAVE_PTHREAD
+     pthread_mutex_unlock(&builtin_mutex);
+ #endif
++    return;
+ }
diff --git a/meta-openembedded/meta-gnome/recipes-support/libical/libical_0.48.bb b/meta-openembedded/meta-gnome/recipes-support/libical/libical_0.48.bb
new file mode 100644 (file)
index 0000000..80f629c
--- /dev/null
@@ -0,0 +1,17 @@
+DESCRIPTION = "iCal and scheduling (RFC 2445, 2446, 2447) library"
+HOMEPAGE = "http://sourceforge.net/projects/freeassociation/"
+BUGTRACKER = "http://sourceforge.net/tracker/?group_id=16077&atid=116077"
+LICENSE = "LGPLv2.1 | MPL-1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d4fc58309d8ed46587ac63bb449d82f8 \
+                    file://LICENSE;md5=d1a0891cd3e582b3e2ec8fe63badbbb6"
+SECTION = "libs"
+
+PR = "r0"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/freeassociation/${BPN}/${P}/${BPN}-${PV}.tar.gz\
+           file://pthread-fix.patch"
+
+SRC_URI[md5sum] = "e549f434d5fbf9cd156c60ed4943618f"
+SRC_URI[sha256sum] = "2ae78b0757f0dd13431acf42a9a8d038339fd4767fd5134e650bf60ee0b4dff0"
+
+inherit autotools