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