[gnome-continuous-yocto/gnomeostree-3.28-rocko: 7345/8267] oe/path.py: copyhardlinktree: don't overwrite existing symlinks
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 7345/8267] oe/path.py: copyhardlinktree: don't overwrite existing symlinks
- Date: Sun, 17 Dec 2017 06:07:05 +0000 (UTC)
commit e36fbb338232005c0b6db43239cb539c746215bf
Author: Ioan-Adrian Ratiu <adrian ratiu ni com>
Date: Mon Aug 21 20:09:35 2017 +0300
oe/path.py: copyhardlinktree: don't overwrite existing symlinks
Before GNU tar 1.24, only the archive creation command had the '-h'
argument to preserve and follow symlinks. After >= 1.24 via commit
14efeb9f956e38d7be (tar: --dereference consistency) the capability to
preserve symlinks was also added to the archive extraction command.
-h is default at archive creation but is not default at extraction,
meaning that it will replace symlinks with directories even if the
original filesystem directory tree and archive contains them.
Add -h to the copyhardlinktree extraction step so the build can
support symlinks in variables like ${DEPLOY_DIR_IPK/RPM/DEB}.
(From OE-Core rev: c1b73fe26540c38086e259be6eb313e0826dceed)
Signed-off-by: Ioan-Adrian Ratiu <adrian ratiu ni com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/lib/oe/path.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/meta/lib/oe/path.py b/meta/lib/oe/path.py
index 448a2b9..1ea03d5 100644
--- a/meta/lib/oe/path.py
+++ b/meta/lib/oe/path.py
@@ -98,7 +98,7 @@ def copyhardlinktree(src, dst):
if (os.stat(src).st_dev == os.stat(dst).st_dev):
# Need to copy directories only with tar first since cp will error if two
# writers try and create a directory at the same time
- cmd = "cd %s; find . -type d -print | tar --xattrs --xattrs-include='*' -cf - -C %s -p
--no-recursion --files-from - | tar --xattrs --xattrs-include='*' -xf - -C %s" % (src, src, dst)
+ cmd = "cd %s; find . -type d -print | tar --xattrs --xattrs-include='*' -cf - -C %s -p
--no-recursion --files-from - | tar --xattrs --xattrs-include='*' -xhf - -C %s" % (src, src, dst)
subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
source = ''
if os.path.isdir(src):
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]