]> git.sur5r.net Git - i3/i3/blobdiff - Makefile
Don’t put the client’s X11 ID into the titlebar
[i3/i3] / Makefile
index cf14312177452ebcb035c4e4750bd37bcf96f712..7b73d7b66c0f0853bb859ea49ff37c623490800e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,50 @@
-all:
-       gcc -Wall -gdwarf-2 -g3 -I/usr/include/xcb -c mainx.c
-       gcc -Wall -gdwarf-2 -g3 -I/usr/include/xcb -c table.c
-       gcc -Wall -gdwarf-2 -g3 -I/usr/include/xcb -c test_table.c
-       gcc -Wall -gdwarf-2 -g3 -I/usr/include/xcb -o mainx mainx.o table.o -lxcb-wm
-       gcc -Wall -gdwarf-2 -g3 -I/usr/include/xcb -o tt test_table.o table.o
+UNAME=$(shell uname)
+DEBUG=1
+INSTALL=install
+
+CFLAGS += -std=c99
+CFLAGS += -pipe
+CFLAGS += -Wall
+CFLAGS += -Iinclude
+CFLAGS += -I/usr/local/include
+
+LDFLAGS += -lxcb-wm
+#LDFLAGS += -lxcb-keysyms
+LDFLAGS += -lxcb-xinerama
+LDFLAGS += -lX11
+LDFLAGS += -L/usr/local/lib -L/usr/pkg/lib
+ifeq ($(UNAME),NetBSD)
+CFLAGS += -I/usr/pkg/include
+LDFLAGS += -Wl,-rpath,/usr/local/lib -Wl,-rpath,/usr/pkg/lib
+endif
+
+ifeq ($(UNAME),Linux)
+CFLAGS += -D_GNU_SOURCE
+endif
+
+ifeq ($(DEBUG),1)
+# Extended debugging flags, macros shall be available in gcc
+CFLAGS += -gdwarf-2
+CFLAGS += -g3
+else
+CFLAGS += -O2
+endif
+
+FILES=$(patsubst %.c,%.o,$(wildcard src/*.c))
+HEADERS=$(wildcard include/*.h)
+
+src/%.o: src/%.c ${HEADERS}
+       $(CC) $(CFLAGS) -c -o $@ $<
+
+all: ${FILES}
+       $(CC) -o i3 ${FILES} $(LDFLAGS)
+
+install: all
+       $(INSTALL) -d -m 0755 $(DESTDIR)/usr/bin
+       $(INSTALL) -m 0755 i3 $(DESTDIR)/usr/bin/
+
+clean:
+       rm -f src/*.o
+
+distclean: clean
+       rm -f i3