Since we generally have lots of copies of the directories created using this tool, use
hardlinks where possible. This should save a little disk space and improve performance
slightly.
Signed-off-by: Richard Purdie <redacted>
---
diff --git a/scripts/cp-noerror b/scripts/cp-noerror
index f0cd243..cde1b54 100755
--- a/scripts/cp-noerror
+++ b/scripts/cp-noerror
@@ -21,7 +21,13 @@ def copytree(src, dst, symlinks=False, ignore=None):
srcname = os.path.join(src, name)
dstname = os.path.join(dst, name)
try:
- shutil.copy2(srcname, dstname)
+ d = dstname
+ if os.path.isdir(dstname):
+ d = os.path.join(dstname, os.path.basename(srcname))
+ try:
+ os.link(srcname, dstname)
+ except OSError:
+ shutil.copy2(srcname, dstname)
# catch the Error from the recursive copytree so that we can
# continue with other files
except shutil.Error, err: