1*ec63e07aSXin Li# Copyright 2019 Google LLC 2*ec63e07aSXin Li# 3*ec63e07aSXin Li# Licensed under the Apache License, Version 2.0 (the "License"); 4*ec63e07aSXin Li# you may not use this file except in compliance with the License. 5*ec63e07aSXin Li# You may obtain a copy of the License at 6*ec63e07aSXin Li# 7*ec63e07aSXin Li# https://www.apache.org/licenses/LICENSE-2.0 8*ec63e07aSXin Li# 9*ec63e07aSXin Li# Unless required by applicable law or agreed to in writing, software 10*ec63e07aSXin Li# distributed under the License is distributed on an "AS IS" BASIS, 11*ec63e07aSXin Li# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*ec63e07aSXin Li# See the License for the specific language governing permissions and 13*ec63e07aSXin Li# limitations under the License. 14*ec63e07aSXin Li 15*ec63e07aSXin Liworkspace(name = "com_google_sandboxed_api") 16*ec63e07aSXin Li 17*ec63e07aSXin Liload("//sandboxed_api/bazel:sapi_deps.bzl", "sapi_deps") 18*ec63e07aSXin Li 19*ec63e07aSXin Li# Load Sandboxed API dependencies 20*ec63e07aSXin Lisapi_deps() 21*ec63e07aSXin Li 22*ec63e07aSXin Liload("@bazel_skylib//lib:versions.bzl", "versions") 23*ec63e07aSXin Liload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") 24*ec63e07aSXin Liload( 25*ec63e07aSXin Li "//sandboxed_api/bazel:llvm_config.bzl", 26*ec63e07aSXin Li "llvm_disable_optional_support_deps", 27*ec63e07aSXin Li) 28*ec63e07aSXin Liload("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") 29*ec63e07aSXin Li 30*ec63e07aSXin Liversions.check(minimum_bazel_version = "5.1.0") 31*ec63e07aSXin Li 32*ec63e07aSXin Liprotobuf_deps() 33*ec63e07aSXin Li 34*ec63e07aSXin Lillvm_disable_optional_support_deps() 35*ec63e07aSXin Li 36*ec63e07aSXin Li# zlib, only needed for examples 37*ec63e07aSXin Lihttp_archive( 38*ec63e07aSXin Li name = "net_zlib", 39*ec63e07aSXin Li build_file = "//sandboxed_api:bazel/external/zlib.BUILD", 40*ec63e07aSXin Li patch_args = ["-p1"], 41*ec63e07aSXin Li # This is a patch that removes the "OF" macro that is used in zlib function 42*ec63e07aSXin Li # definitions. It is necessary, because libclang, the library used by the 43*ec63e07aSXin Li # interface generator to parse C/C++ files contains a bug that manifests 44*ec63e07aSXin Li # itself with macros like this. 45*ec63e07aSXin Li # We are investigating better ways to avoid this issue. For most "normal" 46*ec63e07aSXin Li # C and C++ headers, parsing just works. 47*ec63e07aSXin Li patches = ["//sandboxed_api:bazel/external/zlib.patch"], 48*ec63e07aSXin Li sha256 = "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1", # 2020-04-23 49*ec63e07aSXin Li strip_prefix = "zlib-1.2.11", 50*ec63e07aSXin Li urls = [ 51*ec63e07aSXin Li "https://mirror.bazel.build/zlib.net/zlib-1.2.11.tar.gz", 52*ec63e07aSXin Li "https://www.zlib.net/zlib-1.2.11.tar.gz", 53*ec63e07aSXin Li ], 54*ec63e07aSXin Li) 55