1
0
mirror of https://github.com/postgres/postgres.git synced 2025-12-13 14:22:43 +03:00
Commit Graph

76 Commits

Author SHA1 Message Date
Tom Lane
a64a0bfaae Fix macro-redefinition warning on MSVC.
In commit 9d6b160d7, I tweaked pg_config.h.win32 to use
"#define HAVE_LONG_LONG_INT_64 1" rather than defining it as empty,
for consistency with what happens in an autoconf'd build.
But Solution.pm injects another definition of that macro into
ecpg_config.h, leading to justifiable (though harmless) compiler whining.
Make that one consistent too.  Back-patch, like the previous patch.

Discussion: https://postgr.es/m/CAEepm=1dWsXROuSbRg8PbKLh0S=8Ou-V8sr05DxmJOF5chBxqQ@mail.gmail.com
2017-09-03 11:01:08 -04:00
Andrew Dunstan
f964a7c5ab Fix thinko in previous openssl change 2017-06-05 20:41:01 -04:00
Andrew Dunstan
545dc4d216 Find openssl lib files in right directory for MSVC
Some openssl builds put their lib files in a VC subdirectory, others do
not. Cater for both cases.

Backpatch to all live branches.

From an offline discussion with Leonardo Cecchi.
2017-06-05 14:29:00 -04:00
Andrew Dunstan
614f83c122 Add libxml2 include path for MSVC builds
On Unix this path is detected via the use of xml2-config, but that's not
available on Windows. This means that users building with libxml2 will
no longer need to move things around from the standard libxml2
installation for MSVC builds.

Backpatch to all live branches.
2017-05-12 10:24:36 -04:00
Andrew Dunstan
89bf78a9b1 Remove dependency on psed for MSVC builds.
Modern Perl has removed psed from its core distribution, so it might not
be readily available on some build platforms. We therefore replace its
use with a Perl script generated by s2p, which is equivalent to the sed
script. The latter is retained for non-MSVC builds to avoid creating a
new hard dependency on Perl for non-Windows tarball builds.

Backpatch to all live branches.

Michael Paquier and me.
2016-03-19 18:51:01 -04:00
Bruce Momjian
49d65e857c Properly install dynloader.h on MSVC builds
This will enable PL/Java to be cleanly compiled, as dynloader.h is a
requirement.

Report by Chapman Flack

Patch by Michael Paquier

Backpatch through 9.1
2016-01-19 23:30:28 -05:00
Andrew Dunstan
acf290dfbc Enable building with Microsoft Visual Studio 2012.
Backpatch to release 9.2

Brar Piening and Noah Misch, reviewed by Craig Ringer.
2013-02-06 14:56:17 -05:00
Magnus Hagander
3759e51bd9 Properly copy fmgroids.h after clean on Win32
Craig Ringer
2012-12-16 14:58:10 +01:00
Bruce Momjian
2bc09ff499 Run newly-configured perltidy script on Perl files.
Run on HEAD and 9.2.
2012-07-04 21:47:48 -04:00
Bruce Momjian
927d61eeff Run pgindent on 9.2 source tree in preparation for first 9.3
commit-fest.
2012-06-10 15:20:04 -04:00
Robert Haas
337b6f5ecf Speed up in-memory tuplesorting.
Per recent work by Peter Geoghegan, it's significantly faster to
tuplesort on a single sortkey if ApplySortComparator is inlined into
quicksort rather reached via a function pointer.  It's also faster
in general to have a version of quicksort which is specialized for
sorting SortTuple objects rather than objects of arbitrary size and
type.  This requires a couple of additional copies of the quicksort
logic, which in this patch are generate using a Perl script.  There
might be some benefit in adding further specializations here too,
but thus far it's not clear that those gains are worth their weight
in code footprint.
2012-02-15 12:13:32 -05:00
Andrew Dunstan
63876d3bac Support for building with MS Visual Studio 2010.
Brar Piening, reviewed by Craig Ringer.
2012-01-03 08:44:26 -05:00
Magnus Hagander
fd6913a189 perltidy run over msvc build system 2011-07-12 15:25:08 +01:00
Alvaro Herrera
34a991619b Update MSVC toolchain to match SGML entity uppercasing
Per Robert Haas
2011-04-04 16:43:15 -04:00
Peter Eisentraut
474a42473a PL/Python custom SPI exceptions
This provides a separate exception class for each error code that the
backend defines, as well as the ability to get the SQLSTATE from the
exception object.

