Closed fcremo closed 2 years ago
Nice! Can you please test that, in the following, revng-c
is now installed super quickly the second time (i.e., without recompiling anything)?
orc install revng-c
orc install revng
orc install revng-c
OK, now we no longer need to recompile, but we still relink. We have a similar issue to the one of the headers with ELFs due to fixing rpaths _fix_rpath
. I'm thinking, before all these fixes, in Python, we should recursively save the mtime
of all the files, apply the various fixes and then restore the dates. Otherwise, for each fix we'll need to do something ad-hoc and we're very highly likely to forget/get it wrong.
Now I read all the mtime
s for the files in the tmproot before the post-install phase and restore them afterwards. I also read and restore the atime
s, since utime
takes a tuple with both of them.
Works great!
Merged, thanks!
This patch ensures that the postinstall steps that replace NDEBUG and ASAN defines in headers do not affect the files mtime