Merge branch 'mesa_7_7_branch'
[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/gallium/include
42
43 .c.o:
44 $(CC) -c $(INCLUDE_DIRS) $(DEFINES) $(CFLAGS) $< -o $@
45
46
47 # Default: make both GL ES 1.1 and GL ES 2.0 libraries
48 default: $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME)
49
50 # Make the shared libs
51 $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME): $(ES1_OBJECTS) $(ES1_LIBS) $(GALLIUM_AUXILIARIES)
52 $(MKLIB) -o $(GLES_1_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
53 -major $(GLES_1_VERSION_MAJOR) \
54 -minor $(GLES_1_VERSION_MINOR) \
55 -patch $(GLES_1_VERSION_PATCH) \
56 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
57 $(ES1_OBJECTS) \
58 -Wl,--whole-archive $(ES1_LIBS) -Wl,--no-whole-archive \
59 $(GALLIUM_AUXILIARIES) $(SYS_LIBS)
60
61 $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME): $(ES2_OBJECTS) $(ES1_LIBS) $(GALLIUM_AUXILIARIES)
62 $(MKLIB) -o $(GLES_2_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
63 -major $(GLES_2_VERSION_MAJOR) \
64 -minor $(GLES_2_VERSION_MINOR) \
65 -patch $(GLES_2_VERSION_PATCH) \
66 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
67 $(ES2_OBJECTS) \
68 -Wl,--whole-archive $(ES2_LIBS) -Wl,--no-whole-archive \
69 $(GALLIUM_AUXILIARIES) $(SYS_LIBS)
70
71 install: default
72 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GLES
73 $(INSTALL) -m 644 $(TOP)/include/GLES/*.h $(DESTDIR)$(INSTALL_DIR)/include/GLES
74 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GLES2
75 $(INSTALL) -m 644 $(TOP)/include/GLES2/*.h $(DESTDIR)$(INSTALL_DIR)/include/GLES2
76 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
77 $(MINSTALL) $(TOP)/$(LIB_DIR)/libGLESv1* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
78 $(MINSTALL) $(TOP)/$(LIB_DIR)/libGLESv2* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
79
80 clean:
81 -rm -f *.o *~
82 -rm -f $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME)* $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME)*
83
84 depend: