@@ -3,14 +3,16 @@ package Mkvcbuild;
33#
44# Package that generates build files for msvc build
55#
6- # $PostgreSQL: pgsql/src/tools/msvc/Mkvcbuild.pm,v 1.44 2009/11/12 00:13:00 tgl Exp $
6+ # $PostgreSQL: pgsql/src/tools/msvc/Mkvcbuild.pm,v 1.45 2010/01/09 14:45:47 adunstan Exp $
77#
88use Carp;
99use Win32;
1010use strict;
1111use warnings;
1212use Project;
1313use Solution;
14+ use Cwd;
15+ use File::Copy;
1416
1517use Exporter;
1618our (@ISA ,@EXPORT_OK );
@@ -103,6 +105,31 @@ sub mkvcbuild
103105die ' Failed to create SPI.c' ." \n " ;
104106 }
105107 }
108+ if ( Solution::IsNewer(' src\pl\plperl\perlchunks.h' ,' src\pl\plperl\plc_perlboot.pl' )
109+ ||Solution::IsNewer(' src\pl\plperl\perlchunks.h' ,' src\pl\plperl\plc_safe_bad.pl' )
110+ ||Solution::IsNewer(' src\pl\plperl\perlchunks.h' ,' src\pl\plperl\plc_safe_ok.pl' ))
111+ {
112+ print ' Building src\pl\plperl\perlchunks.h ...' ." \n " ;
113+ my $basedir = getcwd;
114+ chdir ' src\pl\plperl' ;
115+ system ($solution -> {options }-> {perl }
116+ .' /bin/perl'
117+ .' text2macro.pl'
118+ .' --strip="^(\#.*|\s*)$$"'
119+ .' plc_perlboot.pl plc_safe_bad.pl plc_safe_ok.pl'
120+ .' >perlchunks.htmp' );
121+ chdir $basedir ;
122+ if ((!(-f ' src\pl\plperl\perlchunks.htmp' )) ||-z ' src\pl\plperl\perlchunks.htmp' )
123+ {
124+ unlink (' src\pl\plperl\perlchunks.htmp' );# if zero size
125+ die ' Failed to create perlchunks.h' ." \n " ;
126+ }
127+ else
128+ {
129+ move(' src\pl\plperl\perlchunks.htmp' ,' src\pl\plperl\perlchunks.h' );
130+ }
131+
132+ }
106133$plperl -> AddReference($postgres );
107134my @perl_libs =grep {/ perl\d +.lib$ / }
108135glob ($solution -> {options }-> {perl } .' \lib\CORE\perl*.lib' );