Re: pgsql: meson: Add initial version of meson based build system

Christoph Berg <myon@debian.org>

From: Christoph Berg <myon@debian.org>
To: Andres Freund <andres@anarazel.de>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2024-04-17T13:42:28Z
Lists: pgsql-hackers
Re: Andres Freund
> https://git.postgresql.org/pg/commitdiff/e6927270cd18d535b77cbe79c55c6584351524be

This commit broke VPATH builds when the original source directory
contains symlinks.

The $PWD is /home/myon/postgresql/pg/master, but the actual directory
is /home/myon/projects/postgresql/pg/postgresql. When I
  mkdir build; cd build && ../configure
there, I get a build directory missing a lot of files/directories:

$ ls build/
config.log  config.status*  GNUmakefile  meson.build  src/
$ ls build/src/
backend/  include/  interfaces/  Makefile.global  Makefile.port@
$ ls build/src/backend/
port/

Given there are no other changes I think this bit is at fault:

> Modified Files
> --------------
> configure.ac                                       |    6 +

+# Ensure that any meson build directories would reconfigure and see that
+# there's a conflicting in-tree build and can error out.
+if test "$vpath_build"="no"; then
+  touch meson.build
+fi

Christoph



Commits

  1. Avoid unnecessary "touch meson.build" in vpath builds

  2. meson: Add initial version of meson based build system