xref: /aosp_15_r20/external/igt-gpu-tools/runner/meson.build (revision d83cc019efdc2edc6c4b16e9034a3ceb8d35d77c)
1*d83cc019SAndroid Build Coastguard Workerbuild_runner = get_option('runner')
2*d83cc019SAndroid Build Coastguard Worker
3*d83cc019SAndroid Build Coastguard Workerrunnerlib_sources = [ 'settings.c',
4*d83cc019SAndroid Build Coastguard Worker		      'job_list.c',
5*d83cc019SAndroid Build Coastguard Worker		      'executor.c',
6*d83cc019SAndroid Build Coastguard Worker		      'resultgen.c',
7*d83cc019SAndroid Build Coastguard Worker		    ]
8*d83cc019SAndroid Build Coastguard Worker
9*d83cc019SAndroid Build Coastguard Workerrunner_sources = [ 'runner.c' ]
10*d83cc019SAndroid Build Coastguard Workerresume_sources = [ 'resume.c' ]
11*d83cc019SAndroid Build Coastguard Workerresults_sources = [ 'results.c' ]
12*d83cc019SAndroid Build Coastguard Workerrunner_test_sources = [ 'runner_tests.c' ]
13*d83cc019SAndroid Build Coastguard Workerrunner_json_test_sources = [ 'runner_json_tests.c' ]
14*d83cc019SAndroid Build Coastguard Worker
15*d83cc019SAndroid Build Coastguard Workerjsonc = dependency('json-c', required: build_runner)
16*d83cc019SAndroid Build Coastguard Worker
17*d83cc019SAndroid Build Coastguard Workerif not build_tests and jsonc.found()
18*d83cc019SAndroid Build Coastguard Worker	error('Building test runner requires building tests')
19*d83cc019SAndroid Build Coastguard Workerendif
20*d83cc019SAndroid Build Coastguard Worker
21*d83cc019SAndroid Build Coastguard Workerif jsonc.found()
22*d83cc019SAndroid Build Coastguard Worker	subdir('testdata')
23*d83cc019SAndroid Build Coastguard Worker
24*d83cc019SAndroid Build Coastguard Worker	runnerlib = static_library('igt_runner', runnerlib_sources,
25*d83cc019SAndroid Build Coastguard Worker				   include_directories : inc,
26*d83cc019SAndroid Build Coastguard Worker				   dependencies : [jsonc, glib])
27*d83cc019SAndroid Build Coastguard Worker
28*d83cc019SAndroid Build Coastguard Worker	runner = executable('igt_runner', runner_sources,
29*d83cc019SAndroid Build Coastguard Worker			    link_with : runnerlib,
30*d83cc019SAndroid Build Coastguard Worker			    install : true,
31*d83cc019SAndroid Build Coastguard Worker			    install_dir : bindir,
32*d83cc019SAndroid Build Coastguard Worker			    install_rpath : bindir_rpathdir,
33*d83cc019SAndroid Build Coastguard Worker			    dependencies : igt_deps)
34*d83cc019SAndroid Build Coastguard Worker
35*d83cc019SAndroid Build Coastguard Worker	resume = executable('igt_resume', resume_sources,
36*d83cc019SAndroid Build Coastguard Worker			    link_with : runnerlib,
37*d83cc019SAndroid Build Coastguard Worker			    install : true,
38*d83cc019SAndroid Build Coastguard Worker			    install_dir : bindir,
39*d83cc019SAndroid Build Coastguard Worker			    install_rpath : bindir_rpathdir,
40*d83cc019SAndroid Build Coastguard Worker			    dependencies : igt_deps)
41*d83cc019SAndroid Build Coastguard Worker
42*d83cc019SAndroid Build Coastguard Worker	results = executable('igt_results', results_sources,
43*d83cc019SAndroid Build Coastguard Worker			     link_with : runnerlib,
44*d83cc019SAndroid Build Coastguard Worker			     install : true,
45*d83cc019SAndroid Build Coastguard Worker			     install_dir : bindir,
46*d83cc019SAndroid Build Coastguard Worker			     install_rpath : bindir_rpathdir,
47*d83cc019SAndroid Build Coastguard Worker			     dependencies : igt_deps)
48*d83cc019SAndroid Build Coastguard Worker
49*d83cc019SAndroid Build Coastguard Worker	runner_test = executable('runner_test', runner_test_sources,
50*d83cc019SAndroid Build Coastguard Worker				 c_args : '-DTESTDATA_DIRECTORY="@0@"'.format(testdata_dir),
51*d83cc019SAndroid Build Coastguard Worker				 link_with : runnerlib,
52*d83cc019SAndroid Build Coastguard Worker				 install : false,
53*d83cc019SAndroid Build Coastguard Worker				 dependencies : igt_deps)
54*d83cc019SAndroid Build Coastguard Worker	test('runner', runner_test)
55*d83cc019SAndroid Build Coastguard Worker
56*d83cc019SAndroid Build Coastguard Worker	runner_json_test = executable('runner_json_test', runner_json_test_sources,
57*d83cc019SAndroid Build Coastguard Worker				      c_args : '-DJSON_TESTS_DIRECTORY="@0@"'.format(join_paths(meson.current_source_dir(), 'json_tests_data')),
58*d83cc019SAndroid Build Coastguard Worker				      link_with : runnerlib,
59*d83cc019SAndroid Build Coastguard Worker				      install : false,
60*d83cc019SAndroid Build Coastguard Worker				      dependencies : [igt_deps, jsonc])
61*d83cc019SAndroid Build Coastguard Worker	test('runner_json', runner_json_test)
62*d83cc019SAndroid Build Coastguard Worker
63*d83cc019SAndroid Build Coastguard Worker	build_info += 'Build test runner: true'
64*d83cc019SAndroid Build Coastguard Workerelse
65*d83cc019SAndroid Build Coastguard Worker	build_info += 'Build test runner: false'
66*d83cc019SAndroid Build Coastguard Workerendif
67