mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Merge pull request #72590 from edymtt/edymtt/no-darwin-binary-swiftmodule-in-toolchain
Do not install binary swiftmodule for Darwin
This commit is contained in:
@@ -791,7 +791,8 @@ function(add_swift_target_library_single target name)
|
||||
BACK_DEPLOYMENT_LIBRARY
|
||||
ENABLE_LTO
|
||||
MODULE_DIR
|
||||
BOOTSTRAPPING)
|
||||
BOOTSTRAPPING
|
||||
INSTALL_BINARY_SWIFTMODULE)
|
||||
set(SWIFTLIB_SINGLE_multiple_parameter_options
|
||||
C_COMPILE_FLAGS
|
||||
DEPENDS
|
||||
@@ -852,6 +853,10 @@ function(add_swift_target_library_single target name)
|
||||
"Either SHARED, STATIC, or OBJECT_LIBRARY must be specified")
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED SWIFTLIB_INSTALL_BINARY_SWIFTMODULE)
|
||||
set(SWIFTLIB_INSTALL_BINARY_SWIFTMODULE TRUE)
|
||||
endif()
|
||||
|
||||
# Determine the subdirectory where this library will be installed.
|
||||
set(SWIFTLIB_SINGLE_SUBDIR
|
||||
"${SWIFT_SDK_${SWIFTLIB_SINGLE_SDK}_LIB_SUBDIR}/${SWIFTLIB_SINGLE_ARCHITECTURE}")
|
||||
@@ -1010,7 +1015,8 @@ function(add_swift_target_library_single target name)
|
||||
DEPLOYMENT_VERSION_TVOS ${SWIFTLIB_SINGLE_DEPLOYMENT_VERSION_TVOS}
|
||||
DEPLOYMENT_VERSION_WATCHOS ${SWIFTLIB_SINGLE_DEPLOYMENT_VERSION_WATCHOS}
|
||||
MACCATALYST_BUILD_FLAVOR "${SWIFTLIB_SINGLE_MACCATALYST_BUILD_FLAVOR}"
|
||||
${BOOTSTRAPPING_arg})
|
||||
${BOOTSTRAPPING_arg}
|
||||
INSTALL_BINARY_SWIFTMODULE ${SWIFTLIB_INSTALL_BINARY_SWIFTMODULE})
|
||||
add_swift_source_group("${SWIFTLIB_SINGLE_EXTERNAL_SOURCES}")
|
||||
|
||||
# If there were any swift sources, then a .swiftmodule may have been created.
|
||||
@@ -1801,6 +1807,7 @@ function(add_swift_target_library name)
|
||||
DEPLOYMENT_VERSION_TVOS
|
||||
DEPLOYMENT_VERSION_WATCHOS
|
||||
INSTALL_IN_COMPONENT
|
||||
INSTALL_BINARY_SWIFTMODULE
|
||||
DARWIN_INSTALL_NAME_DIR
|
||||
DEPLOYMENT_VERSION_MACCATALYST
|
||||
MACCATALYST_BUILD_FLAVOR
|
||||
@@ -1925,6 +1932,10 @@ function(add_swift_target_library name)
|
||||
list(APPEND SWIFTLIB_SWIFT_COMPILE_FLAGS "-Xfrontend;-enable-lexical-lifetimes=false")
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED SWIFTLIB_INSTALL_BINARY_SWIFTMODULE)
|
||||
set(SWIFTLIB_INSTALL_BINARY_SWIFTMODULE TRUE)
|
||||
endif()
|
||||
|
||||
if(NOT SWIFT_BUILD_RUNTIME_WITH_HOST_COMPILER AND NOT BUILD_STANDALONE AND
|
||||
NOT SWIFT_PREBUILT_CLANG AND NOT SWIFTLIB_IS_SWIFT_ONLY)
|
||||
list(APPEND SWIFTLIB_DEPENDS clang)
|
||||
@@ -2320,6 +2331,7 @@ function(add_swift_target_library name)
|
||||
ENABLE_LTO "${SWIFT_STDLIB_ENABLE_LTO}"
|
||||
GYB_SOURCES ${SWIFTLIB_GYB_SOURCES}
|
||||
PREFIX_INCLUDE_DIRS ${SWIFTLIB_PREFIX_INCLUDE_DIRS}
|
||||
INSTALL_BINARY_SWIFTMODULE ${SWIFTLIB_INSTALL_BINARY_SWIFTMODULE}
|
||||
)
|
||||
if(NOT SWIFT_BUILT_STANDALONE AND NOT "${CMAKE_C_COMPILER_ID}" MATCHES "Clang")
|
||||
add_dependencies(${VARIANT_NAME} clang)
|
||||
|
||||
@@ -50,7 +50,7 @@ function(handle_swift_sources
|
||||
sourcesvar externalvar name)
|
||||
cmake_parse_arguments(SWIFTSOURCES
|
||||
"IS_MAIN;IS_STDLIB;IS_STDLIB_CORE;IS_SDK_OVERLAY;EMBED_BITCODE;STATIC;NO_LINK_NAME;IS_FRAGILE;ONLY_SWIFTMODULE"
|
||||
"SDK;ARCHITECTURE;INSTALL_IN_COMPONENT;DEPLOYMENT_VERSION_OSX;DEPLOYMENT_VERSION_IOS;DEPLOYMENT_VERSION_TVOS;DEPLOYMENT_VERSION_WATCHOS;MACCATALYST_BUILD_FLAVOR;BOOTSTRAPPING"
|
||||
"SDK;ARCHITECTURE;INSTALL_IN_COMPONENT;DEPLOYMENT_VERSION_OSX;DEPLOYMENT_VERSION_IOS;DEPLOYMENT_VERSION_TVOS;DEPLOYMENT_VERSION_WATCHOS;MACCATALYST_BUILD_FLAVOR;BOOTSTRAPPING;INSTALL_BINARY_SWIFTMODULE"
|
||||
"DEPENDS;COMPILE_FLAGS;MODULE_NAME;MODULE_DIR;ENABLE_LTO"
|
||||
${ARGN})
|
||||
translate_flag(${SWIFTSOURCES_IS_MAIN} "IS_MAIN" IS_MAIN_arg)
|
||||
@@ -74,6 +74,10 @@ function(handle_swift_sources
|
||||
set(SWIFTSOURCES_INSTALL_IN_COMPONENT never_install)
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED SWIFTSOURCES_INSTALL_BINARY_SWIFTMODULE)
|
||||
set(SWIFTSOURCES_INSTALL_BINARY_SWIFTMODULE TRUE)
|
||||
endif()
|
||||
|
||||
# Check arguments.
|
||||
precondition(SWIFTSOURCES_SDK "Should specify an SDK")
|
||||
precondition(SWIFTSOURCES_ARCHITECTURE "Should specify an architecture")
|
||||
@@ -157,6 +161,7 @@ function(handle_swift_sources
|
||||
${BOOTSTRAPPING_arg}
|
||||
${IS_FRAGILE_arg}
|
||||
${ONLY_SWIFTMODULE_arg}
|
||||
INSTALL_BINARY_SWIFTMODULE ${SWIFTSOURCES_INSTALL_BINARY_SWIFTMODULE}
|
||||
INSTALL_IN_COMPONENT "${SWIFTSOURCES_INSTALL_IN_COMPONENT}"
|
||||
DEPLOYMENT_VERSION_OSX ${SWIFTSOURCES_DEPLOYMENT_VERSION_OSX}
|
||||
DEPLOYMENT_VERSION_IOS ${SWIFTSOURCES_DEPLOYMENT_VERSION_IOS}
|
||||
@@ -411,10 +416,14 @@ function(_compile_swift_files
|
||||
dependency_sibgen_target_out_var_name)
|
||||
cmake_parse_arguments(SWIFTFILE
|
||||
"IS_MAIN;IS_STDLIB;IS_STDLIB_CORE;IS_SDK_OVERLAY;EMBED_BITCODE;STATIC;IS_FRAGILE;ONLY_SWIFTMODULE"
|
||||
"OUTPUT;MODULE_NAME;INSTALL_IN_COMPONENT;DEPLOYMENT_VERSION_OSX;DEPLOYMENT_VERSION_IOS;DEPLOYMENT_VERSION_TVOS;DEPLOYMENT_VERSION_WATCHOS;MACCATALYST_BUILD_FLAVOR;BOOTSTRAPPING"
|
||||
"OUTPUT;MODULE_NAME;INSTALL_IN_COMPONENT;DEPLOYMENT_VERSION_OSX;DEPLOYMENT_VERSION_IOS;DEPLOYMENT_VERSION_TVOS;DEPLOYMENT_VERSION_WATCHOS;MACCATALYST_BUILD_FLAVOR;BOOTSTRAPPING;INSTALL_BINARY_SWIFTMODULE"
|
||||
"SOURCES;FLAGS;DEPENDS;SDK;ARCHITECTURE;OPT_FLAGS;MODULE_DIR"
|
||||
${ARGN})
|
||||
|
||||
if(NOT DEFINED SWIFTFILE_INSTALL_BINARY_SWIFTMODULE)
|
||||
set(SWIFTFILE_INSTALL_BINARY_SWIFTMODULE TRUE)
|
||||
endif()
|
||||
|
||||
# Check arguments.
|
||||
list(LENGTH SWIFTFILE_OUTPUT num_outputs)
|
||||
list(GET SWIFTFILE_OUTPUT 0 first_output)
|
||||
@@ -721,20 +730,11 @@ function(_compile_swift_files
|
||||
list(APPEND module_outputs "${interface_file}" "${private_interface_file}")
|
||||
endif()
|
||||
|
||||
set(optional_arg)
|
||||
if(SWIFTFILE_SDK IN_LIST SWIFT_DARWIN_PLATFORMS OR
|
||||
SWIFTFILE_SDK STREQUAL "MACCATALYST")
|
||||
# Allow installation of stdlib without building all variants on Darwin.
|
||||
set(optional_arg "OPTIONAL")
|
||||
endif()
|
||||
|
||||
swift_install_in_component(DIRECTORY "${specific_module_dir}"
|
||||
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${library_subdir}"
|
||||
COMPONENT "${SWIFTFILE_INSTALL_IN_COMPONENT}")
|
||||
if(SWIFTFILE_STATIC)
|
||||
swift_install_in_component(DIRECTORY "${specific_module_dir_static}"
|
||||
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift_static/${library_subdir}"
|
||||
COMPONENT "${SWIFTFILE_INSTALL_IN_COMPONENT}")
|
||||
set(exclude_binary_swiftmodule_installation_args "")
|
||||
if(NOT SWIFTFILE_INSTALL_BINARY_SWIFTMODULE)
|
||||
list(APPEND
|
||||
exclude_binary_swiftmodule_installation_args
|
||||
"REGEX" "${SWIFTFILE_MODULE_NAME}.swiftmodule/[^/]*\\.swiftmodule$" EXCLUDE)
|
||||
endif()
|
||||
|
||||
# macCatalyst zippered module setup
|
||||
@@ -778,7 +778,9 @@ function(_compile_swift_files
|
||||
swift_install_in_component(DIRECTORY ${maccatalyst_specific_module_dir}
|
||||
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${maccatalyst_library_subdir}"
|
||||
COMPONENT "${SWIFTFILE_INSTALL_IN_COMPONENT}"
|
||||
"${optional_arg}")
|
||||
OPTIONAL
|
||||
PATTERN "Project" EXCLUDE
|
||||
${exclude_binary_swiftmodule_installation_args})
|
||||
endif()
|
||||
|
||||
# If we have extra regexp flags, check if we match any of the regexps. If so
|
||||
@@ -806,14 +808,16 @@ function(_compile_swift_files
|
||||
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift/${library_subdir}"
|
||||
COMPONENT "${SWIFTFILE_INSTALL_IN_COMPONENT}"
|
||||
OPTIONAL
|
||||
PATTERN "Project" EXCLUDE)
|
||||
PATTERN "Project" EXCLUDE
|
||||
${exclude_binary_swiftmodule_installation_args})
|
||||
|
||||
if(SWIFTFILE_STATIC)
|
||||
swift_install_in_component(DIRECTORY "${specific_module_dir_static}"
|
||||
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}/swift_static/${library_subdir}"
|
||||
COMPONENT "${SWIFTFILE_INSTALL_IN_COMPONENT}"
|
||||
OPTIONAL
|
||||
PATTERN "Project" EXCLUDE)
|
||||
PATTERN "Project" EXCLUDE
|
||||
${exclude_binary_swiftmodule_installation_args})
|
||||
endif()
|
||||
|
||||
set(line_directive_tool "${SWIFT_SOURCE_DIR}/utils/line-directive")
|
||||
|
||||
@@ -75,7 +75,8 @@ add_swift_target_library(swiftDarwin ${SWIFT_STDLIB_LIBRARY_BUILD_TYPES}
|
||||
${swiftDarwin_common_options}
|
||||
TARGET_SDKS "${swiftDarwin_target_sdks}"
|
||||
INSTALL_IN_COMPONENT sdk-overlay
|
||||
MACCATALYST_BUILD_FLAVOR "zippered")
|
||||
MACCATALYST_BUILD_FLAVOR "zippered"
|
||||
INSTALL_BINARY_SWIFTMODULE FALSE)
|
||||
|
||||
if(SWIFT_SHOULD_BUILD_EMBEDDED_STDLIB)
|
||||
set(SWIFT_ENABLE_REFLECTION OFF)
|
||||
|
||||
Reference in New Issue
Block a user