geoclue: Add recipe for GeoClue 2.0.0
authorFelipe F. Tonello <eu@felipetonello.com>
Tue, 24 Sep 2013 19:04:56 +0000 (19:04 +0000)
committerPatrick Ohly <patrick.ohly@intel.com>
Fri, 9 Jan 2015 16:33:37 +0000 (08:33 -0800)
Geoclue is a D-Bus service that provides location information. The primary
goal of the Geoclue project is to make creating location-aware applications as
simple as possible, while the secondary goal is to ensure that no application
can access location information without explicit permission from user.

(From meta-openembedded rev: 595bcead12aa34e48c22f7297aa06f2c0643c04e)

Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
meta-openembedded/meta-oe/recipes-navigation/geoclue/files/soup-session-fix.patch [new file with mode: 0644]
meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.0.0.bb [new file with mode: 0644]

diff --git a/meta-openembedded/meta-oe/recipes-navigation/geoclue/files/soup-session-fix.patch b/meta-openembedded/meta-oe/recipes-navigation/geoclue/files/soup-session-fix.patch
new file mode 100644 (file)
index 0000000..70fe3f5
--- /dev/null
@@ -0,0 +1,30 @@
+Upstream-Status: Upstream-Status: Inappropriate [poky 9.0 has older libsoup]
+
+Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
+
+diff --git a/src/gclue-ipclient.c b/src/gclue-ipclient.c
+index 09add30..1771d5c 100644
+--- a/src/gclue-ipclient.c
++++ b/src/gclue-ipclient.c
+@@ -83,7 +83,7 @@ gclue_ipclient_init (GClueIpclient *ipclient)
+ {
+         ipclient->priv = G_TYPE_INSTANCE_GET_PRIVATE ((ipclient), GCLUE_TYPE_IPCLIENT, GClueIpclientPrivate);
+-        ipclient->priv->soup_session = soup_session_new ();
++        ipclient->priv->soup_session = soup_session_sync_new ();
+ }
+ /**
+diff --git a/src/geoip-server/geoip-update.c b/src/geoip-server/geoip-update.c
+index 6cce7b2..ef672ba 100644
+--- a/src/geoip-server/geoip-update.c
++++ b/src/geoip-server/geoip-update.c
+@@ -214,7 +214,7 @@ main (int argc, char **argv)
+                         path = GEOIP_DATABASE_PATH;
+         }
+-        session = soup_session_new ();
++        session = soup_session_sync_new ();
+         for (i = 0; i < G_N_ELEMENTS (db_info_map); i++) {
+                 SoupMessage *msg = NULL;
diff --git a/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.0.0.bb b/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.0.0.bb
new file mode 100644 (file)
index 0000000..4a387b5
--- /dev/null
@@ -0,0 +1,32 @@
+SUMMARY = "The Geolocation Service"
+DESCRIPTION = "Geoclue is a D-Bus service that provides location information. \
+The primary goal of the Geoclue project is to make creating location-aware applications \
+as simple as possible, while the secondary goal is to ensure that no application \
+can access location information without explicit permission from user."
+LICENSE = "GPLv2.0+"
+SECTION = "console/network"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=8114b83a0435d8136b47bd70111ce5cd"
+
+PR = "r0"
+DEPENDS = "glib-2.0 dbus dbus-glib json-glib libsoup-2.4"
+
+inherit autotools pkgconfig gtk-doc
+
+SRC_URI = " \
+  http://www.freedesktop.org/software/geoclue/releases/2.0/geoclue-${PV}.tar.xz \
+  file://soup-session-fix.patch \
+"
+
+SRC_URI[md5sum] = "401ff99d530b177c62afacef0a33efd9"
+SRC_URI[sha256sum] = "4a82f184e55a163d86e0ad69bbe1bba9960bb5094220fe1f01350bceda8c67a1"
+
+EXTRA_OECONF += " \
+  --with-dbus-service-user=root \
+  --with-dbus-sys-dir=${sysconfdir}/dbus-1/system.d \
+"
+
+FILES_${PN} += " \
+  ${datadir}/dbus-1/system-services/org.freedesktop.GeoClue2.service \
+  ${datadir}/geoclue-2.0/geoclue-interface.xml \
+"