mirror of
https://github.com/google/santa.git
synced 2026-01-14 00:37:56 -05:00
227 lines
7.0 KiB
Python
227 lines
7.0 KiB
Python
workspace(name = "santa")
|
|
|
|
load(
|
|
"@bazel_tools//tools/build_defs/repo:git.bzl",
|
|
"git_repository",
|
|
"new_git_repository",
|
|
)
|
|
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
|
|
|
# Abseil LTS branch, Aug 2023
|
|
http_archive(
|
|
name = "com_google_absl",
|
|
sha256 = "59d2976af9d6ecf001a81a35749a6e551a335b949d34918cfade07737b9d93c5",
|
|
strip_prefix = "abseil-cpp-20230802.0",
|
|
urls = ["https://github.com/abseil/abseil-cpp/archive/refs/tags/20230802.0.tar.gz"],
|
|
)
|
|
|
|
http_archive(
|
|
name = "com_google_protobuf",
|
|
patch_args = ["-p1"],
|
|
patches = ["//external_patches/com_google_protobuf:13636.patch"],
|
|
sha256 = "07d69502e58248927b58c7d7e7424135272ba5b2852a753ab6b67e62d2d29355",
|
|
strip_prefix = "protobuf-24.3",
|
|
urls = ["https://github.com/protocolbuffers/protobuf/archive/v24.3.tar.gz"],
|
|
)
|
|
|
|
# We don't directly use rules_python but several dependencies do and they disagree
|
|
# about which version to use, so we force the latest.
|
|
http_archive(
|
|
name = "rules_python",
|
|
sha256 = "48a838a6e1983e4884b26812b2c748a35ad284fd339eb8e2a6f3adf95307fbcd",
|
|
strip_prefix = "rules_python-0.16.2",
|
|
url = "https://github.com/bazelbuild/rules_python/archive/refs/tags/0.16.2.tar.gz",
|
|
)
|
|
|
|
http_archive(
|
|
name = "build_bazel_rules_apple",
|
|
sha256 = "8ac4c7997d863f3c4347ba996e831b5ec8f7af885ee8d4fe36f1c3c8f0092b2c",
|
|
url = "https://github.com/bazelbuild/rules_apple/releases/download/2.5.0/rules_apple.2.5.0.tar.gz",
|
|
)
|
|
|
|
load("@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies")
|
|
|
|
apple_rules_dependencies()
|
|
|
|
load("@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies")
|
|
|
|
swift_rules_dependencies()
|
|
|
|
load(
|
|
"@build_bazel_rules_swift//swift:extras.bzl",
|
|
"swift_rules_extra_dependencies",
|
|
)
|
|
|
|
swift_rules_extra_dependencies()
|
|
|
|
load("@build_bazel_apple_support//lib:repositories.bzl", "apple_support_dependencies")
|
|
|
|
apple_support_dependencies()
|
|
|
|
# Hedron Bazel Compile Commands Extractor
|
|
# Allows integrating with clangd
|
|
# https://github.com/hedronvision/bazel-compile-commands-extractor
|
|
git_repository(
|
|
name = "hedron_compile_commands",
|
|
commit = "ac6411f8f347e5525038cb7858db4969db9e74f2",
|
|
remote = "https://github.com/hedronvision/bazel-compile-commands-extractor.git",
|
|
shallow_since = "1696885905 +0000",
|
|
)
|
|
|
|
load("@hedron_compile_commands//:workspace_setup.bzl", "hedron_compile_commands_setup")
|
|
|
|
hedron_compile_commands_setup()
|
|
|
|
# Googletest - tag: release-1.12.1
|
|
http_archive(
|
|
name = "com_google_googletest",
|
|
sha256 = "ab78fa3f912d44d38b785ec011a25f26512aaedc5291f51f3807c592b506d33a",
|
|
strip_prefix = "googletest-58d77fa8070e8cec2dc1ed015d66b454c8d78850",
|
|
urls = ["https://github.com/google/googletest/archive/58d77fa8070e8cec2dc1ed015d66b454c8d78850.zip"],
|
|
)
|
|
|
|
# Note: Protobuf deps must be loaded after defining the ABSL archive since
|
|
# protobuf repo would pull an in earlier version of ABSL.
|
|
load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")
|
|
|
|
protobuf_deps()
|
|
|
|
# Macops MOL* dependencies
|
|
|
|
git_repository(
|
|
name = "MOLAuthenticatingURLSession",
|
|
commit = "38b5ee46edb262481b16f950266a11d8cb77127c", # tag = v3.1
|
|
remote = "https://github.com/google/macops-molauthenticatingurlsession.git",
|
|
shallow_since = "1671479898 -0500",
|
|
)
|
|
|
|
git_repository(
|
|
name = "MOLCertificate",
|
|
commit = "288553b8ac75d7dd68159ef5b57652a506b8217c", # tag = "v2.1",
|
|
remote = "https://github.com/google/macops-molcertificate.git",
|
|
shallow_since = "1561303966 -0400",
|
|
)
|
|
|
|
git_repository(
|
|
name = "MOLCodesignChecker",
|
|
commit = "7ef66f1df15997defd7651b0ea5d6d9ec65a5b4f", # tag = "v2.2",
|
|
remote = "https://github.com/google/macops-molcodesignchecker.git",
|
|
shallow_since = "1561303990 -0400",
|
|
)
|
|
|
|
git_repository(
|
|
name = "MOLXPCConnection",
|
|
commit = "2c67c925c2b57fea9af551295d2b6711b38bb224", # tag = v2.1
|
|
remote = "https://github.com/google/macops-molxpcconnection.git",
|
|
shallow_since = "1564684202 -0400",
|
|
)
|
|
|
|
# FMDB
|
|
|
|
new_git_repository(
|
|
name = "FMDB",
|
|
build_file_content = """
|
|
objc_library(
|
|
name = "FMDB",
|
|
srcs = glob(["src/fmdb/*.m"], exclude=["src/fmdb.m"]),
|
|
hdrs = glob(["src/fmdb/*.h"]),
|
|
includes = ["src"],
|
|
sdk_dylibs = ["sqlite3"],
|
|
visibility = ["//visibility:public"],
|
|
)
|
|
""",
|
|
commit = "61e51fde7f7aab6554f30ab061cc588b28a97d04", # tag = 2.7.7
|
|
remote = "https://github.com/ccgus/fmdb.git",
|
|
shallow_since = "1589301502 -0700",
|
|
)
|
|
|
|
# OCMock
|
|
|
|
new_git_repository(
|
|
name = "OCMock",
|
|
build_file_content = """
|
|
objc_library(
|
|
name = "OCMock",
|
|
testonly = 1,
|
|
hdrs = glob(["Source/OCMock/*.h"]),
|
|
copts = [
|
|
"-Wno-vla",
|
|
],
|
|
includes = [
|
|
"Source",
|
|
"Source/OCMock",
|
|
],
|
|
non_arc_srcs = glob(["Source/OCMock/*.m"]),
|
|
pch = "Source/OCMock/OCMock-Prefix.pch",
|
|
visibility = ["//visibility:public"],
|
|
)
|
|
""",
|
|
commit = "afd2c6924e8a36cb872bc475248b978f743c6050", # tag = v3.9.1
|
|
patch_args = ["-p1"],
|
|
patches = ["//external_patches/OCMock:503.patch"],
|
|
remote = "https://github.com/erikdoe/ocmock",
|
|
shallow_since = "1635703064 +0100",
|
|
)
|
|
|
|
# Moroz (for testing)
|
|
|
|
http_archive(
|
|
name = "io_bazel_rules_go",
|
|
sha256 = "ae013bf35bd23234d1dea46b079f1e05ba74ac0321423830119d3e787ec73483",
|
|
url = "https://github.com/bazelbuild/rules_go/releases/download/v0.36.0/rules_go-v0.36.0.zip",
|
|
)
|
|
|
|
http_archive(
|
|
name = "bazel_gazelle",
|
|
sha256 = "448e37e0dbf61d6fa8f00aaa12d191745e14f07c31cabfa731f0c8e8a4f41b97",
|
|
url = "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.28.0/bazel-gazelle-v0.28.0.tar.gz",
|
|
)
|
|
|
|
git_repository(
|
|
name = "com_github_groob_moroz",
|
|
commit = "cf740df50fa91bd5b5f2a8946571fad745eafece",
|
|
patch_args = ["-p1"],
|
|
patches = ["//external_patches/moroz:moroz.patch"],
|
|
remote = "https://github.com/groob/moroz",
|
|
shallow_since = "1594986926 -0400",
|
|
)
|
|
|
|
load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies")
|
|
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
|
|
load("//external_patches/moroz:deps.bzl", "moroz_dependencies")
|
|
|
|
# gazelle:repository_macro external_patches/moroz/deps.bzl%moroz_dependencies
|
|
moroz_dependencies()
|
|
|
|
go_rules_dependencies()
|
|
|
|
go_register_toolchains(version = "1.19.3")
|
|
|
|
gazelle_dependencies()
|
|
|
|
# Fuzzing
|
|
|
|
# rules_fuzzing requires an older python for now
|
|
http_archive(
|
|
name = "rules_python_fuzz",
|
|
sha256 = "c03246c11efd49266e8e41e12931090b613e12a59e6f55ba2efd29a7cb8b4258",
|
|
strip_prefix = "rules_python-0.11.0",
|
|
url = "https://github.com/bazelbuild/rules_python/archive/refs/tags/0.11.0.tar.gz",
|
|
)
|
|
|
|
git_repository(
|
|
name = "rules_fuzzing",
|
|
commit = "b193df79b10dbfb4c623bda23e825e835f12bada", # Commit post PR 213 which fixes macOS
|
|
remote = "https://github.com/bazelbuild/rules_fuzzing",
|
|
repo_mapping = {"@rules_python": "@rules_python_fuzz"},
|
|
shallow_since = "1668184479 -0500",
|
|
)
|
|
|
|
load("@rules_fuzzing//fuzzing:repositories.bzl", "rules_fuzzing_dependencies")
|
|
|
|
rules_fuzzing_dependencies()
|
|
|
|
load("@rules_fuzzing//fuzzing:init.bzl", "rules_fuzzing_init")
|
|
|
|
rules_fuzzing_init()
|