From: Daniel Dunbar Date: Fri, 10 Apr 2009 20:11:50 +0000 (+0000) Subject: Driver: Forward -miphoneos-version-min to clang. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ff8857a9e6f533765f63b2934902645baa7ddd09;p=clang Driver: Forward -miphoneos-version-min to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68816 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp index daa45d7a34..975a6c1fda 100644 --- a/lib/Driver/ToolChains.cpp +++ b/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/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index aa9866b1ee..4d1aca436a 100644 --- a/lib/Driver/Tools.cpp +++ b/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.