Skip to content

Commit 4a0d680

Browse files
authored
adapt CMP0195 (#359)
1 parent 42f304f commit 4a0d680

3 files changed

Lines changed: 14 additions & 11 deletions

File tree

CMakeLists.txt

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,13 @@
1-
cmake_minimum_required(VERSION 4.0.1)
1+
cmake_minimum_required(VERSION 4.3)
2+
3+
set(CMAKE_OSX_DEPLOYMENT_TARGET 13.3)
4+
if(NOT CMAKE_OSX_ARCHITECTURES)
5+
execute_process(COMMAND uname -m
6+
OUTPUT_VARIABLE CMAKE_OSX_ARCHITECTURES
7+
OUTPUT_STRIP_TRAILING_WHITESPACE
8+
)
9+
endif()
10+
set(CMAKE_Swift_COMPILER_TARGET "${CMAKE_OSX_ARCHITECTURES}-apple-macos${CMAKE_OSX_DEPLOYMENT_TARGET}")
211

312
project(fcitx5-macos VERSION 0.3.2 LANGUAGES CXX Swift)
413

@@ -8,19 +17,13 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
817
# On x86 /Library/Frameworks/Mono.framework will mess up libintl.
918
set(CMAKE_FIND_FRAMEWORK LAST)
1019

11-
if(NOT CMAKE_OSX_ARCHITECTURES)
12-
set(CMAKE_OSX_ARCHITECTURES "${CMAKE_HOST_SYSTEM_PROCESSOR}")
13-
endif()
14-
1520
# Starting from cmake 4.0, CMAKE_OSX_SYSROOT defaults to empty.
1621
execute_process(COMMAND xcrun --sdk macosx --show-sdk-path
1722
OUTPUT_VARIABLE CMAKE_OSX_SYSROOT
1823
OUTPUT_STRIP_TRAILING_WHITESPACE
1924
)
20-
set(CMAKE_OSX_DEPLOYMENT_TARGET 13.3)
21-
set(F5M_TARGET "${CMAKE_OSX_ARCHITECTURES}-apple-macos${CMAKE_OSX_DEPLOYMENT_TARGET}")
22-
add_compile_options(-target "${F5M_TARGET}")
23-
add_link_options(-target "${F5M_TARGET}")
25+
add_compile_options(-target "${CMAKE_Swift_COMPILER_TARGET}")
26+
add_link_options(-target "${CMAKE_Swift_COMPILER_TARGET}")
2427

2528
set(CMAKE_Swift_LANGUAGE_VERSION 6)
2629
# Disallow InitializeSwift to execute link_directories which adds Xcode paths to rpath.

cmake/AddSwift.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ function(_swift_generate_cxx_header target header)
5858
${ARG_SEARCH_PATHS}
5959
${_SwiftSources}
6060
${SDK_FLAGS}
61-
-target ${F5M_TARGET}
61+
-target ${CMAKE_Swift_COMPILER_TARGET}
6262
-module-name "${ARG_MODULE_NAME}"
6363
-cxx-interoperability-mode=default
6464
-emit-clang-header-path ${header_path}

cmake/InitializeSwift.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ function(_setup_swift_paths)
3434
# To handle it correctly, we would need to pass the target triple and
3535
# flags to this compiler invocation.
3636
execute_process(
37-
COMMAND ${CMAKE_Swift_COMPILER} ${SDK_FLAGS} -target ${F5M_TARGET} -print-target-info
37+
COMMAND ${CMAKE_Swift_COMPILER} ${SDK_FLAGS} -target ${CMAKE_Swift_COMPILER_TARGET} -print-target-info
3838
OUTPUT_VARIABLE SWIFT_TARGET_INFO
3939
)
4040

0 commit comments

Comments
 (0)