827c73ee109b96d8612eebb0ea144c8b78812efb
[profile/ivi/weston.git] / wayland / Makefile
1 include ../config.mk
2
3 libs = libwayland-server.so libwayland-client.so
4
5 all : $(libs) scanner
6
7 headers =                                       \
8         wayland-util.h                          \
9         wayland-server-protocol.h               \
10         wayland-server.h                        \
11         wayland-client-protocol.h               \
12         wayland-client.h \
13
14 libwayland-server.so :                          \
15         wayland-protocol.o                      \
16         wayland-server.o                        \
17         event-loop.o                            \
18         connection.o                            \
19         wayland-util.o                          \
20         wayland-hash.o
21
22 libwayland-client.so :                          \
23         wayland-protocol.o                      \
24         wayland-client.o                        \
25         connection.o                            \
26         wayland-util.o                          \
27         wayland-hash.o
28
29 wayland-server.o : wayland-server-protocol.h
30 wayland-client.o : wayland-client-protocol.h
31
32 wayland-protocol.c : protocol.xml scanner
33         ./scanner code < $< > $@
34
35 wayland-server-protocol.h : protocol.xml scanner
36         ./scanner server-header < $< > $@
37
38 wayland-client-protocol.h : protocol.xml scanner
39         ./scanner client-header < $< > $@
40
41 $(libs) : CFLAGS += -fPIC $(FFI_CFLAGS)
42 $(libs) : LDLIBS += $(FFI_LIBS)
43 $(libs) :
44         gcc -shared $^ $(LDLIBS)  -o $@
45
46 scanner :                                       \
47         scanner.o                               \
48         wayland-util.o
49
50 scanner : LDLIBS += $(EXPAT_LIBS)
51
52 install : $(libs) compositor
53         install -d $(libdir) $(includedir) $(libdir)/pkgconfig
54         install wayland-server.pc wayland-client.pc $(libdir)/pkgconfig
55         install $(libs) $(libdir)
56         install $(headers) $(includedir)
57
58 clean :
59         rm -f scanner *.o *.so .*.deps
60         rm -f wayland-protocol.c \
61                 wayland-server-protocol.h wayland-client-protocol.h