diff options
Diffstat (limited to 'WORKSPACE.bazel')
-rw-r--r-- | WORKSPACE.bazel | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel new file mode 100644 index 00000000..c07582b7 --- /dev/null +++ b/WORKSPACE.bazel @@ -0,0 +1,108 @@ +workspace(name = "jazzer") + +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") +load("//:repositories.bzl", "jazzer_dependencies") + +jazzer_dependencies() + +load("//:init.bzl", "jazzer_init") + +jazzer_init() + +http_archive( + name = "org_chromium_sysroot_linux_x64", + build_file_content = """ +filegroup( + name = "sysroot", + srcs = glob(["*/**"]), + visibility = ["//visibility:public"], +) +""", + sha256 = "84656a6df544ecef62169cfe3ab6e41bb4346a62d3ba2a045dc5a0a2ecea94a3", + urls = ["https://commondatastorage.googleapis.com/chrome-linux-sysroot/toolchain/2202c161310ffde63729f29d27fe7bb24a0bc540/debian_stretch_amd64_sysroot.tar.xz"], +) + +http_archive( + name = "com_grail_bazel_toolchain", + patches = [ + # There is no static runtime library for ASan on macOS, so when using + # the toolchain in the CI, we have to explicitly depend on the dylib and + # add it to the runfiles for clang/ld. + "//third_party:bazel-toolchain-export-dynamic-macos-asan.patch", + ], + sha256 = "da607faed78c4cb5a5637ef74a36fdd2286f85ca5192222c4664efec2d529bb8", + strip_prefix = "bazel-toolchain-0.6.3", + urls = ["https://github.com/grailbio/bazel-toolchain/archive/0.6.3.tar.gz"], +) + +http_archive( + name = "googletest", + sha256 = "9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb", + strip_prefix = "googletest-release-1.10.0", + url = "https://github.com/google/googletest/archive/release-1.10.0.tar.gz", +) + +http_archive( + name = "rules_foreign_cc", + sha256 = "8ab257584256e2c7eefa0c4e0794ae3be3e8f634f9ec0356da0a653dfed5da9a", + strip_prefix = "rules_foreign_cc-76198edc790de8e8514bddaa3895d1145fccd6aa", + url = "https://github.com/bazelbuild/rules_foreign_cc/archive/76198edc790de8e8514bddaa3895d1145fccd6aa.tar.gz", +) + +http_archive( + name = "rules_jvm_external", + sha256 = "f36441aa876c4f6427bfb2d1f2d723b48e9d930b62662bf723ddfb8fc80f0140", + strip_prefix = "rules_jvm_external-4.1", + url = "https://github.com/bazelbuild/rules_jvm_external/archive/4.1.zip", +) + +http_archive( + name = "libjpeg_turbo", + build_file = "//third_party:libjpeg_turbo.BUILD", + sha256 = "6a965adb02ad898b2ae48214244618fe342baea79db97157fdc70d8844ac6f09", + strip_prefix = "libjpeg-turbo-2.0.90", + url = "https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.0.90.tar.gz", +) + +load("@com_grail_bazel_toolchain//toolchain:deps.bzl", "bazel_toolchain_dependencies") + +bazel_toolchain_dependencies() + +load("@com_grail_bazel_toolchain//toolchain:rules.bzl", "llvm_toolchain") + +llvm_toolchain( + name = "llvm_toolchain", + llvm_version = "13.0.0", + sysroot = { + "linux-x86_64": "@org_chromium_sysroot_linux_x64//:sysroot", + }, +) + +load("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps") + +rules_jvm_external_deps() + +load("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup") + +rules_jvm_external_setup() + +load("@rules_foreign_cc//foreign_cc:repositories.bzl", "rules_foreign_cc_dependencies") + +rules_foreign_cc_dependencies() + +load("@rules_jvm_external//:defs.bzl", "maven_install") +load("//:maven.bzl", "MAVEN_ARTIFACTS") + +maven_install( + artifacts = MAVEN_ARTIFACTS, + fail_if_repin_required = True, + maven_install_json = "//:maven_install.json", + repositories = [ + "https://repo1.maven.org/maven2", + ], + strict_visibility = True, +) + +load("@maven//:defs.bzl", "pinned_maven_install") + +pinned_maven_install() |