Skip to main content
Glama
kotlin.bzl6.64 kB
# Copyright (c) Meta Platforms, Inc. and affiliates. # # This source code is licensed under both the MIT license found in the # LICENSE-MIT file in the root directory of this source tree and the Apache # License, Version 2.0 found in the LICENSE-APACHE file in the root directory # of this source tree. load("@prelude//java:java_toolchain.bzl", "DepFiles") load("@prelude//kotlin:kotlin_toolchain.bzl", "KotlinToolchainInfo", "KotlincProtocol") def kotlincd_toolchain( name, visibility = None): _kotlin_toolchain_rule( name = name, annotation_processing_jar = "prelude//toolchains/android/third-party:kotlin-annotation-processing-embeddable", class_loader_bootstrapper = "prelude//toolchains/android/src/com/facebook/buck/cli/bootstrapper:bootstrapper", compile_kotlin = "prelude//kotlin/tools/compile_kotlin:compile_kotlin", dep_files = "none", kapt_base64_encoder = "prelude//kotlin/tools/kapt_base64_encoder:kapt_base64_encoder", kotlin_stdlib = "prelude//toolchains/android/third-party:kotlin-stdlib", kotlin_version = "2.0.0", kotlin_home_libraries = [ "prelude//toolchains/android/third-party:kotlin-annotations", "prelude//toolchains/android/third-party:kotlin-build-tools-impl", "prelude//toolchains/android/third-party:kotlin-daemon-client", "prelude//toolchains/android/third-party:kotlin-compiler-embeddable", "prelude//toolchains/android/third-party:kotlin-reflect", "prelude//toolchains/android/third-party:kotlin-script-runtime", "prelude//toolchains/android/third-party:kotlin-stdlib", "prelude//toolchains/android/third-party:trove", "prelude//toolchains/android/third-party:kotlinx-coroutines-core-jvm", ], kotlinc = "prelude//toolchains/android/src/com/facebook/buck/jvm/kotlin/cd/workertool:kotlincd_tool", kotlinc_protocol = "kotlincd", kotlincd_main_class = "com.facebook.buck.jvm.kotlin.cd.workertool.KotlinCDMain", visibility = visibility, ) def system_kotlin_bootstrap_toolchain( name, visibility = None): _kotlin_toolchain_rule( name = name, annotation_processing_jar = "prelude//toolchains/android/third-party:kotlin-annotation-processing-embeddable", compile_kotlin = "prelude//kotlin/tools/compile_kotlin:compile_kotlin", dep_files = "none", kapt_base64_encoder = "prelude//kotlin/tools/kapt_base64_encoder:kapt_base64_encoder", kotlin_stdlib = "prelude//toolchains/android/third-party:kotlin-stdlib", kotlin_version = read_config("kotlin", "kotlin_version", "2.0.0"), kotlinc = "prelude//toolchains/android/third-party:kotlin-compiler-binary", kotlinc_protocol = "classic", visibility = visibility, ) def _kotlin_toolchain_rule_impl(ctx): return [ DefaultInfo(), KotlinToolchainInfo( allow_k2_usage = ctx.attrs.allow_k2_usage, annotation_processing_jar = ctx.attrs.annotation_processing_jar, class_loader_bootstrapper = ctx.attrs.class_loader_bootstrapper, compile_kotlin = ctx.attrs.compile_kotlin, dep_files = DepFiles(ctx.attrs.dep_files), kapt_base64_encoder = ctx.attrs.kapt_base64_encoder, kotlinc = ctx.attrs.kotlinc, kotlin_stdlib = ctx.attrs.kotlin_stdlib, kotlin_version = ctx.attrs.kotlin_version, kotlin_home_libraries = ctx.attrs.kotlin_home_libraries, enable_incremental_compilation = ctx.attrs.enable_incremental_compilation or False, kotlinc_protocol = ctx.attrs.kotlinc_protocol, kosabi_stubs_gen_plugin = ctx.attrs.kosabi_stubs_gen_plugin, kosabi_standalone = ctx.attrs.kosabi_standalone, kosabi_source_modifier_plugin = ctx.attrs.kosabi_source_modifier_plugin, kosabi_applicability_plugin = ctx.attrs.kosabi_applicability_plugin, kosabi_jvm_abi_gen_plugin = ctx.attrs.kosabi_jvm_abi_gen_plugin, jvm_abi_gen_plugin = ctx.attrs.jvm_abi_gen_plugin, kotlincd_debug_port = ctx.attrs.kotlincd_debug_port, kotlincd_debug_target = ctx.attrs.kotlincd_debug_target, kotlincd_jvm_args = ctx.attrs.kotlincd_jvm_args, kotlincd_jvm_args_target = ctx.attrs.kotlincd_jvm_args_target, kotlincd_main_class = ctx.attrs.kotlincd_main_class, kotlincd_worker = ctx.attrs.kotlincd_worker, track_class_usage_plugin = ctx.attrs.track_class_usage_plugin, kotlin_error_handler = None, ), ] _kotlin_toolchain_rule = rule( attrs = { "allow_k2_usage": attrs.option(attrs.bool(), default = None), "annotation_processing_jar": attrs.dep(), "class_loader_bootstrapper": attrs.option(attrs.source(), default = None), "compile_kotlin": attrs.dep(providers = [RunInfo]), "dep_files": attrs.enum(["none", "per_class", "per_jar"], default = "none"), "enable_incremental_compilation": attrs.option(attrs.bool(), default = None), "jvm_abi_gen_plugin": attrs.option(attrs.source(), default = None), "kapt_base64_encoder": attrs.dep(providers = [RunInfo]), "kosabi_applicability_plugin": attrs.option(attrs.source(), default = None), "kosabi_jvm_abi_gen_plugin": attrs.option(attrs.source(), default = None), "kosabi_source_modifier_plugin": attrs.option(attrs.source(), default = None), "kosabi_standalone": attrs.option(attrs.bool(), default = None), "kosabi_stubs_gen_plugin": attrs.option(attrs.source(), default = None), "kotlin_home_libraries": attrs.list(attrs.source(), default = []), "kotlin_stdlib": attrs.dep(), "kotlin_version": attrs.string(), "kotlinc": attrs.dep(providers = [RunInfo]), "kotlinc_protocol": attrs.enum(KotlincProtocol.values(), default = "classic"), "kotlincd_debug_port": attrs.option(attrs.int(), default = None), "kotlincd_debug_target": attrs.option(attrs.label(), default = None), "kotlincd_jvm_args": attrs.list(attrs.string(), default = []), "kotlincd_jvm_args_target": attrs.list(attrs.label(), default = []), "kotlincd_main_class": attrs.option(attrs.string(), default = None), "kotlincd_worker": attrs.option(attrs.dep(), default = None), "track_class_usage_plugin": attrs.option(attrs.source(), default = None), }, impl = _kotlin_toolchain_rule_impl, is_toolchain_rule = True, )

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/systeminit/si'

If you have feedback or need assistance with the MCP directory API, please join our Discord server