1// 2// Build the software OpenGL ES library 3// 4 5cc_defaults { 6 name: "libGLES_android_defaults", 7 8 cflags: [ 9 "-DLOG_TAG=\"libagl\"", 10 "-DGL_GLEXT_PROTOTYPES", 11 "-DEGL_EGLEXT_PROTOTYPES", 12 "-fvisibility=hidden", 13 "-Wall", 14 "-Werror", 15 ], 16 17 shared_libs: [ 18 "libcutils", 19 "libhardware", 20 "libutils", 21 "liblog", 22 "libpixelflinger", 23 "libETC1", 24 "libui", 25 "libnativewindow", 26 ], 27 28 // we need to access the private Bionic header <bionic_tls.h> 29 include_dirs: ["bionic/libc/private"], 30 31 arch: { 32 arm: { 33 cflags: ["-fstrict-aliasing"], 34 }, 35 36 mips: { 37 cflags: [ 38 "-fstrict-aliasing", 39 // The graphics code can generate division by zero 40 "-mno-check-zero-division", 41 ], 42 }, 43 }, 44} 45 46cc_library_shared { 47 name: "libGLES_android", 48 defaults: ["libGLES_android_defaults"], 49 50 whole_static_libs: ["libGLES_android_arm"], 51 52 srcs: [ 53 "egl.cpp", 54 "state.cpp", 55 "texture.cpp", 56 "Tokenizer.cpp", 57 "TokenManager.cpp", 58 "TextureObjectManager.cpp", 59 "BufferObjectManager.cpp", 60 ], 61 62 arch: { 63 arm: { 64 srcs: [ 65 "fixed_asm.S", 66 "iterators.S", 67 ], 68 }, 69 70 mips: { 71 rev6: { 72 srcs: ["arch-mips/fixed_asm.S"], 73 }, 74 }, 75 }, 76 77 relative_install_path: "egl", 78} 79 80cc_library_static { 81 name: "libGLES_android_arm", 82 defaults: ["libGLES_android_defaults"], 83 84 srcs: [ 85 "array.cpp", 86 "fp.cpp", 87 "light.cpp", 88 "matrix.cpp", 89 "mipmap.cpp", 90 "primitives.cpp", 91 "vertex.cpp", 92 ], 93 94 arch: { 95 arm: { 96 instruction_set: "arm", 97 }, 98 }, 99} 100