[OE-core] [PATCH V2 1/8] populate_sdk_ext.bbclass: break the long lines
Robert Yang
liezhi.yang at windriver.com
Wed Dec 14 08:37:33 UTC 2016
Hi Ulf,
On 12/14/2016 04:02 PM, Ulf Magnusson wrote:
> I'm not a big fan of those run-on lines either, so thanks. Some
> superficial comments:
>
> On Wed, Dec 14, 2016 at 8:24 AM, Robert Yang <liezhi.yang at windriver.com> wrote:
>> Make it easier to read and maintain.
>>
>> [YOCTO #10647]
>>
>> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
>> ---
>> meta/classes/populate_sdk_ext.bbclass | 24 ++++++++++++++++++++----
>> 1 file changed, 20 insertions(+), 4 deletions(-)
>>
>> diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass
>> index 3c3a73c..adef96d 100644
>> --- a/meta/classes/populate_sdk_ext.bbclass
>> +++ b/meta/classes/populate_sdk_ext.bbclass
>> @@ -567,7 +567,13 @@ sdk_ext_postinst() {
>> printf "\nExtracting buildtools...\n"
>> cd $target_sdk_dir
>> env_setup_script="$target_sdk_dir/environment-setup-${REAL_MULTIMACH_TARGET_SYS}"
>> - printf "buildtools\ny" | ./${SDK_BUILDTOOLS_INSTALLER} > buildtools.log || { printf 'ERROR: buildtools installation failed:\n' ; cat buildtools.log ; echo "printf 'ERROR: this SDK was not fully installed and needs reinstalling\n'" >> $env_setup_script ; exit 1 ; }
>> + ./${SDK_BUILDTOOLS_INSTALLER} -d buildtools -y > buildtools.log
>> + if [ $? -ne 0 ]; then
>> + printf 'ERROR: buildtools installation failed:\n'
>> + cat buildtools.log
>> + echo "printf 'ERROR: this SDK was not fully installed and needs reinstalling\n'" >> $env_setup_script
>> + exit 1
>> + fi
>
> Maybe it's a deliberate style choice, but just in case you're not
> aware of it, the following two snippets work the same:
>
> ./${SDK_BUILDTOOLS_INSTALLER} -d buildtools -y > buildtools.log
> if [ $? -ne 0 ]; then
> ...
>
> if ! ./${SDK_BUILDTOOLS_INSTALLER} -d buildtools -y > buildtools.log; then
> ...
I'm not sure which is better. We have both of them in the real world.
>
>>
>> # Delete the buildtools tar file since it won't be used again
>> rm -f ./${SDK_BUILDTOOLS_INSTALLER}
>> @@ -588,7 +594,9 @@ sdk_ext_postinst() {
>> echo "printf 'SDK environment now set up; additionally you may now run devtool to perform development tasks.\nRun devtool --help for further details.\n'" >> $env_setup_script
>>
>> # Warn if trying to use external bitbake and the ext SDK together
>> - echo "(which bitbake > /dev/null 2>&1 && echo 'WARNING: attempting to use the extensible SDK in an environment set up to run bitbake - this may lead to unexpected results. Please source this script in a new shell session instead.') || true" >> $env_setup_script
>> + echo "(which bitbake > /dev/null 2>&1 && \
>> + echo 'WARNING: attempting to use the extensible SDK in an environment set up to run bitbake - this may lead to unexpected results. Please source this script in a new shell session instead.') || \
>> + true" >> $env_setup_script
>>
>> if [ "$prepare_buildsystem" != "no" ]; then
>> printf "Preparing build system...\n"
>> @@ -596,8 +604,16 @@ sdk_ext_postinst() {
>> # current working directory when first ran, nor will it set $1 when
>> # 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 ; }
>> - rm $target_sdk_dir/ext-sdk-prepare.py
>> + sh -c ". buildtools/environment-setup* > $LOGFILE && \
>> + cd $target_sdk_dir/`dirname ${oe_init_build_env_path}` && \
>> + set $target_sdk_dir && \
>
> I know it was there before, but I wonder what the point of the 'set'
> is here. It sets $1 to $target_sdk_dir, but $target_sdk_dir is already
> passed explicitly to $target_sdk_dir/${oe_init_build_env_path} below.
Will remove it in another thread the extra sed is useless here.
>
>> + . $target_sdk_dir/${oe_init_build_env_path} $target_sdk_dir >> $LOGFILE && \
>> + python $target_sdk_dir/ext-sdk-prepare.py $LOGFILE '${SDK_INSTALL_TARGETS}'"
>> + if [ $? -ne ]; then
>> + echo "printf 'ERROR: this SDK was not fully installed and needs reinstalling\n'" >> $env_setup_script
>> + exit 1
>> + rm $target_sdk_dir/ext-sdk-prepare.py
>
> Unreachable code.
Good catch, thanks, updated in the repo.
// Robert
>
>> + fi
>> fi
>> echo done
>> }
>> --
>> 2.10.2
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
> Cheers,
> Ulf
>
More information about the Openembedded-core
mailing list