[PATCH libdrm] meson: add configuration summary

Dylan Baker dylan at pnwbakers.com
Wed Feb 28 17:41:37 UTC 2018


Quoting Eric Engestrom (2018-02-28 07:11:20)
> On Tuesday, 2018-02-27 12:30:48 -0800, Eric Anholt wrote:
> > Dylan Baker <dylan at pnwbakers.com> writes:
> > 
> > > [ Unknown signature status ]
> > > Quoting Eric Engestrom (2018-02-27 03:11:07)
> > >> The message block printed is the same as the one in configure.ac
> > >> 
> > >> Signed-off-by: Eric Engestrom <eric.engestrom at imgtec.com>
> > >> ---
> > >>  meson.build | 17 +++++++++++++++++
> > >>  1 file changed, 17 insertions(+)
> > >> 
> > >> diff --git a/meson.build b/meson.build
> > >> index bd00cdc2cae9f0749180..ab6f881755935968b822 100644
> > >> --- a/meson.build
> > >> +++ b/meson.build
> > >> @@ -373,3 +373,20 @@ if with_man_pages
> > >>  endif
> > >>  subdir('data')
> > >>  subdir('tests')
> > >> +
> > >> +message('')
> > >> +message('@0@ will be compiled with:'.format(meson.project_name()))
> > >> +message('')
> > >> +message('  libkms         @0@'.format(with_libkms))
> > >> +message('  Intel API      @0@'.format(with_intel))
> > >> +message('  vmwgfx API     @0@'.format(with_vmwgfx))
> > >> +message('  Radeon API     @0@'.format(with_radeon))
> > >> +message('  AMDGPU API     @0@'.format(with_amdgpu))
> > >> +message('  Nouveau API    @0@'.format(with_nouveau))
> > >> +message('  OMAP API       @0@'.format(with_omap))
> > >> +message('  EXYNOS API     @0@'.format(with_exynos))
> > >> +message('  Freedreno API  @0@ (kgsl: @1@)'.format(with_freedreno, with_freedreno_kgsl))
> > >> +message('  Tegra API      @0@'.format(with_tegra))
> > >> +message('  VC4 API        @0@'.format(with_vc4))
> > >> +message('  Etnaviv API    @0@'.format(with_etnaviv))
> > >> +message('')
> > >> -- 
> > >> Cheers,
> > >>   Eric
> > >> 
> > >
> > > This one is certainly simple enough that we can use a single message call and a
> > > ''' string :)
> > 
> > But then you end up with 13 @n@ values and when someone wants to put
> > something earlier in the list for some sorting reason, then they need to
> > renumber the rest.  This is much nicer.
> 
> I have to agree here. Dylan, why did you want to avoid multiple
> `message()`? They're not expensive afaict, so I'm not sure what the gain
> would be?
> 
> I also had a try, and multiline messages only get a `Message:` prefix on
> the first line, so combining them would result in unpredictable vertical
> alignments. Unless there's a good reason to merge them, I'll keep them
> separate.

It's mostly my irrational OCD, but I think a long series of calls to print or
message (or whatever your language calls it) are incredibly hard to read.

message('')
message('@0@ will be compiled with:'.format(meson.project_name()))
message('')
message('  libkms         @0@'.format(with_libkms))
message('  Intel API      @0@'.format(with_intel))
message('  vmwgfx API     @0@'.format(with_vmwgfx))
message('  Radeon API     @0@'.format(with_radeon))
message('  AMDGPU API     @0@'.format(with_amdgpu))
message('  Nouveau API    @0@'.format(with_nouveau))
message('  OMAP API       @0@'.format(with_omap))
message('  EXYNOS API     @0@'.format(with_exynos))
message('  Freedreno API  @0@ (kgsl: @1@)'.format(with_freedreno, with_freedreno_kgsl))
message('  Tegra API      @0@'.format(with_tegra))
message('  VC4 API        @0@'.format(with_vc4))
message('  Etnaviv API    @0@'.format(with_etnaviv))
message('')

vs

message('''

  @0@ will be compiled with:

  libkms         @1@
  Intel API      @2@
  vmwgfx API     @3@
  Radeon API     @4@
  AMDGPU API     @5@
  Nouveau API    @6@
  OMAP API       @7@
  EXYNOS API     @8@
  Freedreno API  @9@ (kgsl: @10@)
  Tegra API      @11@
  VC4 API        @12@
  Etnaviv API    @13@

'''.format(
  meson.project_name(),
  with_libkms,
  with_intel,
  with_vmwgfx,
  ...
)

I do have to admit that Anholt is right that the lack of either an inline
replacement syntax or an unnumbered formatter makes this somewhat unwieldy in
meson. And it's not that big of a deal either way I guess.

Dylan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20180228/1a113155/attachment.sig>


More information about the dri-devel mailing list