blob: 6f076ad11f2eacf43c3c432d4b3d71dbbbc8907d [file] [log] [blame]
cc_defaults {
name: "libcompositionengine_defaults",
defaults: ["surfaceflinger_defaults"],
cflags: [
"-DLOG_TAG=\"CompositionEngine\"",
],
shared_libs: [
"android.frameworks.vr.composer@1.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.power@1.0",
"android.hardware.power@1.3",
"libbase",
"libcutils",
"libgui",
"liblayers_proto",
"liblog",
"libnativewindow",
"libsync",
"libtimestats_proto",
"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",
"libsurfaceflinger_headers",
],
}
cc_library {
name: "libcompositionengine",
defaults: ["libcompositionengine_defaults"],
srcs: [
"src/CompositionEngine.cpp",
"src/Display.cpp",
"src/DisplayColorProfile.cpp",
"src/DisplaySurface.cpp",
"src/DumpHelpers.cpp",
"src/HwcBufferCache.cpp",
"src/Layer.cpp",
"src/LayerCompositionState.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/Layer.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/LayerTest.cpp",
"tests/MockHWC2.cpp",
"tests/MockHWComposer.cpp",
"tests/OutputTest.cpp",
"tests/OutputLayerTest.cpp",
"tests/RenderSurfaceTest.cpp",
],
static_libs: [
"libcompositionengine",
"libcompositionengine_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.
address: true,
},
}