[gnome-continuous-yocto/gnomeostree-3.28-rocko: 3208/8267] classes/license: fix handling of symlinks pointed to in LIC_FILES_CHKSUM
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 3208/8267] classes/license: fix handling of symlinks pointed to in LIC_FILES_CHKSUM
- Date: Sun, 17 Dec 2017 00:18:39 +0000 (UTC)
commit 6879d524c11b6f0d8920ca9713841d1b0927207f
Author: Paul Eggleton <paul eggleton linux intel com>
Date: Mon Oct 31 16:59:43 2016 +1300
classes/license: fix handling of symlinks pointed to in LIC_FILES_CHKSUM
If you set LIC_FILES_CHKSUM to point to a relative symlink then you'll
get "Could not copy license file" warnings in copy_license_files() since
the symlink won't be valid after it's copied. If the source is a symlink
then we need to dereference it first.
I encountered this when I used recipetool on the sources for capnproto,
where the c++ directory contains a LICENSE.txt symlink to the LICENSE
file in the parent directory, and this symlink ends up being pointed to
in LIC_FILES_CHKSUM.
(From OE-Core rev: c4d3b1e9c37b920444e53d3231552da18d101882)
Signed-off-by: Paul Eggleton <paul eggleton linux intel com>
Signed-off-by: Ross Burton <ross burton intel com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/classes/license.bbclass | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass
index da4fc3e..660b85f 100644
--- a/meta/classes/license.bbclass
+++ b/meta/classes/license.bbclass
@@ -351,6 +351,8 @@ def copy_license_files(lic_files_paths, destdir):
dst = os.path.join(destdir, basename)
if os.path.exists(dst):
os.remove(dst)
+ if os.path.islink(src):
+ src = os.path.realpath(src)
canlink = os.access(src, os.W_OK) and (os.stat(src).st_dev == os.stat(destdir).st_dev)
if canlink:
try:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]