Re: issue with meson builds on msys2

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: issue with meson builds on msys2
Date: 2023-05-03 19:55:28
Message-ID: eb994b0a-66d4-8fe9-6f76-aac00bfb59c3@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers


On 2023-05-03 We 09:20, Andrew Dunstan wrote:
>
>
> On 2023-04-27 Th 18:18, Andres Freund wrote:
>> Hi,
>>
>> On 2023-04-26 09:59:05 -0400, Andrew Dunstan wrote:
>>> Still running into this, and I am rather stumped. This is a blocker for
>>> buildfarm support for meson:
>>>
>>> Here's a simple illustration of the problem. If I do the identical test with
>>> a non-meson build there is no problem:
>> This happens 100% reproducible?
>
>
> For a sufficiently modern installation of msys2 (20230318 version)
> this is reproducible on autoconf builds as well.
>
> For now it's off my list of meson blockers. I will pursue the issue
> when I have time, but for now the IPC::Run workaround is sufficient.
>
> The main thing that's now an issue on Windows is support for various
> options like libxml2. I installed the libxml2 distro from the package
> manager scoop, generated .lib files for the libxml2 and libxslt DLLs,
> and was able to build with autoconf on msys2, and with our MSVC
> support, but not with meson in either case. It looks like we need to
> expand the logic in meson.build for a number of these, just as we have
> done for perl, python, openssl, ldap etc.
>
>
>

I've actually made some progress on this front. I grabbed and built
https://github.com/pkgconf/pkgconf.git (with meson :-) )

After that I set PKG_CONFIG_PATH to point to where the libxml .pc files
are installed, and lo and behold the meson/msvc build worked with libxml
/ libxslt. I did have to move libxml's openssl.pc file aside, as the
distro's version of openssl is extremely old, and we don't want to use
it (I'm using 3.1.0).

Of course, this imposes an extra build dependency for Windows, but it's
not too onerous.

It also means that if anyone wants to use some dependency without a .pc
file they would need to create one. I'll keep trying to expand the list
of things I configure with.

Next targets will include ldap, lz4 and zstd.

I also need to test this with msys2, so fat I have only tested with MSVC.

cheers

andrew

--
Andrew Dunstan
EDB:https://www.enterprisedb.com

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message Andrew Dunstan 2023-05-03 22:39:55 Re: issue with meson builds on msys2
Previous Message Andres Freund 2023-05-03 18:26:15 Re: issue with meson builds on msys2

Browse pgsql-hackers by date

  From Date Subject
Next Message Nathan Bossart 2023-05-03 20:21:16 Re: PL/Python: Fix return in the middle of PG_TRY() block.
Previous Message Muhammad Malik 2023-05-03 19:29:46 Re: refactoring relation extension and BufferAlloc(), faster COPY