Re: Is a modern build system acceptable for older platforms - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: Is a modern build system acceptable for older platforms
Date
Msg-id CAA8=A7-6kVOKuDorGJFj-5NkaQLTR7d6y5aF2FikPWx3Kevh6w@mail.gmail.com
Whole thread Raw
In response to Re: Is a modern build system acceptable for older platforms  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Is a modern build system acceptable for older platforms  (Yuriy Zhuravlev <stalkerg@gmail.com>)
List pgsql-hackers
On Tue, May 1, 2018 at 12:46 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Andres Freund <andres@anarazel.de> writes:
>> On 2018-05-01 12:19:28 -0400, Robert Haas wrote:
>>> I found your brain dump an interesting read, and I have to say that it
>>> leaves me rather uninspired about making a change.  It sounds to me
>>> like if we change, some things will be better and others will not be
>>> as good.  The good news is that if we decide to change, it sounds like
>>> we won't be a lot worse off than we are today.  The bad news is that
>>> it doesn't sound like we'll be a lot better off, either.
>
>> How is being able to build extensions on windows reasonably not an
>> improvement?
>
> That indeed would be an improvement, but maybe we could fix that specific
> pain point without having to throw away twenty years worth of work?
>


Indeed. It's possibly today to use CMake without a huge amount of
difficulty to build extensions out of tree against MSVC-built
postgres. This was more or less the topic of my talk on Ottawa last
year, based on some excellent work by Craig Ringer. To my certain
knowledge this is being used successfully today. Testing is a
different story, but building is a nut that's more or less been
cracked.

There is also the point that EDB, according to my understanding, is
considering moving back, or has perhaps already moved back, to
Msys/Mingw-64 based builds, due to the runtime hell that MSVC can get
you into. And we know perfectly well how to build extensions out of
tree against such a build. You do it just like on Unix.

> The amount of accumulated knowledge we've got in the existing build system
> is slightly staggering ... so I'm afraid that moving to a different one
> would involve a lot of expensive re-invention of portability hacks.
>
> Of course, blowing off support for any platform not released in the
> last five years would cut down on the number of such hacks that we'd
> need to reinvent.  But that's not a tradeoff I especially like either.
>

No, me either.

CMake is hardly a bed of roses, either, BTW.

cheers

andrew

-- 
Andrew Dunstan                https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Parallel Aggregates for string_agg and array_agg
Next
From: Andrew Dunstan
Date:
Subject: Re: Support Python 3 tests under MSVC