aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMagnus Hagander <magnus@hagander.net>2007-06-12 18:31:28 +0000
committerMagnus Hagander <magnus@hagander.net>2007-06-12 18:31:28 +0000
commitee0d34ab64d18dfbc8966b5385f2ac39f0a5e614 (patch)
tree3c3bc27aa4f5188c0bd87a4b76ed11ccd06c0b98 /src
parent1ad08a8e9a5cb4fc60704beb27bab4e362ae1811 (diff)
downloadpostgresql-ee0d34ab64d18dfbc8966b5385f2ac39f0a5e614.tar.gz
postgresql-ee0d34ab64d18dfbc8966b5385f2ac39f0a5e614.zip
ECPG requires a local include directory to override the project-wide ones.
Add ability to add "prefix include directories", and use it... With this, ecpg regression tests now pass on MSVC builds.
Diffstat (limited to 'src')
-rw-r--r--src/tools/msvc/Mkvcbuild.pm3
-rw-r--r--src/tools/msvc/Project.pm12
2 files changed, 12 insertions, 3 deletions
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index c71ea446bc6..469563e4a99 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.12 2007/06/12 11:07:34 mha Exp $
+# $PostgreSQL: pgsql/src/tools/msvc/Mkvcbuild.pm,v 1.13 2007/06/12 18:31:28 mha Exp $
#
use Carp;
use Win32;
@@ -148,6 +148,7 @@ sub mkvcbuild
my $ecpg = $solution->AddProject('ecpg','exe','interfaces','src\interfaces\ecpg\preproc');
$ecpg->AddIncludeDir('src\interfaces\ecpg\include');
$ecpg->AddIncludeDir('src\interfaces\libpq');
+ $ecpg->AddPrefixInclude('src\interfaces\ecpg\preproc');
$ecpg->AddFiles('src\interfaces\ecpg\preproc','pgc.l','preproc.y');
$ecpg->AddDefine('MAJOR_VERSION=4');
$ecpg->AddDefine('MINOR_VERSION=2');
diff --git a/src/tools/msvc/Project.pm b/src/tools/msvc/Project.pm
index f35580bface..1c83df6d2a1 100644
--- a/src/tools/msvc/Project.pm
+++ b/src/tools/msvc/Project.pm
@@ -3,7 +3,7 @@ package Project;
#
# Package that encapsulates a Visual C++ project file generation
#
-# $PostgreSQL: pgsql/src/tools/msvc/Project.pm,v 1.11 2007/03/29 15:30:52 mha Exp $
+# $PostgreSQL: pgsql/src/tools/msvc/Project.pm,v 1.12 2007/06/12 18:31:28 mha Exp $
#
use Carp;
use strict;
@@ -27,6 +27,7 @@ sub new
libraries => [],
suffixlib => [],
includes => '',
+ prefixincludes => '',
defines => ';',
solution => $solution,
disablewarnings => '4018;4244;4273;4102',
@@ -128,6 +129,13 @@ sub AddIncludeDir
$self->{includes} .= $inc;
}
+sub AddPrefixInclude
+{
+ my ($self, $inc) = @_;
+
+ $self->{prefixincludes} = $inc . ';' . $self->{prefixincludes};
+}
+
sub AddDefine
{
my ($self, $def) = @_;
@@ -467,7 +475,7 @@ sub WriteConfiguration
<Configuration Name="$cfgname|Win32" OutputDirectory=".\\$cfgname\\$self->{name}" IntermediateDirectory=".\\$cfgname\\$self->{name}"
ConfigurationType="$cfgtype" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="FALSE" CharacterSet="2" WholeProgramOptimization="$p->{wholeopt}">
<Tool Name="VCCLCompilerTool" Optimization="$p->{opt}"
- AdditionalIncludeDirectories="src/include;src/include/port/win32;src/include/port/win32_msvc;$self->{includes}"
+ AdditionalIncludeDirectories="$self->{prefixincludes}src/include;src/include/port/win32;src/include/port/win32_msvc;$self->{includes}"
PreprocessorDefinitions="WIN32;_WINDOWS;__WINDOWS__;__WIN32__;EXEC_BACKEND;WIN32_STACK_RLIMIT=4194304;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE$self->{defines}$p->{defs}"
StringPooling="$p->{strpool}"
RuntimeLibrary="$p->{runtime}" DisableSpecificWarnings="$self->{disablewarnings}"