On 08/13/2013 01:20 AM, rongqing...@windriver.com wrote:
From: "Roy.Li" <rongqing...@windriver.com>
sstate_package creates hardlink from sysroot to SSTATE_BUILDDIR, then
sstate_create_package will store SSTATE_BUILDDIR into a archive file by
tar, but once other packages install the same file into sysroot, the
creating the archive file will fail with below error:
DEBUG: Executing shell function sstate_create_package
tar: x86_64-linux/usr/share/aclocal/xorg-macros.m4: file changed as we
read it
This kind of error is harmless, use --ignore-failed-read to ignore it.
I am not sure it's so harmless, what if the file is corrupted, then we
have a bad sstate tarball. You have identified the part of the root
cause being the hardlink, but what if the file actually does change
(which would be a different bug potentially), then your packaging a
differet set of macros (in this case) with the sysroot.
Sau!
Signed-off-by: Roy.Li <rongqing...@windriver.com>
---
meta/classes/sstate.bbclass | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index c1ca54b..3e2fedd 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -565,7 +565,7 @@ sstate_create_package () {
TFILE=`mktemp ${SSTATE_PKG}.XXXXXXXX`
# Need to handle empty directories
if [ "$(ls -A)" ]; then
- tar -czf $TFILE *
+ tar --ignore-failed-read -czf $TFILE *
else
tar -cz --file=$TFILE --files-from=/dev/null
fi
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core