On 02/02/2023 19.59, Alex Bennée wrote:
Alex Bennée <alex.ben...@linaro.org> writes:
A significant portion of our CI logs are just enumerating each
successfully built object file. The current widespread versions of
ninja don't have a quiet option so we use NINJA_STATUS to add a fixed
string to the ninja output which we then filter with fgrep. If there
are any errors in the output we get them from the compiler.
Signed-off-by: Alex Bennée <alex.ben...@linaro.org>
---
.gitlab-ci.d/buildtest-template.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)0
diff --git a/.gitlab-ci.d/buildtest-template.yml
b/.gitlab-ci.d/buildtest-template.yml
index 73ecfabb8d..3c4b237e4f 100644
--- a/.gitlab-ci.d/buildtest-template.yml
+++ b/.gitlab-ci.d/buildtest-template.yml
@@ -21,7 +21,7 @@
then
../meson/meson.py configure . -Dbackend_max_links="$LD_JOBS" ;
fi || exit 1;
- - make -j"$JOBS"
+ - env NINJA_STATUS="[ninja][%f/%t] " ninja | fgrep -v "[ninja]"
- if test -n "$MAKE_CHECK_ARGS";
then
make -j"$JOBS" $MAKE_CHECK_ARGS ;
This is too much for gitlab as it trips up on no output at all.
I'm also not sure whether it is really safe to not run make here at all.
Some parts of our build system still rely on the "make" magic, I think, and
you might miss them if only running ninja. For example pc-bios/optionrom/
does not get compiled without running "make".
TBH, I also think the output of the file that currently gets compiled is
still valuable in some cases, too, e.g. if you want to be sure whether
certain files get compiled in one configuration at all or not. So I'm rather
in favor in not doing this change.
Thomas