blob: ab16d991ff330c8fdd5702a252edc79260c280a8 (
plain) (
blame)
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
|
DAYS = $(shell seq 1 25 | xargs printf "%02i\n")
all:: build run
define make-day
run:: $1/run
build:: $1/main
clean:: $1/clean
.PHONY: $1/run $1/clean
$1/target/debug/day$1: $1/src/main.rs
@cd $1 && cargo build
$1/target/release/day$1: $1/src/main.rs
@cd $1 && cargo build -r
$1/main: $1/target/release/day$1
@cp $1/target/release/day$1 $1/main
$1/debug1: $1/target/debug/day$1
@cd $1 && time ./target/debug/day$1 1
$1/debug2: $1/target/debug/day$1
@cd $1 && time ./target/debug/day$1 2
$1/run1: $1/main
@cd $1 && time ./main 1
$1/run2: $1/main
@cd $1 && time ./main 2
$1/run: $1/main
@echo "== day $1 =="
@echo -en "\npart 1: " && cd $1 && time ./main 1
@echo -en "\npart 2: " && cd $1 && time ./main 2
@echo ""
$1/clean:
rm $1/main
endef
$(foreach day,$(DAYS),$(eval $(call make-day,$(day))))
.PHONY: all build run clean
|