Skip to contentSkip to conversation

license.bbclass: hardlink requires write permission

PATCH In review Robert Yang 1 participant 3 messages Nov 13, 2014 – Dec 19, 2014

lore
Share & tools
lore
#0 lore raw

cover license.bbclass: hardlink requires write permission

The following changes since commit e7b731a1a358e0007dba1038ad504888bec5916e:

docbook-xsl-stylesheets: fix do_configure typo (2014-11-12 15:36:14 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib rbt/license
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/license

Robert Yang (1):
license.bbclass: hardlink requires write permission

 meta/classes/license.bbclass |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 license.bbclass: hardlink requires write permission

Fixed:
* The os.link() reqiures write permission on the src file (suppose the src file belongs to another user, then you need write permission to harlink to it since the link count would change)

* Print more info when failed to copy
The warning was like:
WARNING: Could not copy license file COPYING: [Errno 1] Operation not permitted

We couldn't know which recipe print the warning from this message.

---
 meta/classes/license.bbclass |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/classes/license.bbclass +2 -2
index 14d3107..1f42fd3 100644
@@ -149,12 +149,12 @@ def copy_license_files(lic_files_paths, destdir):
             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):
+            if os.access(src, os.W_OK) and (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))
+            bb.warn("Could not copy license file %s to %s: %s" % (src, dst, e))
 
 def find_license_files(d):
     """
Signature · 1 line
1.7.9.5
#2 lore raw
In reply to Robert Yang

Ping.

// Robert

Quoted 15 lines · Robert Yang

The following changes since commit e7b731a1a358e0007dba1038ad504888bec5916e:

   docbook-xsl-stylesheets: fix do_configure typo (2014-11-12 15:36:14 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib rbt/license
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/license

Robert Yang (1):
license.bbclass: hardlink requires write permission

  meta/classes/license.bbclass |    4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)