@@ -8,38 +8,10 @@ rust-version = "1.74"
8
8
build = " build.rs"
9
9
10
10
[features ]
11
- default = [" linux" ]
12
- # Linux/FreeBSD
13
- unix = [" std" , " raw_pio" , " smbios" , " dep:nix" , " dep:libc" ]
14
- linux = [" unix" , " linux_pio" , " cros_ec_driver" , " hidapi" , " rusb" ]
15
- freebsd = [" unix" , " freebsd_pio" , " hidapi" , " rusb" ]
16
- # hidapi and rusb don't seem to build in the cross container at the moment
17
- cross_freebsd = [" unix" , " freebsd_pio" ]
18
- # Windows does not have the cros_ec driver nor raw port I/O access to userspace
19
- windows = [" std" , " smbios" , " dep:windows" , " win_driver" , " raw_pio" , " hidapi" , " rusb" , " dep:wmi" ]
20
- smbios = [" dep:smbios-lib" ]
21
- std = [" dep:clap" , " dep:clap-num" , " dep:clap-verbosity-flag" , " dep:env_logger" , " smbios-lib?/std" ]
11
+ default = [" hidapi" , " rusb" ]
22
12
rusb = [" dep:rusb" ]
23
13
hidapi = [" dep:hidapi" ]
24
- uefi = [
25
- " dep:plain" , " raw_pio" , " smbios" , " lazy_static/spin_no_std" , " dep:uefi" , " dep:uefi-services" ,
26
- # Otherwise I get: `LLVM ERROR: Do not know how to split the result of this operator!`
27
- # Seems to be a Ruset/LLVM bug when SSE is enabled.
28
- # See: https://github.com/rust-lang/rust/issues/61721
29
- " sha2/force-soft"
30
- ]
31
-
32
- # EC communication via Port I/O on FreeBSD
33
- freebsd_pio = [" redox_hwio/std" ]
34
- # EC communication via Port I/O on Linux
35
- linux_pio = [" dep:libc" , " redox_hwio/std" ]
36
- # EC communication via raw Port I/O (e.g. UEFI or other ring 0 code)
37
- raw_pio = []
38
- # EC communication via cros_ec driver on Linux
39
- cros_ec_driver = []
40
-
41
- # Chromium EC driver by DHowett
42
- win_driver = []
14
+ uefi = [ " lazy_static/spin_no_std" ]
43
15
44
16
[build-dependencies ]
45
17
built = { version = " 0.5" , features = [" chrono" , " git2" ] }
@@ -48,39 +20,42 @@ built = { version = "0.5", features = ["chrono", "git2"] }
48
20
lazy_static = " 1.4.0"
49
21
sha2 = { version = " 0.10.8" , default-features = false , features = [ " force-soft" ] }
50
22
regex = { version = " 1.11.1" , default-features = false }
51
- redox_hwio = { git = " https://github.com/FrameworkComputer/rust-hwio" , branch = " freebsd" , default-features = false }
52
- libc = { version = " 0.2.155" , optional = true }
53
- clap = { version = " 4.5" , features = [" derive" , " cargo" ], optional = true }
54
- clap-num = { version = " 1.2.0" , optional = true }
55
- clap-verbosity-flag = { version = " 2.2.1" , optional = true }
56
- nix = { version = " 0.29.0" , features = [" ioctl" , " user" ], optional = true }
57
23
num = { version = " 0.4" , default-features = false }
58
24
num-derive = { version = " 0.4" , default-features = false }
59
25
num-traits = { version = " 0.2" , default-features = false }
60
- env_logger = { version = " 0.11" , optional = true }
61
26
log = { version = " 0.4" , default-features = true }
62
- uefi = { version = " 0.20" , features = [" alloc" ], optional = true }
63
- uefi-services = { version = " 0.17" , optional = true }
64
- plain = { version = " 0.2.3" , optional = true }
65
- spin = { version = " 0.9.8" , optional = false }
66
- hidapi = { version = " 2.6.3" , optional = true , features = [ " windows-native" ] }
67
- rusb = { version = " 0.9.4" , optional = true }
27
+ spin = { version = " 0.9.8" }
68
28
no-std-compat = { version = " 0.4.1" , features = [ " alloc" ] }
69
29
guid_macros = { path = " ../guid_macros" }
70
- wmi = { version = " 0.15.0" , optional = true }
30
+ hidapi = { version = " 2.6.3" , features = [ " windows-native" ], optional = true }
31
+ rusb = { version = " 0.9.4" , optional = true }
32
+
33
+ [target .'cfg(target_os = "uefi")' .dependencies ]
34
+ uefi = { version = " 0.20" , features = [" alloc" ] }
35
+ uefi-services = " 0.17"
36
+ plain = " 0.2.3"
37
+ redox_hwio = { git = " https://github.com/FrameworkComputer/rust-hwio" , branch = " freebsd" , default-features = false }
38
+ smbios-lib = { git = " https://github.com/FrameworkComputer/smbios-lib.git" , branch = " no-std" , default-features = false }
39
+
40
+ [target .'cfg(windows)' .dependencies ]
41
+ wmi = " 0.15.0"
42
+ smbios-lib = { git = " https://github.com/FrameworkComputer/smbios-lib.git" , branch = " no-std" }
43
+ env_logger = " 0.11"
44
+ clap = { version = " 4.5" , features = [" derive" , " cargo" ] }
45
+ clap-num = { version = " 1.2.0" }
46
+ clap-verbosity-flag = { version = " 2.2.1" }
71
47
72
- [dependencies . smbios-lib ]
73
- git = " https://github.com/FrameworkComputer/smbios-lib.git "
74
- branch = " no-std "
75
- optional = true
76
- default-features = false
77
- # Local development
78
- # path = "../../smbios-lib"
79
- # After my changes are upstreamed
80
- # version = "0.9.0"
48
+ [target . 'cfg(unix)' . dependencies ]
49
+ libc = " 0.2.155 "
50
+ nix = { version = " 0.29.0 " , features = [ " ioctl " , " user " ] }
51
+ redox_hwio = { git = " https://github.com/FrameworkComputer/rust-hwio " , branch = " freebsd " }
52
+ smbios-lib = { git = " https://github.com/FrameworkComputer/smbios-lib.git " , branch = " no-std " }
53
+ env_logger = " 0.11 "
54
+ clap = { version = " 4.5 " , features = [ " derive " , " cargo " ] }
55
+ clap-num = { version = " 1.2.0 " }
56
+ clap-verbosity-flag = { version = " 2.2.1 " }
81
57
82
- [dependencies .windows ]
83
- optional = true
58
+ [target .'cfg(windows)' .dependencies .windows ]
84
59
version = " 0.59.0"
85
60
features = [
86
61
" Win32_Foundation" ,
0 commit comments