blob: d3e6c64ce937408d0f5f6c4a0045a49d81df9cd8 [file] [log] [blame]
# Copyright 2023 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from __future__ import annotations
import sys
from typing import Final
from crossbench.plt.arch import MachineArch
from crossbench.plt.base import Platform, SubprocessError, TupleCmdArgs
from crossbench.plt.linux import LinuxPlatform
from crossbench.plt.linux_ssh import LinuxSshPlatform
from crossbench.plt.macos import MacOSPlatform
from crossbench.plt.win import WinPlatform
def _get_default() -> Platform:
if sys.platform == "linux":
return LinuxPlatform()
if sys.platform == "darwin":
return MacOSPlatform()
if sys.platform == "win32":
return WinPlatform()
raise NotImplementedError("Unsupported Platform")
PLATFORM: Final[Platform] = _get_default()