# Copyright 2019 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

from recipe_engine.recipe_api import Property
from recipe_engine.config import Single

PYTHON_VERSION_COMPATIBILITY = "PY3"

DEPS = [
    "recipe_engine/cipd",
    "recipe_engine/context",
    "recipe_engine/file",
    "recipe_engine/path",
    "recipe_engine/platform",
    "recipe_engine/runtime",
    "recipe_engine/step",
]

PROPERTIES = {
    "macos_sdk.sdk_dir": Property(param_name="sdk_dir", kind=Single(str), default=None),
    "macos_sdk.version": Property(
        # Versions refer to this package:
        # https://chrome-infra-packages.appspot.com/p/infra_internal/ios/xcode/mac/+/
        # Check minimum MacOS version here:
        # https://en.wikipedia.org/wiki/Xcode#Version_comparison_table
        param_name="version",
        kind=Single(str),
        default="12B5025f",
    ),
    "macos_sdk.cipd_package": Property(
        param_name="cipd_package",
        kind=Single(str),
        default="infra/tools/mac_toolchain/${platform}",
    ),
    "macos_sdk.cipd_version": Property(
        param_name="cipd_version",
        kind=Single(str),
        default="git_revision:e9b1fe29fe21a1cd36428c43ea2aba244bd31280",
    ),
}
