@@ -4,120 +4,115 @@ foreach(sdk ${SWIFT_SDKS})
44 continue ()
55 endif ()
66
7- foreach (arch ${SWIFT_SDK_${sdk} _ARCHITECTURES})
8- set (arch_suffix "${SWIFT_SDK_${sdk} _LIB_SUBDIR}-${arch} " )
9- set (arch_subdir "${SWIFT_SDK_${sdk} _LIB_SUBDIR}/${arch} " )
7+ set (module_dir "${SWIFTLIB_DIR} /${SWIFT_SDK_${sdk} _LIB_SUBDIR}" )
8+ set (module_dir_static "${SWIFTSTATICLIB_DIR} /${SWIFT_SDK_${sdk} _LIB_SUBDIR}" )
109
11- set (module_dir "${SWIFTLIB_DIR} /${arch_subdir} " )
12- set (module_dir_static "${SWIFTSTATICLIB_DIR} /${arch_subdir} " )
10+ set (libstdcxx_header "libstdcxx.h" )
11+ set (libstdcxx_header_out "${module_dir} /libstdcxx.h" )
12+ set (libstdcxx_header_out_static "${module_dir_static} /libstdcxx.h" )
13+ set (libstdcxx_modulemap "libstdcxx.modulemap" )
14+ set (libstdcxx_modulemap_out "${module_dir} /libstdcxx.modulemap" )
15+ set (libstdcxx_modulemap_out_static "${module_dir_static} /libstdcxx.modulemap" )
1316
14- set (libstdcxx_header "libstdcxx.h" )
15- set (libstdcxx_header_out "${module_dir} /libstdcxx.h" )
16- set (libstdcxx_header_out_static "${module_dir_static} /libstdcxx.h" )
17- set (libstdcxx_modulemap "libstdcxx.modulemap" )
18- set (libstdcxx_modulemap_out "${module_dir} /libstdcxx.modulemap" )
19- set (libstdcxx_modulemap_out_static "${module_dir_static} /libstdcxx.modulemap" )
17+ add_custom_command_target(
18+ copy_libstdcxx_modulemap
19+ COMMAND
20+ "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir}
21+ COMMAND
22+ "${CMAKE_COMMAND} " "-E" "copy_if_different" "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_modulemap} " "${libstdcxx_modulemap_out} "
23+ OUTPUT ${libstdcxx_modulemap_out}
24+ DEPENDS ${libstdcxx_modulemap}
25+ COMMENT "Copying libstdcxx modulemap to resources" )
26+ list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_modulemap} )
27+ add_dependencies (swift-stdlib-${SWIFT_SDK_${sdk} _LIB_SUBDIR} ${copy_libstdcxx_modulemap} )
2028
29+ add_custom_command_target(
30+ copy_libstdcxx_header
31+ COMMAND
32+ "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir}
33+ COMMAND
34+ "${CMAKE_COMMAND} " "-E" "copy_if_different" "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_header} " "${libstdcxx_header_out} "
35+ OUTPUT ${libstdcxx_header_out}
36+ DEPENDS ${libstdcxx_header}
37+ COMMENT "Copying libstdcxx header to resources" )
38+ list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_header} )
39+ add_dependencies (swift-stdlib-${SWIFT_SDK_${sdk} _LIB_SUBDIR} ${copy_libstdcxx_header} )
40+
41+ if (SWIFT_BUILD_STATIC_STDLIB)
2142 add_custom_command_target(
22- copy_libstdcxx_modulemap
43+ copy_libstdcxx_modulemap_static
2344 COMMAND
24- "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir }
45+ "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir_static }
2546 COMMAND
26- "${CMAKE_COMMAND} " "-E" "copy_if_different" "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_modulemap} " "${libstdcxx_modulemap_out} "
27- OUTPUT ${libstdcxx_modulemap_out}
28- DEPENDS ${libstdcxx_modulemap}
29- COMMENT "Copying libstdcxx modulemap to resources" )
30- list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_modulemap} )
31- add_dependencies (swift-stdlib-${arch_suffix} ${copy_libstdcxx_modulemap} )
47+ "${CMAKE_COMMAND} " "-E" "copy_if_different"
48+ "${libstdcxx_modulemap_out} " "${libstdcxx_modulemap_out_static} "
49+ OUTPUT ${libstdcxx_modulemap_out_static}
50+ DEPENDS ${copy_libstdcxx_modulemap}
51+ COMMENT "Copying libstdcxx modulemap to static resources" )
52+ list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_modulemap_static} )
53+ add_dependencies (swift-stdlib-${SWIFT_SDK_${sdk} _LIB_SUBDIR} ${copy_libstdcxx_modulemap_static} )
3254
3355 add_custom_command_target(
34- copy_libstdcxx_header
56+ copy_libstdcxx_header_static
3557 COMMAND
36- "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir }
58+ "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir_static }
3759 COMMAND
38- "${CMAKE_COMMAND} " "-E" "copy_if_different" "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_header} " "${libstdcxx_header_out} "
39- OUTPUT ${libstdcxx_header_out}
40- DEPENDS ${libstdcxx_header}
41- COMMENT "Copying libstdcxx header to resources" )
42- list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_header} )
43- add_dependencies (swift-stdlib-${arch_suffix} ${copy_libstdcxx_header} )
44-
45- if (SWIFT_BUILD_STATIC_STDLIB)
46- add_custom_command_target(
47- copy_libstdcxx_modulemap_static
48- COMMAND
49- "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir_static}
50- COMMAND
51- "${CMAKE_COMMAND} " "-E" "copy_if_different"
52- "${libstdcxx_modulemap_out} " "${libstdcxx_modulemap_out_static} "
53- OUTPUT ${libstdcxx_modulemap_out_static}
54- DEPENDS ${copy_libstdcxx_modulemap}
55- COMMENT "Copying libstdcxx modulemap to static resources" )
56- list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_modulemap_static} )
57- add_dependencies (swift-stdlib-${arch_suffix} ${copy_libstdcxx_modulemap_static} )
60+ "${CMAKE_COMMAND} " "-E" "copy_if_different"
61+ "${libstdcxx_header_out} " "${libstdcxx_header_out_static} "
62+ OUTPUT ${libstdcxx_header_out_static}
63+ DEPENDS ${copy_libstdcxx_header}
64+ COMMENT "Copying libstdcxx header to static resources" )
65+ list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_header_static} )
66+ add_dependencies (swift-stdlib-${SWIFT_SDK_${sdk} _LIB_SUBDIR} ${copy_libstdcxx_header_static} )
67+ endif ()
5868
59- add_custom_command_target(
60- copy_libstdcxx_header_static
61- COMMAND
62- "${CMAKE_COMMAND} " "-E" "make_directory" ${module_dir_static}
63- COMMAND
64- "${CMAKE_COMMAND} " "-E" "copy_if_different"
65- "${libstdcxx_header_out} " "${libstdcxx_header_out_static} "
66- OUTPUT ${libstdcxx_header_out_static}
67- DEPENDS ${copy_libstdcxx_header}
68- COMMENT "Copying libstdcxx header to static resources" )
69- list (APPEND libstdcxx_modulemap_target_list ${copy_libstdcxx_header_static} )
70- add_dependencies (swift-stdlib-${arch_suffix} ${copy_libstdcxx_header_static} )
71- endif ()
69+ swift_install_in_component(FILES "${libstdcxx_modulemap_out} "
70+ DESTINATION "lib/swift/${SWIFT_SDK_${sdk} _LIB_SUBDIR}"
71+ COMPONENT sdk-overlay)
72+ swift_install_in_component(FILES "${libstdcxx_header_out} "
73+ DESTINATION "lib/swift/${SWIFT_SDK_${sdk} _LIB_SUBDIR}"
74+ COMPONENT sdk-overlay)
7275
73- swift_install_in_component(FILES "${libstdcxx_modulemap_out} "
74- DESTINATION "lib/swift/${arch_subdir} "
76+ if (SWIFT_BUILD_STATIC_STDLIB)
77+ swift_install_in_component(FILES "${libstdcxx_modulemap_out_static} "
78+ DESTINATION "lib/swift_static/${SWIFT_SDK_${sdk} _LIB_SUBDIR}"
7579 COMPONENT sdk-overlay)
76- swift_install_in_component(FILES "${libstdcxx_header_out } "
77- DESTINATION "lib/swift /${arch_subdir } "
80+ swift_install_in_component(FILES "${libstdcxx_header_out_static } "
81+ DESTINATION "lib/swift_static /${SWIFT_SDK_ ${sdk} _LIB_SUBDIR }"
7882 COMPONENT sdk-overlay)
83+ endif ()
7984
80- if (SWIFT_BUILD_STATIC_STDLIB)
81- swift_install_in_component(FILES "${libstdcxx_modulemap_out_static} "
82- DESTINATION "lib/swift_static/${arch_subdir} "
83- COMPONENT sdk-overlay)
84- swift_install_in_component(FILES "${libstdcxx_header_out_static} "
85- DESTINATION "lib/swift_static/${arch_subdir} "
86- COMPONENT sdk-overlay)
87- endif ()
88-
89- if (${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*" )
90- foreach (bootstrapping "0" "1" )
91- get_bootstrapping_path(bootstrapping_dir ${module_dir} ${bootstrapping} )
92- set (libstdcxx_modulemap_out_bootstrapping "${bootstrapping_dir} /libstdcxx.modulemap" )
93- set (libstdcxx_header_out_bootstrapping "${bootstrapping_dir} /libstdcxx.h" )
85+ if (${BOOTSTRAPPING_MODE} MATCHES "BOOTSTRAPPING.*" )
86+ foreach (bootstrapping "0" "1" )
87+ get_bootstrapping_path(bootstrapping_dir ${module_dir} ${bootstrapping} )
88+ set (libstdcxx_modulemap_out_bootstrapping "${bootstrapping_dir} /libstdcxx.modulemap" )
89+ set (libstdcxx_header_out_bootstrapping "${bootstrapping_dir} /libstdcxx.h" )
9490
95- add_custom_command_target(unused_var
96- COMMAND
97- "${CMAKE_COMMAND} " "-E" "make_directory" "${bootstrapping_dir} "
98- COMMAND
99- "${CMAKE_COMMAND} " "-E" "copy_if_different"
100- "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_modulemap} " "${libstdcxx_modulemap_out_bootstrapping} "
91+ add_custom_command_target(unused_var
92+ COMMAND
93+ "${CMAKE_COMMAND} " "-E" "make_directory" "${bootstrapping_dir} "
94+ COMMAND
95+ "${CMAKE_COMMAND} " "-E" "copy_if_different"
96+ "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_modulemap} " "${libstdcxx_modulemap_out_bootstrapping} "
10197
102- CUSTOM_TARGET_NAME "copy-libstdcxx-modulemap-bootstrapping${bootstrapping} "
103- OUTPUT "${libstdcxx_modulemap_out_bootstrapping} "
104- DEPENDS ${libstdcxx_modulemap}
105- COMMENT "Copying libstdcxx modulemap to resources for bootstrapping${bootstrapping} " )
98+ CUSTOM_TARGET_NAME "copy-libstdcxx-modulemap-bootstrapping${bootstrapping} "
99+ OUTPUT "${libstdcxx_modulemap_out_bootstrapping} "
100+ DEPENDS ${libstdcxx_modulemap}
101+ COMMENT "Copying libstdcxx modulemap to resources for bootstrapping${bootstrapping} " )
106102
107- add_custom_command_target(unused_var
108- COMMAND
109- "${CMAKE_COMMAND} " "-E" "make_directory" "${bootstrapping_dir} "
110- COMMAND
111- "${CMAKE_COMMAND} " "-E" "copy_if_different"
112- "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_header} " "${libstdcxx_header_out_bootstrapping} "
103+ add_custom_command_target(unused_var
104+ COMMAND
105+ "${CMAKE_COMMAND} " "-E" "make_directory" "${bootstrapping_dir} "
106+ COMMAND
107+ "${CMAKE_COMMAND} " "-E" "copy_if_different"
108+ "${CMAKE_CURRENT_SOURCE_DIR} /${libstdcxx_header} " "${libstdcxx_header_out_bootstrapping} "
113109
114- CUSTOM_TARGET_NAME "copy-libstdcxx-header-bootstrapping${bootstrapping} "
115- OUTPUT "${libstdcxx_header_out_bootstrapping} "
116- DEPENDS ${libstdcxx_header}
117- COMMENT "Copying libstdcxx header to resources for bootstrapping${bootstrapping} " )
118- endforeach ()
119- endif ()
120- endforeach ()
110+ CUSTOM_TARGET_NAME "copy-libstdcxx-header-bootstrapping${bootstrapping} "
111+ OUTPUT "${libstdcxx_header_out_bootstrapping} "
112+ DEPENDS ${libstdcxx_header}
113+ COMMENT "Copying libstdcxx header to resources for bootstrapping${bootstrapping} " )
114+ endforeach ()
115+ endif ()
121116endforeach ()
122117add_custom_target (libstdcxx-modulemap DEPENDS ${libstdcxx_modulemap_target_list} )
123118set_property (TARGET libstdcxx-modulemap PROPERTY FOLDER "Miscellaneous" )
0 commit comments