aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-07-24 13:43:16 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-07-24 13:43:16 +0000
commit0a0c1fcb4d0e42577ac0c7ac23bd9b908ecde49f (patch)
treec52d0c7f02f6a61d1bc48dbe3474daeca1471b25
parent3b521bb1bd53479896de89e7a24938039f92aace (diff)
* The `-v' flag no longer takes an argument; it should be repeated
instead (e.g., `-vvvv' for lots of output). Default is to only print error messages.
-rw-r--r--src/fix.cc23
-rw-r--r--src/nix.cc12
-rw-r--r--src/normalise.cc16
-rw-r--r--src/store.cc1
-rw-r--r--src/util.cc4
-rw-r--r--src/util.hh11
6 files changed, 29 insertions, 38 deletions
diff --git a/src/fix.cc b/src/fix.cc
index 8463c0ddb..10f0e4413 100644
--- a/src/fix.cc
+++ b/src/fix.cc
@@ -118,7 +118,6 @@ Hash hashPackage(EvalState & state, FState fs)
*i = j->second;
}
}
- debug(printTerm(unparseFState(fs)));
return hashTerm(unparseFState(fs));
}
@@ -176,6 +175,10 @@ static Expr evalExpr2(EvalState & state, Expr e)
Hash pkgHash = hashPackage(state, fs);
FSId pkgId = writeTerm(unparseFState(fs), "");
state.pkgHashes[pkgId] = pkgHash;
+
+ msg(lvlChatty, format("copied `%1%' -> %2%")
+ % srcPath % (string) pkgId);
+
return ATmake("FSId(<str>)", ((string) pkgId).c_str());
}
@@ -244,7 +247,6 @@ static Expr evalExpr2(EvalState & state, Expr e)
canonPath(nixStore + "/" + ((string) outId).c_str() + "-" + name);
fs.derive.env.push_back(StringPair("out", outPath));
fs.derive.outputs.push_back(DeriveOutput(outPath, outId));
- debug(format("%1%: %2%") % (string) outId % name);
/* Write the resulting term into the Nix store directory. */
Hash pkgHash = outIdGiven
@@ -252,6 +254,10 @@ static Expr evalExpr2(EvalState & state, Expr e)
: hashPackage(state, fs);
FSId pkgId = writeTerm(unparseFState(fs), "-d-" + name);
state.pkgHashes[pkgId] = pkgHash;
+
+ msg(lvlChatty, format("instantiated `%1%' -> %2%")
+ % name % (string) pkgId);
+
return ATmake("FSId(<str>)", ((string) pkgId).c_str());
}
@@ -285,6 +291,7 @@ static Expr evalExpr(EvalState & state, Expr e)
static Expr evalFile(EvalState & state, string relPath)
{
string path = searchPath(state.searchDirs, relPath);
+ Nest nest(lvlTalkative, format("evaluating file `%1%'") % path);
Expr e = ATreadFromNamedFile(path.c_str());
if (!e)
throw Error(format("unable to read a term from `%1%'") % path);
@@ -310,16 +317,8 @@ void run(Strings args)
throw UsageError(format("argument required in `%1%'") % arg);
state.searchDirs.push_back(*it++);
}
- else if (arg == "--verbose" || arg == "-v") {
- if (it == args.end()) throw UsageError(
- format("`%1%' requires an argument") % arg);
- istringstream str(*it++);
- int lvl;
- str >> lvl;
- if (str.fail()) throw UsageError(
- format("`%1%' requires an integer argument") % arg);
- verbosity = (Verbosity) lvl;
- }
+ else if (arg == "--verbose" || arg == "-v")
+ verbosity = (Verbosity) ((int) verbosity + 1);
else if (arg[0] == '-')
throw UsageError(format("unknown flag `%1%`") % arg);
else
diff --git a/src/nix.cc b/src/nix.cc
index f672c42a8..3345f983f 100644
--- a/src/nix.cc
+++ b/src/nix.cc
@@ -307,16 +307,8 @@ void run(Strings args)
op = opVerify;
else if (arg == "--path" || arg == "-p")
pathArgs = true;
- else if (arg == "--verbose" || arg == "-v") {
- if (it == args.end()) throw UsageError(
- format("`%1%' requires an argument") % arg);
- istringstream str(*it++);
- int lvl;
- str >> lvl;
- if (str.fail()) throw UsageError(
- format("`%1%' requires an integer argument") % arg);
- verbosity = (Verbosity) lvl;
- }
+ else if (arg == "--verbose" || arg == "-v")
+ verbosity = (Verbosity) ((int) verbosity + 1);
else if (arg[0] == '-')
opFlags.push_back(arg);
else
diff --git a/src/normalise.cc b/src/normalise.cc
index 6ce73d1ac..80a615227 100644
--- a/src/normalise.cc
+++ b/src/normalise.cc
@@ -26,7 +26,7 @@ typedef set<FSId> FSIdSet;
Slice normaliseFState(FSId id, FSIdSet pending)
{
- Nest nest(lvlDebug, format("normalising fstate %1%") % (string) id);
+ Nest nest(lvlTalkative, format("normalising fstate %1%") % (string) id);
/* Try to substitute $id$ by any known successors in order to
speed up the rewrite process. */
@@ -80,7 +80,7 @@ Slice normaliseFState(FSId id, FSIdSet pending)
for (DeriveOutputs::iterator i = fs.derive.outputs.begin();
i != fs.derive.outputs.end(); i++)
{
- debug(format("building %1% in %2%") % (string) i->second % i->first);
+ debug(format("building %1% in `%2%'") % (string) i->second % i->first);
outPaths[i->first] = i->second;
inPaths.push_back(i->first);
}
@@ -94,7 +94,7 @@ Slice normaliseFState(FSId id, FSIdSet pending)
try {
expandId(i->second, i->first, "/", pending);
} catch (Error & e) {
- debug(format("fast build failed: %1%") % e.what());
+ debug(format("fast build failed for %1%") % e.what());
fastBuild = false;
break;
}
@@ -109,12 +109,12 @@ Slice normaliseFState(FSId id, FSIdSet pending)
throw Error(format("path `%1%' exists") % i->first);
/* Run the builder. */
- debug(format("building..."));
+ msg(lvlChatty, format("building..."));
runProgram(fs.derive.builder, env);
- debug(format("build completed"));
+ msg(lvlChatty, format("build completed"));
} else
- debug(format("skipping build"));
+ msg(lvlChatty, format("fast build succesful"));
/* Check whether the output paths were created, and register each
one. */
@@ -167,7 +167,7 @@ Slice normaliseFState(FSId id, FSIdSet pending)
fs.type = FState::fsSlice;
ATerm nf = unparseFState(fs);
- debug(format("normal form: %1%") % printTerm(nf));
+ msg(lvlVomit, format("normal form: %1%") % printTerm(nf));
storeSuccessor(id, nf);
return fs.slice;
@@ -206,7 +206,7 @@ void realiseSlice(const Slice & slice, FSIdSet pending)
i != slice.elems.end(); i++)
{
SliceElem elem = *i;
- debug(format("expanding %1% in %2%") % (string) elem.id % elem.path);
+ debug(format("expanding %1% in `%2%'") % (string) elem.id % elem.path);
expandId(elem.id, elem.path, "/", pending);
}
}
diff --git a/src/store.cc b/src/store.cc
index 50932d806..fe7e1406f 100644
--- a/src/store.cc
+++ b/src/store.cc
@@ -167,7 +167,6 @@ bool isInPrefix(const string & path, const string & _prefix)
string expandId(const FSId & id, const string & target,
const string & prefix, FSIdSet pending)
{
- debug(format("expanding %1%") % (string) id);
Nest nest(lvlDebug, format("expanding %1%") % (string) id);
Strings paths;
diff --git a/src/util.cc b/src/util.cc
index 8510bb7a6..3c9a31acc 100644
--- a/src/util.cc
+++ b/src/util.cc
@@ -130,7 +130,7 @@ void deletePath(string path)
}
-Verbosity verbosity = lvlNormal;
+Verbosity verbosity = lvlError;
static int nestingLevel = 0;
@@ -165,7 +165,7 @@ void msg(Verbosity level, const format & f)
void debug(const format & f)
{
- msg(lvlDebug, format("debug: %1%") % f.str());
+ msg(lvlDebug, f);
}
diff --git a/src/util.hh b/src/util.hh
index 6d87898b5..2863085c1 100644
--- a/src/util.hh
+++ b/src/util.hh
@@ -73,10 +73,11 @@ void deletePath(string path);
/* Messages. */
typedef enum {
- lvlError = 0,
- lvlNormal = 5,
- lvlDebug = 10,
- lvlDebugMore = 15
+ lvlError,
+ lvlTalkative,
+ lvlChatty,
+ lvlDebug,
+ lvlVomit
} Verbosity;
extern Verbosity verbosity; /* supress msgs > this */
@@ -91,7 +92,7 @@ public:
};
void msg(Verbosity level, const format & f);
-void debug(const format & f); /* shorthand */
+void debug(const format & f); /* short-hand for msg(lvlDebug, ...) */
/* Wrappers arount read()/write() that read/write exactly the