load(":osx_archs.bzl", "OSX_TOOLS_ARCHS")

package(default_visibility = ["//visibility:public"])

exports_files(["osx_archs.bzl"])

# Target constraints for each arch.
# TODO(apple-rules): Rename osx constraint to macOS.
OSX_TOOLS_CONSTRAINTS = {
    "armeabi-v7a": ["@platforms//cpu:arm"],
    "darwin_arm64": [
        "@platforms//os:osx",
        "@platforms//cpu:aarch64",
    ],
    "darwin_arm64e": [
        "@platforms//os:osx",
        "@platforms//cpu:aarch64",
    ],
    "darwin_x86_64": [
        "@platforms//os:osx",
        "@platforms//cpu:x86_64",
    ],
    "ios_arm64": [
        "@platforms//os:ios",
        "@platforms//cpu:aarch64",
    ],
    "ios_arm64e": [
        "@platforms//os:ios",
        "@platforms//cpu:aarch64",
    ],
    "ios_armv7": [
        "@platforms//os:ios",
        "@platforms//cpu:arm",
    ],
    "ios_i386": [
        "@platforms//os:ios",
        "@platforms//cpu:x86_32",
    ],
    "ios_x86_64": [
        "@platforms//os:ios",
        "@platforms//cpu:x86_64",
    ],
    "tvos_arm64": [
        "@platforms//os:ios",
        "@platforms//cpu:aarch64",
    ],
    "tvos_x86_64": [
        "@platforms//os:ios",
        "@platforms//cpu:x86_64",
    ],
    "watchos_arm64_32": [
        "@platforms//os:ios",
        "@platforms//cpu:aarch64",
    ],
    "watchos_armv7k": [
        "@platforms//os:ios",
        "@platforms//cpu:arm",
    ],
    "watchos_i386": [
        "@platforms//os:ios",
        "@platforms//cpu:x86_32",
    ],
    "watchos_x86_64": [
        "@platforms//os:ios",
        "@platforms//cpu:x86_64",
    ],
}

OSX_DEVELOPER_PLATFORM_CPUS = [
    "aarch64",
    "x86_64",
]

[
    toolchain(
        name = "cc-toolchain-" + arch + "-" + cpu,
        exec_compatible_with = [
            # These only execute on macOS.
            "@platforms//os:osx",
            "@platforms//cpu:" + cpu,
        ],
        target_compatible_with = OSX_TOOLS_CONSTRAINTS[arch],
        toolchain = "@local_config_cc//:cc-compiler-" + arch,
        toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
    )
    for arch in OSX_TOOLS_ARCHS + ["armeabi-v7a"]
    for cpu in OSX_DEVELOPER_PLATFORM_CPUS
]
