Driver: Add clang -cc1 dependency output options parsing.
llvm-svn: 89508
diff --git a/clang/lib/Driver/CC1Options.cpp b/clang/lib/Driver/CC1Options.cpp
index afa0143..f92ada7 100644
--- a/clang/lib/Driver/CC1Options.cpp
+++ b/clang/lib/Driver/CC1Options.cpp
@@ -121,6 +121,14 @@
#endif
}
+static void ParseDependencyOutputArgs(DependencyOutputOptions &Opts,
+ ArgList &Args) {
+ Opts.OutputFile = getLastArgValue(Args, cc1options::OPT_dependency_file);
+ Opts.Targets = getAllArgValues(Args, cc1options::OPT_MT);
+ Opts.IncludeSystemHeaders = Args.hasArg(cc1options::OPT_sys_header_deps);
+ Opts.UsePhonyTargets = Args.hasArg(cc1options::OPT_MP);
+}
+
static void ParseTargetArgs(TargetOptions &Opts, ArgList &Args) {
Opts.ABI = getLastArgValue(Args, cc1options::OPT_target_abi);
Opts.CPU = getLastArgValue(Args, cc1options::OPT_mcpu);
@@ -152,8 +160,7 @@
<< " value )\n";
}
- // FIXME: Disabled until the FIXMEs are resolved.
- if (0)
- ParseCodeGenArgs(Res.getCodeGenOpts(), *InputArgs);
+ ParseCodeGenArgs(Res.getCodeGenOpts(), *InputArgs);
+ ParseDependencyOutputArgs(Res.getDependencyOutputOpts(), *InputArgs);
ParseTargetArgs(Res.getTargetOpts(), *InputArgs);
}