Re: [v4l-utils v5 0/5] Add support for meson building

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le mercredi 16 juin 2021 à 16:59 +0200, Mauro Carvalho Chehab a écrit :
> Em Wed, 16 Jun 2021 11:26:10 -0300
> Ariel D'Alessandro <ariel.dalessandro@xxxxxxxxxxxxx> escreveu:
> 
> > Kieran,
> > 
> 
> > >  - Meson decided to default libdir to
> > >      /usr/local/lib/x86_64-linux-gnu
> > >    while autoconf used
> > >      /usr/local/lib
> > >    (it's likely handled by the package managers anyway)  
> > 
> >   $ meson configure ../build-meson/ | grep libdir
> >     libdir    lib/x86_64-linux-gnu    Library directory
> 
> The default isn't nice, and will likely cause troubles for the users, as 
> /usr/local/lib/x86_64-linux-gnu would hardly be at the ld.so.conf list of 
> paths for most people. So, when one would try to run a program, it will
> fail.

It is the other way around, meson default to what ld.so.conf (your distribution)
is configured to. In this case you are running a debian/unbutu system, and this
is the proper path for multi-arch library placement.

If you try this on Fedora with a 64bit CPU, it would have picked
/usr/local/lib64. Which is also the proper path for that Linux distribution.
Debian has a more complex way, but it covers more use cases.

> 
> > As mentioned in another response. Autotools is building with `-g -O2` by
> > default, that'd the equivalent meson configuration option
> > --buildtype=debugoptimized. 
> 
> I can't understand the Meson's default... no optimization and no debug!
> Basically something that it is useless for both developers and for
> production. I wonder why they chose a crap default like that...

Each projects have their own opinion on this. I believe debugoptimize is the
right default. Here's how GStreamer project is setup (very first line of the
meson code):

project('gstreamer', 'c',
  version : '1.19.1.1',
  meson_version : '>= 0.54',
  default_options : [ 'warning_level=1',
                      'buildtype=debugoptimized' ])

This is trivially straightforward and I understood Ariel will fix it in next
version. Thanks for spotting.

> 
> > With this configuration the installtion
> > sizes are not that different:
> > 
> >   $ du -s installation_m*
> >   37068	installation_make
> >   37848	installation_meson
> 
> It sounds a lot more coherent.
> 
> > In this case the difference is related to libtool `.la` files not being
> > generated by meson and gconv/ only installed by meson. The latest is
> > probably a feature being only detected by meson in this case, will check
> > that out.
> 
> It was opted to not enable gconv by default, as similar patchset - needed
> to support ARIB STD B-24 charset used by Japanese digital TV - was sent to 
> gconv upstream (not sure if it was merged or not). On other words, the 
> contrib/gconv stuff is independent of v4l-utils itself: it basically
> adds an extra charset to be used by gconv upstream.
> 
> The only reason why it is present at v4l2-utils is that this charset
> is present on ISDB tables on TV broadcasts in Japan. The gconv library
> needs to support it, in order to  convert characters from MPEG tables
> to the system's charset.
> 
> Btw, that's basically one of the reasons why we print a summary of the
> options when ./configure runs.

We can and should definitely do that same.

> 
> Thanks,
> Mauro





[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux