diff options
Diffstat (limited to 'tools/build_defs/apple')
-rw-r--r-- | tools/build_defs/apple/swift.bzl | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/tools/build_defs/apple/swift.bzl b/tools/build_defs/apple/swift.bzl index ca7137e1c0..b303b8aea8 100644 --- a/tools/build_defs/apple/swift.bzl +++ b/tools/build_defs/apple/swift.bzl @@ -72,16 +72,21 @@ def _swift_library_impl(ctx): progress_message = ("Compiling Swift module %s (%d files)" % (ctx.label.name, len(ctx.files.srcs)))) + struct_kw = {} + if hasattr(apple_common, 'new_objc_provider'): + struct_kw['objc'] = apple_common.new_objc_provider( + library=set([output_lib] + dep_libs)) + + else: + # TODO(cl/121390911): Remove when this is released. + struct_kw['objc_export'] = struct(library=set([output_lib] + dep_libs)) + return struct( swift=struct( library=output_lib, module=output_module, transitive_libs=dep_libs, - transitive_modules=dep_modules), - objc_export=struct( - library=set([output_lib] + dep_libs), - ) - ) + transitive_modules=dep_modules), **struct_kw) swift_library = rule( _swift_library_impl, |