Skip to content

Commit 6358d17

Browse files
committed
Centralize cmake variable
1 parent e2f696a commit 6358d17

File tree

4 files changed

+19
-82
lines changed

4 files changed

+19
-82
lines changed

.github/workflows/pull_request.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,6 @@ jobs:
2828
fail-fast: false
2929
matrix:
3030
include:
31-
- swift-version: 'swift-6.2-branch'
32-
build-type: 'docker'
33-
build-compiler: '1'
34-
runner: 'self-hosted'
3531
- swift-version: 'development'
3632
build-type: 'docker'
3733
build-compiler: '1'

swift-ci/sdks/android/patches/swift-android-devel.patch

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,20 @@ index f7f2664b2de..01d36e127c6 100644
118118

119119
// CHECK-DISABLED-NOT: normal_count
120120

121+
diff --git a/swift/utils/build-script-impl b/swift/utils/build-script-impl
122+
index 16e05052609..7ab8cebfab8 100755
123+
--- a/swift/utils/build-script-impl
124+
+++ b/swift/utils/build-script-impl
125+
@@ -828,6 +828,9 @@ function set_build_options_for_host() {
126+
# and it must be the same for both LLVM and Swift
127+
128+
if [[ "${SWIFT_HOST_TRIPLE}" ]] ; then
129+
+ SWIFT_TARGET_CMAKE_OPTIONS+=(
130+
+ -DCMAKE_Swift_COMPILER_TARGET:STRING="${SWIFT_HOST_TRIPLE}"
131+
+ )
132+
llvm_cmake_options+=(
133+
-DLLVM_HOST_TRIPLE:STRING="${SWIFT_HOST_TRIPLE}"
134+
)
121135
diff --git a/swift/utils/swift_build_support/swift_build_support/cmake.py b/swift/utils/swift_build_support/swift_build_support/cmake.py
122136
index bfb69965890..b5e9f5349c2 100644
123137
--- a/swift/utils/swift_build_support/swift_build_support/cmake.py

swift-ci/sdks/android/patches/swift-android-trunk-libdispatch.patch

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,21 +28,6 @@ index 9a0f5b43e2d..5c7d1320a2d 100644
2828

2929
toolchain_path = product.native_toolchain_path(args.host_target)
3030
cmake_swiftc_path = os.getenv('CMAKE_Swift_COMPILER',
31-
diff --git a/swift-corelibs-libdispatch/cmake/modules/SwiftSupport.cmake b/swift-corelibs-libdispatch/cmake/modules/SwiftSupport.cmake
32-
index 3da519e..e2dd8ed 100644
33-
--- a/swift-corelibs-libdispatch/cmake/modules/SwiftSupport.cmake
34-
+++ b/swift-corelibs-libdispatch/cmake/modules/SwiftSupport.cmake
35-
@@ -4,6 +4,10 @@ if(NOT dispatch_MODULE_TRIPLE)
36-
set(module_triple_command "${CMAKE_Swift_COMPILER}" -print-target-info)
37-
if(CMAKE_Swift_COMPILER_TARGET)
38-
list(APPEND module_triple_command -target ${CMAKE_Swift_COMPILER_TARGET})
39-
+ else()
40-
+ set(arg_list ${CMAKE_Swift_FLAGS})
41-
+ separate_arguments(arg_list)
42-
+ list(APPEND module_triple_command ${arg_list})
43-
endif()
44-
execute_process(COMMAND ${module_triple_command} OUTPUT_VARIABLE target_info_json)
45-
4631
diff --git a/swift-corelibs-libdispatch/src/swift/CMakeLists.txt b/swift-corelibs-libdispatch/src/swift/CMakeLists.txt
4732
index 38bef37..d0ddf98 100644
4833
--- a/swift-corelibs-libdispatch/src/swift/CMakeLists.txt

swift-ci/sdks/android/patches/swift-android.patch

Lines changed: 5 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,16 @@ index 324d1a77eea..e88601a8701 100644
4848

4949
from . import cmake_product
5050
from . import product
51-
@@ -115,6 +117,22 @@ class SwiftTestingCMakeShim(cmake_product.CMakeProduct):
51+
@@ -115,6 +117,24 @@ class SwiftTestingCMakeShim(cmake_product.CMakeProduct):
5252
# FIXME: If we build macros for the builder, specify the path.
5353
self.cmake_options.define('SwiftTesting_MACRO', 'NO')
5454

5555
+ if host_target.startswith('android') and self.is_cross_compile_target(host_target):
5656
+ host_config = HostSpecificConfiguration(host_target, self.args)
5757
+ self.cmake_options.extend(host_config.cmake_options)
58-
+ flags = '-target %s-unknown-linux-android%s ' % (self.args.android_arch,
59-
+ self.args.android_api_level)
58+
+ triple = '%s-unknown-linux-android%s' % (self.args.android_arch,
59+
+ self.args.android_api_level)
60+
+ flags = '-target %s ' % (triple)
6061
+
6162
+ flags += '-resource-dir %s/lib/swift ' % (
6263
+ self.host_install_destdir(host_target) + self.args.install_prefix)
@@ -65,6 +66,7 @@ index 324d1a77eea..e88601a8701 100644
6566
+ flags += '-sdk %s/sysroot ' % (ndk_path)
6667
+ flags += '-tools-directory %s/bin' % (ndk_path)
6768
+ self.cmake_options.define('CMAKE_Swift_FLAGS', flags)
69+
+ self.cmake_options.define('CMAKE_Swift_COMPILER_TARGET', triple)
6870
+ self.cmake_options.define('CMAKE_CXX_COMPILER_WORKS', 'True')
6971
+ self.cmake_options.define('CMAKE_FIND_ROOT_PATH', self.args.cross_compile_deps_path)
7072
+
@@ -83,36 +85,6 @@ index 7f290d16..95366592 100644
8385
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
8486
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
8587
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
86-
diff --git a/swift-corelibs-xctest/cmake/modules/PlatformInfo.cmake b/swift-corelibs-xctest/cmake/modules/PlatformInfo.cmake
87-
index 468dc61..a90ae3d 100644
88-
--- a/swift-corelibs-xctest/cmake/modules/PlatformInfo.cmake
89-
+++ b/swift-corelibs-xctest/cmake/modules/PlatformInfo.cmake
90-
@@ -2,6 +2,10 @@
91-
set(print_target_info_invocation "${CMAKE_Swift_COMPILER}" -print-target-info)
92-
if(CMAKE_Swift_COMPILER_TARGET)
93-
list(APPEND print_target_info_invocation -target ${CMAKE_Swift_COMPILER_TARGET})
94-
+else()
95-
+ set(arg_list ${CMAKE_Swift_FLAGS})
96-
+ separate_arguments(arg_list)
97-
+ list(APPEND print_target_info_invocation ${arg_list})
98-
endif()
99-
execute_process(COMMAND ${print_target_info_invocation} OUTPUT_VARIABLE target_info_json)
100-
message(CONFIGURE_LOG "Swift Target Info: ${print_target_info_invocation}\n"
101-
diff --git a/swift-foundation/cmake/modules/SwiftFoundationSwiftSupport.cmake b/swift-foundation/cmake/modules/SwiftFoundationSwiftSupport.cmake
102-
index cbdfc2a..bb4121d 100644
103-
--- a/swift-foundation/cmake/modules/SwiftFoundationSwiftSupport.cmake
104-
+++ b/swift-foundation/cmake/modules/SwiftFoundationSwiftSupport.cmake
105-
@@ -37,6 +37,10 @@ function(_swift_foundation_install_target module)
106-
set(module_triple_command "${CMAKE_Swift_COMPILER}" -print-target-info)
107-
if(CMAKE_Swift_COMPILER_TARGET)
108-
list(APPEND module_triple_command -target ${CMAKE_Swift_COMPILER_TARGET})
109-
+ else()
110-
+ set(arg_list ${CMAKE_Swift_FLAGS})
111-
+ separate_arguments(arg_list)
112-
+ list(APPEND module_triple_command ${arg_list})
113-
endif()
114-
execute_process(COMMAND ${module_triple_command} OUTPUT_VARIABLE target_info_json)
115-
string(JSON module_triple GET "${target_info_json}" "target" "moduleTriple")
11688
diff --git a/swift-testing/CMakeLists.txt b/swift-testing/CMakeLists.txt
11789
index 1be9a4b..bd7b1bd 100644
11890
--- a/swift-testing/CMakeLists.txt
@@ -125,33 +97,3 @@ index 1be9a4b..bd7b1bd 100644
12597
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
12698
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
12799
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
128-
diff --git a/swift-testing/cmake/modules/PlatformInfo.cmake b/swift-testing/cmake/modules/PlatformInfo.cmake
129-
index 94c60ef..ab8a491 100644
130-
--- a/swift-testing/cmake/modules/PlatformInfo.cmake
131-
+++ b/swift-testing/cmake/modules/PlatformInfo.cmake
132-
@@ -9,6 +9,10 @@
133-
set(print_target_info_invocation "${CMAKE_Swift_COMPILER}" -print-target-info)
134-
if(CMAKE_Swift_COMPILER_TARGET)
135-
list(APPEND print_target_info_invocation -target ${CMAKE_Swift_COMPILER_TARGET})
136-
+else()
137-
+ set(arg_list ${CMAKE_Swift_FLAGS})
138-
+ separate_arguments(arg_list)
139-
+ list(APPEND print_target_info_invocation ${arg_list})
140-
endif()
141-
execute_process(COMMAND ${print_target_info_invocation} OUTPUT_VARIABLE target_info_json)
142-
message(CONFIGURE_LOG "Swift Target Info: ${print_target_info_invocation}\n"
143-
diff --git a/swift-testing/cmake/modules/TargetTriple.cmake b/swift-testing/cmake/modules/TargetTriple.cmake
144-
index e087cc4..02f3a95 100644
145-
--- a/swift-testing/cmake/modules/TargetTriple.cmake
146-
+++ b/swift-testing/cmake/modules/TargetTriple.cmake
147-
@@ -10,6 +10,10 @@
148-
set(SWT_TARGET_INFO_COMMAND "${CMAKE_Swift_COMPILER}" -print-target-info)
149-
if(CMAKE_Swift_COMPILER_TARGET)
150-
list(APPEND SWT_TARGET_INFO_COMMAND -target ${CMAKE_Swift_COMPILER_TARGET})
151-
+else()
152-
+ set(arg_list ${CMAKE_Swift_FLAGS})
153-
+ separate_arguments(arg_list)
154-
+ list(APPEND SWT_TARGET_INFO_COMMAND ${arg_list})
155-
endif()
156-
execute_process(COMMAND ${SWT_TARGET_INFO_COMMAND} OUTPUT_VARIABLE SWT_TARGET_INFO_JSON)
157-
string(JSON SWT_TARGET_TRIPLE GET "${SWT_TARGET_INFO_JSON}" "target" "unversionedTriple")

0 commit comments

Comments
 (0)