Re: Decouple C++ support in Meson's PGXS from LLVM enablement

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: Tristan Partin <tristan(at)partin(dot)io>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Cc: Andres Freund <andres(at)anarazel(dot)de>, Jelte Fennema-Nio <me(at)jeltef(dot)nl>
Subject: Re: Decouple C++ support in Meson's PGXS from LLVM enablement
Date: 2025-11-07 15:39:42
Message-ID: 23fe2ccf-7397-4044-93c1-88b1204112aa@eisentraut.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 28.09.25 23:16, Tristan Partin wrote:
>> Attached is a patch which decouples C++ support in PGXS from LLVM for
>> a Meson-compiled Postgres.
>>
>> [0]: https://github.com/duckdb/pg_duckdb
>
> With PGConf NYC around the corner, I thought I would rebase the original
> patch. Please find v2 attached, which applies on top of
> b0fb2c6aa5a485e28210e13ae5536c1231b1261f[0] :D.

This patch makes sense to me. But I wonder what the behavior should be
if no C++ compiler is found. Because then you're back to the state
you're started from, with the confusing make error. If you imagine a
packager building postgresql in a minimal environment, and without llvm
for some reason, then they would ship PGXS in that state without noticing.

The AC_PROG_CXX macro sets CXX to g++ if no C++ compiler is found. Then
a PGXS user would at least get an error message about g++ not found and
they can fix it by installing it. Maybe we should do that under Meson too.

An alternative would be to add some kind of build option or feature to
enable C++ support explicitly.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2025-11-07 15:44:40 Re: Reorganize GUC structs
Previous Message Andres Freund 2025-11-07 15:33:58 Re: CI: Add task that runs pgindent