Skip to content

Commit 1b34fa9

Browse files
committed
[Threading] Minor improvements to SWIFT_THREADING_PACKAGE support
Added a check that someone hasn't passed us an argument with too many colons. Also renamed `find_threading_package` to `get_threading_package` to better reflect what it does.
1 parent b573555 commit 1b34fa9

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
lines changed

CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -829,10 +829,12 @@ if(SWIFT_THREADING_PACKAGE)
829829
if(elt_list_len EQUAL 1)
830830
set(elt_sdk "Global")
831831
list(GET elt_list 0 elt_package)
832-
else()
832+
elseif(elt_list_len EQUAL 2)
833833
list(GET elt_list 0 elt_sdk)
834834
list(GET elt_list 1 elt_package)
835835
string(TOUPPER "${elt_sdk}" elt_sdk)
836+
else()
837+
message(FATAL_ERROR "Bad threading override \"${elt}\" - SWIFT_THREADING_PACKAGE must be a semicolon separated list of package or sdk:package pairs.")
836838
endif()
837839
string(TOLOWER "${elt_package}" elt_package)
838840
message(STATUS " ${elt_sdk}: ${elt_package}")

cmake/modules/SwiftConfigureSDK.cmake

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ function(remove_sdk_unsupported_archs name os sdk_path architectures_var)
103103
endfunction()
104104

105105
# Work out which threading package to use by consulting SWIFT_THREADING_PACKAGE
106-
function(find_threading_package sdk default package_var)
106+
function(get_threading_package sdk default package_var)
107107
set(global_override)
108108
foreach(elt ${SWIFT_THREADING_PACKAGE})
109109
string(REPLACE ":" ";" elt_list "${elt}")
@@ -208,7 +208,7 @@ macro(configure_sdk_darwin
208208
set(SWIFT_SDK_${prefix}_STATIC_LIBRARY_SUFFIX ".a")
209209
set(SWIFT_SDK_${prefix}_IMPORT_LIBRARY_PREFIX "")
210210
set(SWIFT_SDK_${prefix}_IMPORT_LIBRARY_SUFFIX "")
211-
find_threading_package(${prefix} "darwin" SWIFT_SDK_${prefix}_THREADING_PACKAGE)
211+
get_threading_package(${prefix} "darwin" SWIFT_SDK_${prefix}_THREADING_PACKAGE)
212212

213213
set(SWIFT_SDK_${prefix}_ARCHITECTURES ${architectures})
214214
if(SWIFT_DARWIN_SUPPORTED_ARCHS)
@@ -333,7 +333,7 @@ macro(configure_sdk_unix name architectures)
333333
elseif("${prefix}" STREQUAL "WASI")
334334
set(_default_threading_package "none")
335335
endif()
336-
find_threading_package(${prefix} ${_default_threading_package}
336+
get_threading_package(${prefix} ${_default_threading_package}
337337
SWIFT_SDK_${prefix}_THREADING_PACKAGE)
338338

339339
foreach(arch ${architectures})
@@ -462,7 +462,7 @@ macro(configure_sdk_windows name environment architectures)
462462
set(SWIFT_SDK_${prefix}_STATIC_LIBRARY_SUFFIX ".lib")
463463
set(SWIFT_SDK_${prefix}_IMPORT_LIBRARY_PREFIX "")
464464
set(SWIFT_SDK_${prefix}_IMPORT_LIBRARY_SUFFIX ".lib")
465-
find_threading_package(${prefix} "win32" SWIFT_SDK_${prefix}_THREADING_PACKAGE)
465+
get_threading_package(${prefix} "win32" SWIFT_SDK_${prefix}_THREADING_PACKAGE)
466466

467467
foreach(arch ${architectures})
468468
if(arch STREQUAL armv7)
@@ -529,6 +529,6 @@ function(configure_target_variant prefix name sdk build_config lib_subdir)
529529
set(SWIFT_VARIANT_${prefix}_STATIC_LIBRARY_SUFFIX ${SWIFT_SDK_${sdk}_STATIC_LIBRARY_SUFFIX})
530530
set(SWIFT_VARIANT_${prefix}_IMPORT_LIBRARY_PREFIX ${SWIFT_SDK_${sdk}_IMPORT_LIBRARY_PREFIX})
531531
set(SWIFT_VARIANT_${prefix}_IMPORT_LIBRARY_SUFFIX ${SWIFT_SDK_${sdk}_IMPORT_LIBRARY_SUFFIX})
532-
find_threading_package(${prefix} ${SWIFT_SDK_${sdk}_THREADING_PACKAGE} SWIFT_VARIANT_${prefix}_THREADING_PACKAGE)
532+
get_threading_package(${prefix} ${SWIFT_SDK_${sdk}_THREADING_PACKAGE} SWIFT_VARIANT_${prefix}_THREADING_PACKAGE)
533533
endfunction()
534534

0 commit comments

Comments
 (0)