mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Allow to link SwiftSwiftDirectRuntime in Supplemental build system
Addresses rdar://164174616
This commit is contained in:
@@ -61,6 +61,8 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_VECTOR_TYPES "Enable vector support"
|
||||
${SwiftCore_ENABLE_VECTOR_TYPES})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
add_compile_options(
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-explicit-module-build>
|
||||
@@ -77,6 +79,11 @@ add_compile_options(
|
||||
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -target-min-inlining-version -Xfrontend min>"
|
||||
$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>)
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
@@ -120,7 +127,8 @@ set_target_properties(swift_Differentiation PROPERTIES
|
||||
target_link_libraries(swift_Differentiation PRIVATE
|
||||
swiftCore
|
||||
$<$<PLATFORM_ID:Android>:swiftAndroid>
|
||||
$<$<PLATFORM_ID:Windows>:swiftCRT>)
|
||||
$<$<PLATFORM_ID:Windows>:swiftCRT>
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
|
||||
install(TARGETS swift_Differentiation
|
||||
|
||||
@@ -65,6 +65,9 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization"
|
||||
${SwiftCore_ENABLE_PRESPECIALIZATION})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
add_compile_options(
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-explicit-module-build>
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-nostdlibimport>
|
||||
@@ -84,6 +87,11 @@ add_compile_options(
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_PRESPECIALIZATION}>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>")
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
@@ -146,7 +154,8 @@ target_link_libraries(swiftDistributed PRIVATE
|
||||
swift_Concurrency
|
||||
swift_Builtin_float
|
||||
$<$<PLATFORM_ID:Android>:swiftAndroid>
|
||||
$<$<PLATFORM_ID:Windows>:swiftWinSDK>)
|
||||
$<$<PLATFORM_ID:Windows>:swiftWinSDK>
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
install(TARGETS swiftDistributed
|
||||
EXPORT SwiftDistributedTargets
|
||||
|
||||
@@ -61,6 +61,9 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization"
|
||||
${SwiftCore_ENABLE_PRESPECIALIZATION})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
add_compile_options(
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-explicit-module-build>
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-nostdlibimport>
|
||||
@@ -82,6 +85,11 @@ add_compile_options(
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_PRESPECIALIZATION}>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>")
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
@@ -116,7 +124,8 @@ target_link_libraries(swiftObservation PRIVATE
|
||||
swift_Concurrency
|
||||
$<$<PLATFORM_ID:Android>:swiftAndroid>
|
||||
$<$<PLATFORM_ID:Linux>:swiftGlibc>
|
||||
$<$<PLATFORM_ID:Windows>:swiftWinSDK>)
|
||||
$<$<PLATFORM_ID:Windows>:swiftWinSDK>
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
install(TARGETS swiftObservation
|
||||
EXPORT SwiftObservationTargets
|
||||
|
||||
@@ -68,6 +68,9 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization"
|
||||
${SwiftCore_ENABLE_PRESPECIALIZATION})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
add_compile_options(
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-explicit-module-build>
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-nostdlibimport>
|
||||
@@ -92,6 +95,11 @@ add_compile_options(
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_PRESPECIALIZATION}>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>")
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
@@ -157,7 +165,8 @@ target_link_libraries(swiftRuntime PRIVATE
|
||||
$<$<PLATFORM_ID:Android>:swiftAndroid>
|
||||
$<$<PLATFORM_ID:Darwin>:swiftDarwin>
|
||||
$<$<PLATFORM_ID:Linux>:swiftGlibc>
|
||||
$<$<PLATFORM_ID:Windows>:swiftWinSDK>)
|
||||
$<$<PLATFORM_ID:Windows>:swiftWinSDK>
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
install(TARGETS swiftRuntime
|
||||
EXPORT SwiftRuntimeTargets
|
||||
|
||||
@@ -50,6 +50,9 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization"
|
||||
${SwiftCore_ENABLE_PRESPECIALIZATION})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
add_compile_options(
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-explicit-module-build>
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-nostdlibimport>
|
||||
@@ -59,6 +62,11 @@ add_compile_options(
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_PRESPECIALIZATION}>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>")
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
|
||||
@@ -12,7 +12,8 @@ set_target_properties(swiftRegexBuilder PROPERTIES
|
||||
target_link_libraries(swiftRegexBuilder PRIVATE
|
||||
swift_RegexParser
|
||||
swift_StringProcessing
|
||||
swiftCore)
|
||||
swiftCore
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
install(TARGETS swiftRegexBuilder
|
||||
ARCHIVE DESTINATION "${SwiftStringProcessing_INSTALL_LIBDIR}"
|
||||
|
||||
@@ -32,7 +32,8 @@ add_library(swift_RegexParser
|
||||
Utility/MissingUnicode.swift)
|
||||
|
||||
target_link_libraries(swift_RegexParser PRIVATE
|
||||
swiftCore)
|
||||
swiftCore
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
set_target_properties(swift_RegexParser PROPERTIES
|
||||
Swift_MODULE_NAME _RegexParser)
|
||||
|
||||
@@ -77,7 +77,8 @@ set_target_properties(swift_StringProcessing PROPERTIES
|
||||
|
||||
target_link_libraries(swift_StringProcessing PRIVATE
|
||||
swift_RegexParser
|
||||
swiftCore)
|
||||
swiftCore
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
install(TARGETS swift_StringProcessing
|
||||
ARCHIVE DESTINATION "${SwiftStringProcessing_INSTALL_LIBDIR}"
|
||||
|
||||
@@ -65,6 +65,9 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization"
|
||||
${SwiftCore_ENABLE_PRESPECIALIZATION})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
option(${PROJECT_NAME}_SINGLE_THREADED_MODE "Build Synchronization assuming it will be used in an environment with only a single thread" OFF)
|
||||
|
||||
add_compile_options(
|
||||
@@ -95,6 +98,11 @@ add_compile_options(
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_PRESPECIALIZATION}>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>")
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
@@ -143,7 +151,8 @@ target_link_libraries(swiftSynchronization PRIVATE
|
||||
swiftCore
|
||||
$<$<PLATFORM_ID:Android>:swiftAndroid>
|
||||
$<$<PLATFORM_ID:Darwin>:swiftDarwin>
|
||||
$<$<PLATFORM_ID:Windows>:ClangModules>)
|
||||
$<$<PLATFORM_ID:Windows>:ClangModules>
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
if(WIN32 AND CMAKE_SYSTEM_PROCESSOR STREQUAL i686)
|
||||
# FIXME(#83765) `-whole-module-optimization` should not be needed. However,
|
||||
|
||||
@@ -63,6 +63,9 @@ option(${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION "Generate ABI resilient runtime
|
||||
option(${PROJECT_NAME}_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization"
|
||||
${SwiftCore_ENABLE_PRESPECIALIZATION})
|
||||
|
||||
option(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE "Use direct retain release"
|
||||
${SwiftCore_ENABLE_DIRECT_RETAIN_RELEASE})
|
||||
|
||||
add_compile_options(
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-explicit-module-build>
|
||||
$<$<COMPILE_LANGUAGE:Swift>:-nostdlibimport>
|
||||
@@ -70,6 +73,11 @@ add_compile_options(
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_LIBRARY_EVOLUTION}>,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
|
||||
"$<$<AND:$<BOOL:${${PROJECT_NAME}_ENABLE_PRESPECIALIZATION}>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>")
|
||||
|
||||
if(${PROJECT_NAME}_ENABLE_DIRECT_RETAIN_RELEASE)
|
||||
find_package(SwiftSwiftDirectRuntime REQUIRED)
|
||||
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -enable-direct-retain-release>")
|
||||
endif()
|
||||
|
||||
# LNK4049: symbol 'symbol' defined in 'filename.obj' is imported
|
||||
# LNK4286: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj'
|
||||
# LNK4217: symbol 'symbol' defined in 'filename_1.obj' is imported by 'filename_2.obj' in function 'function'
|
||||
@@ -88,7 +96,8 @@ set_target_properties(swift_Volatile PROPERTIES
|
||||
target_compile_options(swift_Volatile PRIVATE
|
||||
-parse-stdlib)
|
||||
target_link_libraries(swift_Volatile PRIVATE
|
||||
swiftCore)
|
||||
swiftCore
|
||||
$<$<BOOL:${SwiftSwiftDirectRuntime_FOUND}>:swiftSwiftDirectRuntime>)
|
||||
|
||||
install(TARGETS swift_Volatile
|
||||
EXPORT SwiftVolatileTargets
|
||||
|
||||
Reference in New Issue
Block a user