summaryrefslogtreecommitdiffstats
path: root/meta/conf/distro/include/lto.inc
Commit message (Collapse)AuthorAgeFilesLines
* The poky repository master branch is no longer being updated.Richard Purdie2025-11-071-51/+0
| | | | | | | | | | | | | | | | | | | | | You can either: a) switch to individual clones of bitbake, openembedded-core, meta-yocto and yocto-docs b) use the new bitbake-setup You can find information about either approach in our documentation: https://docs.yoctoproject.org/ Note that "poky" the distro setting is still available in meta-yocto as before and we continue to use and maintain that. Long live Poky! Some further information on the background of this change can be found in: https://lists.openembedded.org/g/openembedded-architecture/message/2179 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto.inc: disable LTO for grubTony Battersby2021-08-051-0/+2
| | | | | | | | | | | | | | With gcc 11.1, compiling grub with LTO causes an internal compiler error (ICE), and with gcc 10.2, files under /usr/lib/grub/i386-pc/*.mod are not binary reproducible. [YOCTO #14490] (gcc 11.1 ICE) [YOCTO #14481] (LTO and binary reproducibility) (From OE-Core rev: d1fd3693411d83214f0f88b2f9d7aef12ecd6e02) Signed-off-by: Tony Battersby <tonyb@cybernetics.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Convert to new override syntaxRichard Purdie2021-08-021-21/+21
| | | | | | | | | | | | This is the result of automated script conversion: scripts/contrib/convert-overrides.py <oe-core directory> converting the metadata to use ":" as the override character instead of "_". (From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto.inc: Disable LTO for webkitKhem Raj2020-11-131-0/+2
| | | | | | | | | | | webkit fails to link with LTO on at this point. Some of the issues are being worked on upstream and disabling LTO should be re-evaluated as we update this change. (From OE-Core rev: fb24d6504c30d3302fda42b6e6a918d674323a8f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto.inc: Disable LTO for perfKhem Raj2020-11-111-0/+1
| | | | | | | | | | perf invokes kernel sources, and currently fails in multiple places for now therefore disable LTO for perf (From OE-Core rev: f59a2db89a245d3ef9acd094f2055fb07dd4f42b) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto.inc: Disable LTO for xserver-xorgKhem Raj2020-11-111-0/+1
| | | | | | | | | | | It ends up with undefined symbol when LTO is enabled Fixes test/xi2/protocol-xiquerydevice.c:345: undefined reference to `GrabButton' (From OE-Core rev: 129ec897a25ed9ba2657f0ed44ccaf2f429ce6ac) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libaio: Disable LTOKhem Raj2020-11-111-0/+1
| | | | | | | | | Libaio uses ASMs to implement symbol versioning which does not work with LTO (From OE-Core rev: 2b59fe1076d930a685fa7f443163da70a1d168b3) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto: Introduce LTOEXTRA variableKhem Raj2020-11-111-2/+9
| | | | | | | | | | | | Certain packages may need additional flags to enable LTO, therefore LTOEXTRA can be used to pass those flags Add -flto-partition=none for alsa-lib (From OE-Core rev: 0a5778f40f0d1a252f38151a1d4103fa7cbe7796) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto.inc: Add -ffat-lto-objects and -fuse-linker-pluginKhem Raj2020-11-111-1/+10
| | | | | | | | | | This helps to improve LTO and ensure the libs can be linked with non-LTO objects too (From OE-Core rev: 770c69c51f87223eee7bd968fd28a5dc15a955d6) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lto: Add global LTO distro policy fileKhem Raj2020-11-111-0/+28
Distros which want to enable LTO can utilize this file, it only covers packages from OE-Core, other layers should include there own exclusion list for recipe which dont work with LTO Document the needed changes in local.conf.extended (From OE-Core rev: 228b5a91516cdf9d5a1df3c721ba8e5619b188ab) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>