]> git.sur5r.net Git - i3/i3/blob - Makefile
Linux needs -D_GNU_SOURCE for some functions, so enable it in Makefile
[i3/i3] / Makefile
1 UNAME=$(shell uname)
2 DEBUG=1
3
4 CFLAGS += -std=c99
5 CFLAGS += -Wall
6 CFLAGS += -Iinclude
7 CFLAGS += -I/usr/local/include
8
9 LDFLAGS += -lxcb-wm
10 LDFLAGS += -lxcb-keysyms
11 LDFLAGS += -lxcb-xinerama
12 LDFLAGS += -lX11
13 LDFLAGS += -L/usr/local/lib -L/usr/pkg/lib
14 ifeq ($(UNAME),NetBSD)
15 CFLAGS += -I/usr/pkg/include
16 LDFLAGS += -Wl,-rpath,/usr/local/lib -Wl,-rpath,/usr/pkg/lib
17 endif
18
19 ifeq ($(UNAME),Linux)
20 CFLAGS += -D_GNU_SOURCE
21 endif
22
23 ifeq ($(DEBUG),1)
24 # Extended debugging flags, macros shall be available in gcc
25 CFLAGS += -gdwarf-2
26 CFLAGS += -g3
27 else
28 CFLAGS += -O2
29 endif
30
31 FILES=$(patsubst %.c,%.o,$(wildcard src/*.c))
32 HEADERS=$(wildcard include/*.h)
33
34 src/%.o: src/%.c ${HEADERS}
35         $(CC) $(CFLAGS) -c -o $@ $<
36
37 all: ${FILES}
38         $(CC) -o i3 ${FILES} $(LDFLAGS)
39
40 clean:
41         rm -f src/*.o
42
43 distclean: clean
44         rm -f i3