Skip to content

Commit c63a93c

Browse files
authored
Add SWIFT_STDLIB_EXTRA_SWIFT_COMPILE_FLAGS and SWIFT_STDLIB_EXTRA_C_COMPILE_FLAGS CMake options (#40171)
1 parent 3a5ba2a commit c63a93c

File tree

3 files changed

+10
-0
lines changed

3 files changed

+10
-0
lines changed

stdlib/CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ endif()
7575
# NOTE: Some of these variables are also initialized in StandaloneOverlay.cmake
7676
# so that interfaces are emitted when overlays are separately built.
7777

78+
set(SWIFT_STDLIB_EXTRA_SWIFT_COMPILE_FLAGS "" CACHE STRING
79+
"Extra flags to pass when compiling swift stdlib files")
80+
81+
set(SWIFT_STDLIB_EXTRA_C_COMPILE_FLAGS "" CACHE STRING
82+
"Extra flags to pass when compiling C/C++ stdlib files")
83+
7884
option(SWIFT_STDLIB_STABLE_ABI
7985
"Should stdlib be built with stable ABI (library evolution, resilience)."
8086
"${SWIFT_STDLIB_STABLE_ABI_default}")

stdlib/cmake/modules/AddSwiftStdlib.cmake

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -367,6 +367,8 @@ function(_add_target_variant_c_compile_flags)
367367
list(APPEND result "-DSWIFT_STDLIB_SUPPORTS_BACKTRACE_REPORTING")
368368
endif()
369369

370+
list(APPEND result ${SWIFT_STDLIB_EXTRA_C_COMPILE_FLAGS})
371+
370372
set("${CFLAGS_RESULT_VAR_NAME}" "${result}" PARENT_SCOPE)
371373
endfunction()
372374

stdlib/cmake/modules/SwiftSource.cmake

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -506,6 +506,8 @@ function(_compile_swift_files
506506
list(APPEND swift_flags "-experimental-hermetic-seal-at-link")
507507
endif()
508508

509+
list(APPEND swift_flags ${SWIFT_STDLIB_EXTRA_SWIFT_COMPILE_FLAGS})
510+
509511
list(APPEND swift_flags ${SWIFT_EXPERIMENTAL_EXTRA_FLAGS})
510512

511513
if(SWIFTFILE_OPT_FLAGS)

0 commit comments

Comments
 (0)