]> granicus.if.org Git - clang/commitdiff
ccc/Driver: Mark {dump{machine,specs,version},
authorDaniel Dunbar <daniel@zuster.org>
Fri, 13 Mar 2009 00:17:48 +0000 (00:17 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Fri, 13 Mar 2009 00:17:48 +0000 (00:17 +0000)
print-{multi-{directory,lib,os-directory}, search-dirs} as unsupported
instead of handling separately.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66848 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Driver/Options.def
lib/Driver/Driver.cpp
tools/ccc/ccclib/Arguments.py
tools/ccc/ccclib/Driver.py

index e9833a6420ba8773d33159b7820e02c12e4115f5..0a753234410ae61bc3413a616f1d041800639aa5 100644 (file)
@@ -293,9 +293,9 @@ OPTION("-dA", dA, Flag, d_Group, INVALID, "", 0)
 OPTION("-dM", dM, Flag, d_Group, INVALID, "", 0)
 OPTION("-dead_strip", dead__strip, Flag, INVALID, INVALID, "", 0)
 OPTION("-dependency-file", dependency_file, Separate, INVALID, INVALID, "", 0)
-OPTION("-dumpmachine", dumpmachine, Flag, INVALID, INVALID, "", 0)
-OPTION("-dumpspecs", dumpspecs, Flag, INVALID, INVALID, "", 0)
-OPTION("-dumpversion", dumpversion, Flag, INVALID, INVALID, "", 0)
+OPTION("-dumpmachine", dumpmachine, Flag, INVALID, INVALID, "u", 0)
+OPTION("-dumpspecs", dumpspecs, Flag, INVALID, INVALID, "u", 0)
+OPTION("-dumpversion", dumpversion, Flag, INVALID, INVALID, "u", 0)
 OPTION("-dylib_file", dylib__file, Separate, INVALID, INVALID, "", 0)
 OPTION("-dylinker_install_name", dylinker__install__name, JoinedOrSeparate, INVALID, INVALID, "", 0)
 OPTION("-dylinker", dylinker, Flag, INVALID, INVALID, "", 0)
@@ -462,11 +462,11 @@ OPTION("-prebind", prebind, Flag, INVALID, INVALID, "", 0)
 OPTION("-preload", preload, Flag, INVALID, INVALID, "", 0)
 OPTION("-print-file-name=", print_file_name_EQ, Joined, INVALID, INVALID, "", 0)
 OPTION("-print-libgcc-file-name", print_libgcc_file_name, Flag, INVALID, INVALID, "", 0)
-OPTION("-print-multi-directory", print_multi_directory, Flag, INVALID, INVALID, "", 0)
-OPTION("-print-multi-lib", print_multi_lib, Flag, INVALID, INVALID, "", 0)
-OPTION("-print-multi-os-directory", print_multi_os_directory, Flag, INVALID, INVALID, "", 0)
+OPTION("-print-multi-directory", print_multi_directory, Flag, INVALID, INVALID, "u", 0)
+OPTION("-print-multi-lib", print_multi_lib, Flag, INVALID, INVALID, "u", 0)
+OPTION("-print-multi-os-directory", print_multi_os_directory, Flag, INVALID, INVALID, "u", 0)
 OPTION("-print-prog-name=", print_prog_name_EQ, Joined, INVALID, INVALID, "", 0)
-OPTION("-print-search-dirs", print_search_dirs, Flag, INVALID, INVALID, "", 0)
+OPTION("-print-search-dirs", print_search_dirs, Flag, INVALID, INVALID, "u", 0)
 OPTION("-private_bundle", private__bundle, Flag, INVALID, INVALID, "", 0)
 OPTION("-pthreads", pthreads, Flag, INVALID, INVALID, "", 0)
 OPTION("-pthread", pthread, Flag, INVALID, INVALID, "", 0)
index 204436abba9aab26fe1e04f93b6ca9dad7c032c4..27ec8b3308ea60fbc7f9a7de0ab2a94c17c8f38b 100644 (file)
@@ -31,9 +31,9 @@ Driver::Driver(const char *_Name, const char *_Dir,
     Name(_Name), Dir(_Dir), DefaultHostTriple(_DefaultHostTriple),
     Host(0),
     CCCIsCXX(false), CCCEcho(false), 
-    CCCNoClang(false), CCCNoClangCXX(false), CCCNoClangCPP(false)
+    CCCNoClang(false), CCCNoClangCXX(false), CCCNoClangCPP(false),
+    SuppressMissingInputWarning(false)
 {
-  
 }
 
 Driver::~Driver() {
@@ -325,7 +325,7 @@ void Driver::BuildActions(ArgList &Args, ActionList &Actions) {
     }
   }
 
-  if (Inputs.empty()) {
+  if (!SuppressMissingInputWarning && Inputs.empty()) {
     Diag(clang::diag::err_drv_no_input_files);
     return;
   }
index ec1192ab83a3897352fecb0616334f1de99a5f70..7451e216b4eba6e904025e22afbc61daf4ee8eaa 100644 (file)
@@ -526,16 +526,16 @@ class OptionParser:
 
         # Misc driver options
         self.passExitCodesOption = self.addOption(FlagOption('-pass-exit-codes'))
-        self.dumpspecsOption = self.addOption(FlagOption('-dumpspecs'))
-        self.dumpversionOption = self.addOption(FlagOption('-dumpversion'))
-        self.dumpmachineOption = self.addOption(FlagOption('-dumpmachine'))
-        self.printSearchDirsOption = self.addOption(FlagOption('-print-search-dirs'))
+        self.dumpspecsOption = self.addOption(FlagOption('-dumpspecs', unsupported=True))
+        self.dumpversionOption = self.addOption(FlagOption('-dumpversion', unsupported=True))
+        self.dumpmachineOption = self.addOption(FlagOption('-dumpmachine', unsupported=True))
+        self.printSearchDirsOption = self.addOption(FlagOption('-print-search-dirs', unsupported=True))
         self.printLibgccFileNameOption = self.addOption(FlagOption('-print-libgcc-file-name'))
         self.printFileNameOption = self.addOption(JoinedOption('-print-file-name='))
         self.printProgNameOption = self.addOption(JoinedOption('-print-prog-name='))
-        self.printMultiDirectoryOption = self.addOption(FlagOption('-print-multi-directory'))
-        self.printMultiOsDirectoryOption = self.addOption(FlagOption('-print-multi-os-directory'))
-        self.printMultiLibOption = self.addOption(FlagOption('-print-multi-lib'))
+        self.printMultiDirectoryOption = self.addOption(FlagOption('-print-multi-directory', unsupported=True))
+        self.printMultiOsDirectoryOption = self.addOption(FlagOption('-print-multi-os-directory', unsupported=True))
+        self.printMultiLibOption = self.addOption(FlagOption('-print-multi-lib', unsupported=True))
         self.addOption(SeparateOption('-specs', unsupported=True))
 
         # Pipeline control
index ffba426cf2aa398665b6e335435d13fba8d9d64f..b18d28bec5716fe3e0ce0608fe5c709bcba4a16d 100644 (file)
@@ -371,19 +371,6 @@ class Driver(object):
             self.printVersion()
             self.suppressMissingInputWarning = True
 
-        arg = (args.getLastArg(self.parser.dumpmachineOption) or
-               args.getLastArg(self.parser.dumpversionOption) or
-               args.getLastArg(self.parser.printSearchDirsOption))
-        if arg:
-            raise NotImplementedError('%s unsupported' % arg.opt.name)
-
-        arg = (args.getLastArg(self.parser.dumpspecsOption) or
-               args.getLastArg(self.parser.printMultiDirectoryOption) or
-               args.getLastArg(self.parser.printMultiOsDirectoryOption) or
-               args.getLastArg(self.parser.printMultiLibOption))
-        if arg:
-            raise Arguments.InvalidArgumentsError('%s unsupported by this driver' % arg.opt.name)
-
         arg = args.getLastArg(self.parser.printFileNameOption)
         if arg:
             print self.getFilePath(args.getValue(arg))