Jan Urbański, reviewed by Steve Singer
2011-02-28 18:41:10 +02:00
Magnus Hagander
39fbec73b0 Use single quotes when there are backslashes in the filename
In the hope of unbreaking the buildfarm
2011-02-04 10:52:25 +01:00
Robert Haas
ddfe26f644 Avoid maintaining three separate copies of the error codes list.
src/pl/plpgsql/src/plerrcodes.h, src/include/utils/errcodes.h, and a
big chunk of errcodes.sgml are now automatically generated from a single
file, src/backend/utils/errcodes.txt.

Jan Urbański, reviewed by Tom Lane.
2011-02-03 22:32:49 -05:00
Magnus Hagander
cd0e825321 Fix msvc build for localized versions of Visual C++
Look only at the non-localized part of the output from "vcbuild /?",
which is used to determine the version of Visual Studio in use. Different
languages seem to localize different amounts of the string, but we assume
the part "Microsoft Visual C++" won't be modified.
2010-10-17 16:36:54 +02:00
Magnus Hagander
9f2e211386 Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
Magnus Hagander
93f35f0955 Perltidy run over the MSVC build system files, to clean up code formatting
and indentation styles.
2010-04-09 13:05:58 +00:00
Andrew Dunstan
3a8497892c Make iconv work like other optional libraries for MSVC. 2010-03-03 03:29:37 +00:00
Andrew Dunstan
05028cc33f Add missing library and include dir for XSLT in MSVC builds 2010-03-02 22:02:31 +00:00
Andrew Dunstan
5600aaccbd Add XSLT defines for MSVC builds 2010-03-02 12:29:14 +00:00
Magnus Hagander
af322a8a3e Move the default configuration for the MSVC build system to config_default.pl,
and allow using config.pl to override the defaults. config.pl is removed from
the repository, so changes there will no longer show up when doing diff, and
will not prevent switching branches and such things.

config.pl would normally be used to override single values, but if an
old-style config.pl is read, it will override the entire default configuration,
making it backwards compatible.
2010-01-05 13:31:58 +00:00
Tom Lane
64737e9313 Get rid of the need for manual maintenance of the initial contents of
pg_attribute, by having genbki.pl derive the information from the various
catalog header files.  This greatly simplifies modification of the
"bootstrapped" catalogs.

This patch finally kills genbki.sh and Gen_fmgrtab.sh; we now rely entirely on
Perl scripts for those build steps.  To avoid creating a Perl build dependency
where there was not one before, the output files generated by these scripts
are now treated as distprep targets, ie, they will be built and shipped in
tarballs.  But you will need a reasonably modern Perl (probably at least
5.6) if you want to build from a CVS pull.

The changes to the MSVC build process are untested, and may well break ---
we'll soon find out from the buildfarm.

John Naylor, based on ideas from Robert Haas and others
2010-01-05 01:06:57 +00:00
Magnus Hagander
f9c5d3e555 Detect a 64-bit build environment on Windows, and generate the appropriate
project files.

Based on the work of Tsutomu Yamada, but much refactored.
2010-01-01 17:34:25 +00:00
Magnus Hagander
50a4054d63 Exclude part of the product name string that is localized in Japanese versions
of MSVC when detecting MSVC version.

