blob: 0fb02174c7ad3e0e9c9767ffbb3643e50d280bc9 (
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
PREFIX?=/usr/local
_INSTDIR=$(DESTDIR)$(PREFIX)
BINDIR?=$(_INSTDIR)/bin
SHAREDIR?=$(_INSTDIR)/share/aerc
MANDIR?=$(_INSTDIR)/share/man
GOFLAGS?=
GOSRC := \
$(wildcard *.go) \
$(wildcard commands/*.go) \
$(wildcard commands/account/*.go) \
$(wildcard commands/compose/*.go) \
$(wildcard commands/msgview/*.go) \
$(wildcard config/terminal/*.go) \
$(wildcard lib/*.go) \
$(wildcard lib/ui/*.go) \
$(wildcard ui/*.go) \
$(wildcard widgets/*.go) \
$(wildcard worker/*.go) \
$(wildcard worker/imap/*.go) \
$(wildcard worker/types/*.go) \
go.mod go.sum
aerc: $(GOSRC)
go build $(GOFLAGS) \
-ldflags "-X main.Prefix=$(PREFIX)" \
-ldflags "-X main.ShareDir=$(SHAREDIR)" \
-o $@
aerc.conf: config/aerc.conf.in
sed -e 's:@SHAREDIR@:$(SHAREDIR):g' > $@ < $<
%.1: doc/%.1.scd
scdoc < $< > $@
%.5: doc/%.5.scd
scdoc < $< > $@
%.7: doc/%.7.scd
scdoc < $< > $@
DOCS := \
aerc.1 \
aerc-config.5 \
aerc-imap.5 \
aerc-smtp.5 \
aerc-tutorial.7
doc: $(DOCS)
all: aerc aerc.conf doc
clean:
$(RM) *.1 *.5 *.7 aerc
install: all
mkdir -p $(BINDIR) $(MANDIR)/man1 $(MANDIR)/man5 $(MANDIR)/man7 \
$(SHAREDIR) $(SHAREDIR)/filters
install -m755 aerc $(BINDIR)/aerc
install -m644 aerc.1 $(MANDIR)/man1/aerc.1
install -m644 aerc-config.5 $(MANDIR)/man5/aerc-config.5
install -m644 aerc-imap.5 $(MANDIR)/man5/aerc-imap.5
install -m644 aerc-smtp.5 $(MANDIR)/man5/aerc-smtp.5
install -m644 aerc-tutorial.7 $(MANDIR)/man7/aerc-tutorial.7
install -m644 config/accounts.conf $(SHAREDIR)/accounts.conf
install -m644 aerc.conf $(SHAREDIR)/aerc.conf
install -m644 config/binds.conf $(SHAREDIR)/binds.conf
install -m755 contrib/hldiff.py $(SHAREDIR)/filters/hldiff.py
install -m755 contrib/html $(SHAREDIR)/filters/html
install -m755 contrib/plaintext.py $(SHAREDIR)/filters/plaintext.py
.DEFAULT_GOAL := all
.PHONY: all doc clean install
|