From 21446d4b6c5f59b6acb66133a9675ec3d3dbabe2 Mon Sep 17 00:00:00 2001 From: Ryan Rowe Date: Fri, 12 Jun 2020 12:48:24 -0700 Subject: python3: fix PGO for non-reproducible biniaries When PGO was disabled by default by e53ebf29, a bug was introduced that prevented PGO from ever being enabled. At the time at which extra config is appended to PACKAGECONFIG_CONFARGS, PACKAGECONFIG_PGO remains unevaluated in PACKAGECONFIG_class-target, due to setting its value in an anonymous Python function. As a result, the PGO options options will never be included. Signed-off-by: Ryan Rowe Signed-off-by: Richard Purdie --- meta/recipes-devtools/python/python3_3.8.3.bb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/meta/recipes-devtools/python/python3_3.8.3.bb b/meta/recipes-devtools/python/python3_3.8.3.bb index 997308dc75..2eb2a422e6 100644 --- a/meta/recipes-devtools/python/python3_3.8.3.bb +++ b/meta/recipes-devtools/python/python3_3.8.3.bb @@ -82,16 +82,16 @@ CACHED_CONFIGUREVARS = " \ ac_cv_file__dev_ptc=no \ ac_cv_working_tzset=yes \ " -python() { + +def possibly_include_pgo(d): # PGO currently causes builds to not be reproducible, so disable it for # now. See YOCTO #13407 if bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', True, False, d) and d.getVar('BUILD_REPRODUCIBLE_BINARIES') != '1': - d.setVar('PACKAGECONFIG_PGO', 'pgo') - else: - d.setVar('PACKAGECONFIG_PGO', '') -} + return 'pgo' + + return '' -PACKAGECONFIG_class-target ??= "readline ${PACKAGECONFIG_PGO} gdbm" +PACKAGECONFIG_class-target ??= "readline ${@possibly_include_pgo(d)} gdbm" PACKAGECONFIG_class-native ??= "readline gdbm" PACKAGECONFIG_class-nativesdk ??= "readline gdbm" PACKAGECONFIG[readline] = ",,readline" -- cgit 1.2.3-korg