Makefile revision 22c2e57cbb0fd5ed6856a7350672fa01c02b00ca
1TOP = ../../../..
2include $(TOP)/configs/current
3
4common_INCLUDES = \
5	-I. \
6	-I$(TOP)/src/gallium/include \
7	-I$(TOP)/src/gallium/auxiliary \
8	-I$(TOP)/src/gallium/drivers \
9	-I$(TOP)/src/egl/main \
10	-I$(TOP)/include
11
12common_SOURCES = $(wildcard common/*.c)
13common_OBJECTS = $(common_SOURCES:.c=.o)
14
15
16x11_INCLUDES = \
17	-I$(TOP)/src/gallium/drivers \
18	-I$(TOP)/src/glx \
19	-I$(TOP)/src/mapi \
20	-I$(TOP)/src/mesa \
21	$(X11_CFLAGS) \
22	$(shell pkg-config --cflags-only-I libdrm)
23
24x11_SOURCES = $(wildcard x11/*.c) \
25	      $(TOP)/src/glx/dri2.c
26x11_OBJECTS = $(x11_SOURCES:.c=.o)
27
28
29kms_INCLUDES = $(shell pkg-config --cflags-only-I libdrm)
30kms_SOURCES = $(wildcard kms/*.c)
31kms_OBJECTS = $(kms_SOURCES:.c=.o)
32
33
34ALL_INCLUDES = $(common_INCLUDES) $(x11_INCLUDES) $(kms_INCLUDES)
35ALL_SOURCES = $(common_SOURCES) $(x11_SOURCES) $(kms_SOURCES)
36ALL_OBJECTS = $(common_OBJECTS) $(x11_OBJECTS) $(kms_OBJECTS)
37
38##### TARGETS #####
39
40EGL_DISPLAYS_MODS = $(foreach dpy, $(EGL_DISPLAYS), libegl$(dpy).a)
41
42default: depend $(EGL_DISPLAYS_MODS)
43
44
45libeglx11.a: $(x11_OBJECTS) $(common_OBJECTS) Makefile
46	$(MKLIB) -o eglx11 -static $(x11_OBJECTS) $(common_OBJECTS)
47
48libeglkms.a: $(kms_OBJECTS) $(common_OBJECTS) Makefile
49	$(MKLIB) -o eglkms -static $(kms_OBJECTS) $(common_OBJECTS)
50
51depend: 
52	rm -f depend
53	touch depend
54	$(MKDEP) $(MKDEP_OPTIONS) $(ALL_INCLUDES) $(ALL_SOURCES) 2> /dev/null
55
56clean:
57	rm -f $(ALL_OBJECTS)
58	rm -f $(EGL_DISPLAYS_MODS)
59	rm -f depend depend.bak
60
61# Dummy target
62install:
63	@echo -n ""
64
65##### RULES #####
66
67$(common_OBJECTS): %.o: %.c
68	$(CC) -c $(common_INCLUDES) $(DEFINES) $(CFLAGS) $< -o $@
69
70$(x11_OBJECTS): %.o: %.c
71	$(CC) -c $(common_INCLUDES) $(x11_INCLUDES) $(DEFINES) $(CFLAGS) $< -o $@
72
73$(kms_OBJECTS): %.o: %.c
74	$(CC) -c $(common_INCLUDES) $(kms_INCLUDES) $(DEFINES) $(CFLAGS) $< -o $@
75
76sinclude depend
77