st/es: Add OpenGL ES state trackers.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
# src/gallium/state_trackers/es/Makefile
|
||||
|
||||
# Build the ES 1/2 state tracker libraries
|
||||
# This consists of core Mesa ES, plus GL/gallium state tracker.
|
||||
|
||||
TOP = ../../../..
|
||||
include $(TOP)/configs/current
|
||||
|
||||
GLES_1_VERSION_MAJOR = 1
|
||||
GLES_1_VERSION_MINOR = 1
|
||||
GLES_1_VERSION_PATCH = 0
|
||||
|
||||
GLES_2_VERSION_MAJOR = 2
|
||||
GLES_2_VERSION_MINOR = 0
|
||||
GLES_2_VERSION_PATCH = 0
|
||||
|
||||
|
||||
# Maybe move these into configs/default:
|
||||
GLES_1_LIB = GLESv1_CM
|
||||
GLES_1_LIB_NAME = lib$(GLES_1_LIB).so
|
||||
GLES_2_LIB = GLESv2
|
||||
GLES_2_LIB_NAME = lib$(GLES_2_LIB).so
|
||||
|
||||
|
||||
ES1_OBJECTS = st_es1.o
|
||||
ES2_OBJECTS = st_es2.o
|
||||
|
||||
|
||||
# we only need the gallium libs that the state trackers directly use:
|
||||
GALLIUM_LIBS = \
|
||||
$(TOP)/src/gallium/auxiliary/cso_cache/libcso_cache.a \
|
||||
$(TOP)/src/gallium/auxiliary/rtasm/librtasm.a \
|
||||
$(TOP)/src/gallium/auxiliary/tgsi/libtgsi.a \
|
||||
$(TOP)/src/gallium/auxiliary/util/libutil.a
|
||||
|
||||
ES1_LIBS = \
|
||||
$(TOP)/src/mesa/es/libes1gallium.a \
|
||||
$(TOP)/src/mesa/es/libes1api.a
|
||||
|
||||
ES2_LIBS = \
|
||||
$(TOP)/src/mesa/es/libes2gallium.a \
|
||||
$(TOP)/src/mesa/es/libes2api.a
|
||||
|
||||
SYS_LIBS = -lm -pthread
|
||||
|
||||
|
||||
.c.o:
|
||||
$(CC) -c $(CFLAGS) $< -o $@
|
||||
|
||||
|
||||
# Default: make both GL ES 1.1 and GL ES 2.0 libraries
|
||||
default: $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME)
|
||||
|
||||
# Make the shared libs
|
||||
$(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME): $(ES1_OBJECTS) $(ES1_LIBS)
|
||||
$(TOP)/bin/mklib -o $(GLES_1_LIB) \
|
||||
-major $(GLES_1_VERSION_MAJOR) \
|
||||
-minor $(GLES_1_VERSION_MINOR) \
|
||||
-patch $(GLES_1_VERSION_PATCH) \
|
||||
-install $(TOP)/$(LIB_DIR) \
|
||||
$(ES1_OBJECTS) \
|
||||
-Wl,--whole-archive $(ES1_LIBS) -Wl,--no-whole-archive \
|
||||
-Wl,--start-group $(GALLIUM_LIBS) -Wl,--end-group \
|
||||
$(SYS_LIBS)
|
||||
|
||||
$(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME): $(ES2_OBJECTS) $(ES1_LIBS)
|
||||
$(TOP)/bin/mklib -o $(GLES_2_LIB) \
|
||||
-major $(GLES_2_VERSION_MAJOR) \
|
||||
-minor $(GLES_2_VERSION_MINOR) \
|
||||
-patch $(GLES_2_VERSION_PATCH) \
|
||||
-install $(TOP)/$(LIB_DIR) \
|
||||
$(ES2_OBJECTS) \
|
||||
-Wl,--whole-archive $(ES2_LIBS) -Wl,--no-whole-archive \
|
||||
-Wl,--start-group $(GALLIUM_LIBS) -Wl,--end-group \
|
||||
$(SYS_LIBS)
|
||||
|
||||
install: default
|
||||
$(INSTALL) -d $(INSTALL_DIR)/include/GLES
|
||||
$(INSTALL) -m 644 $(TOP)/include/GLES/*.h $(INSTALL_DIR)/include/GLES
|
||||
$(INSTALL) -d $(INSTALL_DIR)/include/GLES2
|
||||
$(INSTALL) -m 644 $(TOP)/include/GLES2/*.h $(INSTALL_DIR)/include/GLES2
|
||||
$(INSTALL) -d $(INSTALL_DIR)/$(LIB_DIR)
|
||||
$(INSTALL) $(TOP)/$(LIB_DIR)/libGLESv1* $(INSTALL_DIR)/$(LIB_DIR)
|
||||
$(INSTALL) $(TOP)/$(LIB_DIR)/libGLESv2* $(INSTALL_DIR)/$(LIB_DIR)
|
||||
|
||||
clean:
|
||||
-rm -f *.o *~
|
||||
-rm -f $(TOP)/$(LIB_DIR)/$(GLES_1_LIB_NAME)* $(TOP)/$(LIB_DIR)/$(GLES_2_LIB_NAME)*
|
||||
@@ -0,0 +1 @@
|
||||
const int st_api_OpenGL_ES1 = 1;
|
||||
@@ -0,0 +1 @@
|
||||
const int st_api_OpenGL_ES2 = 1;
|
||||
Reference in New Issue
Block a user