xref: /aosp_15_r20/external/perfetto/bazel/deps.bzl (revision 6dbdd20afdafa5e3ca9b8809fa73465d530080dc)
1*6dbdd20aSAndroid Build Coastguard Worker# Copyright (C) 2019 The Android Open Source Project
2*6dbdd20aSAndroid Build Coastguard Worker#
3*6dbdd20aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
4*6dbdd20aSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
5*6dbdd20aSAndroid Build Coastguard Worker# You may obtain a copy of the License at
6*6dbdd20aSAndroid Build Coastguard Worker#
7*6dbdd20aSAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
8*6dbdd20aSAndroid Build Coastguard Worker#
9*6dbdd20aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*6dbdd20aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
11*6dbdd20aSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*6dbdd20aSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
13*6dbdd20aSAndroid Build Coastguard Worker# limitations under the License.
14*6dbdd20aSAndroid Build Coastguard Worker
15*6dbdd20aSAndroid Build Coastguard Workerload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
16*6dbdd20aSAndroid Build Coastguard Workerload("@bazel_tools//tools/build_defs/repo:git.bzl", "new_git_repository")
17*6dbdd20aSAndroid Build Coastguard Worker
18*6dbdd20aSAndroid Build Coastguard Worker# This file must be kept in sync with tools/install-build-deps.
19*6dbdd20aSAndroid Build Coastguard Worker
20*6dbdd20aSAndroid Build Coastguard Worker# To generate shallow_since fields for git repos, use:
21*6dbdd20aSAndroid Build Coastguard Worker#   git show --date=raw COMMIT
22*6dbdd20aSAndroid Build Coastguard Worker
23*6dbdd20aSAndroid Build Coastguard Workerdef perfetto_deps():
24*6dbdd20aSAndroid Build Coastguard Worker    # Note: this is more recent than the version of protobuf we use in the
25*6dbdd20aSAndroid Build Coastguard Worker    # GN and Android builds. This is because older versions of protobuf don't
26*6dbdd20aSAndroid Build Coastguard Worker    # support Bazel.
27*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
28*6dbdd20aSAndroid Build Coastguard Worker        http_archive,
29*6dbdd20aSAndroid Build Coastguard Worker        name = "com_google_protobuf",
30*6dbdd20aSAndroid Build Coastguard Worker        strip_prefix = "protobuf-3.10.1",
31*6dbdd20aSAndroid Build Coastguard Worker        url = "https://github.com/protocolbuffers/protobuf/archive/v3.10.1.tar.gz",
32*6dbdd20aSAndroid Build Coastguard Worker        sha256 = "6adf73fd7f90409e479d6ac86529ade2d45f50494c5c10f539226693cb8fe4f7",
33*6dbdd20aSAndroid Build Coastguard Worker    )
34*6dbdd20aSAndroid Build Coastguard Worker
35*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
36*6dbdd20aSAndroid Build Coastguard Worker        http_archive,
37*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_sqlite",
38*6dbdd20aSAndroid Build Coastguard Worker        url = "https://storage.googleapis.com/perfetto/sqlite-amalgamation-3440200.zip",
39*6dbdd20aSAndroid Build Coastguard Worker        sha256 = "833be89b53b3be8b40a2e3d5fedb635080e3edb204957244f3d6987c2bb2345f",
40*6dbdd20aSAndroid Build Coastguard Worker        strip_prefix = "sqlite-amalgamation-3440200",
41*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:sqlite.BUILD",
42*6dbdd20aSAndroid Build Coastguard Worker    )
43*6dbdd20aSAndroid Build Coastguard Worker
44*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
45*6dbdd20aSAndroid Build Coastguard Worker        http_archive,
46*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_sqlite_src",
47*6dbdd20aSAndroid Build Coastguard Worker        url = "https://storage.googleapis.com/perfetto/sqlite-src-3440200.zip",
48*6dbdd20aSAndroid Build Coastguard Worker        sha256 = "73187473feb74509357e8fa6cb9fd67153b2d010d00aeb2fddb6ceeb18abaf27",
49*6dbdd20aSAndroid Build Coastguard Worker        strip_prefix = "sqlite-src-3440200",
50*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:sqlite.BUILD",
51*6dbdd20aSAndroid Build Coastguard Worker    )
52*6dbdd20aSAndroid Build Coastguard Worker
53*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
54*6dbdd20aSAndroid Build Coastguard Worker        new_git_repository,
55*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_linenoise",
56*6dbdd20aSAndroid Build Coastguard Worker        remote = "https://fuchsia.googlesource.com/third_party/linenoise.git",
57*6dbdd20aSAndroid Build Coastguard Worker        commit = "c894b9e59f02203dbe4e2be657572cf88c4230c3",
58*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:linenoise.BUILD",
59*6dbdd20aSAndroid Build Coastguard Worker    )
60*6dbdd20aSAndroid Build Coastguard Worker
61*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
62*6dbdd20aSAndroid Build Coastguard Worker        new_git_repository,
63*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_jsoncpp",
64*6dbdd20aSAndroid Build Coastguard Worker        remote = "https://github.com/open-source-parsers/jsoncpp",
65*6dbdd20aSAndroid Build Coastguard Worker        commit = "6aba23f4a8628d599a9ef7fa4811c4ff6e4070e2",  # v1.9.3
66*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:jsoncpp.BUILD",
67*6dbdd20aSAndroid Build Coastguard Worker    )
68*6dbdd20aSAndroid Build Coastguard Worker
69*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
70*6dbdd20aSAndroid Build Coastguard Worker        new_git_repository,
71*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_expat",
72*6dbdd20aSAndroid Build Coastguard Worker        remote = "https://github.com/libexpat/libexpat",
73*6dbdd20aSAndroid Build Coastguard Worker        commit = "fa75b96546c069d17b8f80d91e0f4ef0cde3790d",  # R_2_6_2
74*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:expat.BUILD",
75*6dbdd20aSAndroid Build Coastguard Worker    )
76*6dbdd20aSAndroid Build Coastguard Worker
77*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
78*6dbdd20aSAndroid Build Coastguard Worker        http_archive,
79*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_zlib",
80*6dbdd20aSAndroid Build Coastguard Worker        url = "https://storage.googleapis.com/perfetto/zlib-6d3f6aa0f87c9791ca7724c279ef61384f331dfd.tar.gz",
81*6dbdd20aSAndroid Build Coastguard Worker        sha256 = "e9a1d6e8c936de68628ffb83a13d28a40cd6b2def2ad9378e8b951d4b8f4df18",
82*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:zlib.BUILD",
83*6dbdd20aSAndroid Build Coastguard Worker    )
84*6dbdd20aSAndroid Build Coastguard Worker
85*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
86*6dbdd20aSAndroid Build Coastguard Worker        http_archive,
87*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_llvm_demangle",
88*6dbdd20aSAndroid Build Coastguard Worker        url = "https://storage.googleapis.com/perfetto/llvm-project-3b4c59c156919902c785ce3cbae0eee2ee53064d.tgz",
89*6dbdd20aSAndroid Build Coastguard Worker        sha256 = "f4a52e7f36edd7cacc844d5ae0e5f60b6f57c5afc40683e99f295886c9ce8ff4",
90*6dbdd20aSAndroid Build Coastguard Worker        strip_prefix = "llvm-project",
91*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:llvm_demangle.BUILD",
92*6dbdd20aSAndroid Build Coastguard Worker    )
93*6dbdd20aSAndroid Build Coastguard Worker
94*6dbdd20aSAndroid Build Coastguard Worker    # Without this protobuf.bzl fails. This seems a bug in protobuf_deps().
95*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
96*6dbdd20aSAndroid Build Coastguard Worker        http_archive,
97*6dbdd20aSAndroid Build Coastguard Worker        name = "bazel_skylib",
98*6dbdd20aSAndroid Build Coastguard Worker        sha256 = "bc283cdfcd526a52c3201279cda4bc298652efa898b10b4db0837dc51652756f",
99*6dbdd20aSAndroid Build Coastguard Worker        urls = [
100*6dbdd20aSAndroid Build Coastguard Worker            "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.7.1/bazel-skylib-1.7.1.tar.gz",
101*6dbdd20aSAndroid Build Coastguard Worker            "https://github.com/bazelbuild/bazel-skylib/releases/download/1.7.1/bazel-skylib-1.7.1.tar.gz",
102*6dbdd20aSAndroid Build Coastguard Worker        ]
103*6dbdd20aSAndroid Build Coastguard Worker    )
104*6dbdd20aSAndroid Build Coastguard Worker
105*6dbdd20aSAndroid Build Coastguard Worker    _add_repo_if_not_existing(
106*6dbdd20aSAndroid Build Coastguard Worker        new_git_repository,
107*6dbdd20aSAndroid Build Coastguard Worker        name = "perfetto_dep_open_csd",
108*6dbdd20aSAndroid Build Coastguard Worker        remote = "https://android.googlesource.com/platform/external/OpenCSD.git",
109*6dbdd20aSAndroid Build Coastguard Worker        commit = "0ce01e934f95efb6a216a6efa35af1245151c779",
110*6dbdd20aSAndroid Build Coastguard Worker        build_file = "//bazel:open_csd.BUILD",
111*6dbdd20aSAndroid Build Coastguard Worker    )
112*6dbdd20aSAndroid Build Coastguard Worker
113*6dbdd20aSAndroid Build Coastguard Workerdef _add_repo_if_not_existing(repo_rule, name, **kwargs):
114*6dbdd20aSAndroid Build Coastguard Worker    if name not in native.existing_rules():
115*6dbdd20aSAndroid Build Coastguard Worker        repo_rule(name = name, **kwargs)
116*6dbdd20aSAndroid Build Coastguard Worker
117