On Mon, Nov 13, 2023 at 3:42 AM Richard Purdie <[email protected]> wrote: > > On Sat, 2023-11-11 at 05:03 -1000, Steve Sakoman wrote: > > We are seeing reproducibility issues where gcc-cross sometimes defaults > > to gnu11 and other times to gnu17. > > > > Specify std=gnu17 rather than leave this to chance. > > > > Signed-off-by: Steve Sakoman <[email protected]> > > Signed-off-by: Khem Raj <[email protected]> > > --- > > meta/recipes-support/lz4/lz4_1.9.2.bb | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/meta/recipes-support/lz4/lz4_1.9.2.bb > > b/meta/recipes-support/lz4/lz4_1.9.2.bb > > index c2e24b518c..8cf71fdc04 100644 > > --- a/meta/recipes-support/lz4/lz4_1.9.2.bb > > +++ b/meta/recipes-support/lz4/lz4_1.9.2.bb > > @@ -23,6 +23,7 @@ S = "${WORKDIR}/git" > > # Fixed in r118, which is larger than the current version. > > CVE_CHECK_WHITELIST += "CVE-2014-4715" > > > > +CFLAGS_append = " -std=gnu17" > > EXTRA_OEMAKE = "PREFIX=${prefix} CC='${CC}' CFLAGS='${CFLAGS}' > > DESTDIR=${D} LIBDIR=${libdir} INCLUDEDIR=${includedir} BUILD_STATIC=no" > > > > do_install() { > > I've looked into this a lot more and I'm now of the opinion this is > totally wrong and definitely should not merge. > > An example failure is: > > http://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20231109-ch73ktqp/packages/diff-html/ > > First, it is worth noting the huge size difference. It appears debug > line information is being missed out. The difference in cflags is a > false lead, it is because crti.S is compiled with c17 and the producer > string is being mis-compared, the data is missing on one side. > > So what we're looking for really is a cflags issue where -g is going > missing. > > I did check older failures which look similar: > > http://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20231105-_xpb575y/packages/diff-html/ > > Since we're looking for cflags issues: > > https://github.com/lz4/lz4/commit/7d8d1075e696d585238e6aa6a4f43dc759da250e > > looks interesting and leads to: > > https://savannah.gnu.org/bugs/?func=detailitem&item_id=59230 > > If the makefile had intermittently picked up CFLAGS from the > environment, the output would be identical to the previous cflags patch > in the series, which would cross link the hash equivalence > inputs/outputs and could generally confuse things.
Thanks for looking into this! I will remove the patch from the series. > The real question is which autobuilder worker is compiling without the > -g option and is it a make bug? Perhaps it doesn't matter and we just > need to force the input and output hashes to change to stop the errors > once the previous patch is applied. What is the proper way to force the input and output hashes to change? Thanks again! Steve
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#190474): https://lists.openembedded.org/g/openembedded-core/message/190474 Mute This Topic: https://lists.openembedded.org/mt/102526884/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
