On 02.10.23 09:38, Michael Paquier wrote:
Attached is a v2 with these adjustments, for now.

General comments:

- I think we can't just delete install-windows.sgml. Some of that content needs to be moved over to installation.sgml. As a simple example, install-windows.sgml shows which MSVC versions are supported. That information should surely be kept.

- Is src/backend/utils/README.Gen_dummy_probes still correct after this? AFAICT, the Perl-based MSVC build system uses Gen_dummy_probes.pl, but the meson build uses Gen_dummy_probes.sed even on Windows. Is that correct, intended?

- src/port/pgstrsignal.c contains a comment that it is not "built in MSVC builds", but AFAICT, that is only correct for the legacy Perl-based build system, not for meson. Again, is that correct, intended?


Detail comments:

(Btw., whatever orderfile you used for the diff, I find that confusing.)

* config/perl.m4: This now contains all the required information, but maybe break the text into paragraphs a bit?


* doc/src/sgml/installation.sgml:

I think this paragraph should just be removed altogether:

  <para>
   If you are building <productname>PostgreSQL</productname> for Microsoft
-  Windows, read this chapter if you intend to build with MinGW or Cygwin;
-  but if you intend to build with Microsoft's <productname>Visual
-  C++</productname>, see <xref linkend="install-windows"/> instead.
+  Windows, read this chapter if you intend to build with Meson, MinGW or
+  Cygwin.
  </para>

Here

    <para>
     PostgreSQL can be built using Cygwin, a Linux-like environment for
     Windows, but that method is inferior to the native Windows build
- <phrase condition="standalone-ignore">(see <xref linkend="install-windows"/>)</phrase> and
-    running a server under Cygwin is no longer recommended.
+    with Meson, and running a server under Cygwin is no longer recommended.
    </para>

I think "with Meson" should be removed. The tradeoff is Cygwin vs. native, it doesn't have anything to do with Meson.

Also, I think this paragraph needs a complete revision, along with however install-windows.sgml gets integrated:

    <para>
-    PostgreSQL for Windows can be built using MinGW, a Unix-like build
     [...]


* meson.build:  I think these comments are unnecessary and can be removed:

-# From Project.pm
+# MSVC flags

+  # Preprocessor definitions.


* src/bin/pgevent/meson.build: After consideration, I think this comment should just be removed:

-# FIXME: copied from Mkvcbuild.pm, but I don't think that's the right approach
+# FIXME: this may not not the right approach..

The original site in Mkvcbuild.pm does not contain a comment, so we should accept that as canonical. It doesn't help much if we carry around a comment like "this might be wrong" indefinitely without any further supporting material.


* src/common/Makefile and src/common/meson.build: This change is losing the period at the end of the first sentence:

 # A few files are currently only built for frontend, not server
-# (Mkvcbuild.pm has a copy of this list, too).  logging.c is excluded
-# from OBJS_FRONTEND_SHLIB (shared library) as a matter of policy,
-# because it is not appropriate for general purpose libraries such
-# as libpq to report errors directly.
+# logging.c is excluded from OBJS_FRONTEND_SHLIB (shared library) as
+# a matter of policy, because it is not appropriate for general purpose
+# libraries such as libpq to report errors directly.



Reply via email to