From 5397a7acd8137103faef197983c4bdcba5d0d467 Mon Sep 17 00:00:00 2001 From: Manjukumar Matha Date: Thu, 21 Feb 2019 13:32:31 -0800 Subject: populate_sdk_ext.bbclass: Fix the derivate sdk build error from an published eSDK When you install the eSDK in publish mode and then try to build a derivative sdk using devtool build-sdk, the following error happens | NOTE: Generating sstate task list... | NOTE: Generating sstate-cache... | NOTE: Generating sstate-cache... | DEBUG: Python function copy_buildsystem finished | NOTE: Executing install_tools ... | DEBUG: Executing shell function install_tools | install: cannot stat /core/meta/files/ext-sdk-prepare.py': No such file or directory This patch will fix the error by installing ext-sdk-prepare.py in publish mode, so that derivative sdk can be generated. (From OE-Core rev: aab4089a57a655ca5a7792f05eb5d8dcdb934ae1) Signed-off-by: Manjukumar Matha Signed-off-by: Richard Purdie --- meta/classes/populate_sdk_ext.bbclass | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'meta/classes/populate_sdk_ext.bbclass') diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass index 40b0375e0b..800e1175d7 100644 --- a/meta/classes/populate_sdk_ext.bbclass +++ b/meta/classes/populate_sdk_ext.bbclass @@ -589,11 +589,8 @@ sdk_ext_preinst() { exit 1 fi SDK_EXTENSIBLE="1" - if [ "$publish" = "1" ] ; then - EXTRA_TAR_OPTIONS="$EXTRA_TAR_OPTIONS --exclude=ext-sdk-prepare.py" - if [ "${SDK_EXT_TYPE}" = "minimal" ] ; then - EXTRA_TAR_OPTIONS="$EXTRA_TAR_OPTIONS --exclude=sstate-cache" - fi + if [ "$publish" = "1" ] && [ "${SDK_EXT_TYPE}" = "minimal" ] ; then + EXTRA_TAR_OPTIONS="$EXTRA_TAR_OPTIONS --exclude=sstate-cache" fi } SDK_PRE_INSTALL_COMMAND_task-populate-sdk-ext = "${sdk_ext_preinst}" @@ -635,6 +632,8 @@ sdk_ext_postinst() { # sourcing a script. That is why this has to look so ugly. LOGFILE="$target_sdk_dir/preparing_build_system.log" sh -c ". buildtools/environment-setup* > $LOGFILE && cd $target_sdk_dir/`dirname ${oe_init_build_env_path}` && set $target_sdk_dir && . $target_sdk_dir/${oe_init_build_env_path} $target_sdk_dir >> $LOGFILE && python $target_sdk_dir/ext-sdk-prepare.py $LOGFILE '${SDK_INSTALL_TARGETS}'" || { echo "printf 'ERROR: this SDK was not fully installed and needs reinstalling\n'" >> $env_setup_script ; exit 1 ; } + fi + if [ -e $target_sdk_dir/ext-sdk-prepare.py ]; then rm $target_sdk_dir/ext-sdk-prepare.py fi echo done -- cgit v1.2.3-54-g00ecf