blob: a58a6e7bcd22706c96454442eb33e93bfc934694 (
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
|
# tessen: GNU Makefile
DESTDIR =
PREFIX = /usr
BINDIR := $(PREFIX)/bin
DATAROOTDIR := $(PREFIX)/share
MANDIR := $(DATAROOTDIR)/man
BASHCOMPDIR := $(DATAROOTDIR)/bash-completion/completions
FISHCOMPDIR := $(DATAROOTDIR)/fish/vendor_completions.d
CONFDIRS = /etc/xdg
PROG = tessen
PROGCFG = config
SCDOC = scdoc
SHCHK = shellcheck
SHFMT = shfmt
INSTALL = install
.PHONY: all install minimal bashcomp fishcomp clean uninstall
all:
@echo "$(PROG) is a shell script and doesn't need to be compiled"
@echo "To install it, enter \"make install\""
install: man bashcomp fishcomp minimal
@echo ""
@echo "$(PROG) has been installed succesfully"
minimal:
$(INSTALL) -Dm 0755 $(PROG) -t $(DESTDIR)$(BINDIR)
$(INSTALL) -Dm 0644 $(PROGCFG) -t $(DESTDIR)$(CONFDIRS)/$(PROG)
man: man/$(PROG).1 man/$(PROG).5
$(INSTALL) -Dm 0644 man/$(PROG).1 -t $(DESTDIR)$(MANDIR)/man1
$(INSTALL) -Dm 0644 man/$(PROG).5 -t $(DESTDIR)$(MANDIR)/man5
man/%: man/%.scd
$(SCDOC) < $^ > $@
bashcomp:
$(INSTALL) -Dm 0644 completion/$(PROG).bash-completion $(DESTDIR)$(BASHCOMPDIR)/$(PROG)
fishcomp:
$(INSTALL) -Dm 0644 completion/$(PROG).fish-completion $(DESTDIR)$(FISHCOMPDIR)/$(PROG).fish
clean:
rm -f man/$(PROG).1
rm -f man/$(PROG).5
check:
$(SHCHK) $(PROG)
$(SHFMT) -d -s -i 2 -bn -ci -sr $(PROG)
uninstall:
rm -f "$(DESTDIR)$(BINDIR)/$(PROG)"
rm -f "$(DESTDIR)$(MANDIR)/man1/$(PROG).1"
rm -f "$(DESTDIR)$(MANDIR)/man5/$(PROG).5"
rm -f "$(DESTDIR)$(BASHCOMPDIR)/$(PROG)"
rm -f "$(DESTDIR)$(FISHCOMPDIR)/$(PROG).fish"
rm -f "$(DESTDIR)$(CONFDIRS)/$(PROG)/$(PROGCFG)"
|