From 40e1c38dbf636f54175814343c017d42c6f25bf5 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 12 Sep 2014 16:39:49 +0100 Subject: 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. (From OE-Core rev: 0b0f3631fd22f731b6aeedb73965e367b695028b) (From OE-Core rev: fe00d4f479c4fb5e4be5dda616a4de0a257ef6c3) Signed-off-by: Richard Purdie --- meta/classes/license.bbclass | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'meta/classes/license.bbclass') diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass index 601f5611cc..a34ea39493 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)) -- cgit v1.2.3-54-g00ecf