diff options
author | Donald Duo Zhao <deltazulu@google.com> | 2023-01-31 18:36:34 -0800 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2023-01-31 18:37:02 -0800 |
commit | d4152447033c5a5d1b52092b753814cce46723ef (patch) | |
tree | 0c4e89e07dc9deab43652fca8d19b3ce296e87e8 /kotlin | |
parent | 75ad32977c3e7bedccba78ca312482cf613a55c5 (diff) | |
download | bazelbuild-kotlin-rules-d4152447033c5a5d1b52092b753814cce46723ef.tar.gz |
NONE
PiperOrigin-RevId: 506173856
Diffstat (limited to 'kotlin')
-rw-r--r-- | kotlin/common.bzl | 10 | ||||
-rw-r--r-- | kotlin/jvm_compile.bzl | 13 |
2 files changed, 12 insertions, 11 deletions
diff --git a/kotlin/common.bzl b/kotlin/common.bzl index b3be72b..0908261 100644 --- a/kotlin/common.bzl +++ b/kotlin/common.bzl @@ -809,12 +809,14 @@ def _kt_jvm_library( output = None, output_srcjar = None, # Will derive default filename if not set. deps = [], - codegen_output_java_infos = [], # JavaInfo sequence from kt_codegen_plugin. exports = [], # passthrough for JavaInfo constructor runtime_deps = [], # passthrough for JavaInfo constructor native_libraries = [], # passthrough of CcInfo for JavaInfo constructor plugins = _kt_plugins_map(), - pre_processed_processors = sets.make([]), + kt_codegen_processing_env = dict( + pre_processed_processors = depset(), + codegen_output_java_infos = [], + ), exported_plugins = [], android_lint_plugins = [], android_lint_rules_jars = depset(), # Depset with standalone Android Lint rules Jars @@ -835,6 +837,8 @@ def _kt_jvm_library( fail("Missing or invalid java_toolchain") if not kt_toolchain: fail("Missing or invalid kt_toolchain") + pre_processed_processors = kt_codegen_processing_env["pre_processed_processors"] + codegen_output_java_infos = kt_codegen_processing_env["codegen_output_java_infos"] file_factory = FileFactory(ctx, output) deps = list(deps) # Defensive copy @@ -874,7 +878,7 @@ def _kt_jvm_library( cls for p in java_plugin_datas for cls in p.processor_classes.to_list() - if not sets.contains(pre_processed_processors, cls) + if cls not in pre_processed_processors.to_list() ] plugin_classpaths = depset(transitive = [p.processor_jars for p in java_plugin_datas]) diff --git a/kotlin/jvm_compile.bzl b/kotlin/jvm_compile.bzl index 76a4262..220fea0 100644 --- a/kotlin/jvm_compile.bzl +++ b/kotlin/jvm_compile.bzl @@ -17,7 +17,6 @@ load(":common.bzl", "common") load(":compiler_plugin.bzl", "KtCompilerPluginInfo") load(":traverse_exports.bzl", "kt_traverse_exports") -load("@bazel_skylib//lib:sets.bzl", "sets") _RULE_FAMILY = common.RULE_FAMILY @@ -132,8 +131,10 @@ def kt_jvm_compile( "'*_resources.jar'.") r_java_infos.append(r_java) - pre_processed_java_plugin_processors = sets.make([]) - pre_processed_kt_codegen_plugin_processors = sets.make([]) + kt_codegen_processing_env = dict( + pre_processed_processors = depset(), + codegen_output_java_infos = [], + ) # Skip deps validation check for any android_library target with no kotlin sources: b/239721906 has_kt_srcs = any([common.is_kt_src(src) for src in srcs]) @@ -157,7 +158,6 @@ def kt_jvm_compile( common_srcs = common_srcs, coverage_srcs = coverage_srcs, deps = r_java_infos + java_infos, - codegen_output_java_infos = codegen_output_java_infos, disable_lint_checks = disable_lint_checks, exported_plugins = [e[JavaPluginInfo] for e in exported_plugins if (JavaPluginInfo in e)], # Not all exported targets contain a JavaInfo (e.g. some only have CcInfo) @@ -183,10 +183,7 @@ def kt_jvm_compile( if (KtCompilerPluginInfo in plugin) ], ), - pre_processed_processors = sets.union( - pre_processed_java_plugin_processors, - pre_processed_kt_codegen_plugin_processors, - ), + kt_codegen_processing_env = kt_codegen_processing_env, resource_files = resource_files, runtime_deps = [d[JavaInfo] for d in runtime_deps if JavaInfo in d], srcs = srcs, |