Android.mk revision 2f5a6557ef6a7b9fd33077cfd8a037904d41e3bd
1edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source ProjectLOCAL_PATH:= $(call my-dir)
2edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
3b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian###############################################################################
4edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project# Build META EGL library
5edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project#
6edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
7edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectinclude $(CLEAR_VARS)
8edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
924035338ed6329e4d85fb00cf99a91e2cdd55ba5Mathias AgopianLOCAL_SRC_FILES:= 	       \
1024035338ed6329e4d85fb00cf99a91e2cdd55ba5Mathias Agopian	EGL/egl.cpp 	       \
11a2dd6cf59962e3a21a47df29b2f243e904839ba7Jack Palevich	EGL/trace.cpp              \
1224035338ed6329e4d85fb00cf99a91e2cdd55ba5Mathias Agopian	EGL/getProcAddress.cpp.arm \
1324035338ed6329e4d85fb00cf99a91e2cdd55ba5Mathias Agopian	EGL/hooks.cpp 	       \
1424035338ed6329e4d85fb00cf99a91e2cdd55ba5Mathias Agopian	EGL/Loader.cpp 	       \
15edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project#
162f5a6557ef6a7b9fd33077cfd8a037904d41e3bdDavid LiLOCAL_STATIC_LIBRARIES += libGLESv2_dbg libprotobuf-cpp-2.3.0-lite
172f5a6557ef6a7b9fd33077cfd8a037904d41e3bdDavid LiLOCAL_SHARED_LIBRARIES += libcutils libutils libstlport
18edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source ProjectLOCAL_LDLIBS := -lpthread -ldl
19edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source ProjectLOCAL_MODULE:= libEGL
20edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
21edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project# needed on sim build because of weird logging issues
22edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectifeq ($(TARGET_SIMULATOR),true)
23edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectelse
24edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project    LOCAL_SHARED_LIBRARIES += libdl
259166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    # Bionic's private TLS header relies on the ARCH_ARM_HAVE_TLS_REGISTER to
269166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    # select the appropriate TLS codepath
279166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    ifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true)
289166f7bfa7796489d9b34f49846541cfd9a640d5Gary King        LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
299166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    endif
30acdebe352dc7dadc1122a87d45137fd2441b329aMathias Agopian    # we need to access the private Bionic header <bionic_tls.h>
31acdebe352dc7dadc1122a87d45137fd2441b329aMathias Agopian    LOCAL_C_INCLUDES += bionic/libc/private
32edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectendif
33edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
34076b1cc3a9b90aa5b381a1ed268ca0b548444c9bMathias AgopianLOCAL_CFLAGS += -DLOG_TAG=\"libEGL\"
35076b1cc3a9b90aa5b381a1ed268ca0b548444c9bMathias AgopianLOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
3648685c45bb333c3564596158e2e67267110c9277Mathias AgopianLOCAL_CFLAGS += -fvisibility=hidden
37a2dd6cf59962e3a21a47df29b2f243e904839ba7Jack PalevichLOCAL_CFLAGS += -DEGL_TRACE=1
38076b1cc3a9b90aa5b381a1ed268ca0b548444c9bMathias Agopian
39a69e0ed4a38ded9778d37da453899d527c4396b9Mathias Agopianifeq ($(TARGET_BOARD_PLATFORM),msm7k)
40a69e0ed4a38ded9778d37da453899d527c4396b9Mathias AgopianLOCAL_CFLAGS += -DADRENO130=1
41a69e0ed4a38ded9778d37da453899d527c4396b9Mathias Agopianendif
42a69e0ed4a38ded9778d37da453899d527c4396b9Mathias Agopian
43673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopianifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true)
44673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopian  LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
45673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopianendif
46673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopian
47edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectinclude $(BUILD_SHARED_LIBRARY)
48de58697644a52a614ad9498aa087e95d4a223673Mathias Agopianinstalled_libEGL := $(LOCAL_INSTALLED_MODULE)
49edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
50edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
51de58697644a52a614ad9498aa087e95d4a223673Mathias Agopian# OpenGL drivers config file
52de58697644a52a614ad9498aa087e95d4a223673Mathias Agopianifneq ($(BOARD_EGL_CFG),)
53de58697644a52a614ad9498aa087e95d4a223673Mathias Agopian
54de58697644a52a614ad9498aa087e95d4a223673Mathias Agopianinclude $(CLEAR_VARS)
55de58697644a52a614ad9498aa087e95d4a223673Mathias AgopianLOCAL_MODULE := egl.cfg
56de58697644a52a614ad9498aa087e95d4a223673Mathias AgopianLOCAL_MODULE_TAGS := optional
57de58697644a52a614ad9498aa087e95d4a223673Mathias AgopianLOCAL_MODULE_CLASS := ETC
58de58697644a52a614ad9498aa087e95d4a223673Mathias AgopianLOCAL_MODULE_PATH := $(TARGET_OUT)/lib/egl
59de58697644a52a614ad9498aa087e95d4a223673Mathias AgopianLOCAL_SRC_FILES := ../../../../$(BOARD_EGL_CFG)
60de58697644a52a614ad9498aa087e95d4a223673Mathias Agopianinclude $(BUILD_PREBUILT)
61de58697644a52a614ad9498aa087e95d4a223673Mathias Agopian
62de58697644a52a614ad9498aa087e95d4a223673Mathias Agopian# make sure we depend on egl.cfg, so it gets installed
63de58697644a52a614ad9498aa087e95d4a223673Mathias Agopian$(installed_libEGL): | egl.cfg
64de58697644a52a614ad9498aa087e95d4a223673Mathias Agopian
65de58697644a52a614ad9498aa087e95d4a223673Mathias Agopianendif
66edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
67b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian###############################################################################
68b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian# Build the wrapper OpenGL ES 1.x library
69edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project#
70edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
71edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectinclude $(CLEAR_VARS)
72edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
73b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_SRC_FILES:= 		\
74b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian	GLES_CM/gl.cpp.arm 	\
75edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project#
76edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
77d8fb7b586f3cfac42694208547b58438d7f3b3edMathias AgopianLOCAL_SHARED_LIBRARIES += libcutils libEGL
78edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source ProjectLOCAL_LDLIBS := -lpthread -ldl
79edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source ProjectLOCAL_MODULE:= libGLESv1_CM
80edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
81edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project# needed on sim build because of weird logging issues
82edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectifeq ($(TARGET_SIMULATOR),true)
83edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectelse
84edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project    LOCAL_SHARED_LIBRARIES += libdl
85acdebe352dc7dadc1122a87d45137fd2441b329aMathias Agopian    # we need to access the private Bionic header <bionic_tls.h>
869166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    ifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true)
879166f7bfa7796489d9b34f49846541cfd9a640d5Gary King        LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
889166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    endif
89acdebe352dc7dadc1122a87d45137fd2441b329aMathias Agopian    LOCAL_C_INCLUDES += bionic/libc/private
90edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectendif
91edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Project
92076b1cc3a9b90aa5b381a1ed268ca0b548444c9bMathias AgopianLOCAL_CFLAGS += -DLOG_TAG=\"libGLESv1\"
93076b1cc3a9b90aa5b381a1ed268ca0b548444c9bMathias AgopianLOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
9448685c45bb333c3564596158e2e67267110c9277Mathias AgopianLOCAL_CFLAGS += -fvisibility=hidden
95076b1cc3a9b90aa5b381a1ed268ca0b548444c9bMathias Agopian
96673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopianifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true)
97673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopian  LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
98673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopianendif
99673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopian
100edbf3b6af777b721cd2a1ef461947e51e88241e1The Android Open Source Projectinclude $(BUILD_SHARED_LIBRARY)
101b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
102b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
103b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian###############################################################################
104b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian# Build the wrapper OpenGL ES 2.x library
105b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian#
106b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
107b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopianinclude $(CLEAR_VARS)
108b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
109b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_SRC_FILES:= 		\
110b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian	GLES2/gl2.cpp.arm 	\
111b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian#
112b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
113b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_SHARED_LIBRARIES += libcutils libEGL
114b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_LDLIBS := -lpthread -ldl
115b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_MODULE:= libGLESv2
116b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
117b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian# needed on sim build because of weird logging issues
118b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopianifeq ($(TARGET_SIMULATOR),true)
119b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopianelse
120b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian    LOCAL_SHARED_LIBRARIES += libdl
121acdebe352dc7dadc1122a87d45137fd2441b329aMathias Agopian    # we need to access the private Bionic header <bionic_tls.h>
1229166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    ifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true)
1239166f7bfa7796489d9b34f49846541cfd9a640d5Gary King        LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
1249166f7bfa7796489d9b34f49846541cfd9a640d5Gary King    endif
125acdebe352dc7dadc1122a87d45137fd2441b329aMathias Agopian    LOCAL_C_INCLUDES += bionic/libc/private
126b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopianendif
127b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
128b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_CFLAGS += -DLOG_TAG=\"libGLESv2\"
129b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
130b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias AgopianLOCAL_CFLAGS += -fvisibility=hidden
131b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopian
132673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopianifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true)
133673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopian  LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER
134673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopianendif
135673d2dbaae647abc58b08de873fd364f0b2fa3f5Mathias Agopian
136b1a39d67be99fe6c4545b25e10ac82a5dd1df634Mathias Agopianinclude $(BUILD_SHARED_LIBRARY)
13701cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
13801cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich###############################################################################
13901cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich# Build the ETC1 host static library
14001cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich#
14101cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
14201cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevichinclude $(CLEAR_VARS)
14301cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
14401cc538b290ecc9ccfdf1907fb714b76cf0f648bJack PalevichLOCAL_SRC_FILES:= 		\
14501cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich	ETC1/etc1.cpp 	\
14601cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich#
14701cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
14801cc538b290ecc9ccfdf1907fb714b76cf0f648bJack PalevichLOCAL_LDLIBS := -lpthread -ldl
14901cc538b290ecc9ccfdf1907fb714b76cf0f648bJack PalevichLOCAL_MODULE:= libETC1
15001cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
15101cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevichinclude $(BUILD_HOST_STATIC_LIBRARY)
15201cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
15301cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich###############################################################################
15401cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich# Build the ETC1 device library
15501cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich#
15601cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
15701cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevichinclude $(CLEAR_VARS)
15801cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
15901cc538b290ecc9ccfdf1907fb714b76cf0f648bJack PalevichLOCAL_SRC_FILES:= 		\
16001cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich	ETC1/etc1.cpp 	\
16101cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich#
16201cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
16301cc538b290ecc9ccfdf1907fb714b76cf0f648bJack PalevichLOCAL_LDLIBS := -lpthread -ldl
16401cc538b290ecc9ccfdf1907fb714b76cf0f648bJack PalevichLOCAL_MODULE:= libETC1
16501cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevich
16601cc538b290ecc9ccfdf1907fb714b76cf0f648bJack Palevichinclude $(BUILD_SHARED_LIBRARY)
1672f5a6557ef6a7b9fd33077cfd8a037904d41e3bdDavid Li
1682f5a6557ef6a7b9fd33077cfd8a037904d41e3bdDavid Liinclude $(call all-makefiles-under,$(LOCAL_PATH))
1692f5a6557ef6a7b9fd33077cfd8a037904d41e3bdDavid Li
170