Skip to content

Commit 7575e66

Browse files
authored
Merge pull request #3068 from compnerd/single-is-crossed
2 parents 1d03d16 + b3ba457 commit 7575e66

File tree

1 file changed

+20
-8
lines changed

1 file changed

+20
-8
lines changed

cmake/modules/AddSwift.cmake

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -510,7 +510,13 @@ function(_add_swift_library_single target name)
510510
endif()
511511

512512
if (SWIFT_COMPILER_VERSION)
513-
if ("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
513+
if ("${SWIFTLIB_SINGLE_SDK}" STREQUAL "OSX" OR
514+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "IOS" OR
515+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "IOS_SIMULATOR" OR
516+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "TVOS" OR
517+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "TVOS_SIMULATOR" OR
518+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "WATCHOS" OR
519+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "WATCHOS_SIMULATOR")
514520
list(APPEND SWIFTLIB_SINGLE_LINK_FLAGS "-Xlinker" "-current_version" "-Xlinker" "${SWIFT_COMPILER_VERSION}" "-Xlinker" "-compatibility_version" "-Xlinker" "1")
515521
endif()
516522
endif()
@@ -576,8 +582,8 @@ function(_add_swift_library_single target name)
576582
# we add markers for metadata sections in the shared libraries using
577583
# these object files. This wouldn't be necessary if the link was done by
578584
# the swift binary: rdar://problem/19007002
579-
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR
580-
"${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
585+
if("${SWIFTLIB_SINGLE_SDK}" STREQUAL "LINUX" OR
586+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "FREEBSD")
581587

582588
if("${libkind}" STREQUAL "SHARED")
583589
set(arch_subdir "${SWIFTLIB_DIR}/${SWIFTLIB_SINGLE_SUBDIR}")
@@ -634,8 +640,8 @@ function(_add_swift_library_single target name)
634640

635641
# The section metadata objects are generated sources, and we need to tell CMake
636642
# not to expect to find them prior to their generation.
637-
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR
638-
"${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
643+
if("${SWIFTLIB_SINGLE_SDK}" STREQUAL "LINUX" OR
644+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "FREEBSD")
639645
if("${libkind}" STREQUAL "SHARED")
640646
set_source_files_properties(${SWIFT_SECTIONS_OBJECT_BEGIN} PROPERTIES GENERATED 1)
641647
set_source_files_properties(${SWIFT_SECTIONS_OBJECT_END} PROPERTIES GENERATED 1)
@@ -672,7 +678,13 @@ function(_add_swift_library_single target name)
672678
endforeach()
673679
endif()
674680

675-
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
681+
if("${SWIFTLIB_SINGLE_SDK}" STREQUAL "OSX" OR
682+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "IOS" OR
683+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "IOS_SIMULATOR" OR
684+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "TVOS" OR
685+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "TVOS_SIMULATOR" OR
686+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "WATCHOS" OR
687+
"${SWIFTLIB_SINGLE_SDK}" STREQUAL "WATCHOS_SIMULATOR")
676688
set(install_name_dir "@rpath")
677689

678690
if(SWIFTLIB_SINGLE_IS_STDLIB)
@@ -685,11 +697,11 @@ function(_add_swift_library_single target name)
685697
set_target_properties("${target}"
686698
PROPERTIES
687699
INSTALL_NAME_DIR "${install_name_dir}")
688-
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" AND NOT "${SWIFTLIB_SINGLE_SDK}" STREQUAL "ANDROID")
700+
elseif("${SWIFTLIB_SINGLE_SDK}" STREQUAL "LINUX" AND NOT "${SWIFTLIB_SINGLE_SDK}" STREQUAL "ANDROID")
689701
set_target_properties("${target}"
690702
PROPERTIES
691703
INSTALL_RPATH "$ORIGIN:/usr/lib/swift/linux")
692-
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Cygwin")
704+
elseif("${SWIFTLIB_SINGLE_SDK}" STREQUAL "CYGWIN")
693705
set_target_properties("${target}"
694706
PROPERTIES
695707
INSTALL_RPATH "$ORIGIN:/usr/lib/swift/windows")

0 commit comments

Comments
 (0)