meson vs tarballs

Started by Andrew Dunstanalmost 2 years ago6 messages
#1Andrew Dunstan
andrew@dunslane.net

I and several colleagues have just been trying to build from a tarball
with meson.

`meson setup build .` results in this:

[...]

Message: checking for file conflicts between source and build directory

meson.build:2963:2: ERROR: Problem encountered:
****
Non-clean source code directory detected.

To build with meson the source tree may not have an in-place, ./configure
style, build configured. You can have both meson and ./configure style
builds
for the same source tree by building out-of-source / VPATH with
configure. Alternatively use a separate check out for meson based builds.

Conflicting files in source directory:

[huge list of files]

The conflicting files need to be removed, either by removing the files
listed
above, or by running configure and then make maintainer-clean.

****

That seems pretty awful and unfriendly and I didn't see anything about
it in the docs.

cheers

andrew

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

#2Peter Eisentraut
peter@eisentraut.org
In reply to: Andrew Dunstan (#1)
Re: meson vs tarballs

On 13.03.24 07:11, Andrew Dunstan wrote:

I and several colleagues have just been trying to build from a tarball
with meson.

That seems pretty awful and unfriendly and I didn't see anything about
it in the docs.

At https://www.postgresql.org/docs/16/install-requirements.html is says:

"""
Alternatively, PostgreSQL can be built using Meson. This is currently
experimental and only works when building from a Git checkout (not from
a distribution tarball).
"""

#3Andrew Dunstan
andrew@dunslane.net
In reply to: Peter Eisentraut (#2)
Re: meson vs tarballs

On 2024-03-13 We 02:22, Peter Eisentraut wrote:

On 13.03.24 07:11, Andrew Dunstan wrote:

I and several colleagues have just been trying to build from a
tarball with meson.

That seems pretty awful and unfriendly and I didn't see anything
about it in the docs.

At https://www.postgresql.org/docs/16/install-requirements.html is says:

"""
Alternatively, PostgreSQL can be built using Meson. This is currently
experimental and only works when building from a Git checkout (not
from a distribution tarball).
"""

Ah!. Darn, I missed that. Thanks.

cheers

andrew

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

#4Andrew Dunstan
andrew@dunslane.net
In reply to: Andrew Dunstan (#3)
Re: meson vs tarballs

On 2024-03-13 We 02:31, Andrew Dunstan wrote:

On 2024-03-13 We 02:22, Peter Eisentraut wrote:

On 13.03.24 07:11, Andrew Dunstan wrote:

I and several colleagues have just been trying to build from a
tarball with meson.

That seems pretty awful and unfriendly and I didn't see anything
about it in the docs.

At https://www.postgresql.org/docs/16/install-requirements.html is says:

"""
Alternatively, PostgreSQL can be built using Meson. This is currently
experimental and only works when building from a Git checkout (not
from a distribution tarball).
"""

Ah!. Darn, I missed that. Thanks.

Of course, when release 17 comes out this had better not be the case,
since we have removed the custom Windows build system.

cheers

andrew

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

#5Peter Eisentraut
peter@eisentraut.org
In reply to: Andrew Dunstan (#4)
Re: meson vs tarballs

On 13.03.24 07:42, Andrew Dunstan wrote:

On 2024-03-13 We 02:31, Andrew Dunstan wrote:

On 2024-03-13 We 02:22, Peter Eisentraut wrote:

On 13.03.24 07:11, Andrew Dunstan wrote:

I and several colleagues have just been trying to build from a
tarball with meson.

That seems pretty awful and unfriendly and I didn't see anything
about it in the docs.

At https://www.postgresql.org/docs/16/install-requirements.html is says:

"""
Alternatively, PostgreSQL can be built using Meson. This is currently
experimental and only works when building from a Git checkout (not
from a distribution tarball).
"""

Ah!. Darn, I missed that. Thanks.

Of course, when release 17 comes out this had better not be the case,
since we have removed the custom Windows build system.

Yes, this has been changed in 17.

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#5)
Re: meson vs tarballs

Peter Eisentraut <peter@eisentraut.org> writes:

On 13.03.24 07:42, Andrew Dunstan wrote:

On 2024-03-13 We 02:31, Andrew Dunstan wrote:

Alternatively, PostgreSQL can be built using Meson. This is currently
experimental and only works when building from a Git checkout (not
from a distribution tarball).

Ah!. Darn, I missed that. Thanks.
Of course, when release 17 comes out this had better not be the case,
since we have removed the custom Windows build system.

Yes, this has been changed in 17.

My understanding is that pretty soon there will be no difference,
ie distribution tarballs will have the same contents as a git pull
(less the .git infrastructure). If we're planning on making that
happen for 17, perhaps we'd better get on with it.

regards, tom lane