From: Andrew Dunstan Date: Thu, 13 May 2010 21:34:30 +0000 (+0000) Subject: Fix MSVC builds for recent plperl changes. Go back to version 8.2, which is X-Git-Tag: REL8_3_11~1 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=06d09a51b0ca6ef063961f1b8a5fb51013f5b845;p=postgresql Fix MSVC builds for recent plperl changes. Go back to version 8.2, which is where we started supporting MSVC builds. Security: CVE-2010-1169 --- diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm index 69100f51c7..2f6696eb7e 100644 --- a/src/tools/msvc/Mkvcbuild.pm +++ b/src/tools/msvc/Mkvcbuild.pm @@ -3,7 +3,7 @@ package Mkvcbuild; # # Package that generates build files for msvc build # -# $PostgreSQL: pgsql/src/tools/msvc/Mkvcbuild.pm,v 1.25.2.4 2009/06/05 18:31:48 adunstan Exp $ +# $PostgreSQL: pgsql/src/tools/msvc/Mkvcbuild.pm,v 1.25.2.5 2010/05/13 21:34:30 adunstan Exp $ # use Carp; use Win32; @@ -11,6 +11,7 @@ use strict; use warnings; use Project; use Solution; +use Cwd; use Exporter; our (@ISA, @EXPORT_OK); @@ -103,6 +104,22 @@ sub mkvcbuild die 'Failed to create SPI.c' . "\n"; } } + if ( Solution::IsNewer('src\pl\plperl\plperl_opmask.h','src\pl\plperl\plperl_opmask.pl')) + { + print 'Building src\pl\plperl\plperl_opmask.h ...' . "\n"; + my $basedir = getcwd; + chdir 'src\pl\plperl'; + system( $solution->{options}->{perl} + . '/bin/perl ' + . 'plperl_opmask.pl ' + . 'plperl_opmask.h'); + chdir $basedir; + if ((!(-f 'src\pl\plperl\plperl_opmask.h')) || -z 'src\pl\plperl\plperl_opmask.h') + { + unlink('src\pl\plperl\plperl_opmask.h'); # if zero size + die 'Failed to create plperl_opmask.h' . "\n"; + } + } $plperl->AddReference($postgres); my @perl_libs = grep {/perl\d+.lib$/ } glob($solution->{options}->{perl} . '\lib\CORE\perl*.lib');