Hi Peter,
Thanks for looking into this and providing your feedback.
> I took this idea of disabling static libraries in meson and made it a
> separate patch; see [0]. It looks like this patch is getting close to
> consensus, so we could commit it soon. Then you could rebase your patch
> over it, which would make it quite a bit simpler.
That’s a great idea and will definitely help simplify the overall changes.
Once that patch is committed, I’ll rebase my changes accordingly to align with the new approach.
> I think in general, the meson changes are ok. But I needed some
> changes, for example, your patch contains
Thanks for reviewing the changes.
> but the method .disabled() doesn't exist, it should be .found(). So I’m
> wondering how this patch was tested.
You’re correct — the method .disabled() doesn’t exist; it should be .found(). We initially tried to follow the same approach used for other dependencies (like docs, docs_pdf, gssapi), and didn’t encounter any errors during testing.
In Meson, the option() class implements disabled(), but the disabler() object does not. When we ran a sample test, we observed that Meson’s behaviour on AIX/Linux seems to ignore any unknown methods. As a result, the .disabled() conditional check was silently skipped, which explains why it didn’t fail during our tests.
> Another patch of interest to you could be [1], which moves the
> MAXIMUM_ALIGNOF computation into c.h. This should also simplify your
> patch. But that patch has not received any discussion so far.
This is a better approach. This would simplify the changes in both configure and meson.build.
> It's ok to split changes into multiple patches, and then recommend which parts you want
> reviewed first. But we need to see at least a rough outline of the
> complete plan before spending significant effort on reviewing the pieces.
Sure. We are working on the changes. I’ll submit the full patch accordingly.
Thanks again for your guidance and support!