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