build: get rid of "new" target
This commit is contained in:
98
Makefile
98
Makefile
@@ -1,7 +1,7 @@
|
|||||||
GO = go
|
GO = go
|
||||||
BIN = bin/aoc
|
BIN = bin/aoc
|
||||||
|
|
||||||
.PHONY: build test clean new
|
.PHONY: build test clean
|
||||||
|
|
||||||
build:
|
build:
|
||||||
@mkdir -p $(dir $(BIN))
|
@mkdir -p $(dir $(BIN))
|
||||||
@@ -13,53 +13,51 @@ test:
|
|||||||
clean:
|
clean:
|
||||||
@rm -f $(BIN)
|
@rm -f $(BIN)
|
||||||
|
|
||||||
new:
|
|
||||||
@if [ -z "$(filter-out $@,$(MAKECMDGOALS))" ]; then \
|
|
||||||
echo "Usage: make new 2020D9"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
@DAY_ARG=$$(echo $(filter-out $@,$(MAKECMDGOALS)) | awk '{print $$1}'); \
|
|
||||||
YEAR=$$(echo $$DAY_ARG | sed 's/D.*//'); \
|
|
||||||
DAY_NUM=$$(echo $$DAY_ARG | sed 's/.*D//'); \
|
|
||||||
DAY_NAME=$$(case $$DAY_NUM in \
|
|
||||||
1) echo "One" ;; \
|
|
||||||
2) echo "Two" ;; \
|
|
||||||
3) echo "Three" ;; \
|
|
||||||
4) echo "Four" ;; \
|
|
||||||
5) echo "Five" ;; \
|
|
||||||
6) echo "Six" ;; \
|
|
||||||
7) echo "Seven" ;; \
|
|
||||||
8) echo "Eight" ;; \
|
|
||||||
9) echo "Nine" ;; \
|
|
||||||
10) echo "Ten" ;; \
|
|
||||||
11) echo "Eleven" ;; \
|
|
||||||
12) echo "Twelve" ;; \
|
|
||||||
13) echo "Thirteen" ;; \
|
|
||||||
14) echo "Fourteen" ;; \
|
|
||||||
15) echo "Fifteen" ;; \
|
|
||||||
16) echo "Sixteen" ;; \
|
|
||||||
17) echo "Seventeen" ;; \
|
|
||||||
18) echo "Eighteen" ;; \
|
|
||||||
19) echo "Nineteen" ;; \
|
|
||||||
20) echo "Twenty" ;; \
|
|
||||||
21) echo "TwentyOne" ;; \
|
|
||||||
22) echo "TwentyTwo" ;; \
|
|
||||||
23) echo "TwentyThree" ;; \
|
|
||||||
24) echo "TwentyFour" ;; \
|
|
||||||
25) echo "TwentyFive" ;; \
|
|
||||||
*) echo "Unknown" ;; \
|
|
||||||
esac); \
|
|
||||||
mkdir -p internal/$$YEAR/Day$$DAY_NAME; \
|
|
||||||
mkdir -p internal/data/$$YEAR/Day$$DAY_NAME; \
|
|
||||||
touch internal/$$YEAR/Day$$DAY_NAME/code.go; \
|
|
||||||
touch internal/$$YEAR/Day$$DAY_NAME/code_test.go; \
|
|
||||||
if [ -n "$$ADVENTOFCODE_SESSION" ]; then \
|
|
||||||
curl -s -H "Cookie: session=$$ADVENTOFCODE_SESSION" \
|
|
||||||
https://adventofcode.com/$$YEAR/day/$$DAY_NUM/input \
|
|
||||||
| perl -pe 'chomp if eof' > internal/data/$$YEAR/Day$$DAY_NAME/input.txt; \
|
|
||||||
else \
|
|
||||||
touch internal/data/$$YEAR/Day$$DAY_NAME/input.txt; \
|
|
||||||
fi; \
|
|
||||||
|
|
||||||
%:
|
%:
|
||||||
@:
|
@DAY_ARG=$@; \
|
||||||
|
if echo $$DAY_ARG | grep -qE '^[0-9]{4}D[0-9]+$$'; then \
|
||||||
|
YEAR=$$(echo $$DAY_ARG | sed 's/D.*//'); \
|
||||||
|
DAY_NUM=$$(echo $$DAY_ARG | sed 's/.*D//'); \
|
||||||
|
DAY_NAME=$$(case $$DAY_NUM in \
|
||||||
|
1) echo "One" ;; \
|
||||||
|
2) echo "Two" ;; \
|
||||||
|
3) echo "Three" ;; \
|
||||||
|
4) echo "Four" ;; \
|
||||||
|
5) echo "Five" ;; \
|
||||||
|
6) echo "Six" ;; \
|
||||||
|
7) echo "Seven" ;; \
|
||||||
|
8) echo "Eight" ;; \
|
||||||
|
9) echo "Nine" ;; \
|
||||||
|
10) echo "Ten" ;; \
|
||||||
|
11) echo "Eleven" ;; \
|
||||||
|
12) echo "Twelve" ;; \
|
||||||
|
13) echo "Thirteen" ;; \
|
||||||
|
14) echo "Fourteen" ;; \
|
||||||
|
15) echo "Fifteen" ;; \
|
||||||
|
16) echo "Sixteen" ;; \
|
||||||
|
17) echo "Seventeen" ;; \
|
||||||
|
18) echo "Eighteen" ;; \
|
||||||
|
19) echo "Nineteen" ;; \
|
||||||
|
20) echo "Twenty" ;; \
|
||||||
|
21) echo "TwentyOne" ;; \
|
||||||
|
22) echo "TwentyTwo" ;; \
|
||||||
|
23) echo "TwentyThree" ;; \
|
||||||
|
24) echo "TwentyFour" ;; \
|
||||||
|
25) echo "TwentyFive" ;; \
|
||||||
|
*) echo "Unknown" ;; \
|
||||||
|
esac); \
|
||||||
|
mkdir -p internal/$$YEAR/Day$$DAY_NAME; \
|
||||||
|
mkdir -p internal/data/$$YEAR/Day$$DAY_NAME; \
|
||||||
|
touch internal/$$YEAR/Day$$DAY_NAME/code.go; \
|
||||||
|
touch internal/$$YEAR/Day$$DAY_NAME/code_test.go; \
|
||||||
|
if [ -n "$$ADVENTOFCODE_SESSION" ]; then \
|
||||||
|
curl -s -H "Cookie: session=$$ADVENTOFCODE_SESSION" \
|
||||||
|
https://adventofcode.com/$$YEAR/day/$$DAY_NUM/input \
|
||||||
|
| perl -pe 'chomp if eof' > internal/data/$$YEAR/Day$$DAY_NAME/input.txt; \
|
||||||
|
else \
|
||||||
|
touch internal/data/$$YEAR/Day$$DAY_NAME/input.txt; \
|
||||||
|
fi; \
|
||||||
|
echo "$$DAY_ARG ready to be solved."; \
|
||||||
|
else \
|
||||||
|
:; \
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user