diff --git a/doc/src/sgml/install-windows.sgml b/doc/src/sgml/install-windows.sgml
index 02fb9f94251..2e16e27546e 100644
--- a/doc/src/sgml/install-windows.sgml
+++ b/doc/src/sgml/install-windows.sgml
@@ -485,6 +485,40 @@ $ENV{PERL5LIB}=$ENV{PERL5LIB} . ';c:\IPC-Run-0.94\lib';
+
+
+ Some of the TAP tests depend on a set of external commands that would
+ optionally trigger tests related to them. Each one of those variables
+ can be set or unset in buildenv.pl:
+
+
+ GZIP_PROGRAM
+
+ Path to a gzip command. The default is
+ gzip, that would be the command found in
+ PATH.
+
+
+
+
+ LZ4
+
+ Path to a lz4 command. The default is
+ lz4, that would be the command found in
+ PATH.
+
+
+
+
+ TAR
+
+ Path to a tar command. The default is
+ tar, that would be the command found in
+ PATH.
+
+
+
+
diff --git a/src/tools/msvc/vcregress.pl b/src/tools/msvc/vcregress.pl
index fad71a20c96..88e0df1c2ec 100644
--- a/src/tools/msvc/vcregress.pl
+++ b/src/tools/msvc/vcregress.pl
@@ -26,6 +26,13 @@ my $tmp_installdir = "$topdir/tmp_install";
do './src/tools/msvc/config_default.pl';
do './src/tools/msvc/config.pl' if (-f 'src/tools/msvc/config.pl');
+# These values are defaults that can be overridden by the calling environment
+# (see buildenv.pl processing below).
+# c.f. src/Makefile.global.in and configure.ac
+$ENV{GZIP_PROGRAM} ||= 'gzip';
+$ENV{LZ4} ||= 'lz4';
+$ENV{TAR} ||= 'tar';
+
# buildenv.pl is for specifying the build environment settings
# it should contain lines like:
# $ENV{PATH} = "c:/path/to/bison/bin;$ENV{PATH}";
@@ -63,13 +70,6 @@ $ENV{with_gssapi} = $config->{gss} ? 'yes' : 'no';
$ENV{with_krb_srvnam} = $config->{krb_srvnam} || 'postgres';
$ENV{with_readline} = 'no';
-# These values are defaults that can be overridden by the calling environment
-# (see buildenv.pl processing above).
-# c.f. src/Makefile.global.in and configure.ac
-$ENV{TAR} ||= 'tar';
-$ENV{LZ4} ||= 'lz4';
-$ENV{GZIP_PROGRAM} ||= 'gzip';
-
$ENV{PATH} = "$topdir/$Config/libpq;$ENV{PATH}";
if ($ENV{PERL5LIB})