Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pm90k-0001Ht-1J for pgsql-hackers@arkaria.postgresql.org; Tue, 11 Apr 2023 08:05:54 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pm90i-0003OZ-PV for pgsql-hackers@arkaria.postgresql.org; Tue, 11 Apr 2023 08:05:52 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pm90i-0003OP-7Q for pgsql-hackers@lists.postgresql.org; Tue, 11 Apr 2023 08:05:52 +0000 Received: from mail-ej1-x636.google.com ([2a00:1450:4864:20::636]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pm90a-00016L-FH for pgsql-hackers@postgresql.org; Tue, 11 Apr 2023 08:05:50 +0000 Received: by mail-ej1-x636.google.com with SMTP id dm2so18257136ejc.8 for ; Tue, 11 Apr 2023 01:05:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgadmin.org; s=google; t=1681200343; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=F6/t4LYOIfJx4kOFnqHBz4GMTbedwLey0LjOqI6TJDw=; b=WOGZA2SvAcx3F8cTIkPuxM83QE6UdDEsPGPEgouUCqeQFFJ0mn8eYeWn0gDyrTnJ9e AUlBCrddTXuZ+kC6+XkDDn+arrFY+mhxG05mOlM8Q/Xdea5cYaoAEgVmnkZOIIZrCFSB IafIMADKb9R+INkD+jpjCOJx5b2ZXge9y0PztqUaHCWsP59l7kCltwbj1qwbLLDG1d/Z AeKroObFBCdE1eSa571QbZkAAxCDkZ/KQiaoybe0mxHAPUF7tpAjq+9xIwHfSjwb/SMm x92FxGrn89g/10bppcd3dt0ntRJJgXhTqQDHTR1uIEpKXdD57h+wFnngqb2mIlIatOER nq3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1681200343; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=F6/t4LYOIfJx4kOFnqHBz4GMTbedwLey0LjOqI6TJDw=; b=faf/Rd5IN2pQt2U+wortoeEheHj2kL0gso62SJi7Q6yPGZIv4bQxn+eBg9Gok2i//X 9M3QHYXKRXpqFPQSF1ew21w3pUCnWdxLOyC1EKPpnlZ1YDuHERzv5/dL1esmOmREpl7L lnLuVvrg0XZHBBheUxHLqMTKTpbmMlAjrf7UeQCG/0p04uQiBbP4IxX/E2mI2lO1DmQ1 KZvKdouTHCBkUUccfxCC7eI3VZRSQ7kL7jTqf9VsIfdxaz127xTuSrtoNgOs+orJ3UIc fk3aOUOU7aacLDSufGcsnynKOgrJdrp+/LG6ulB+YCEgdNX4R52cgBkCwL++BAAFtGzm KwGA== X-Gm-Message-State: AAQBX9f1uv8B4n/cy1cq77uzYHnvHCjKDTT2V0P0z/RI+PP3Q1poTbN1 ez3IOJW7cl8GGx9/7va4Oz9kXiTx9TX/NBnxTPdlVQ== X-Google-Smtp-Source: AKy350astz+IHOMzg7InmC1qa/7zp97pS3tmzwN5Qg89LLkBNkfOoQ3ISVCViqT/QSk3XLbE7eqcUPfh8CaGLq4dByA= X-Received: by 2002:a17:907:a707:b0:932:da0d:9375 with SMTP id vw7-20020a170907a70700b00932da0d9375mr5245875ejc.4.1681200342634; Tue, 11 Apr 2023 01:05:42 -0700 (PDT) MIME-Version: 1.0 References: <20230408191007.7lysd42euafwl74f@awork3.anarazel.de> <3611416.1680982220@sss.pgh.pa.us> <4179373.1681145767@sss.pgh.pa.us> <20230410222738.57fdxwdrdhwatnr4@awork3.anarazel.de> In-Reply-To: From: Dave Page Date: Tue, 11 Apr 2023 09:05:31 +0100 Message-ID: Subject: Re: When to drop src/tools/msvc support To: Magnus Hagander Cc: Andres Freund , Robert Haas , Alvaro Herrera , Amit Kapila , Andrew Dunstan , "Jonathan S. Katz" , Peter Geoghegan , Tom Lane , pgsql-hackers@postgresql.org Content-Type: multipart/alternative; boundary="000000000000382e4905f90af547" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000382e4905f90af547 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, 11 Apr 2023 at 08:09, Magnus Hagander wrote: > On Tue, Apr 11, 2023 at 12:27=E2=80=AFAM Andres Freund wrote: > > > > Hi, > > > > On 2023-04-10 19:55:35 +0100, Dave Page wrote: > > > Projects other than the EDB installers use the MSVC build system - e.= g. > > > pgAdmin uses it=E2=80=99s own builds of libpq and other tools (psql, = pg_dump > etc) > > > that are pretty heavily baked into a fully automated build system > (even the > > > build servers and all their requirements are baked into Ansible). > > > > > > Changing that lot would be non-trivial, though certainly possible, an= d > I > > > suspect we=E2=80=99re not the only ones doing that sort of thing. > > > > Do you have a link to the code for that, if it's open? Just to get an > > impression for how hard it'd be to switch over? > > > The pgadmin docs/readme refers to > https://github.com/pgadmin-org/pgadmin4/tree/master/pkg/win32 > > It clearly doesn't have the full automation stuff, but appears to have > the parts about building the postgres dependency. > Yeah, that's essentially the manual process, though I haven't tested it in a while. The Ansible stuff is not currently public. I suspect (or rather, hope) that we can pull in all the additional packages required using Chocolatey which shouldn't be too onerous. Probably my main concern is that the Meson build can use the same version of the VC++ compiler that we use (v14), which is carefully matched for compatibility with all the various components, just in case anything passes CRT pointers around. Python is the one thing we don't build ourselves on Windows and the process will build modules like gssapi and psycopg (which links with libpq of course), so we're basically following what they use. --=20 Dave Page Blog: https://pgsnake.blogspot.com Twitter: @pgsnake EDB: https://www.enterprisedb.com --000000000000382e4905f90af547 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Tue, 11 Apr 2023 at 08:09, Magnus = Hagander <magnus@hagander.net= > wrote:
On Tue, Apr 11, 2023 at 12:27=E2=80= =AFAM Andres Freund <andres@anarazel.de> wrote:
>
> Hi,
>
> On 2023-04-10 19:55:35 +0100, Dave Page wrote:
> > Projects other than the EDB installers use the MSVC build system = - e.g.
> > pgAdmin uses it=E2=80=99s own builds of libpq and other tools (ps= ql, pg_dump etc)
> > that are pretty heavily baked into a fully automated build system= (even the
> > build servers and all their requirements are baked into Ansible).=
> >
> > Changing that lot would be non-trivial, though certainly possible= , and I
> > suspect we=E2=80=99re not the only ones doing that sort of thing.=
>
> Do you have a link to the code for that, if it's open? Just to get= an
> impression for how hard it'd be to switch over?


The pgadmin docs/readme refers to
https://github.com/pgadmin-org/pgadmin4= /tree/master/pkg/win32

It clearly doesn't have the full automation stuff, but appears to have<= br> the parts about building the postgres dependency.

=
Yeah, that's essentially the manual process, though I haven&= #39;t tested it in a while. The Ansible stuff is not currently public. I su= spect (or rather, hope) that we can pull in all the additional packages req= uired using Chocolatey which shouldn't be too onerous.

Probably my main concern is that the Meson build can use the same = version of the VC++ compiler that we use (v14), which is carefully matched = for compatibility with all the various components, just in case anything pa= sses CRT pointers around. Python is the one thing we don't build oursel= ves on Windows and the process will build modules like gssapi and psycopg (= which links with libpq of course), so we're basically following what th= ey use.

--=
--000000000000382e4905f90af547--