[Mesa-dev] last call for autotools

Dylan Baker dylan at pnwbakers.com
Fri Dec 14 17:34:11 UTC 2018


Quoting Andre Heider (2018-12-14 09:24:56)
> On 14/12/2018 17:53, Dylan Baker wrote:
> > Quoting Gert Wollny (2018-12-14 03:44:32)
> >> Am Montag, den 10.12.2018, 15:10 -0800 schrieb Dylan Baker:
> >> (2) It would be nice if Meson would distribute some default cross build
> >> files, currently everybody has to roll its own, and I guess in the end
> >> they all look mostly the same.
> > 
> > Please ask your distro to write and distribute the cross files. It's simply
> > impossible for meson to distribute them for a huge number of reasons, but
> > basically it boils down to too many distros with too many differences. I have
> > done basically everything I can (personally) to make this easier, including
> > adding support for loading cross files from XDG paths (/usr/share/meson/cross,
> > etc)
> > 
> >>
> >> (3) I also noted that with across build one has to set the library
> >> install directory manually, because it defaults to the directory used
> >> for the build machine - i.e. a i386 cross build on debian amd64 should
> >> set the lib install directory on Debian to "lib/i386-linux-gnu" but it
> >> sets it to "lib/x86_64-linux-gnu"
> > 
> > There is this issue: https://github.com/mesonbuild/meson/issues/4008
> > 
> > This is another case that is really hard to handle because of the way different
> > distros have handled installing x86 and x86_64 binaries on the same OS. To name
> > a few:
> > debian : lib/$gnu-tri/
> > arch   : lib/ + lib32/
> > fedora : lib64/ + lib32/
> > 
> > I'm sure there are more, but getting that right all of the time is actually
> > pretty hard. I'll look into it.
> 
> It's not just the libdir, there's no real way for a project to provide 
> all the required cross settings so it works everywhere. Like the 
> pkg-config binary name for e.g. cross-compiling 32bit binaries. I didn't 
> find anything user friendly, so I worked around that on another project 
> [0]. And I'm sure there's more.
> 
> While all that is doable, it is annoying. Isn't there any way for meson 
> to provide a standard set of cross files for distros? If it's the 
> distro's responsibility to provide these without any guidelines it's 
> just going to be another mess, because either a distro doesn't at all or 
> they all do it differently.
> 
> [0] https://github.com/dhewg/nine/blob/master/bootstrap.sh
> 
> Thanks,
> Andre

We can provide some skeleton templates I guess, but most of what a cross file is
is just a list of binary locations and a name to pass to the --cross-file
option. This is just another pain point of there being mⁿ distros making subtly
different choices. We probably can ship cross files for MSVC or Apple's Clang
since we can make some pretty safe assumptions about how those are installed.

I can write some guidelines for distro cross files and add that to meson's
documentation if that's helpful.

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/mesa-dev/attachments/20181214/f6787a83/attachment.sig>


More information about the mesa-dev mailing list