-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefile.toml
54 lines (47 loc) · 1.6 KB
/
Makefile.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
[tasks.build_latest]
description = "Build aoc_latest"
command = "cargo"
args = ["build", "-p", "aoc_latest", "--release"]
workspace = false
[tasks.vtune]
description = "Run intel vTune"
dependencies = ["build_latest"]
script = '''
rm -rf vtune_out
sudo "c:/Program Files (x86)/Intel/oneAPI/vtune/latest/bin64/vtune.exe" -r vtune_out -collect hotspots -knob sampling-mode=hw -- target/release/aoc_latest.exe -r 10
"c:/Program Files (x86)/Intel/oneAPI/vtune/latest/bin64/vtune-gui.exe" vtune_out
'''
workspace = false
[tasks.flamegraph]
description = "Generate flamegraph for aoc_latest"
install_crate = "flamegraph"
script = '''
cargo flamegraph -p aoc_latest -F4294967295 --open --release --
'''
workspace = false
[tasks.watch]
description = "watch for latest changes to a single solution file and recompile and run on changes"
install_crate = "cargo-watch"
command = "cargo"
args = ["watch", "--why", "-x", "run --release -p aoc_latest"]
workspace = false
[tasks.watch2]
description = "watch for latest changes to a single solution file and recompile and run on changes"
install_crate = "cargo-watch"
command = "cargo"
args = ["run", "--release", "-p", "aoc_latest"]
watch = true
workspace = false
[tasks.run_all]
description = "compile and run all solutions"
command = "cargo"
args = ["run", "--release", "-p", "aoc"]
workspace = false
[tasks.this_year]
description = "compile and run all solutions"
command = "cargo"
args = ["run", "--release", "-p", "aoc", "--", "-y2024"]
workspace = false
[env]
CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = true
RUST_BACKTRACE = 0