xref: /aosp_15_r20/external/crosvm/vm_control/src/sys.rs (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker // Copyright 2022 The ChromiumOS Authors
2*bb4ee6a4SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*bb4ee6a4SAndroid Build Coastguard Worker // found in the LICENSE file.
4*bb4ee6a4SAndroid Build Coastguard Worker 
5*bb4ee6a4SAndroid Build Coastguard Worker cfg_if::cfg_if! {
6*bb4ee6a4SAndroid Build Coastguard Worker     if #[cfg(any(target_os = "android", target_os = "linux"))] {
7*bb4ee6a4SAndroid Build Coastguard Worker         pub mod linux;
8*bb4ee6a4SAndroid Build Coastguard Worker         use linux as platform;
9*bb4ee6a4SAndroid Build Coastguard Worker         pub use platform::{VmMemoryMappingRequest, VmMemoryMappingResponse, FsMappingRequest};
10*bb4ee6a4SAndroid Build Coastguard Worker         #[cfg(feature = "gpu")]
11*bb4ee6a4SAndroid Build Coastguard Worker         pub use platform::gpu::UnixDisplayMode as DisplayMode;
12*bb4ee6a4SAndroid Build Coastguard Worker         #[cfg(feature = "gpu")]
13*bb4ee6a4SAndroid Build Coastguard Worker         pub use platform::gpu::UnixMouseMode as MouseMode;
14*bb4ee6a4SAndroid Build Coastguard Worker     } else if #[cfg(windows)] {
15*bb4ee6a4SAndroid Build Coastguard Worker         pub mod windows;
16*bb4ee6a4SAndroid Build Coastguard Worker         pub use windows as platform;
17*bb4ee6a4SAndroid Build Coastguard Worker         #[cfg(feature = "gpu")]
18*bb4ee6a4SAndroid Build Coastguard Worker         pub type DisplayMode = platform::gpu::WinDisplayMode<platform::gpu::DisplayDataProvider>;
19*bb4ee6a4SAndroid Build Coastguard Worker         #[cfg(feature = "gpu")]
20*bb4ee6a4SAndroid Build Coastguard Worker         pub use platform::gpu::WinMouseMode as MouseMode;
21*bb4ee6a4SAndroid Build Coastguard Worker         pub use platform::InitialAudioSessionState;
22*bb4ee6a4SAndroid Build Coastguard Worker     } else {
23*bb4ee6a4SAndroid Build Coastguard Worker         compile_error!("Unsupported platform");
24*bb4ee6a4SAndroid Build Coastguard Worker     }
25*bb4ee6a4SAndroid Build Coastguard Worker }
26*bb4ee6a4SAndroid Build Coastguard Worker 
27*bb4ee6a4SAndroid Build Coastguard Worker pub use platform::handle_request;
28*bb4ee6a4SAndroid Build Coastguard Worker pub use platform::handle_request_with_timeout;
29*bb4ee6a4SAndroid Build Coastguard Worker pub use platform::prepare_shared_memory_region;
30*bb4ee6a4SAndroid Build Coastguard Worker pub use platform::should_prepare_memory_region;
31