1*dbb99499SAndroid Build Coastguard Worker""" 2*dbb99499SAndroid Build Coastguard WorkerThis file contains the Bazel build dependencies for Google Benchmark (both C++ source and Python bindings). 3*dbb99499SAndroid Build Coastguard Worker""" 4*dbb99499SAndroid Build Coastguard Worker 5*dbb99499SAndroid Build Coastguard Workerload("@bazel_tools//tools/build_defs/repo:git.bzl", "new_git_repository") 6*dbb99499SAndroid Build Coastguard Workerload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") 7*dbb99499SAndroid Build Coastguard Worker 8*dbb99499SAndroid Build Coastguard Workerdef benchmark_deps(): 9*dbb99499SAndroid Build Coastguard Worker """Loads dependencies required to build Google Benchmark.""" 10*dbb99499SAndroid Build Coastguard Worker 11*dbb99499SAndroid Build Coastguard Worker if "bazel_skylib" not in native.existing_rules(): 12*dbb99499SAndroid Build Coastguard Worker http_archive( 13*dbb99499SAndroid Build Coastguard Worker name = "bazel_skylib", 14*dbb99499SAndroid Build Coastguard Worker sha256 = "cd55a062e763b9349921f0f5db8c3933288dc8ba4f76dd9416aac68acee3cb94", 15*dbb99499SAndroid Build Coastguard Worker urls = [ 16*dbb99499SAndroid Build Coastguard Worker "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.5.0/bazel-skylib-1.5.0.tar.gz", 17*dbb99499SAndroid Build Coastguard Worker "https://github.com/bazelbuild/bazel-skylib/releases/download/1.5.0/bazel-skylib-1.5.0.tar.gz", 18*dbb99499SAndroid Build Coastguard Worker ], 19*dbb99499SAndroid Build Coastguard Worker ) 20*dbb99499SAndroid Build Coastguard Worker 21*dbb99499SAndroid Build Coastguard Worker if "rules_foreign_cc" not in native.existing_rules(): 22*dbb99499SAndroid Build Coastguard Worker http_archive( 23*dbb99499SAndroid Build Coastguard Worker name = "rules_foreign_cc", 24*dbb99499SAndroid Build Coastguard Worker sha256 = "476303bd0f1b04cc311fc258f1708a5f6ef82d3091e53fd1977fa20383425a6a", 25*dbb99499SAndroid Build Coastguard Worker strip_prefix = "rules_foreign_cc-0.10.1", 26*dbb99499SAndroid Build Coastguard Worker url = "https://github.com/bazelbuild/rules_foreign_cc/releases/download/0.10.1/rules_foreign_cc-0.10.1.tar.gz", 27*dbb99499SAndroid Build Coastguard Worker ) 28*dbb99499SAndroid Build Coastguard Worker 29*dbb99499SAndroid Build Coastguard Worker if "rules_python" not in native.existing_rules(): 30*dbb99499SAndroid Build Coastguard Worker http_archive( 31*dbb99499SAndroid Build Coastguard Worker name = "rules_python", 32*dbb99499SAndroid Build Coastguard Worker sha256 = "e85ae30de33625a63eca7fc40a94fea845e641888e52f32b6beea91e8b1b2793", 33*dbb99499SAndroid Build Coastguard Worker strip_prefix = "rules_python-0.27.1", 34*dbb99499SAndroid Build Coastguard Worker url = "https://github.com/bazelbuild/rules_python/releases/download/0.27.1/rules_python-0.27.1.tar.gz", 35*dbb99499SAndroid Build Coastguard Worker ) 36*dbb99499SAndroid Build Coastguard Worker 37*dbb99499SAndroid Build Coastguard Worker if "com_google_googletest" not in native.existing_rules(): 38*dbb99499SAndroid Build Coastguard Worker new_git_repository( 39*dbb99499SAndroid Build Coastguard Worker name = "com_google_googletest", 40*dbb99499SAndroid Build Coastguard Worker remote = "https://github.com/google/googletest.git", 41*dbb99499SAndroid Build Coastguard Worker tag = "release-1.12.1", 42*dbb99499SAndroid Build Coastguard Worker ) 43*dbb99499SAndroid Build Coastguard Worker 44*dbb99499SAndroid Build Coastguard Worker if "nanobind" not in native.existing_rules(): 45*dbb99499SAndroid Build Coastguard Worker new_git_repository( 46*dbb99499SAndroid Build Coastguard Worker name = "nanobind", 47*dbb99499SAndroid Build Coastguard Worker remote = "https://github.com/wjakob/nanobind.git", 48*dbb99499SAndroid Build Coastguard Worker tag = "v1.9.2", 49*dbb99499SAndroid Build Coastguard Worker build_file = "@//bindings/python:nanobind.BUILD", 50*dbb99499SAndroid Build Coastguard Worker recursive_init_submodules = True, 51*dbb99499SAndroid Build Coastguard Worker ) 52*dbb99499SAndroid Build Coastguard Worker 53*dbb99499SAndroid Build Coastguard Worker if "libpfm" not in native.existing_rules(): 54*dbb99499SAndroid Build Coastguard Worker # Downloaded from v4.9.0 tag at https://sourceforge.net/p/perfmon2/libpfm4/ref/master/tags/ 55*dbb99499SAndroid Build Coastguard Worker http_archive( 56*dbb99499SAndroid Build Coastguard Worker name = "libpfm", 57*dbb99499SAndroid Build Coastguard Worker build_file = str(Label("//tools:libpfm.BUILD.bazel")), 58*dbb99499SAndroid Build Coastguard Worker sha256 = "5da5f8872bde14b3634c9688d980f68bda28b510268723cc12973eedbab9fecc", 59*dbb99499SAndroid Build Coastguard Worker type = "tar.gz", 60*dbb99499SAndroid Build Coastguard Worker strip_prefix = "libpfm-4.11.0", 61*dbb99499SAndroid Build Coastguard Worker urls = ["https://sourceforge.net/projects/perfmon2/files/libpfm4/libpfm-4.11.0.tar.gz/download"], 62*dbb99499SAndroid Build Coastguard Worker ) 63