Merge pull request #2 from 0xKSor/wip/bridge

Added bridging header for swift
This commit is contained in:
Karina
2026-04-20 14:54:14 +04:00
committed by GitHub
4 changed files with 20 additions and 10 deletions
+10
View File
@@ -74,6 +74,8 @@ add_custom_command(
-wmo
-O
-Xcc -fno-stack-protector
-Xcc -I${CMAKE_CURRENT_SOURCE_DIR}/../Common
-import-bridging-header ${CMAKE_CURRENT_SOURCE_DIR}/Source/BridgingHeader.h
-resource-dir ${SWIFT_RESOURCE_DIR}
-c ${SWIFT_SOURCES}
-o ${SWIFT_OBJ}
@@ -93,3 +95,11 @@ add_custom_command(TARGET kernel.elf POST_BUILD
COMMAND ${LLVM_OBJCOPY} -O binary kernel.elf kernel.bin
COMMENT "kernel.elf -> kernel.bin"
)
# --- SourceKit-LSP: generate compile_commands.json for Swift ---
set(_COMMON_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../Common")
set(_BRIDGING_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/Source/BridgingHeader.h")
file(GENERATE OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json"
CONTENT "[\n {\n \"file\": \"${SWIFT_SOURCES}\",\n \"directory\": \"${CMAKE_CURRENT_BINARY_DIR}\",\n \"arguments\": [\n \"${SWIFTC}\",\n \"-target\", \"aarch64-none-none-elf\",\n \"-enable-experimental-feature\", \"Embedded\",\n \"-parse-as-library\",\n \"-wmo\",\n \"-O\",\n \"-Xcc\", \"-fno-stack-protector\",\n \"-Xcc\", \"-I${_COMMON_DIR}\",\n \"-import-bridging-header\", \"${_BRIDGING_HEADER}\",\n \"-resource-dir\", \"${SWIFT_RESOURCE_DIR}\",\n \"${SWIFT_SOURCES}\"\n ]\n }\n]\n"
)