aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 8c5df7116bccd5a89eb9fd9a9175f894f425ed66 (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
OUT      = runes
OBJ      = runes.o display.o term.o parser.o window-xlib.o pty-unix.o
LIBS     = cairo cairo-xlib libuv
CFLAGS  ?= -g -Wall -Wextra -Werror
LDFLAGS ?= -g -Wall -Wextra -Werror

ALLCFLAGS  = $(shell pkg-config --cflags $(LIBS)) $(CFLAGS)
ALLLDFLAGS = $(shell pkg-config --libs $(LIBS)) $(LDFLAGS)

MAKEDEPEND = $(CC) $(ALLCFLAGS) -M -MP -MT '$@ $(@:%.o=.%.d)'

build: $(OUT)

$(OUT): $(OBJ)
	$(CC) $(ALLLDFLAGS) -o $@ $^

%.o: %.c
	@$(MAKEDEPEND) -o $(<:%.c=.%.d) $<
	$(CC) $(ALLCFLAGS) -c -o $@ $<

%.c: %.l
	$(LEX) -o $@ $<

clean:
	rm -f $(OUT) $(OBJ) $(OBJ:%.o=.%.d)

-include $(OBJ:%.o=.%.d)

.PHONY: build clean