From 55f5d979aee1b92cd953bb7b51467407495b57e2 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Fri, 4 Jun 1993 00:27:28 +0000 Subject: Formerly main.c.~86~ --- main.c | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/main.c b/main.c index 67d9a83..2c22d2e 100644 --- a/main.c +++ b/main.c @@ -413,8 +413,6 @@ main (argc, argv, envp) PATH_VAR (current_directory); char *directory_before_chdir; -mcheck(); - default_goal_file = 0; reading_filename = 0; reading_lineno_ptr = 0; @@ -969,12 +967,17 @@ mcheck(); } case 0: - re_exec:; + re_exec: /* Updated successfully. Re-exec ourselves. */ + + remove_intermediates (0); + + if (print_data_base_flag) + print_data_base (); + if (print_directory_flag) log_working_directory (0); - if (debug_flag) - puts ("Re-execing myself...."); + if (makefiles != 0) { /* These names might have changed. */ @@ -990,6 +993,7 @@ mcheck(); ++j; } } + if (directories != 0 && directories->idx > 0) { char bad; @@ -1008,8 +1012,7 @@ mcheck(); if (bad) fatal ("Couldn't change back to original directory."); } - fflush (stdout); - fflush (stderr); + for (p = environ; *p != 0; ++p) if (!strncmp (*p, "MAKELEVEL=", 10)) { @@ -1022,6 +1025,19 @@ mcheck(); sprintf (*p, "MAKELEVEL=%u", makelevel); break; } + + if (debug_flag) + { + char **p; + fputs ("Re-executing:", stdout); + for (p = argv; *p != 0; ++p) + printf (" %s", *p); + puts (""); + } + + fflush (stdout); + fflush (stderr); + exec_command (argv, environ); /* NOTREACHED */ } -- cgit v1.2.3