135 lines
4.5 KiB
Python
135 lines
4.5 KiB
Python
# Licensed to the Apache Software Foundation (ASF) under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you 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
|
|
#
|
|
# http://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.
|
|
|
|
#
|
|
# WARNING: This example is not a best practice for how to build with bRPC in bazel.
|
|
#
|
|
|
|
workspace(name = "com_github_brpc_brpc_example_build_with_old_bazel")
|
|
|
|
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
|
|
|
#
|
|
# Constants
|
|
#
|
|
|
|
BAZEL_SKYLIB_VERSION = "1.1.1" # 2021-09-27T17:33:49Z
|
|
|
|
BAZEL_SKYLIB_SHA256 = "c6966ec828da198c5d9adbaa94c05e3a1c7f21bd012a0b29ba8ddbccb2c93b0d"
|
|
|
|
RULES_PROTO_COMMIT_ID = "9f8407ec90b579cba157ce481682b2beb1f7409f"
|
|
|
|
RULES_PROTO_SHA256 = "3a27bf90d4cd3e4546afa801857d35c3c4db5f0680c840167f6fb2f7078de177"
|
|
|
|
RULES_CC_COMMIT_ID = "b7fe9697c0c76ab2fd431a891dbb9a6a32ed7c3e"
|
|
|
|
RULES_CC_SHA256 = "29daf0159f0cf552fcff60b49d8bcd4f08f08506d2da6e41b07058ec50cfeaec"
|
|
|
|
#
|
|
# Starlark libraries
|
|
#
|
|
|
|
http_archive(
|
|
name = "bazel_skylib",
|
|
sha256 = BAZEL_SKYLIB_SHA256,
|
|
urls = [
|
|
"https://github.com/bazelbuild/bazel-skylib/releases/download/{version}/bazel-skylib-{version}.tar.gz".format(version = BAZEL_SKYLIB_VERSION),
|
|
"https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/{version}/bazel-skylib-{version}.tar.gz".format(version = BAZEL_SKYLIB_VERSION),
|
|
],
|
|
)
|
|
|
|
http_archive(
|
|
name = "rules_proto",
|
|
sha256 = RULES_PROTO_SHA256,
|
|
strip_prefix = "rules_proto-{version}".format(version = RULES_PROTO_COMMIT_ID),
|
|
urls = ["https://github.com/bazelbuild/rules_proto/archive/{version}.tar.gz".format(version = RULES_PROTO_COMMIT_ID)],
|
|
)
|
|
|
|
http_archive(
|
|
name = "rules_cc",
|
|
sha256 = RULES_CC_SHA256,
|
|
strip_prefix = "rules_cc-{commit_id}".format(commit_id = RULES_CC_COMMIT_ID),
|
|
urls = [
|
|
"https://github.com/bazelbuild/rules_cc/archive/{commit_id}.tar.gz".format(commit_id = RULES_CC_COMMIT_ID),
|
|
],
|
|
)
|
|
|
|
#
|
|
# C++ Dependencies
|
|
#
|
|
# Ordered lexicographical.
|
|
#
|
|
|
|
local_repository(
|
|
name = "com_github_brpc_brpc",
|
|
path = "../../",
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_github_gflags_gflags",
|
|
sha256 = "a8263376b409900dd46830e4e34803a170484707327854cc252fc5865275a57d",
|
|
strip_prefix = "gflags-46f73f88b18aee341538c0dfc22b1710a6abedef",
|
|
url = "https://github.com/gflags/gflags/archive/46f73f88b18aee341538c0dfc22b1710a6abedef.tar.gz",
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_github_google_glog",
|
|
build_file = "//:glog.BUILD",
|
|
strip_prefix = "glog-a6a166db069520dbbd653c97c2e5b12e08a8bb26",
|
|
url = "https://github.com/google/glog/archive/a6a166db069520dbbd653c97c2e5b12e08a8bb26.tar.gz",
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_github_google_leveldb",
|
|
build_file = "//:leveldb.BUILD",
|
|
sha256 = "3912ac36dbb264a62797d68687711c8024919640d89b6733f9342ada1d16cda1",
|
|
strip_prefix = "leveldb-a53934a3ae1244679f812d998a4f16f2c7f309a6",
|
|
url = "https://github.com/google/leveldb/archive/a53934a3ae1244679f812d998a4f16f2c7f309a6.tar.gz",
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_github_madler_zlib", # 2017-01-15T17:57:23Z
|
|
build_file = "@com_github_brpc_brpc//bazel/third_party/zlib:zlib.BUILD",
|
|
sha256 = "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1",
|
|
strip_prefix = "zlib-1.2.11",
|
|
urls = ["https://zlib.net/zlib-1.2.11.tar.gz"],
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_google_googletest",
|
|
strip_prefix = "googletest-0fe96607d85cf3a25ac40da369db62bbee2939a5",
|
|
url = "https://github.com/google/googletest/archive/0fe96607d85cf3a25ac40da369db62bbee2939a5.tar.gz",
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_google_protobuf",
|
|
sha256 = "9510dd2afc29e7245e9e884336f848c8a6600a14ae726adb6befdb4f786f0be2",
|
|
strip_prefix = "protobuf-3.6.1.3",
|
|
type = "zip",
|
|
url = "https://github.com/protocolbuffers/protobuf/archive/v3.6.1.3.zip",
|
|
)
|
|
|
|
# This is not a correct approach, just for simplicity.
|
|
# rules_foreign_cc didn't support too early version of bazel.
|
|
# bRPC need to be patched to work with boringssl for now.
|
|
|
|
new_local_repository(
|
|
name = "openssl",
|
|
build_file = "//:openssl.BUILD",
|
|
path = "/usr",
|
|
)
|