-
Notifications
You must be signed in to change notification settings - Fork 444
Expand file tree
/
Copy pathdevelopment0.bzl
More file actions
76 lines (66 loc) · 3 KB
/
development0.bzl
File metadata and controls
76 lines (66 loc) · 3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# Copyright 2023 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Load dependencies needed for google-cloud-cpp development / Phase 0."""
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe")
def gl_cpp_development0(name = None):
"""Loads dependencies needed to develop the google-cloud-cpp libraries.
google-cloud-cpp developers call this function from the top-level WORKSPACE
file to obtain all the necessary *development* dependencies for
google-cloud-cpp. This includes testing dependencies and dependencies used
by development tools.
It is a bug if the targets used for google-cloud-cpp development can be used
outside the package. All such targets should have their visibility
restricted, or are deprecated. If you still need to use such targets, this
function may be useful in your own WORKSPACE file.
This function only loads dependencies that have not been previously loaded,
allowing developers to override the version of the dependencies they want to
use.
Args:
name: Unused. It is conventional to provide a `name` argument to all
workspace functions.
"""
# This is needed by com_google_benchmark. We cache it because
# sourceforge.net can have outages and that breaks the build.
maybe(
http_archive,
name = "libpfm",
urls = [
"https://sourceforge.net/projects/perfmon2/files/libpfm4/libpfm-4.11.0.tar.gz",
],
sha256 = "5da5f8872bde14b3634c9688d980f68bda28b510268723cc12973eedbab9fecc",
strip_prefix = "libpfm-4.11.0",
build_file = Label("//bazel:libpfm.BUILD"),
)
# This is only needed to run the microbenchmarks.
maybe(
http_archive,
name = "com_google_benchmark",
urls = [
"https://github.com/google/benchmark/archive/v1.9.5.tar.gz",
],
sha256 = "9631341c82bac4a288bef951f8b26b41f69021794184ece969f8473977eaa340",
strip_prefix = "benchmark-1.9.5",
)
# A YAML parser and generator, this is only used in //docfx and //generator.
# Both are internal tools used for development only.
maybe(
http_archive,
name = "com_github_jbeder_yaml_cpp",
urls = [
"https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.9.0.tar.gz",
],
sha256 = "25cb043240f828a8c51beb830569634bc7ac603978e0f69d6b63558dadefd49a",
strip_prefix = "yaml-cpp-yaml-cpp-0.9.0",
)