[ET Trac] [Einstein Toolkit] #1897: MPI thorn builds when it shouldn't

Einstein Toolkit trac-noreply at einsteintoolkit.org
Mon May 23 16:32:57 CDT 2016


#1897: MPI thorn builds when it shouldn't
------------------------------------+---------------------------------------
  Reporter:  hinder                 |       Owner:                     
      Type:  defect                 |      Status:  new                
  Priority:  major                  |   Milestone:                     
 Component:  EinsteinToolkit thorn  |     Version:  development version
Resolution:                         |    Keywords:                     
------------------------------------+---------------------------------------

Comment (by hinder):

 The first section shows that enough options are provided that we don't
 need to build OpenMPI, but the second section shows that we are building
 it anyway.  The culprit appears to be the "done" file.   The MPI "done"
 file is not being updated with the current date by detect.pl, and
 make.code.deps has a rule which says to run build.pl if the done file is
 older than the build.pl.  I suspect the relevant commit is

 {{{
 commit 86b1f5fad74891a044ef1f6f2059f98c3e8b0db0
 Author: eschnett <eschnett at 043a8217-7a68-40fe-abfd-36aa7d4fa6a8>
 Date:   Sat Apr 23 05:18:34 2016 +0000

     Don't modify the 'done' file unless there was a real change

     git-svn-id:
 https://svn.cactuscode.org/projects/ExternalLibraries/MPI/trunk@75
 043a8217-7a68-40fe-abfd-36aa7d4fa6a8

 diff --git a/src/detect.pl b/src/detect.pl
 index 3ddaf3c..36712c3 100644
 --- a/src/detect.pl
 +++ b/src/detect.pl
 @@ -154,8 +154,10 @@ if ($mpi_build and !$mpi_info_set) {
  } else {
      my $THORN = "MPI";
      my $DONE_FILE = "$ENV{SCRATCH_BUILD}/done/${THORN}";
 -    mkdir("$ENV{SCRATCH_BUILD}/done");
 -    system("date > ${DONE_FILE}") == 0 or die;
 +    if (! -e $DONE_FILE) {
 +        mkdir("$ENV{SCRATCH_BUILD}/done");
 +        system("date > ${DONE_FILE}") == 0 or die;
 +    }
  }
 }}}

 So it looks like make.code.deps assumes that the done file will be updated
 unless building is needed, but this change is stopping this from
 happening.

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


More information about the Trac mailing list