On 2/26/20 3:17 AM, Andrew Dunstan wrote: > On 2/26/20 2:47 AM, Andrew Dunstan wrote: >> On 2/25/20 8:24 PM, Andrew Dunstan wrote: >>> On 2/25/20 7:08 PM, Tom Lane wrote: >>>> Andrew Dunstan <andrew.duns...@2ndquadrant.com> writes: >>>>> On 2/25/20 5:06 PM, Tom Lane wrote: >>>>>> No joy there --- now that I look closer, it seems the cfbot doesn't >>>>>> build any of the external-language PLs on Windows. I'll have to >>>>>> wait for some reviewer to try it. >>>>> What are the requirements for testing? bowerbird builds with python 2.7, >>>>> although I guess I should really try to upgrade it 3.x. >>>> Has to be python 3, unfortunately; the patch has no effect on a >>>> python 2 build. >>>> >>>> >>> Yeah, I have python3 working on drongo, I'll test there. >>> >> It's almost there, you need to add something like this to Mkvcbuild.pm: >> >> >> if ($solution->{options}->{python2_stub}) >> { >> my $plpython2_stub = >> $solution->AddProject('plpython2', 'dll', 'PLs', >> 'src/pl/stub_plpython2'); >> $plpython2_stub->AddReference($postgres); >> } > > > > > However, when it get to testing contrib it complains like this: > > > ============================================================ > Checking hstore_plpython > C:/prog/bf/root/HEAD/pgsql/Release/pg_regress/pg_regress > --bindir=C:/prog/bf/root/HEAD/pgsql/Release/psql > --dbname=contrib_regression --load-ex > tension=hstore --load-extension=plpythonu > --load-extension=hstore_plpythonu hstore_plpython > (using postmaster on localhost, default port) > ============== dropping database "contrib_regression" ============== > DROP DATABASE > ============== creating database "contrib_regression" ============== > CREATE DATABASE > ALTER DATABASE > ============== installing hstore ============== > CREATE EXTENSION > ============== installing plpythonu ============== > CREATE EXTENSION > ============== installing hstore_plpythonu ============== > ERROR: could not access file "$libdir/hstore_plpython2": No such file > or directory > command failed: "C:/prog/bf/root/HEAD/pgsql/Release/psql/psql" -X -c > "CREATE EXTENSION IF NOT EXISTS \"hstore_plpythonu\"" "contrib_regression" > > > So there's a bit more work to do. > >
This seems to fix it. 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 82dca29a61..d3a07f84bb 100644 --- a/src/tools/msvc/vcregress.pl +++ b/src/tools/msvc/vcregress.pl @@ -423,15 +423,15 @@ sub subdircheck @opts = grep { $_ !~ /plpythonu/ } @opts; - if (-d "$topdir/$Config/plpython2") + if (-d "$topdir/$Config/plpython3") { - push @opts, "--load-extension=plpythonu"; - push @opts, '--load-extension=' . $module . 'u'; + @tests = mangle_plpython3(\@tests); } - else + elsif (-d "$topdir/$Config/plpython2") { - # must be python 3 - @tests = mangle_plpython3(\@tests); + # if python3 doesn't exist this isn't the stub module + push @opts, "--load-extension=plpythonu"; + push @opts, '--load-extension=' . $module . 'u'; } }