xref: /aosp_15_r20/external/bazelbuild-kotlin-rules/WORKSPACE (revision 3a22c0a33dd99bcca39a024d43e6fbcc55c2806e)
1*3a22c0a3SAlix# Copyright 2022 Google LLC. All rights reserved.
2*3a22c0a3SAlix#
3*3a22c0a3SAlix# Licensed under the Apache License, Version 2.0 (the License);
4*3a22c0a3SAlix# you may not use this file except in compliance with the License.
5*3a22c0a3SAlix# You may obtain a copy of the License at
6*3a22c0a3SAlix#
7*3a22c0a3SAlix#     http://www.apache.org/licenses/LICENSE-2.0
8*3a22c0a3SAlix#
9*3a22c0a3SAlix# Unless required by applicable law or agreed to in writing, software
10*3a22c0a3SAlix# distributed under the License is distributed on an "AS IS" BASIS,
11*3a22c0a3SAlix# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*3a22c0a3SAlix# See the License for the specific language governing permissions and
13*3a22c0a3SAlix# limitations under the License.
14*3a22c0a3SAlix
15*3a22c0a3SAlixworkspace(name = "rules_kotlin")
16*3a22c0a3SAlix
17*3a22c0a3SAlixload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
18*3a22c0a3SAlix
19*3a22c0a3SAlixhttp_archive(
20*3a22c0a3SAlix    name = "rules_jvm_external",
21*3a22c0a3SAlix    strip_prefix = "rules_jvm_external-5.2",
22*3a22c0a3SAlix    sha256 = "3824ac95d9edf8465c7a42b7fcb88a5c6b85d2bac0e98b941ba13f235216f313",
23*3a22c0a3SAlix    url = "https://github.com/bazelbuild/rules_jvm_external/archive/5.2.zip",
24*3a22c0a3SAlix)
25*3a22c0a3SAlixload("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps")
26*3a22c0a3SAlixrules_jvm_external_deps()
27*3a22c0a3SAlixload("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup")
28*3a22c0a3SAlixrules_jvm_external_setup()
29*3a22c0a3SAlixload("@rules_jvm_external//:defs.bzl", "maven_install")
30*3a22c0a3SAlix
31*3a22c0a3SAlixhttp_archive(
32*3a22c0a3SAlix    name = "bazel_skylib",
33*3a22c0a3SAlix    sha256 = "f7be3474d42aae265405a592bb7da8e171919d74c16f082a5457840f06054728",
34*3a22c0a3SAlix    urls = [
35*3a22c0a3SAlix        "https://github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz",
36*3a22c0a3SAlix    ],
37*3a22c0a3SAlix)
38*3a22c0a3SAlixload("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
39*3a22c0a3SAlixbazel_skylib_workspace()
40*3a22c0a3SAlix
41*3a22c0a3SAlixhttp_archive(
42*3a22c0a3SAlix    name = "bazel_platforms",
43*3a22c0a3SAlix    sha256 = "379113459b0feaf6bfbb584a91874c065078aa673222846ac765f86661c27407",
44*3a22c0a3SAlix    urls = [
45*3a22c0a3SAlix        "https://github.com/bazelbuild/platforms/releases/download/0.0.5/platforms-0.0.5.tar.gz",
46*3a22c0a3SAlix    ],
47*3a22c0a3SAlix)
48*3a22c0a3SAlix
49*3a22c0a3SAlixhttp_archive(
50*3a22c0a3SAlix    name = "rules_license",
51*3a22c0a3SAlix    sha256 = "4531deccb913639c30e5c7512a054d5d875698daeb75d8cf90f284375fe7c360",
52*3a22c0a3SAlix    urls = [
53*3a22c0a3SAlix        "https://github.com/bazelbuild/rules_license/releases/download/0.0.7/rules_license-0.0.7.tar.gz",
54*3a22c0a3SAlix    ],
55*3a22c0a3SAlix)
56*3a22c0a3SAlixload("@rules_license//:deps.bzl", "rules_license_dependencies")
57*3a22c0a3SAlixrules_license_dependencies()
58*3a22c0a3SAlix
59*3a22c0a3SAlixhttp_archive(
60*3a22c0a3SAlix    name = "rules_java",
61*3a22c0a3SAlix    urls = [
62*3a22c0a3SAlix      "https://mirror.bazel.build/github.com/bazelbuild/rules_java/releases/download/5.5.0/rules_java-5.5.0.tar.gz",
63*3a22c0a3SAlix      "https://github.com/bazelbuild/rules_java/releases/download/5.5.0/rules_java-5.5.0.tar.gz",
64*3a22c0a3SAlix    ],
65*3a22c0a3SAlix    sha256 = "bcfabfb407cb0c8820141310faa102f7fb92cc806b0f0e26a625196101b0b57e",
66*3a22c0a3SAlix)
67*3a22c0a3SAlixload("@rules_java//java:repositories.bzl", "java_tools_repos")
68*3a22c0a3SAlixjava_tools_repos()
69*3a22c0a3SAlix
70*3a22c0a3SAlixhttp_archive(
71*3a22c0a3SAlix    name = "dagger",
72*3a22c0a3SAlix    strip_prefix = "dagger-dagger-2.44.2",
73*3a22c0a3SAlix    build_file = "@//bazel:dagger.BUILD",
74*3a22c0a3SAlix    sha256 = "cbff42063bfce78a08871d5a329476eb38c96af9cf20d21f8b412fee76296181",
75*3a22c0a3SAlix    urls = ["https://github.com/google/dagger/archive/dagger-2.44.2.zip"],
76*3a22c0a3SAlix)
77*3a22c0a3SAlixload("@dagger//:workspace_defs.bzl", "DAGGER_ARTIFACTS", "DAGGER_REPOSITORIES")
78*3a22c0a3SAlix
79*3a22c0a3SAlixload("@//toolchains/kotlin_jvm:kt_jvm_toolchains.bzl", "KT_VERSION")
80*3a22c0a3SAlixhttp_archive(
81*3a22c0a3SAlix    name = "kotlinc",
82*3a22c0a3SAlix    build_file = "@//bazel:kotlinc.BUILD",
83*3a22c0a3SAlix    sha256 = "7d74863deecf8e0f28ea54c3735feab003d0eac67e8d3a791254b16889c20342",
84*3a22c0a3SAlix    strip_prefix = "kotlinc",
85*3a22c0a3SAlix    urls = [
86*3a22c0a3SAlix        "https://github.com/JetBrains/kotlin/releases/download/v{0}/kotlin-compiler-{0}.zip".format(KT_VERSION[1:].replace("_", ".")),
87*3a22c0a3SAlix    ],
88*3a22c0a3SAlix)
89*3a22c0a3SAlix
90*3a22c0a3SAlixregister_toolchains("@//toolchains/kotlin_jvm:all")
91*3a22c0a3SAlix
92*3a22c0a3SAlixmaven_install(
93*3a22c0a3SAlix    artifacts = DAGGER_ARTIFACTS + [
94*3a22c0a3SAlix        "com.google.auto.service:auto-service-annotations:1.0.1",
95*3a22c0a3SAlix        "com.google.auto.service:auto-service:1.0.1",
96*3a22c0a3SAlix        "com.google.auto.value:auto-value:1.9",
97*3a22c0a3SAlix        "com.google.testing.compile:compile-testing:0.19",
98*3a22c0a3SAlix        "com.google.truth:truth:1.1.3",
99*3a22c0a3SAlix        "info.picocli:picocli:4.6.3",
100*3a22c0a3SAlix        "javax.inject:jsr330-api:0.9",
101*3a22c0a3SAlix        "junit:junit:4.13.2",
102*3a22c0a3SAlix        "org.jacoco:org.jacoco.agent:0.8.8",
103*3a22c0a3SAlix        "org.jacoco:org.jacoco.cli:0.8.8",
104*3a22c0a3SAlix        "org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.4.2",
105*3a22c0a3SAlix        "org.mockito:mockito-core:4.5.1",
106*3a22c0a3SAlix    ],
107*3a22c0a3SAlix    repositories = DAGGER_REPOSITORIES + [
108*3a22c0a3SAlix        "https://repository.mulesoft.org/nexus/content/repositories/public",
109*3a22c0a3SAlix    ],
110*3a22c0a3SAlix    override_targets = {
111*3a22c0a3SAlix        "org.jetbrains.kotlin:annotations": "@kotlinc//:annotations",
112*3a22c0a3SAlix        "org.jetbrains.kotlin:kotlin-reflect": "@kotlinc//:kotlin_reflect",
113*3a22c0a3SAlix        "org.jetbrains.kotlin:kotlin-stdlib": "@kotlinc//:kotlin_stdlib",
114*3a22c0a3SAlix        "org.jetbrains.kotlin:kotlin-stdlib-jdk7": "@kotlinc//:kotlin_stdlib_jdk7",
115*3a22c0a3SAlix        "org.jetbrains.kotlin:kotlin-stdlib-jdk8": "@kotlinc//:kotlin_stdlib_jdk8",
116*3a22c0a3SAlix        "org.jetbrains.kotlin:kotlin-test": "@kotlinc//:kotlin_test",
117*3a22c0a3SAlix    },
118*3a22c0a3SAlix)
119*3a22c0a3SAlix
120