mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
build: fix accidental cmake expansions
As of CMake 3.25, there are now global variables `LINUX=1`, `ANDROID=1`,
etc. These conflict with expressions that used these names as unquoted
strings in positions where CMake accepts 'variable|string', for example:
- `if(sdk STREQUAL LINUX)` would fail, because `LINUX` is now defined and
expands to 1, where it would previously coerce to a string.
- `if(${sdk} STREQUAL "LINUX")` would fail if `sdk=LINUX`, because the
left-hand side expands twice.
In this patch, I looked for a number of patterns to fix up, sometimes a
little defensively:
- Quoted right-hand side of `STREQUAL` where I was confident it was
intended to be a string literal.
- Removed manual variable expansion on left-hand side of `STREQUAL`,
`MATCHES` and `IN_LIST` where I was confident it was unintended.
Fixes #65028.
This commit is contained in:
@@ -50,7 +50,7 @@ enable_language(CXX)
|
||||
set(SWIFT_ASM_DIALECT ASM)
|
||||
set(SWIFT_ASM_EXT S)
|
||||
set(SWIFT_ASM_AVAILABLE YES)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64")
|
||||
if(CMAKE_VERSION VERSION_LESS "3.26")
|
||||
message(warning "We can't build assembly language for ARM64 until CMake 3.26")
|
||||
@@ -158,7 +158,7 @@ else()
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64|amd64")
|
||||
set(SWIFT_HOST_VARIANT_ARCH_default "x86_64")
|
||||
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|ARM64|arm64")
|
||||
if(SWIFT_HOST_VARIANT_SDK_default STREQUAL OSX)
|
||||
if(SWIFT_HOST_VARIANT_SDK_default STREQUAL "OSX")
|
||||
set(SWIFT_HOST_VARIANT_ARCH_default "arm64")
|
||||
else()
|
||||
set(SWIFT_HOST_VARIANT_ARCH_default "aarch64")
|
||||
@@ -380,7 +380,7 @@ set(SWIFT_STDLIB_BUILD_TYPE "${CMAKE_BUILD_TYPE}" CACHE STRING
|
||||
# - MultiThreadedDebug (/MTd)
|
||||
# - MultiThreadedDLL (/MD)
|
||||
# - MultiThreadedDebugDLL (/MDd)
|
||||
if(CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set(SWIFT_STDLIB_MSVC_RUNTIME_LIBRARY_default MultiThreadedDebugDLL)
|
||||
else()
|
||||
set(SWIFT_STDLIB_MSVC_RUNTIME_LIBRARY_default MultiThreadedDLL)
|
||||
@@ -675,7 +675,7 @@ if(SWIFT_BUILT_STANDALONE)
|
||||
project(Swift C CXX ${SWIFT_ASM_DIALECT})
|
||||
endif()
|
||||
|
||||
if(MSVC OR "${CMAKE_SIMULATE_ID}" STREQUAL MSVC)
|
||||
if(MSVC OR "${CMAKE_SIMULATE_ID}" STREQUAL "MSVC")
|
||||
include(ClangClCompileRules)
|
||||
elseif(UNIX)
|
||||
include(UnixCompileRules)
|
||||
@@ -697,7 +697,7 @@ if(NOT EXISTS "${SWIFT_PATH_TO_SWIFT_SYNTAX_SOURCE}")
|
||||
endif()
|
||||
|
||||
set(SWIFT_BUILD_HOST_DISPATCH FALSE)
|
||||
if(SWIFT_ENABLE_DISPATCH AND NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(SWIFT_ENABLE_DISPATCH AND NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
# Only build libdispatch for the host if the host tools are being built and
|
||||
# specifically if these two libraries that depend on it are built.
|
||||
if(SWIFT_INCLUDE_TOOLS AND SWIFT_BUILD_SOURCEKIT)
|
||||
@@ -883,11 +883,11 @@ endif()
|
||||
# build environment.
|
||||
if(LLVM_USE_LINKER)
|
||||
set(SWIFT_USE_LINKER_default "${LLVM_USE_LINKER}")
|
||||
elseif(${SWIFT_HOST_VARIANT_SDK} STREQUAL ANDROID)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
set(SWIFT_USE_LINKER_default "lld")
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL Windows AND NOT CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows" AND NOT CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(SWIFT_USE_LINKER_default "lld")
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
set(SWIFT_USE_LINKER_default "")
|
||||
else()
|
||||
set(SWIFT_USE_LINKER_default "gold")
|
||||
|
||||
@@ -81,7 +81,7 @@ function(add_swift_compiler_modules_library name)
|
||||
list(APPEND swift_compile_options "-Xfrontend" "-disable-implicit-string-processing-module-import")
|
||||
endif()
|
||||
|
||||
if(CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
list(APPEND swift_compile_options "-g")
|
||||
else()
|
||||
list(APPEND swift_compile_options "-O" "-cross-module-optimization")
|
||||
@@ -103,7 +103,7 @@ function(add_swift_compiler_modules_library name)
|
||||
set(deployment_version "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
|
||||
set(sdk_path "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_PATH}")
|
||||
set(sdk_option "-sdk" "${sdk_path}")
|
||||
if(${BOOTSTRAPPING_MODE} STREQUAL "CROSSCOMPILE-WITH-HOSTLIBS")
|
||||
if(BOOTSTRAPPING_MODE STREQUAL "CROSSCOMPILE-WITH-HOSTLIBS")
|
||||
# Let the cross-compiled compile don't pick up the compiled stdlib by providing
|
||||
# an (almost) empty resource dir.
|
||||
# The compiler will instead pick up the stdlib from the SDK.
|
||||
@@ -122,7 +122,7 @@ function(add_swift_compiler_modules_library name)
|
||||
message(ERROR "libc++ not found in the toolchain.")
|
||||
endif()
|
||||
endif()
|
||||
elseif(${BOOTSTRAPPING_MODE} STREQUAL "CROSSCOMPILE")
|
||||
elseif(BOOTSTRAPPING_MODE STREQUAL "CROSSCOMPILE")
|
||||
set(sdk_option "-sdk" "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_PATH}")
|
||||
get_filename_component(swift_exec_bin_dir ${ALS_SWIFT_EXEC} DIRECTORY)
|
||||
set(sdk_option ${sdk_option} "-resource-dir" "${swift_exec_bin_dir}/../lib/swift")
|
||||
@@ -259,13 +259,13 @@ else()
|
||||
add_dependencies(importedHeaderDependencies swift-ast-generated-headers)
|
||||
target_include_directories(importedHeaderDependencies PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../include/swift")
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} MATCHES "HOSTTOOLS|CROSSCOMPILE")
|
||||
if(BOOTSTRAPPING_MODE MATCHES "HOSTTOOLS|CROSSCOMPILE")
|
||||
|
||||
if (NOT SWIFT_EXEC_FOR_SWIFT_MODULES)
|
||||
message(FATAL_ERROR "Need a swift toolchain building swift compiler sources")
|
||||
endif()
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} STREQUAL "HOSTTOOLS")
|
||||
if(BOOTSTRAPPING_MODE STREQUAL "HOSTTOOLS")
|
||||
if(NOT SWIFT_EXEC_FOR_SWIFT_MODULES STREQUAL CMAKE_Swift_COMPILER)
|
||||
message(FATAL_ERROR "The Swift compiler (${CMAKE_Swift_COMPILER}) differs from the Swift compiler in SWIFT_NATIVE_SWIFT_TOOLS_PATH (${SWIFT_NATIVE_SWIFT_TOOLS_PATH}/swiftc).")
|
||||
endif()
|
||||
@@ -281,11 +281,11 @@ else()
|
||||
add_swift_compiler_modules_library(swiftCompilerModules
|
||||
SWIFT_EXEC "${SWIFT_EXEC_FOR_SWIFT_MODULES}")
|
||||
|
||||
elseif(${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*")
|
||||
elseif(BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
|
||||
set(b0_deps swift-frontend-bootstrapping0 symlink-headers-bootstrapping0)
|
||||
set(b1_deps swift-frontend-bootstrapping1 symlink-headers-bootstrapping1)
|
||||
if(${BOOTSTRAPPING_MODE} STREQUAL "BOOTSTRAPPING")
|
||||
if(BOOTSTRAPPING_MODE STREQUAL "BOOTSTRAPPING")
|
||||
list(APPEND b0_deps swiftCore-bootstrapping0)
|
||||
list(APPEND b1_deps swiftCore-bootstrapping1)
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
@@ -296,7 +296,7 @@ else()
|
||||
list(APPEND b0_deps swiftDarwin-bootstrapping0)
|
||||
list(APPEND b1_deps swiftDarwin-bootstrapping1)
|
||||
endif()
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_LIBSTDCXX_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_LIBSTDCXX_PLATFORMS)
|
||||
list(APPEND b0_deps copy-libstdcxx-modulemap-bootstrapping0 copy-libstdcxx-header-bootstrapping0)
|
||||
list(APPEND b1_deps copy-libstdcxx-modulemap-bootstrapping1 copy-libstdcxx-header-bootstrapping1)
|
||||
endif()
|
||||
|
||||
@@ -21,7 +21,7 @@ macro(configure_build)
|
||||
# thus allowing the --host-cc build-script argument to work here.
|
||||
get_filename_component(c_compiler ${CMAKE_C_COMPILER} NAME)
|
||||
|
||||
if(${c_compiler} STREQUAL "clang")
|
||||
if(c_compiler STREQUAL "clang")
|
||||
set(CLANG_EXEC ${CMAKE_C_COMPILER})
|
||||
else()
|
||||
if(NOT SWIFT_DARWIN_XCRUN_TOOLCHAIN)
|
||||
@@ -713,7 +713,7 @@ function(swift_benchmark_compile)
|
||||
|
||||
if(NOT SWIFT_BENCHMARK_BUILT_STANDALONE)
|
||||
set(stdlib_dependencies "swift-frontend" "swiftCore-${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}")
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
list(APPEND stdlib_dependencies "swiftDarwin-${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}")
|
||||
endif()
|
||||
foreach(stdlib_dependency ${UNIVERSAL_LIBRARY_NAMES_${SWIFT_BENCHMARK_COMPILE_PLATFORM}})
|
||||
|
||||
@@ -53,7 +53,7 @@ function(_add_host_swift_compile_options name)
|
||||
set(DEPLOYMENT_VERSION "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
set(DEPLOYMENT_VERSION ${SWIFT_ANDROID_API_LEVEL})
|
||||
endif()
|
||||
|
||||
@@ -141,7 +141,7 @@ function(add_pure_swift_host_library name)
|
||||
set_property(TARGET ${name}
|
||||
PROPERTY BUILD_WITH_INSTALL_RPATH YES)
|
||||
|
||||
if(APSHL_SHARED AND CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(APSHL_SHARED AND CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
# Allow install_name_tool to update paths (for rdar://109473564)
|
||||
set_property(TARGET ${name} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " -Xlinker -headerpad_max_install_names")
|
||||
@@ -267,7 +267,7 @@ function(add_pure_swift_host_tool name)
|
||||
add_executable(${name} ${APSHT_SOURCES})
|
||||
_add_host_swift_compile_options(${name})
|
||||
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
set_property(TARGET ${name}
|
||||
APPEND PROPERTY INSTALL_RPATH
|
||||
"@executable_path/../lib/swift/host")
|
||||
|
||||
@@ -68,16 +68,16 @@ function(_set_target_prefix_and_suffix target kind sdk)
|
||||
precondition(kind MESSAGE "kind is required")
|
||||
precondition(sdk MESSAGE "sdk is required")
|
||||
|
||||
if(${sdk} STREQUAL ANDROID)
|
||||
if(${kind} STREQUAL STATIC)
|
||||
if(sdk STREQUAL "ANDROID")
|
||||
if(kind STREQUAL "STATIC")
|
||||
set_target_properties(${target} PROPERTIES PREFIX "lib" SUFFIX ".a")
|
||||
elseif(${kind} STREQUAL SHARED)
|
||||
elseif(kind STREQUAL "SHARED")
|
||||
set_target_properties(${target} PROPERTIES PREFIX "lib" SUFFIX ".so")
|
||||
endif()
|
||||
elseif(${sdk} STREQUAL WINDOWS)
|
||||
if(${kind} STREQUAL STATIC)
|
||||
elseif(sdk STREQUAL "WINDOWS")
|
||||
if(kind STREQUAL "STATIC")
|
||||
set_target_properties(${target} PROPERTIES PREFIX "" SUFFIX ".lib")
|
||||
elseif(${kind} STREQUAL SHARED)
|
||||
elseif(kind STREQUAL "SHARED")
|
||||
set_target_properties(${target} PROPERTIES PREFIX "" SUFFIX ".dll")
|
||||
endif()
|
||||
endif()
|
||||
@@ -120,7 +120,7 @@ function(_add_host_variant_c_compile_link_flags name)
|
||||
set(DEPLOYMENT_VERSION "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
set(DEPLOYMENT_VERSION ${SWIFT_ANDROID_API_LEVEL})
|
||||
endif()
|
||||
|
||||
@@ -156,7 +156,7 @@ function(_add_host_variant_c_compile_link_flags name)
|
||||
target_compile_options(${name} PRIVATE $<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:--sysroot=${_sysroot}>)
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
# Make sure the Android NDK lld is used.
|
||||
swift_android_tools_path(${SWIFT_HOST_VARIANT_ARCH} tools_path)
|
||||
target_compile_options(${name} PRIVATE $<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-B${tools_path}>)
|
||||
@@ -228,7 +228,7 @@ function(_add_host_variant_c_compile_flags target)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
# MSVC/clang-cl don't support -fno-pic or -fms-compatibility-version.
|
||||
if(NOT SWIFT_COMPILER_IS_MSVC_LIKE)
|
||||
target_compile_options(${target} PRIVATE
|
||||
@@ -285,14 +285,14 @@ function(_add_host_variant_c_compile_flags target)
|
||||
# NOTE(compnerd) workaround LLVM invoking `add_definitions(-D_DEBUG)` which
|
||||
# causes failures for the runtime library when cross-compiling due to
|
||||
# undefined symbols from the standard library.
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
target_compile_options(${target} PRIVATE
|
||||
$<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-U_DEBUG>)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
|
||||
if(SWIFT_HOST_VARIANT_ARCH STREQUAL x86_64)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
if(SWIFT_HOST_VARIANT_ARCH STREQUAL "x86_64")
|
||||
# NOTE(compnerd) Android NDK 21 or lower will generate library calls to
|
||||
# `__sync_val_compare_and_swap_16` rather than lowering to the CPU's
|
||||
# `cmpxchg16b` instruction as the `cx16` feature is disabled due to a bug
|
||||
@@ -326,15 +326,15 @@ function(_add_host_variant_c_compile_flags target)
|
||||
$<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-fprofile-instr-generate -fcoverage-mapping>)
|
||||
endif()
|
||||
|
||||
if((SWIFT_HOST_VARIANT_ARCH STREQUAL armv7 OR
|
||||
SWIFT_HOST_VARIANT_ARCH STREQUAL aarch64) AND
|
||||
(SWIFT_HOST_VARIANT_SDK STREQUAL LINUX OR
|
||||
SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID))
|
||||
if((SWIFT_HOST_VARIANT_ARCH STREQUAL "armv7" OR
|
||||
SWIFT_HOST_VARIANT_ARCH STREQUAL "aarch64") AND
|
||||
(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX" OR
|
||||
SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID"))
|
||||
target_compile_options(${target} PRIVATE $<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-funwind-tables>)
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX")
|
||||
if(SWIFT_HOST_VARIANT_ARCH STREQUAL x86_64)
|
||||
if(SWIFT_HOST_VARIANT_ARCH STREQUAL "x86_64")
|
||||
# this is the minimum architecture that supports 16 byte CAS, which is
|
||||
# necessary to avoid a dependency to libatomic
|
||||
target_compile_options(${target} PRIVATE $<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-march=core2>)
|
||||
@@ -345,7 +345,7 @@ function(_add_host_variant_c_compile_flags target)
|
||||
# llvm/llvm-project@66395c9, which can cause incompatibilities with the Swift
|
||||
# frontend if not built the same way.
|
||||
if("${SWIFT_HOST_VARIANT_ARCH}" MATCHES "armv6|armv7|i686" AND
|
||||
NOT (SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID AND SWIFT_ANDROID_API_LEVEL LESS 24))
|
||||
NOT (SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID" AND SWIFT_ANDROID_API_LEVEL LESS 24))
|
||||
target_compile_definitions(${target} PRIVATE
|
||||
$<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:_LARGEFILE_SOURCE _FILE_OFFSET_BITS=64>)
|
||||
endif()
|
||||
@@ -354,19 +354,19 @@ endfunction()
|
||||
function(_add_host_variant_link_flags target)
|
||||
_add_host_variant_c_compile_link_flags(${target})
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL LINUX)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX")
|
||||
target_link_libraries(${target} PRIVATE
|
||||
pthread
|
||||
dl)
|
||||
if("${SWIFT_HOST_VARIANT_ARCH}" MATCHES "armv5|armv6|armv7|i686")
|
||||
target_link_libraries(${target} PRIVATE atomic)
|
||||
endif()
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL FREEBSD)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "FREEBSD")
|
||||
target_link_libraries(${target} PRIVATE
|
||||
pthread)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL CYGWIN)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "CYGWIN")
|
||||
# No extra libraries required.
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
# We don't need to add -nostdlib using MSVC or clang-cl, as MSVC and
|
||||
# clang-cl rely on auto-linking entirely.
|
||||
if(NOT SWIFT_COMPILER_IS_MSVC_LIKE)
|
||||
@@ -384,12 +384,12 @@ function(_add_host_variant_link_flags target)
|
||||
# the Windows SDK on case sensitive file systems.
|
||||
target_link_directories(${target} PRIVATE
|
||||
${CMAKE_BINARY_DIR}/winsdk_lib_${SWIFT_HOST_VARIANT_ARCH}_symlinks)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL HAIKU)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "HAIKU")
|
||||
target_link_libraries(${target} PRIVATE
|
||||
bsd)
|
||||
target_link_options(${target} PRIVATE
|
||||
"SHELL:-Xlinker -Bsymbolic")
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
target_link_libraries(${target} PRIVATE
|
||||
dl
|
||||
log
|
||||
@@ -431,7 +431,7 @@ function(_add_host_variant_link_flags target)
|
||||
#
|
||||
# TODO: Evaluate/enable -f{function,data}-sections --gc-sections for bfd,
|
||||
# gold, and lld.
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL Debug AND CMAKE_SYSTEM_NAME MATCHES Darwin)
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug" AND CMAKE_SYSTEM_NAME MATCHES Darwin)
|
||||
if (NOT SWIFT_DISABLE_DEAD_STRIPPING)
|
||||
# See rdar://48283130: This gives 6MB+ size reductions for swift and
|
||||
# SourceKitService, and much larger size reductions for sil-opt etc.
|
||||
@@ -455,7 +455,7 @@ function(_add_swift_runtime_link_flags target relpath_to_lib_dir bootstrapping)
|
||||
# RPATH where Swift runtime can be found.
|
||||
set(swift_runtime_rpath)
|
||||
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
|
||||
set(sdk_dir "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_PATH}/usr/lib/swift")
|
||||
|
||||
@@ -538,7 +538,7 @@ function(_add_swift_runtime_link_flags target relpath_to_lib_dir bootstrapping)
|
||||
|
||||
elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD")
|
||||
set(swiftrt "swiftImageRegistrationObject${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_OBJECT_FORMAT}-${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}-${SWIFT_HOST_VARIANT_ARCH}")
|
||||
if(${ASRLF_BOOTSTRAPPING_MODE} MATCHES "HOSTTOOLS|CROSSCOMPILE")
|
||||
if(ASRLF_BOOTSTRAPPING_MODE MATCHES "HOSTTOOLS|CROSSCOMPILE")
|
||||
# At build time and run time, link against the swift libraries in the
|
||||
# installed host toolchain.
|
||||
get_filename_component(swift_bin_dir ${SWIFT_EXEC_FOR_SWIFT_MODULES} DIRECTORY)
|
||||
@@ -584,7 +584,7 @@ function(_add_swift_runtime_link_flags target relpath_to_lib_dir bootstrapping)
|
||||
# able to fall back to the SDK directory for libswiftCore et al.
|
||||
if (BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
if (NOT "${bootstrapping}" STREQUAL "1")
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
target_link_directories(${target} PRIVATE "${sdk_dir}")
|
||||
|
||||
# Include the abi stable system stdlib in our rpath.
|
||||
@@ -724,10 +724,10 @@ function(add_swift_host_library name)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
set_target_properties(${name} PROPERTIES
|
||||
INSTALL_NAME_DIR "@rpath")
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL LINUX)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "LINUX")
|
||||
set_target_properties(${name} PROPERTIES
|
||||
INSTALL_RPATH "$ORIGIN")
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL CYGWIN)
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "CYGWIN")
|
||||
set_target_properties(${name} PROPERTIES
|
||||
INSTALL_RPATH "$ORIGIN:/usr/lib/swift/cygwin")
|
||||
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
@@ -749,18 +749,18 @@ function(add_swift_host_library name)
|
||||
endif()
|
||||
|
||||
# Set compilation and link flags.
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
swift_windows_include_for_arch(${SWIFT_HOST_VARIANT_ARCH}
|
||||
${SWIFT_HOST_VARIANT_ARCH}_INCLUDE)
|
||||
target_include_directories(${name} SYSTEM PRIVATE
|
||||
${${SWIFT_HOST_VARIANT_ARCH}_INCLUDE})
|
||||
|
||||
if(libkind STREQUAL SHARED)
|
||||
if(libkind STREQUAL "SHARED")
|
||||
target_compile_definitions(${name} PRIVATE
|
||||
_WINDLL)
|
||||
endif()
|
||||
|
||||
if(NOT ${CMAKE_C_COMPILER_ID} STREQUAL MSVC)
|
||||
if(NOT CMAKE_C_COMPILER_ID STREQUAL "MSVC")
|
||||
swift_windows_get_sdk_vfs_overlay(ASHL_VFS_OVERLAY)
|
||||
# Both clang and clang-cl on Windows set CMAKE_C_SIMULATE_ID to MSVC.
|
||||
# We are using CMAKE_C_COMPILER_FRONTEND_VARIANT to detect the correct
|
||||
@@ -788,7 +788,7 @@ function(add_swift_host_library name)
|
||||
|
||||
set_target_properties(${name} PROPERTIES LINKER_LANGUAGE CXX)
|
||||
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
target_link_options(${name} PRIVATE
|
||||
"LINKER:-compatibility_version,1")
|
||||
if(SWIFT_COMPILER_VERSION)
|
||||
@@ -874,7 +874,7 @@ function(add_swift_host_tool executable)
|
||||
add_dependencies(${executable} ${LLVM_COMMON_DEPENDS})
|
||||
endif()
|
||||
|
||||
if(NOT ${ASHT_BOOTSTRAPPING} STREQUAL "")
|
||||
if(NOT "${ASHT_BOOTSTRAPPING}" STREQUAL "")
|
||||
# Strip the "-bootstrapping<n>" suffix from the target name to get the base
|
||||
# executable name.
|
||||
string(REGEX REPLACE "-bootstrapping.*" "" executable_filename ${executable})
|
||||
@@ -909,7 +909,7 @@ function(add_swift_host_tool executable)
|
||||
BINARY_DIR ${out_bin_dir}
|
||||
LIBRARY_DIR ${out_lib_dir})
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
swift_windows_include_for_arch(${SWIFT_HOST_VARIANT_ARCH}
|
||||
${SWIFT_HOST_VARIANT_ARCH}_INCLUDE)
|
||||
target_include_directories(${executable} SYSTEM PRIVATE
|
||||
@@ -931,13 +931,13 @@ function(add_swift_host_tool executable)
|
||||
|
||||
if(SWIFT_SWIFT_PARSER)
|
||||
set(extra_relative_rpath "")
|
||||
if(NOT ${ASHT_BOOTSTRAPPING} STREQUAL "")
|
||||
if (${executable} MATCHES "-bootstrapping")
|
||||
if(NOT "${ASHT_BOOTSTRAPPING}" STREQUAL "")
|
||||
if(executable MATCHES "-bootstrapping")
|
||||
set(extra_relative_rpath "../")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
set_property(
|
||||
TARGET ${executable}
|
||||
APPEND PROPERTY INSTALL_RPATH
|
||||
@@ -963,7 +963,7 @@ function(add_swift_host_tool executable)
|
||||
target_link_options(${executable} PRIVATE "${lto_codegen_only_link_options}")
|
||||
endif()
|
||||
|
||||
if(NOT ${ASHT_SWIFT_COMPONENT} STREQUAL "no_component")
|
||||
if(NOT ASHT_SWIFT_COMPONENT STREQUAL "no_component")
|
||||
add_dependencies(${ASHT_SWIFT_COMPONENT} ${executable})
|
||||
swift_install_in_component(TARGETS ${executable}
|
||||
RUNTIME
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
include(ExternalProject)
|
||||
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL Clang AND
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL "Clang" AND
|
||||
CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.8
|
||||
OR LLVM_USE_SANITIZER)
|
||||
set(SWIFT_LIBDISPATCH_C_COMPILER ${CMAKE_C_COMPILER})
|
||||
set(SWIFT_LIBDISPATCH_CXX_COMPILER ${CMAKE_CXX_COMPILER})
|
||||
elseif(${CMAKE_SYSTEM_NAME} STREQUAL ${CMAKE_HOST_SYSTEM_NAME})
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL CMAKE_HOST_SYSTEM_NAME)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
if(CMAKE_SYSTEM_PROCESSOR STREQUAL CMAKE_HOST_SYSTEM_PROCESSOR AND
|
||||
TARGET clang)
|
||||
set(SWIFT_LIBDISPATCH_C_COMPILER
|
||||
@@ -29,7 +29,7 @@ if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
message(SEND_ERROR "libdispatch requires a newer clang compiler (${CMAKE_C_COMPILER_VERSION} < 3.9)")
|
||||
endif()
|
||||
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
set(LIBDISPATCH_RUNTIME_DIR bin)
|
||||
else()
|
||||
set(LIBDISPATCH_RUNTIME_DIR lib)
|
||||
@@ -40,7 +40,7 @@ set(DISPATCH_SDKS)
|
||||
|
||||
# Build the host libdispatch if needed.
|
||||
if(SWIFT_BUILD_HOST_DISPATCH)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
if(NOT "${SWIFT_HOST_VARIANT_SDK}" IN_LIST SWIFT_SDKS)
|
||||
list(APPEND DISPATCH_SDKS "${SWIFT_HOST_VARIANT_SDK}")
|
||||
endif()
|
||||
@@ -52,20 +52,20 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
# Darwin targets have libdispatch available, do not build it.
|
||||
# Wasm/WASI doesn't support libdispatch yet.
|
||||
# See https://github.com/apple/swift/issues/54533 for more details.
|
||||
if(NOT "${sdk}" IN_LIST SWIFT_DARWIN_PLATFORMS AND NOT "${sdk}" STREQUAL WASI)
|
||||
if(NOT "${sdk}" IN_LIST SWIFT_DARWIN_PLATFORMS AND NOT "${sdk}" STREQUAL "WASI")
|
||||
list(APPEND DISPATCH_SDKS "${sdk}")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
foreach(sdk ${DISPATCH_SDKS})
|
||||
set(ARCHS ${SWIFT_SDK_${sdk}_ARCHITECTURES})
|
||||
if(${sdk} STREQUAL "${SWIFT_HOST_VARIANT_SDK}")
|
||||
if(sdk STREQUAL "${SWIFT_HOST_VARIANT_SDK}")
|
||||
if(NOT "${SWIFT_HOST_VARIANT_ARCH}" IN_LIST ARCHS)
|
||||
list(APPEND ARCHS "${SWIFT_HOST_VARIANT_ARCH}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(sdk STREQUAL ANDROID)
|
||||
if(sdk STREQUAL "ANDROID")
|
||||
set(SWIFT_LIBDISPATCH_COMPILER_CMAKE_ARGS)
|
||||
else()
|
||||
set(SWIFT_LIBDISPATCH_COMPILER_CMAKE_ARGS -DCMAKE_C_COMPILER=${SWIFT_LIBDISPATCH_C_COMPILER};-DCMAKE_CXX_COMPILER=${SWIFT_LIBDISPATCH_CXX_COMPILER})
|
||||
|
||||
@@ -82,7 +82,7 @@ list(REMOVE_ITEM _SWIFT_DEFAULT_COMPONENTS "clang-builtin-headers-in-clang-resou
|
||||
# This conflicts with LLVM itself when doing unified builds.
|
||||
list(REMOVE_ITEM _SWIFT_DEFAULT_COMPONENTS "llvm-toolchain-dev-tools")
|
||||
# The sourcekit install variants are currently mutually exclusive.
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
list(REMOVE_ITEM _SWIFT_DEFAULT_COMPONENTS "sourcekit-inproc")
|
||||
else()
|
||||
list(REMOVE_ITEM _SWIFT_DEFAULT_COMPONENTS "sourcekit-xpc-service")
|
||||
|
||||
@@ -232,7 +232,7 @@ macro(configure_sdk_darwin
|
||||
SWIFT_SDK_${prefix}_MODULE_ARCHITECTURES) # result
|
||||
|
||||
# Determine whether this is a simulator SDK.
|
||||
if ( ${xcrun_name} MATCHES "simulator" )
|
||||
if("${xcrun_name}" MATCHES "simulator")
|
||||
set(SWIFT_SDK_${prefix}_IS_SIMULATOR TRUE)
|
||||
else()
|
||||
set(SWIFT_SDK_${prefix}_IS_SIMULATOR FALSE)
|
||||
@@ -382,7 +382,7 @@ macro(configure_sdk_unix name architectures)
|
||||
message(FATAL_ERROR "unsupported arch for FreeBSD: ${arch}")
|
||||
endif()
|
||||
|
||||
if(NOT CMAKE_HOST_SYSTEM_NAME STREQUAL FreeBSD)
|
||||
if(NOT CMAKE_HOST_SYSTEM_NAME STREQUAL "FreeBSD")
|
||||
message(WARNING "CMAKE_SYSTEM_VERSION will not match target")
|
||||
endif()
|
||||
|
||||
@@ -391,7 +391,7 @@ macro(configure_sdk_unix name architectures)
|
||||
|
||||
set(SWIFT_SDK_FREEBSD_ARCH_${arch}_TRIPLE "${arch}-unknown-freebsd${freebsd_system_version}")
|
||||
elseif("${prefix}" STREQUAL "OPENBSD")
|
||||
if(NOT arch STREQUAL amd64)
|
||||
if(NOT arch STREQUAL "amd64")
|
||||
message(FATAL_ERROR "unsupported arch for OpenBSD: ${arch}")
|
||||
endif()
|
||||
|
||||
@@ -404,17 +404,17 @@ macro(configure_sdk_unix name architectures)
|
||||
set(SWIFT_SDK_OPENBSD_ARCH_${arch}_PATH "${CMAKE_SYSROOT}${SWIFT_SDK_OPENBSD_ARCH_${arch}_PATH}" CACHE INTERNAL "sysroot path" FORCE)
|
||||
endif()
|
||||
elseif("${prefix}" STREQUAL "CYGWIN")
|
||||
if(NOT arch STREQUAL x86_64)
|
||||
if(NOT arch STREQUAL "x86_64")
|
||||
message(FATAL_ERROR "unsupported arch for cygwin: ${arch}")
|
||||
endif()
|
||||
set(SWIFT_SDK_CYGWIN_ARCH_x86_64_TRIPLE "x86_64-unknown-windows-cygnus")
|
||||
elseif("${prefix}" STREQUAL "HAIKU")
|
||||
if(NOT arch STREQUAL x86_64)
|
||||
if(NOT arch STREQUAL "x86_64")
|
||||
message(FATAL_ERROR "unsupported arch for Haiku: ${arch}")
|
||||
endif()
|
||||
set(SWIFT_SDK_HAIKU_ARCH_x86_64_TRIPLE "x86_64-unknown-haiku")
|
||||
elseif("${prefix}" STREQUAL "WASI")
|
||||
if(NOT arch STREQUAL wasm32)
|
||||
if(NOT arch STREQUAL "wasm32")
|
||||
message(FATAL_ERROR "unsupported arch for WebAssembly: ${arch}")
|
||||
endif()
|
||||
set(SWIFT_SDK_WASI_ARCH_wasm32_PATH "${SWIFT_WASI_SYSROOT_PATH}")
|
||||
@@ -459,7 +459,7 @@ macro(configure_sdk_windows name environment architectures)
|
||||
get_threading_package(${prefix} "win32" SWIFT_SDK_${prefix}_THREADING_PACKAGE)
|
||||
|
||||
foreach(arch ${architectures})
|
||||
if(arch STREQUAL armv7)
|
||||
if(arch STREQUAL "armv7")
|
||||
set(SWIFT_SDK_${prefix}_ARCH_${arch}_TRIPLE
|
||||
"thumbv7-unknown-windows-${environment}")
|
||||
else()
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
include(SwiftUtils)
|
||||
|
||||
function(swift_windows_arch_spelling arch var)
|
||||
if(${arch} STREQUAL i686)
|
||||
if(arch STREQUAL "i686")
|
||||
set(${var} x86 PARENT_SCOPE)
|
||||
elseif(${arch} STREQUAL x86_64)
|
||||
elseif(arch STREQUAL "x86_64")
|
||||
set(${var} x64 PARENT_SCOPE)
|
||||
elseif(${arch} STREQUAL armv7)
|
||||
elseif(arch STREQUAL "armv7")
|
||||
set(${var} arm PARENT_SCOPE)
|
||||
elseif(${arch} STREQUAL aarch64)
|
||||
elseif(arch STREQUAL "aarch64")
|
||||
set(${var} arm64 PARENT_SCOPE)
|
||||
else()
|
||||
message(FATAL_ERROR "do not know MSVC spelling for ARCH: `${arch}`")
|
||||
@@ -33,7 +33,7 @@ function(swift_windows_lib_for_arch arch var)
|
||||
# a directory called "Lib" rather than VS2017 which normalizes the layout and
|
||||
# places them in a directory named "lib".
|
||||
if(IS_DIRECTORY "${VCToolsInstallDir}/Lib")
|
||||
if(${ARCH} STREQUAL x86)
|
||||
if(ARCH STREQUAL "x86")
|
||||
list(APPEND paths "${VCToolsInstallDir}/Lib/")
|
||||
else()
|
||||
list(APPEND paths "${VCToolsInstallDir}/Lib/${ARCH}")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(SWIFT_GYB_FLAGS --line-directive "^\"#line %(line)d \\\"%(file)s\\\"^\"")
|
||||
else()
|
||||
set(SWIFT_GYB_FLAGS --line-directive "\'#line" "%(line)d" "\"%(file)s\"\'")
|
||||
|
||||
@@ -128,7 +128,7 @@ add_swift_host_library(swiftAST STATIC
|
||||
)
|
||||
|
||||
if(SWIFT_FORCE_OPTIMIZED_TYPECHECKER)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL MSVC OR CMAKE_CXX_SIMULATE_ID STREQUAL MSVC)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" OR CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
|
||||
target_compile_options(swiftAST PRIVATE /O2 /Ob2)
|
||||
else()
|
||||
target_compile_options(swiftAST PRIVATE -O3)
|
||||
|
||||
@@ -23,7 +23,7 @@ set(outputs)
|
||||
foreach(input ${datafiles})
|
||||
set(source "${CMAKE_CURRENT_SOURCE_DIR}/${input}")
|
||||
set(dest "${output_dir}/${input}")
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(CMAKE_SYMLINK_COMMAND copy)
|
||||
else()
|
||||
set(CMAKE_SYMLINK_COMMAND create_symlink)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(SWIFT_GYB_FLAGS --line-directive "^\"#line %(line)d \\\"%(file)s\\\"^\"")
|
||||
else()
|
||||
set(SWIFT_GYB_FLAGS --line-directive "\'#line" "%(line)d" "\"%(file)s\"\'")
|
||||
|
||||
@@ -75,7 +75,7 @@ add_swift_host_library(swiftSema STATIC
|
||||
TypeChecker.cpp
|
||||
IDETypeCheckingRequests.cpp)
|
||||
if(SWIFT_FORCE_OPTIMIZED_TYPECHECKER)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL MSVC OR CMAKE_CXX_SIMULATE_ID STREQUAL MSVC)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" OR CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
|
||||
target_compile_options(swiftSema PRIVATE /O2 /Ob2)
|
||||
else()
|
||||
target_compile_options(swiftSema PRIVATE -O3)
|
||||
|
||||
@@ -3,6 +3,6 @@ add_swift_host_library(swiftRemoteMirror STATIC
|
||||
target_link_libraries(swiftRemoteMirror PRIVATE
|
||||
swiftDemangling)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
target_compile_definitions(swiftRemoteMirror PRIVATE _LIB)
|
||||
endif()
|
||||
|
||||
@@ -278,7 +278,7 @@ function(_add_target_variant_c_compile_flags)
|
||||
# NOTE(compnerd) workaround LLVM invoking `add_definitions(-D_DEBUG)` which
|
||||
# causes failures for the runtime library when cross-compiling due to
|
||||
# undefined symbols from the standard library.
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
list(APPEND result "-U_DEBUG")
|
||||
endif()
|
||||
endif()
|
||||
@@ -287,7 +287,7 @@ function(_add_target_variant_c_compile_flags)
|
||||
# uses a spin lock for this, so to get reasonable behavior we have to
|
||||
# implement it ourselves using _InterlockedCompareExchange128.
|
||||
# clang-cl requires us to enable the `cx16` feature to use this intrinsic.
|
||||
if(CFLAGS_ARCH STREQUAL x86_64)
|
||||
if(CFLAGS_ARCH STREQUAL "x86_64")
|
||||
if(SWIFT_COMPILER_IS_MSVC_LIKE)
|
||||
list(APPEND result /clang:-mcx16)
|
||||
else()
|
||||
@@ -316,7 +316,7 @@ function(_add_target_variant_c_compile_flags)
|
||||
endif()
|
||||
|
||||
if("${CFLAGS_SDK}" STREQUAL "LINUX")
|
||||
if(${CFLAGS_ARCH} STREQUAL x86_64)
|
||||
if("${CFLAGS_ARCH}" STREQUAL "x86_64")
|
||||
# this is the minimum architecture that supports 16 byte CAS, which is necessary to avoid a dependency to libatomic
|
||||
list(APPEND result "-march=core2")
|
||||
endif()
|
||||
@@ -540,7 +540,7 @@ function(_add_target_variant_link_flags)
|
||||
else()
|
||||
set(linker "${SWIFT_USE_LINKER}")
|
||||
endif()
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
list(APPEND result "-fuse-ld=${linker}.exe")
|
||||
else()
|
||||
list(APPEND result "-fuse-ld=${linker}")
|
||||
@@ -553,8 +553,8 @@ function(_add_target_variant_link_flags)
|
||||
#
|
||||
# TODO: Evaluate/enable -f{function,data}-sections --gc-sections for bfd,
|
||||
# gold, and lld.
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
# See rdar://48283130: This gives 6MB+ size reductions for swift and
|
||||
# SourceKitService, and much larger size reductions for sil-opt etc.
|
||||
list(APPEND result "-Wl,-dead_strip")
|
||||
@@ -1018,7 +1018,7 @@ function(add_swift_target_library_single target name)
|
||||
endif()
|
||||
|
||||
set(INCORPORATED_OBJECT_LIBRARIES_EXPRESSIONS ${SWIFTLIB_INCORPORATED_OBJECT_LIBRARIES_EXPRESSIONS})
|
||||
if(${libkind} STREQUAL "SHARED")
|
||||
if(libkind STREQUAL "SHARED")
|
||||
list(APPEND INCORPORATED_OBJECT_LIBRARIES_EXPRESSIONS
|
||||
${SWIFTLIB_INCORPORATED_OBJECT_LIBRARIES_EXPRESSIONS_SHARED_ONLY})
|
||||
endif()
|
||||
@@ -1040,7 +1040,7 @@ function(add_swift_target_library_single target name)
|
||||
# target_sources(${target}
|
||||
# PRIVATE
|
||||
# $<TARGET_OBJECTS:swiftImageRegistrationObject${SWIFT_SDK_${SWIFTLIB_SINGLE_SDK}_OBJECT_FORMAT}-${SWIFT_SDK_${SWIFTLIB_SINGLE_SDK}_LIB_SUBDIR}-${SWIFTLIB_SINGLE_ARCHITECTURE}>)
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL WINDOWS)
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL "WINDOWS")
|
||||
set(extension .obj)
|
||||
else()
|
||||
set(extension .o)
|
||||
@@ -1108,8 +1108,8 @@ function(add_swift_target_library_single target name)
|
||||
set_target_properties("${target}" PROPERTIES
|
||||
LIBRARY_OUTPUT_DIRECTORY ${swiftlib_prefix}/${output_sub_dir}
|
||||
ARCHIVE_OUTPUT_DIRECTORY ${swiftlib_prefix}/${output_sub_dir})
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL WINDOWS AND SWIFTLIB_SINGLE_IS_STDLIB_CORE
|
||||
AND libkind STREQUAL SHARED)
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL "WINDOWS" AND SWIFTLIB_SINGLE_IS_STDLIB_CORE
|
||||
AND libkind STREQUAL "SHARED")
|
||||
add_custom_command(TARGET ${target} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_FILE:${target}> ${swiftlib_prefix}/${output_sub_dir})
|
||||
endif()
|
||||
@@ -1313,8 +1313,8 @@ function(add_swift_target_library_single target name)
|
||||
MACCATALYST_BUILD_FLAVOR "${SWIFTLIB_SINGLE_MACCATALYST_BUILD_FLAVOR}"
|
||||
)
|
||||
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL WINDOWS)
|
||||
if(libkind STREQUAL SHARED)
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL "WINDOWS")
|
||||
if(libkind STREQUAL "SHARED")
|
||||
list(APPEND c_compile_flags -D_WINDLL)
|
||||
endif()
|
||||
endif()
|
||||
@@ -1373,13 +1373,13 @@ function(add_swift_target_library_single target name)
|
||||
endif()
|
||||
|
||||
# Set compilation and link flags.
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL WINDOWS)
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL "WINDOWS")
|
||||
swift_windows_include_for_arch(${SWIFTLIB_SINGLE_ARCHITECTURE}
|
||||
${SWIFTLIB_SINGLE_ARCHITECTURE}_INCLUDE)
|
||||
target_include_directories(${target} SYSTEM PRIVATE
|
||||
${${SWIFTLIB_SINGLE_ARCHITECTURE}_INCLUDE})
|
||||
|
||||
if(NOT ${CMAKE_C_COMPILER_ID} STREQUAL MSVC)
|
||||
if(NOT CMAKE_C_COMPILER_ID STREQUAL "MSVC")
|
||||
swift_windows_get_sdk_vfs_overlay(SWIFTLIB_SINGLE_VFS_OVERLAY)
|
||||
target_compile_options(${target} PRIVATE
|
||||
"SHELL:-Xclang -ivfsoverlay -Xclang ${SWIFTLIB_SINGLE_VFS_OVERLAY}")
|
||||
@@ -1396,7 +1396,7 @@ function(add_swift_target_library_single target name)
|
||||
${c_compile_flags})
|
||||
target_link_options(${target} PRIVATE
|
||||
${link_flags})
|
||||
if(${SWIFTLIB_SINGLE_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFTLIB_SINGLE_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
target_link_options(${target} PRIVATE
|
||||
"LINKER:-compatibility_version,1")
|
||||
if(SWIFT_COMPILER_VERSION)
|
||||
@@ -1429,7 +1429,7 @@ function(add_swift_target_library_single target name)
|
||||
list(APPEND swiftlib_link_flags_all "-Xlinker -no_warn_inits")
|
||||
endif()
|
||||
|
||||
if(${SWIFTLIB_SINGLE_SDK} IN_LIST SWIFT_APPLE_PLATFORMS)
|
||||
if(SWIFTLIB_SINGLE_SDK IN_LIST SWIFT_APPLE_PLATFORMS)
|
||||
# In the past, we relied on unsetting globally
|
||||
# CMAKE_OSX_ARCHITECTURES to ensure that CMake
|
||||
# would not add the -arch flag. This is no longer
|
||||
@@ -1452,7 +1452,7 @@ function(add_swift_target_library_single target name)
|
||||
# doing so will result in incorrect symbol resolution and linkage. We created
|
||||
# import library targets when the library was added. Use that to adjust the
|
||||
# link libraries.
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL WINDOWS AND NOT CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(SWIFTLIB_SINGLE_SDK STREQUAL "WINDOWS" AND NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
foreach(library_list LINK_LIBRARIES PRIVATE_LINK_LIBRARIES)
|
||||
set(import_libraries)
|
||||
foreach(library ${SWIFTLIB_SINGLE_${library_list}})
|
||||
@@ -1464,7 +1464,7 @@ function(add_swift_target_library_single target name)
|
||||
set(import_library ${library})
|
||||
if(TARGET ${library})
|
||||
get_target_property(type ${library} TYPE)
|
||||
if(${type} STREQUAL "SHARED_LIBRARY")
|
||||
if(type STREQUAL "SHARED_LIBRARY")
|
||||
set(import_library ${library}_IMPLIB)
|
||||
endif()
|
||||
endif()
|
||||
@@ -1794,7 +1794,7 @@ function(add_swift_target_library name)
|
||||
list(APPEND SWIFTLIB_SWIFT_MODULE_DEPENDS Core)
|
||||
|
||||
# swiftSwiftOnoneSupport does not depend on itself, obviously.
|
||||
if(NOT ${name} STREQUAL swiftSwiftOnoneSupport)
|
||||
if(NOT name STREQUAL "swiftSwiftOnoneSupport")
|
||||
# All Swift code depends on the SwiftOnoneSupport in non-optimized mode,
|
||||
# except for the standard library itself.
|
||||
is_build_type_optimized("${SWIFT_STDLIB_BUILD_TYPE}" optimized)
|
||||
@@ -1897,7 +1897,7 @@ function(add_swift_target_library name)
|
||||
|
||||
# Collect architecture agnostic SDK module dependencies
|
||||
set(swiftlib_module_depends_flattened ${SWIFTLIB_SWIFT_MODULE_DEPENDS})
|
||||
if(${sdk} STREQUAL OSX)
|
||||
if(sdk STREQUAL "OSX")
|
||||
if(DEFINED maccatalyst_build_flavor AND NOT maccatalyst_build_flavor STREQUAL "macos-like")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_MACCATALYST})
|
||||
@@ -1909,70 +1909,70 @@ function(add_swift_target_library name)
|
||||
endif()
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_OSX})
|
||||
elseif(${sdk} STREQUAL IOS OR ${sdk} STREQUAL IOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "IOS" OR sdk STREQUAL "IOS_SIMULATOR")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_IOS})
|
||||
elseif(${sdk} STREQUAL TVOS OR ${sdk} STREQUAL TVOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "TVOS" OR sdk STREQUAL "TVOS_SIMULATOR")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_TVOS})
|
||||
elseif(${sdk} STREQUAL WATCHOS OR ${sdk} STREQUAL WATCHOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "WATCHOS" OR sdk STREQUAL "WATCHOS_SIMULATOR")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_WATCHOS})
|
||||
elseif(${sdk} STREQUAL FREESTANDING)
|
||||
elseif(sdk STREQUAL "FREESTANDING")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_FREESTANDING})
|
||||
elseif(${sdk} STREQUAL FREEBSD)
|
||||
elseif(sdk STREQUAL "FREEBSD")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_FREEBSD})
|
||||
elseif(${sdk} STREQUAL OPENBSD)
|
||||
elseif(sdk STREQUAL "OPENBSD")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_OPENBSD})
|
||||
elseif(${sdk} STREQUAL LINUX OR ${sdk} STREQUAL ANDROID)
|
||||
elseif(sdk STREQUAL "LINUX" OR sdk STREQUAL "ANDROID")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_LINUX})
|
||||
elseif(${sdk} STREQUAL CYGWIN)
|
||||
elseif(sdk STREQUAL "CYGWIN")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_CYGWIN})
|
||||
elseif(${sdk} STREQUAL HAIKU)
|
||||
elseif(sdk STREQUAL "HAIKU")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_HAIKU})
|
||||
elseif(${sdk} STREQUAL WASI)
|
||||
elseif(sdk STREQUAL "WASI")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_WASI})
|
||||
elseif(${sdk} STREQUAL WINDOWS)
|
||||
elseif(sdk STREQUAL "WINDOWS")
|
||||
list(APPEND swiftlib_module_depends_flattened
|
||||
${SWIFTLIB_SWIFT_MODULE_DEPENDS_WINDOWS})
|
||||
endif()
|
||||
|
||||
# Collect architecture agnostic SDK framework dependencies
|
||||
set(swiftlib_framework_depends_flattened ${SWIFTLIB_FRAMEWORK_DEPENDS})
|
||||
if(${sdk} STREQUAL OSX)
|
||||
if(sdk STREQUAL "OSX")
|
||||
list(APPEND swiftlib_framework_depends_flattened
|
||||
${SWIFTLIB_FRAMEWORK_DEPENDS_OSX})
|
||||
elseif(${sdk} STREQUAL IOS OR ${sdk} STREQUAL IOS_SIMULATOR OR
|
||||
${sdk} STREQUAL TVOS OR ${sdk} STREQUAL TVOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "IOS" OR sdk STREQUAL "IOS_SIMULATOR" OR
|
||||
sdk STREQUAL "TVOS" OR sdk STREQUAL "TVOS_SIMULATOR")
|
||||
list(APPEND swiftlib_framework_depends_flattened
|
||||
${SWIFTLIB_FRAMEWORK_DEPENDS_IOS_TVOS})
|
||||
endif()
|
||||
|
||||
# Collect architecture agnostic swift compiler flags
|
||||
set(swiftlib_swift_compile_flags_all ${SWIFTLIB_SWIFT_COMPILE_FLAGS})
|
||||
if(${sdk} STREQUAL OSX)
|
||||
if(sdk STREQUAL "OSX")
|
||||
list(APPEND swiftlib_swift_compile_flags_all
|
||||
${SWIFTLIB_SWIFT_COMPILE_FLAGS_OSX})
|
||||
elseif(${sdk} STREQUAL IOS OR ${sdk} STREQUAL IOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "IOS" OR sdk STREQUAL "IOS_SIMULATOR")
|
||||
list(APPEND swiftlib_swift_compile_flags_all
|
||||
${SWIFTLIB_SWIFT_COMPILE_FLAGS_IOS})
|
||||
elseif(${sdk} STREQUAL TVOS OR ${sdk} STREQUAL TVOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "TVOS" OR sdk STREQUAL "TVOS_SIMULATOR")
|
||||
list(APPEND swiftlib_swift_compile_flags_all
|
||||
${SWIFTLIB_SWIFT_COMPILE_FLAGS_TVOS})
|
||||
elseif(${sdk} STREQUAL WATCHOS OR ${sdk} STREQUAL WATCHOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "WATCHOS" OR sdk STREQUAL "WATCHOS_SIMULATOR")
|
||||
list(APPEND swiftlib_swift_compile_flags_all
|
||||
${SWIFTLIB_SWIFT_COMPILE_FLAGS_WATCHOS})
|
||||
elseif(${sdk} STREQUAL LINUX)
|
||||
elseif(sdk STREQUAL "LINUX")
|
||||
list(APPEND swiftlib_swift_compile_flags_all
|
||||
${SWIFTLIB_SWIFT_COMPILE_FLAGS_LINUX})
|
||||
elseif(${sdk} STREQUAL WINDOWS)
|
||||
elseif(sdk STREQUAL "WINDOWS")
|
||||
# FIXME: https://github.com/apple/swift/issues/44614
|
||||
# static and shared are not mutually exclusive; however since we do a
|
||||
# single build of the sources, this doesn't work for building both
|
||||
@@ -1991,7 +1991,7 @@ function(add_swift_target_library name)
|
||||
|
||||
# Collect architecture agnostic SDK linker flags
|
||||
set(swiftlib_link_flags_all ${SWIFTLIB_LINK_FLAGS})
|
||||
if(${sdk} STREQUAL IOS_SIMULATOR AND ${name} STREQUAL swiftMediaPlayer)
|
||||
if(sdk STREQUAL "IOS_SIMULATOR" AND name STREQUAL "swiftMediaPlayer")
|
||||
# message("DISABLING AUTOLINK FOR swiftMediaPlayer")
|
||||
list(APPEND swiftlib_link_flags_all "-Xlinker" "-ignore_auto_link")
|
||||
endif()
|
||||
@@ -2005,8 +2005,8 @@ function(add_swift_target_library name)
|
||||
# back to supported targets and libraries only. This is needed for ELF
|
||||
# targets only; however, RemoteMirror needs to build with undefined
|
||||
# symbols.
|
||||
if(${SWIFT_SDK_${sdk}_OBJECT_FORMAT} STREQUAL ELF AND
|
||||
NOT ${name} STREQUAL swiftRemoteMirror)
|
||||
if(SWIFT_SDK_${sdk}_OBJECT_FORMAT STREQUAL "ELF" AND
|
||||
NOT name STREQUAL "swiftRemoteMirror")
|
||||
list(APPEND swiftlib_link_flags_all "-Wl,-z,defs")
|
||||
endif()
|
||||
# Setting back linker flags which are not supported when making Android build on macOS cross-compile host.
|
||||
@@ -2113,22 +2113,22 @@ function(add_swift_target_library name)
|
||||
set(swiftlib_link_flags_all ${SWIFTLIB_LINK_FLAGS})
|
||||
|
||||
# Collect architecture agnostic c compiler flags
|
||||
if(${sdk} STREQUAL OSX)
|
||||
if(sdk STREQUAL "OSX")
|
||||
list(APPEND swiftlib_c_compile_flags_all
|
||||
${SWIFTLIB_C_COMPILE_FLAGS_OSX})
|
||||
elseif(${sdk} STREQUAL IOS OR ${sdk} STREQUAL IOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "IOS" OR sdk STREQUAL "IOS_SIMULATOR")
|
||||
list(APPEND swiftlib_c_compile_flags_all
|
||||
${SWIFTLIB_C_COMPILE_FLAGS_IOS})
|
||||
elseif(${sdk} STREQUAL TVOS OR ${sdk} STREQUAL TVOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "TVOS" OR sdk STREQUAL "TVOS_SIMULATOR")
|
||||
list(APPEND swiftlib_c_compile_flags_all
|
||||
${SWIFTLIB_C_COMPILE_FLAGS_TVOS})
|
||||
elseif(${sdk} STREQUAL WATCHOS OR ${sdk} STREQUAL WATCHOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "WATCHOS" OR sdk STREQUAL "WATCHOS_SIMULATOR")
|
||||
list(APPEND swiftlib_c_compile_flags_all
|
||||
${SWIFTLIB_C_COMPILE_FLAGS_WATCHOS})
|
||||
elseif(${sdk} STREQUAL LINUX)
|
||||
elseif(sdk STREQUAL "LINUX")
|
||||
list(APPEND swiftlib_c_compile_flags_all
|
||||
${SWIFTLIB_C_COMPILE_FLAGS_LINUX})
|
||||
elseif(${sdk} STREQUAL WINDOWS)
|
||||
elseif(sdk STREQUAL "WINDOWS")
|
||||
list(APPEND swiftlib_c_compile_flags_all
|
||||
${SWIFTLIB_C_COMPILE_FLAGS_WINDOWS})
|
||||
endif()
|
||||
@@ -2170,7 +2170,7 @@ function(add_swift_target_library name)
|
||||
endif()
|
||||
|
||||
# Setting back linker flags which are not supported when making Android build on macOS cross-compile host.
|
||||
if(SWIFTLIB_SHARED AND ${sdk} STREQUAL ANDROID)
|
||||
if(SWIFTLIB_SHARED AND sdk STREQUAL "ANDROID")
|
||||
list(APPEND swiftlib_link_flags_all "-shared")
|
||||
# TODO: Instead of `lib${name}.so` find variable or target property which already have this value.
|
||||
list(APPEND swiftlib_link_flags_all "-Wl,-soname,lib${name}.so")
|
||||
@@ -2227,7 +2227,7 @@ function(add_swift_target_library name)
|
||||
add_dependencies(${VARIANT_NAME} clang)
|
||||
endif()
|
||||
|
||||
if(sdk STREQUAL WINDOWS)
|
||||
if(sdk STREQUAL "WINDOWS")
|
||||
if(SWIFT_COMPILER_IS_MSVC_LIKE)
|
||||
if (SWIFT_STDLIB_MSVC_RUNTIME_LIBRARY MATCHES MultiThreadedDebugDLL)
|
||||
target_compile_options(${VARIANT_NAME} PRIVATE /MDd /D_DLL /D_DEBUG)
|
||||
@@ -2372,7 +2372,7 @@ function(add_swift_target_library name)
|
||||
set(optional_arg "OPTIONAL")
|
||||
endif()
|
||||
|
||||
if(sdk STREQUAL WINDOWS AND CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(sdk STREQUAL "WINDOWS" AND CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
add_dependencies(${SWIFTLIB_INSTALL_IN_COMPONENT} ${name}-windows-${SWIFT_PRIMARY_VARIANT_ARCH})
|
||||
swift_install_in_component(TARGETS ${name}-windows-${SWIFT_PRIMARY_VARIANT_ARCH}
|
||||
RUNTIME
|
||||
@@ -2403,7 +2403,7 @@ function(add_swift_target_library name)
|
||||
PERMISSIONS ${file_permissions}
|
||||
"${optional_arg}")
|
||||
endif()
|
||||
if(sdk STREQUAL WINDOWS)
|
||||
if(sdk STREQUAL "WINDOWS")
|
||||
foreach(arch ${SWIFT_SDK_WINDOWS_ARCHITECTURES})
|
||||
if(TARGET ${name}-windows-${arch}_IMPLIB)
|
||||
get_target_property(import_library ${name}-windows-${arch}_IMPLIB IMPORTED_LOCATION)
|
||||
@@ -2582,7 +2582,7 @@ function(_add_swift_target_executable_single name)
|
||||
|
||||
string(MAKE_C_IDENTIFIER "${name}" module_name)
|
||||
|
||||
if(SWIFTEXE_SINGLE_SDK STREQUAL WINDOWS)
|
||||
if(SWIFTEXE_SINGLE_SDK STREQUAL "WINDOWS")
|
||||
list(APPEND SWIFTEXE_SINGLE_COMPILE_FLAGS
|
||||
-vfsoverlay;"${SWIFT_WINDOWS_VFS_OVERLAY}")
|
||||
endif()
|
||||
@@ -2617,12 +2617,12 @@ function(_add_swift_target_executable_single name)
|
||||
${SWIFTEXE_SINGLE_DEPENDS})
|
||||
llvm_update_compile_flags("${name}")
|
||||
|
||||
if(SWIFTEXE_SINGLE_SDK STREQUAL WINDOWS)
|
||||
if(SWIFTEXE_SINGLE_SDK STREQUAL "WINDOWS")
|
||||
swift_windows_include_for_arch(${SWIFTEXE_SINGLE_ARCHITECTURE}
|
||||
${SWIFTEXE_SINGLE_ARCHITECTURE}_INCLUDE)
|
||||
target_include_directories(${name} SYSTEM PRIVATE
|
||||
${${SWIFTEXE_SINGLE_ARCHITECTURE}_INCLUDE})
|
||||
if(NOT ${CMAKE_C_COMPILER_ID} STREQUAL MSVC)
|
||||
if(NOT CMAKE_C_COMPILER_ID STREQUAL "MSVC")
|
||||
# MSVC doesn't support -Xclang. We don't need to manually specify
|
||||
# the dependent libraries as `cl` does so.
|
||||
target_compile_options(${name} PRIVATE
|
||||
@@ -2643,7 +2643,7 @@ function(_add_swift_target_executable_single name)
|
||||
if (SWIFT_PARALLEL_LINK_JOBS)
|
||||
set_property(TARGET ${name} PROPERTY JOB_POOL_LINK swift_link_job_pool)
|
||||
endif()
|
||||
if(${SWIFTEXE_SINGLE_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFTEXE_SINGLE_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
set_target_properties(${name} PROPERTIES
|
||||
BUILD_WITH_INSTALL_RPATH YES
|
||||
INSTALL_RPATH "@executable_path/../lib/swift/${SWIFT_SDK_${SWIFTEXE_SINGLE_SDK}_LIB_SUBDIR};@executable_path/../../../lib/swift/${SWIFT_SDK_${SWIFTEXE_SINGLE_SDK}_LIB_SUBDIR}")
|
||||
@@ -2655,7 +2655,7 @@ function(_add_swift_target_executable_single name)
|
||||
# NOTE(compnerd) use the C linker language to invoke `clang` rather than
|
||||
# `clang++` as we explicitly link against the C++ runtime. We were previously
|
||||
# actually passing `-nostdlib++` to avoid the C++ runtime linkage.
|
||||
if(${SWIFTEXE_SINGLE_SDK} STREQUAL ANDROID)
|
||||
if(SWIFTEXE_SINGLE_SDK STREQUAL "ANDROID")
|
||||
set_property(TARGET "${name}" PROPERTY
|
||||
LINKER_LANGUAGE "C")
|
||||
else()
|
||||
@@ -2752,7 +2752,7 @@ function(add_swift_target_executable name)
|
||||
|
||||
# Collect architecture agnostic SDK module dependencies
|
||||
set(swiftexe_module_depends_flattened ${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS})
|
||||
if(${sdk} STREQUAL OSX)
|
||||
if(sdk STREQUAL "OSX")
|
||||
if(DEFINED maccatalyst_build_flavor AND NOT maccatalyst_build_flavor STREQUAL "macos-like")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_MACCATALYST})
|
||||
@@ -2764,37 +2764,37 @@ function(add_swift_target_executable name)
|
||||
endif()
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_OSX})
|
||||
elseif(${sdk} STREQUAL IOS OR ${sdk} STREQUAL IOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "IOS" OR sdk STREQUAL "IOS_SIMULATOR")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_IOS})
|
||||
elseif(${sdk} STREQUAL TVOS OR ${sdk} STREQUAL TVOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "TVOS" OR sdk STREQUAL "TVOS_SIMULATOR")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_TVOS})
|
||||
elseif(${sdk} STREQUAL WATCHOS OR ${sdk} STREQUAL WATCHOS_SIMULATOR)
|
||||
elseif(sdk STREQUAL "WATCHOS" OR sdk STREQUAL "WATCHOS_SIMULATOR")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_WATCHOS})
|
||||
elseif(${sdk} STREQUAL FREESTANDING)
|
||||
elseif(sdk STREQUAL "FREESTANDING")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_FREESTANDING})
|
||||
elseif(${sdk} STREQUAL FREEBSD)
|
||||
elseif(sdk STREQUAL "FREEBSD")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_FREEBSD})
|
||||
elseif(${sdk} STREQUAL OPENBSD)
|
||||
elseif(sdk STREQUAL "OPENBSD")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_OPENBSD})
|
||||
elseif(${sdk} STREQUAL LINUX OR ${sdk} STREQUAL ANDROID)
|
||||
elseif(sdk STREQUAL "LINUX" OR sdk STREQUAL "ANDROID")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_LINUX})
|
||||
elseif(${sdk} STREQUAL CYGWIN)
|
||||
elseif(sdk STREQUAL "CYGWIN")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_CYGWIN})
|
||||
elseif(${sdk} STREQUAL HAIKU)
|
||||
elseif(sdk STREQUAL "HAIKU")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_HAIKU})
|
||||
elseif(${sdk} STREQUAL WASI)
|
||||
elseif(sdk STREQUAL "WASI")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_WASI})
|
||||
elseif(${sdk} STREQUAL WINDOWS)
|
||||
elseif(sdk STREQUAL "WINDOWS")
|
||||
list(APPEND swiftexe_module_depends_flattened
|
||||
${SWIFTEXE_TARGET_SWIFT_MODULE_DEPENDS_WINDOWS})
|
||||
endif()
|
||||
@@ -2898,7 +2898,7 @@ function(add_swift_target_executable name)
|
||||
EXCLUDE_FROM_ALL TRUE)
|
||||
endif()
|
||||
|
||||
if(${sdk} IN_LIST SWIFT_APPLE_PLATFORMS)
|
||||
if(sdk IN_LIST SWIFT_APPLE_PLATFORMS)
|
||||
# In the past, we relied on unsetting globally
|
||||
# CMAKE_OSX_ARCHITECTURES to ensure that CMake would
|
||||
# not add the -arch flag
|
||||
@@ -2956,7 +2956,7 @@ function(add_swift_target_executable name)
|
||||
|
||||
precondition(resource_dir_sdk_subdir)
|
||||
|
||||
if(sdk STREQUAL WINDOWS AND CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(sdk STREQUAL "WINDOWS" AND CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
add_dependencies(${install_in_component} ${name}-windows-${SWIFT_PRIMARY_VARIANT_ARCH})
|
||||
swift_install_in_component(TARGETS ${name}-windows-${SWIFT_PRIMARY_VARIANT_ARCH}
|
||||
RUNTIME
|
||||
|
||||
@@ -262,7 +262,7 @@ if(SWIFT_ENABLE_EXPERIMENTAL_CONCURRENCY AND "${SWIFT_CONCURRENCY_GLOBAL_EXECUTO
|
||||
set(SWIFT_CONCURRENCY_USES_DISPATCH TRUE)
|
||||
endif()
|
||||
|
||||
if(SWIFT_CONCURRENCY_USES_DISPATCH AND NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(SWIFT_CONCURRENCY_USES_DISPATCH AND NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
if(NOT EXISTS "${SWIFT_PATH_TO_LIBDISPATCH_SOURCE}")
|
||||
message(SEND_ERROR "Concurrency requires libdispatch on non-Darwin hosts. Please specify SWIFT_PATH_TO_LIBDISPATCH_SOURCE")
|
||||
endif()
|
||||
|
||||
@@ -745,7 +745,7 @@ function(_compile_swift_files
|
||||
|
||||
set(line_directive_tool "${SWIFT_SOURCE_DIR}/utils/line-directive")
|
||||
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(HOST_EXECUTABLE_SUFFIX .exe)
|
||||
endif()
|
||||
if(SWIFT_BUILD_RUNTIME_WITH_HOST_COMPILER)
|
||||
@@ -763,7 +763,7 @@ function(_compile_swift_files
|
||||
"${SWIFT_NATIVE_SWIFT_TOOLS_PATH}/swiftc${HOST_EXECUTABLE_SUFFIX}"
|
||||
"${SWIFTFILE_BOOTSTRAPPING}")
|
||||
|
||||
if(NOT ${SWIFTFILE_BOOTSTRAPPING} STREQUAL "")
|
||||
if(NOT "${SWIFTFILE_BOOTSTRAPPING}" STREQUAL "")
|
||||
set(target_suffix "-bootstrapping${SWIFTFILE_BOOTSTRAPPING}")
|
||||
endif()
|
||||
|
||||
@@ -801,7 +801,7 @@ function(_compile_swift_files
|
||||
# When building the stdlib with bootstrapping, the compiler needs
|
||||
# to pick up the stdlib from the previous bootstrapping stage, because the
|
||||
# stdlib in the current stage is not built yet.
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_APPLE_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_APPLE_PLATFORMS)
|
||||
set(set_environment_args "${CMAKE_COMMAND}" "-E" "env" "DYLD_LIBRARY_PATH=${bs_lib_dir}")
|
||||
elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD|FREEBSD")
|
||||
set(set_environment_args "${CMAKE_COMMAND}" "-E" "env" "LD_LIBRARY_PATH=${bs_lib_dir}")
|
||||
|
||||
@@ -26,14 +26,14 @@ set(SWIFT_RUNTIME_CONCURRENCY_C_FLAGS)
|
||||
set(SWIFT_RUNTIME_CONCURRENCY_SWIFT_FLAGS)
|
||||
|
||||
set(swift_concurrency_private_link_libraries)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
list(APPEND swift_concurrency_private_link_libraries Synchronization)
|
||||
endif()
|
||||
|
||||
set(swift_concurrency_incorporate_object_libraries_so swiftThreading)
|
||||
|
||||
if("${SWIFT_CONCURRENCY_GLOBAL_EXECUTOR}" STREQUAL "dispatch")
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
include_directories(AFTER
|
||||
${SWIFT_PATH_TO_LIBDISPATCH_SOURCE})
|
||||
|
||||
@@ -62,7 +62,7 @@ endif()
|
||||
|
||||
# Don't emit extended frame info on platforms other than darwin, system
|
||||
# backtracer and system debugger are unlikely to support it.
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
list(APPEND SWIFT_RUNTIME_CONCURRENCY_C_FLAGS
|
||||
"-fswift-async-fp=${swift_concurrency_async_fp_mode}")
|
||||
list(APPEND SWIFT_RUNTIME_CONCURRENCY_SWIFT_FLAGS
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
set(libstdcxx_modulemap_target_list)
|
||||
foreach(sdk ${SWIFT_SDKS})
|
||||
if(NOT ${sdk} IN_LIST SWIFT_LIBSTDCXX_PLATFORMS)
|
||||
if(NOT sdk IN_LIST SWIFT_LIBSTDCXX_PLATFORMS)
|
||||
continue()
|
||||
endif()
|
||||
|
||||
@@ -82,7 +82,7 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
COMPONENT sdk-overlay)
|
||||
endif()
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*")
|
||||
if(BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
foreach(bootstrapping "0" "1")
|
||||
get_bootstrapping_path(bootstrapping_dir ${module_dir} ${bootstrapping})
|
||||
set(libstdcxx_modulemap_out_bootstrapping "${bootstrapping_dir}/libstdcxx.modulemap")
|
||||
|
||||
@@ -42,8 +42,8 @@ set(swiftDarwin_common_options
|
||||
DEPENDS ${darwin_depends})
|
||||
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} STREQUAL "BOOTSTRAPPING" AND
|
||||
${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(BOOTSTRAPPING_MODE STREQUAL "BOOTSTRAPPING" AND
|
||||
SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
|
||||
set(swiftDarwin_common_bootstrapping_options
|
||||
${swiftDarwin_common_options}
|
||||
@@ -196,7 +196,7 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
# with its own native sysroot, create a native modulemap without a sysroot
|
||||
# prefix. This is the one we'll install instead.
|
||||
if(NOT "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${arch}_PATH}" STREQUAL "/" AND
|
||||
NOT (${sdk} STREQUAL ANDROID AND NOT "${SWIFT_ANDROID_NATIVE_SYSROOT}" STREQUAL ""))
|
||||
NOT (sdk STREQUAL "ANDROID" AND NOT "${SWIFT_ANDROID_NATIVE_SYSROOT}" STREQUAL ""))
|
||||
set(glibc_sysroot_relative_modulemap_out "${module_dir}/sysroot-relative-modulemaps/glibc.modulemap")
|
||||
|
||||
handle_gyb_source_single(glibc_modulemap_native_target
|
||||
|
||||
@@ -10,7 +10,7 @@ set(swiftOnoneSupport_common_options
|
||||
SWIFT_COMPILE_FLAGS "-parse-stdlib" "-Xllvm" "-sil-inline-generics=false" "-Xfrontend" "-validate-tbd-against-ir=none" "-Xfrontend" "-check-onone-completeness" "-Xfrontend" "-disable-access-control" "${SWIFT_RUNTIME_SWIFT_COMPILE_FLAGS}" "${SWIFT_STANDARD_LIBRARY_SWIFT_FLAGS}"
|
||||
LINK_FLAGS "${SWIFT_RUNTIME_SWIFT_LINK_FLAGS}")
|
||||
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug" AND ${BOOTSTRAPPING_MODE} STREQUAL "BOOTSTRAPPING")
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug" AND BOOTSTRAPPING_MODE STREQUAL "BOOTSTRAPPING")
|
||||
|
||||
set(swiftOnoneSupport_common_bootstrapping_options
|
||||
SHARED
|
||||
|
||||
@@ -152,7 +152,7 @@ if(NOT SWIFT_BUILT_STANDALONE)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*")
|
||||
if(BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
foreach(bootstrapping "0" "1")
|
||||
get_bootstrapping_path(outdir ${SWIFTLIB_DIR} ${bootstrapping})
|
||||
set(target_name "symlink-headers-bootstrapping${bootstrapping}")
|
||||
|
||||
@@ -252,18 +252,18 @@ set(swift_core_framework_depends)
|
||||
set(swift_core_private_link_libraries)
|
||||
set(swift_stdlib_compile_flags "${SWIFT_RUNTIME_SWIFT_COMPILE_FLAGS}")
|
||||
|
||||
if(SWIFT_PRIMARY_VARIANT_SDK STREQUAL CYGWIN)
|
||||
if(SWIFT_PRIMARY_VARIANT_SDK STREQUAL "CYGWIN")
|
||||
# TODO(compnerd) cache this variable to permit re-configuration
|
||||
execute_process(COMMAND "cygpath" "-u" "$ENV{SYSTEMROOT}" OUTPUT_VARIABLE ENV_SYSTEMROOT)
|
||||
list(APPEND swift_core_private_link_libraries "${ENV_SYSTEMROOT}/system32/psapi.dll")
|
||||
elseif(SWIFT_PRIMARY_VARIANT_SDK STREQUAL FREEBSD)
|
||||
elseif(SWIFT_PRIMARY_VARIANT_SDK STREQUAL "FREEBSD")
|
||||
find_library(EXECINFO_LIBRARY execinfo)
|
||||
list(APPEND swift_core_private_link_libraries ${EXECINFO_LIBRARY})
|
||||
elseif(SWIFT_PRIMARY_VARIANT_SDK STREQUAL LINUX)
|
||||
elseif(SWIFT_PRIMARY_VARIANT_SDK STREQUAL "LINUX")
|
||||
if(SWIFT_BUILD_STATIC_STDLIB)
|
||||
list(APPEND swift_core_private_link_libraries)
|
||||
endif()
|
||||
elseif(SWIFT_PRIMARY_VARIANT_SDK STREQUAL WINDOWS)
|
||||
elseif(SWIFT_PRIMARY_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
list(APPEND swift_core_private_link_libraries shell32;DbgHelp;Synchronization)
|
||||
endif()
|
||||
|
||||
@@ -335,7 +335,7 @@ set(swiftCore_common_options
|
||||
set(swiftCore_common_dependencies
|
||||
copy_shim_headers "${SWIFTLIB_DIR}/shims" ${GROUP_INFO_JSON_FILE})
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} STREQUAL "BOOTSTRAPPING")
|
||||
if(BOOTSTRAPPING_MODE STREQUAL "BOOTSTRAPPING")
|
||||
|
||||
set(b0_deps symlink-headers-bootstrapping0)
|
||||
set(b1_deps symlink-headers-bootstrapping1)
|
||||
|
||||
@@ -216,7 +216,7 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
endif()
|
||||
set(swiftrtObject ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/swiftImageRegistrationObject${SWIFT_SDK_${sdk}_OBJECT_FORMAT}-${arch_suffix}.dir/${swiftrtSourceName}${CMAKE_C_OUTPUT_EXTENSION})
|
||||
|
||||
if(sdk STREQUAL WINDOWS)
|
||||
if(sdk STREQUAL "WINDOWS")
|
||||
set(extension .obj)
|
||||
else()
|
||||
set(extension .o)
|
||||
@@ -262,12 +262,12 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
|
||||
# Generate the static-stdlib-args.lnk file used by -static-stdlib option for
|
||||
# 'GenericUnix' (eg linux)
|
||||
if(${SWIFT_SDK_${sdk}_OBJECT_FORMAT} STREQUAL ELF)
|
||||
if(SWIFT_SDK_${sdk}_OBJECT_FORMAT STREQUAL "ELF")
|
||||
string(TOLOWER "${sdk}" lowercase_sdk)
|
||||
set(libpthread -lpthread)
|
||||
set(concurrency_libs)
|
||||
set(android_libraries)
|
||||
if(${sdk} STREQUAL ANDROID)
|
||||
if(sdk STREQUAL "ANDROID")
|
||||
set(android_libraries -llog)
|
||||
set(libpthread)
|
||||
elseif(SWIFT_CONCURRENCY_USES_DISPATCH)
|
||||
|
||||
@@ -55,7 +55,7 @@ foreach(sdk ${SWIFT_SDKS})
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*")
|
||||
if(BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
# The resource dir for bootstrapping0 may be used explicitly
|
||||
# to cross compile for other architectures, so we would need
|
||||
# to have all the legacy layouts in there
|
||||
|
||||
@@ -208,7 +208,7 @@ is_build_type_optimized("${SWIFT_STDLIB_BUILD_TYPE}" SWIFT_OPTIMIZED)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
set(DEPLOYMENT_VERSION "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
|
||||
endif()
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
|
||||
set(DEPLOYMENT_VERSION ${SWIFT_ANDROID_API_LEVEL})
|
||||
endif()
|
||||
get_target_triple(SWIFT_HOST_TRIPLE SWIFT_HOST_TRIPLE_VARIANT "${SWIFT_HOST_VARIANT_SDK}" "${SWIFT_HOST_VARIANT_ARCH}"
|
||||
|
||||
@@ -82,7 +82,7 @@ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
|
||||
# Add deployment target to C/C++ compiler and linker flags.
|
||||
# FIXME: CMAKE_OSX_DEPLOYMENT_TARGET falls over when used for iOS versions.
|
||||
if (XCODE)
|
||||
if (${SOURCEKIT_DEPLOYMENT_OS} MATCHES "^macosx")
|
||||
if (SOURCEKIT_DEPLOYMENT_OS MATCHES "^macosx")
|
||||
set(CMAKE_XCODE_ATTRIBUTE_MACOSX_DEPLOYMENT_TARGET ${SOURCEKIT_DEPLOYMENT_TARGET})
|
||||
else()
|
||||
set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET ${SOURCEKIT_DEPLOYMENT_TARGET})
|
||||
@@ -101,7 +101,7 @@ if(NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
|
||||
endif()
|
||||
|
||||
if(SWIFT_BUILD_HOST_DISPATCH)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
set(SOURCEKIT_RUNTIME_DIR bin)
|
||||
else()
|
||||
set(SOURCEKIT_RUNTIME_DIR lib)
|
||||
@@ -114,7 +114,7 @@ if(SWIFT_BUILD_HOST_DISPATCH)
|
||||
DESTINATION ${SOURCEKIT_RUNTIME_DIR}
|
||||
COMPONENT sourcekit-inproc)
|
||||
endif()
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
swift_install_in_component(FILES
|
||||
$<TARGET_LINKER_FILE:dispatch>
|
||||
$<TARGET_LINKER_FILE:BlocksRuntime>
|
||||
|
||||
@@ -8,7 +8,7 @@ function(add_sourcekit_default_compiler_flags target)
|
||||
_add_host_variant_link_flags(${target})
|
||||
|
||||
# Set compilation and link flags.
|
||||
if(${SWIFT_HOST_VARIANT_SDK} STREQUAL WINDOWS)
|
||||
if(SWIFT_HOST_VARIANT_SDK STREQUAL "WINDOWS")
|
||||
swift_windows_include_for_arch(${SWIFT_HOST_VARIANT_ARCH}
|
||||
${SWIFT_HOST_VARIANT_ARCH}_INCLUDE)
|
||||
target_include_directories(${target} SYSTEM PRIVATE
|
||||
@@ -30,7 +30,7 @@ function(add_sourcekit_swift_runtime_link_flags target path HAS_SWIFT_MODULES)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
|
||||
# Lists of rpaths that we are going to add to our executables.
|
||||
#
|
||||
@@ -118,7 +118,7 @@ function(add_sourcekit_swift_runtime_link_flags target path HAS_SWIFT_MODULES)
|
||||
|
||||
elseif(SWIFT_HOST_VARIANT_SDK MATCHES "LINUX|ANDROID|OPENBSD" AND HAS_SWIFT_MODULES AND ASKD_BOOTSTRAPPING_MODE)
|
||||
set(swiftrt "swiftImageRegistrationObject${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_OBJECT_FORMAT}-${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}-${SWIFT_HOST_VARIANT_ARCH}")
|
||||
if(${ASKD_BOOTSTRAPPING_MODE} MATCHES "HOSTTOOLS|CROSSCOMPILE")
|
||||
if(ASKD_BOOTSTRAPPING_MODE MATCHES "HOSTTOOLS|CROSSCOMPILE")
|
||||
# At build time and run time, link against the swift libraries in the
|
||||
# installed host toolchain.
|
||||
get_filename_component(swift_bin_dir ${SWIFT_EXEC_FOR_SWIFT_MODULES} DIRECTORY)
|
||||
@@ -159,7 +159,7 @@ function(add_sourcekit_swift_runtime_link_flags target path HAS_SWIFT_MODULES)
|
||||
target_link_directories(${target} PRIVATE "${SWIFT_PATH_TO_EARLYSWIFTSYNTAX_BUILD_DIR}/lib/swift/host")
|
||||
|
||||
# Add rpath to the host Swift libraries.
|
||||
if (NOT ${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if (NOT SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
file(RELATIVE_PATH relative_hostlib_path "${path}" "${SWIFTLIB_DIR}/host")
|
||||
list(APPEND RPATH_LIST "$ORIGIN/${relative_hostlib_path}")
|
||||
endif()
|
||||
@@ -168,7 +168,7 @@ function(add_sourcekit_swift_runtime_link_flags target path HAS_SWIFT_MODULES)
|
||||
# able to fall back to the SDK directory for libswiftCore et al.
|
||||
if (BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
if (NOT "${bootstrapping}" STREQUAL "1")
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
target_link_directories(${target} PRIVATE "${sdk_dir}")
|
||||
|
||||
# Include the abi stable system stdlib in our rpath.
|
||||
|
||||
@@ -9,7 +9,7 @@ target_link_libraries(SourceKitSupport PRIVATE
|
||||
swiftBasic
|
||||
clangBasic
|
||||
clangRewrite)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
target_link_libraries(SourceKitSupport INTERFACE
|
||||
dispatch
|
||||
BlocksRuntime)
|
||||
|
||||
@@ -7,13 +7,13 @@ if(SWIFT_SOURCEKIT_USE_INPROC_LIBRARY)
|
||||
else()
|
||||
target_link_libraries(complete-test PRIVATE sourcekitd)
|
||||
endif()
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
target_link_libraries(complete-test PRIVATE
|
||||
dispatch
|
||||
BlocksRuntime)
|
||||
endif()
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
set_target_properties(complete-test PROPERTIES
|
||||
INSTALL_RPATH "@executable_path/../lib")
|
||||
target_link_options(complete-test PRIVATE
|
||||
|
||||
@@ -7,7 +7,7 @@ if(SWIFT_SOURCEKIT_USE_INPROC_LIBRARY)
|
||||
else()
|
||||
target_link_libraries(sourcekitd-repl PRIVATE sourcekitd)
|
||||
endif()
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
target_link_libraries(sourcekitd-repl PRIVATE
|
||||
dispatch
|
||||
BlocksRuntime)
|
||||
@@ -15,7 +15,7 @@ endif()
|
||||
target_link_libraries(sourcekitd-repl PRIVATE
|
||||
LibEdit::LibEdit)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
set_target_properties(sourcekitd-repl PROPERTIES
|
||||
INSTALL_RPATH "@executable_path/../lib")
|
||||
target_link_options(sourcekitd-repl PRIVATE
|
||||
|
||||
@@ -17,7 +17,7 @@ if(SWIFT_SOURCEKIT_USE_INPROC_LIBRARY)
|
||||
else()
|
||||
target_link_libraries(sourcekitd-test PRIVATE sourcekitd)
|
||||
endif()
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
target_link_libraries(sourcekitd-test PRIVATE
|
||||
dispatch
|
||||
BlocksRuntime)
|
||||
@@ -25,7 +25,7 @@ endif()
|
||||
|
||||
add_dependencies(sourcekitd-test sourcekitdTestOptionsTableGen)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
set_target_properties(sourcekitd-test PROPERTIES
|
||||
INSTALL_RPATH "@executable_path/../lib")
|
||||
target_link_options(sourcekitd-test PRIVATE
|
||||
|
||||
@@ -15,7 +15,7 @@ function(add_swift_parser_link_libraries target)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
if(${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*")
|
||||
if(BOOTSTRAPPING_MODE MATCHES "BOOTSTRAPPING.*")
|
||||
|
||||
# Bootstrapping - level 0
|
||||
# For more information on how bootstrapping works, see docs/SwiftInTheCompiler.md
|
||||
|
||||
@@ -9,7 +9,7 @@ add_swift_host_library(libSwiftScan SHARED
|
||||
c-include-check.c
|
||||
HAS_SWIFT_MODULES)
|
||||
|
||||
if(${SWIFT_HOST_VARIANT_SDK} IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_DARWIN_PLATFORMS)
|
||||
# Workaround for a linker crash related to autolinking: rdar://77839981
|
||||
set_property(TARGET libSwiftScan APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " -lobjc ")
|
||||
@@ -48,7 +48,7 @@ add_link_opts(libSwiftScan)
|
||||
add_dependencies(compiler libSwiftScan)
|
||||
|
||||
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
swift_install_in_component(TARGETS libSwiftScan
|
||||
ARCHIVE DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}" COMPONENT compiler
|
||||
LIBRARY DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_LIB_SUBDIR}" COMPONENT compiler
|
||||
|
||||
@@ -50,6 +50,6 @@ target_link_libraries(SwiftBasicTests
|
||||
LLVMTestingSupport
|
||||
)
|
||||
|
||||
if(SWIFT_HOST_VARIANT STREQUAL windows)
|
||||
if(SWIFT_HOST_VARIANT STREQUAL "windows")
|
||||
target_link_libraries(SwiftBasicTests PRIVATE Synchronization)
|
||||
endif()
|
||||
|
||||
@@ -14,7 +14,7 @@ if(("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "${SWIFT_PRIMARY_VARIANT_SDK}") AND
|
||||
swiftCore${SWIFT_PRIMARY_VARIANT_SUFFIX}
|
||||
)
|
||||
|
||||
if(SWIFT_HOST_VARIANT STREQUAL windows)
|
||||
if(SWIFT_HOST_VARIANT STREQUAL "windows")
|
||||
target_link_libraries(SwiftThreadingTests PRIVATE Synchronization)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -63,7 +63,7 @@ if(("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "${SWIFT_PRIMARY_VARIANT_SDK}") AND
|
||||
list(APPEND PLATFORM_TARGET_LINK_LIBRARIES
|
||||
${EXECINFO_LIBRARY}
|
||||
)
|
||||
elseif(SWIFT_HOST_VARIANT STREQUAL windows)
|
||||
elseif(SWIFT_HOST_VARIANT STREQUAL "windows")
|
||||
list(APPEND PLATFORM_TARGET_LINK_LIBRARIES DbgHelp;Synchronization)
|
||||
endif()
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ if(("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "${SWIFT_PRIMARY_VARIANT_SDK}") AND
|
||||
list(APPEND PLATFORM_TARGET_LINK_LIBRARIES
|
||||
${EXECINFO_LIBRARY}
|
||||
)
|
||||
elseif(SWIFT_HOST_VARIANT STREQUAL windows)
|
||||
elseif(SWIFT_HOST_VARIANT STREQUAL "windows")
|
||||
list(APPEND PLATFORM_TARGET_LINK_LIBRARIES DbgHelp;Synchronization)
|
||||
endif()
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ set(SWIFTLIB_DIR "${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib/swift")
|
||||
set(dest "${SWIFTLIB_DIR}/${framework}")
|
||||
set(source "${CMAKE_CURRENT_SOURCE_DIR}/${framework}")
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL Windows)
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(CMAKE_SYMLINK_COMMAND copy)
|
||||
else()
|
||||
set(CMAKE_SYMLINK_COMMAND create_symlink)
|
||||
|
||||
Reference in New Issue
Block a user