[BACK]Return to engine.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / make

Diff for /src/usr.bin/make/engine.c between version 1.44 and 1.45

version 1.44, 2013/05/25 11:54:14 version 1.45, 2013/05/30 08:58:38
Line 286 
Line 286 
 void  void
 Make_TimeStamp(GNode *parent, GNode *child)  Make_TimeStamp(GNode *parent, GNode *child)
 {  {
         if (is_strictly_before(parent->cmtime, child->mtime)) {          if (is_strictly_before(parent->youngest->mtime, child->mtime)) {
                 parent->youngest = child;                  parent->youngest = child;
                 parent->cmtime = child->mtime;  
         }          }
 }  }
   
Line 491 
Line 490 
                                 printf(".EXEC node...");                                  printf(".EXEC node...");
                 }                  }
                 oodate = true;                  oodate = true;
         } else if (is_strictly_before(gn->mtime, gn->cmtime) ||          } else if (is_strictly_before(gn->mtime, gn->youngest->mtime) ||
            (is_out_of_date(gn->cmtime) &&             (gn == gn->youngest &&
             (is_out_of_date(gn->mtime) || (gn->type & OP_DOUBLEDEP)))) {              (is_out_of_date(gn->mtime) || (gn->type & OP_DOUBLEDEP)))) {
                 /*                  /*
                  * A node whose modification time is less than that of its                   * A node whose modification time is less than that of its
                  * youngest child or that has no children (cmtime ==                   * youngest child or that has no children (gn->youngest == gn)
                  * OUT_OF_DATE) and either doesn't exist (mtime == OUT_OF_DATE)                   * and either doesn't exist (mtime == OUT_OF_DATE)
                  * or was the object of a :: operator is out-of-date.                   * or was the object of a :: operator is out-of-date.
                  */                   */
                 if (DEBUG(MAKE)) {                  if (DEBUG(MAKE)) {
                         if (is_strictly_before(gn->mtime, gn->cmtime))                          if (is_strictly_before(gn->mtime, gn->youngest->mtime))
                                 printf("modified before source(%s)...",                                  printf("modified before source(%s)...",
                                     gn->youngest->name);                                      gn->youngest->name);
                         else if (is_out_of_date(gn->mtime))                          else if (is_out_of_date(gn->mtime))

Legend:
Removed from v.1.44  
changed lines
  Added in v.1.45