Formaline always triggeres new link

Issue #1223 resolved
Frank Löffler created an issue

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)

  1. Erik Schnetter
    • removed 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.

  2. Frank Löffler 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.

  3. Log in to comment