1
1
if (NOT DEFINED SWIFT_BUILD_CLANG_OVERLAYS_SKIP_BUILTIN_FLOAT OR NOT SWIFT_BUILD_CLANG_OVERLAYS_SKIP_BUILTIN_FLOAT)
2
+ set (BUILTIN_FLOAT_SOURCES
3
+ linker-support/magic-symbols-for-install -name .c
4
+ )
5
+
6
+ set (BUILTIN_FLOAT_GYB_SOURCES
7
+ float.swift.gyb
8
+ )
9
+
2
10
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
3
11
set (BUILTIN_FLOAT_SWIFT_FLAGS -Xfrontend -module-abi-name -Xfrontend Darwin)
4
12
else ()
@@ -9,10 +17,10 @@ if(NOT DEFINED SWIFT_BUILD_CLANG_OVERLAYS_SKIP_BUILTIN_FLOAT OR NOT SWIFT_BUILD_
9
17
${SWIFT_STDLIB_LIBRARY_BUILD_TYPES}
10
18
IS_SDK_OVERLAY
11
19
12
- linker-support/magic-symbols-for- install - name .c
20
+ ${BUILTIN_FLOAT_SOURCES}
13
21
14
22
GYB_SOURCES
15
- float.swift.gyb
23
+ ${BUILTIN_FLOAT_GYB_SOURCES}
16
24
17
25
SWIFT_COMPILE_FLAGS
18
26
${SWIFT_RUNTIME_SWIFT_COMPILE_FLAGS}
@@ -24,4 +32,47 @@ if(NOT DEFINED SWIFT_BUILD_CLANG_OVERLAYS_SKIP_BUILTIN_FLOAT OR NOT SWIFT_BUILD_
24
32
25
33
INSTALL_IN_COMPONENT stdlib
26
34
MACCATALYST_BUILD_FLAVOR zippered)
35
+
36
+ # Embedded clang overlays - embedded libraries are built as .swiftmodule only,
37
+ # i.e. there is no .o or .a file produced (no binary code is actually produced)
38
+ # and only users of a library are going to actually compile any needed code.
39
+ if (SWIFT_SHOULD_BUILD_EMBEDDED_STDLIB)
40
+ add_custom_target (embedded-builtin_float)
41
+ add_dependencies (embedded-libraries embedded-builtin_float)
42
+
43
+ foreach (entry ${EMBEDDED_STDLIB_TARGET_TRIPLES} )
44
+ string (REGEX REPLACE "[ \t ]+" ";" list "${entry} " )
45
+ list (GET list 0 arch)
46
+ list (GET list 1 mod)
47
+ list (GET list 2 triple)
48
+
49
+ set (SWIFT_SDK_embedded_ARCH_${arch} _MODULE "${mod} " )
50
+ set (SWIFT_SDK_embedded_LIB_SUBDIR "embedded" )
51
+ set (SWIFT_SDK_embedded_ARCH_${arch} _TRIPLE "${triple} " )
52
+ set (SWIFT_SDK_embedded_PATH ${SWIFT_SDK_OSX_PATH} )
53
+ set (SWIFT_SDK_embedded_ARCH_${arch} _PATH ${SWIFT_SDK_OSX_PATH} )
54
+ set (SWIFT_SDK_embedded_USE_ISYSROOT TRUE )
55
+ add_swift_target_library_single(
56
+ embedded-builtin_float-${mod}
57
+ swift_Builtin_float
58
+ ONLY_SWIFTMODULE
59
+ IS_FRAGILE
60
+
61
+ ${BUILTIN_FLOAT_SOURCES}
62
+ GYB_SOURCES
63
+ ${BUILTIN_FLOAT_GYB_SOURCES}
64
+
65
+ SWIFT_COMPILE_FLAGS
66
+ ${BUILTIN_FLOAT_SWIFT_FLAGS}
67
+ -Xcc -ffreestanding -enable-experimental-feature Embedded
68
+
69
+ MODULE_DIR "${CMAKE_BINARY_DIR} /lib/swift/embedded"
70
+ SDK "embedded"
71
+ ARCHITECTURE "${arch} "
72
+ DEPENDS embedded-stdlib-${mod}
73
+ INSTALL_IN_COMPONENT stdlib
74
+ )
75
+ add_dependencies (embedded-builtin_float embedded-builtin_float-${mod} )
76
+ endforeach ()
77
+ endif ()
27
78
endif ()
0 commit comments