mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 00:39:46 +00:00
python3: re-enable profile guided optimisation
This was accidentally disabled in the 3.7.2 upgrade in 2019[1] where PGO was made target-only. Change the wrapper script generation so that it happens in all environments but class-native. [1] oe-core 02714c105426b0d687620913c1a7401b386428b6 (From OE-Core rev: 96a9964d6071dc614cec06a4f0712e257de2bc8b) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
2f56aec05c
commit
e73b3744de
@@ -129,18 +129,24 @@ EXTRA_OEMAKE = '\
|
|||||||
LIB=${baselib} \
|
LIB=${baselib} \
|
||||||
'
|
'
|
||||||
|
|
||||||
do_compile:prepend:class-target() {
|
# Generate a Profile Guided Optimisation wrapper script that uses qemu-user for
|
||||||
|
# all cross builds.
|
||||||
|
write_pgo_wrapper:class-native = ":"
|
||||||
|
write_pgo_wrapper() {
|
||||||
if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then
|
if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then
|
||||||
qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${B}', '${STAGING_DIR_TARGET}/${base_libdir}'])}"
|
|
||||||
cat >pgo-wrapper <<EOF
|
cat >pgo-wrapper <<EOF
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
cd ${B}
|
cd ${B}
|
||||||
$qemu_binary "\$@"
|
${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${B}', '${STAGING_DIR_TARGET}/${base_libdir}'])} "\$@"
|
||||||
EOF
|
EOF
|
||||||
chmod +x pgo-wrapper
|
chmod +x pgo-wrapper
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
do_compile:prepend() {
|
||||||
|
write_pgo_wrapper
|
||||||
|
}
|
||||||
|
|
||||||
do_install:prepend() {
|
do_install:prepend() {
|
||||||
${WORKDIR}/check_build_completeness.py ${T}/log.do_compile
|
${WORKDIR}/check_build_completeness.py ${T}/log.do_compile
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user