Patchwork [for-denzil] bitbake: compile tar-replacement firstly

login
register
mail settings
Submitter Matthew McClintock
Date Nov. 6, 2012, 4:20 p.m.
Message ID <1352218848-19801-1-git-send-email-msm@freescale.com>
Download mbox | patch
Permalink /patch/38809/
State New
Headers show

Comments

Matthew McClintock - Nov. 6, 2012, 4:20 p.m.
From: "Roy.Li" <rongqing.li@windriver.com>

Compiling tar-replacement or not is decided by version of host tar,
if the host tar version is lower than 1.23, Compiling tar-replacement
is needed.

When doing popoluate tar-replacement sysroot to write the tar to
sysroot, but writing is not finished. other packages probably
use the being written tar to unzip file, which will lead to failure
and report the below error:
"bitbake_build/tmp/sysroots/x86_64-linux/usr/bin/tar: Text file busy"

Now we compile tar-replacement firstly to ensure that a being written
tar command will not be used.

(From OE-Core rev: 3c1c4719fc96f6f1fbb257413d6baf3d91fdf4e8)

Signed-off-by: Roy.Li <rongqing.li@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 scripts/bitbake |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
Scott Garman - Nov. 30, 2012, 2:56 a.m.
On 11/06/2012 08:20 AM, Matthew McClintock wrote:
> From: "Roy.Li" <rongqing.li@windriver.com>
>
> Compiling tar-replacement or not is decided by version of host tar,
> if the host tar version is lower than 1.23, Compiling tar-replacement
> is needed.
>
> When doing popoluate tar-replacement sysroot to write the tar to
> sysroot, but writing is not finished. other packages probably
> use the being written tar to unzip file, which will lead to failure
> and report the below error:
> "bitbake_build/tmp/sysroots/x86_64-linux/usr/bin/tar: Text file busy"
>
> Now we compile tar-replacement firstly to ensure that a being written
> tar command will not be used.
>
> (From OE-Core rev: 3c1c4719fc96f6f1fbb257413d6baf3d91fdf4e8)
>
> Signed-off-by: Roy.Li <rongqing.li@windriver.com>
> Signed-off-by: Saul Wold <sgw@linux.intel.com>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
>   scripts/bitbake |    7 ++++++-
>   1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/bitbake b/scripts/bitbake
> index 3772d82..c52d5d2 100755
> --- a/scripts/bitbake
> +++ b/scripts/bitbake
> @@ -134,7 +134,12 @@ if [ $buildpseudo -gt 0 ]; then
>               fi
>           done
>       done
> -    bitbake pseudo-native $TARTARGET $additionalopts -c populate_sysroot
> +
> +    if [ $needtar = "1" ]; then
> +	bitbake $TARTARGET -c populate_sysroot
> +    fi
> +
> +    bitbake pseudo-native $additionalopts -c populate_sysroot
>       ret=$?
>       if [ "$ret" != "0" ]; then
>           exit 1
>

Pulled into sgarman/denzil-next.

Thanks,

Scott

Patch

diff --git a/scripts/bitbake b/scripts/bitbake
index 3772d82..c52d5d2 100755
--- a/scripts/bitbake
+++ b/scripts/bitbake
@@ -134,7 +134,12 @@  if [ $buildpseudo -gt 0 ]; then
             fi
         done
     done
-    bitbake pseudo-native $TARTARGET $additionalopts -c populate_sysroot
+
+    if [ $needtar = "1" ]; then
+	bitbake $TARTARGET -c populate_sysroot
+    fi
+
+    bitbake pseudo-native $additionalopts -c populate_sysroot
     ret=$?
     if [ "$ret" != "0" ]; then
         exit 1