diff mbox

[libdrm] meson: add configuration summary

Message ID 20180227111107.20172-1-eric.engestrom@imgtec.com (mailing list archive)
State New, archived
Headers show

Commit Message

Eric Engestrom Feb. 27, 2018, 11:11 a.m. UTC
The message block printed is the same as the one in configure.ac

Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com>
---
 meson.build | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

Comments

Dylan Baker Feb. 27, 2018, 5:16 p.m. UTC | #1
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@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 :)
Eric Anholt Feb. 27, 2018, 8:30 p.m. UTC | #2
Dylan Baker <dylan@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@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.
Eric Engestrom Feb. 28, 2018, 3:11 p.m. UTC | #3
On Tuesday, 2018-02-27 12:30:48 -0800, Eric Anholt wrote:
> Dylan Baker <dylan@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@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.
Dylan Baker Feb. 28, 2018, 5:41 p.m. UTC | #4
Quoting Eric Engestrom (2018-02-28 07:11:20)
> On Tuesday, 2018-02-27 12:30:48 -0800, Eric Anholt wrote:
> > Dylan Baker <dylan@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@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
diff mbox

Patch

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('')