Add a --dry-run option to llvmc2. Patch by Holger Schurig.
authorMikhail Glushenkov <foldr@codedgers.com>
Fri, 30 May 2008 18:48:52 +0000 (18:48 +0000)
committerMikhail Glushenkov <foldr@codedgers.com>
Fri, 30 May 2008 18:48:52 +0000 (18:48 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51781 91177308-0d34-0410-b5e6-96231b3b80d8

tools/llvmc2/Action.cpp
tools/llvmc2/llvmc.cpp

index 183dd813b411675dc64d20d05aff63f92efcfa01..08416263a1bdc97c1cfd9dfcea67277aaa161cbf 100644 (file)
@@ -22,6 +22,7 @@
 using namespace llvm;
 using namespace llvmc;
 
+extern cl::opt<bool> DryRun;
 extern cl::opt<bool> VerboseMode;
 
 namespace {
@@ -65,10 +66,13 @@ namespace {
 }
 
 int llvmc::Action::Execute() const {
-  if (VerboseMode) {
+  if (DryRun || VerboseMode) {
     std::cerr << Command_ << " ";
     std::for_each(Args_.begin(), Args_.end(), print_string);
     std::cerr << '\n';
   }
-  return ExecuteProgram(Command_, Args_);
+  if (DryRun)
+    return 0;
+  else
+    return ExecuteProgram(Command_, Args_);
 }
index e093439d4ff5c72e93a7e781c22461d4ccb312ee..9a2b27f9cbcc094d9216bb222569f474be87b16c 100644 (file)
@@ -41,6 +41,8 @@ cl::opt<std::string> OutputFilename("o", cl::desc("Output file name"),
 cl::list<std::string> Languages("x",
           cl::desc("Specify the language of the following input files"),
           cl::ZeroOrMore);
+cl::opt<bool> DryRun("dry-run",
+                          cl::desc("only pretend to run commands"));
 cl::opt<bool> VerboseMode("v",
                           cl::desc("Enable verbose mode"));
 cl::opt<bool> WriteGraph("write-graph",