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