On 05/23/2017 06:59 AM, Andrew Dunstan wrote: > On 17 May 2017 at 14:30, Robert Haas <robertmh...@gmail.com> wrote: >> On Tue, May 16, 2017 at 9:20 PM, Andrew Dunstan >> <andrew.duns...@2ndquadrant.com> wrote: >>> Inheriting variables from the environment is a part of make by design. >>> We have PG_PROVE_FLAGS for our own forced settings. >> I don't buy this argument. We've had previous cases where we've gone >> through and added -X to psql invocations in the regression tests >> because, if you don't, some people's .psqlrc files may cause tests to >> fail, which nobody wants. The more general principle is that the >> regression tests should ideally pass regardless of the local machine >> configuration. It's proven impractical to make that universally true, >> but that doesn't make it a bad goal. Now, for all I know it may be >> that setting PROVE_FLAGS can never cause a regression failure, but I >> still tend to agree with Peter that the regression tests framework >> should insulate us from the surrounding environment rather than >> absorbing settings from it. >> > In that case we're going to need to invent a way to do this similarly > in vcregress.pl. I'm not simply going to revert to the situation where > it and the makefiles are completely out of sync on this. The previous > patch was made more or less by ignoring the existence of vcregress.pl. > > I will look at this again probably after pgcon. I don't think it's > terribly urgent. >
Here's a patch that should do that. If this is acceptable I'll do this and put the makefiles back the way they were. cheers andrew -- Andrew Dunstan https://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
diff --git a/src/tools/msvc/vcregress.pl b/src/tools/msvc/vcregress.pl index 468a62d..e2d225e 100644 --- a/src/tools/msvc/vcregress.pl +++ b/src/tools/msvc/vcregress.pl @@ -178,12 +178,18 @@ sub tap_check die "Tap tests not enabled in configuration" unless $config->{tap_tests}; + my @flags; + foreach my $arg (0 .. scalar(@_)) + { + next unless $_[$arg] =~ /^PROVE_FLAGS=(.*)/; + @flags = split(/\s+/, $1}; + splice(@_,$arg,1); + last; + } + my $dir = shift; chdir $dir; - my @flags; - @flags = split(/\s+/, $ENV{PROVE_FLAGS}) if exists $ENV{PROVE_FLAGS}; - my @args = ("prove", @flags, "t/*.pl"); # adjust the environment for just this test
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers