2013-09-14 Paul Smith <psmith@gnu.org>
+ Fix Savannah bug #35248.
+
+ * main.c (decode_debug_flags): Add support for the "n" flag to
+ disable all debugging.
+ * make.1: Document the "n" (none) flag.
+ * doc/make.texi (Options Summary): Ditto.
+ * NEWS: Ditto.
+
Fix Savannah bug #33134. Suggested by David Boyce <dsb@boyski.com>.
* misc.c (close_stdout): Move to output.c.
the recipe to be invoked is printed even if it would otherwise be suppressed
by .SILENT or a "@" prefix character. Also before each recipe is run the
makefile name and linenumber where it was defined are shown as well as the
- prerequisites that caused the target to be considered out of date. If the
- "dir" option argument is given, it will display directory enter/leave
- logging around each block of synchronized output.
+ prerequisites that caused the target to be considered out of date.
+
+* New command line option argument: --debug now accepts a "n" (none) flag
+ which disables all debugging settings that are currently enabled.
* New feature: The "job server" capability is now supported on Windows.
Implementation contributed by Troy Runkel <Troy.Runkel@mathworks.com>
the makefiles. This option enables messages while rebuilding makefiles,
too. Note that the @samp{all} option does enable this option. This
option also enables @samp{basic} messages.
+
+@item n (@i{none})
+Disable all debugging currently enabled. If additional debugging
+flags are encountered after this they will still take effect.
@end table
@item -e
case 'm':
db_level |= DB_BASIC | DB_MAKEFILES;
break;
+ case 'n':
+ db_level = 0;
+ break;
case 'v':
db_level |= DB_BASIC | DB_VERBOSE;
break;
while (*(++p) != '\0')
if (*p == ',' || *p == ' ')
- break;
+ {
+ ++p;
+ break;
+ }
if (*p == '\0')
break;
if (db_level)
verify_flag = 1;
+
+ if (! db_level)
+ debug_flag = 0;
}
static void
.I j
for details on invocation of commands, and
.I m
-for debugging while remaking makefiles.
+for debugging while remaking makefiles. Use
+.I n
+to disable all previous debugging flags.
.TP 0.5i
\fB\-e\fR, \fB\-\-environment\-overrides\fR
Give variables taken from the environment precedence
static int
sync_init ()
{
- int combined_output;
+ int combined_output = 0;
#ifdef WINDOWS32
if ((!STREAM_OK (stdout) && !STREAM_OK (stderr))