On Thu, Oct 02, 2025 at 09:53:15AM +0200, David Marchand wrote: > Hello Bruce, > > On Wed, 24 Sept 2025 at 13:13, Bruce Richardson > <[email protected]> wrote: > > > > The meson find_library() API call sometimes finds a library that is > > actually incompatible with the current build, for example, returning a > > 64-bit library when doing a 32-bit build. To avoid problems with this, > > check each library returned from a find_library() call and treat the > > library as unfound if its incompatible. > > meson should have all it needs to double check itself that the "found" > library links fine... > But well, we need to live with existing behavior. >
Yes, it's annoying and it should be something I think meson does, but even if it was added today to meson, we'd have to live with current behaviour for a long time. :-( > It's a pity meson refuses to define user helpers... so much copy/paste > in this patch. > Yes, though if we want to reduce it I can remove some that is currently unnecessary. For example, windows support doesn't have any cross-compile options and only supports a single target so the checks there probably aren't necessary. I added them for consistency. The other thing we could do to help out here, is check to see if any more libraries can be switched to using pkg-config. I noticed some libs have fallbacks after a pkg-config call - we could remove the fallbacks and just mandate use of pkg-config for those. > > > > > This checking is not necessary (or should not be necessary) for > > dependencies got using pkg-config, since the .pc files for each build > > type are stored in a different directory on the system. > > Would it affect the library lookup if we pass has_headers to find_library()? > I don't think it would affect things, since the headers are common in many cases, only the binary files differ (thinking especially of the 32-bit vs 64-bit case here). /Bruce

