[ET Trac] [Einstein Toolkit] #1522: Improve determining make dependencies

Einstein Toolkit trac-noreply at einsteintoolkit.org
Thu Mar 13 20:48:29 CDT 2014


#1522: Improve determining make dependencies
--------------------------+-------------------------------------------------
  Reporter:  eschnett     |       Owner:                     
      Type:  enhancement  |      Status:  new                
  Priority:  major        |   Milestone:                     
 Component:  Cactus       |     Version:  development version
Resolution:               |    Keywords:                     
--------------------------+-------------------------------------------------

Comment (by rhaas):

 I just ran into a situation requiring -cleandeps which would require
 tricks if cleandeps is no longer available.

 For testing GRHydro before pushing commits I either change the thornlist
 to switch from {{{EinsteinEvolve/GRHydro}}} to {{{Zelmani/GRHydro}}} or
 change a symbolic link in {{{EinsteinEvolve}}} to point to
 {{{Zelmani/GRHydro}}} (basically, what I '''really''' do is a little bit
 different but it is the same operation). However changing the ThornList
 messes up the dependency tracking since the .d files in build still point
 to the old location. In this particular case the old location did no
 longer exist (different git branch that contained the thorn while the
 current one does not). Right now I do a make sim-cleandeps followed by a
 find EinsteinEvolve/GRHydro | xargs touch (which one can certainly argue
 is ''ugly''). If missing .d files cause a full recompile then this would
 recompile all of the ET which takes a while. Right now this only
 recompiles the changed thorn.

 The issue could be solved if the build system kept track of the
 arrangement where a thorn was found and would mark all object files as
 invalid if a thorn moved.

 I think this would actually be helped by the proposed patch in that it
 would work more gracefully with the vanishing source files.

 This is admittedly a non-standard workflow but it is something I end up
 doing each time I have new batch of changes for GRhydro (so about once a
 week if I actually stay on top of it).

-- 
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1522#comment:15>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit


More information about the Trac mailing list