summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/busybox
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2018-11-23 10:16:31 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-11-23 23:35:19 +0000
commitf72e95df33a528f7d00c152d55108ac850faf197 (patch)
tree5cd071fa0fdd8ad2d8b87afea8dbb711bb77795b /meta/recipes-core/busybox
parent41e772d72693d3fda4e7821a65ea96e2b873d96b (diff)
downloadopenembedded-core-contrib-f72e95df33a528f7d00c152d55108ac850faf197.tar.gz
busybox: ship a symlink farm for ptest
Ship a symlink farm for busybox, which correctly considers SUID split. This ensures that all utilities used in busybox's test cases will first use that ones that are provided by busybox. Modify run-ptest to prepend the directory to PATH, and also change variable name from current_dir to current_path, as the former is a little misleading. `readlink -f $0' gets a path to the current script instead of the current directory. (From OE-Core rev: 7ef8f96941ed52b2a00cbe8f57511a8891b39698) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/busybox')
-rw-r--r--meta/recipes-core/busybox/busybox.inc14
-rw-r--r--meta/recipes-core/busybox/files/run-ptest5
2 files changed, 17 insertions, 2 deletions
diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
index 6abbb5492f..f7455d301f 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -349,6 +349,20 @@ do_install_ptest () {
cp -r ${B}/testsuite ${D}${PTEST_PATH}/
cp ${B}/.config ${D}${PTEST_PATH}/
ln -s /bin/busybox ${D}${PTEST_PATH}/busybox
+
+ mkdir ${D}${PTEST_PATH}/bin
+ if [ "${BUSYBOX_SPLIT_SUID}" = "1" ]; then
+ while read link; do
+ ln -s ${base_bindir}/busybox.suid ${D}${PTEST_PATH}/bin/$(basename $link)
+ done <${D}${sysconfdir}/busybox.links.suid
+ while read link; do
+ ln -s ${base_bindir}/busybox.nosuid ${D}${PTEST_PATH}/bin/$(basename $link)
+ done <${D}${sysconfdir}/busybox.links.nosuid
+ else
+ while read link; do
+ ln -s ${base_bindir}/busybox ${D}${PTEST_PATH}/bin/$(basename $link)
+ done <${D}${sysconfdir}/busybox.links
+ fi
}
inherit update-alternatives
diff --git a/meta/recipes-core/busybox/files/run-ptest b/meta/recipes-core/busybox/files/run-ptest
index 8b99bedc06..b19e5b5343 100644
--- a/meta/recipes-core/busybox/files/run-ptest
+++ b/meta/recipes-core/busybox/files/run-ptest
@@ -1,7 +1,8 @@
#!/bin/sh
-current_dir=$(readlink -f $0)
-export bindir=$(dirname $current_dir)
+current_path=$(readlink -f $0)
+export bindir=$(dirname $current_path)
+export PATH=$bindir/bin:$PATH
export SKIP_KNOWN_BUGS=1
cd testsuite || exit 1