diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2018-06-19 08:47:37 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2018-06-20 15:04:24 +0200 |
commit | 4bbfb4fb14b3deab9bc4db9911280b35c22b718c (patch) | |
tree | 90bfb1ee01ecbe550de9a8ed656e1c276e1fd187 /docs | |
parent | 578c645406d59138029fa6ef343fcc87c2d95d4c (diff) |
gtkdoc: Remove the build_by_default hack
meson 0.45 properly supports generated content_files. Except for the
minor issue that we're hitting an internal bug in meson. I've made a
pull request for that
https://github.com/mesonbuild/meson/pull/3189
which has now been addressed in
commit c1f275bfa644beafab9f8572351d4b64d61c148b
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date: Sun May 6 20:09:49 2018 +0530
gnome.gtkdoc: Allow passing file objects as xml_files
If we pass a source files() object, we will look for it in the build
directory, which is wrong. If we pass a build files() object (from
configure_file()), we will find it in the build directory, and then
try to copy it on top of itself in gtkdochelper.py getting a
SameFileError.
Add a test for it, and also properly iterate custom target outputs
when adding to content files.
Downside of this all is that we'd need to up the meson requirements to
something like 0.47, which isn't even released yet :-/
v2: Rebase and also add version requirement.
v3: I figured out how to make this work with a meson version check!
v4: Remove stray hunk (Petri).
Cc: Eric Anholt <eric@anholt.net>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'docs')
-rw-r--r-- | docs/reference/igt-gpu-tools/meson.build | 49 |
1 files changed, 34 insertions, 15 deletions
diff --git a/docs/reference/igt-gpu-tools/meson.build b/docs/reference/igt-gpu-tools/meson.build index aadb9af5..ebcb6b7a 100644 --- a/docs/reference/igt-gpu-tools/meson.build +++ b/docs/reference/igt-gpu-tools/meson.build @@ -50,27 +50,46 @@ gen_programs = find_program('generate_programs_xml.sh') test_list_files = [] -foreach group : test_groups - programs_xml = 'igt_test_programs_' + group + '_programs.xml' - custom_target(programs_xml, - output : programs_xml, - build_by_default : true, - command : [ gen_programs, '@OUTPUT@', group, test_list ]) - - description_xml = 'igt_test_programs_' + group + '_description.xml' - custom_target(description_xml, - output : description_xml, - build_by_default : true, - depends : test_executables, - command : [ gen_description, '@OUTPUT@', group, test_list ]) -endforeach +generated_docs = [] configure_file(input: 'version.xml.in', output: 'version.xml', install: false, configuration: config) +if meson.version().version_compare('>= 0.47') + foreach group : test_groups + programs_xml = 'igt_test_programs_' + group + '_programs.xml' + generated_docs += custom_target(programs_xml, + output : programs_xml, + command : [ gen_programs, '@OUTPUT@', group, test_list ]) + + description_xml = 'igt_test_programs_' + group + '_description.xml' + generated_docs += custom_target(description_xml, + output : description_xml, + depends : test_executables, + command : [ gen_description, '@OUTPUT@', group, test_list ]) + endforeach +else + # older meson needs the build_by_default hack because gtkdoc dependency + # handling is broken + foreach group : test_groups + programs_xml = 'igt_test_programs_' + group + '_programs.xml' + custom_target(programs_xml, + build_by_default : true, + output : programs_xml, + command : [ gen_programs, '@OUTPUT@', group, test_list ]) + + description_xml = 'igt_test_programs_' + group + '_description.xml' + custom_target(description_xml, + build_by_default : true, + output : description_xml, + depends : test_executables, + command : [ gen_description, '@OUTPUT@', group, test_list ]) + endforeach +endif + gnome.gtkdoc('igt-gpu-tools', - content_files : ['igt_test_programs.xml'], + content_files : ['igt_test_programs.xml'] + generated_docs, dependencies : lib_igt, install : true, main_xml : 'igt-gpu-tools-docs.xml', |