aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: c235179e4f8088760a7a6fc842a3c5a2814fa6d6 (plain)
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
GIT_COMMIT 	?= $(shell git rev-parse --short HEAD)
LDFLAGS 	:= "-X 'git.gabrielgio.me/cerrado/templates.Slug=.$(GIT_COMMIT)' -s -w"

BIN 	?= cerrado
PREFIX 	?= /usr/local
BINDIR 	?= $(PREFIX)/bin

TEMPLATES_DIR 		:= templates
TEMPLATES 			:= $(wildcard $(TEMPLATES_DIR)/*.qtpl)
GO_TEMPLATES_FILES 	:= $(TEMPLATES:.qtpl=.qtpl.go)

SASS_DIR 	:= scss
CSS_DIR 	:= static
OUTPUT_CSS 	:= $(CSS_DIR)/main.$(GIT_COMMIT).css
SASS_FILES 	:= $(wildcard $(SASS_DIR)/*.scss)

build: sass tmpl
	go build \
		-ldflags=$(LDFLAGS) \
		-o bin/$(BIN)

install:
	install -Dm755 bin/$(BIN) $(BINDIR)/$(BIN)

run: sass tmpl
	go run .

test:
	go test -v --tags=unit ./...

sass: $(OUTPUT_CSS)

$(OUTPUT_CSS): $(SASS_FILES)
	@mkdir -p $(CSS_DIR)
	sassc $(SASS_DIR)/main.scss $(OUTPUT_CSS)

tmpl: $(GO_TEMPLATES_FILES)

$(TEMPLATES_DIR)/%.qtpl.go: $(TEMPLATES_DIR)/%.qtpl
	qtc $(TEMPLATES_DIR)/$*.qtpl

clean:
	rm -f $(OUTPUT_CSS)
	rm bin/$(BIN)

.PHONY: sass tmpl