Обсуждение: Meson install warnings when running postgres build from a sandbox

Поиск
Список
Период
Сортировка

Meson install warnings when running postgres build from a sandbox

От
"Matt Smith (matts3)"
Дата:
If I run postgres builds from a bazel sandbox whereby the source directory consists of symlinks that point to the original source files.

Meson has traditionally followed these symlinks, but since 1.3, any of the install_* functions produce a warning:

The [[install_data]], [[install_headers]], [[install_subdir]] functions now
have an optional argument `follow_symlinks` that, if set to `true`, makes it so
symbolic links in the source are followed, rather than copied into the
destination tree, to match the old behavior.  The default, which is currently
to follow links, is subject to change in the future.

This is all ok for now, but I'm wondering if meson changes the default behavior in a future version, how postgres would be able to support the old way of following symlinks with said future version. 

This would require a new build option in combination with setting follow_symlinks to this option value, but I also noticed that postgres supports a minimum version of >=0.57.2 which does not have this arg on any of the install_* functions.

Thanks
 
Matt

Re: Meson install warnings when running postgres build from a sandbox

От
Daniel Gustafsson
Дата:
> On 22 Oct 2025, at 02:57, Matt Smith (matts3) <matts3@cisco.com> wrote:

> This is all ok for now, but I'm wondering if meson changes the default behavior in a future version, how postgres
wouldbe able to support the old way of following symlinks with said future version.  

Do you think it would be appropriate/helpful to add a comment for the future in
the project() portion of meson.build, where we already comment on meson
versions?

--
Daniel Gustafsson




Re: Meson install warnings when running postgres build from a sandbox

От
"Matt Smith (matts3)"
Дата:
I'm not sure what that comment would say.

Should there be such a thing as a maximum meson version that postgres supports?

Matt

From: Daniel Gustafsson <daniel@yesql.se>
Sent: Wednesday, October 22, 2025 6:30 PM
To: Matt Smith (matts3) <matts3@cisco.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Subject: Re: Meson install warnings when running postgres build from a sandbox
 
> On 22 Oct 2025, at 02:57, Matt Smith (matts3) <matts3@cisco.com> wrote:

> This is all ok for now, but I'm wondering if meson changes the default behavior in a future version, how postgres would be able to support the old way of following symlinks with said future version.

Do you think it would be appropriate/helpful to add a comment for the future in
the project() portion of meson.build, where we already comment on meson
versions?

--
Daniel Gustafsson

Re: Meson install warnings when running postgres build from a sandbox

От
"Matt Smith (matts3)"
Дата:
It seems the project() function's meson_version arg describes the minimum version required.  From the docs

Takes a string describing which Meson version the project requires. Usually something like >=0.28.0.

So perhaps a comment is the only option for now.

Matt


From: Matt Smith (matts3) <matts3@cisco.com>
Sent: Thursday, October 23, 2025 10:27 AM
To: Daniel Gustafsson <daniel@yesql.se>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Subject: Re: Meson install warnings when running postgres build from a sandbox
 
I'm not sure what that comment would say.

Should there be such a thing as a maximum meson version that postgres supports?

Matt

From: Daniel Gustafsson <daniel@yesql.se>
Sent: Wednesday, October 22, 2025 6:30 PM
To: Matt Smith (matts3) <matts3@cisco.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Subject: Re: Meson install warnings when running postgres build from a sandbox
 
> On 22 Oct 2025, at 02:57, Matt Smith (matts3) <matts3@cisco.com> wrote:

> This is all ok for now, but I'm wondering if meson changes the default behavior in a future version, how postgres would be able to support the old way of following symlinks with said future version.

Do you think it would be appropriate/helpful to add a comment for the future in
the project() portion of meson.build, where we already comment on meson
versions?

--
Daniel Gustafsson