head	1.7;
access;
symbols
	REL9_0_0:1.7
	REL9_1_ALPHA1:1.7
	REL9_0_RC1:1.7
	REL9_0_BETA4:1.7
	REL9_0_STABLE:1.7.0.14
	REL9_0_BETA3:1.7
	REL9_0_BETA2:1.7
	REL8_3_11:1.6
	REL8_4_4:1.7
	REL9_0_BETA1:1.7
	REL9_0_ALPHA5_BRANCH:1.7.0.12
	REL9_0_ALPHA5:1.7
	REL8_3_10:1.6
	REL8_4_3:1.7
	REL9_0_ALPHA4:1.7
	REL9_0_ALPHA4_BRANCH:1.7.0.10
	REL8_5_ALPHA3:1.7
	REL8_5_ALPHA3_BRANCH:1.7.0.8
	REL8_3_9:1.6
	REL8_4_2:1.7
	REL8_5_ALPHA2:1.7
	REL8_5_ALPHA2_BRANCH:1.7.0.6
	REL8_3_8:1.6
	REL8_4_1:1.7
	REL8_5_ALPHA1:1.7
	REL8_5_ALPHA1_BRANCH:1.7.0.4
	REL8_4_STABLE:1.7.0.2
	REL8_4_0:1.7
	REL8_4_RC2:1.7
	REL8_4_RC1:1.7
	REL8_4_BETA2:1.7
	REL8_4_BETA1:1.7
	REL8_3_7:1.6
	REL8_3_6:1.6
	REL8_3_5:1.6
	REL8_3_4:1.6
	REL8_3_3:1.6
	REL8_3_2:1.6
	REL8_3_1:1.6
	REL8_3_STABLE:1.6.0.2
	REL8_3_0:1.6
	REL8_3_RC2:1.6
	REL8_3_RC1:1.6
	REL8_3_BETA4:1.6
	REL8_3_BETA3:1.6
	REL8_3_BETA2:1.6
	REL8_3_BETA1:1.6;
locks; strict;
comment	@# @;


1.7
date	2008.03.21.13.23.29;	author momjian;	state Exp;
branches;
next	1.6;

1.6
date	2007.07.01.18.40.37;	author mha;	state Exp;
branches;
next	1.5;

1.5
date	2007.03.17.13.50.42;	author mha;	state Exp;
branches;
next	1.4;

1.4
date	2007.03.13.16.03.36;	author mha;	state Exp;
branches;
next	1.3;

1.3
date	2007.03.12.19.10.50;	author mha;	state Exp;
branches;
next	1.2;

1.2
date	2007.01.16.21.43.19;	author neilc;	state Exp;
branches;
next	1.1;

1.1
date	2007.01.09.05.56.49;	author tgl;	state Exp;
branches;
next	;


desc
@@


1.7
log
@More README src cleanups.
@
text
@$PostgreSQL: pgsql/src/backend/access/gin/README,v 1.5 2008/03/20 17:55:14 momjian Exp $

MSVC build
==========

This directory contains the tools required to build PostgreSQL using
Microsoft Visual Studio 2005. This builds the whole backend, not just
the libpq frontend library. For more information, see the documentation
chapter "Installation on Windows".


Notes about code indention
--------------------------
If the perl code is modified, use perltidy on it since pgindent won't
touch perl code. Use the following commandline:
perltidy -b -bl -nsfs -naws -l=100 -ole=unix *.pl *.pm

Notes about Visual Studio Express
---------------------------------
To build PostgreSQL using Visual Studio Express, the Platform SDK
has to be installed. Since this is not included in the product 
originally, extra steps are needed to make it work.

First, download and install the latest Platform SDK from 
www.microsoft.com. 

Locate the files vcprojectengine.dll.express.config and 
vcprojectengine.dll.config in the vc\vcpackages directory of
the Visual C++ Express installation. In these files, add the paths
to the Platform SDK to the Include, Library and Path tags. Be sure
to add them to the beginning of the list.

This should work for both GUI and commandline builds, but a restart
may be necessary.
@


1.6
log
@Add notes about configuring Visual Studio Express for use with the
Platform SDK.
@
text
@d1 5
@


1.5
log
@Turn most vc build scripts into modules instead of scripts, and just have
skeleton scripts calling them. To make it easier for the buildfarm
(or other "outside callers") to use these modules directly.

Per suggestion from Andrew Dunstan.
@
text
@d13 17
@


1.4
log
@Rewrite win32 install documentation (it's not client only anymore, and it's
now complete). Update for the MSVC6/Borland support now being only libpq.
Move most of the information about full MSVC build from README file into
documentation.
@
text
@d11 1
a11 1
perltidy -b -bl -nsfs -naws -l=100 *.pl *.pm
@


1.3
log
@Make a run with perltidy to format the code. Per request from Andrew Dunstan.
@
text
@d2 3
a4 1
Microsoft Visual Studio 2005.
d7 2
a8 65
Note that PostgreSQL builds natively with Visual C++. You must therefore
make sure that you do *NOT* have any tools from Cygwin or Mingw present
in the system PATH. Also, make sure you don't have any Cygwin/Mingw
environment variables "leaking" through.

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

If you need to modify the environment for calling external tools, such as
flex or bison, create a file called "buildenv.bat". This file will be called
by all scripts before anything is done, so the environment can be set up.
(for example, include SET PATH=%PATH%;c:\some\where\bison\bin)

Then, to build all of PostgreSQL in debug configuration, run the command
	build
from a Visual Studio Command Prompt (to get all environment
variables set correctly).

To build all of PostgreSQL in release configuration, run
	build RELEASE

To build just a single project, for example psql, run
	build psql
or
	build RELEASE psql


Dependencies
------------

The following packages are needed for the different config options:

pthreads - always required
Download from ftp://sources.redhat.com/pub/pthreads-win32

perl - always required
Get ActiveState Perl from www.activestate.com

flex & bison - required to build from CVS (as opposed to a release tarball)
Download from http://gnuwin32.sourceforge.net.  Note that bison version 2.0
will not work.  Use either version 1.875, or version 2.1 or newer.
For flex, use version 2.5.4.

python - required for pl/python
Get from www.python.org

tcl - required for pl/tcl
Get ActiveState TCL from www.activestate.com

openssl - required for SSL support
Get from http://www.slproweb.com/products/Win32OpenSSL.html, or build
from source from www.openssl.org.

Kerberos - required for Kerberos support
Get from http://web.mit.edu/Kerberos/dist/index.html

zlib - required for compression support in pg_dump/pg_restore
Get from http://www.zlib.net

libxml2 and libxslt - required for XML support
Get from http://www.zlatkovic.com/pub/libxml or build from source from
http://xmlsoft.org. Note that libxml2 requires iconv.


Code indention
--------------
@


1.2
log
@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)
@
text
@d66 8
@


1.1
log
@vcbuild documentation from Magnus and Dave.
@
text
@d12 5
d62 4
@

