summaryrefslogtreecommitdiff
path: root/makefile
blob: 32d07efcfc6729300574b4a21e24e61c5d761d29 (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
include config.mk

SUBSCRIBE=bin/subscribe
PUBLISH=bin/publish

SUBSCRIBE_OBJ_FILES=obj/subscribe.o obj/mqtt.o
PUBLISH_OBJ_FILES=obj/publish.o obj/mqtt.o

release: $(SUBSCRIBE) $(PUBLISH)
release: CFLAGS+=-DNDEBUG -O2

debug: $(SUBSCRIBE) $(PUBLISH)
debug: CFLAGS+=-g

$(SUBSCRIBE): $(SUBSCRIBE_OBJ_FILES) | bin
	cc $(LDFLAGS) $^ -o $@

$(PUBLISH): $(PUBLISH_OBJ_FILES) | bin
	cc $(LDFLAGS) $^ -o $@

obj/%.o: src/%.c src/config.h | obj
	cc $(CFLAGS) -c $< -o $@

src/config.h:
	cp config.h.in $@

bin obj:
	mkdir -p $@

clean:
	rm -rf bin obj

.PHONY: release debug clean