summaryrefslogtreecommitdiff
path: root/src/tools
diff options
context:
space:
mode:
authorMagnus Hagander2007-08-27 10:29:49 +0000
committerMagnus Hagander2007-08-27 10:29:49 +0000
commit3b1e04c3e9b63281062aa07ed6eefdd998c0f475 (patch)
tree0b65aae28474881f2c417d60b929ab9de29765d7 /src/tools
parent862861ee7748f9ee288decf7d5f9a2ba908b5b19 (diff)
Fix generation of snowball_create.sql on msvc builds.
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/msvc/Install.pm42
1 files changed, 41 insertions, 1 deletions
diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm
index e8980c2dd6f..8624eed3d6e 100644
--- a/src/tools/msvc/Install.pm
+++ b/src/tools/msvc/Install.pm
@@ -3,7 +3,7 @@ package Install;
#
# Package that provides 'make install' functionality for msvc builds
#
-# $PostgreSQL: pgsql/src/tools/msvc/Install.pm,v 1.16 2007/06/12 11:07:34 mha Exp $
+# $PostgreSQL: pgsql/src/tools/msvc/Install.pm,v 1.17 2007/08/27 10:29:49 mha Exp $
#
use strict;
use warnings;
@@ -64,6 +64,7 @@ sub Install
);
GenerateConversionScript($target);
GenerateTimezoneFiles($target,$conf);
+ GenerateTsearchFiles($target);
CopyContribFiles($config,$target);
CopyIncludeFiles($target);
@@ -216,6 +217,45 @@ sub GenerateTimezoneFiles
print "\n";
}
+sub GenerateTsearchFiles
+{
+ my $target = shift;
+
+ print "Generating tsearch script...";
+ my $F;
+ my $tmpl = read_file('src/backend/snowball/snowball.sql.in');
+ my $mf = read_file('src/backend/snowball/Makefile');
+ $mf =~ s{\\\s*[\r\n]+}{}mg;
+ $mf =~ /^LANGUAGES\s*=\s*(.*)$/m
+ || die "Could not find LANGUAGES line in snowball Makefile\n";
+ my @pieces = split /\s+/,$1;
+ open($F,">$target/share/snowball_create.sql")
+ || die "Could not write snowball_create.sql";
+ print $F read_file('src/backend/snowball/snowball_func.sql.in');
+ while ($#pieces > 0)
+ {
+ my $lang = shift @pieces || last;
+ my $latlang = shift @pieces || last;
+ my $txt = $tmpl;
+ my $stop = '';
+
+ if (-s "src/backend/snowball/stopwords/$lang.stop") {
+ $stop = ", StopWords=$lang";
+ }
+
+ $txt =~ s#_LANGNAME_#${lang}#gs;
+ $txt =~ s#_DICTNAME_#${lang}_stem#gs;
+ $txt =~ s#_CFGNAME_#${lang}#gs;
+ $txt =~ s#_LATDICTNAME_#${latlang}_stem#gs;
+ $txt =~ s#_NONLATDICTNAME_#${lang}_stem#gs;
+ $txt =~ s#_STOPWORDS_#$stop#gs;
+ print $F $txt;
+ print ".";
+ }
+ close($F);
+ print "\n";
+}
+
sub CopyContribFiles
{
my $config = shift;