Skip to content

Commit 7f58ed1

Browse files
author
Neil Conway
committed
vcbuild updates from Magnus:
* After Markos patch, now builds pgcrypto without zlib again * Updates README with xml info * xml requires xslt and iconv * disable unnecessary warning about __cdecl() * Add a buildenv.bat called from all other bat files to set up things like PATH for flex/bison. (Can't just set it before calling, doesn't always work when building from the GUI)
1 parent cf57ef4 commit 7f58ed1

File tree

7 files changed

+35
-18
lines changed

7 files changed

+35
-18
lines changed

src/tools/msvc/Project.pm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ sub new {
2323
includes => '',
2424
defines => ';',
2525
solution => $solution,
26-
disablewarnings => '4018;4244',
26+
disablewarnings => '4018;4244;4273',
2727
};
2828

2929
bless $self;

src/tools/msvc/README

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ environment variables "leaking" through.
99

1010
First, edit config.pl to reflect what "configure options" you want set.
1111

12+
If you need to modify the environment for calling external tools, such as
13+
flex or bison, create a file called "buildenv.bat". This file will be called
14+
by all scripts before anything is done, so the environment can be set up.
15+
(for example, include SET PATH=%PATH%;c:\some\where\bison\bin)
16+
1217
Then, to build all of PostgreSQL in debug configuration, run the command
1318
build
1419
from a Visual Studio Command Prompt (to get all environment
@@ -54,3 +59,7 @@ Get from http://web.mit.edu/Kerberos/dist/index.html
5459

5560
zlib - required for compression support in pg_dump/pg_restore
5661
Get from http://www.zlib.net
62+
63+
libxml2 and libxslt - required for XML support
64+
Get from http://www.zlatkovic.com/pub/libxml or build from source from
65+
http://xmlsoft.org. Note that libxml2 requires iconv.

src/tools/msvc/Solution.pm

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ sub new {
1414
strver => '',
1515
};
1616
bless $self;
17+
if ($options->{xml}) {
18+
if (!($options->{xslt} && $options->{iconv})) {
19+
die "XML requires both XSLT and ICONV\n";
20+
}
21+
}
1722
return $self;
1823
}
1924

src/tools/msvc/build.bat

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
@echo off
22
SET STARTDIR=%CD%
3+
if exist src\tools\msvc\buildenv.bat call src\tools\msvc\buildenv.bat
4+
if exist buildenv.bat call buildenv.bat
35

46
perl mkvcbuild.pl
57
if errorlevel 1 goto :eof

src/tools/msvc/mkvcbuild.pl

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -187,24 +187,21 @@
187187
}
188188

189189
# Pgcrypto makefile too complex to parse....
190-
# Pgcrypto requires zlib
191-
if ($solution->{options}->{zlib}) {
192-
my $pgcrypto = $solution->AddProject('pgcrypto','dll','crypto');
193-
$pgcrypto->AddFiles('contrib\pgcrypto','pgcrypto.c','px.c','px-hmac.c','px-crypt.c',
194-
'crypt-gensalt.c','crypt-blowfish.c','crypt-des.c','crypt-md5.c','mbuf.c',
195-
'pgp.c','pgp-armor.c','pgp-cfb.c','pgp-compress.c','pgp-decrypt.c','pgp-encrypt.c',
196-
'pgp-info.c','pgp-mpi.c','pgp-pubdec.c','pgp-pubenc.c','pgp-pubkey.c','pgp-s2k.c',
197-
'pgp-pgsql.c');
198-
if ($solution->{options}->{openssl}) {
199-
$pgcrypto->AddFiles('contrib\pgcrypto', 'openssl.c','pgp-mpi-openssl.c');
200-
}
201-
else {
202-
$pgcrypto->AddFiles('contrib\pgcrypto', 'md5.c','sha1.c','sha2.c','internal.c','internal-sha2.c',
203-
'blf.c','rijndael.c','fortuna.c','random.c','pgp-mpi-internal.c','imath.c');
204-
}
205-
$pgcrypto->AddReference($postgres);
206-
$pgcrypto->AddLibrary('wsock32.lib');
190+
my $pgcrypto = $solution->AddProject('pgcrypto','dll','crypto');
191+
$pgcrypto->AddFiles('contrib\pgcrypto','pgcrypto.c','px.c','px-hmac.c','px-crypt.c',
192+
'crypt-gensalt.c','crypt-blowfish.c','crypt-des.c','crypt-md5.c','mbuf.c',
193+
'pgp.c','pgp-armor.c','pgp-cfb.c','pgp-compress.c','pgp-decrypt.c','pgp-encrypt.c',
194+
'pgp-info.c','pgp-mpi.c','pgp-pubdec.c','pgp-pubenc.c','pgp-pubkey.c','pgp-s2k.c',
195+
'pgp-pgsql.c');
196+
if ($solution->{options}->{openssl}) {
197+
$pgcrypto->AddFiles('contrib\pgcrypto', 'openssl.c','pgp-mpi-openssl.c');
207198
}
199+
else {
200+
$pgcrypto->AddFiles('contrib\pgcrypto', 'md5.c','sha1.c','sha2.c','internal.c','internal-sha2.c',
201+
'blf.c','rijndael.c','fortuna.c','random.c','pgp-mpi-internal.c','imath.c');
202+
}
203+
$pgcrypto->AddReference($postgres);
204+
$pgcrypto->AddLibrary('wsock32.lib');
208205

209206
my $D;
210207
opendir($D, 'contrib') || croak "Could not opendir on contrib!\n";

src/tools/msvc/pgbison.bat

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
@echo off
2+
if exist src\tools\msvc\buildenv.bat call src\tools\msvc\buildenv.bat
3+
24
SET BV=
35
for /F "tokens=4 usebackq" %%f in (`bison -V`) do if "!BV!"=="" SET BV=%%f
46
if "%BV%"=="" goto novarexp

src/tools/msvc/pgflex.bat

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
@echo off
2+
if exist src\tools\msvc\buildenv.bat call src\tools\msvc\buildenv.bat
3+
24
flex -V > NUL
35
if errorlevel 1 goto noflex
46

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy