ptest.bbclass: fix error on ubuntu host
The do_install_ptest_base function uses 'type -t' command to check whether do_install_ptest is a function and acts correspondingly. However, the 'type' command is a shell builtin and its behavior is not all the same across Linux distros. On ubuntu, if we use #!/bin/sh as the interpreter for the scripts, as in the case of our intermediate scripts, the '-t' option for the 'type' command is not supported. So the check always fails and the do_install_ptest function, even if defined, is not run. The same problem also applies to the do_configure_ptest_base and the do_compile_ptest_base functions. This patch fixes this problem by avoiding using the 'type' builtin command. [YOCTO #5128] (From OE-Core rev: d5a4f031b460437e9501e4e65194ce94d3641130) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
0ca5d1fb38
commit
8905f7715d
|
@ -16,22 +16,30 @@ RDEPENDS_${PN}-ptest_virtclass-nativesdk = ""
|
|||
|
||||
PACKAGES =+ "${@base_contains('DISTRO_FEATURES', 'ptest', '${PN}-ptest', '', d)}"
|
||||
|
||||
do_configure_ptest() {
|
||||
:
|
||||
}
|
||||
|
||||
do_configure_ptest_base() {
|
||||
if [ ${PTEST_ENABLED} = 1 ]; then
|
||||
if [ a$(type -t do_configure_ptest) = afunction ]; then
|
||||
do_configure_ptest
|
||||
fi
|
||||
do_configure_ptest
|
||||
fi
|
||||
}
|
||||
|
||||
do_compile_ptest() {
|
||||
:
|
||||
}
|
||||
|
||||
do_compile_ptest_base() {
|
||||
if [ ${PTEST_ENABLED} = 1 ]; then
|
||||
if [ a$(type -t do_compile_ptest) = afunction ]; then
|
||||
do_compile_ptest
|
||||
fi
|
||||
do_compile_ptest
|
||||
fi
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
:
|
||||
}
|
||||
|
||||
do_install_ptest_base() {
|
||||
if [ ${PTEST_ENABLED} = 1 ]; then
|
||||
if [ -f ${WORKDIR}/run-ptest ]; then
|
||||
|
@ -39,9 +47,7 @@ do_install_ptest_base() {
|
|||
if grep -q install-ptest: Makefile; then
|
||||
oe_runmake DESTDIR=${D}${PTEST_PATH} install-ptest
|
||||
fi
|
||||
if [ a$(type -t do_install_ptest) = afunction ]; then
|
||||
do_install_ptest
|
||||
fi
|
||||
do_install_ptest
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue