Patchwork lib/oe/path: Fix copytree functions for tar 1.32

login
register
mail settings
Submitter Richard Purdie
Date Oct. 11, 2013, 10:02 p.m.
Message ID <1381528947.29912.189.camel@ted>
Download mbox | patch
Permalink /patch/59711/
State Accepted
Commit bf19a8617d05f17506dcb7154e19e2aa2b61838b
Headers show

Comments

Richard Purdie - Oct. 11, 2013, 10:02 p.m.
tar version 1.32 returns:

tar: --same-order option cannot be used with -c

with the commandlines we have been using. We can remove the -s option (which
is --same-order) to remove the error.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
--
cgit v0.9.1

Patch

diff --git a/meta/lib/oe/path.py b/meta/lib/oe/path.py
index da044ba..1310e38 100644
--- a/meta/lib/oe/path.py
+++ b/meta/lib/oe/path.py
@@ -81,7 +81,7 @@  def copytree(src, dst):
     # This way we also preserve hardlinks between files in the tree.
 
     bb.utils.mkdirhier(dst)
-    cmd = 'tar -cf - -C %s -ps . | tar -xf - -C %s' % (src, dst)
+    cmd = 'tar -cf - -C %s -p . | tar -xf - -C %s' % (src, dst)
     check_output(cmd, shell=True, stderr=subprocess.STDOUT)
 
 def copyhardlinktree(src, dst):
@@ -93,7 +93,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 -cf - -C %s -ps --files-from - | tar -xf - -C %s' % (src, src, dst)
+        cmd = 'cd %s; find . -type d -print | tar -cf - -C %s -p --files-from - | tar -xf - -C %s' % (src, src, dst)
         check_output(cmd, shell=True, stderr=subprocess.STDOUT)
         if os.path.isdir(src):
             src = src + "/*"