[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.42 and 1.43

version 1.42, 2013/05/14 18:47:40 version 1.43, 2013/05/22 12:14:08
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->cmtime = child->mtime;  
                 parent->youngest = child;                  parent->youngest = child;
         }          }
 }  }
Line 382 
Line 381 
                         if (child->built_status == MADE)                          if (child->built_status == MADE)
                                 do_oodate = true;                                  do_oodate = true;
                 } else if (is_strictly_before(gn->mtime, child->mtime) ||                  } else if (is_strictly_before(gn->mtime, child->mtime) ||
                    (!is_strictly_before(child->mtime, now) &&                     (!is_strictly_before(child->mtime, starttime) &&
                    child->built_status == MADE))                     child->built_status == MADE))
                         do_oodate = true;                          do_oodate = true;
                 if (do_oodate) {                  if (do_oodate) {
Line 446 
Line 445 
                 if (DEBUG(MAKE)) {                  if (DEBUG(MAKE)) {
                         if (!is_out_of_date(gn->mtime))                          if (!is_out_of_date(gn->mtime))
                                 printf("modified %s...",                                  printf("modified %s...",
                                     time_to_string(gn->mtime));                                      time_to_string(&gn->mtime));
                         else                          else
                                 printf("non-existent...");                                  printf("non-existent...");
                 }                  }
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) &&             (is_out_of_date(gn->youngest->mtime) &&
             (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
Line 501 
Line 500 
                  * 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.42  
changed lines
  Added in v.1.43