Cargo.toml 2.57 KB
Newer Older
1
[package]
Stefan Lankes's avatar
Stefan Lankes committed
2
name = "rusty-hermit"
Stefan Lankes's avatar
Stefan Lankes committed
3
version = "0.3.53"
4
authors = [
5
	"Stefan Lankes <slankes@eonerc.rwth-aachen.de>",
Martin Kröning's avatar
Martin Kröning committed
6
	"Colin Finck <colin.finck@rwth-aachen.de>",
7
]
8
license = "MIT OR Apache-2.0"
9
readme = "README.md"
Stefan Lankes's avatar
Stefan Lankes committed
10
11
keywords = ["unikernel", "libos"]
categories = ["os"]
Stefan Lankes's avatar
Stefan Lankes committed
12
repository = "https://github.com/hermitcore/rusty-hermit"
Stefan Lankes's avatar
Stefan Lankes committed
13
documentation = "https://hermitcore.github.io/libhermit-rs/hermit/"
14
edition = "2018"
Martin Kröning's avatar
Martin Kröning committed
15
16
17
18
19
20
21
22
23
24
25
description = "A Rust-based library operting system"
exclude = [
	"/.github/*",
	"/.vscode/*",
	"/.gitlab-ci.yml",
	"/Dockerfile",
	"/img/*",
	"./CMakeLists.txt",
	".gitattributes",
	".gitignore",
]
26

27
[lib]
28
crate-type = ["staticlib", "lib"]  # "lib" required for integration tests
Stefan Lankes's avatar
Stefan Lankes committed
29
name = "hermit"
30

31
32
33
34
35
36
[[test]]
name = "basic_print"
harness = false

[[test]]
name = "basic_math"
37
38
39
40
harness = true

[[test]]
name = "measure_startup_time"
41
42
harness = false

43
[features]
44
default = ["pci", "acpi", "fsgsbase", "smp", "aarch64-qemu-stdout"]
45
vga = []
46
newlib = []
47
48
pci = []
acpi = []
49
smp = []
50
fsgsbase = []
51
aarch64-qemu-stdout = []	# Doesn't do anything on x86 
52

53
[dependencies]
54
bitflags = "1.3"
55
crossbeam-utils = { version = "0.8", default-features = false }
Martin Kröning's avatar
Martin Kröning committed
56
57
58
59
60
log = { version = "0.4", default-features = false }
num = { version = "0.4", default-features = false }
num-derive = "0.3"
num-traits = { version = "0.2", default-features = false }
scopeguard = { version = "1.1", default-features = false }
61

Martin Kröning's avatar
Martin Kröning committed
62
[target.'cfg(target_arch = "x86_64")'.dependencies]
Stefan Lankes's avatar
Stefan Lankes committed
63
multiboot = "0.7"
64
x86 = { version = "0.42", default-features = false }
65

Martin Kröning's avatar
Martin Kröning committed
66
[dev-dependencies]
67
float-cmp = "0.9"
Martin Kröning's avatar
Martin Kröning committed
68
num-traits = { version = "0.2", default-features = false }
69
x86 = { version = "0.42", default-features = false }
Stefan Lankes's avatar
Stefan Lankes committed
70

Stefan Lankes's avatar
Stefan Lankes committed
71
[target.'cfg(target_arch = "aarch64")'.dependencies.aarch64]
72
version = "0.0.6"
Stefan Lankes's avatar
Stefan Lankes committed
73
74
default-features = false

75
[target.'cfg(target_arch = "aarch64")'.dependencies]
76
qemu-exit = "2.0"
77

Stefan Lankes's avatar
Stefan Lankes committed
78
79
# The development profile, used for `cargo build`.
[profile.dev]
80
opt-level = 1      # controls the `--opt-level` the compiler builds with
Stefan Lankes's avatar
Stefan Lankes committed
81
debug = true       # controls whether the compiler passes `-C debuginfo`
82
# a value of `true` is equivalent to `2`
Stefan Lankes's avatar
Stefan Lankes committed
83
rpath = false      # controls whether the compiler passes `-C rpath`
Stefan Lankes's avatar
Stefan Lankes committed
84
lto = false         # controls `-C lto` for binaries and staticlibs
Stefan Lankes's avatar
Stefan Lankes committed
85
debug-assertions = true # controls whether debug assertions are enabled
86
# Disabled because of https://github.com/rust-lang/cargo/issues/7359
Martin Kröning's avatar
Martin Kröning committed
87
# panic = "abort" # Call abort on panic https://github.com/rust-lang/rust/pull/32900
Stefan Lankes's avatar
Stefan Lankes committed
88
89
90

# The release profile, used for `cargo build --release`.
[profile.release]
Stefan Lankes's avatar
Stefan Lankes committed
91
opt-level = 2
Stefan Lankes's avatar
Stefan Lankes committed
92
93
debug = false
rpath = false
Stefan Lankes's avatar
Stefan Lankes committed
94
lto = false
Stefan Lankes's avatar
Stefan Lankes committed
95
debug-assertions = false
Martin Kröning's avatar
Martin Kröning committed
96
# panic = "abort"