[cfe-commits] r156489 - in /cfe/trunk: lib/Driver/ToolChains.cpp test/Driver/target-triple-deployment.c

Chad Rosier mcrosier at apple.com
Wed May 9 11:09:58 PDT 2012


Author: mcrosier
Date: Wed May  9 13:09:58 2012
New Revision: 156489

URL: http://llvm.org/viewvc/llvm-project?rev=156489&view=rev
Log:
[driver] Use the iOS target triple to infer the deployment target.
rdar://11409204

Added:
    cfe/trunk/test/Driver/target-triple-deployment.c
Modified:
    cfe/trunk/lib/Driver/ToolChains.cpp

Modified: cfe/trunk/lib/Driver/ToolChains.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains.cpp?rev=156489&r1=156488&r2=156489&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChains.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChains.cpp Wed May  9 13:09:58 2012
@@ -524,8 +524,14 @@
     // If no OSX or iOS target has been specified and we're compiling for armv7,
     // go ahead as assume we're targeting iOS.
     if (OSXTarget.empty() && iOSTarget.empty())
-      if (getDarwinArchName(Args) == "armv7")
-        iOSTarget = "0.0";
+      if (getDarwinArchName(Args) == "armv7") {
+        std::string iOSVersionMin;
+        unsigned Major, Minor, Micro;
+        getTriple().getiOSVersion(Major, Minor, Micro);
+        llvm::raw_string_ostream(iOSVersionMin)
+          << Major << '.' << Minor << '.' << Micro;
+        iOSTarget = iOSVersionMin;
+      }
 
     // Handle conflicting deployment targets
     //

Added: cfe/trunk/test/Driver/target-triple-deployment.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/target-triple-deployment.c?rev=156489&view=auto
==============================================================================
--- cfe/trunk/test/Driver/target-triple-deployment.c (added)
+++ cfe/trunk/test/Driver/target-triple-deployment.c Wed May  9 13:09:58 2012
@@ -0,0 +1,33 @@
+// RUN: touch %t.o
+// RUN: %clang -target x86_64-apple-macosx -### %t.o 2> %t.log
+// RUN: %clang -target x86_64-apple-darwin9 -### %t.o 2>> %t.log
+// RUN: %clang -target x86_64-apple-macosx10.7 -### %t.o 2>> %t.log
+//
+// RUN: %clang -target armv7-apple-ios -### %t.o 2>> %t.log
+// RUN: %clang -target armv7-apple-ios0.0 -### %t.o 2>> %t.log
+// RUN: %clang -target armv7-apple-ios1.2.3 -### %t.o 2>> %t.log
+// RUN: %clang -target armv7-apple-ios5.0 -### %t.o 2>> %t.log
+//
+// RUN: FileCheck %s < %t.log
+
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -macosx_version_min
+// CHECK: 10.4.0
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -macosx_version_min
+// CHECK: 10.5.0
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -macosx_version_min
+// CHECK: 10.7.0
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -iphoneos_version_min
+// CHECK: 0.0.0
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -iphoneos_version_min
+// CHECK: 0.0.0
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -iphoneos_version_min
+// CHECK: 1.2.3
+// CHECK: {{ld(.exe)?"}}
+// CHECK: -iphoneos_version_min
+// CHECK: 5.0.0





More information about the cfe-commits mailing list