1 CFLAGS += -Wall -g $(shell pkg-config --cflags libffi libdrm)
2 LDLIBS += $(shell pkg-config --libs libffi libdrm)
4 clients = flower pointer
6 all : wayland $(clients)
8 wayland_objs = wayland.o event-loop.o connection.o hash.o input.o egl-compositor.o
9 wayland : CFLAGS += -I../eagle
10 wayland : LDLIBS += -L../eagle -leagle -ldl
12 wayland : $(wayland_objs)
13 gcc -o $@ $(LDLIBS) $(wayland_objs)
15 libwayland_objs = wayland-client.o connection.o
17 libwayland.so : $(libwayland_objs)
18 gcc -o $@ $(libwayland_objs) -shared
20 flower_objs = flower.o
21 pointer_objs = pointer.o
23 $(clients) : CFLAGS += $(shell pkg-config --cflags cairo)
24 $(clients) : LDLIBS += $(shell pkg-config --libs cairo) -lrt
26 define client_template
27 $(1): $$($(1)_objs) libwayland.so
30 $(foreach c,$(clients),$(eval $(call client_template,$(c))))
33 gcc -o $@ -L. -lwayland $(LDLIBS) $^
36 rm -f $(clients) wayland *.o libwayland.so