From 708aacbb0b47f1014ebf8aa63569c90fbbd88c07 Mon Sep 17 00:00:00 2001 From: Michael Opdenacker Date: Fri, 16 Jul 2021 19:54:02 +0200 Subject: test-manual: document LTO related reproducibility bug (From yocto-docs rev: 33b6f7cec780f77ed9cd0518f72ec8c0e3c08e68) Signed-off-by: Michael Opdenacker Reviewed-by: Tony Battersby Signed-off-by: Richard Purdie --- documentation/test-manual/reproducible-builds.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'documentation/test-manual') diff --git a/documentation/test-manual/reproducible-builds.rst b/documentation/test-manual/reproducible-builds.rst index e13583c0bf..c66c82f86a 100644 --- a/documentation/test-manual/reproducible-builds.rst +++ b/documentation/test-manual/reproducible-builds.rst @@ -68,6 +68,17 @@ things we do within the build system to ensure reproducibility include: - Filtering the tools available from the host's ``PATH`` to only a specific set of tools, set using the :term:`HOSTTOOLS` variable. +.. note:: + + Because of an open bug in GCC, using ``DISTRO_FEATURES_append = " lto"`` or + adding ``-flto`` (Link Time Optimization) to ``CFLAGS`` makes the resulting + binary non-reproducible, in that it depends on the full absolute build path + to ``recipe-sysroot-native``, so installing the Yocto Project in a different + directory results in a different binary. + + This issue is addressed by + :yocto_bugs:`bug 14481 - Programs built with -flto are not reproducible`. + ========================================= Can we prove the project is reproducible? ========================================= -- cgit v1.2.3-54-g00ecf