xref: /aosp_15_r20/external/igt-gpu-tools/lib/meson.build (revision d83cc019efdc2edc6c4b16e9034a3ceb8d35d77c)
1*d83cc019SAndroid Build Coastguard Workerlib_sources = [
2*d83cc019SAndroid Build Coastguard Worker	'drmtest.c',
3*d83cc019SAndroid Build Coastguard Worker	'i915/gem_context.c',
4*d83cc019SAndroid Build Coastguard Worker	'i915/gem_engine_topology.c',
5*d83cc019SAndroid Build Coastguard Worker	'i915/gem_scheduler.c',
6*d83cc019SAndroid Build Coastguard Worker	'i915/gem_submission.c',
7*d83cc019SAndroid Build Coastguard Worker	'i915/gem_ring.c',
8*d83cc019SAndroid Build Coastguard Worker	'i915/gem_mman.c',
9*d83cc019SAndroid Build Coastguard Worker	'i915/gem_vm.c',
10*d83cc019SAndroid Build Coastguard Worker	'igt_color_encoding.c',
11*d83cc019SAndroid Build Coastguard Worker	'igt_debugfs.c',
12*d83cc019SAndroid Build Coastguard Worker	'igt_device.c',
13*d83cc019SAndroid Build Coastguard Worker	'igt_aux.c',
14*d83cc019SAndroid Build Coastguard Worker	'igt_gpu_power.c',
15*d83cc019SAndroid Build Coastguard Worker	'igt_gt.c',
16*d83cc019SAndroid Build Coastguard Worker	'igt_gvt.c',
17*d83cc019SAndroid Build Coastguard Worker	'igt_halffloat.c',
18*d83cc019SAndroid Build Coastguard Worker	'igt_matrix.c',
19*d83cc019SAndroid Build Coastguard Worker	'igt_perf.c',
20*d83cc019SAndroid Build Coastguard Worker	'igt_primes.c',
21*d83cc019SAndroid Build Coastguard Worker	'igt_rand.c',
22*d83cc019SAndroid Build Coastguard Worker	'igt_stats.c',
23*d83cc019SAndroid Build Coastguard Worker	'igt_syncobj.c',
24*d83cc019SAndroid Build Coastguard Worker	'igt_sysfs.c',
25*d83cc019SAndroid Build Coastguard Worker	'igt_sysrq.c',
26*d83cc019SAndroid Build Coastguard Worker	'igt_vgem.c',
27*d83cc019SAndroid Build Coastguard Worker	'igt_x86.c',
28*d83cc019SAndroid Build Coastguard Worker	'instdone.c',
29*d83cc019SAndroid Build Coastguard Worker	'intel_batchbuffer.c',
30*d83cc019SAndroid Build Coastguard Worker	'intel_chipset.c',
31*d83cc019SAndroid Build Coastguard Worker	'intel_device_info.c',
32*d83cc019SAndroid Build Coastguard Worker	'intel_os.c',
33*d83cc019SAndroid Build Coastguard Worker	'intel_mmio.c',
34*d83cc019SAndroid Build Coastguard Worker	'ioctl_wrappers.c',
35*d83cc019SAndroid Build Coastguard Worker	'media_spin.c',
36*d83cc019SAndroid Build Coastguard Worker	'media_fill.c',
37*d83cc019SAndroid Build Coastguard Worker	'gpgpu_fill.c',
38*d83cc019SAndroid Build Coastguard Worker	'gpu_cmds.c',
39*d83cc019SAndroid Build Coastguard Worker	'rendercopy_i915.c',
40*d83cc019SAndroid Build Coastguard Worker	'rendercopy_i830.c',
41*d83cc019SAndroid Build Coastguard Worker	'rendercopy_gen4.c',
42*d83cc019SAndroid Build Coastguard Worker	'rendercopy_gen6.c',
43*d83cc019SAndroid Build Coastguard Worker	'rendercopy_gen7.c',
44*d83cc019SAndroid Build Coastguard Worker	'rendercopy_gen8.c',
45*d83cc019SAndroid Build Coastguard Worker	'rendercopy_gen9.c',
46*d83cc019SAndroid Build Coastguard Worker	'sw_sync.c',
47*d83cc019SAndroid Build Coastguard Worker	'intel_reg_map.c',
48*d83cc019SAndroid Build Coastguard Worker	'intel_iosf.c',
49*d83cc019SAndroid Build Coastguard Worker	'igt_kms.c',
50*d83cc019SAndroid Build Coastguard Worker	'igt_fb.c',
51*d83cc019SAndroid Build Coastguard Worker	'igt_core.c',
52*d83cc019SAndroid Build Coastguard Worker	'igt_draw.c',
53*d83cc019SAndroid Build Coastguard Worker	'igt_pm.c',
54*d83cc019SAndroid Build Coastguard Worker	'igt_dummyload.c',
55*d83cc019SAndroid Build Coastguard Worker	'uwildmat/uwildmat.c',
56*d83cc019SAndroid Build Coastguard Worker	'igt_kmod.c',
57*d83cc019SAndroid Build Coastguard Worker	'igt_panfrost.c',
58*d83cc019SAndroid Build Coastguard Worker	'igt_v3d.c',
59*d83cc019SAndroid Build Coastguard Worker	'igt_vc4.c',
60*d83cc019SAndroid Build Coastguard Worker	'igt_psr.c',
61*d83cc019SAndroid Build Coastguard Worker	'igt_amd.c',
62*d83cc019SAndroid Build Coastguard Worker	'igt_edid.c',
63*d83cc019SAndroid Build Coastguard Worker	'igt_eld.c',
64*d83cc019SAndroid Build Coastguard Worker	'igt_infoframe.c',
65*d83cc019SAndroid Build Coastguard Worker]
66*d83cc019SAndroid Build Coastguard Worker
67*d83cc019SAndroid Build Coastguard Workerlib_deps = [
68*d83cc019SAndroid Build Coastguard Worker	cairo,
69*d83cc019SAndroid Build Coastguard Worker	glib,
70*d83cc019SAndroid Build Coastguard Worker	libdrm,
71*d83cc019SAndroid Build Coastguard Worker	libdw,
72*d83cc019SAndroid Build Coastguard Worker	libkmod,
73*d83cc019SAndroid Build Coastguard Worker	libprocps,
74*d83cc019SAndroid Build Coastguard Worker	libudev,
75*d83cc019SAndroid Build Coastguard Worker	math,
76*d83cc019SAndroid Build Coastguard Worker	pciaccess,
77*d83cc019SAndroid Build Coastguard Worker	pixman,
78*d83cc019SAndroid Build Coastguard Worker	pthreads,
79*d83cc019SAndroid Build Coastguard Worker	realtime,
80*d83cc019SAndroid Build Coastguard Worker	zlib
81*d83cc019SAndroid Build Coastguard Worker]
82*d83cc019SAndroid Build Coastguard Worker
83*d83cc019SAndroid Build Coastguard Workerif libdrm_intel.found()
84*d83cc019SAndroid Build Coastguard Worker	lib_deps += libdrm_intel
85*d83cc019SAndroid Build Coastguard Workerelse
86*d83cc019SAndroid Build Coastguard Worker	lib_sources += 'stubs/drm/intel_bufmgr.c'
87*d83cc019SAndroid Build Coastguard Worker	inc = [ inc, include_directories('stubs/drm') ]
88*d83cc019SAndroid Build Coastguard Workerendif
89*d83cc019SAndroid Build Coastguard Worker
90*d83cc019SAndroid Build Coastguard Workerif libunwind.found()
91*d83cc019SAndroid Build Coastguard Worker	lib_deps += libunwind
92*d83cc019SAndroid Build Coastguard Workerelse
93*d83cc019SAndroid Build Coastguard Worker	inc = [ inc, include_directories('stubs/libunwind') ]
94*d83cc019SAndroid Build Coastguard Workerendif
95*d83cc019SAndroid Build Coastguard Worker
96*d83cc019SAndroid Build Coastguard Workerif valgrind.found()
97*d83cc019SAndroid Build Coastguard Worker	lib_deps += valgrind
98*d83cc019SAndroid Build Coastguard Workerendif
99*d83cc019SAndroid Build Coastguard Worker
100*d83cc019SAndroid Build Coastguard Workerif gsl.found()
101*d83cc019SAndroid Build Coastguard Worker	lib_deps += gsl
102*d83cc019SAndroid Build Coastguard Worker	lib_sources += [ 'igt_frame.c', 'igt_audio.c' ]
103*d83cc019SAndroid Build Coastguard Workerendif
104*d83cc019SAndroid Build Coastguard Worker
105*d83cc019SAndroid Build Coastguard Workerif alsa.found()
106*d83cc019SAndroid Build Coastguard Worker	lib_deps += alsa
107*d83cc019SAndroid Build Coastguard Worker	lib_sources += 'igt_alsa.c'
108*d83cc019SAndroid Build Coastguard Workerendif
109*d83cc019SAndroid Build Coastguard Worker
110*d83cc019SAndroid Build Coastguard Workerif chamelium.found()
111*d83cc019SAndroid Build Coastguard Worker	lib_deps += chamelium
112*d83cc019SAndroid Build Coastguard Worker	lib_sources += 'igt_chamelium.c'
113*d83cc019SAndroid Build Coastguard Worker	lib_sources += 'igt_chamelium_stream.c'
114*d83cc019SAndroid Build Coastguard Workerendif
115*d83cc019SAndroid Build Coastguard Worker
116*d83cc019SAndroid Build Coastguard Workersrcdir = join_paths(meson.source_root(), 'tests')
117*d83cc019SAndroid Build Coastguard Worker
118*d83cc019SAndroid Build Coastguard Workerlib_version = vcs_tag(input : 'version.h.in', output : 'version.h',
119*d83cc019SAndroid Build Coastguard Worker		      fallback : 'NO-GIT',
120*d83cc019SAndroid Build Coastguard Worker		      command : [ 'git', 'log', '-n1', '--pretty=format:g%h' ] )
121*d83cc019SAndroid Build Coastguard Worker
122*d83cc019SAndroid Build Coastguard Workerlib_intermediates = []
123*d83cc019SAndroid Build Coastguard Workerforeach f: lib_sources
124*d83cc019SAndroid Build Coastguard Worker    name = f.underscorify(f)
125*d83cc019SAndroid Build Coastguard Worker    lib = static_library('igt-' + name,
126*d83cc019SAndroid Build Coastguard Worker	[ f, lib_version ],
127*d83cc019SAndroid Build Coastguard Worker	include_directories: inc,
128*d83cc019SAndroid Build Coastguard Worker	dependencies : lib_deps,
129*d83cc019SAndroid Build Coastguard Worker	c_args : [
130*d83cc019SAndroid Build Coastguard Worker	    '-DIGT_DATADIR="@0@"'.format(join_paths(prefix, datadir)),
131*d83cc019SAndroid Build Coastguard Worker	    '-DIGT_SRCDIR="@0@"'.format(srcdir),
132*d83cc019SAndroid Build Coastguard Worker	    '-DIGT_LOG_DOMAIN="@0@"'.format(f.split('.')[0]),
133*d83cc019SAndroid Build Coastguard Worker	])
134*d83cc019SAndroid Build Coastguard Worker
135*d83cc019SAndroid Build Coastguard Worker    lib_intermediates += lib
136*d83cc019SAndroid Build Coastguard Workerendforeach
137*d83cc019SAndroid Build Coastguard Worker
138*d83cc019SAndroid Build Coastguard Workerlib_igt_build = shared_library('igt',
139*d83cc019SAndroid Build Coastguard Worker    ['dummy.c'],
140*d83cc019SAndroid Build Coastguard Worker    link_whole: lib_intermediates,
141*d83cc019SAndroid Build Coastguard Worker    dependencies: lib_deps,
142*d83cc019SAndroid Build Coastguard Worker    install : true,
143*d83cc019SAndroid Build Coastguard Worker    soversion : '0',
144*d83cc019SAndroid Build Coastguard Worker)
145*d83cc019SAndroid Build Coastguard Worker
146*d83cc019SAndroid Build Coastguard Workerlib_igt = declare_dependency(link_with : lib_igt_build,
147*d83cc019SAndroid Build Coastguard Worker			    include_directories : inc)
148*d83cc019SAndroid Build Coastguard Worker
149*d83cc019SAndroid Build Coastguard Workerigt_deps = [ lib_igt ] + lib_deps
150*d83cc019SAndroid Build Coastguard Worker
151*d83cc019SAndroid Build Coastguard Workerlin_igt_chipset_build = static_library('igt_chipset',
152*d83cc019SAndroid Build Coastguard Worker                                       ['intel_chipset.c',
153*d83cc019SAndroid Build Coastguard Worker                                        'intel_device_info.c'],
154*d83cc019SAndroid Build Coastguard Worker                                       include_directories : inc)
155*d83cc019SAndroid Build Coastguard Worker
156*d83cc019SAndroid Build Coastguard Workerlib_igt_chipset = declare_dependency(link_with : lin_igt_chipset_build,
157*d83cc019SAndroid Build Coastguard Worker                                     include_directories : inc)
158*d83cc019SAndroid Build Coastguard Worker
159*d83cc019SAndroid Build Coastguard Workerlib_igt_perf_build = static_library('igt_perf',
160*d83cc019SAndroid Build Coastguard Worker	['igt_perf.c'],
161*d83cc019SAndroid Build Coastguard Worker	include_directories : inc)
162*d83cc019SAndroid Build Coastguard Worker
163*d83cc019SAndroid Build Coastguard Workerlib_igt_perf = declare_dependency(link_with : lib_igt_perf_build,
164*d83cc019SAndroid Build Coastguard Worker				  include_directories : inc)
165*d83cc019SAndroid Build Coastguard Worker
166*d83cc019SAndroid Build Coastguard Workersubdir('tests')
167