All of lore.kernel.org
 help / color / mirror / Atom feed
From: Robert Yang <liezhi.yang@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 1/1] toolchain-shar-relocate.sh: make it faster
Date: Mon, 28 Sep 2015 15:46:12 +0800	[thread overview]
Message-ID: <5608F044.1000909@windriver.com> (raw)
In-Reply-To: <c863983a0f775079fa0bff7983be09ae6841e923.1443424138.git.liezhi.yang@windriver.com>



On 09/28/2015 03:09 PM, Robert Yang wrote:
> Make the extrating faster by:
> * Merge the two heavy t"for .. find" loops into one

Sorry, a typo, should be no "t", updated in the repo.

// Robert

> * Move the commands out of for loop rather than inside, this can reduce the
>    forking amount.
>
> As a result, when install:
> * buildtools-nativesdk-standalone: 14s -> 7s (50% saved)
> * core-image-minimal-core2-64-toolchain: 56s -> 47s (17% saved)
>
> [YOCTO #8404]
>
> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
> ---
>   meta/files/toolchain-shar-relocate.sh |   24 ++++++++++--------------
>   1 file changed, 10 insertions(+), 14 deletions(-)
>
> diff --git a/meta/files/toolchain-shar-relocate.sh b/meta/files/toolchain-shar-relocate.sh
> index dfb8e16..4ef2927 100644
> --- a/meta/files/toolchain-shar-relocate.sh
> +++ b/meta/files/toolchain-shar-relocate.sh
> @@ -26,25 +26,21 @@ if [ $relocate = 1 ] ; then
>   	fi
>   fi
>
> -# replace @SDKPATH@ with the new prefix in all text files: configs/scripts/etc
> +# replace @SDKPATH@ with the new prefix in all text files: configs/scripts/etc.
> +# replace the host perl with SDK perl.
>   for replace in "$target_sdk_dir -maxdepth 1" "$native_sysroot"; do
> -	$SUDO_EXEC find $replace -type f -exec file '{}' \; | \
> -		grep ":.*\(ASCII\|script\|source\).*text" | \
> -		awk -F':' '{printf "\"%s\"\n", $1}' | \
> -		grep -v "$target_sdk_dir/environment-setup-*" | \
> -		$SUDO_EXEC xargs -n32 sed -i -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:g"
> -done
> +	$SUDO_EXEC find $replace -type f
> +done | xargs -n100 file | grep ":.*\(ASCII\|script\|source\).*text" | \
> +    awk -F':' '{printf "\"%s\"\n", $1}' | \
> +    grep -v "$target_sdk_dir/environment-setup-*" | \
> +    xargs -n100 $SUDO_EXEC sed -i \
> +        -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:g" \
> +        -e "s:^#! */usr/bin/perl.*:#! /usr/bin/env perl:g" \
> +        -e "s: /usr/bin/perl: /usr/bin/env perl:g"
>
>   # change all symlinks pointing to @SDKPATH@
>   for l in $($SUDO_EXEC find $native_sysroot -type l); do
>   	$SUDO_EXEC ln -sfn $(readlink $l|$SUDO_EXEC sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:") $l
>   done
>
> -# find out all perl scripts in $native_sysroot and modify them replacing the
> -# host perl with SDK perl.
> -for perl_script in $($SUDO_EXEC find $native_sysroot -type f -exec grep -l "^#!.*perl" '{}' \;); do
> -	$SUDO_EXEC sed -i -e "s:^#! */usr/bin/perl.*:#! /usr/bin/env perl:g" -e \
> -		"s: /usr/bin/perl: /usr/bin/env perl:g" $perl_script
> -done
> -
>   echo done
>


      reply	other threads:[~2015-09-28  7:46 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-28  7:09 [yocto 2.1] [PATCH 0/1] toolchain-shar-relocate.sh: make it faster Robert Yang
2015-09-28  7:09 ` [PATCH 1/1] " Robert Yang
2015-09-28  7:46   ` Robert Yang [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5608F044.1000909@windriver.com \
    --to=liezhi.yang@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.