aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
blob: b2b37299e1c069dc6a0392e601f61ec010ea2aac (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
.POSIX:

CONFIGFILE = config.mk
include $(CONFIGFILE)

all: slack

slack: slack.o
	$(CC) -o $@ $^ $(LDFLAGS)

slack.o: slack.c arg.h
	$(CC) -c -o $@ $< $(CFLAGS) $(CPPFLAGS)

check:
	test $$(./slack 1ms ./slack get) = 1ms
	test $$(./slack 1ms ./slack GET) = 1000000
	test $$(./slack 1 ./slack reset ./slack GET) = $$(./slack GET)
	./slack 1 true
	./slack reset true
	! ./slack 1 2>/dev/null
	! ./slack reset 2>/dev/null
	! ./slack x 2>/dev/null
	! ./slack x x 2>/dev/null
	! ./slack get x 2>/dev/null
	! ./slack GET x 2>/dev/null

install: slack
	mkdir -p -- "$(DESTDIR)$(PREFIX)/bin"
	mkdir -p -- "$(DESTDIR)$(MANPREFIX)/man1"
	mkdir -p -- "$(DESTDIR)$(PREFIX)/share/licenses/slack"
	cp -- slack "$(DESTDIR)$(PREFIX)/bin/"
	cp -- slack.1 "$(DESTDIR)$(MANPREFIX)/man1/"
	cp -- LICENSE "$(DESTDIR)$(PREFIX)/share/licenses/slack"

uninstall:
	-rm -f -- "$(DESTDIR)$(PREFIX)/bin/slack"
	-rm -f -- "$(DESTDIR)$(MANPREFIX)/man1/slack.1"
	-rm -rf -- "$(DESTDIR)$(PREFIX)/share/licenses/slack"

clean:
	-rm -f -- slack *.o

.SUFFIXES:

.PHONY: all check install uninstall clean