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 Signed-off-by: Khem Raj <raj.k...@gmail.com> --- meta/conf/distro/include/lto.inc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/meta/conf/distro/include/lto.inc b/meta/conf/distro/include/lto.inc index d7fea26c64..eb36b892ca 100644 --- a/meta/conf/distro/include/lto.inc +++ b/meta/conf/distro/include/lto.inc @@ -18,6 +18,13 @@ LTO_pn-libcap = "" LTO_pn-libproxy = "" LTO_pn-libbsd = "" +# Custom LTO flags +# disable partitioning/streaming algorithm since its uses ASM +# constructs not compatible with lto +LTOEXTRA_pn-alsa-lib = "-flto-partition=none" + +LTOEXTRA ?= "" + # Override it for additional or different options if needed e.g. # with clang thin-lto might be better for compile speed # @@ -29,9 +36,9 @@ LTO_pn-libbsd = "" # -fuse-linker-plugin # ensures that libraries participate in LTO by supplying intermediate # code from .a files to linker -LTO ?= "-flto -ffat-lto-objects -fuse-linker-plugin " +LTO ?= "-flto -ffat-lto-objects -fuse-linker-plugin ${LTOEXTRA}" SELECTED_OPTIMIZATION_append = "${@bb.utils.contains('DISTRO_FEATURES', 'lto', ' ${LTO}', '', d)}" TARGET_LDFLAGS_append_class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'lto', ' ${LTO}', '', d)}" -SELECTED_OPTIMIZATION[vardeps] += "LTO" +SELECTED_OPTIMIZATION[vardeps] += "LTO LTOEXTRA" -- 2.29.2
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#144376): https://lists.openembedded.org/g/openembedded-core/message/144376 Mute This Topic: https://lists.openembedded.org/mt/78125456/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-