Hiroshi Inoue
2009-12-30 12:26:41 +00:00
Magnus Hagander
df0cdd53d6 Add basic build support for Visual Studio 2008, without resorting to
generating the build files for 2005 and then converting them.
2009-12-23 13:27:04 +00:00
Andrew Dunstan
7ef5ffdeaf Fix MSVC build breakage from psql help changes. Per Josh Williams. 2009-09-19 05:56:50 +00:00
Magnus Hagander
2b1782fa58 Make the MSVC build output "32-bit" at the end of the version string, the
same way the unix build now does.
2009-01-06 18:37:50 +00:00
Andrew Dunstan
04ecc64310 Attempt to fix MSVC breakage from Major Version patch. 2008-12-16 15:42:21 +00:00
Michael Meskes
b78f9b496d Enable script to generate preproc.y in build process. 2008-11-14 17:11:40 +00:00
Magnus Hagander
19c1e68e16 probes.h is generated from probes.d, not pg_trace.d. 2008-08-16 12:42:27 +00:00
Tom Lane
320c7eb8c6 Oops, make the MSVC build put fmgroids.h where it needs to be.
Per buildfarm results.
2008-06-24 01:15:36 +00:00
Tom Lane
eeee06919f Fix Gen_fmgrtab.sh to not rely on hard-wired knowledge of the column numbers
in pg_proc.  Also make it not emit duplicate extern declarations, and make it
a bit more bulletproof in some other small ways.  Likewise fix the equally
hard-wired, and utterly undocumented, knowledge in the MSVC build scripts.
For testing purposes and perhaps other uses in future, pull out that portion
of the MSVC scripts into a standalone perl script equivalent to
Gen_fmgrtab.sh, and make it generate actually identical output, rather than
just more-or-less-the-same output.

Motivated by looking at Pavel's variadic function patch.  Whether or not
that gets accepted, we can be sure that pg_proc's column set will change
again in the future; it's time to not have to deal with this gotcha.
2008-06-23 17:54:30 +00:00
Andrew Dunstan
d61eecb5a1 Provide for MSVC config equivalents of recently added configure options. Remove
any hardcoding of those options. Along the way, reorder the expression used to
calculate RELSEG_SIZE to make it slightly clearer. For now wal_segsize is only
allowed to have a value of 1 on Windows - we can relax that when we get full
large file support in the backend.
2008-05-03 00:24:06 +00:00
Magnus Hagander
a31b03ba27 Clean up float4byval and float8byval handling by dealing with them completely
from inside the build script.
2008-04-21 18:37:28 +00:00
Magnus Hagander
de6e4c9d60 Make float4byval and float8byval configurable on MSVC. 2008-04-21 10:01:32 +00:00
Andrew Dunstan
fcf053d782 Make integer_datetimes the default for MSVC even if not mentioned in config.pl. 2008-04-15 12:16:51 +00:00
Andrew Dunstan
458c585697 Generate dummy probes.h for MSVC builds. 2008-03-21 02:50:02 +00:00
Magnus Hagander
b13635ce59 Support for building contrib/uuid-ossp with MSVC.
Original patch from Hiroshi Saito, modified by me.
2008-02-28 12:17:59 +00:00
Magnus Hagander
fae032c9fc Unbreak MSVC build after recent addition of HTMLDIR. 2008-02-19 12:00:03 +00:00
Magnus Hagander
2890c33084 Build two more .DEF files for ecpg instead of using default ones. 2007-10-03 13:43:24 +00:00
Magnus Hagander
c8792c86f2 Build DEF file for libecpg instead of generating a default one. 2007-10-03 12:11:00 +00:00
Tom Lane
dd4594e332 Fix MSVC build (I think) for recent pg_proc.h column addition.
This business with two independent build systems does kinda suck.
2007-09-03 02:51:47 +00:00
Magnus Hagander
d602592494 Make it possible, and default, for MingW to build with SSPI support
by dynamically loading the function that's missing from the MingW
headers and library.
2007-07-24 09:00:27 +00:00
Magnus Hagander
f70866fb23 SSPI authentication on Windows. GSSAPI compatible client when doing Kerberos
against a Unix server, and Windows-specific server-side authentication
using SSPI "negotiate" method (Kerberos or NTLM).

Only builds properly with MSVC for now.
2007-07-23 10:16:54 +00:00
Magnus Hagander
784fd04940 Enable GSSAPI to build using MSVC. Always build GSSAPI when Kerberos is
enabled, because the only Kerberos library supported always contains it.
2007-07-12 14:43:21 +00:00
Magnus Hagander
6771994058 Fix freenig of names in Kerberos when using MIT - need to use the
free function provided in the Kerberos library.
This fixes a very hard to track down heap corruption on windows
when using debug runtimes.
2007-07-12 14:10:39 +00:00
Andrew Dunstan
52ba24a156 Quiet warnings about redefined PGPORT macros for MSVC. 2007-06-20 17:19:00 +00:00