blob: 0e2a982dddc0885bd183c4905a77f2c67adc06f2 [file]
workspace(name = "com_google_verible")
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "com_google_absl",
# On MSVC's STL implementation, string_view cannot be constructed from
# a string_view::iterator. This patch forces the use of absl's string_view
# implementation to solve the issue
patch_args = ["-p1"],
patches = ["//bazel:absl.patch"],
sha256 = "cfb1f22164808eb0a233ad91287df84c2af2084cfc8b429eca1be1e57511065d",
strip_prefix = "abseil-cpp-20210324.1",
urls = ["https://github.com/abseil/abseil-cpp/archive/refs/tags/20210324.1.zip"],
)
# Intermediate version of googletest. The last published release v1.10.0 does
# not obey TEST_TMPDIR environment variable and sets testing::TempDir() to
# /tmp which is problematic for consecuitve tests.
# (on Linux. On Mac, it still writes to /tmp which hopefully is fixed soon)
http_archive(
name = "com_google_googletest",
sha256 = "065be63080da17335f680bca846e7c298895ca5bb6d241d0ee28ff3c3aa29e7c",
strip_prefix = "googletest-23ef29555ef4789f555f1ba8c51b4c52975f0907",
urls = ["https://github.com/google/googletest/archive/23ef29555ef4789f555f1ba8c51b4c52975f0907.zip"],
)
http_archive(
name = "rules_cc",
sha256 = "69fb4b965c538509324960817965791761d57010f42bf12ce9769c4259c7d018",
strip_prefix = "rules_cc-e7c97c3af74e279a5db516a19f642e862ff58548",
urls = ["https://github.com/bazelbuild/rules_cc/archive/e7c97c3af74e279a5db516a19f642e862ff58548.zip"],
)
# Google logging. Hopefully, this functionality makes it to absl so that we can drop this
# extra dependency.
http_archive(
name = "com_github_gflags_gflags",
sha256 = "cfdba0f2f17e8b1ff75c98113d5080d8ec016148426abcc19130864e2952d7bd",
strip_prefix = "gflags-827c769e5fc98e0f2a34c47cef953cc6328abced",
urls = ["https://github.com/gflags/gflags/archive/827c769e5fc98e0f2a34c47cef953cc6328abced.zip" ],
)
http_archive(
name = "com_github_google_glog",
sha256 = "087a3de2eccce54a597fbb9d1530d4b8c1bae6ff6083511c19fe56b01a1f4f05",
strip_prefix = "glog-0.5.0-rc2",
urls = ["https://github.com/google/glog/archive/v0.5.0-rc2.tar.gz"],
)
#
# External tools needed
#
# 'make install' equivalent rule
http_archive(
name = "com_github_google_rules_install",
sha256 = "ac2c9c53aa022a110273c0e510d191a4c04c6adafefa069a5eeaa16313edc9b9",
strip_prefix = "bazel_rules_install-0.4",
urls = ["https://github.com/google/bazel_rules_install/releases/download/0.4/bazel_rules_install-0.4.tar.gz"],
)
load("@com_github_google_rules_install//:deps.bzl", "install_rules_dependencies")
install_rules_dependencies()
load("@com_github_google_rules_install//:setup.bzl", "install_rules_setup")
install_rules_setup()
# Need to load before rules_flex/rules_bison to make sure
# win_flex_bison is the chosen toolchain on Windows
load("//bazel:win_flex_bison.bzl", "win_flex_configure")
win_flex_configure(
name = "win_flex_bison",
sha256 = "095cf65cb3f12ee5888022f93109acbe6264e5f18f6ffce0bda77feb31b65bd8",
# bison 3.3.2, flex 2.6.4
url = "https://github.com/lexxmark/winflexbison/releases/download/v2.5.18/win_flex_bison-2.5.18.zip",
)
http_archive(
name = "rules_m4",
sha256 = "c67fa9891bb19e9e6c1050003ba648d35383b8cb3c9572f397ad24040fb7f0eb",
# m4 1.4.18
urls = ["https://github.com/jmillikin/rules_m4/releases/download/v0.2/rules_m4-v0.2.tar.xz"],
)
load("@rules_m4//m4:m4.bzl", "m4_register_toolchains")
m4_register_toolchains()
http_archive(
name = "rules_flex",
sha256 = "f1685512937c2e33a7ebc4d5c6cf38ed282c2ce3b7a9c7c0b542db7e5db59d52",
# flex 2.6.4
urls = ["https://github.com/jmillikin/rules_flex/releases/download/v0.2/rules_flex-v0.2.tar.xz"],
)
load("@rules_flex//flex:flex.bzl", "flex_register_toolchains")
flex_register_toolchains()
http_archive(
name = "rules_bison",
sha256 = "6ee9b396f450ca9753c3283944f9a6015b61227f8386893fb59d593455141481",
# bison 3.3.2
urls = ["https://github.com/jmillikin/rules_bison/releases/download/v0.2/rules_bison-v0.2.tar.xz"],
)
load("@rules_bison//bison:bison.bzl", "bison_register_toolchains")
bison_register_toolchains()
http_archive(
name = "bazel_toolchains",
sha256 = "882fecfc88d3dc528f5c5681d95d730e213e39099abff2e637688a91a9619395",
strip_prefix = "bazel-toolchains-3.4.0",
urls = [
"https://github.com/bazelbuild/bazel-toolchains/releases/download/3.4.0/bazel-toolchains-3.4.0.tar.gz",
"https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/releases/download/3.4.0/bazel-toolchains-3.4.0.tar.gz",
],
)
# We have to import zlib directly ourselves, because protobuf_deps.bzl isn't
# part of the protobuf release yet
# (https://github.com/protocolbuffers/protobuf/issues/5918).
http_archive(
name = "net_zlib",
build_file = "@com_google_protobuf//:third_party/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_protobuf",
repo_mapping = {"@zlib": "@net_zlib"},
sha256 = "1c744a6a1f2c901e68c5521bc275e22bdc66256eeb605c2781923365b7087e5f",
strip_prefix = "protobuf-3.13.0",
urls = [
"https://mirror.bazel.build/github.com/protocolbuffers/protobuf/archive/v3.13.0.zip",
"https://github.com/protocolbuffers/protobuf/archive/v3.13.0.zip",
],
)
http_archive(
name = "rules_proto",
sha256 = "e4fe70af52135d2ee592a07f916e6e1fc7c94cf8786c15e8c0d0f08b1fe5ea16",
strip_prefix = "rules_proto-97d8af4dc474595af3900dd85cb3a29ad28cc313",
url = "https://github.com/bazelbuild/rules_proto/archive/97d8af4dc474595af3900dd85cb3a29ad28cc313.zip",
)
load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains")
rules_proto_dependencies()
rules_proto_toolchains()
http_archive(
name = "rules_python",
sha256 = "778197e26c5fbeb07ac2a2c5ae405b30f6cb7ad1f5510ea6fdac03bded96cc6f",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_python/releases/download/0.2.0/rules_python-0.2.0.tar.gz",
"https://github.com/bazelbuild/rules_python/releases/download/0.2.0/rules_python-0.2.0.tar.gz",
],
)
http_archive(
name = "jsoncpp_git",
build_file = "//bazel:jsoncpp.BUILD",
sha256 = "77a402fb577b2e0e5d0bdc1cf9c65278915cdb25171e3452c68b6da8a561f8f0",
strip_prefix = "jsoncpp-1.9.2",
urls = [
"https://github.com/open-source-parsers/jsoncpp/archive/1.9.2.tar.gz",
],
)
http_archive(
name = "python_six",
build_file = "//bazel:python_six.BUILD",
sha256 = "30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259",
strip_prefix = "six-1.15.0",
urls = [
"https://files.pythonhosted.org/packages/6b/34/415834bfdafca3c5f451532e8a8d9ba89a21c9743a0c59fbd0205c7f9426/six-1.15.0.tar.gz",
],
)
http_archive(
name = "python_anytree",
build_file = "//bazel:python_anytree.BUILD",
sha256 = "79ee0cc74456950003287b0b5c7b76b7d09435563a31d9e553da484325043e1f",
strip_prefix = "anytree-2.8.0",
urls = [
"https://github.com/c0fec0de/anytree/archive/2.8.0.tar.gz",
],
)