summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-navigation/omgps
diff options
context:
space:
mode:
authorTudor Florea <tudor.florea@enea.com>2015-10-08 22:51:41 +0200
committerTudor Florea <tudor.florea@enea.com>2015-10-08 22:51:41 +0200
commit1219bf8a90a7bf8cd3a5363551ef635d51e8fc8e (patch)
treea21a5fc103bb3bd65ecd85ed22be5228fc54e447 /meta-oe/recipes-navigation/omgps
downloadmeta-openembedded-1219bf8a90a7bf8cd3a5363551ef635d51e8fc8e.tar.gz
initial commit for Enea Linux 5.0 arm
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta-oe/recipes-navigation/omgps')
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/0001-g_type_init-is-deprecated-for-glib-2.35.0.patch33
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/fix.build.with.glib.2.34.patch125
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/fix.capability.patch62
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/gcc-4.4.patch71
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/gdk-pixbuf-2.26.5.patch15
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/sysfs.node.2.6.32.patch14
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps/use.unused.variable.patch15
-rw-r--r--meta-oe/recipes-navigation/omgps/omgps_svn.bb29
8 files changed, 364 insertions, 0 deletions
diff --git a/meta-oe/recipes-navigation/omgps/omgps/0001-g_type_init-is-deprecated-for-glib-2.35.0.patch b/meta-oe/recipes-navigation/omgps/omgps/0001-g_type_init-is-deprecated-for-glib-2.35.0.patch
new file mode 100644
index 000000000..6b9f465a2
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/0001-g_type_init-is-deprecated-for-glib-2.35.0.patch
@@ -0,0 +1,33 @@
1From 22bcf06637d64e40af6c152e28b31eef41e3f583 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 13 Jun 2013 02:35:22 -0700
4Subject: [PATCH] g_type_init() is deprecated for glib >= 2.35.0
5
6Call it for old versions.
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9
10Upstream-Status: Pending
11---
12 src/main.c | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/src/main.c b/src/main.c
16index e984da4..a63ddf3 100644
17--- a/src/main.c
18+++ b/src/main.c
19@@ -486,9 +486,9 @@ int main(int argc, char **argv)
20 if (strcmp(argv[1], "-log2file") == 0)
21 log2console = FALSE;
22 }
23-
24+#if !GLIB_CHECK_VERSION(2,35,0)
25 g_type_init();
26-
27+#endif
28 gdk_threads_init();
29
30 gdk_threads_enter();
31--
321.7.9.5
33
diff --git a/meta-oe/recipes-navigation/omgps/omgps/fix.build.with.glib.2.34.patch b/meta-oe/recipes-navigation/omgps/omgps/fix.build.with.glib.2.34.patch
new file mode 100644
index 000000000..ec3bde0cd
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/fix.build.with.glib.2.34.patch
@@ -0,0 +1,125 @@
1Upstream-Status: Submitted
2https://code.google.com/p/omgps/issues/detail?id=15
3
4diff -uNr omgps.orig/src/dbus_intf.c omgps/src/dbus_intf.c
5--- omgps.orig/src/dbus_intf.c 2011-12-12 12:22:47.000000000 +0100
6+++ omgps/src/dbus_intf.c 2012-11-14 14:44:45.435381443 +0100
7@@ -171,7 +171,7 @@
8 gpsdata->svinfo_valid = TRUE;
9
10 int i, j;
11- GValueArray *val;
12+ GArray *val;
13 svinfo_channel_t *sv;
14
15 j = 0;
16@@ -179,16 +179,16 @@
17 val = satellites->pdata[i];
18
19 sv = &gpsdata->sv_channels[j];
20- sv->sv_id = g_value_get_uint(g_value_array_get_nth(val, 0));
21+ sv->sv_id = g_array_index(val, guint, 0);
22
23- if (g_value_get_boolean(g_value_array_get_nth(val, 1))) {
24+ if (g_array_index(val, gboolean, 1)) {
25 ++gpsdata->sv_in_use;
26 sv->flags = 0x01;
27 }
28
29- sv->elevation = (int)g_value_get_uint(g_value_array_get_nth(val, 2));
30- sv->azimuth = (int)g_value_get_uint(g_value_array_get_nth(val, 3));
31- sv->cno = g_value_get_uint(g_value_array_get_nth(val, 4));
32+ sv->elevation = (int)g_array_index(val, guint, 2);
33+ sv->azimuth = (int)g_array_index(val, guint, 3);
34+ sv->cno = g_array_index(val, guint, 4);
35 if (sv->cno > 0)
36 ++gpsdata->sv_get_signal;
37
38diff -uNr omgps.orig/src/main.c omgps/src/main.c
39--- omgps.orig/src/main.c 2011-12-12 12:22:47.000000000 +0100
40+++ omgps/src/main.c 2012-11-14 14:46:00.345402222 +0100
41@@ -489,9 +489,6 @@
42
43 g_type_init();
44
45- if (! g_thread_supported ())
46- g_thread_init(NULL);
47-
48 gdk_threads_init();
49
50 gdk_threads_enter();
51diff -uNr omgps.orig/src/tab_gpscfg.c omgps/src/tab_gpscfg.c
52--- omgps.orig/src/tab_gpscfg.c 2011-12-12 12:22:47.000000000 +0100
53+++ omgps/src/tab_gpscfg.c 2012-11-14 15:23:47.526925258 +0100
54@@ -222,7 +222,7 @@
55
56 static gboolean change_platform_model_cmd(void *model_id)
57 {
58- U1 model = (U1)(int) model_id;
59+ U1 model = (U1)GPOINTER_TO_INT(model_id);
60 int gps_dev_fd = 0;
61
62 /* non ubx means: we need open serial port
63@@ -269,7 +269,7 @@
64 static void change_platmodel_button_clicked(GtkWidget *widget, gpointer data)
65 {
66 int idx = gtk_combo_box_get_active(GTK_COMBO_BOX(platmodel_list));
67- char *model_id = (void *)(int)platmodel_values[idx];
68+ void *model_id = (void *)GINT_TO_POINTER(platmodel_values[idx]);
69
70 if (POLL_ENGINE_TEST(UBX)) {
71 gtk_widget_set_sensitive(change_platmodel_button, FALSE);
72diff -uNr omgps.orig/src/tab_menu.c omgps/src/tab_menu.c
73--- omgps.orig/src/tab_menu.c 2011-12-12 12:22:47.000000000 +0100
74+++ omgps/src/tab_menu.c 2012-11-14 15:25:08.217941513 +0100
75@@ -65,7 +65,7 @@
76
77 static void poll_button_clicked(GtkWidget *widget, gpointer data)
78 {
79- gboolean is_start_bt = (gboolean)data;
80+ gboolean is_start_bt = (gboolean) GPOINTER_TO_INT(data);
81
82 if (POLL_STATE_TEST(RUNNING) == is_start_bt)
83 return;
84diff -uNr omgps.orig/src/tab_tile.c omgps/src/tab_tile.c
85--- omgps.orig/src/tab_tile.c 2011-12-12 12:22:47.000000000 +0100
86+++ omgps/src/tab_tile.c 2012-11-14 15:25:30.392945800 +0100
87@@ -101,7 +101,7 @@
88 static gboolean set_bg_map(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data)
89 {
90 map_repo_t *repo;
91- gboolean clear = (gboolean)data;
92+ gboolean clear = (gboolean)GPOINTER_TO_INT(data);
93
94 int type;
95
96@@ -240,7 +240,7 @@
97
98 static void alpha_radio_toggled (GtkWidget *widget, gpointer user_data)
99 {
100- int idx = (int)user_data;
101+ int idx = (int)GPOINTER_TO_INT(user_data);
102
103 if (g_view.bg_alpha_idx == idx)
104 return;
105@@ -384,7 +384,7 @@
106
107 for (i=0; i<ALPHA_LEVELS; i++) {
108 g_signal_connect (G_OBJECT (alpha_radios[i]), "toggled",
109- G_CALLBACK (alpha_radio_toggled), (gpointer)i);
110+ G_CALLBACK (alpha_radio_toggled), GINT_TO_POINTER(i));
111 gtk_container_add(GTK_CONTAINER (alpha_hbox), alpha_radios[i]);
112 }
113
114diff -uNr omgps.orig/src/tab_view.c omgps/src/tab_view.c
115--- omgps.orig/src/tab_view.c 2011-12-12 12:22:47.000000000 +0100
116+++ omgps/src/tab_view.c 2012-11-14 15:25:47.018949453 +0100
117@@ -534,7 +534,7 @@
118
119 static void* change_zoom_routine(void *args)
120 {
121- gboolean is_zoom_in = (gboolean)args;
122+ gboolean is_zoom_in = (gboolean)GPOINTER_TO_INT(args);
123 stop = FALSE;
124
125 int hi = (is_zoom_in)?
diff --git a/meta-oe/recipes-navigation/omgps/omgps/fix.capability.patch b/meta-oe/recipes-navigation/omgps/omgps/fix.capability.patch
new file mode 100644
index 000000000..3ed86d8a9
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/fix.capability.patch
@@ -0,0 +1,62 @@
1Upstream-Status: Submitted
2https://code.google.com/p/omgps/issues/detail?id=15
3
4we need to include config.h first to know if HAVE_SYS_CAPABILITY_H is enabled or no, otherwise
5sys/capability.h is not included and later used
6| src/network.c: In function 'can_ping':
7| src/network.c:198:2: error: 'cap_flag_value_t' undeclared (first use in this function)
8| src/network.c:198:2: note: each undeclared identifier is reported only once for each function it appears in
9| src/network.c:198:19: error: expected ';' before 'cap'
10| src/network.c:199:2: error: 'cap_t' undeclared (first use in this function)
11| src/network.c:199:8: error: expected ';' before 'caps'
12| src/network.c:200:6: error: 'caps' undeclared (first use in this function)
13| cc1: warnings being treated as errors
14| src/network.c:203:2: error: implicit declaration of function 'cap_get_flag'
15| src/network.c:203:21: error: 'CAP_SYS_NICE' undeclared (first use in this function)
16| src/network.c:203:35: error: 'CAP_EFFECTIVE' undeclared (first use in this function)
17| src/network.c:203:51: error: 'cap' undeclared (first use in this function)
18| src/network.c:204:17: error: 'CAP_CLEAR' undeclared (first use in this function)
19| src/network.c:210:1: error: control reaches end of non-void function
20| make[1]: *** [omgps-network.o] Error 1
21
22and -lcap is needed for 2 functions later (should be added only for HAVE_SYS_CAPABILITY_H enabled, but I don't care enough)
23| omgps-network.o: In function `can_ping':
24| /OE/tmpdir-shr/work/armv4t-oe-linux-gnueabi/omgps-0.1+svnr109-r1/omgps/src/network.c:199: undefined reference to `cap_get_proc'
25| /OE/tmpdir-shr/work/armv4t-oe-linux-gnueabi/omgps-0.1+svnr109-r1/omgps/src/network.c:203: undefined reference to `cap_get_flag'
26| collect2: ld returned 1 exit status
27
28--- omgps.orig/src/network.c 2009-10-28 18:51:16.000000000 +0100
29+++ omgps/src/network.c 2011-05-09 09:59:11.637676772 +0200
30@@ -19,16 +19,16 @@
31 #include <assert.h>
32 #include <glib.h>
33
34-#if (HAVE_SYS_CAPABILITY_H)
35-#undef _POSIX_SOURCE
36-#include <sys/capability.h>
37-#endif
38-
39 #include "config.h"
40 #include "util.h"
41 #include "network.h"
42 #include "customized.h"
43
44+#if (HAVE_SYS_CAPABILITY_H)
45+#undef _POSIX_SOURCE
46+#include <sys/capability.h>
47+#endif
48+
49 /**
50 * Ping: reference <Unix network programming>, volume 1, third edition.
51 */
52--- omgps.orig/Makefile.am 2009-10-28 18:51:17.000000000 +0100
53+++ omgps/Makefile.am 2011-05-09 10:04:58.578676679 +0200
54@@ -33,7 +33,7 @@
55
56 omgps_CFLAGS = $(common_CFLAGS) -O2
57 omgps_LDFLAGS =
58-omgps_LDADD = @DEPENDENCIES_LIBS@ -lpython$(PY_VERSION)
59+omgps_LDADD = @DEPENDENCIES_LIBS@ -lcap -lpython$(PY_VERSION)
60
61 omgps_SOURCES = \
62 src/ctx_agps_online.c \
diff --git a/meta-oe/recipes-navigation/omgps/omgps/gcc-4.4.patch b/meta-oe/recipes-navigation/omgps/omgps/gcc-4.4.patch
new file mode 100644
index 000000000..41f6471d4
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/gcc-4.4.patch
@@ -0,0 +1,71 @@
1Upstream-Status: Submitted
2https://code.google.com/p/omgps/issues/detail?id=15
3
4diff -uNr omgps.orig/src/include/map_repo.h omgps/src/include/map_repo.h
5--- omgps.orig/src/include/map_repo.h 2009-07-20 19:54:08.000000000 +0200
6+++ omgps/src/include/map_repo.h 2010-01-17 14:55:24.000000000 +0100
7@@ -3,6 +3,9 @@
8
9 #include <glib.h>
10 #include <gdk/gdk.h>
11+// workaround Python.h unconditionally (re)defines _XOPEN_SOURCE and _POSIX_C_SOURCE
12+#undef _XOPEN_SOURCE
13+#undef _POSIX_C_SOURCE
14 #include <Python.h>
15
16 #define MAP_MAX_BG_COLORS 5
17diff -uNr omgps.orig/src/include/py_ext.h omgps/src/include/py_ext.h
18--- omgps.orig/src/include/py_ext.h 2009-07-20 19:54:08.000000000 +0200
19+++ omgps/src/include/py_ext.h 2010-01-17 14:55:57.000000000 +0100
20@@ -4,8 +4,8 @@
21 void py_ext_init();
22 void py_ext_cleanup();
23
24-void inline py_ext_trylock();
25-void inline py_ext_lock();
26-void inline py_ext_unlock();
27+void py_ext_trylock();
28+void py_ext_lock();
29+void py_ext_unlock();
30
31 #endif /* PY_EXT_H_ */
32diff -uNr omgps.orig/src/include/uart.h omgps/src/include/uart.h
33--- omgps.orig/src/include/uart.h 2009-07-20 19:54:08.000000000 +0200
34+++ omgps/src/include/uart.h 2010-01-17 14:33:00.000000000 +0100
35@@ -12,9 +12,9 @@
36 extern void uart_cleanup();
37 extern void uart_close();
38
39-extern inline int read_with_timeout(U1 *buf, int len);
40-extern inline int write_with_timeout(U1 *buf, int len);
41-extern inline gboolean read_fixed_len(U1 *buf, int expected_len);
42+extern int read_with_timeout(U1 *buf, int len);
43+extern int write_with_timeout(U1 *buf, int len);
44+extern gboolean read_fixed_len(U1 *buf, int expected_len);
45
46 extern int sysfs_get_gps_device_power();
47 extern gboolean gps_device_power_on();
48diff -uNr omgps.orig/src/py_ext.c omgps/src/py_ext.c
49--- omgps.orig/src/py_ext.c 2009-07-20 19:54:08.000000000 +0200
50+++ omgps/src/py_ext.c 2010-01-17 14:56:46.000000000 +0100
51@@ -26,17 +26,17 @@
52 Py_Finalize();
53 }
54
55-void inline py_ext_trylock()
56+void py_ext_trylock()
57 {
58 TRYLOCK_MUTEX(&lock);
59 }
60
61-void inline py_ext_lock()
62+void py_ext_lock()
63 {
64 LOCK_MUTEX(&lock);
65 }
66
67-void inline py_ext_unlock()
68+void py_ext_unlock()
69 {
70 UNLOCK_MUTEX(&lock);
71 }
diff --git a/meta-oe/recipes-navigation/omgps/omgps/gdk-pixbuf-2.26.5.patch b/meta-oe/recipes-navigation/omgps/omgps/gdk-pixbuf-2.26.5.patch
new file mode 100644
index 000000000..688080573
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/gdk-pixbuf-2.26.5.patch
@@ -0,0 +1,15 @@
1Upstream-Status: Submitted
2https://code.google.com/p/omgps/issues/detail?id=15
3
4diff -uNr omgps/src/tab_scratch.c omgps.new/src/tab_scratch.c
5--- omgps/src/tab_scratch.c 2012-12-22 18:13:25.994788128 +0100
6+++ omgps.new/src/tab_scratch.c 2012-12-22 18:12:45.876790644 +0100
7@@ -51,7 +51,7 @@
8 }
9
10 gboolean ret = gdk_pixbuf_save (pixbuf, buf, SCREENSHOT_FILE_TYPE, &err, "tEXt::Software", "omgps", NULL);
11- gdk_pixbuf_unref(pixbuf);
12+ g_object_unref(pixbuf);
13
14 if (ret) {
15 char buf1[128];
diff --git a/meta-oe/recipes-navigation/omgps/omgps/sysfs.node.2.6.32.patch b/meta-oe/recipes-navigation/omgps/omgps/sysfs.node.2.6.32.patch
new file mode 100644
index 000000000..290c5e6a7
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/sysfs.node.2.6.32.patch
@@ -0,0 +1,14 @@
1Upstream-Status: Submitted
2https://code.google.com/p/omgps/issues/detail?id=15
3
4diff -uNr omgps.orig//src/uart.c omgps/src/uart.c
5--- omgps.orig//src/uart.c 2010-08-22 23:34:09.000000000 +0200
6+++ omgps/src/uart.c 2010-08-22 23:33:54.000000000 +0200
7@@ -30,6 +30,7 @@
8 * NOTE: these file paths are subject to change according to kernel and distribution.
9 */
10 static const char *sysfs_gps_power[] = {
11+ "/sys/bus/platform/devices/gta02-pm-gps.0/power_on",
12 "/sys/bus/platform/devices/neo1973-pm-gps.0/power_on",
13 "/sys/bus/platform/devices/neo1973-pm-gps.0/pwron"
14 };
diff --git a/meta-oe/recipes-navigation/omgps/omgps/use.unused.variable.patch b/meta-oe/recipes-navigation/omgps/omgps/use.unused.variable.patch
new file mode 100644
index 000000000..3ccb14ea9
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps/use.unused.variable.patch
@@ -0,0 +1,15 @@
1Upstream-Status: Submitted
2https://code.google.com/p/omgps/issues/detail?id=15
3
4--- a/src/settings.c 2011-12-12 13:21:30.573400795 +0100
5+++ b/src/settings.c 2011-12-12 14:11:05.269606119 +0100
6@@ -278,6 +278,9 @@
7 }
8
9 ret = check_settings(errbuf, ERRBUF_LEN);
10+ if (ret == FALSE) {
11+ snprintf(errbuf, ERRBUF_LEN, "Something wrong while loading settings file");
12+ }
13
14 if (fd > 0)
15 close(fd);
diff --git a/meta-oe/recipes-navigation/omgps/omgps_svn.bb b/meta-oe/recipes-navigation/omgps/omgps_svn.bb
new file mode 100644
index 000000000..aabdd43f1
--- /dev/null
+++ b/meta-oe/recipes-navigation/omgps/omgps_svn.bb
@@ -0,0 +1,29 @@
1SUMMARY = "GPS application for openmoko freerunner"
2HOMEPAGE = "http://omgps.googlecode.com"
3SECTION = "openmoko/applications"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
6DEPENDS = "gtk+ python-pygobject dbus-glib libcap"
7SRCREV = "109"
8PV = "0.1+svnr${SRCPV}"
9PR = "r2"
10S = "${WORKDIR}/${PN}"
11
12PNBLACKLIST[omgps] ?= "BROKEN: sound.c:61:35: error: 'saveptr' may be used uninitialized in this function [-Werror=maybe-uninitialized]"
13
14do_configure_prepend() {
15 sed -i "s#PY_VERSION = 2.6#PY_VERSION = ${PYTHON_BASEVERSION}#g" ${S}/Makefile.am
16 sed -i "s#PY_INC_DIR = \$(OPIEDIR)#PY_INC_DIR = ${STAGING_DIR_HOST}#g" ${S}/Makefile.am
17}
18
19SRC_URI = "svn://omgps.googlecode.com/svn/trunk;module=omgps;protocol=http \
20 file://gcc-4.4.patch \
21 file://sysfs.node.2.6.32.patch \
22 file://fix.capability.patch \
23 file://use.unused.variable.patch \
24 file://fix.build.with.glib.2.34.patch \
25 file://gdk-pixbuf-2.26.5.patch \
26 file://0001-g_type_init-is-deprecated-for-glib-2.35.0.patch \
27"
28
29inherit autotools pkgconfig