"""apple_support"""

module(
    name = "apple_support",
    bazel_compatibility = [">=7.4.0"],
    compatibility_level = 1,
    version = "2.8.0",
)

bazel_dep(name = "bazel_features", version = "1.27.0")
bazel_dep(name = "bazel_skylib", version = "1.9.0")
bazel_dep(name = "platforms", version = "0.0.9")
bazel_dep(name = "rules_cc", version = "0.2.20")

apple_cc_configure = use_extension("//crosstool:setup.bzl", "apple_cc_configure_extension")
use_repo(apple_cc_configure, "local_config_apple_cc", "local_config_apple_cc_toolchains")

register_toolchains("@local_config_apple_cc_toolchains//:all")

xcode_configure = use_extension("//xcode:xcode_configure.bzl", "xcode_configure_extension")
use_repo(xcode_configure, "local_config_xcode")

bazel_dep(name = "bazel_skylib_gazelle_plugin", version = "1.5.0", dev_dependency = True)
bazel_dep(name = "gazelle", version = "0.46.0", dev_dependency = True)
bazel_dep(name = "rules_go", version = "0.59.0", dev_dependency = True)  # TODO: Remove when transitives update past this version
bazel_dep(name = "rules_shell", version = "0.3.0", dev_dependency = True)
bazel_dep(name = "stardoc", version = "0.8.0", dev_dependency = True)

# TODO: Remove when transitives bump past this
bazel_dep(name = "protobuf", version = "33.0", dev_dependency = True)

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

http_archive(
    name = "swift_linux_toolchain",
    build_file = "//test/linux_toolchain:swift_toolchain.BUILD",
    dev_dependency = True,
    integrity = "sha256-LDrXrXSrcknULxcu47QLyKcpiTAQtKM4S6JvPGHjUAg=",
    strip_prefix = "swift-6.3.3-RELEASE-ubuntu22.04",
    urls = ["https://download.swift.org/swift-6.3.3-release/ubuntu2204/swift-6.3.3-RELEASE/swift-6.3.3-RELEASE-ubuntu22.04.tar.gz"],
)

http_archive(
    name = "swift_linux_sysroot",
    build_file = "//test/linux_toolchain:linux_sysroot.BUILD",
    dev_dependency = True,
    integrity = "sha256-h8Pq+QjmfA4TqENnEZ4SJzzsHSzT2B99dLs2ci1rYHs=",
    patch_cmds = ["mv BUILD.bazel x86_64/BUILD.bazel"],
    strip_prefix = "swift-6.3.3-RELEASE_static-linux-0.1.0.artifactbundle/swift-6.3.3-RELEASE_static-linux-0.1.0/swift-linux-musl/musl-1.2.5.sdk",
    urls = ["https://download.swift.org/swift-6.3.3-release/static-sdk/swift-6.3.3-RELEASE/swift-6.3.3-RELEASE_static-linux-0.1.0.artifactbundle.tar.gz"],
)

dmg_arc_test_deps = use_extension("//tools/http_dmg/private/tests:http_dmg_test_extensions.bzl", "http_dmg_test", dev_dependency = True)
use_repo(
    dmg_arc_test_deps,
    "http_dmg_test_firefox",
    "http_dmg_test_firefox_strip_prefix",
    "http_dmg_test_krita",
    "http_dmg_test_krita_strip_prefix",
)

register_toolchains(
    "//test/linux_toolchain",
    dev_dependency = True,
)

toolchain_env = use_repo_rule("//toolchain:toolchain_env.bzl", "toolchain_env")

toolchain_env(name = "apple_support_toolchain_env")
