[igt-dev] [PATCH i-g-t] gtkdoc: Remove the build_by_default hack

Daniel Vetter daniel at ffwll.ch
Mon Jun 18 15:56:27 UTC 2018


On Mon, Jun 18, 2018 at 05:49:21PM +0200, Daniel Vetter wrote:
> 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 at 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.
> 
> Cc: Eric Anholt <eric at anholt.net>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> ---
>  docs/reference/igt-gpu-tools/meson.build | 10 +++++-----
>  meson.build                              |  2 +-
>  2 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/docs/reference/igt-gpu-tools/meson.build b/docs/reference/igt-gpu-tools/meson.build
> index aadb9af593d9..4f33c973a343 100644
> --- a/docs/reference/igt-gpu-tools/meson.build
> +++ b/docs/reference/igt-gpu-tools/meson.build
> @@ -50,17 +50,17 @@ gen_programs = find_program('generate_programs_xml.sh')
>  
>  test_list_files = []
>  
> +generated_docs = []
> +
>  foreach group : test_groups
>  	programs_xml = 'igt_test_programs_' + group + '_programs.xml'
> -	custom_target(programs_xml,
> +	generated_docs += 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,
> +	generated_docs += custom_target(description_xml,
>  		      output : description_xml,
> -		      build_by_default : true,
>  		      depends : test_executables,
>  		      command : [ gen_description, '@OUTPUT@', group, test_list ])
>  endforeach
> @@ -70,7 +70,7 @@ configure_file(input: 'version.xml.in',
>  	       install: false, configuration: config)
>  
>  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',
> diff --git a/meson.build b/meson.build
> index cd736d8e232a..1e7b37bfa406 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -5,7 +5,7 @@ project('igt-gpu-tools', 'c',
>            'c_std=gnu99',
>          ],
>  	license : 'MIT',
> -	meson_version : '>0.40.0')
> +	meson_version : '>0.47')

If anyone can come up with a way to make this a requirement only for
building the docs, it would be super-awesome. But I have no idea how to
pull that stunt off ...
-Daniel

>  
>  cc = meson.get_compiler('c')
>  
> -- 
> 2.17.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the igt-dev mailing list