Silence Meson warning on HEAD

From: "Tristan Partin" <tristan(at)neon(dot)tech>
To: <pgsql-hackers(at)postgresql(dot)org>
Cc: "Peter Eisentraut" <peter(at)eisentraut(dot)org>, "Andres Freund" <andres(at)anarazel(dot)de>
Subject: Silence Meson warning on HEAD
Date: 2024-04-01 23:46:01
Message-ID: D096Q3NFFVH1.1T5RE4MOO9ZFH@neon.tech
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

A warning was recently[0] introduced into the Meson build:

WARNING: Project targets '>=0.54' but uses feature introduced in '0.55.0': Passing executable/found program object to script parameter of add_dist_script

There are 3 way to solve the issue that I have laid out in 3 separate
patches that you pick at your leisure:

1. version-check.diff

Wrap the offending line in a Meson version check.

2. perl-string.diff

Pass the perl program as a string via its .path() method.

3. meson-bump.diff

Bump the minimum meson version from 0.54 to 0.55, at least.

I chose to do some analysis on option 3. The other 2 options are
perfectly valid. I looked at all the systems in the buildfarm, and found
the following results:

First column is the list of systems we test HEAD against in the
buildfarm. Second column is the Meson version available to those
systems, based on what I could find. Third column is whether or not we
test Meson on that system.

System Meson Version Tested
AlmaLinux 8 0.58.2
AlmaLinux 9 0.63.3
Alpine Linux 3.19.1 1.3.0
Amazon Linux 2 0.55.1
Amazon Linux 2023 0.62.2
ArchLinux 1.4.0
CentOS 7 0.55.1
CentOS 7.1 0.55.1
CentOS 7.4 0.55.1
CentOS 7.9.2009 0.55.1
CentOS Stream 8 0.58.2
Debian 10 0.56.1
Debian 11 0.56.2
Debian 11.5 0.56.2
Debian 12 1.0.1
Debian 7.0
Debian 8.11
Debian 9
Debian 9.3
Debian unstable 1.4.0 x
DragonFly BSD 6.2.2 0.63.2
Fedora 38 1.0.1
Fedora 39 1.3.2 x
Fedora 40 1.3.2
FreeBSD 12.2
FreeBSD 13.1 0.57.1
FreeBSD 14 1.4.0
Loongnix-Server 8.4.0
macOS 13.6
macOS 14.0
macOS 14.0 / MacPorts 1.4.0
macOS 14.3 1.4.0 x
NetBSD 10.0 1.2.3
NetBSD 9.2 1.2.3
OmniOS / illumos r151038
OpenBSD 6.8
OpenBSD 6.9
OpenBSD 7.3
OpenBSD 7.4 1.2.1
OpenIndiana/illumos hipster rolling release 1.4.0
openSUSE 15.0 0.46.0
openSUSE 15.3 0.54.2
Oracle Linux 9 0.63.3
Photon 2.0
Photon 3.0
Raspbian 7.8 0.56.2
Raspbian 8.0 1.0.1
Red Hat Enterprise Linux 7 0.55.1
Red Hat Enterprise Linux 7.1 0.55.1
Red Hat Enterprise Linux 7.9 0.55.1
Red Hat Enterprise Linux 9.2 0.63.3
Solaris 11.4.42 CBE 0.59.2
SUSE Linux Enterprise Server 12 SP5
SUSE Linux Enterprise Server 15 SP2
Ubuntu 16.04 0.40.1
Ubuntu 16.04.3 0.40.1
Ubuntu 18.04 0.45.1
Ubuntu 18.04.5 0.45.1
Ubuntu 20.04.6 0.53.2
Ubuntu 22.04.1 0.61.2
Ubuntu 22.04.3 0.61.2
Windows 10 / Cygwin64 3.4.9 1.2.3
Windows / Msys 12.2.0 1.4.0 x
Windows Server 2016 1.3.1 x
Windows Server 2019 1.0.1 x

Some notes:

- The minimum Meson version we test against is 1.0.1, on drongo
- For any RHEL 7 derivatives, you see, I took the EPEL Meson version
- Debian 10 requires the backports repository to be enabled
- OmniOS / illumos r151038 has Python 3.9, so could fetch Meson over
pypi since it isn't packaged
- Missing information on OpenBSD 6.8, 6.9, and 7.3, but they should have
at least 0.55.0 available based on release dates
- The missing macOS versions could definitely run 0.55 either through
Homebrew, Macports, or PyPI
- Other systems didn't have easily publicly available information

At the top of the root meson.build file, there is this comment:

> # We want < 0.56 for python 3.5 compatibility on old platforms. EPEL for
> # RHEL 7 has 0.55. < 0.54 would require replacing some uses of the fs
> # module, < 0.53 all uses of fs. So far there's no need to go to >=0.56.

Seems like as good an opportunity to bump Meson to 0.56 for Postgres 17,
which I have found to exist in the EPEL for RHEL 7. I don't know what
version exists in the base repo. Perhaps it is 0.55, which would still
get rid of the aforementioned warning.

Committer, please pick your patch :).

[0]: https://www.postgresql.org/message-id/40e80f77-a294-4f29-a16f-e21bc7bc75fc@eisentraut.org

--
Tristan Partin
Neon (https://neon.tech)

Attachment Content-Type Size
version-check.diff text/x-patch 570 bytes
perl-path.diff text/x-patch 444 bytes
meson-bump.diff text/x-patch 6.3 KB
meson.csv text/csv 1.4 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2024-04-01 23:52:59 Re: WIP Incremental JSON Parser
Previous Message David Rowley 2024-04-01 23:28:40 Re: Why is parula failing?