Make win32tzlist.pl checkable again
authorAndrew Dunstan <andrew@dunslane.net>
Fri, 22 Dec 2023 13:56:27 +0000 (13:56 +0000)
committerAndrew Dunstan <andrew@dunslane.net>
Fri, 22 Dec 2023 13:56:27 +0000 (13:56 +0000)
Commit 1301c80b21 removed some infrastructure needed to check
windows-oriented perl scripts. It also removed most such scripts, but
this one was left over. We repair the damage by making Win32::Registry a
conditional requirement that is only loaded on Windows. With this change
`perl -cw win32tzlist.pl` once again passes on non-Windows machines.

Discussion: https://postgr.es/m/a2bd77fd-61b8-4c2b-b12e-3e22ae260f82@eisentraut.org

src/tools/win32tzlist.pl

index 657f7d4879c00493b51bf69e7b98740b269d5385..457462df274cdaaf26264682f00c11a8b8a64939 100755 (executable)
 use strict;
 use warnings;
 
-use Win32::Registry;
+use Config;
+
+our $HKEY_LOCAL_MACHINE;
+
+BEGIN
+{
+   if ($Config{osname} eq 'MSWin32' || $Config{osname} eq 'msys')
+   {
+       require Win32::Registry;
+       Win32::Registry->import;
+   }
+}
 
 my $tzfile = 'src/bin/initdb/findtimezone.c';