Re: Explicitly enable meson features in CI

From: Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>
To: Daniel Gustafsson <daniel(at)yesql(dot)se>
Cc: Peter Eisentraut <peter(at)eisentraut(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>
Subject: Re: Explicitly enable meson features in CI
Date: 2025-07-04 07:33:08
Message-ID: CAN55FZ14tptmR7La3nHFf5J2CEqmPhkr3ekGw4_j8bEdobq_BQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On Thu, 3 Jul 2025 at 17:07, Daniel Gustafsson <daniel(at)yesql(dot)se> wrote:
>
> > On 3 Jul 2025, at 15:50, Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com> wrote:
> > On Thu, 3 Jul 2025 at 16:21, Daniel Gustafsson <daniel(at)yesql(dot)se> wrote:
>
> >> + # Like 'MESON_COMMON_FEATURES' but not shared with 'Windows - VS' task too
> >> + MESON_NON_VS_FEATURES: >-
> >>
> >> I'm not a fan of this name, it feel a bit unintuitive to describe what it isn't
> >> instead of what it is. How about MESON_LINUX_UNIX_FEATURES or something along
> >> those lines?
> >
> > I agree that MESON_NON_VS_FEATURES is not intuitive but can MinGW be
> > considered as LINUX or UNIX?
>
> That is an excellent question, according to our fine documentation it is a
> "Unix-like build environment".
>
> An alternative approach would be to instead of having opt-in's for non-Windows
> have opt-outs for Windows, ie a MESON_WINDOWS_EXCLUDES which does =disabled on
> the specific features we dont want on Windows?

I think this would make things complicated. Instead, we can set
Windows VS tasks' features in its task, then we can have a one common
feature variable at the top level and have a comment about this
variable not being used in the Windows VS task. Basically the same
with your approach but instead of using a common feature variable and
disabling features from it, we enable them again in the Windows VS
task. I used this approach in the v3-0002.

>
> >> The MinGW build no longer disables nls, or am I missing something?
> >
> > Auto features are already disabled. So, there is no need to disable
> > nls manually. By saying that, it would be better to remove this
> > comment now.
>
> Aha, that explains it. Maybe reword the comment to retain the knowledge for
> the future without making it sound like something is missing from the command.
> How about something like:
>
> - # disable -Dnls as the number of files it creates cause a noticable slowdown
> + # -Dnls need to be disabled as the number of files it creates cause a
> + # noticable slowdown

Yes, I think this is better. Done.

--
Regards,
Nazir Bilal Yavuz
Microsoft

Attachment Content-Type Size
v3-0001-ci-Remove-PG_TEST_EXTRA-from-NetBSD-and-OpenBSD.patch text/x-patch 942 bytes
v3-0002-ci-meson-Explicitly-enable-meson-features.patch text/x-patch 8.4 KB
v3-0003-ci-meson-Store-common-Postgres-configuration-opti.patch text/x-patch 4.2 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fujii Masao 2025-07-04 07:50:26 amcheck: Remove unused IndexCheckableCallback typedef
Previous Message Hayato Kuroda (Fujitsu) 2025-07-04 07:29:59 RE: A assert failure when initdb with track_commit_timestamp=on