| // Copyright 2022 The ChromiumOS Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| cfg_if::cfg_if! { |
| if #[cfg(any(target_os = "android", target_os = "linux"))] { |
| pub(crate) mod linux; |
| use linux as platform; |
| pub(crate) use crate::crosvm::sys::linux::{run_config, ExitState}; |
| } else if #[cfg(windows)] { |
| pub(crate) mod windows; |
| use windows as platform; |
| pub(crate) use windows::ExitState; |
| pub(crate) use windows::run_config; |
| } else { |
| compile_error!("Unsupported platform"); |
| } |
| } |
| |
| pub(crate) use platform::main::cleanup; |
| pub(crate) use platform::main::error_to_exit_code; |
| pub(crate) use platform::main::get_library_watcher; |
| pub(crate) use platform::main::init_log; |
| pub(crate) use platform::main::run_command; |
| #[cfg(feature = "sandbox")] |
| pub(crate) use platform::main::sandbox_lower_token; |
| pub(crate) use platform::main::start_device; |
| #[cfg(not(feature = "crash-report"))] |
| pub(crate) use platform::set_panic_hook; |