- removed comment
Formaline always triggeres new link
Without any changes 'make sim' should check for changes, find nothing and do nothing as result. This happens without Formaline compiled in. With Formaline in the thornlist, even without any changes, 'make sim' triggers a new link. With a lot of thorns this can take a long time, especially on some of the clusters - and should be avoided.
Keyword:
Comments (6)
-
-
reporter - removed comment
datestamp.c is only compiled if the linking actually happens. There is a special rule for that in the Cactus make system (actually not even a real rule - it is part of the linking phase). I would expect that either moving this part of Formaline into that file, or making Cactus aware of other files that only need to be compiled if linking needs to be done.
-
Pull request is here: https://bitbucket.org/cactuscode/cactusutils/pull-requests/23/rhaas-speedup
-
- edited description
- changed status to open
Please review.
-
Unless objected I will push after 2019-11-26.
-
- changed status to resolved
Applied as git hash 2c7f53b "Formaline: only create new build id if something changed" of cactusutils
- Log in to comment
A new executable is built because Formaline records the build time and date into a unique identifier that identifies this build. This identifier changes, and hence a very small file is recompiled. This also triggers the linking stage.
Cactus itself also records the time and date of the build into a file datestamp.c. Maybe moving Formaline's identifiers into this file would solve this issue.