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