1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 12:29:55 +00:00

sstate/path.py: Add copyhardlinktree() function and use for performance optimisation

Add a function which copys a tree as a set of hardlinks to the original
files, then use this in sstate to reduce some of the overhead of sstate
package creation since the file isn't actually copied.

(From OE-Core rev: 8e373e69acac853213a62afb8bbdf0adc0c5045a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2013-02-03 17:34:54 +00:00
parent 6c7d6d6c8a
commit dd61d22584
2 changed files with 10 additions and 2 deletions
+8
View File
@@ -83,6 +83,14 @@ def copytree(src, dst):
cmd = 'tar -cf - -C %s -ps . | tar -xf - -C %s' % (src, dst)
check_output(cmd, shell=True, stderr=subprocess.STDOUT)
def copyhardlinktree(src, dst):
bb.utils.mkdirhier(dst)
if os.path.isdir(src):
if not len(os.listdir(src)):
return
src = src + "/*"
cmd = 'cp -al %s %s' % (src, dst)
check_output(cmd, shell=True, stderr=subprocess.STDOUT)
def remove(path, recurse=True):
"""Equivalent to rm -f or rm -rf"""