| Message ID | 20251128131340.3277792-1-ross.burton@arm.com |
|---|---|
| State | New |
| Headers | show |
| Series | classes/meson: dump the end of the meson-log.txt on failure | expand |
diff --git a/meta/classes-recipe/meson.bbclass b/meta/classes-recipe/meson.bbclass index c8b3e1ec29a..45d43319f9c 100644 --- a/meta/classes-recipe/meson.bbclass +++ b/meta/classes-recipe/meson.bbclass @@ -174,7 +174,13 @@ meson_do_configure() { bbnote Executing meson ${EXTRA_OEMESON}... if ! meson setup ${MESONOPTS} "${MESON_SOURCEPATH}" "${B}" ${MESON_CROSS_FILE} ${EXTRA_OEMESON}; then - bbfatal_log meson failed + MESON_LOG=${B}/meson-logs/meson-log.txt + if test -f $MESON_LOG; then + printf "\nLast 10 lines of meson-log.txt:\n" + tail --lines=10 $MESON_LOG + printf "\n" + fi + bbfatal_log meson setup failed fi }
When 'meson setup' fails it just prints the summary of the failure and leaves the full details in the meson-log.txt. ../sources/xorgproto-2024.1/meson.build:22:0: ERROR: Executables created by c compiler x86-poky-linux-gcc [...] are not runnable. A full log can be found at [${B}]/meson-logs/meson-log.txt ERROR: meson failed In CI systems where the build tree is then thrown away this is not very useful, so on failure also output the last ten lines of the log file: hopefully that is enough for context without flooding the logs. Signed-off-by: Ross Burton <ross.burton@arm.com> --- meta/classes-recipe/meson.bbclass | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)