Update of /cvsroot/boost/boost/tools/jam/src
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv16656

Modified Files:
      Tag: Boost_Jam_994
        execunix.c make1.c 
Log Message:
Changed make1.c to pass null pointers for the rule and target so as to 
identically replicate the original bjam output.



Index: execunix.c
===================================================================
RCS file: /cvsroot/boost/boost/tools/jam/src/execunix.c,v
retrieving revision 1.10.2.2
retrieving revision 1.10.2.3
diff -u -d -r1.10.2.2 -r1.10.2.3
--- execunix.c  1 Jun 2007 21:39:29 -0000       1.10.2.2
+++ execunix.c  1 Jun 2007 22:56:17 -0000       1.10.2.3
@@ -190,16 +190,25 @@
 
         /* ensure enough room for rule and target name */
 
-        len = strlen(rule_name) + strlen(target) + 2;
-        if (cmdtab[slot].com_len < len) 
+        if (rule_name && target)
+        {
+            len = strlen(rule_name) + strlen(target) + 2;
+            if (cmdtab[slot].com_len < len) 
+            {
+                free(cmdtab[ slot ].command);
+                cmdtab[ slot ].command = malloc(len);
+                cmdtab[ slot ].com_len = len;
+            }
+            strcpy(cmdtab[ slot ].command, rule_name);
+            strcat(cmdtab[ slot ].command, " ");
+            strcat(cmdtab[ slot ].command, target);
+        }
+        else
         {
             free(cmdtab[ slot ].command);
-            cmdtab[ slot ].command = malloc(len);
-            cmdtab[ slot ].com_len = len;
+            cmdtab[ slot ].command = 0;
+            cmdtab[ slot ].com_len = 0;
         }
-        strcpy(cmdtab[ slot ].command, rule_name);
-        strcat(cmdtab[ slot ].command, " ");
-        strcat(cmdtab[ slot ].command, target);
 
        /* Save the operation for execwait() to find. */
 
@@ -308,7 +317,8 @@
                                 times(&old_time);
 
                                 /* print out the rule and target name */
-                                printf("%s\n", cmdtab[i].command);
+                                if (cmdtab[i].command)
+                                    printf("%s\n", cmdtab[i].command);
 
                                 /* print out the command output, if any */
                                 if (cmdtab[i].buffer)

Index: make1.c
===================================================================
RCS file: /cvsroot/boost/boost/tools/jam/src/make1.c,v
retrieving revision 1.32.2.1
retrieving revision 1.32.2.2
diff -u -d -r1.32.2.1 -r1.32.2.2
--- make1.c     1 Jun 2007 21:39:31 -0000       1.32.2.1
+++ make1.c     1 Jun 2007 22:56:25 -0000       1.32.2.2
@@ -502,9 +502,13 @@
 
        if( cmd && pState->t->status == EXEC_CMD_OK )
        {
+            char *rule_name = 0;
+            char *target = 0;
                if( DEBUG_MAKEQ || 
             ! ( cmd->rule->actions->flags & RULE_QUIETLY ) && DEBUG_MAKE)
            {
+                rule_name = cmd->rule->name;
+                target = lol_get(&cmd->args, 0)->string;
 #if 0
                printf( "%s ", cmd->rule->name );
                list_print( lol_get( &cmd->args, 0 ) );
@@ -529,7 +533,7 @@
                        fflush( stdout );
 
                        pop_state(&state_stack); /* pop state first because 
execcmd could push state */
-                       execcmd( cmd->buf, make_closure, t, cmd->shell, 
cmd->rule->name, lol_get(&cmd->args,0)->string );
+                       execcmd( cmd->buf, make_closure, t, cmd->shell, 
rule_name, target );
            }
        }
        else


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs

Reply via email to