diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-04-10 20:11:50 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-04-10 20:11:50 +0000 |
commit | c8b7af89ce5d82fb4d11d6c75ba1e32642ba28e5 (patch) | |
tree | 4eff7a1b2bfb1f25e1dcb893a24e07c0c6a850ea | |
parent | 497ff13243ae974cf51a00ddb876bf3b4ba39d81 (diff) | |
download | bcm5719-llvm-c8b7af89ce5d82fb4d11d6c75ba1e32642ba28e5.tar.gz bcm5719-llvm-c8b7af89ce5d82fb4d11d6c75ba1e32642ba28e5.zip |
Driver: Forward -miphoneos-version-min to clang.
llvm-svn: 68816
-rw-r--r-- | clang/lib/Driver/ToolChains.cpp | 13 | ||||
-rw-r--r-- | clang/lib/Driver/Tools.cpp | 1 |
2 files changed, 13 insertions, 1 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp index daa45d7a34d..975a6c1fda7 100644 --- a/clang/lib/Driver/ToolChains.cpp +++ b/clang/lib/Driver/ToolChains.cpp @@ -140,7 +140,18 @@ DerivedArgList *Darwin_X86::TranslateArgs(InputArgList &Args) const { // have something that works, we should reevaluate each translation // and try to push it down into tool specific logic. - if (!Args.hasArg(options::OPT_mmacosx_version_min_EQ, false)) { + Arg *OSXVersion = + Args.getLastArg(options::OPT_mmacosx_version_min_EQ, false); + Arg *iPhoneVersion = + Args.getLastArg(options::OPT_miphoneos_version_min_EQ, false); + if (OSXVersion && iPhoneVersion) { + getHost().getDriver().Diag(clang::diag::err_drv_argument_not_allowed_with) + << OSXVersion->getAsString(Args) + << iPhoneVersion->getAsString(Args); + } else if (!OSXVersion && !iPhoneVersion) { + // Chose the default version based on the arch. + // + // FIXME: This will need to be fixed when we merge in arm support. const Option *O = Opts.getOption(options::OPT_mmacosx_version_min_EQ); DAL->append(DAL->MakeJoinedArg(0, O, MacosxVersionMin.c_str())); } diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index aa9866b1ee3..4d1aca436af 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -362,6 +362,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, Args.AddAllArgs(CmdArgs, options::OPT_v); Args.AddLastArg(CmdArgs, options::OPT_P); Args.AddLastArg(CmdArgs, options::OPT_mmacosx_version_min_EQ); + Args.AddLastArg(CmdArgs, options::OPT_miphoneos_version_min_EQ); // Special case debug options to only pass -g to clang. This is // wrong. |