| cc_defaults { | |
| name: "libcompositionengine_defaults", | |
| defaults: ["surfaceflinger_defaults"], | |
| cflags: [ | |
| "-DLOG_TAG=\"CompositionEngine\"", | |
| "-DATRACE_TAG=ATRACE_TAG_GRAPHICS", | |
| ], | |
| shared_libs: [ | |
| "android.frameworks.vr.composer@2.0", | |
| "android.hardware.graphics.allocator@2.0", | |
| "android.hardware.graphics.composer@2.1", | |
| "android.hardware.graphics.composer@2.2", | |
| "android.hardware.graphics.composer@2.3", | |
| "android.hardware.graphics.composer@2.4", | |
| "android.hardware.power@1.0", | |
| "android.hardware.power@1.3", | |
| "libbase", | |
| "libcutils", | |
| "libgui", | |
| "liblayers_proto", | |
| "liblog", | |
| "libnativewindow", | |
| "libprotobuf-cpp-lite", | |
| "libtimestats", | |
| "libui", | |
| "libutils", | |
| ], | |
| static_libs: [ | |
| "libmath", | |
| "librenderengine", | |
| "libtrace_proto", | |
| ], | |
| header_libs: [ | |
| "android.hardware.graphics.composer@2.1-command-buffer", | |
| "android.hardware.graphics.composer@2.2-command-buffer", | |
| "android.hardware.graphics.composer@2.3-command-buffer", | |
| "android.hardware.graphics.composer@2.4-command-buffer", | |
| "libsurfaceflinger_headers", | |
| ], | |
| } | |
| cc_library { | |
| name: "libcompositionengine", | |
| defaults: ["libcompositionengine_defaults"], | |
| srcs: [ | |
| "src/ClientCompositionRequestCache.cpp", | |
| "src/CompositionEngine.cpp", | |
| "src/Display.cpp", | |
| "src/DisplayColorProfile.cpp", | |
| "src/DisplaySurface.cpp", | |
| "src/DumpHelpers.cpp", | |
| "src/HwcBufferCache.cpp", | |
| "src/LayerFECompositionState.cpp", | |
| "src/Output.cpp", | |
| "src/OutputCompositionState.cpp", | |
| "src/OutputLayer.cpp", | |
| "src/OutputLayerCompositionState.cpp", | |
| "src/RenderSurface.cpp", | |
| ], | |
| local_include_dirs: ["include"], | |
| export_include_dirs: ["include"], | |
| } | |
| cc_library { | |
| name: "libcompositionengine_mocks", | |
| defaults: ["libcompositionengine_defaults"], | |
| srcs: [ | |
| "mock/CompositionEngine.cpp", | |
| "mock/Display.cpp", | |
| "mock/DisplayColorProfile.cpp", | |
| "mock/DisplaySurface.cpp", | |
| "mock/LayerFE.cpp", | |
| "mock/NativeWindow.cpp", | |
| "mock/Output.cpp", | |
| "mock/OutputLayer.cpp", | |
| "mock/RenderSurface.cpp", | |
| ], | |
| static_libs: [ | |
| "libgtest", | |
| "libgmock", | |
| "libcompositionengine", | |
| ], | |
| local_include_dirs: ["include"], | |
| export_include_dirs: ["include"], | |
| } | |
| cc_test { | |
| name: "libcompositionengine_test", | |
| test_suites: ["device-tests"], | |
| defaults: ["libcompositionengine_defaults"], | |
| srcs: [ | |
| "tests/CompositionEngineTest.cpp", | |
| "tests/DisplayColorProfileTest.cpp", | |
| "tests/DisplayTest.cpp", | |
| "tests/HwcBufferCacheTest.cpp", | |
| "tests/MockHWC2.cpp", | |
| "tests/MockHWComposer.cpp", | |
| "tests/MockPowerAdvisor.cpp", | |
| "tests/OutputTest.cpp", | |
| "tests/OutputLayerTest.cpp", | |
| "tests/RenderSurfaceTest.cpp", | |
| ], | |
| static_libs: [ | |
| "libcompositionengine", | |
| "libcompositionengine_mocks", | |
| "libgui_mocks", | |
| "librenderengine_mocks", | |
| "libgmock", | |
| "libgtest", | |
| ], | |
| sanitize: { | |
| // By using the address sanitizer, we not only uncover any issues | |
| // with the test, but also any issues with the code under test. | |
| // | |
| // Note: If you get an runtime link error like: | |
| // | |
| // CANNOT LINK EXECUTABLE "/data/local/tmp/libcompositionengine_test": library "libclang_rt.asan-aarch64-android.so" not found | |
| // | |
| // it is because the address sanitizer shared objects are not installed | |
| // by default in the system image. | |
| // | |
| // You can either "make dist tests" before flashing, or set this | |
| // option to false temporarily. | |
| // FIXME: ASAN build is broken for a while, but was not discovered | |
| // since new PM silently suppressed ASAN. Temporarily turn off ASAN | |
| // to unblock the compiler upgrade process. | |
| // address: true, | |
| // http://b/139747256 | |
| address: false, | |
| }, | |
| } |