1cc_library_static {
2    name: "libRSDispatch",
3    vendor_available: true,
4
5    srcs: ["rsDispatch.cpp"],
6
7    include_dirs: [
8        "frameworks/rs",
9    ],
10    header_libs: [
11        "jni_headers",
12    ],
13
14    cflags: [
15        "-Wall",
16        "-Werror",
17        "-Wno-unused-parameter",
18        "-DRS_COMPATIBILITY_LIB",
19    ],
20
21
22    sdk_version: "9",
23    shared_libs: ["libdl", "liblog"],
24    // Used in librsjni, which is built as NDK code => no ASan.
25    sanitize: {
26        never: true,
27    },
28    stl: "none",
29}
30
31cc_defaults {
32    name: "libRScpp-defaults",
33    defaults: ["rs-version"],
34
35    srcs: [
36        "RenderScript.cpp",
37        "BaseObj.cpp",
38        "Element.cpp",
39        "Type.cpp",
40        "Allocation.cpp",
41        "Script.cpp",
42        "ScriptC.cpp",
43        "ScriptIntrinsics.cpp",
44        "ScriptIntrinsicBLAS.cpp",
45        "Sampler.cpp",
46
47        // TODO: make this not a symlink
48        "rsCppUtils.cpp",
49    ],
50
51    cflags: [
52        "-Werror",
53        "-Wall",
54        "-Wextra",
55        "-Wno-unused-parameter",
56        "-Wno-unused-variable",
57    ],
58
59    // We need to export not just rs/cpp but also rs.  This is because
60    // RenderScript.h includes rsCppStructs.h, which includes rs/rsDefines.h.
61    header_libs: [
62        "jni_headers",
63        "rs-headers"
64    ],
65    export_header_lib_headers: [
66        "jni_headers",
67        "rs-headers"
68    ],
69    export_include_dirs: ["."],
70
71    shared_libs: [
72        "libdl",
73        "liblog",
74    ],
75}
76
77cc_library {
78    name: "libRScpp",
79    defaults: ["libRScpp-defaults"],
80
81    header_libs: [
82        "libarect_headers",
83        "libbase_headers",
84        "libgui_headers",
85        "libnativebase_headers",
86        "libnativewindow_headers",
87    ],
88
89    shared_libs: [
90        "libutils",
91    ],
92
93    static_libs: ["libRSDispatch"],
94}
95
96cc_library_static {
97    name: "libRScpp_static",
98    defaults: ["libRScpp-defaults"],
99
100    cflags: ["-DRS_COMPATIBILITY_LIB"],
101
102    sdk_version: "9",
103    whole_static_libs: ["libRSDispatch"],
104
105    ldflags: [
106        "-Wl,--exclude-libs,libc++_static.a",
107    ],
108    stl: "c++_static",
109}
110