Re: zlib detection in Meson on Windows broken?

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>
Cc: Andres Freund <andres(at)anarazel(dot)de>, Tristan Partin <tristan(at)partin(dot)io>, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: zlib detection in Meson on Windows broken?
Date: 2024-05-22 14:20:56
Message-ID: CA+OCxowCekEqkxwkgNeJAHvHdmepL5EnJWrFhAS9pzrgNaYDbw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi

On Wed, 22 May 2024 at 14:11, Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com> wrote:

> Hi,
>
> On Tue, 21 May 2024 at 18:24, Dave Page <dpage(at)pgadmin(dot)org> wrote:
> >
> >
> >
> > On Tue, 21 May 2024 at 16:04, Andres Freund <andres(at)anarazel(dot)de> wrote:
> >>
> >> Hi,
> >>
> >> On 2024-05-20 11:58:05 +0100, Dave Page wrote:
> >> > I have very little experience with Meson, and even less interpreting
> it's
> >> > logs, but it seems to me that it's not including the extra lib and
> include
> >> > directories when it runs the test compile, given the command line it's
> >> > reporting:
> >> >
> >> > cl
> C:\Users\dpage\git\postgresql\build\meson-private\tmpg_h4xcue\testfile.c
> >> > /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od
> /Oi-
> >> >
> >> > Bug, or am I doing something silly?
> >>
> >> It's a buglet. We rely on meson's internal fallback detection of zlib,
> if it's
> >> not provided via pkg-config or cmake. But it doesn't know about our
> >> extra_include_dirs parameter. We should probably fix that...
> >
> >
> > Oh good, then I'm not going bonkers. I'm still curious about how it
> works for Andrew but not me, however fixing that buglet should solve my
> issue, and would be sensible behaviour.
> >
> > Thanks!
>
> I tried to install your latest zlib artifact (nmake one) to the
> Windows CI images (not the official ones) [1]. Then, I used the
> default meson.build file to build but meson could not find the zlib.
> After that, I modified it like you suggested before; I used a
> 'cc.find_library()' to find zlib as a fallback method and it seems it
> worked [2]. Please see meson setup logs below [3], does something
> similar to the attached solve your problem?
>

That patch does solve my problem - thank you!

>
> The interesting thing is, I also tried this 'cc.find_library' method
> with your old artifact (cmake one). It was able to find zlib but all
> tests failed [4].
>

Very odd. Whilst I haven't used that particular build elsewhere, we've been
building PostgreSQL and shipping client utilities with pgAdmin using
cmake-built zlib for years.

>
> Experimental zlib meson.build diff is attached.
>
> [1] https://cirrus-ci.com/task/6736867247259648
> [2] https://cirrus-ci.com/build/5286228755480576
> [3]
> Run-time dependency zlib found: NO (tried pkgconfig, cmake and system)
> Has header "zlib.h" : YES
> Library zlib found: YES
> ...
> External libraries
> ...
> zlib : YES
> ...
> [4] https://cirrus-ci.com/task/5208433811521536
>
> --
> Regards,
> Nazir Bilal Yavuz
> Microsoft
>

--
Dave Page
pgAdmin: https://www.pgadmin.org
PostgreSQL: https://www.postgresql.org
EDB: https://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Ilyasov Ian 2024-05-22 14:24:37 RE: Fix src/test/subscription/t/029_on_error.pl test when wal_debug is enabled
Previous Message Dmitry Dolgov 2024-05-22 14:14:26 Re: Schema variables - new implementation for Postgres 15