On 21/01/21 15:29, Thomas Huth wrote:
Not sure if it is related, but I noticed that we are also rebuilding a
lot of files in the gitlab-CI that we did not before the meson
conversion, especially in the check-system-* jobs, e.g:
https://gitlab.com/qemu-project/qemu/-/jobs/977344949#L366
The check-system-* jobs should normally take the artifacts from the
build-system-* jobs and thus hardly recompile anything at all.
A part of the problem seems to be that we check out the submodules
again, I can get rid of the superfluous reconfiguration step by adding
something like:
Yes, there's a
[0/1] Regenerating build files.
/usr/bin/python3: can't open file
'/builds/qemu-project/qemu/meson/meson.py': [Errno 2] No such file or
directory
because the submodules have not been checked out, and that causes meson
to run again.
diff -u a/.gitlab-ci.yml b/.gitlab-ci.yml
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -39,6 +39,8 @@ include:
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
script:
- cd build
+ - touch *
+ - make git-submodule-update
- find . -type f -exec touch {} +
- make $MAKE_CHECK_ARGS
... but still, the jobs then recompile almost all files afterwards...
could that be related to that meson problem, too?
No, I think it's just that, after the new checkout, the source files'
timestamps should be quite new and cause everything to be rebuilt.
Paolo