@@ -66,95 +66,6 @@ else()
6666 any compiler host sources written in Swift" )
6767endif ()
6868
69- # A convenience pattern to match Darwin platforms. Example:
70- # if(SWIFT_HOST_VARIANT MATCHES "${SWIFT_DARWIN_VARIANTS}")
71- # ...
72- # endif()
73- set (SWIFT_DARWIN_VARIANTS "^(macosx|iphoneos|iphonesimulator|appletvos|appletvsimulator|watchos|watchsimulator)" )
74- set (SWIFT_DARWIN_EMBEDDED_VARIANTS "^(iphoneos|iphonesimulator|appletvos|appletvsimulator|watchos|watchsimulator)" )
75-
76- # A convenient list to match Darwin SDKs. Example:
77- # if("${SWIFT_HOST_VARIANT_SDK}" IN_LIST SWIFT_DARWIN_PLATFORMS)
78- # ...
79- # endif()
80- set (SWIFT_DARWIN_PLATFORMS "IOS" "IOS_SIMULATOR" "TVOS" "TVOS_SIMULATOR" "WATCHOS" "WATCHOS_SIMULATOR" "OSX" )
81-
82- set (SWIFT_APPLE_PLATFORMS ${SWIFT_DARWIN_PLATFORMS} )
83- if (SWIFT_FREESTANDING_FLAVOR STREQUAL "apple" )
84- list (APPEND SWIFT_APPLE_PLATFORMS "FREESTANDING" )
85- if (SWIFT_FREESTANDING_IS_DARWIN)
86- list (APPEND SWIFT_DARWIN_PLATFORMS "FREESTANDING" )
87- endif ()
88- endif ()
89-
90- # If SWIFT_HOST_VARIANT_SDK not given, try to detect from the CMAKE_SYSTEM_NAME.
91- if (SWIFT_HOST_VARIANT_SDK)
92- set (SWIFT_HOST_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK} " )
93- else ()
94- if ("${CMAKE_SYSTEM_NAME} " STREQUAL "Linux" )
95- set (SWIFT_HOST_VARIANT_SDK_default "LINUX" )
96- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "FreeBSD" )
97- set (SWIFT_HOST_VARIANT_SDK_default "FREEBSD" )
98- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "OpenBSD" )
99- set (SWIFT_HOST_VARIANT_SDK_default "OPENBSD" )
100- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "CYGWIN" )
101- set (SWIFT_HOST_VARIANT_SDK_default "CYGWIN" )
102- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Windows" )
103- set (SWIFT_HOST_VARIANT_SDK_default "WINDOWS" )
104- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Haiku" )
105- set (SWIFT_HOST_VARIANT_SDK_default "HAIKU" )
106- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Android" )
107- set (SWIFT_HOST_VARIANT_SDK_default "ANDROID" )
108- elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Darwin" )
109- set (SWIFT_HOST_VARIANT_SDK_default "OSX" )
110- else ()
111- message (FATAL_ERROR "Unable to detect SDK for host system: ${CMAKE_SYSTEM_NAME} " )
112- endif ()
113- endif ()
114-
115- # If SWIFT_HOST_VARIANT_ARCH not given, try to detect from the CMAKE_SYSTEM_PROCESSOR.
116- if (SWIFT_HOST_VARIANT_ARCH)
117- set (SWIFT_HOST_VARIANT_ARCH_default "${SWIFT_HOST_VARIANT_ARCH} " )
118- else ()
119- if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64" )
120- set (SWIFT_HOST_VARIANT_ARCH_default "x86_64" )
121- elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|ARM64|arm64" )
122- if (SWIFT_HOST_VARIANT_SDK_default STREQUAL OSX)
123- set (SWIFT_HOST_VARIANT_ARCH_default "arm64" )
124- else ()
125- set (SWIFT_HOST_VARIANT_ARCH_default "aarch64" )
126- endif ()
127- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc64" )
128- set (SWIFT_HOST_VARIANT_ARCH_default "powerpc64" )
129- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc" )
130- set (SWIFT_HOST_VARIANT_ARCH_default "powerpc" )
131- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc64le" )
132- set (SWIFT_HOST_VARIANT_ARCH_default "powerpc64le" )
133- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "s390x" )
134- set (SWIFT_HOST_VARIANT_ARCH_default "s390x" )
135- elseif ("${CMAKE_SYSTEM_PROCESSOR} " MATCHES "armv5|armv5te" )
136- set (SWIFT_HOST_VARIANT_ARCH_default "armv5" )
137- # FIXME: Only matches v6l/v7l - by far the most common variants
138- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "armv6l" )
139- set (SWIFT_HOST_VARIANT_ARCH_default "armv6" )
140- elseif ("${CMAKE_SYSTEM_PROCESSOR} " MATCHES "armv7l|armv7-a" )
141- set (SWIFT_HOST_VARIANT_ARCH_default "armv7" )
142- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "IA64" )
143- set (SWIFT_HOST_VARIANT_ARCH_default "itanium" )
144- elseif ("${CMAKE_SYSTEM_PROCESSOR} " MATCHES "(x86|i686)" )
145- set (SWIFT_HOST_VARIANT_ARCH_default "i686" )
146- elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "wasm32" )
147- set (SWIFT_HOST_VARIANT_ARCH_default "wasm32" )
148- else ()
149- message (FATAL_ERROR "Unrecognized architecture on host system: ${CMAKE_SYSTEM_PROCESSOR} " )
150- endif ()
151- endif ()
152-
153- set (SWIFT_HOST_VARIANT_SDK "${SWIFT_HOST_VARIANT_SDK_default} " CACHE STRING
154- "Deployment sdk for Swift host tools (the compiler)." )
155- set (SWIFT_HOST_VARIANT_ARCH "${SWIFT_HOST_VARIANT_ARCH_default} " CACHE STRING
156- "Deployment arch for Swift host tools (the compiler)." )
157-
15869#
15970# User-configurable options that control the inclusion and default build
16071# behavior for components which may not strictly be necessary (tools, examples,
@@ -192,16 +103,6 @@ option(SWIFT_STDLIB_ENABLE_UNICODE_DATA
192103 NOTE: Disabling this will cause many String methods to crash."
193104 TRUE )
194105
195- include (Threading)
196-
197- threading_package_default("${SWIFT_HOST_VARIANT_SDK} "
198- SWIFT_THREADING_PACKAGE_default)
199-
200- set (SWIFT_THREADING_PACKAGE "${SWIFT_THREADING_PACKAGE_default} "
201- CACHE STRING
202- "The threading package to use. Must be one of 'none', 'pthreads',
203- 'darwin', 'linux', 'win32', 'c11'." )
204-
205106option (SWIFT_BUILD_DYNAMIC_SDK_OVERLAY
206107 "Build dynamic variants of the Swift SDK overlay"
207108 TRUE )
@@ -770,6 +671,27 @@ include_directories(BEFORE
770671 ${SWIFT_INCLUDE_DIR}
771672 )
772673
674+ # A convenience pattern to match Darwin platforms. Example:
675+ # if(SWIFT_HOST_VARIANT MATCHES "${SWIFT_DARWIN_VARIANTS}")
676+ # ...
677+ # endif()
678+ set (SWIFT_DARWIN_VARIANTS "^(macosx|iphoneos|iphonesimulator|appletvos|appletvsimulator|watchos|watchsimulator)" )
679+ set (SWIFT_DARWIN_EMBEDDED_VARIANTS "^(iphoneos|iphonesimulator|appletvos|appletvsimulator|watchos|watchsimulator)" )
680+
681+ # A convenient list to match Darwin SDKs. Example:
682+ # if("${SWIFT_HOST_VARIANT_SDK}" IN_LIST SWIFT_DARWIN_PLATFORMS)
683+ # ...
684+ # endif()
685+ set (SWIFT_DARWIN_PLATFORMS "IOS" "IOS_SIMULATOR" "TVOS" "TVOS_SIMULATOR" "WATCHOS" "WATCHOS_SIMULATOR" "OSX" )
686+
687+ set (SWIFT_APPLE_PLATFORMS ${SWIFT_DARWIN_PLATFORMS} )
688+ if (SWIFT_FREESTANDING_FLAVOR STREQUAL "apple" )
689+ list (APPEND SWIFT_APPLE_PLATFORMS "FREESTANDING" )
690+ if (SWIFT_FREESTANDING_IS_DARWIN)
691+ list (APPEND SWIFT_DARWIN_PLATFORMS "FREESTANDING" )
692+ endif ()
693+ endif ()
694+
773695# Configuration flags passed to all of our invocations of gyb. Try to
774696# avoid making up new variable names here if you can find a CMake
775697# variable that will do the job.
@@ -786,6 +708,74 @@ if(XCODE)
786708 swift_common_xcode_cxx_config()
787709endif ()
788710
711+ # If SWIFT_HOST_VARIANT_SDK not given, try to detect from the CMAKE_SYSTEM_NAME.
712+ if (SWIFT_HOST_VARIANT_SDK)
713+ set (SWIFT_HOST_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK} " )
714+ else ()
715+ if ("${CMAKE_SYSTEM_NAME} " STREQUAL "Linux" )
716+ set (SWIFT_HOST_VARIANT_SDK_default "LINUX" )
717+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "FreeBSD" )
718+ set (SWIFT_HOST_VARIANT_SDK_default "FREEBSD" )
719+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "OpenBSD" )
720+ set (SWIFT_HOST_VARIANT_SDK_default "OPENBSD" )
721+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "CYGWIN" )
722+ set (SWIFT_HOST_VARIANT_SDK_default "CYGWIN" )
723+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Windows" )
724+ set (SWIFT_HOST_VARIANT_SDK_default "WINDOWS" )
725+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Haiku" )
726+ set (SWIFT_HOST_VARIANT_SDK_default "HAIKU" )
727+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Android" )
728+ set (SWIFT_HOST_VARIANT_SDK_default "ANDROID" )
729+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Darwin" )
730+ set (SWIFT_HOST_VARIANT_SDK_default "OSX" )
731+ else ()
732+ message (FATAL_ERROR "Unable to detect SDK for host system: ${CMAKE_SYSTEM_NAME} " )
733+ endif ()
734+ endif ()
735+
736+ # If SWIFT_HOST_VARIANT_ARCH not given, try to detect from the CMAKE_SYSTEM_PROCESSOR.
737+ if (SWIFT_HOST_VARIANT_ARCH)
738+ set (SWIFT_HOST_VARIANT_ARCH_default "${SWIFT_HOST_VARIANT_ARCH} " )
739+ else ()
740+ if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64" )
741+ set (SWIFT_HOST_VARIANT_ARCH_default "x86_64" )
742+ elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|ARM64|arm64" )
743+ if (SWIFT_HOST_VARIANT_SDK_default STREQUAL OSX)
744+ set (SWIFT_HOST_VARIANT_ARCH_default "arm64" )
745+ else ()
746+ set (SWIFT_HOST_VARIANT_ARCH_default "aarch64" )
747+ endif ()
748+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc64" )
749+ set (SWIFT_HOST_VARIANT_ARCH_default "powerpc64" )
750+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc" )
751+ set (SWIFT_HOST_VARIANT_ARCH_default "powerpc" )
752+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "ppc64le" )
753+ set (SWIFT_HOST_VARIANT_ARCH_default "powerpc64le" )
754+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "s390x" )
755+ set (SWIFT_HOST_VARIANT_ARCH_default "s390x" )
756+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " MATCHES "armv5|armv5te" )
757+ set (SWIFT_HOST_VARIANT_ARCH_default "armv5" )
758+ # FIXME: Only matches v6l/v7l - by far the most common variants
759+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "armv6l" )
760+ set (SWIFT_HOST_VARIANT_ARCH_default "armv6" )
761+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " MATCHES "armv7l|armv7-a" )
762+ set (SWIFT_HOST_VARIANT_ARCH_default "armv7" )
763+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "IA64" )
764+ set (SWIFT_HOST_VARIANT_ARCH_default "itanium" )
765+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " MATCHES "(x86|i686)" )
766+ set (SWIFT_HOST_VARIANT_ARCH_default "i686" )
767+ elseif ("${CMAKE_SYSTEM_PROCESSOR} " STREQUAL "wasm32" )
768+ set (SWIFT_HOST_VARIANT_ARCH_default "wasm32" )
769+ else ()
770+ message (FATAL_ERROR "Unrecognized architecture on host system: ${CMAKE_SYSTEM_PROCESSOR} " )
771+ endif ()
772+ endif ()
773+
774+ set (SWIFT_HOST_VARIANT_SDK "${SWIFT_HOST_VARIANT_SDK_default} " CACHE STRING
775+ "Deployment sdk for Swift host tools (the compiler)." )
776+ set (SWIFT_HOST_VARIANT_ARCH "${SWIFT_HOST_VARIANT_ARCH_default} " CACHE STRING
777+ "Deployment arch for Swift host tools (the compiler)." )
778+
789779# Which default linker to use. Prefer LLVM_USE_LINKER if it set, otherwise use
790780# our own defaults. This should only be possible in a unified (not stand alone)
791781# build environment.
@@ -1047,12 +1037,11 @@ if(SWIFT_BUILD_STDLIB OR SWIFT_BUILD_SDK_OVERLAY)
10471037 message (STATUS " Leak Detection Checker Entrypoints: ${SWIFT_RUNTIME_ENABLE_LEAK_CHECKER} " )
10481038 message (STATUS "" )
10491039
1050- message (STATUS "Threading Package: ${SWIFT_THREADING_PACKAGE} " )
10511040 message (STATUS "Differentiable Programming Support: ${SWIFT_ENABLE_EXPERIMENTAL_DIFFERENTIABLE_PROGRAMMING} " )
1052- message (STATUS "Concurrency Support: ${SWIFT_ENABLE_EXPERIMENTAL_CONCURRENCY} " )
1053- message (STATUS "Distributed Support: ${SWIFT_ENABLE_EXPERIMENTAL_DISTRIBUTED} " )
1054- message (STATUS "String Processing Support: ${SWIFT_ENABLE_EXPERIMENTAL_STRING_PROCESSING} " )
1055- message (STATUS "Unicode Support: ${SWIFT_STDLIB_ENABLE_UNICODE_DATA} " )
1041+ message (STATUS "Concurrency Support: ${SWIFT_ENABLE_EXPERIMENTAL_CONCURRENCY} " )
1042+ message (STATUS "Distributed Support: ${SWIFT_ENABLE_EXPERIMENTAL_DISTRIBUTED} " )
1043+ message (STATUS "String Processing Support: ${SWIFT_ENABLE_EXPERIMENTAL_STRING_PROCESSING} " )
1044+ message (STATUS "Unicode Support: ${SWIFT_STDLIB_ENABLE_UNICODE_DATA} " )
10561045 message (STATUS "" )
10571046else ()
10581047 message (STATUS "Not building Swift standard library, SDK overlays, and runtime" )
0 commit comments