blob: a634f2f83c8955b93e1456096adcd708eca1e137 [file] [log] [blame]
Lloyd Pique70d91362018-10-18 16:02:55 -07001cc_defaults {
2 name: "libcompositionengine_defaults",
3 defaults: ["surfaceflinger_defaults"],
4 cflags: [
5 "-DLOG_TAG=\"CompositionEngine\"",
Lloyd Pique05b67b92019-09-25 13:16:44 -07006 "-DATRACE_TAG=ATRACE_TAG_GRAPHICS",
Lloyd Pique70d91362018-10-18 16:02:55 -07007 ],
Lloyd Pique441d5042018-10-18 16:49:51 -07008 shared_libs: [
mamik94e91f62019-08-19 09:11:33 -07009 "android.frameworks.vr.composer@2.0",
Lloyd Pique441d5042018-10-18 16:49:51 -070010 "android.hardware.graphics.allocator@2.0",
11 "android.hardware.graphics.composer@2.1",
12 "android.hardware.graphics.composer@2.2",
13 "android.hardware.graphics.composer@2.3",
Dominik Laskowski25a4e7d2019-09-20 14:50:10 -070014 "android.hardware.graphics.composer@2.4",
Lloyd Pique441d5042018-10-18 16:49:51 -070015 "android.hardware.power@1.0",
16 "android.hardware.power@1.3",
17 "libbase",
18 "libcutils",
19 "libgui",
20 "liblayers_proto",
21 "liblog",
Lloyd Pique31cb2942018-10-19 17:23:03 -070022 "libnativewindow",
Alec Mourie4034bb2019-11-19 12:45:54 -080023 "libprotobuf-cpp-lite",
Lloyd Pique31cb2942018-10-19 17:23:03 -070024 "libsync",
Yiwei Zhangd7927052020-01-13 16:05:01 -080025 "libtimestats",
Lloyd Pique441d5042018-10-18 16:49:51 -070026 "libui",
27 "libutils",
28 ],
29 static_libs: [
30 "libmath",
31 "librenderengine",
32 "libtrace_proto",
33 ],
34 header_libs: [
Lloyd Pique37c2c9b2018-12-04 17:25:10 -080035 "android.hardware.graphics.composer@2.1-command-buffer",
36 "android.hardware.graphics.composer@2.2-command-buffer",
37 "android.hardware.graphics.composer@2.3-command-buffer",
Peiyong Linafa0f572020-01-13 16:35:02 -080038 "android.hardware.graphics.composer@2.4-command-buffer",
Lloyd Pique441d5042018-10-18 16:49:51 -070039 "libsurfaceflinger_headers",
40 ],
Lloyd Pique70d91362018-10-18 16:02:55 -070041}
42
43cc_library {
44 name: "libcompositionengine",
45 defaults: ["libcompositionengine_defaults"],
46 srcs: [
Vishnu Nair9b079a22020-01-21 14:36:08 -080047 "src/ClientCompositionRequestCache.cpp",
Lloyd Pique70d91362018-10-18 16:02:55 -070048 "src/CompositionEngine.cpp",
Lloyd Pique45a165a2018-10-19 11:54:47 -070049 "src/Display.cpp",
Lloyd Pique3d0c02e2018-10-19 18:38:12 -070050 "src/DisplayColorProfile.cpp",
Lloyd Pique542307f2018-10-19 13:24:08 -070051 "src/DisplaySurface.cpp",
Lloyd Pique32cbe282018-10-19 13:09:22 -070052 "src/DumpHelpers.cpp",
Lloyd Pique76ed7032018-12-04 17:24:28 -080053 "src/HwcBufferCache.cpp",
Lloyd Piquefeb73d72018-12-04 17:23:44 -080054 "src/Layer.cpp",
Lloyd Pique9755fb72019-03-26 14:44:40 -070055 "src/LayerFECompositionState.cpp",
Lloyd Pique32cbe282018-10-19 13:09:22 -070056 "src/Output.cpp",
57 "src/OutputCompositionState.cpp",
Lloyd Piquecc01a452018-12-04 17:24:00 -080058 "src/OutputLayer.cpp",
Lloyd Pique37c2c9b2018-12-04 17:25:10 -080059 "src/OutputLayerCompositionState.cpp",
Lloyd Pique31cb2942018-10-19 17:23:03 -070060 "src/RenderSurface.cpp",
Lloyd Pique70d91362018-10-18 16:02:55 -070061 ],
62 local_include_dirs: ["include"],
63 export_include_dirs: ["include"],
64}
65
66cc_library {
67 name: "libcompositionengine_mocks",
68 defaults: ["libcompositionengine_defaults"],
69 srcs: [
70 "mock/CompositionEngine.cpp",
Lloyd Pique45a165a2018-10-19 11:54:47 -070071 "mock/Display.cpp",
Lloyd Pique3d0c02e2018-10-19 18:38:12 -070072 "mock/DisplayColorProfile.cpp",
Lloyd Pique542307f2018-10-19 13:24:08 -070073 "mock/DisplaySurface.cpp",
Lloyd Piquefeb73d72018-12-04 17:23:44 -080074 "mock/Layer.cpp",
75 "mock/LayerFE.cpp",
chaviw8beb4142019-04-11 13:09:05 -070076 "mock/NativeWindow.cpp",
Lloyd Pique32cbe282018-10-19 13:09:22 -070077 "mock/Output.cpp",
Lloyd Piquecc01a452018-12-04 17:24:00 -080078 "mock/OutputLayer.cpp",
Lloyd Pique31cb2942018-10-19 17:23:03 -070079 "mock/RenderSurface.cpp",
Lloyd Pique70d91362018-10-18 16:02:55 -070080 ],
81 static_libs: [
82 "libgtest",
83 "libgmock",
84 "libcompositionengine",
85 ],
86 local_include_dirs: ["include"],
87 export_include_dirs: ["include"],
88}
89
90cc_test {
91 name: "libcompositionengine_test",
92 test_suites: ["device-tests"],
93 defaults: ["libcompositionengine_defaults"],
94 srcs: [
95 "tests/CompositionEngineTest.cpp",
Lloyd Pique3d0c02e2018-10-19 18:38:12 -070096 "tests/DisplayColorProfileTest.cpp",
Lloyd Pique45a165a2018-10-19 11:54:47 -070097 "tests/DisplayTest.cpp",
Lloyd Pique76ed7032018-12-04 17:24:28 -080098 "tests/HwcBufferCacheTest.cpp",
Lloyd Piquefeb73d72018-12-04 17:23:44 -080099 "tests/LayerTest.cpp",
Lloyd Pique35d58242018-12-18 16:33:25 -0800100 "tests/MockHWC2.cpp",
Lloyd Pique441d5042018-10-18 16:49:51 -0700101 "tests/MockHWComposer.cpp",
Lloyd Pique688abd42019-02-15 15:42:24 -0800102 "tests/MockPowerAdvisor.cpp",
Lloyd Pique3d0c02e2018-10-19 18:38:12 -0700103 "tests/OutputTest.cpp",
Lloyd Piquecc01a452018-12-04 17:24:00 -0800104 "tests/OutputLayerTest.cpp",
Lloyd Pique31cb2942018-10-19 17:23:03 -0700105 "tests/RenderSurfaceTest.cpp",
Lloyd Pique70d91362018-10-18 16:02:55 -0700106 ],
107 static_libs: [
108 "libcompositionengine",
109 "libcompositionengine_mocks",
Lloyd Piqueb97e04f2018-10-18 17:07:05 -0700110 "librenderengine_mocks",
Lloyd Pique70d91362018-10-18 16:02:55 -0700111 "libgmock",
112 "libgtest",
113 ],
114 sanitize: {
115 // By using the address sanitizer, we not only uncover any issues
116 // with the test, but also any issues with the code under test.
117 //
118 // Note: If you get an runtime link error like:
119 //
120 // CANNOT LINK EXECUTABLE "/data/local/tmp/libcompositionengine_test": library "libclang_rt.asan-aarch64-android.so" not found
121 //
122 // it is because the address sanitizer shared objects are not installed
123 // by default in the system image.
124 //
125 // You can either "make dist tests" before flashing, or set this
126 // option to false temporarily.
Yi Kongf43b6642019-08-20 17:37:52 -0700127
128
129 // FIXME: ASAN build is broken for a while, but was not discovered
130 // since new PM silently suppressed ASAN. Temporarily turn off ASAN
131 // to unblock the compiler upgrade process.
132 // address: true,
133 // http://b/139747256
134 address: false,
Lloyd Pique70d91362018-10-18 16:02:55 -0700135 },
136}