target_lexicon/
host.rs

1use crate::{Architecture, BinaryFormat, Environment, OperatingSystem, Triple, Vendor};
2
3// Include the implementations of the `HOST` object containing information
4// about the current host.
5include!(concat!(env!("OUT_DIR"), "/host.rs"));
6
7#[cfg(test)]
8mod tests {
9    #[cfg(target_os = "aix")]
10    #[test]
11    fn test_aix() {
12        use super::*;
13        assert_eq!(OperatingSystem::host(), OperatingSystem::Aix);
14    }
15
16    #[cfg(target_os = "linux")]
17    #[test]
18    fn test_linux() {
19        use super::*;
20        assert_eq!(OperatingSystem::host(), OperatingSystem::Linux);
21    }
22
23    #[cfg(target_os = "macos")]
24    #[test]
25    fn test_macos() {
26        use super::*;
27        assert_eq!(OperatingSystem::host(), OperatingSystem::Darwin);
28    }
29
30    #[cfg(windows)]
31    #[test]
32    fn test_windows() {
33        use super::*;
34        assert_eq!(OperatingSystem::host(), OperatingSystem::Windows);
35    }
36
37    #[cfg(target_pointer_width = "16")]
38    #[test]
39    fn test_ptr16() {
40        use super::*;
41        assert_eq!(Architecture::host().pointer_width().unwrap().bits(), 16);
42    }
43
44    #[cfg(target_pointer_width = "32")]
45    #[test]
46    fn test_ptr32() {
47        use super::*;
48        assert_eq!(Architecture::host().pointer_width().unwrap().bits(), 32);
49    }
50
51    #[cfg(target_pointer_width = "64")]
52    #[test]
53    fn test_ptr64() {
54        use super::*;
55        assert_eq!(Architecture::host().pointer_width().unwrap().bits(), 64);
56    }
57
58    #[test]
59    fn host_object() {
60        use super::*;
61        assert_eq!(HOST, Triple::host());
62    }
63}