[Intel-gfx] [PATCH i-g-t 3/3] meson: build a full dependency for lib_igt_perf

Petri Latvala petri.latvala at intel.com
Tue Dec 5 11:05:51 UTC 2017


On Tue, Dec 05, 2017 at 12:44:02PM +0200, Petri Latvala wrote:
> On Tue, Dec 05, 2017 at 11:16:50AM +0100, Daniel Vetter wrote:
> > meson prefers packages dependencies over passing arount static
> > libraries, because those also include linker flags, include dirs and
> > everything else.
> > 
> > While at it pull the special cases out from the common build stanzas
> > like we do with other special cases.
> > 
> > Just a bit of ocd to keep everything polished.
> > 
> > Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> > Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> > ---
> >  benchmarks/meson.build |  9 +++------
> >  lib/meson.build        |  5 ++++-
> >  overlay/meson.build    |  4 ++--
> >  tests/meson.build      | 11 +++++------
> >  4 files changed, 14 insertions(+), 15 deletions(-)
> > 
> > diff --git a/benchmarks/meson.build b/benchmarks/meson.build
> > index fa7f07643a97..4afd204f82b2 100644
> > --- a/benchmarks/meson.build
> > +++ b/benchmarks/meson.build
> > @@ -12,7 +12,6 @@ benchmark_progs = [
> >  	'gem_prw',
> >  	'gem_set_domain',
> >  	'gem_syslatency',
> > -	'gem_wsim',
> >  	'kms_vblank',
> >  	'prime_lookup',
> >  	'vgem_mmap',
> > @@ -31,11 +30,9 @@ endif
> >  foreach prog : benchmark_progs
> >  	# FIXME meson doesn't like binaries with the same name
> >  	# meanwhile just suffix with _bench
> > -	link = []
> > -	if prog == 'gem_wsim'
> > -		link += lib_igt_perf
> > -	endif
> >  	executable(prog + '_bench', prog + '.c',
> > -		   link_with : link,
> >  		   dependencies : test_deps)
> >  endforeach
> > +
> > +executable('gem_wsim_bench', 'gem_wsim.c',
> > +	   dependencies : test_deps + [ lib_igt_perf ])
> > diff --git a/lib/meson.build b/lib/meson.build
> > index 29d89cf09b58..d06d85b438b2 100644
> > --- a/lib/meson.build
> > +++ b/lib/meson.build
> > @@ -180,8 +180,11 @@ lib_igt = declare_dependency(link_with : lib_igt_build,
> >  
> >  igt_deps = [ lib_igt ] + lib_deps
> >  
> > -lib_igt_perf = static_library('igt_perf',
> > +lib_igt_perf_build = static_library('igt_perf',
> >  	['igt_perf.c']
> >  )
> >  
> > +lib_igt_perf = declare_dependency(link_with : lib_igt_perf_build,
> > +				  include_directories : inc)
> > +
> >  subdir('tests')
> > diff --git a/overlay/meson.build b/overlay/meson.build
> > index 6b479eb89890..afacff5ecf60 100644
> > --- a/overlay/meson.build
> > +++ b/overlay/meson.build
> > @@ -21,7 +21,8 @@ dri2proto = dependency('dri2proto', version : '>= 2.6', required : false)
> >  cairo_xlib = dependency('cairo-xlib', required : false)
> >  xrandr = dependency('xrandr', version : '>=1.3', required : false)
> >  
> > -gpu_overlay_deps = [ realtime, math, cairo, pciaccess, libdrm, libdrm_intel ]
> > +gpu_overlay_deps = [ realtime, math, cairo, pciaccess, libdrm,
> > +	libdrm_intel, lib_igt_perf ]
> >  
> >  both_x11_src = ''
> >  
> > @@ -55,6 +56,5 @@ if xrandr.found() and cairo.found()
> >  			include_directories : inc,
> >  			c_args : gpu_overlay_cflags,
> >  			dependencies : gpu_overlay_deps,
> > -			link_with : lib_igt_perf,
> >  			install : true)
> >  endif
> > diff --git a/tests/meson.build b/tests/meson.build
> > index 94cb8bb48cc7..af73af1219df 100644
> > --- a/tests/meson.build
> > +++ b/tests/meson.build
> > @@ -190,7 +190,6 @@ test_progs = [
> >  	'kms_vblank',
> >  	'meta_test',
> >  	'perf',
> > -	'perf_pmu',
> >  	'pm_backlight',
> >  	'pm_lpsp',
> >  	'pm_rc6_residency',
> > @@ -260,17 +259,17 @@ libexecdir = join_paths(get_option('prefix'), get_option('libexecdir'), 'intel-g
> >  test_executables = []
> >  
> >  foreach prog : test_progs
> > -	link = []
> > -	if prog == 'perf_pmu'
> > -		link += lib_igt_perf
> > -	endif
> >  	test_executables += executable(prog, prog + '.c',
> >  		   dependencies : test_deps,
> >  		   install_dir : libexecdir,
> > -		   link_with : link,
> >  		   install : true)
> >  endforeach
> >  
> > +test_executables += executable('perf_pmu', 'perf_pmu.c',
> > +	   dependencies : test_deps + [ lib_igt_perf ],
> > +	   install_dir : libexecdir,
> > +	   install : true)
> > +
> 
> 
> I'm fairly sure I had this commit in my earlier tests for this series,
> but apparently not.
> 
> test_progs += 'perf_pmu'
> 
> is needed here, or perf_pmu doesn't get its place in test-list.txt.
> 


With this fixup squashed in, the series is

Reviewed-by: Petri Latvala <petri.latvala at intel.com>


The differences in the generated xml (autotools vs meson) were, let's
say, cosmetic and minor.



-- 
Petri Latvala


More information about the Intel-gfx mailing list