summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb1
-rw-r--r--meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch135
-rw-r--r--meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb3
-rw-r--r--meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb5
4 files changed, 6 insertions, 138 deletions
diff --git a/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb b/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
index 36580952f1..b985d39abf 100644
--- a/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
+++ b/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
@@ -16,6 +16,7 @@ SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.bz2 \
16SRC_URI[md5sum] = "37e9a2d664effe4efd44c0e1a20136de" 16SRC_URI[md5sum] = "37e9a2d664effe4efd44c0e1a20136de"
17SRC_URI[sha256sum] = "99906d9560cbdbc97e1855e7b0a7169f1e11983be3ac539140423f09debced82" 17SRC_URI[sha256sum] = "99906d9560cbdbc97e1855e7b0a7169f1e11983be3ac539140423f09debced82"
18 18
19COMPATIBLE_HOST_libc-musl = "null"
19EXTRA_OEMAKE = "" 20EXTRA_OEMAKE = ""
20export WVLINK="${LD}" 21export WVLINK="${LD}"
21 22
diff --git a/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch b/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch
deleted file mode 100644
index 232db9e63b..0000000000
--- a/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch
+++ /dev/null
@@ -1,135 +0,0 @@
1From 0e054339c1422168a7f4a9dcf090268053a33b1f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 20 Jul 2017 21:05:37 -0700
4Subject: [PATCH 2/5] wvtask: Dont use ucontext on non-glibc systems
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 utils/wvtask.cc | 24 ++++++++++++++++++++++++
9 1 file changed, 24 insertions(+)
10
11diff --git a/utils/wvtask.cc b/utils/wvtask.cc
12index cdcd544..c0bff7d 100644
13--- a/utils/wvtask.cc
14+++ b/utils/wvtask.cc
15@@ -199,7 +199,9 @@ WvTaskMan::WvTaskMan()
16 stacktop = (char *)alloca(0);
17
18 context_return = 0;
19+#ifdef __GLIBC__
20 assert(getcontext(&get_stack_return) == 0);
21+#endif
22 if (context_return == 0)
23 {
24 // initial setup - start the stackmaster() task (never returns!)
25@@ -265,13 +267,17 @@ int WvTaskMan::run(WvTask &task, int val)
26 state = &old_task->mystate;
27
28 context_return = 0;
29+#ifdef __GLIBC__
30 assert(getcontext(state) == 0);
31+#endif
32 int newval = context_return;
33 if (newval == 0)
34 {
35 // saved the state, now run the task.
36 context_return = val;
37+#ifdef __GLIBC__
38 setcontext(&task.mystate);
39+#endif
40 return -1;
41 }
42 else
43@@ -319,13 +325,17 @@ int WvTaskMan::yield(int val)
44 #endif
45
46 context_return = 0;
47+#ifdef __GLIBC__
48 assert(getcontext(&current_task->mystate) == 0);
49+#endif
50 int newval = context_return;
51 if (newval == 0)
52 {
53 // saved the task state; now yield to the toplevel.
54 context_return = val;
55+#ifdef __GLIBC__
56 setcontext(&toplevel);
57+#endif
58 return -1;
59 }
60 else
61@@ -341,7 +351,9 @@ int WvTaskMan::yield(int val)
62 void WvTaskMan::get_stack(WvTask &task, size_t size)
63 {
64 context_return = 0;
65+#ifdef __GLIBC__
66 assert(getcontext(&get_stack_return) == 0);
67+#endif
68 if (context_return == 0)
69 {
70 assert(magic_number == -WVTASK_MAGIC);
71@@ -371,7 +383,9 @@ void WvTaskMan::get_stack(WvTask &task, size_t size)
72 // initial setup
73 stack_target = &task;
74 context_return = size/1024 + (size%1024 > 0);
75+#ifdef __GLIBC__
76 setcontext(&stackmaster_task);
77+#endif
78 }
79 else
80 {
81@@ -409,7 +423,9 @@ void WvTaskMan::_stackmaster()
82 assert(magic_number == -WVTASK_MAGIC);
83
84 context_return = 0;
85+#ifdef __GLIBC__
86 assert(getcontext(&stackmaster_task) == 0);
87+#endif
88 val = context_return;
89 if (val == 0)
90 {
91@@ -419,7 +435,9 @@ void WvTaskMan::_stackmaster()
92 // all current stack allocations) and go back to get_stack
93 // (or the constructor, if that's what called us)
94 context_return = 1;
95+#ifdef __GLIBC__
96 setcontext(&get_stack_return);
97+#endif
98 }
99 else
100 {
101@@ -474,7 +492,9 @@ void WvTaskMan::do_task()
102
103 // back here from longjmp; someone wants stack space.
104 context_return = 0;
105+#ifdef __GLIBC__
106 assert(getcontext(&task->mystate) == 0);
107+#endif
108 if (context_return == 0)
109 {
110 // done the setjmp; that means the target task now has
111@@ -510,7 +530,9 @@ void WvTaskMan::do_task()
112 }
113 else
114 {
115+#ifdef __GLIBC__
116 assert(getcontext(&task->func_call) == 0);
117+#endif
118 task->func_call.uc_stack.ss_size = task->stacksize;
119 task->func_call.uc_stack.ss_sp = task->stack;
120 task->func_call.uc_stack.ss_flags = 0;
121@@ -521,9 +543,11 @@ void WvTaskMan::do_task()
122 (void (*)(void))call_func, 1, task);
123
124 context_return = 0;
125+#ifdef __GLIBC__
126 assert(getcontext(&task->func_return) == 0);
127 if (context_return == 0)
128 setcontext(&task->func_call);
129+#endif
130 }
131
132 // the task's function terminated.
133--
1342.13.3
135
diff --git a/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb b/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb
index b9f62da7b5..b220f9c1bc 100644
--- a/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb
+++ b/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb
@@ -15,7 +15,6 @@ SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.gz \
15 file://gcc-6.patch \ 15 file://gcc-6.patch \
16 file://argp.patch \ 16 file://argp.patch \
17 file://0001-Check-for-limits.h-during-configure.patch \ 17 file://0001-Check-for-limits.h-during-configure.patch \
18 file://0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch \
19 file://0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch \ 18 file://0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch \
20 file://0004-wvcrash-Replace-use-of-basename-API.patch \ 19 file://0004-wvcrash-Replace-use-of-basename-API.patch \
21 file://0005-check-for-libexecinfo-during-configure.patch \ 20 file://0005-check-for-libexecinfo-during-configure.patch \
@@ -28,6 +27,8 @@ SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.gz \
28SRC_URI[md5sum] = "2760dac31a43d452a19a3147bfde571c" 27SRC_URI[md5sum] = "2760dac31a43d452a19a3147bfde571c"
29SRC_URI[sha256sum] = "8403f5fbf83aa9ac0c6ce15d97fd85607488152aa84e007b7d0621b8ebc07633" 28SRC_URI[sha256sum] = "8403f5fbf83aa9ac0c6ce15d97fd85607488152aa84e007b7d0621b8ebc07633"
30 29
30COMPATIBLE_HOST_libc-musl = "null"
31
31inherit autotools-brokensep pkgconfig 32inherit autotools-brokensep pkgconfig
32 33
33TARGET_CFLAGS_append = " -fno-tree-dce -fno-optimize-sibling-calls" 34TARGET_CFLAGS_append = " -fno-tree-dce -fno-optimize-sibling-calls"
diff --git a/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index 5bb0beb7a3..1f0a7b9470 100644
--- a/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -66,11 +66,12 @@ RDEPENDS_packagegroup-meta-oe-connectivity ="\
66 modemmanager mosh \ 66 modemmanager mosh \
67 paho-mqtt-c phonet-utils rabbitmq-c rfkill rtorrent \ 67 paho-mqtt-c phonet-utils rabbitmq-c rfkill rtorrent \
68 ser2net smstools3 telepathy-glib telepathy-idle thrift \ 68 ser2net smstools3 telepathy-glib telepathy-idle thrift \
69 usbmuxd wvstreams zabbix zeromq \ 69 usbmuxd zabbix zeromq \
70 ${@bb.utils.contains("DISTRO_FEATURES", "x11", "obex-data-server", "", d)} \ 70 ${@bb.utils.contains("DISTRO_FEATURES", "x11", "obex-data-server", "", d)} \
71 libmikmod \ 71 libmikmod \
72 obexftp openobex libnet wvdial \ 72 obexftp openobex libnet \
73 " 73 "
74RDEPENDS_packagegroup-meta-oe-connectivity_append_libc-glibc = " wvstreams wvdial"
74 75
75# dracut needs dracut 76# dracut needs dracut
76RDEPENDS_packagegroup-meta-oe-core ="\ 77RDEPENDS_packagegroup-meta-oe-core ="\