xref: /aosp_15_r20/external/drm_hwcomposer/meson.build (revision 0a9764fe0a15e71ebbeb85e87e10990c23aab47f)
1*0a9764feSAndroid Build Coastguard Workerproject(
2*0a9764feSAndroid Build Coastguard Worker    'drm_hwcomposer',
3*0a9764feSAndroid Build Coastguard Worker    ['c', 'cpp'],
4*0a9764feSAndroid Build Coastguard Worker    version : '3',
5*0a9764feSAndroid Build Coastguard Worker    license : 'APACHE-2.0',
6*0a9764feSAndroid Build Coastguard Worker    meson_version : '>= 0.56',
7*0a9764feSAndroid Build Coastguard Worker    default_options : ['buildtype=debugoptimized', 'b_ndebug=if-release', 'c_std=c11', 'cpp_std=c++17', 'cpp_rtti=false']
8*0a9764feSAndroid Build Coastguard Worker)
9*0a9764feSAndroid Build Coastguard Worker
10*0a9764feSAndroid Build Coastguard Workerinc_include = [include_directories('.')]
11*0a9764feSAndroid Build Coastguard Worker
12*0a9764feSAndroid Build Coastguard Workersrc_common = files(
13*0a9764feSAndroid Build Coastguard Worker    'compositor/DrmKmsPlan.cpp',
14*0a9764feSAndroid Build Coastguard Worker    'compositor/FlatteningController.cpp',
15*0a9764feSAndroid Build Coastguard Worker    'backend/BackendManager.cpp',
16*0a9764feSAndroid Build Coastguard Worker    'backend/Backend.cpp',
17*0a9764feSAndroid Build Coastguard Worker    'backend/BackendClient.cpp',
18*0a9764feSAndroid Build Coastguard Worker    'utils/fd.cpp',
19*0a9764feSAndroid Build Coastguard Worker    'utils/properties.cpp',
20*0a9764feSAndroid Build Coastguard Worker)
21*0a9764feSAndroid Build Coastguard Worker
22*0a9764feSAndroid Build Coastguard Workersrcs_hwc2_device = [
23*0a9764feSAndroid Build Coastguard Worker    'hwc2_device/hwc2_device.cpp',
24*0a9764feSAndroid Build Coastguard Worker    'hwc2_device/DrmHwcTwo.cpp',
25*0a9764feSAndroid Build Coastguard Worker    'hwc2_device/HwcDisplayConfigs.cpp',
26*0a9764feSAndroid Build Coastguard Worker    'hwc2_device/HwcDisplay.cpp',
27*0a9764feSAndroid Build Coastguard Worker    'hwc2_device/HwcLayer.cpp',
28*0a9764feSAndroid Build Coastguard Worker]
29*0a9764feSAndroid Build Coastguard Worker
30*0a9764feSAndroid Build Coastguard Workerdeps = [
31*0a9764feSAndroid Build Coastguard Worker    dependency('cutils'),
32*0a9764feSAndroid Build Coastguard Worker    dependency('drm'),
33*0a9764feSAndroid Build Coastguard Worker    dependency('hardware'),
34*0a9764feSAndroid Build Coastguard Worker    dependency('hidlbase'),
35*0a9764feSAndroid Build Coastguard Worker    dependency('log'),
36*0a9764feSAndroid Build Coastguard Worker    dependency('sync'),
37*0a9764feSAndroid Build Coastguard Worker    dependency('ui'),
38*0a9764feSAndroid Build Coastguard Worker    dependency('utils'),
39*0a9764feSAndroid Build Coastguard Worker    dependency('aidlcommonsupport'),
40*0a9764feSAndroid Build Coastguard Worker    dependency('[email protected]'),
41*0a9764feSAndroid Build Coastguard Worker    dependency('[email protected]'),
42*0a9764feSAndroid Build Coastguard Worker]
43*0a9764feSAndroid Build Coastguard Worker
44*0a9764feSAndroid Build Coastguard Workercommon_cpp_flags = [
45*0a9764feSAndroid Build Coastguard Worker    '-DUSE_IMAPPER4_METADATA_API',
46*0a9764feSAndroid Build Coastguard Worker]
47*0a9764feSAndroid Build Coastguard Worker
48*0a9764feSAndroid Build Coastguard Workerhwc2_cpp_flags = [
49*0a9764feSAndroid Build Coastguard Worker    '-DHWC2_INCLUDE_STRINGIFICATION',
50*0a9764feSAndroid Build Coastguard Worker    '-DHWC2_USE_CPP11',
51*0a9764feSAndroid Build Coastguard Worker]
52*0a9764feSAndroid Build Coastguard Worker
53*0a9764feSAndroid Build Coastguard Workersubdir('drm')
54*0a9764feSAndroid Build Coastguard Workersubdir('bufferinfo')
55*0a9764feSAndroid Build Coastguard Worker
56*0a9764feSAndroid Build Coastguard Workerdrmhwc_common = static_library(
57*0a9764feSAndroid Build Coastguard Worker    'drm_hwcomposer_common',
58*0a9764feSAndroid Build Coastguard Worker    src_common,
59*0a9764feSAndroid Build Coastguard Worker# TODO remove hwc2 flags from common code (backends needs rework)
60*0a9764feSAndroid Build Coastguard Worker    cpp_args : common_cpp_flags + hwc2_cpp_flags,
61*0a9764feSAndroid Build Coastguard Worker    dependencies : deps,
62*0a9764feSAndroid Build Coastguard Worker)
63*0a9764feSAndroid Build Coastguard Worker
64*0a9764feSAndroid Build Coastguard Workersubdir('hwc2_device')
65*0a9764feSAndroid Build Coastguard Workersubdir('hwc3')
66