[oe-commits] [openembedded-core] 12/12: libc6: improve reproducibility

git at git.openembedded.org git at git.openembedded.org
Tue Feb 20 07:47:51 UTC 2018


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

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

commit 112c6e77a81ec748cd116d1088dae2a1f59643f5
Author: Juro Bystricky <juro.bystricky at intel.com>
AuthorDate: Mon Jan 22 14:59:49 2018 -0800

    libc6: improve reproducibility
    
    Building various libraries (libc6, libc6-pic, libc6-staticdev, libc6-dbg, ...)
    can be non-deterministic because they may be built with two different versions
    of intl/plural.c. in two otherwise identical builds. We may or may not re-generate
    the file plural.c from the file plural.y, based on bison being installed or not
    and based on mtimes of those two files, as the Makefile contains:
    
    plural.c: plural.y
    	$(BISON) $(BISONFLAGS) $@ $^
    
    If the above rule does not fire, we use a "fallback" plural.c, otherwise
    we use plural.c re-generated from plural.y.
    The fix is to always require bison to be installed and unconditionally
    re-generate plural.c. (This is achieved by touching plural.y).
    
    [YOCTO #12291]
    
    Signed-off-by: Juro Bystricky <juro.bystricky at intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
    (cherry picked from commit b79eeb68c6ad7c92a3e54c6f97a8bf49f0098206)
    Signed-off-by: Armin Kuster <akuster808 at gmail.com>
---
 meta/recipes-core/glibc/glibc_2.26.bb | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/glibc/glibc_2.26.bb b/meta/recipes-core/glibc/glibc_2.26.bb
index cc7d3cd..8c0eb98 100644
--- a/meta/recipes-core/glibc/glibc_2.26.bb
+++ b/meta/recipes-core/glibc/glibc_2.26.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \
       file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
       file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
 
-DEPENDS += "gperf-native"
+DEPENDS += "gperf-native bison-native"
 
 SRCREV ?= "1c9a5c270d8b66f30dcfaf1cb2d6cf39d3e18369"
 
@@ -108,6 +108,10 @@ do_configure () {
 # version check and doesn't really help with anything
         (cd ${S} && gnu-configize) || die "failure in running gnu-configize"
         find ${S} -name "configure" | xargs touch
+        # "plural.c" may or may not get regenerated from "plural.y" so we
+        # touch "plural.y" to make sure it does. (This should not be needed
+        # for glibc version 2.26+)
+        find ${S}/intl -name "plural.y" | xargs touch
         CPPFLAGS="" oe_runconf
 }
 

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


More information about the Openembedded-commits mailing list