blob: 45a32da082d90c7598a6275815c52742788decc2 [file] [log] [blame]
Dan Willemsen596e2212018-11-16 17:36:26 -08001cc_defaults {
2 name: "pixelflinger_defaults",
3
4 cflags: [
5 "-fstrict-aliasing",
6 "-fomit-frame-pointer",
7 "-Wall",
8 "-Werror",
9 "-Wno-unused-function",
10 ],
11 export_include_dirs: ["include"],
12 header_libs: ["libbase_headers"],
13 shared_libs: [
14 "libcutils",
15 "liblog",
16 "libutils",
17 ],
18
19 arch: {
20 arm: {
21 neon: {
22 cflags: ["-D__ARM_HAVE_NEON"],
23 },
24 },
25 },
26}
27
28cc_library_static {
29 name: "libpixelflinger-arm",
30 defaults: ["pixelflinger_defaults"],
31
32 srcs: [
33 "fixed.cpp",
34 "picker.cpp",
35 "pixelflinger.cpp",
36 "trap.cpp",
37 "scanline.cpp",
38 ],
39
40 arch: {
41 arm: {
42 instruction_set: "arm",
43 },
44 },
45}
46
47// For the tests to use
48cc_library_headers {
49 name: "libpixelflinger_internal",
50 export_include_dirs: [
51 "include",
52 ".",
53 ],
54}
55
56cc_library {
57 name: "libpixelflinger",
58 defaults: ["pixelflinger_defaults"],
59
60 srcs: [
61 "codeflinger/ARMAssemblerInterface.cpp",
62 "codeflinger/ARMAssemblerProxy.cpp",
63 "codeflinger/CodeCache.cpp",
64 "codeflinger/GGLAssembler.cpp",
65 "codeflinger/load_store.cpp",
66 "codeflinger/blending.cpp",
67 "codeflinger/texturing.cpp",
68 "format.cpp",
69 "clear.cpp",
70 "raster.cpp",
71 "buffer.cpp",
72 ],
73 whole_static_libs: ["libpixelflinger-arm"],
74
75 arch: {
76 arm: {
77 srcs: [
78 "codeflinger/ARMAssembler.cpp",
79 "codeflinger/disassem.c",
80 "col32cb16blend.S",
81 "t32cb16blend.S",
82 ],
83
84 neon: {
85 srcs: ["col32cb16blend_neon.S"],
86 },
87 },
88 arm64: {
89 srcs: [
90 "codeflinger/Arm64Assembler.cpp",
91 "codeflinger/Arm64Disassembler.cpp",
92 "arch-arm64/col32cb16blend.S",
93 "arch-arm64/t32cb16blend.S",
94 ],
95 },
Dan Willemsen596e2212018-11-16 17:36:26 -080096 },
97}