mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Revert "Revert "Use autolinking to pull in compatibility libraries.""
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
#include "llvm/ADT/StringSwitch.h"
|
||||
#include "llvm/ADT/Triple.h"
|
||||
#include "llvm/Support/VersionTuple.h"
|
||||
|
||||
using namespace swift;
|
||||
|
||||
@@ -313,3 +314,37 @@ llvm::Triple swift::getTargetSpecificModuleTriple(const llvm::Triple &triple) {
|
||||
return triple;
|
||||
}
|
||||
|
||||
Optional<llvm::VersionTuple>
|
||||
swift::getSwiftRuntimeCompatibilityVersionForTarget(const llvm::Triple &Triple){
|
||||
unsigned Major, Minor, Micro;
|
||||
|
||||
if (Triple.isMacOSX()) {
|
||||
Triple.getMacOSXVersion(Major, Minor, Micro);
|
||||
if (Major == 10) {
|
||||
if (Minor <= 14) {
|
||||
return llvm::VersionTuple(5, 0);
|
||||
} else {
|
||||
return None;
|
||||
}
|
||||
} else {
|
||||
return None;
|
||||
}
|
||||
} else if (Triple.isiOS()) { // includes tvOS
|
||||
Triple.getiOSVersion(Major, Minor, Micro);
|
||||
if (Major <= 12) {
|
||||
return llvm::VersionTuple(5, 0);
|
||||
} else {
|
||||
return None;
|
||||
}
|
||||
} else if (Triple.isWatchOS()) {
|
||||
Triple.getWatchOSVersion(Major, Minor, Micro);
|
||||
if (Major <= 5) {
|
||||
return llvm::VersionTuple(5, 0);
|
||||
} else {
|
||||
return None;
|
||||
}
|
||||
} else {
|
||||
return None;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user