@@ -39,6 +39,7 @@ function(_report_sdk prefix)
3939 message (STATUS " Architectures: ${SWIFT_SDK_${prefix} _ARCHITECTURES}" )
4040 foreach (arch ${SWIFT_SDK_${prefix} _ARCHITECTURES})
4141 message (STATUS " ${arch} triple: ${SWIFT_SDK_${prefix} _ARCH_${arch} _TRIPLE}" )
42+ message (STATUS " Module triple: ${SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE}" )
4243 endforeach ()
4344 if ("${prefix} " STREQUAL "WINDOWS" )
4445 foreach (arch ${SWIFT_SDK_${prefix} _ARCHITECTURES})
@@ -115,9 +116,10 @@ endfunction()
115116# SWIFT_SDK_${prefix}_ARCHITECTURES Architectures (as a list)
116117# SWIFT_SDK_${prefix}_IS_SIMULATOR Whether this is a simulator target.
117118# SWIFT_SDK_${prefix}_ARCH_${ARCH}_TRIPLE Triple name
119+ # SWIFT_SDK_${prefix}_ARCH_${ARCH}_MODULE Module triple name for this SDK
118120macro (configure_sdk_darwin
119121 prefix name deployment_version xcrun_name
120- version_min_name triple_name architectures)
122+ version_min_name triple_name module_name architectures)
121123 # Note: this has to be implemented as a macro because it sets global
122124 # variables.
123125
@@ -190,6 +192,9 @@ macro(configure_sdk_darwin
190192 set (SWIFT_SDK_${prefix} _ARCH_${arch} _TRIPLE
191193 "${arch} -apple-${SWIFT_SDK_${prefix} _TRIPLE_NAME}" )
192194
195+ set (SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE
196+ "${arch} -apple-${module_name} " )
197+
193198 # If this is a simulator target, append -simulator.
194199 if (SWIFT_SDK_${prefix} _IS_SIMULATOR)
195200 set (SWIFT_SDK_${prefix} _ARCH_${arch} _TRIPLE
@@ -198,12 +203,8 @@ macro(configure_sdk_darwin
198203
199204 if (SWIFT_ENABLE_MACCATALYST AND "${prefix} " STREQUAL "OSX" )
200205 # For macCatalyst append the '-macabi' environment to the target triple.
201- set (SWIFT_SDK_MACCATALYST_ARCH_${arch} _TRIPLE
202- "${SWIFT_SDK_${prefix} _ARCH_${arch} _TRIPLE}-macabi" )
203-
204- # macCatalyst triple
205- set (SWIFT_MACCATALYST_TRIPLE
206- "x86_64-apple-ios${SWIFT_DARWIN_DEPLOYMENT_VERSION_MACCATALYST} -macabi" )
206+ set (SWIFT_SDK_MACCATALYST_ARCH_${arch} _TRIPLE "${arch} -apple-ios-macabi" )
207+ set (SWIFT_SDK_MACCATALYST_ARCH_${arch} _MODULE "${arch} -apple-ios-macabi" )
207208
208209 # For macCatalyst, the xcrun_name is "macosx" since it uses that sdk.
209210 # Hard code the library subdirectory to "maccatalyst" in that case.
@@ -256,6 +257,8 @@ macro(configure_sdk_unix name architectures)
256257 message (SEND_ERROR "Couldn't find SWIFT_SDK_ANDROID_ARCH_armv7_PATH" )
257258 endif ()
258259 set (SWIFT_SDK_ANDROID_ARCH_${arch} _TRIPLE "armv7-none-linux-androideabi" )
260+ # The Android ABI isn't part of the module triple.
261+ set (SWIFT_SDK_ANDROID_ARCH_${arch} _MODULE "armv7-none-linux-android" )
259262 elseif ("${arch} " STREQUAL "aarch64" )
260263 set (SWIFT_SDK_ANDROID_ARCH_${arch} _NDK_TRIPLE "aarch64-linux-android" )
261264 set (SWIFT_SDK_ANDROID_ARCH_${arch} _ALT_SPELLING "aarch64" )
@@ -358,6 +361,11 @@ macro(configure_sdk_unix name architectures)
358361 message (FATAL_ERROR "unknown Unix OS: ${prefix} " )
359362 endif ()
360363 endif ()
364+
365+ # If the module triple wasn't set explicitly, it's the same as the triple.
366+ if (NOT SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE)
367+ set (SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE "${SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE}" )
368+ endif ()
361369 endforeach ()
362370
363371 # Add this to the list of known SDKs.
@@ -388,6 +396,9 @@ macro(configure_sdk_windows name environment architectures)
388396 set (SWIFT_SDK_${prefix} _ARCH_${arch} _TRIPLE
389397 "${arch} -unknown-windows-${environment} " )
390398 endif ()
399+
400+ set (SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE "${SWIFT_SDK_${prefix} _ARCH_${arch} _MODULE}" )
401+
391402 # NOTE: set the path to / to avoid a spurious `--sysroot` from being passed
392403 # to the driver -- rely on the `INCLUDE` AND `LIB` environment variables
393404 # instead.
0 commit comments