[oe-commits] [openembedded-core] 23/43: license.bbclass: improve reproducibility

git at git.openembedded.org git at git.openembedded.org
Sat Apr 8 21:49:04 UTC 2017


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 007ebc84979b1bc8b7520097793c7ab6d646c243
Author: Juro Bystricky <juro.bystricky at intel.com>
AuthorDate: Wed Apr 5 14:51:31 2017 -0700

    license.bbclass: improve reproducibility
    
    Two identical builds can end up having deploy/licenses folders
    that differ. This is observed in cases where there are several
    different license files of the same name in different folders,
    i.e. "COPYING". In those case we have to differentiate the files
    somehow and we do it via file expensions such as COPYING.0, COPYING.1.
    However, which file will get which extension is presently random.
    This means, for example, that COPYING.0 in one build is the same
    as COPYING.1 in the other (and vice versa).
    Although there is mothing wrong with this, for the sake of binary
    reproducibility it is preferable to have a deterministic outcome.
    
    Signed-off-by: Juro Bystricky <juro.bystricky at intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/license.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass
index 81458e7..d4be478 100644
--- a/meta/classes/license.bbclass
+++ b/meta/classes/license.bbclass
@@ -505,7 +505,7 @@ def find_license_files(d):
         bb.warn("%s: Failed to parse it's LICENSE field." % (d.getVar('PF')))
     # Add files from LIC_FILES_CHKSUM to list of license files
     lic_chksum_paths = defaultdict(OrderedDict)
-    for path, data in lic_chksums.items():
+    for path, data in sorted(lic_chksums.items()):
         lic_chksum_paths[os.path.basename(path)][data] = (os.path.join(srcdir, path), data[1], data[2])
     for basename, files in lic_chksum_paths.items():
         if len(files) == 1:

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list