aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-03-13 00:17:48 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-03-13 00:17:48 +0000
commit8b1604ece7bf6dc2ba811cd7d8767557e55e2ec2 (patch)
treea080970a2cf53c96ea46ee41befca8f469e3b5db
parent7517ac00e40da7a0ee4ebf7451e7dc9da74f15d9 (diff)
ccc/Driver: Mark {dump{machine,specs,version},
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
-rw-r--r--include/clang/Driver/Options.def14
-rw-r--r--lib/Driver/Driver.cpp6
-rw-r--r--tools/ccc/ccclib/Arguments.py14
-rw-r--r--tools/ccc/ccclib/Driver.py13
4 files changed, 17 insertions, 30 deletions
diff --git a/include/clang/Driver/Options.def b/include/clang/Driver/Options.def
index e9833a6420..0a75323441 100644
--- a/include/clang/Driver/Options.def
+++ b/include/clang/Driver/Options.def
@@ -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)
diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp
index 204436abba..27ec8b3308 100644
--- a/lib/Driver/Driver.cpp
+++ b/lib/Driver/Driver.cpp
@@ -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;
}
diff --git a/tools/ccc/ccclib/Arguments.py b/tools/ccc/ccclib/Arguments.py
index ec1192ab83..7451e216b4 100644
--- a/tools/ccc/ccclib/Arguments.py
+++ b/tools/ccc/ccclib/Arguments.py
@@ -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
diff --git a/tools/ccc/ccclib/Driver.py b/tools/ccc/ccclib/Driver.py
index ffba426cf2..b18d28bec5 100644
--- a/tools/ccc/ccclib/Driver.py
+++ b/tools/ccc/ccclib/Driver.py
@@ -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))