• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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