Merge branch '7.8'
[mesa.git] / src / gallium / state_trackers / es / Makefile
1 # src/gallium/state_trackers/es/Makefile
2
3 # Build the ES 1/2 state tracker libraries
4 # This consists of core Mesa ES, plus GL/gallium state tracker.
5
6 TOP = ../../../..
7 include $(TOP)/configs/current
8
9 GLES_1_VERSION_MAJOR = 1
10 GLES_1_VERSION_MINOR = 1
11 GLES_1_VERSION_PATCH = 0
12
13 GLES_2_VERSION_MAJOR = 2
14 GLES_2_VERSION_MINOR = 0
15 GLES_2_VERSION_PATCH = 0
16
17
18 # Maybe move these into configs/default:
19 GLES_1_LIB = GLESv1_CM
20 GLES_1_LIB_NAME = lib$(GLES_1_LIB).so
21 GLES_2_LIB = GLESv2
22 GLES_2_LIB_NAME = lib$(GLES_2_LIB).so
23
24
25 ES1_OBJECTS = st_es1.o
26 ES2_OBJECTS = st_es2.o
27
28
29 ES1_LIBS = \
30 $(TOP)/src/mesa/es/libes1gallium.a \
31 $(TOP)/src/mesa/es/libes1api.a
32
33 ES2_LIBS = \
34 $(TOP)/src/mesa/es/libes2gallium.a \
35 $(TOP)/src/mesa/es/libes2api.a
36
37 SYS_LIBS = -lm -pthread
38
39
40 INCLUDE_DIRS = \
41 -I$(TOP)/src/mesa \
42 -I$(TOP)/src/gallium/include
43
44 .c.o:
45 $(CC) -c $(INCLUDE_DIRS) $(DEFINES) $(CFLAGS) $< -o $@
46
47
48 # Default: make both GL ES 1.1 and GL ES 2.0 libraries
49 default: $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME)
50
51 # Make the shared libs
52 $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME): $(ES1_OBJECTS) $(ES1_LIBS) $(GALLIUM_AUXILIARIES)
53 $(MKLIB) -o $(GLES_1_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
54 -major $(GLES_1_VERSION_MAJOR) \
55 -minor $(GLES_1_VERSION_MINOR) \
56 -patch $(GLES_1_VERSION_PATCH) \
57 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
58 $(ES1_OBJECTS) \
59 -Wl,--whole-archive $(ES1_LIBS) -Wl,--no-whole-archive \
60 $(GALLIUM_AUXILIARIES) $(SYS_LIBS)
61
62 $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME): $(ES2_OBJECTS) $(ES1_LIBS) $(GALLIUM_AUXILIARIES)
63 $(MKLIB) -o $(GLES_2_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
64 -major $(GLES_2_VERSION_MAJOR) \
65 -minor $(GLES_2_VERSION_MINOR) \
66 -patch $(GLES_2_VERSION_PATCH) \
67 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
68 $(ES2_OBJECTS) \
69 -Wl,--whole-archive $(ES2_LIBS) -Wl,--no-whole-archive \
70 $(GALLIUM_AUXILIARIES) $(SYS_LIBS)
71
72 install: default
73 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GLES
74 $(INSTALL) -m 644 $(TOP)/include/GLES/*.h $(DESTDIR)$(INSTALL_DIR)/include/GLES
75 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GLES2
76 $(INSTALL) -m 644 $(TOP)/include/GLES2/*.h $(DESTDIR)$(INSTALL_DIR)/include/GLES2
77 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
78 $(MINSTALL) $(TOP)/$(LIB_DIR)/libGLESv1* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
79 $(MINSTALL) $(TOP)/$(LIB_DIR)/libGLESv2* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
80
81 clean:
82 -rm -f *.o *~
83 -rm -f $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME)* $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME)*
84
85 depend: