[oe-commits] Richard Purdie : license: Improve disk usage
git at git.openembedded.org
git at git.openembedded.org
Fri Sep 12 16:46:14 UTC 2014
Module: openembedded-core.git
Branch: master-next
Commit: 0b0f3631fd22f731b6aeedb73965e367b695028b
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=0b0f3631fd22f731b6aeedb73965e367b695028b
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date: Fri Sep 12 16:39:49 2014 +0100
license: Improve disk usage
Currently copies of the license files are made which wastes disk space
and adversely affects performance. We can link these instead in most
cases for small performance gains.
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/license.bbclass | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass
index 601f561..a34ea39 100644
--- a/meta/classes/license.bbclass
+++ b/meta/classes/license.bbclass
@@ -145,7 +145,14 @@ def copy_license_files(lic_files_paths, destdir):
bb.utils.mkdirhier(destdir)
for (basename, path) in lic_files_paths:
try:
- ret = shutil.copyfile(path, os.path.join(destdir, basename))
+ src = path
+ dst = os.path.join(destdir, basename)
+ if os.path.exists(dst):
+ os.remove(dst)
+ if (os.stat(src).st_dev == os.stat(destdir).st_dev):
+ os.link(src, dst)
+ else:
+ shutil.copyfile(src, dst)
except Exception as e:
bb.warn("Could not copy license file %s: %s" % (basename, e))
More information about the Openembedded-commits
mailing list