Re: Remove MSVC scripts from the tree - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Remove MSVC scripts from the tree
Date
Msg-id ZYTINqriZKZrr4-Q@paquier.xyz
Whole thread Raw
In response to Re: Remove MSVC scripts from the tree  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: Remove MSVC scripts from the tree
List pgsql-hackers
On Thu, Dec 21, 2023 at 03:43:32PM -0500, Andrew Dunstan wrote:
> On 2023-12-21 Th 03:01, Michael Paquier wrote:
>> Andrew, was the original target of pgperlsyncheck committers and
>> hackers who played with the MSVC scripts but could not run sanity
>> checks on Windows (see [1])?
>
>
> yes.

Okay, thanks.  Wouldn't it be better to remove it at the end?  With
the main use case behind its introduction being gone, it is less
attractive to keep maintaining it.  If some people have been using it
in their workflows, I'm OK to keep it but the rest of the tree can be
checked at runtime as well.

> I'm actually a bit dubious about win32tzlist.pl. Win32::Registry is not
> present in a recent Strawberry Perl installation, and its latest version
> says it is obsolete, although it's still included in the cpan bundle
> libwin32.
>
> I wonder who has actually run the script any time recently?

Hmm...  I've never run it with meson on Win32.

> In any case, we can probably work around the syncheck issue by making the
> module a runtime requirement rather than a compile time requirement, by
> using "require" instead of "use".

Interesting.  Another trick would be needed for HKEY_LOCAL_MACHINE,
like what the dummylib but local to win32tzlist.pl.  Roughly among
these lines:
-use Win32::Registry;
+use Config;
+
+require Win32::Registry;

 my $tzfile = 'src/bin/initdb/findtimezone.c';

+if ($Config{osname} ne 'MSWin32' && $Config{osname} ne 'msys')
+{
+    use vars qw($HKEY_LOCAL_MACHINE);
+}
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Jeff Davis
Date:
Subject: Re: broken master regress tests
Next
From: Michael Paquier
Date:
Subject: Re: Track in pg_replication_slots the reason why slots conflict?