File tree Expand file tree Collapse file tree 9 files changed +73
-68
lines changed Expand file tree Collapse file tree 9 files changed +73
-68
lines changed Original file line number Diff line number Diff line change @@ -43,23 +43,16 @@ set(CMAKE_VISIBILITY_INLINES_HIDDEN YES)
43
43
set (CMAKE_POSITION_INDEPENDENT_CODE YES )
44
44
45
45
set (SwiftCore_CMAKE_MODULES_DIR "${CMAKE_SOURCE_DIR} /cmake/modules" )
46
- list (APPEND CMAKE_MODULE_PATH ${SwiftCore_CMAKE_MODULES_DIR} )
46
+ list (APPEND CMAKE_MODULE_PATH
47
+ ${SwiftCore_CMAKE_MODULES_DIR}
48
+ "${CMAKE_SOURCE_DIR} /../cmake/modules" )
47
49
48
50
include (CMakeWorkarounds)
49
- # NOTE: always use the 3-component style as the expansion as
50
- # `${PROJECT_VERSION}` will not extend this to the complete form and this can
51
- # change the behaviour for comparison with non-SemVer compliant parsing. If
52
- # possible, use the 4-version component as that is used to differentiate the
53
- # builds of the runtime for Windows.
54
- if ($ENV{BUILD_NUMBER} )
55
- # NOTE: SxS modules have a limit on each component being [0-65535].
56
- # https://learn.microsoft.com/en-us/windows/win32/sbscs/assembly-versions
57
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
58
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
59
- endif ()
51
+
52
+ include (SwiftProjectVersion)
60
53
project (SwiftCore
61
54
LANGUAGES C CXX Swift
62
- VERSION 6.3.0 ${BUILD_NUMBER } )
55
+ VERSION ${SWIFT_RUNTIME_VERSION } )
63
56
64
57
# The Swift standard library is not intended for use as a sub-library as part of
65
58
# another project. It is tightly coupled with the compiler version.
Original file line number Diff line number Diff line change @@ -10,26 +10,18 @@ set(CMAKE_C_VISIBILITY_PRESET "hidden")
10
10
set (CMAKE_CXX_VISIBILITY_PRESET "hidden" )
11
11
set (CMAKE_VISIBILITY_INLINES_HIDDEN YES )
12
12
13
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /cmake/modules" )
13
+ list (APPEND CMAKE_MODULE_PATH
14
+ "${CMAKE_SOURCE_DIR} /cmake/modules"
15
+ "${CMAKE_SOURCE_DIR} /../cmake/modules" )
14
16
15
17
if (POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
16
18
cmake_policy (SET CMP0157 OLD)
17
19
endif ()
18
20
19
- # NOTE: always use the 3-component style as the expansion as
20
- # `${PROJECT_VERSION}` will not extend this to the complete form and this can
21
- # change the behaviour for comparison with non-SemVer compliant parsing. If
22
- # possible, use the 4-version component as that is used to differentiate the
23
- # builds of the runtime for Windows.
24
- if ($ENV{BUILD_NUMBER} )
25
- # NOTE: SxS modules have a limit on each component being [0-65535].
26
- # https://learn.microsoft.com/en-us/windows/win32/sbscs/assembly-versions
27
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
28
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
29
- endif ()
21
+ include (SwiftProjectVersion)
30
22
project (SwiftOverlay
31
23
LANGUAGES C CXX Swift
32
- VERSION 6.3.0 ${BUILD_NUMBER } )
24
+ VERSION ${SWIFT_RUNTIME_VERSION } )
33
25
34
26
set (CMAKE_Swift_LANGUAGE_VERSION 5)
35
27
Original file line number Diff line number Diff line change @@ -9,13 +9,14 @@ if(POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
9
9
cmake_policy (SET CMP0157 OLD)
10
10
endif ()
11
11
12
- if ($ENV{BUILD_NUMBER} )
13
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
14
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
15
- endif ()
12
+ list (APPEND CMAKE_MODULE_PATH
13
+ "${CMAKE_SOURCE_DIR} /../cmake/modules"
14
+ "${CMAKE_SOURCE_DIR} /../../cmake/modules" )
15
+
16
+ include (SwiftProjectVersion)
16
17
project (SwiftDifferentiation
17
18
LANGUAGES Swift C
18
- VERSION 6.3.0 ${BUILD_NUMBER } )
19
+ VERSION ${SWIFT_RUNTIME_VERSION } )
19
20
20
21
if (NOT PROJECT_IS_TOP_LEVEL)
21
22
message (SEND_ERROR "Swift Differentiation must build as a standalone project" )
@@ -24,8 +25,6 @@ endif()
24
25
set (CMAKE_POSITION_INDEPENDENT_CODE YES )
25
26
set (CMAKE_Swift_LANGUAGE_VERSION 5)
26
27
27
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /../cmake/modules" )
28
-
29
28
set (${PROJECT_NAME} _SWIFTC_SOURCE_DIR
30
29
"${PROJECT_SOURCE_DIR} /../../../"
31
30
CACHE FILEPATH "Path to the root source directory of the Swift compiler" )
Original file line number Diff line number Diff line change @@ -9,13 +9,14 @@ if(POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
9
9
cmake_policy (SET CMP0157 OLD)
10
10
endif ()
11
11
12
- if ($ENV{BUILD_NUMBER} )
13
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
14
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
15
- endif ()
12
+ list (APPEND CMAKE_MODULE_PATH
13
+ "${CMAKE_SOURCE_DIR} /../cmake/modules"
14
+ "${CMAKE_SOURCE_DIR} /../../cmake/modules" )
15
+
16
+ include (SwiftProjectVersion)
16
17
project (SwiftDistributed
17
18
LANGUAGES C CXX Swift
18
- VERSION 6.3.0 ${BUILD_NUMBER } )
19
+ VERSION ${SWIFT_RUNTIME_VERSION } )
19
20
20
21
if (NOT PROJECT_IS_TOP_LEVEL)
21
22
message (SEND_ERROR "Swift Distributed must build as a standalone project" )
@@ -34,8 +35,6 @@ set(CMAKE_CXX_VISIBILITY_PRESET "hidden")
34
35
35
36
set (CMAKE_VISIBILITY_INLINES_HIDDEN YES )
36
37
37
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /../cmake/modules" )
38
-
39
38
set (${PROJECT_NAME} _SWIFTC_SOURCE_DIR
40
39
"${PROJECT_SOURCE_DIR} /../../../"
41
40
CACHE FILEPATH "Path to the root source directory of the Swift compiler" )
Original file line number Diff line number Diff line change @@ -9,13 +9,14 @@ if(POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
9
9
cmake_policy (SET CMP0157 OLD)
10
10
endif ()
11
11
12
- if ($ENV{BUILD_NUMBER} )
13
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
14
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
15
- endif ()
12
+ list (APPEND CMAKE_MODULE_PATH
13
+ "${CMAKE_SOURCE_DIR} /../cmake/modules"
14
+ "${CMAKE_SOURCE_DIR} /../../cmake/modules" )
15
+
16
+ include (SwiftProjectVersion)
16
17
project (SwiftObservation
17
18
LANGUAGES Swift CXX
18
- VERSION 6.3.0 ${BUILD_NUMBER } )
19
+ VERSION ${SWIFT_RUNTIME_VERSION } )
19
20
20
21
if (NOT PROJECT_IS_TOP_LEVEL)
21
22
message (SEND_ERROR "Swift Observation must build as a standalone project" )
@@ -26,8 +27,6 @@ set(CMAKE_CXX_STANDARD_REQUIRED YES)
26
27
set (CMAKE_CXX_EXTENSIONS NO )
27
28
set (CMAKE_POSITION_INDEPENDENT_CODE YES )
28
29
29
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /../cmake/modules" )
30
-
31
30
set (${PROJECT_NAME} _SWIFTC_SOURCE_DIR
32
31
"${PROJECT_SOURCE_DIR} /../../../"
33
32
CACHE FILEPATH "Path to the root source directory of the Swift compiler" )
Original file line number Diff line number Diff line change @@ -9,22 +9,22 @@ if(POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
9
9
cmake_policy (SET CMP0157 OLD)
10
10
endif ()
11
11
12
- if ($ENV{BUILD_NUMBER} )
13
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
14
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
15
- endif ()
12
+
13
+ list (APPEND CMAKE_MODULE_PATH
14
+ "${CMAKE_SOURCE_DIR} /../cmake/modules"
15
+ "${CMAKE_SOURCE_DIR} /../../cmake/modules" )
16
+
17
+ include (SwiftProjectVersion)
16
18
project (SwiftStringProcessing
17
19
LANGUAGES Swift C
18
- VERSION 6.3.0 ${BUILD_NUMBER } )
20
+ VERSION ${SWIFT_RUNTIME_VERSION } )
19
21
20
22
if (NOT PROJECT_IS_TOP_LEVEL)
21
23
message (FATAL_ERROR "Swift StringProcessing must build as a standalone project" )
22
24
endif ()
23
25
24
26
set (CMAKE_POSITION_INDEPENDENT_CODE YES )
25
27
26
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /../cmake/modules" )
27
-
28
28
set (${PROJECT_NAME} _SWIFTC_SOURCE_DIR
29
29
"${PROJECT_SOURCE_DIR} /../../../"
30
30
CACHE FILEPATH "Path to the root source directory of the Swift compiler" )
Original file line number Diff line number Diff line change @@ -9,13 +9,15 @@ if(POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
9
9
cmake_policy (SET CMP0157 OLD)
10
10
endif ()
11
11
12
- if ($ENV{BUILD_NUMBER} )
13
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
14
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
15
- endif ()
12
+ list (APPEND CMAKE_MODULE_PATH
13
+ "${CMAKE_SOURCE_DIR} /../cmake/modules"
14
+ "${CMAKE_SOURCE_DIR} /../../cmake/modules" )
15
+
16
+ include (SwiftProjectVersion)
16
17
project (SwiftSynchronization
17
18
LANGUAGES Swift
18
- VERSION 6.3.0${BUILD_NUMBER} )
19
+ VERSION ${SWIFT_RUNTIME_VERSION} )
20
+
19
21
# FIXME(compnerd) this is a workaround for `GNUInstallDirs` which cannot be used
20
22
# with a pure Swift project.
21
23
enable_language (C)
@@ -26,8 +28,6 @@ endif()
26
28
27
29
set (CMAKE_POSITION_INDEPENDENT_CODE YES )
28
30
29
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /../cmake/modules" )
30
-
31
31
set (${PROJECT_NAME} _SWIFTC_SOURCE_DIR
32
32
"${PROJECT_SOURCE_DIR} /../../../"
33
33
CACHE FILEPATH "Path to the root source directory of the Swift compiler" )
Original file line number Diff line number Diff line change @@ -9,13 +9,15 @@ if(POLICY CMP0157 AND CMAKE_Swift_COMPILER_USE_OLD_DRIVER)
9
9
cmake_policy (SET CMP0157 OLD)
10
10
endif ()
11
11
12
- if ($ENV{BUILD_NUMBER} )
13
- math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
14
- set (BUILD_NUMBER ".${BUILD_NUMBER} " )
15
- endif ()
12
+ list (APPEND CMAKE_MODULE_PATH
13
+ "${CMAKE_SOURCE_DIR} /../cmake/modules"
14
+ "${CMAKE_SOURCE_DIR} /../../cmake/modules" )
15
+
16
+ include (SwiftProjectVersion)
16
17
project (SwiftVolatile
17
18
LANGUAGES Swift
18
- VERSION 6.3.0${BUILD_NUMBER} )
19
+ VERSION ${SWIFT_RUNTIME_VERSION} )
20
+
19
21
# FIXME(compnerd) this is a workaround for `GNUInstallDirs` which cannot be used
20
22
# with a pure Swift project.
21
23
enable_language (C)
@@ -24,8 +26,6 @@ if(NOT PROJECT_IS_TOP_LEVEL)
24
26
message (SEND_ERROR "Swift Observation must build as a standalone project" )
25
27
endif ()
26
28
27
- list (APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR} /../cmake/modules" )
28
-
29
29
set (${PROJECT_NAME} _SWIFTC_SOURCE_DIR
30
30
"${PROJECT_SOURCE_DIR} /../../../"
31
31
CACHE FILEPATH "Path to the root source directory of the Swift compiler" )
Original file line number Diff line number Diff line change
1
+ # This module sets the Swift version number variable consistently across the
2
+ # Swift runtime projects.
3
+
4
+ ## Result Variable
5
+ #
6
+ # ``SWIFT_RUNTIME_VERSION``
7
+ # The computed version number applied to apply to the project.
8
+ # If ``SWIFT_RUNTIME_VERSION`` is set prior to entering the module, the version
9
+ # is not modified.
10
+
11
+ block(PROPAGATE SWIFT_RUNTIME_VERSION)
12
+ if (SWIFT_RUNTIME_VERSION)
13
+ return ()
14
+ endif ()
15
+
16
+ if ($ENV{BUILD_NUMBER} )
17
+ # Microsoft build numbers limit each version number component to [0 - 65535]
18
+ # https://learn.microsoft.com/en-us/windows/win32/sbscs/assembly-versions
19
+ math (EXPR BUILD_NUMBER "$ENV{BUILD_NUMBER} % 65535" )
20
+ set (BUILD_NUMBER ".${BUILD_NUMBER} " )
21
+ endif ()
22
+ set (SWIFT_RUNTIME_VERSION 6.3.0${BUILD_NUMBER} )
23
+ endblock()
You can’t perform that action at this time.
0 commit comments