-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cargo.toml
54 lines (39 loc) · 1.36 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
[package]
name = "rust-arduino-blink"
version = "0.2.0"
authors = ["Volodymyr M. Lisivka <[email protected]>"]
edition = "2018"
[[bin]]
name = "rust-arduino-blink"
# Commands "cargo test" and "cargo bench" will not compile, because of no_std.
test = false
bench = false
[dependencies]
# Empty stubs for few functions required for panic handling
avr-std-stub = "1.0"
# AVR Hardware Abstraction Library.
# It's not packaged yet to crates.io, because it requires nightly version of Rust
arduino-uno = { git = "https://github.com/Rahix/avr-hal", rev = "b1aedf82" }
# Settings for regular cargo invocation
[profile.dev]
# Panic handling is not available
panic = "abort"
# Link Time Optimization, to remove unused code
lto = true
# Code works properly with "s" or "z" optimization level only, because
# 1,2,3 levels unrols loops and breaks timings, while 0 level is too slow.
# "s" - optimize by size, "z" - optimize by size, but without loop vectorization.
opt-level = "s"
# Settings for cargo invocation with --release switch
[profile.release]
# Optimize by size.
opt-level = "s"
# Debug information is still handy to have.
debug = true
# Link Time Optimization, to remove unused code
lto = true
# Compile program in 1 thread, so optimizer will have all information for optimizations.
codegen-units = 1
# Panic handling is not available
panic = 'abort'
# See also ./cargo/config.toml