Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions lldb/source/Plugins/Language/Swift/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
set(LLVM_NO_RTTI 1)

add_subdirectory(SwiftHighlighter)

add_lldb_library(lldbPluginSwiftLanguage PLUGIN
FoundationValueTypes.cpp
LogChannelSwift.cpp
Expand All @@ -9,6 +11,7 @@ add_lldb_library(lldbPluginSwiftLanguage PLUGIN
SwiftDictionary.cpp
SwiftFormatters.cpp
SwiftHashedContainer.cpp
SwiftHighlighterBridge.cpp
SwiftLanguage.cpp
SwiftMetatype.cpp
SwiftOptionSet.cpp
Expand All @@ -28,6 +31,7 @@ add_lldb_library(lldbPluginSwiftLanguage PLUGIN
swiftAST
swiftClangImporter
clangAST
swiftHighlighter

LINK_COMPONENTS
Support
Expand Down
17 changes: 17 additions & 0 deletions lldb/source/Plugins/Language/Swift/SwiftHighlighter/.swift-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should/Could this be project-wide and at a much higher directory level?

"version": 1,
"lineLength": 120,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why does Swift get a longer line length?

"indentation": {
"spaces": 2
},
"lineBreakBeforeEachArgument": true,
"indentConditionalCompilationBlocks": false,
"rules": {
"AlwaysUseLowerCamelCase": false,
"AmbiguousTrailingClosureOverload": false,
"NoBlockComments": false,
"OrderedImports": true,
"UseLetInEveryBoundCaseVariable": false,
"UseSynthesizedInitializer": false
}
}
37 changes: 37 additions & 0 deletions lldb/source/Plugins/Language/Swift/SwiftHighlighter/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
cmake_minimum_required(VERSION 3.22)

project(SwiftHighlighter LANGUAGES Swift)

# Verify that we have a new enough compiler
if("${CMAKE_Swift_COMPILER_VERSION}" VERSION_LESS 5.9)
message(FATAL_ERROR "Bidirectional C++ Interop requires Swift 5.9 or greater. Have ${CMAKE_Swift_COMPILER_VERSION}")

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/Have/Found/

endif()

if(NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" AND
NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
message(FATAL_ERROR "Project requires building with Clang.
Have ${CMAKE_CXX_COMPILER_ID}")
endif()

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")

# Set up swiftrt.o and runtime library search paths
include(InitializeSwift)
# Include the _swift_generate_cxx_header function
include(GenerateCxxHeader)


add_library(swiftHighlighter STATIC swiftHighlighter.swift)
target_link_libraries(swiftHighlighter SwiftSyntax)
target_link_libraries(swiftHighlighter SwiftParser)

target_compile_options(swiftHighlighter PUBLIC
"$<$<COMPILE_LANGUAGE:Swift>:-cxx-interoperability-mode=default>")


set(SWIFT_HIGHLIGHTER_INCLUDE_DIR "${LLDB_SWIFT_LIBS}/host/"
"${CMAKE_CURRENT_SOURCE_DIR}/include")

_swift_generate_cxx_header(swiftHighlighter
swiftHighlighter/swiftHighlighter-swift.h
SEARCH_PATHS "${SWIFT_HIGHLIGHTER_INCLUDE_DIR}")
Loading