Skip to content

Commit 7e79874

Browse files
committed
build: inline the ICU handling into the CFLAGS handling
Rather than have the ICU handling be pushed down into the library handling, this will move it into the CFLAGS calulation which was being augmented previously. It is a cleanup that makes it easier to reason about the flags handling.
1 parent 7e32c43 commit 7e79874

File tree

1 file changed

+24
-23
lines changed

1 file changed

+24
-23
lines changed

cmake/modules/AddSwift.cmake

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,30 @@ function(_add_variant_c_compile_flags)
318318
endforeach()
319319
endif()
320320

321+
set(ICU_UC_INCLUDE_DIR ${SWIFT_${CFLAGS_SDK}_${CFLAGS_ARCH}_ICU_UC_INCLUDE})
322+
if(NOT "${ICU_UC_INCLUDE_DIR}" STREQUAL "" AND
323+
NOT "${ICU_UC_INCLUDE_DIR}" STREQUAL "/usr/include" AND
324+
NOT "${ICU_UC_INCLUDE_DIR}" STREQUAL "/usr/${SWIFT_SDK_${CFLAGS_SDK}_ARCH_${CFLAGS_ARCH}_TRIPLE}/include" AND
325+
NOT "${ICU_UC_INCLUDE_DIR}" STREQUAL "/usr/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_TRIPLE}/include")
326+
if(SWIFT_COMPILER_IS_MSVC_LIKE)
327+
list(APPEND result -I;${ICU_UC_INCLUDE_DIR})
328+
else()
329+
list(APPEND result -isystem;${ICU_UC_INCLUDE_DIR})
330+
endif()
331+
endif()
332+
333+
set(ICU_I18N_INCLUDE_DIR ${SWIFT_${CFLAGS_SDK}_${CFLAGS_ARCH}_ICU_I18N_INCLUDE})
334+
if(NOT "${ICU_I18N_INCLUDE_DIR}" STREQUAL "" AND
335+
NOT "${ICU_I18N_INCLUDE_DIR}" STREQUAL "/usr/include" AND
336+
NOT "${ICU_I18N_INCLUDE_DIR}" STREQUAL "/usr/${SWIFT_SDK_${CFLAGS_SDK}_ARCH_${CFLAGS_ARCH}_TRIPLE}/include" AND
337+
NOT "${ICU_I18N_INCLUDE_DIR}" STREQUAL "/usr/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_TRIPLE}/include")
338+
if(SWIFT_COMPILER_IS_MSVC_LIKE)
339+
list(APPEND result -I;${ICU_I18N_INCLUDE_DIR})
340+
else()
341+
list(APPEND result -isystem;${ICU_I18N_INCLUDE_DIR})
342+
endif()
343+
endif()
344+
321345
set("${CFLAGS_RESULT_VAR_NAME}" "${result}" PARENT_SCOPE)
322346
endfunction()
323347

@@ -1204,29 +1228,6 @@ function(_add_swift_library_single target name)
12041228
RESULT_VAR_NAME c_compile_flags
12051229
)
12061230

1207-
if(SWIFTLIB_SINGLE_TARGET_LIBRARY)
1208-
if(NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_UC_INCLUDE}" STREQUAL "" AND
1209-
NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_UC_INCLUDE}" STREQUAL "/usr/include" AND
1210-
NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_UC_INCLUDE}" STREQUAL "/usr/${SWIFT_SDK_${SWIFTLIB_SINGLE_SDK}_ARCH_${SWIFTLIB_SINGLE_ARCHITECTURE}_TRIPLE}/include" AND
1211-
NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_UC_INCLUDE}" STREQUAL "/usr/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_TRIPLE}/include")
1212-
if(SWIFT_COMPILER_IS_MSVC_LIKE)
1213-
list(APPEND c_compile_flags -I;${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_UC_INCLUDE})
1214-
else()
1215-
list(APPEND c_compile_flags -isystem;${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_UC_INCLUDE})
1216-
endif()
1217-
endif()
1218-
if(NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_I18N_INCLUDE}" STREQUAL "" AND
1219-
NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_I18N_INCLUDE}" STREQUAL "/usr/include" AND
1220-
NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_I18N_INCLUDE}" STREQUAL "/usr/${SWIFT_SDK_${SWIFTLIB_SINGLE_SDK}_ARCH_${SWIFTLIB_SINGLE_ARCHITECTURE}_TRIPLE}/include" AND
1221-
NOT "${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_I18N_INCLUDE}" STREQUAL "/usr/${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_TRIPLE}/include")
1222-
if(SWIFT_COMPILER_IS_MSVC_LIKE)
1223-
list(APPEND c_compile_flags -I;${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_I18N_INCLUDE})
1224-
else()
1225-
list(APPEND c_compile_flags -isystem;${SWIFT_${SWIFTLIB_SINGLE_SDK}_${SWIFTLIB_SINGLE_ARCHITECTURE}_ICU_I18N_INCLUDE})
1226-
endif()
1227-
endif()
1228-
endif()
1229-
12301231
if(SWIFTLIB_IS_STDLIB)
12311232
# We don't ever want to link against the ABI-breakage checking symbols
12321233
# in the standard library, runtime, or overlays because they only rely

0 commit comments

Comments
 (0)