diff --git a/cmake/modules/SwiftConfigureSDK.cmake b/cmake/modules/SwiftConfigureSDK.cmake index b1dbea4f99919..e4fa8fd6e9fc8 100644 --- a/cmake/modules/SwiftConfigureSDK.cmake +++ b/cmake/modules/SwiftConfigureSDK.cmake @@ -427,7 +427,7 @@ macro(configure_sdk_unix name architectures) string(REGEX REPLACE "[-].*" "" freebsd_system_version ${CMAKE_SYSTEM_VERSION}) message(STATUS "FreeBSD Version: ${freebsd_system_version}") - set(SWIFT_SDK_FREEBSD_ARCH_${arch}_TRIPLE "${arch}-unknown-freebsd${freebsd_system_version}") + set(SWIFT_SDK_FREEBSD_ARCH_${arch}_TRIPLE "${arch}-unknown-freebsd") elseif("${prefix}" STREQUAL "OPENBSD") if(NOT arch STREQUAL "x86_64" AND NOT arch STREQUAL "aarch64") message(FATAL_ERROR "unsupported arch for OpenBSD: ${arch}") diff --git a/lib/Basic/Platform.cpp b/lib/Basic/Platform.cpp index 1d1c35712d369..7778a3784472e 100644 --- a/lib/Basic/Platform.cpp +++ b/lib/Basic/Platform.cpp @@ -414,6 +414,10 @@ llvm::Triple swift::getTargetSpecificModuleTriple(const llvm::Triple &triple) { triple.getOSName(), environment); } + if (triple.isOSFreeBSD()) { + return swift::getUnversionedTriple(triple); + } + // Other platforms get no normalization. return triple; }