# Copyright 2026 Google LLC
#
# Licensed 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
#
#    https://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.
#

module(
    name = "c2pa",
    version = "0.1.0",
)

bazel_dep(name = "abseil-cpp", version = "20260526.0")
bazel_dep(name = "googletest", version = "1.17.0.bcr.2")
bazel_dep(name = "protobuf", version = "34.1")
bazel_dep(name = "rules_cc", version = "0.2.17")
bazel_dep(name = "rules_foreign_cc", version = "0.15.1")
bazel_dep(name = "riegeli", version = "0.0.0-20250822-9f2744d")
bazel_dep(name = "nlohmann_json", version = "3.12.0.bcr.1")
bazel_dep(name = "boringssl", version = "0.20260413.0")
bazel_dep(name = "tink_cc", version = "2.7.0")
bazel_dep(name = "re2", version = "2025-11-05.bcr.1")

# Add rules_android and its dependencies
bazel_dep(name = "rules_java", version = "9.6.1")  # Often needed by rules_android
bazel_dep(name = "bazel_skylib", version = "1.9.0")  # Often needed by rules_android
bazel_dep(name = "rules_android", version = "0.7.1")

single_version_override(
    module_name = "rules_go",
    version = "0.60.0",
)

# Configure Android SDK
remote_android_extensions = use_extension(
    "@rules_android//bzlmod_extensions:android_extensions.bzl",
    "remote_android_tools_extensions",
)
use_repo(remote_android_extensions, "android_tools")

android_sdk_repository_extension = use_extension("@rules_android//rules/android_sdk_repository:rule.bzl", "android_sdk_repository_extension")
use_repo(android_sdk_repository_extension, "androidsdk")

register_toolchains("@androidsdk//:sdk-toolchain", "@androidsdk//:all")

http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "libcppbor",
    build_file = "@//:external/libcppbor.BUILD",
    urls = ["https://android.googlesource.com/platform/system/libcppbor/+archive/refs/heads/main.tar.gz"],
)

archive_override(
    module_name = "boringssl",
    patch_strip = 1,
    patches = ["@//:external/boringssl_pki_visibility.patch"],
    strip_prefix = "boringssl-0.20260413.0",
    urls = ["https://github.com/google/boringssl/archive/0.20260413.0.tar.gz"],
)
