mirror of
https://github.com/NixOS/nix
synced 2025-06-27 04:21:16 +02:00
* Nix now has three different formats for the log information it
writes to stderr: - `pretty': the old nested style (default) - `escapes': uses escape codes to indicate nesting and message level; can be processed using `log2xml' - `flat': just plain text, no nesting These can be set using `--log-type TYPE' or the NIX_LOG_TYPE environment variable.
This commit is contained in:
parent
79bb0008ec
commit
777e13b94b
3 changed files with 52 additions and 7 deletions
|
@ -18,6 +18,15 @@ void sigintHandler(int signo)
|
|||
}
|
||||
|
||||
|
||||
void setLogType(string lt)
|
||||
{
|
||||
if (lt == "pretty") logType = ltPretty;
|
||||
else if (lt == "escapes") logType = ltEscapes;
|
||||
else if (lt == "flat") logType = ltFlat;
|
||||
else throw UsageError("unknown log type");
|
||||
}
|
||||
|
||||
|
||||
/* Initialize and reorder arguments, then call the actual argument
|
||||
processor. */
|
||||
static void initAndRun(int argc, char * * argv)
|
||||
|
@ -44,6 +53,10 @@ static void initAndRun(int argc, char * * argv)
|
|||
if (sigaction(SIGINT, &act, &oact))
|
||||
throw SysError("installing handler for SIGINT");
|
||||
|
||||
/* Process the NIX_LOG_TYPE environment variable. */
|
||||
char * lt = getenv("NIX_LOG_TYPE");
|
||||
if (lt) setLogType(lt);
|
||||
|
||||
/* Put the arguments in a vector. */
|
||||
Strings args, remaining;
|
||||
while (argc--) args.push_back(*argv++);
|
||||
|
@ -72,7 +85,11 @@ static void initAndRun(int argc, char * * argv)
|
|||
string arg = *i;
|
||||
if (arg == "--verbose" || arg == "-v")
|
||||
verbosity = (Verbosity) ((int) verbosity + 1);
|
||||
else if (arg == "--build-output" || arg == "-B")
|
||||
else if (arg == "--log-type") {
|
||||
++i;
|
||||
if (i == args.end()) throw UsageError("`--log-type' requires an argument");
|
||||
setLogType(*i);
|
||||
} else if (arg == "--build-output" || arg == "-B")
|
||||
buildVerbosity = lvlError; /* lowest */
|
||||
else if (arg == "--help") {
|
||||
printHelp();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue