Skip to content
CommandLine.cpp 36.1 KiB
Newer Older
// Define the --version option that prints out the LLVM version for the tool
VersionPrinter VersionPrinterInstance;
cl::opt<VersionPrinter, true, parser<bool> >
Chris Lattner's avatar
Chris Lattner committed
VersOp("version", cl::desc("Display the version of this program"),
    cl::location(VersionPrinterInstance), cl::ValueDisallowed);

Reid Spencer's avatar
Reid Spencer committed

Chris Lattner's avatar
Chris Lattner committed
} // End anonymous namespace
Reid Spencer's avatar
Reid Spencer committed

// Utility function for printing the help message.
void cl::PrintHelpMessage() {
  // This looks weird, but it actually prints the help message. The
  // NormalPrinter variable is a HelpPrinter and the help gets printed when
  // its operator= is invoked. That's because the "normal" usages of the
  // help printer is to be assigned true/false depending on whether the
  // --help option was given or not. Since we're circumventing that we have
  // to make it look like --help was given, so we assign true.
Reid Spencer's avatar
Reid Spencer committed
  NormalPrinter = true;
}

void cl::SetVersionPrinter(void (*func)()) {
  OverrideVersionPrinter = func;
}