Skip to content

Commit 7e70088

Browse files
committed
RemoteMirror: add the SwiftRemoteMirror build to the new runtimes build
This adds the final missing runtime library to the runtiems build. With this addition, the Windows SDK is complete.
1 parent 1fafd48 commit 7e70088

File tree

5 files changed

+68
-0
lines changed

5 files changed

+68
-0
lines changed

Runtimes/Core/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ defaulted_option(SwiftCore_ENABLE_COMPACT_ABSOLUTE_FUNCTION_POINTERS "Resolve ab
119119
defaulted_option(SwiftCore_ENABLE_BACKDEPLOYMENT_SUPPORT "Add symbols for runtime backdeployment")
120120
defaulted_option(SwiftCore_ENABLE_STDLIB_TRACING "Enable tracing in the runtime. Assumes the presence of os_log(3) and the os_signpost(3) API.")
121121
defaulted_option(SwiftCore_ENABLE_CONCURRENCY "Enable Concurrency runtime support")
122+
defaulted_option(SwiftCore_ENABLE_REMOTE_MIRROR "Enable RemoteMirror runtime support")
122123
defaulted_set(SwiftCore_CONCURRENCY_GLOBAL_EXECUTOR STRING "Default Concurrency global executor implementation")
123124
option(SwiftCore_ENABLE_COMMANDLINE_SUPPORT "Enable command line argument support" ON)
124125
option(SwiftCore_ENABLE_UNICODE_DATA "Include unicode data in Swift runtimes" ON)
@@ -225,6 +226,10 @@ endif()
225226
if(SwiftCore_ENABLE_CONCURRENCY)
226227
add_subdirectory(Concurrency)
227228
endif()
229+
if(SwiftCore_ENABLE_REMOTE_MIRROR)
230+
add_subdirectory(RemoteInspection)
231+
add_subdirectory(SwiftRemoteMirror)
232+
endif()
228233

229234
# Inter-project install info
230235
export(EXPORT SwiftCoreTargets
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
2+
add_library(swiftRemoteInspection OBJECT
3+
MetadataSource.cpp
4+
TypeLowering.cpp
5+
TypeRef.cpp
6+
TypeRefBuilder.cpp)
7+
target_compile_definitions(swiftRemoteInspection PRIVATE
8+
$<$<BOOL:${SwiftCore_ENABLE_REFLECTION}>:SWIFT_ENABLE_REFLECTION>)
9+
target_include_directories(swiftRemoteInspection PRIVATE
10+
"${PROJECT_BINARY_DIR}/include"
11+
"${SwiftCore_SWIFTC_SOURCE_DIR}/include")
12+
target_include_directories(swiftRemoteInspection PUBLIC
13+
"$<BUILD_INTERFACE:${SwiftCore_SWIFTC_SOURCE_DIR}/include/swift/RemoteInspection/RuntimeHeaders>")
14+
target_link_libraries(swiftRemoteInspection PRIVATE
15+
swiftDemangling
16+
$<$<BOOL:${SwiftCore_ENABLE_CRASH_REPORTER_CLIENT}>:swiftDemanglingCR>
17+
swiftLLVMSupport
18+
swiftShims)
19+
20+
if(NOT BUILD_SHARED_LIBS)
21+
install(TARGETS swiftRemoteInspection
22+
EXPORT SwiftCoreTargets
23+
COMPONENT SwiftCore_runtime)
24+
endif()
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
add_library(swiftRemoteMirror
3+
SwiftRemoteMirror.cpp)
4+
target_link_libraries(swiftRemoteMirror PRIVATE
5+
swiftRemoteInspection)
6+
target_include_directories(swiftRemoteMirror PRIVATE
7+
"${PROJECT_BINARY_DIR}/include"
8+
"${SwiftCore_SWIFTC_SOURCE_DIR}/include")
9+
target_link_libraries(swiftRemoteMirror PRIVATE
10+
# FIXME(compnerd) why is this required? These should be transitively applied
11+
# from `swiftRemoteInspection`
12+
swiftDemangling
13+
$<$<BOOL:${SwiftCore_ENABLE_CRASH_REPORTER_CLIENT}>:swiftDemanglingCR>
14+
swiftLLVMSupport
15+
swiftShims)
16+
17+
install(TARGETS swiftRemoteMirror
18+
EXPORT SwiftCoreTargets
19+
COMPONENT SwiftCore_runtime
20+
ARCHIVE DESTINATION "${SwiftCore_INSTALL_LIBDIR}"
21+
LIBRARY DESTINATION "${SwiftCore_INSTALL_LIBDIR}"
22+
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
23+
install(FILES
24+
${SwiftCore_SWIFTC_SOURCE_DIR}/include/swift/SwiftRemoteMirror/MemoryReaderInterface.h
25+
${SwiftCore_SWIFTC_SOURCE_DIR}/include/swift/SwiftRemoteMirror/Platform.h
26+
${SwiftCore_SWIFTC_SOURCE_DIR}/include/swift/SwiftRemoteMirror/SwiftRemoteMirror.h
27+
${SwiftCore_SWIFTC_SOURCE_DIR}/include/swift/SwiftRemoteMirror/SwiftRemoteMirrorTypes.h
28+
${SwiftCore_SWIFTC_SOURCE_DIR}/include/swift/SwiftRemoteMirror/module.modulemap
29+
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/swift/SwiftRemoteMirror")
30+
31+
# Configure plist creation for Darwin platforms.
32+
generate_plist("${CMAKE_PROJECT_NAME}" "${CMAKE_PROJECT_VERSION}" swiftRemoteMirror)
33+
embed_manifest(swiftRemoteMirror)

Runtimes/Core/cmake/modules/DefaultSettings.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,15 @@ if(APPLE)
4242
set(SwiftCore_ENABLE_RUNTIME_OS_VERSIONING_default ON)
4343
set(SwiftCore_ENABLE_OVERRIDABLE_RETAIN_RELEASE_default ON)
4444
set(SwiftCore_ENABLE_CONCURRENCY_default NO)
45+
set(SwiftCore_ENABLE_REMOTE_MIRROR_default NO)
4546
set(SwiftCore_THREADING_PACKAGE_default "DARWIN")
4647
set(SwiftCore_ENABLE_PRESPECIALIZATION_default ON)
4748
set(SwiftCore_CONCURRENCY_GLOBAL_EXECUTOR_default "dispatch")
4849
elseif(CMAKE_SYSTEM_NAME STREQUAL "WASM")
4950
set(SwiftCore_OBJECT_FORMAT_default "elf")
5051
set(SwiftCore_THREADING_PACKAGE_default "NONE")
5152
set(SwiftCore_ENABLE_CONCURRENCY_default NO)
53+
set(SwiftCore_ENABLE_REMOTE_MIRROR_default NO)
5254
set(SwiftCore_CONCURRENCY_GLOBAL_EXECUTOR_default "none")
5355
elseif(LINUX OR ANDROID OR BSD)
5456
set(SwiftCore_OBJECT_FORMAT_default "elf")
@@ -62,6 +64,7 @@ elseif(LINUX OR ANDROID OR BSD)
6264
set(SwiftCore_THREADING_PACKAGE_default "PTHREADS")
6365
endif()
6466
set(SwiftCore_ENABLE_CONCURRENCY_default NO)
67+
set(SwiftCore_ENABLE_REMOTE_MIRROR_default NO)
6568
set(SwiftCore_CONCURRENCY_GLOBAL_EXECUTOR_default "dispatch")
6669
elseif(WIN32)
6770
set(SwiftCore_OBJECT_FORMAT_default "coff")
@@ -71,6 +74,7 @@ elseif(WIN32)
7174
set(SwiftCore_ENABLE_FATALERROR_BACKTRACE_default ON)
7275
set(SwiftCore_ENABLE_OVERRIDABLE_RETAIN_RELEASE_default ON)
7376
set(SwiftCore_ENABLE_CONCURRENCY_default NO)
77+
set(SwiftCore_ENABLE_REMOTE_MIRROR_default NO)
7478
set(SwiftCore_THREADING_PACKAGE_default "WIN32")
7579
set(SwiftCore_ENABLE_PRESPECIALIZATION_default ON)
7680
set(SwiftCore_CONCURRENCY_GLOBAL_EXECUTOR_default "dispatch")

Runtimes/Resync.cmake

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,8 @@ set(CoreLibs
8686
CommandLineSupport
8787
core
8888
SwiftOnoneSupport
89+
RemoteInspection
90+
SwiftRemoteMirror
8991
Concurrency
9092
Concurrency/InternalShims)
9193

0 commit comments

Comments
 (0)