| # Copyright 2023 The Bazel Authors. All rights reserved. | |
| # | |
| # 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 | |
| # | |
| # http://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. | |
| # ==================== | |
| # NOTE: You probably want to use the constants in test_platforms.bzl | |
| # Otherwise, you'll probably have to manually call Label() on these targets | |
| # to force them to resolve in the proper context. | |
| # ==================== | |
| load("//python:py_runtime.bzl", "py_runtime") | |
| load("//python:py_runtime_pair.bzl", "py_runtime_pair") | |
| platform( | |
| name = "mac", | |
| constraint_values = [ | |
| "@platforms//os:macos", | |
| ], | |
| ) | |
| platform( | |
| name = "linux", | |
| constraint_values = [ | |
| "@platforms//os:linux", | |
| ], | |
| ) | |
| platform( | |
| name = "windows", | |
| constraint_values = [ | |
| "@platforms//os:windows", | |
| ], | |
| ) | |
| # Used when testing downloading of toolchains for a different platform | |
| platform( | |
| name = "linux_x86_64", | |
| constraint_values = [ | |
| "@platforms//cpu:x86_64", | |
| "@platforms//os:linux", | |
| ], | |
| ) | |
| platform( | |
| name = "linux_aarch64", | |
| constraint_values = [ | |
| "@platforms//cpu:aarch64", | |
| "@platforms//os:linux", | |
| ], | |
| ) | |
| platform( | |
| name = "mac_x86_64", | |
| constraint_values = [ | |
| "@platforms//cpu:x86_64", | |
| "@platforms//os:macos", | |
| ], | |
| ) | |
| platform( | |
| name = "windows_x86_64", | |
| constraint_values = [ | |
| "@platforms//cpu:x86_64", | |
| "@platforms//os:windows", | |
| ], | |
| ) | |
| platform( | |
| name = "win_aarch64", | |
| constraint_values = [ | |
| "@platforms//os:windows", | |
| "@platforms//cpu:aarch64", | |
| ], | |
| ) | |
| py_runtime( | |
| name = "platform_runtime", | |
| implementation_name = "fakepy", | |
| interpreter_path = "/fake/python3.9", | |
| interpreter_version_info = { | |
| "major": "4", | |
| "minor": "5", | |
| }, | |
| ) | |
| py_runtime_pair( | |
| name = "platform_runtime_pair", | |
| py3_runtime = ":platform_runtime", | |
| ) | |
| toolchain( | |
| name = "platform_toolchain", | |
| toolchain = ":platform_runtime_pair", | |
| toolchain_type = "//python:toolchain_type", | |
| ) |