aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrew Dunstan <andrew@dunslane.net>2010-01-09 14:45:47 +0000
committerAndrew Dunstan <andrew@dunslane.net>2010-01-09 14:45:47 +0000
commit0346442b5dea141bb5df66a61133a43d522a23fe (patch)
tree30b6f31aa28e66cf163f797c513bacad9211996c /src
parentc79640efb2a1c388fa48025fcb7d6586775465d4 (diff)
downloadpostgresql-0346442b5dea141bb5df66a61133a43d522a23fe.tar.gz
postgresql-0346442b5dea141bb5df66a61133a43d522a23fe.zip
Build perlchunks.h for plperl on MSVC
Diffstat (limited to 'src')
-rw-r--r--src/tools/msvc/Mkvcbuild.pm29
1 files changed, 28 insertions, 1 deletions
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index 9e7e6cf0066..9ae689ec79a 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.44 2009/11/12 00:13:00 tgl Exp $
+# $PostgreSQL: pgsql/src/tools/msvc/Mkvcbuild.pm,v 1.45 2010/01/09 14:45:47 adunstan Exp $
#
use Carp;
use Win32;
@@ -11,6 +11,8 @@ use strict;
use warnings;
use Project;
use Solution;
+use Cwd;
+use File::Copy;
use Exporter;
our (@ISA, @EXPORT_OK);
@@ -103,6 +105,31 @@ sub mkvcbuild
die 'Failed to create SPI.c' . "\n";
}
}
+ if ( Solution::IsNewer('src\pl\plperl\perlchunks.h','src\pl\plperl\plc_perlboot.pl')
+ ||Solution::IsNewer('src\pl\plperl\perlchunks.h','src\pl\plperl\plc_safe_bad.pl')
+ ||Solution::IsNewer('src\pl\plperl\perlchunks.h','src\pl\plperl\plc_safe_ok.pl'))
+ {
+ print 'Building src\pl\plperl\perlchunks.h ...' . "\n";
+ my $basedir = getcwd;
+ chdir 'src\pl\plperl';
+ system( $solution->{options}->{perl}
+ . '/bin/perl '
+ . 'text2macro.pl '
+ . '--strip="^(\#.*|\s*)$$" '
+ . 'plc_perlboot.pl plc_safe_bad.pl plc_safe_ok.pl '
+ . '>perlchunks.htmp');
+ chdir $basedir;
+ if ((!(-f 'src\pl\plperl\perlchunks.htmp')) || -z 'src\pl\plperl\perlchunks.htmp')
+ {
+ unlink('src\pl\plperl\perlchunks.htmp'); # if zero size
+ die 'Failed to create perlchunks.h' . "\n";
+ }
+ else
+ {
+ move('src\pl\plperl\perlchunks.htmp','src\pl\plperl\perlchunks.h');
+ }
+
+ }
$plperl->AddReference($postgres);
my @perl_libs = grep {/perl\d+.lib$/ }
glob($solution->{options}->{perl} . '\lib\CORE\perl*.lib');