forked from rust-osdev/bootloader
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
99 lines (87 loc) · 3.12 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
[package]
name = "bootloader"
version = "0.10.12"
authors = ["Philipp Oppermann <[email protected]>"]
license = "MIT/Apache-2.0"
description = "An experimental x86_64 bootloader that works on both BIOS and UEFI systems."
repository = "https://github.com/rust-osdev/bootloader"
edition = "2018"
build = "build.rs"
[workspace]
members = [
"tests/runner",
"tests/test_kernels/default_settings",
"tests/test_kernels/map_phys_mem",
"tests/test_kernels/higher_half",
"tests/test_kernels/pie",
]
exclude = [
"examples/basic",
"examples/test_framework",
]
[[bin]]
name = "builder"
required-features = ["builder"]
[[bin]]
name = "bios"
required-features = ["bios_bin"]
[[bin]]
name = "uefi"
required-features = ["uefi_bin"]
[dependencies]
xmas-elf = { version = "0.8.0", optional = true }
x86_64 = { version = "0.14.7", optional = true, default-features = false, features = ["instructions", "inline_asm"] }
usize_conversions = { version = "0.2.0", optional = true }
bit_field = { version = "0.10.0", optional = true }
log = { version = "0.4.8", optional = true }
uefi = { version = "0.11.0", optional = true }
argh = { version = "0.1.3", optional = true }
displaydoc = { version = "0.1.7", optional = true }
conquer-once = { version = "0.2.1", optional = true, default-features = false }
spinning_top = { version = "0.2.1", optional = true }
anyhow = { version = "1.0.32", optional = true }
llvm-tools = { version = "0.1.1", optional = true }
thiserror = { version = "1.0.20", optional = true }
json = { version = "0.12.4", optional = true }
rsdp = { version = "1.0.0", optional = true }
fatfs = { version = "0.3.4", optional = true }
gpt = { version = "2.0.0", optional = true }
raw-cpuid = { version = "10.2.0", optional = true }
rand = { version = "0.8.4", optional = true, default-features = false }
rand_chacha = { version = "0.3.1", optional = true, default-features = false }
[dependencies.noto-sans-mono-bitmap]
version = "0.1.2"
default-features = false
features = ["regular", "size_14"]
optional = true
[build-dependencies]
llvm-tools-build = { version = "0.1", optional = true, package = "llvm-tools" }
toml = { version = "0.5.1", optional = true }
serde = { version = "1.0", features = ["derive"], optional = true}
quote = { version = "1.0", optional = true}
proc-macro2 = { version = "1.0", optional = true}
[features]
default = []
builder = ["argh", "thiserror", "displaydoc", "anyhow", "llvm-tools", "json", "fatfs", "gpt"]
bios_bin = ["binary", "rsdp"]
uefi_bin = ["binary", "uefi"]
binary = [
"llvm-tools-build", "x86_64", "toml", "xmas-elf", "usize_conversions", "log", "conquer-once",
"spinning_top", "serde", "noto-sans-mono-bitmap", "quote", "proc-macro2", "raw-cpuid", "rand",
"rand_chacha"
]
[profile.dev]
panic = "abort"
[profile.release]
panic = "abort"
lto = false
debug = true
overflow-checks = true
[package.metadata.docs.rs]
default-target = "x86_64-unknown-linux-gnu"
[package.metadata.release]
no-dev-version = true
pre-release-replacements = [
{ file="Changelog.md", search="# Unreleased", replace="# Unreleased\n\n# {{version}} – {{date}}", exactly=1 },
]
pre-release-commit-message = "Release version {{version}}"