summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-core/toybox
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-core/toybox
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-core/toybox')
-rw-r--r--meta-oe/recipes-core/toybox/toybox/0001-Match-paths-with-busybox.patch383
-rw-r--r--meta-oe/recipes-core/toybox/toybox_0.5.0.bb64
2 files changed, 447 insertions, 0 deletions
diff --git a/meta-oe/recipes-core/toybox/toybox/0001-Match-paths-with-busybox.patch b/meta-oe/recipes-core/toybox/toybox/0001-Match-paths-with-busybox.patch
new file mode 100644
index 000000000..e071f22b1
--- /dev/null
+++ b/meta-oe/recipes-core/toybox/toybox/0001-Match-paths-with-busybox.patch
@@ -0,0 +1,383 @@
1From 27f5ca9f1e212e5ab00cde0bfc91282fc7ff5e16 Mon Sep 17 00:00:00 2001
2From: Paul Barker <paul@paulbarker.me.uk>
3Date: Mon, 18 Aug 2014 12:18:16 +0000
4Subject: [PATCH] Match paths with busybox
5
6To ensure that toybox can be installed alongside busybox without confusing
7update-alternatives, the paths of the links installed by toybox should match
8those installed by busybox. This is accomplished by changing the flags of a few
9tools within toybox.
10
11v2:
12 - Forward ported from v0.4.9 to v0.5.0
13 - Move new 'mount' command
14
15Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
16
17Upstream-status: Inappropriate
18 (specific to update-alternatives use in OpenEmbedded)
19---
20 toys/lsb/mount.c | 2 +-
21 toys/lsb/pidof.c | 2 +-
22 toys/other/chvt.c | 2 +-
23 toys/other/ifconfig.c | 2 +-
24 toys/other/insmod.c | 2 +-
25 toys/other/lsmod.c | 2 +-
26 toys/other/netcat.c | 2 +-
27 toys/other/pivot_root.c | 2 +-
28 toys/other/readlink.c | 2 +-
29 toys/other/reboot.c | 6 +++---
30 toys/other/rfkill.c | 2 +-
31 toys/other/rmmod.c | 2 +-
32 toys/other/swapoff.c | 2 +-
33 toys/other/swapon.c | 2 +-
34 toys/other/sysctl.c | 2 +-
35 toys/posix/cut.c | 2 +-
36 toys/posix/df.c | 2 +-
37 toys/posix/head.c | 2 +-
38 toys/posix/id.c | 6 +++---
39 toys/posix/mkfifo.c | 2 +-
40 toys/posix/renice.c | 2 +-
41 toys/posix/tail.c | 2 +-
42 toys/posix/tee.c | 2 +-
43 toys/posix/uniq.c | 2 +-
44 toys/posix/who.c | 2 +-
45 25 files changed, 29 insertions(+), 29 deletions(-)
46
47diff --git a/toys/lsb/mount.c b/toys/lsb/mount.c
48index 01f5c32..65a5aa2 100644
49--- a/toys/lsb/mount.c
50+++ b/toys/lsb/mount.c
51@@ -6,7 +6,7 @@
52 * Note: -hV is bad spec, haven't implemented -FsLU yet
53 * no mtab (/proc/mounts does it) so -n is NOP.
54
55-USE_MOUNT(NEWTOY(mount, "?O:afnrvwt:o*[-rw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
56+USE_MOUNT(NEWTOY(mount, "?O:afnrvwt:o*[-rw]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
57 USE_NFSMOUNT(NEWTOY(nfsmount, "?<2>2", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
58
59 config MOUNT
60diff --git a/toys/lsb/pidof.c b/toys/lsb/pidof.c
61index 51b742f..a8fc8ef 100644
62--- a/toys/lsb/pidof.c
63+++ b/toys/lsb/pidof.c
64@@ -5,7 +5,7 @@
65 *
66 * http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/pidof.html
67
68-USE_PIDOF(NEWTOY(pidof, "<1so:", TOYFLAG_USR|TOYFLAG_BIN))
69+USE_PIDOF(NEWTOY(pidof, "<1so:", TOYFLAG_BIN))
70
71 config PIDOF
72 bool "pidof"
73diff --git a/toys/other/chvt.c b/toys/other/chvt.c
74index 6544265..a93327f 100644
75--- a/toys/other/chvt.c
76+++ b/toys/other/chvt.c
77@@ -2,7 +2,7 @@
78 *
79 * Copyright (C) 2008 David Anders <danders@amltd.com>
80
81-USE_CHVT(NEWTOY(chvt, "<1", TOYFLAG_USR|TOYFLAG_SBIN))
82+USE_CHVT(NEWTOY(chvt, "<1", TOYFLAG_USR|TOYFLAG_BIN))
83
84 config CHVT
85 bool "chvt"
86diff --git a/toys/other/ifconfig.c b/toys/other/ifconfig.c
87index f5d4215..5e7c54c 100644
88--- a/toys/other/ifconfig.c
89+++ b/toys/other/ifconfig.c
90@@ -6,7 +6,7 @@
91 *
92 * Not in SUSv4.
93
94-USE_IFCONFIG(NEWTOY(ifconfig, "?a", TOYFLAG_BIN))
95+USE_IFCONFIG(NEWTOY(ifconfig, "?a", TOYFLAG_SBIN))
96
97 config IFCONFIG
98 bool "ifconfig"
99diff --git a/toys/other/insmod.c b/toys/other/insmod.c
100index 8aa959a..75fd7cd 100644
101--- a/toys/other/insmod.c
102+++ b/toys/other/insmod.c
103@@ -2,7 +2,7 @@
104 *
105 * Copyright 2012 Elie De Brauwer <eliedebrauwer@gmail.com>
106
107-USE_INSMOD(NEWTOY(insmod, "<1", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
108+USE_INSMOD(NEWTOY(insmod, "<1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
109
110 config INSMOD
111 bool "insmod"
112diff --git a/toys/other/lsmod.c b/toys/other/lsmod.c
113index b8f5d82..4d16048 100644
114--- a/toys/other/lsmod.c
115+++ b/toys/other/lsmod.c
116@@ -2,7 +2,7 @@
117 *
118 * Copyright 2012 Elie De Brauwer <eliedebrauwer@gmail.com>
119
120-USE_LSMOD(NEWTOY(lsmod, NULL, TOYFLAG_BIN))
121+USE_LSMOD(NEWTOY(lsmod, NULL, TOYFLAG_SBIN))
122
123 config LSMOD
124 bool "lsmod"
125diff --git a/toys/other/netcat.c b/toys/other/netcat.c
126index 3c6f630..188c3d1 100644
127--- a/toys/other/netcat.c
128+++ b/toys/other/netcat.c
129@@ -4,7 +4,7 @@
130 *
131 * TODO: udp, ipv6, genericize for telnet/microcom/tail-f
132
133-USE_NETCAT(OLDTOY(nc, netcat, USE_NETCAT_LISTEN("tl^L^")"w#p#s:q#f:", TOYFLAG_BIN))
134+USE_NETCAT(OLDTOY(nc, netcat, USE_NETCAT_LISTEN("tl^L^")"w#p#s:q#f:", TOYFLAG_USR|TOYFLAG_BIN))
135 USE_NETCAT(NEWTOY(netcat, USE_NETCAT_LISTEN("tl^L^")"w#p#s:q#f:", TOYFLAG_BIN))
136
137 config NETCAT
138diff --git a/toys/other/pivot_root.c b/toys/other/pivot_root.c
139index 3e4beac..ce3d3a8 100644
140--- a/toys/other/pivot_root.c
141+++ b/toys/other/pivot_root.c
142@@ -2,7 +2,7 @@
143 *
144 * Copyright 2012 Rob Landley <rob@landley.net>
145
146-USE_PIVOT_ROOT(NEWTOY(pivot_root, "<2>2", TOYFLAG_USR|TOYFLAG_BIN))
147+USE_PIVOT_ROOT(NEWTOY(pivot_root, "<2>2", TOYFLAG_SBIN))
148
149 config PIVOT_ROOT
150 bool "pivot_root"
151diff --git a/toys/other/readlink.c b/toys/other/readlink.c
152index 1c33362..fecd1ef 100644
153--- a/toys/other/readlink.c
154+++ b/toys/other/readlink.c
155@@ -2,7 +2,7 @@
156 *
157 * Copyright 2007 Rob Landley <rob@landley.net>
158
159-USE_READLINK(NEWTOY(readlink, "<1>1fenq[-fe]", TOYFLAG_BIN))
160+USE_READLINK(NEWTOY(readlink, "<1>1fenq[-fe]", TOYFLAG_USR|TOYFLAG_BIN))
161
162 config READLINK
163 bool "readlink"
164diff --git a/toys/other/reboot.c b/toys/other/reboot.c
165index 5cbc4f8..f8baafc 100644
166--- a/toys/other/reboot.c
167+++ b/toys/other/reboot.c
168@@ -2,9 +2,9 @@
169 *
170 * Copyright 2013 Elie De Brauwer <eliedebrauwer@gmail.com>
171
172-USE_REBOOT(NEWTOY(reboot, "n", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
173-USE_REBOOT(OLDTOY(halt, reboot, "n", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
174-USE_REBOOT(OLDTOY(poweroff, reboot, "n", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
175+USE_REBOOT(NEWTOY(reboot, "n", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
176+USE_REBOOT(OLDTOY(halt, reboot, "n", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
177+USE_REBOOT(OLDTOY(poweroff, reboot, "n", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
178
179 config REBOOT
180 bool "reboot"
181diff --git a/toys/other/rfkill.c b/toys/other/rfkill.c
182index af3efe1..7527ec7 100644
183--- a/toys/other/rfkill.c
184+++ b/toys/other/rfkill.c
185@@ -5,7 +5,7 @@
186 *
187 * No Standard
188
189-USE_RFKILL(NEWTOY(rfkill, "<1>2", TOYFLAG_SBIN))
190+USE_RFKILL(NEWTOY(rfkill, "<1>2", TOYFLAG_USR|TOYFLAG_SBIN))
191
192 config RFKILL
193 bool "rfkill"
194diff --git a/toys/other/rmmod.c b/toys/other/rmmod.c
195index b789acc..10c134c 100644
196--- a/toys/other/rmmod.c
197+++ b/toys/other/rmmod.c
198@@ -2,7 +2,7 @@
199 *
200 * Copyright 2012 Elie De Brauwer <eliedebrauwer@gmail.com>
201
202-USE_RMMOD(NEWTOY(rmmod, "<1wf", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
203+USE_RMMOD(NEWTOY(rmmod, "<1wf", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
204
205 config RMMOD
206 bool "rmmod"
207diff --git a/toys/other/swapoff.c b/toys/other/swapoff.c
208index b89e915..fb17130 100644
209--- a/toys/other/swapoff.c
210+++ b/toys/other/swapoff.c
211@@ -2,7 +2,7 @@
212 *
213 * Copyright 2012 Elie De Brauwer <eliedebrauwer@gmail.com>
214
215-USE_SWAPOFF(NEWTOY(swapoff, "<1>1", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
216+USE_SWAPOFF(NEWTOY(swapoff, "<1>1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
217
218 config SWAPOFF
219 bool "swapoff"
220diff --git a/toys/other/swapon.c b/toys/other/swapon.c
221index 49f1249..838d382 100644
222--- a/toys/other/swapon.c
223+++ b/toys/other/swapon.c
224@@ -2,7 +2,7 @@
225 *
226 * Copyright 2012 Elie De Brauwer <eliedebrauwer@gmail.com>
227
228-USE_SWAPON(NEWTOY(swapon, "<1>1p#<0>32767", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
229+USE_SWAPON(NEWTOY(swapon, "<1>1p#<0>32767", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
230
231 config SWAPON
232 bool "swapon"
233diff --git a/toys/other/sysctl.c b/toys/other/sysctl.c
234index 8e57ca1..0c6c640 100644
235--- a/toys/other/sysctl.c
236+++ b/toys/other/sysctl.c
237@@ -5,7 +5,7 @@
238 *
239 * No Standard
240
241-USE_SYSCTL(NEWTOY(sysctl, "^neNqwpaA[!ap][!aq][!aw][+aA]", TOYFLAG_USR|TOYFLAG_BIN))
242+USE_SYSCTL(NEWTOY(sysctl, "^neNqwpaA[!ap][!aq][!aw][+aA]", TOYFLAG_SBIN))
243
244 config SYSCTL
245 bool "sysctl"
246diff --git a/toys/posix/cut.c b/toys/posix/cut.c
247index 7f10c5e..1ab3ce8 100644
248--- a/toys/posix/cut.c
249+++ b/toys/posix/cut.c
250@@ -5,7 +5,7 @@
251 *
252 * http://pubs.opengroup.org/onlinepubs/9699919799/utilities/cut.html
253
254-USE_CUT(NEWTOY(cut, "b:|c:|f:|d:sn[!cbf]", TOYFLAG_BIN))
255+USE_CUT(NEWTOY(cut, "b:|c:|f:|d:sn[!cbf]", TOYFLAG_USR|TOYFLAG_BIN))
256
257 config CUT
258 bool "cut"
259diff --git a/toys/posix/df.c b/toys/posix/df.c
260index afb296b..6296dc9 100644
261--- a/toys/posix/df.c
262+++ b/toys/posix/df.c
263@@ -4,7 +4,7 @@
264 *
265 * See http://opengroup.org/onlinepubs/9699919799/utilities/df.html
266
267-USE_DF(NEWTOY(df, "Pkt*a", TOYFLAG_USR|TOYFLAG_SBIN))
268+USE_DF(NEWTOY(df, "Pkt*a", TOYFLAG_BIN))
269
270 config DF
271 bool "df"
272diff --git a/toys/posix/head.c b/toys/posix/head.c
273index e8517d4..3ac4373 100644
274--- a/toys/posix/head.c
275+++ b/toys/posix/head.c
276@@ -4,7 +4,7 @@
277 *
278 * See http://opengroup.org/onlinepubs/9699919799/utilities/head.html
279
280-USE_HEAD(NEWTOY(head, "n#<0=10", TOYFLAG_BIN))
281+USE_HEAD(NEWTOY(head, "n#<0=10", TOYFLAG_USR|TOYFLAG_BIN))
282
283 config HEAD
284 bool "head"
285diff --git a/toys/posix/id.c b/toys/posix/id.c
286index b4d9c00..df79419 100644
287--- a/toys/posix/id.c
288+++ b/toys/posix/id.c
289@@ -6,10 +6,10 @@
290 *
291 * See http://opengroup.org/onlinepubs/9699919799/utilities/id.html
292
293-USE_ID(NEWTOY(id, ">1nGgru[!Ggu]", TOYFLAG_BIN))
294+USE_ID(NEWTOY(id, ">1nGgru[!Ggu]", TOYFLAG_USR|TOYFLAG_BIN))
295 USE_GROUPS(OLDTOY(groups, id, NULL, TOYFLAG_USR|TOYFLAG_BIN))
296-USE_LOGNAME(OLDTOY(logname, id, ">0", TOYFLAG_BIN))
297-USE_LOGNAME(OLDTOY(whoami, id, ">0", TOYFLAG_BIN))
298+USE_LOGNAME(OLDTOY(logname, id, ">0", TOYFLAG_USR|TOYFLAG_BIN))
299+USE_LOGNAME(OLDTOY(whoami, id, ">0", TOYFLAG_USR|TOYFLAG_BIN))
300
301 config ID
302 bool "id"
303diff --git a/toys/posix/mkfifo.c b/toys/posix/mkfifo.c
304index 15fab70..4e0fca3 100644
305--- a/toys/posix/mkfifo.c
306+++ b/toys/posix/mkfifo.c
307@@ -4,7 +4,7 @@
308 *
309 * See http://opengroup.org/onlinepubs/9699919799/utilities/mkfifo.html
310
311-USE_MKFIFO(NEWTOY(mkfifo, "<1m:", TOYFLAG_BIN))
312+USE_MKFIFO(NEWTOY(mkfifo, "<1m:", TOYFLAG_USR|TOYFLAG_BIN))
313
314 config MKFIFO
315 bool "mkfifo"
316diff --git a/toys/posix/renice.c b/toys/posix/renice.c
317index 8c20644..489eb13 100644
318--- a/toys/posix/renice.c
319+++ b/toys/posix/renice.c
320@@ -4,7 +4,7 @@
321 *
322 * See http://pubs.opengroup.org/onlinepubs/9699919799/utilities/renice.html
323
324-USE_RENICE(NEWTOY(renice, "<1gpun#|", TOYFLAG_BIN))
325+USE_RENICE(NEWTOY(renice, "<1gpun#|", TOYFLAG_USR|TOYFLAG_BIN))
326
327 config RENICE
328 bool "renice"
329diff --git a/toys/posix/tail.c b/toys/posix/tail.c
330index e1048be..ba0a55a 100644
331--- a/toys/posix/tail.c
332+++ b/toys/posix/tail.c
333@@ -4,7 +4,7 @@
334 *
335 * See http://opengroup.org/onlinepubs/9699919799/utilities/tail.html
336
337-USE_TAIL(NEWTOY(tail, "fc-n-[-cn]", TOYFLAG_BIN))
338+USE_TAIL(NEWTOY(tail, "fc-n-[-cn]", TOYFLAG_USR|TOYFLAG_BIN))
339
340 config TAIL
341 bool "tail"
342diff --git a/toys/posix/tee.c b/toys/posix/tee.c
343index 0388510..5574088 100644
344--- a/toys/posix/tee.c
345+++ b/toys/posix/tee.c
346@@ -4,7 +4,7 @@
347 *
348 * See http://opengroup.org/onlinepubs/9699919799/utilities/tee.html
349
350-USE_TEE(NEWTOY(tee, "ia", TOYFLAG_BIN))
351+USE_TEE(NEWTOY(tee, "ia", TOYFLAG_USR|TOYFLAG_BIN))
352
353 config TEE
354 bool "tee"
355diff --git a/toys/posix/uniq.c b/toys/posix/uniq.c
356index 3cfdb94..c127cfe 100644
357--- a/toys/posix/uniq.c
358+++ b/toys/posix/uniq.c
359@@ -4,7 +4,7 @@
360 *
361 * See http://opengroup.org/onlinepubs/9699919799/utilities/uniq.html
362
363-USE_UNIQ(NEWTOY(uniq, "f#s#w#zicdu", TOYFLAG_BIN))
364+USE_UNIQ(NEWTOY(uniq, "f#s#w#zicdu", TOYFLAG_USR|TOYFLAG_BIN))
365
366 config UNIQ
367 bool "uniq"
368diff --git a/toys/posix/who.c b/toys/posix/who.c
369index 2c8a2e6..d5cd001 100644
370--- a/toys/posix/who.c
371+++ b/toys/posix/who.c
372@@ -9,7 +9,7 @@
373 * Posix says to support many options (-abdHlmpqrstTu) but this
374 * isn't aimed at minicomputers with modem pools.
375
376-USE_WHO(NEWTOY(who, "a", TOYFLAG_BIN))
377+USE_WHO(NEWTOY(who, "a", TOYFLAG_USR|TOYFLAG_BIN))
378
379 config WHO
380 bool "who"
381--
3822.1.2
383
diff --git a/meta-oe/recipes-core/toybox/toybox_0.5.0.bb b/meta-oe/recipes-core/toybox/toybox_0.5.0.bb
new file mode 100644
index 000000000..9bdba4da5
--- /dev/null
+++ b/meta-oe/recipes-core/toybox/toybox_0.5.0.bb
@@ -0,0 +1,64 @@
1SUMMARY = "Toybox combines common utilities together into a single executable."
2HOMEPAGE = "http://www.landley.net/toybox/"
3
4SRC_URI = "http://www.landley.net/toybox/downloads/${BPN}-${PV}.tar.bz2 \
5 file://0001-Match-paths-with-busybox.patch"
6SRC_URI[md5sum] = "2cb6e8b34134038d86048e117f77765f"
7SRC_URI[sha256sum] = "2718b42154be041435df48d5b5140f4e307767c36b1017e0c8d0da7f75b327a7"
8
9LICENSE = "BSD-0-Clause"
10LIC_FILES_CHKSUM = "file://LICENSE;md5=f0b8b3dd6431bcaa245da0a08bd0d511"
11
12SECTION = "base"
13
14do_configure() {
15 oe_runmake defconfig
16
17 # Disable killall5 as it isn't managed by update-alternatives
18 sed -e 's/CONFIG_KILLALL5=y/# CONFIG_KILLALL5 is not set/' -i .config
19}
20
21do_compile() {
22 oe_runmake toybox_unstripped
23
24 # Create a list of links needed
25 oe_runmake generated/instlist
26 ./generated/instlist long | sed -e 's#^#/#' > toybox.links
27}
28
29do_install() {
30 # Install manually instead of using 'make install'
31 install -d ${D}${base_bindir}
32 if grep -q "CONFIG_TOYBOX_SUID=y" ${B}/.config; then
33 install -m 4755 ${B}/toybox_unstripped ${D}${base_bindir}/toybox
34 else
35 install -m 0755 ${B}/toybox_unstripped ${D}${base_bindir}/toybox
36 fi
37
38 install -d ${D}${sysconfdir}
39 install -m 0644 ${B}/toybox.links ${D}${sysconfdir}
40}
41
42inherit update-alternatives
43
44# If you've chosen to install toybox you probably want it to take precedence
45# over busybox where possible but not over other packages
46ALTERNATIVE_PRIORITY = "60"
47
48python do_package_prepend () {
49 # Read links from /etc/toybox.links and create appropriate
50 # update-alternatives variables
51
52 dvar = d.getVar('D', True)
53 pn = d.getVar('PN', True)
54 target = "/bin/toybox"
55
56 f = open('%s/etc/toybox.links' % (dvar), 'r')
57 for alt_link_name in f:
58 alt_link_name = alt_link_name.strip()
59 alt_name = os.path.basename(alt_link_name)
60 d.appendVar('ALTERNATIVE_%s' % (pn), ' ' + alt_name)
61 d.setVarFlag('ALTERNATIVE_LINK_NAME', alt_name, alt_link_name)
62 d.setVarFlag('ALTERNATIVE_TARGET', alt_name, target)
63 f.close()
64}