Commit Graph

1575 Commits

Author SHA1 Message Date
Bruce Momjian
a2883241e9 Update instructions on creating minor release notes. 2013-10-08 09:48:29 -04:00
Kevin Grittner
277607d600 Eliminate pg_rewrite.ev_attr column and related dead code.
Commit 95ef6a3448 removed the
ability to create rules on an individual column as of 7.3, but
left some residual code which has since been useless.  This cleans
up that dead code without any change in behavior other than
dropping the useless column from the catalog.
2013-09-05 14:03:43 -05:00
Peter Eisentraut
5e3e8e4daa Update Emacs configuration
Update emacs.samples with new configuration snippets that match pgindent
et al. formatting more accurately and follow Emacs Lisp best practices
better.

Add .dir-locals.el with a subset of that configuration for casual
editing and viewing.

Reviewed-by: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Reviewed-by: Noah Misch <noah@leadboat.com>
2013-08-13 20:08:44 -04:00
Bruce Momjian
f347f26807 pgtest: allow passing parameters, e.g. -s/--silent
Previously only -n was recognized.
2013-08-05 19:59:52 -04:00
Fujii Masao
2ef085d0e6 Get rid of pg_class.reltoastidxid.
Treat TOAST index just the same as normal one and get the OID
of TOAST index from pg_index but not pg_class.reltoastidxid.
This change allows us to handle multiple TOAST indexes, and
which is required infrastructure for upcoming
REINDEX CONCURRENTLY feature.

Patch by Michael Paquier, reviewed by Andres Freund and me.
2013-07-04 03:24:09 +09:00
Noah Misch
19085116ee Cooperate with the Valgrind instrumentation framework.
Valgrind "client requests" in aset.c and mcxt.c teach Valgrind and its
Memcheck tool about the PostgreSQL allocator.  This makes Valgrind
roughly as sensitive to memory errors involving palloc chunks as it is
to memory errors involving malloc chunks.  Further client requests in
PageAddItem() and printtup() verify that all bits being added to a
buffer page or furnished to an output function are predictably-defined.
Those tests catch failures of C-language functions to fully initialize
the bits of a Datum, which in turn stymie optimizations that rely on
_equalConst().  Define the USE_VALGRIND symbol in pg_config_manual.h to
enable these additions.  An included "suppression file" silences nominal
errors we don't plan to fix.

Reviewed in earlier versions by Peter Geoghegan and Korry Douglas.
2013-06-26 20:22:25 -04:00
Bruce Momjian
f979599b20 Modernize entab source code
Remove halt.c, improve comments, rename manual page file.
2013-06-19 12:31:26 -04:00
Tom Lane
46e1434f3d Update RELEASE_CHANGES to describe library version bumping more fully. 2013-06-14 14:53:23 -04:00
Tom Lane
8a3f0894a4 Stamp shared-library minor version numbers for 9.4. 2013-06-14 14:49:46 -04:00
Tom Lane
58ae1f4577 Stamp HEAD as 9.4devel.
Let the hacking begin ...
2013-06-14 14:41:28 -04:00
Stephen Frost
c9fc28a7f1 Minor spelling fixes
Fix a few spelling mistakes.

Per bug report #8193 from Lajos Veres.
2013-06-01 10:18:59 -04:00
Peter Eisentraut
8b5a3998a1 Remove whitespace from end of lines 2013-05-30 21:05:07 -04:00
Bruce Momjian
9af4159fce pgindent run for release 9.3
This is the first run of the Perl-based pgindent script.  Also update
pgindent instructions.
2013-05-29 16:58:43 -04:00
Peter Eisentraut
bd98852cbd Remove make_keywords
It is not used anymore.
2013-05-09 22:21:43 -04:00
Bruce Momjian
d61dddba37 pgindent: add newline to die() so script line number is not reported on failure. 2013-04-16 10:30:35 -04:00
Bruce Momjian
5003f94f66 pgindent: improve error messages
per suggestion from Gurjeet Singh
2013-04-12 15:25:33 -04:00
Bruce Momjian
8daa4e960e pgindent: fix downloading of BSD indent binary
Also fix accessing pgentab binary and tar.

Gurjeet Singh
2013-04-12 11:42:27 -04:00
Bruce Momjian
be55f3b859 Document that git_changelog needs updating for major version stamping. 2013-04-11 12:27:02 -04:00
Andrew Dunstan
9e257a181c Add parallel pg_dump option.
New infrastructure is added which creates a set number of workers
(threads on Windows, forked processes on Unix). Jobs are then
handed out to these workers by the master process as needed.
pg_restore is adjusted to use this new infrastructure in place of the
old setup which created a new worker for each step on the fly. Parallel
dumps acquire a snapshot clone in order to stay consistent, if
available.

The parallel option is selected by the -j / --jobs command line
parameter of pg_dump.

Joachim Wieland, lightly editorialized by Andrew Dunstan.
2013-03-24 11:27:20 -04:00
Andrew Dunstan
b7f8465cc6 Avoid renaming data directory during MSVC upgrade testing.
This appears to cause some intermittent file system problems
on Windows 8. Instead, set up the old data directory in its
intended final location to start with.
2013-03-23 16:26:06 -04:00
Tom Lane
e2a203a190 initdb needs pqsignal() even on Windows.
I had thought we weren't using this version of pqsignal() at all on
Windows, but that's wrong --- initdb is using it (and coping with the
POSIX-ish semantics of bare signal() :-().  So allow the file to be
built in WIN32+FRONTEND case, and add it to the MSVC build logic.
2013-03-17 15:19:47 -04:00
Andrew Dunstan
cd340ca89a Fix message typo. 2013-03-06 09:53:38 -05:00
Peter Eisentraut
1275b88f71 Exclude utils/probes.h and pg_trace.h from cpluspluscheck
They can include sys/sdt.h from SystemTap, which itself contains C++
code and so won't compile with a C++ compiler under extern "C" linkage.
2013-03-01 22:46:11 -05:00
Heikki Linnakangas
f70b1b2748 Fix MSVC build.
The new file in src/port needs to be listed in Mkvcbuild.pm as well.
2013-02-27 21:31:41 +02:00
Andrew Dunstan
a64e33f030 Redo MSVC build implementation for pg_xlogdump.
The previous commit didn't work on MSVC editions earlier than
Visual Studio 2011, apparently. This works by copying files into the
contrib directory, and making provision to clean them up, which should
work on all editions.
2013-02-25 12:00:53 -05:00
Andrew Dunstan
786170d74f Provide MSVC build setup for pg_xlogdump. 2013-02-24 20:28:42 -05:00
Alvaro Herrera
a730183926 Move relpath() to libpgcommon
This enables non-backend code, such as pg_xlogdump, to use it easily.
The previous location, in src/backend/catalog/catalog.c, made that
essentially impossible because that file depends on many backend-only
facilities; so this needs to live separately.
2013-02-21 22:46:17 -03:00
Tom Lane
699d70b2ec Teach MSVC build system about postgres_fdw.
Per buildfarm.
2013-02-21 06:43:15 -05:00
Peter Eisentraut
8e6c8da16a pgindent: Fix order in instructions
The previous order of steps didn't literally work, because git clean
-fdx would delete the downloaded typedefs.list.  Also, pgindent needs to
be called with a path when one is in at the top of the build tree.
2013-02-14 21:40:05 -05:00
Alvaro Herrera
8396447cdb Create libpgcommon, and move pg_malloc et al to it
libpgcommon is a new static library to allow sharing code among the
various frontend programs and backend; this lets us eliminate duplicate
implementations of common routines.  We avoid libpgport, because that's
intended as a place for porting issues; per discussion, it seems better
to keep them separate.

The first use case, and the only implemented by this patch, is pg_malloc
and friends, which many frontend programs were already using.

At the same time, we can use this to provide palloc emulation functions
for the frontend; this way, some palloc-using files in the backend can
also be used by the frontend cleanly.  To do this, we change palloc() in
the backend to be a function instead of a macro on top of
MemoryContextAlloc().  This was previously believed to cause loss of
performance, but this implementation has been tweaked by Tom and Andres
so that on modern compilers it provides a slight improvement over the
previous one.

This lets us clean up some places that were already with
localized hacks.

Most of the pg_malloc/palloc changes in this patch were authored by
Andres Freund. Zoltán Böszörményi also independently provided a form of
that.  libpgcommon infrastructure was authored by Álvaro.
2013-02-12 11:21:05 -03:00
Peter Eisentraut
cf4d67e819 Exclude access/rmgrlist.h from cpluspluscheck
It is not meant to be included standalone.
2013-02-08 07:01:21 -05:00
Andrew Dunstan
e1c1e21732 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:52:29 -05:00
Magnus Hagander
bfb8a8d381 Properly zero-pad the day-of-year part of the win32 build number
This ensure the version number increases over time. The first three digits
in the version number is still set to the actual PostgreSQL version
number, but the last one is intended to be an ever increasing build number,
which previosly failed when it changed between 1, 2 and 3 digits long values.

Noted by Deepak
2013-01-31 15:06:45 +01:00
Peter Eisentraut
5bb2ddc0af entab: Fix some compiler warnings 2013-01-29 22:21:21 -05:00
Magnus Hagander
6e650a55cd Properly install ecpg_compat and pgtypes libraries on msvc
JiangGuiqing
2013-01-09 17:29:59 +01:00
Andrew Dunstan
74570db99c Fix a logic bug in pgindent. 2013-01-07 12:26:27 -05:00
Magnus Hagander
940d136661 Centralize single quote escaping in src/port/quotes.c
For code-reuse in upcoming functionality in pg_basebackup.

Zoltan Boszormenyi
2013-01-05 15:40:19 +01:00
Bruce Momjian
bd61a623ac Update copyrights for 2013
Fully update git head, and update back branches in ./COPYRIGHT and
legal.sgml files.
2013-01-01 17:15:01 -05:00
Magnus Hagander
b10e9ae9f3 Add new file to MSVC build system as well 2013-01-01 18:29:48 +01:00
Andrew Dunstan
9ac749ceb5 Don't include postgres.h in postgres_fe.h for cpluspluscheck.
Error exposed by recent Assert changes.

Complaint from Peter Eisentraut.
2012-12-18 16:30:14 -05:00
Magnus Hagander
c1f856a17f Properly copy fmgroids.h after clean on Win32
Craig Ringer
2012-12-16 14:56:51 +01:00
Bruce Momjian
3bdfd9cb9e Adjust find_status for newer Linux 'nm' output format. 2012-11-13 21:08:07 -05:00
Andrew Dunstan
e583ffe947 Unbreak MSVC builds after recent Makefile refactoring.
Based on a suggestion by Peter Eisentraut.
2012-10-11 12:36:42 -04:00
Tom Lane
95d035e66d Autoconfiscate selection of 64-bit int type for 64-bit large object API.
Get rid of the fundamentally indefensible assumption that "long long int"
exists and is exactly 64 bits wide on every platform Postgres runs on.
Instead let the configure script select the type to use for "pg_int64".

This is a bit of a pain in the rear since we do not want to pollute client
namespace with all the random symbols that pg_config.h defines; instead
we have to create a separate generated header file, "pg_config_ext.h".
But now that the infrastructure is there, we might have the ability to
add some other stuff that's long been wanting in this area.
2012-10-07 21:52:43 -04:00
Peter Eisentraut
05346c131a PL/pgSQL: rename gram.y to pl_gram.y
This makes the naming inside plpgsql consistent and distinguishes the
file from the backend's gram.y file.  It will also allow easier
refactoring of the bison make rules later on.
2012-10-04 22:40:33 -04:00
Andrew Dunstan
06623df63b Allow a few seconds for Windows to catch up with a directory rename when checking pg_upgrade. 2012-10-02 10:40:57 -04:00
Tom Lane
55c1687a97 Run check_keywords.pl anytime gram.c is rebuilt.
This script is a bit slow, but still it only takes a fraction of the time
the bison run does, so the overhead doesn't seem intolerable.  And we
definitely need some mechanical aid here, because people keep missing
the need to add new keywords to the appropriate keyword-list production.

While at it, I moved check_keywords.pl from src/tools into
src/backend/parser where it's actually used, and did some very minor
cleanup on the script.
2012-09-26 23:12:39 -04:00
Alvaro Herrera
ea7d504998 RELEASE_NOTES: Fix typo
Jan Urbański
2012-09-23 16:28:44 -03:00
Peter Eisentraut
8a32819a80 Update translation updates instructions 2012-09-22 22:14:38 -04:00
Andrew Dunstan
a1d021e5d2 Add vcregress.pl target for checking pg_upgrade.
This follows recent addition of Windows/Mingw testing.
Backpatch to Release 9.2 so we can get some buildfarm testing
going.
2012-09-10 12:47:50 -04:00
Bruce Momjian
63f1ccd838 Remove src/tool/backend, now that the content is on the web site and wiki. 2012-09-04 12:38:33 -04:00
Andrew Dunstan
ef58b87df2 Restore setting of _USE_32BIT_TIME_T to 32 bit MSVC builds.
This was removed in commit cd00406774,
we're not quite sure why, but there have been reports of crashes due
to AS Perl being built with it when we are not, and it certainly
seems like the right thing to do. There is still some uncertainty
as to why it sometimes fails and sometimes doesn't.

Original patch from Owais Khani, substantially reworked and
extended by Andrew Dunstan.
2012-08-31 20:38:37 -04:00
Bruce Momjian
5fcb58baca Add Perl emacs formatting macros to src/tools/editors/emacs.samples.
Peter Eisentraut
2012-08-30 21:40:31 -04:00
Bruce Momjian
e40bddb0f3 Have pgindent requre pg_bsd_indent version 1.2 now that a new version
has been created by adding #include <stdlib.h> to parse.c.

per request from Kevin Grittner.
2012-08-27 09:31:56 -04:00
Bruce Momjian
86d0d16f8a Add URL for include file visualization tool. 2012-08-16 18:52:08 -04:00
Bruce Momjian
c04b9c1f3d Add possible alternate tool for pgrminclude, from Peter Geoghegan 2012-08-16 11:56:00 -04:00
Bruce Momjian
914b1301cc Adjust pgtest coding to be less complex. 2012-08-10 16:46:02 -04:00
Bruce Momjian
99ed473acb Fix pgtest to return proper error code based on 'make' return code. 2012-08-10 14:10:59 -04:00
Tom Lane
5078be4804 Tweak new Perl pgindent for compatibility with middle-aged Perls.
We seem to have a rough policy that our Perl scripts should work with
Perl 5.8, so make this one do so.  Main change is to not use the newfangled
\h character class in regexes; "[ \t]" is a serviceable replacement.
2012-08-07 17:52:53 -04:00
Bruce Momjian
149ac7d455 Replace pgindent shell script with Perl script. Update perltidy
instructions to perltidy Perl files that lack Perl file extensions.

pgindent Perl coding by Andrew Dunstan, restructured by me.
2012-08-04 12:41:21 -04:00
Bruce Momjian
76720bdf1a Remove 'x =- 1' check for pgindent, not needed, per report from Andrew
Dunstan.
2012-07-12 14:37:47 -04:00
Bruce Momjian
d17c0135cd Have copyright.pl skip updating something that is just the current year,
to avoid producing dups, e.g. 2012-2012

Backpatch to 9.2.
2012-07-06 12:21:43 -04:00
Bruce Momjian
95203e0833 Modify copyright.pl so all lines are processed, not just the first
match, so files that contain embedded copyrights are updated, e.g.
pgsql/help.c.

Backpatch to 9.2.
2012-07-06 11:58:55 -04:00
Bruce Momjian
5198ae8992 Fix copyright.pl to properly skip the .git directory by adding a
basename() qualification.
2012-07-06 11:43:59 -04:00
Bruce Momjian
b9eb808bf2 Fix spacing in copyright.pl after being run with missing regex slash
(now added).

Backpatch to 9.2.
2012-07-06 10:57:08 -04:00
Bruce Momjian
539d38757a Fix missing regex slash that caused perltidy to get confused on
copyright.pl.

Backpatch to 9.2.
2012-07-04 21:58:48 -04:00
Bruce Momjian
042d9ffc28 Run newly-configured perltidy script on Perl files.
Run on HEAD and 9.2.
2012-07-04 21:47:49 -04:00
Bruce Momjian
b33385b89d Have copyright tool mention that certain files should be updated in back branches. 2012-07-03 12:02:17 -04:00
Bruce Momjian
47463a8098 Remove 'for' loop perltidy argument, and move args to perltidyrc file.
Backpatch to 9.2.

Per suggestion from Noah Misch
2012-06-16 10:12:50 -04:00
Bruce Momjian
0acd978259 In pgindent, suppress reading the perltidy RC file using --noprofile. 2012-06-15 22:50:02 -04:00
Bruce Momjian
d6e0207437 Update pgindent Perl indentation instructions based on feedback from
Àlvaro and Noah Misch.

Backpatch to 9.2.
2012-06-15 22:43:23 -04:00
Tom Lane
80491a1983 Add 9.2 branch to git_changelog's list. 2012-06-13 22:23:31 -04:00
Tom Lane
f32609db72 Flesh out RELEASE_CHANGES instructions for branching in git.
We have this info in the wiki, but it should be here too.
2012-06-13 22:11:06 -04:00
Tom Lane
357c549334 Stamp library minor versions for 9.3.
This includes fixing the MSVC copy of ecpg/preproc's version info, which
seems to have been overlooked repeatedly.  Can't we fix that so there are
not two copies??
2012-06-13 22:06:26 -04:00
Tom Lane
bed88fceac Stamp HEAD as 9.3devel.
Let the hacking begin ...
2012-06-13 20:03:02 -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
Bruce Momjian
60801944fa Update pgindent install instructions and update typedef list. 2012-06-10 15:15:31 -04:00
Peter Eisentraut
c8e086795a Remove whitespace from end of lines
pgindent and perltidy should clean up the rest.
2012-05-15 22:19:41 +03:00
Bruce Momjian
ebcaa5fcde Remove BSD/OS (BSDi) port. There are no known users upgrading to
Postgres 9.2, and perhaps no existing users either.
2012-05-03 10:58:44 -04:00
Bruce Momjian
7490c48f1e Mark git_changelog examples with the proper executable names. 2012-05-02 20:42:44 -04:00
Bruce Momjian
f33fe47a91 Add comments suggesting usage of git_changelog to generate release notes. 2012-04-30 11:05:34 -04:00
Bruce Momjian
993ce4e6c9 Add options to git_changelog for use in major release note creation:
--details-after
	--master-only
	--oldest-first
2012-04-27 17:15:41 -04:00
Peter Eisentraut
8bd44677df entab: Improve makefile
A few simplifications and stylistic improvements, found while grepping
around for makefile problems elsewhere.
2012-04-24 21:20:55 +03:00
Robert Haas
5d4b60f2f2 Lots of doc corrections.
Josh Kupershmidt
2012-04-23 22:43:09 -04:00
Heikki Linnakangas
49440fff08 Install plpgsql.h to to include/server at "make install".
The header file is needed by any module that wants to use the PL/pgSQL
instrumentation plugin interface. Most notably, the pldebugger plugin needs
this. With this patch, it can be built using pgxs, without having the full
server source tree available.
2012-04-16 13:03:16 +03:00
Andrew Dunstan
d2c1740dc2 Remove now redundant pgpipe code. 2012-03-28 23:24:07 -04:00
Robert Haas
7f63527c82 Attempt to unbreak pg_test_timing on Windows.
Per buildfarm, and Álvaro Herrera.
2012-03-28 12:22:57 -04:00
Peter Eisentraut
621eb156f1 Add installing entab to pgindent instructions
And minor other pgindent documentation tweaks.
2012-03-21 23:33:10 +02:00
Tom Lane
8cae5810eb Fix MSVC builds for previous patch's addition of a src/port file.
(And why in the world is this OBJS list not being scraped from the
corresponding Makefile?)
2012-02-29 00:24:01 -05:00
Tom Lane
5c02a00d44 Move CRC tables to libpgport, and provide them in a separate include file.
This makes it much more convenient to build tools for Postgres that are
separately compiled and require a matching CRC implementation.

To prevent multiple copies of the CRC polynomial tables being introduced
into the postgres binaries, they are now included in the static library
libpgport that is mainly meant for replacement system functions.  That
seems like a bit of a kludge, but there's no better place.

This cleans up building of the tools pg_controldata and pg_resetxlog,
which previously had to build their own copies of pg_crc.o.

In the future, external programs that need access to the CRC tables can
include the tables directly from the new header file pg_crc_tables.h.

Daniel Farina, reviewed by Abhijit Menon-Sen and Tom Lane
2012-02-28 19:53:39 -05:00
Peter Eisentraut
9bf8603c7a Call check_keywords.pl in maintainer-check
For that purpose, have check_keywords.pl print errors to stderr and
return a useful exit status.
2012-02-27 13:53:12 +02:00
Bruce Momjian
1fbacbf998 Mention original ctags option name. 2012-02-24 16:19:18 -05:00
Bruce Momjian
7c19f9d139 Update src/tools/make_ctags to avoid Exuberant tags option
that has been renamed and undocumented since 2003;  instead, use the
documented option.  Add comments.
2012-02-24 16:17:19 -05: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
Heikki Linnakangas
b4e3633ac4 Silence warning about deprecated assignment to $[ in check_keywords.pl
Alex Hunsaker
2012-02-13 09:15:08 +02:00
Robert Haas
dd7c84185c Attempt to fix MSVC builds and other fls-related breakage.
Thanks to Andrew Dunstan for bringing this to my attention.
2012-02-09 12:39:33 -05:00
Robert Haas
dc3f33f6be Fix pathname in pgindent README.
Kevin Grittner
2012-01-09 13:31:58 -05:00
Magnus Hagander
822128947e Add .gitignore file for entab
Kevin Grittner
2012-01-09 18:18:25 +01: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
Bruce Momjian
a8ab8d0eaa Add comment about skipping binary files for copyright changes. 2012-01-02 08:49:11 -05:00
Bruce Momjian
6b6137e4ef Update copyright git skip comment. 2012-01-01 22:27:27 -05:00
Bruce Momjian
bed762c81e Skip any .git directory for copyright changes, not just top-level .git
directories.  Per suggestion from Andrew Dunstan.
2012-01-01 19:47:24 -05:00
Bruce Momjian
f4cd747a4d Skip 'ico' and 'bin' extensions in copyright changes. 2012-01-01 19:36:10 -05:00
Bruce Momjian
e126958c2e Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
Bruce Momjian
6ba139dc5a Don't use tabs in Perl scripts, for consistency. 2012-01-01 17:59:44 -05:00
Bruce Momjian
9f60880207 Fix Perl copyright script to skip .git subdirectory; running it on
those files corrupts the index.
2012-01-01 17:56:51 -05:00
Bruce Momjian
dca0a54717 Modify tools/pgtest to run the 'make' command from a variable, and default
to 'make' rather than 'gmake' for the binary name.
2011-12-30 16:29:25 -05:00
Robert Haas
3b86b4653c Make pgcompinclude/pgrminclude less tied to Bruce's personal machine.
Not everyone has /pg linked to the src subdirectory of their PostgreSQL
tree.  Also, cc isn't the way to invoke the compiler everywhere.
2011-12-01 14:44:32 -05:00
Bruce Momjian
8b08deb0d1 Simplify the pg_dump/pg_restore error reporting macros, and allow
pg_dumpall to use the same memory allocation functions as the others.
2011-11-29 16:34:45 -05:00
Bruce Momjian
7260a0d00a Document that perl needs to be indented during the pgindent run. 2011-11-28 21:56:58 -05:00
Andrew Dunstan
91572ee0a6 Make pg_dumpall build with the right object files under MSVC.
This fixes a longstanding but up to now benign bug in the way pg_dumpall
was built. The bug was exposed by recent code adjustments. The Makefile
does not use $(OBJS) to build pg_dumpall, so this fix removes their source
files from the pg_dumpall object and adds in the one source file it
consequently needs.
2011-11-27 20:14:47 -05:00
Andrew Dunstan
4a9018135a Fix MSVC builds broken by xsubpp change 2011-11-27 01:23:47 -05:00
Andrew Dunstan
ba00ab0b11 Use the preferred version of xsubpp, not necessarily the one that came with the
distro version of perl.

David Wheeler and Alex Hunsaker.

Backpatch to 9.1 where it applies cleanly. A simple workaround is available for earlier
branches, and further effort doesn't seem warranted.
2011-11-26 15:22:32 -05:00
Tom Lane
4165d5b6d7 Update oidjoins regression test to match git HEAD.
This is mostly to add some sanity checking for the pg_range catalog.
2011-11-14 20:28:38 -05:00
Bruce Momjian
1a2586c1d0 Rerun pgindent with updated typedef list. 2011-11-14 12:12:23 -05:00
Tom Lane
756a4ed5ad Add simple script to check for right recursion in Bison grammars.
We should generally use left-recursion not right-recursion to parse lists.
Bison hasn't got any built-in way to check for this type of inefficiency,
and I didn't find anything on the net in a quick search, so I wrote a
little Perl script to do it.  Add to src/tools/ so we don't have to
re-invent this wheel next time we wonder if we're doing anything stupid.

Currently, the only place that seems to need fixing is plpgsql's stmt_else
production, so the problem doesn't appear to be common enough to warrant
trying to include such a test in our standard build process.  If we did
want to do that, we'd need a way to ignore some false positives, such as
a_expr := '-' a_expr
2011-10-27 13:50:57 -04:00
Bruce Momjian
360429e1d1 Fix pg_bsd_indent bug where newlines were not being trimmed from typedef
lines.  Update pg_bsd_indent required version to 1.1 (and update ftp
site).

Problem reported by Magnus.
2011-10-26 17:24:19 -04:00
Magnus Hagander
d9bae53173 Implement streaming xlog for backup tools
Add option for parallel streaming of the transaction log while a
base backup is running, to get the logfiles before the server has
removed them.

Also add a tool called pg_receivexlog, which streams the transaction
log into files, creating a log archive without having to wait for
segments to complete, thus decreasing the window of data loss without
having to waste space using archive_timeout. This works best in
combination with archive_command - suggested usage docs etc coming later.
2011-10-26 20:13:33 +02:00
Tom Lane
7299778a95 Improve git_changelog's handling of inconsistent commit orderings.
Use the CommitDate not the AuthorDate, as the former is representative of
the order in which things went into the main repository, and the latter
isn't very; we now have instances where the AuthorDate is as much as a
month before the patch really went in.  Also, get rid of the "commit order
inversions" heuristic, which turns out not to do anything very desirable.
Instead we just print commits in strict timestamp order, interpreting the
"timestamp" of a merged commit as its timestamp on the newest branch it
appears in.  This fixes some cases where very ancient commits were being
printed relatively early in the report.
2011-10-23 14:34:36 -04:00
Bruce Momjian
6e22ba03a9 Modify pgindent to use a renamed pg_bsd_indent binary. New features
include the ability to supply a typedef file, rather than list them on
the command line.  Also improve the README.
2011-10-12 15:51:27 -04:00
Bruce Momjian
e991930e8a Improve entab's Makefile install entry.
Andrew Dunstan
2011-10-11 18:03:34 -04:00
Bruce Momjian
2594ad7436 In pgrminclude, document requirement to use pgcompinclude, and sort
files so include removal is more predictable.
2011-09-25 16:58:16 -04:00
Bruce Momjian
84bbe57dc1 Document pgrminclude limitations. 2011-09-24 19:38:41 -04:00
Bruce Momjian
337c0b0361 Expand pgrminclude to exclude use of macros CppAsString and CppConcat. 2011-09-24 09:24:14 -04:00
Tom Lane
14a183261a Update win32tzlist.pl for the new location of our Windows timezone map.
I wasn't aware of this script till Magnus mentioned it just now ...
2011-09-23 21:42:24 -04:00
Tom Lane
5a8de2f2e7 Try to un-break MSVC build.
I thought we had enough infrastructure to absorb CPPFLAGS changes from
the makefiles, but buildfarm says otherwise.
2011-09-09 22:57:08 -04:00
Bruce Momjian
f19593754a Have pgrminclude skip files that use CppAsString2 because CppAsString2
will expaned undefined identifiers.
2011-09-07 12:59:17 -04:00
Bruce Momjian
ca598c18c6 Remove find_lt sgml tool, as it is not needed.
Per suggestion from Peter.
2011-09-03 19:09:39 -04:00
Bruce Momjian
418d04ea73 Improve method of avoiding fcinfo compile errors.
Fix pgrminclude C comment marker.
2011-09-01 14:16:13 -04:00
Bruce Momjian
b3d32ebac6 In SGML we only need to worry about "<", not ">"; update scripts. 2011-09-01 10:17:04 -04:00
Heikki Linnakangas
65e899b2fb Fix MinGW build, broken by my previous patch to add a setlocale() wrapper
on Windows. ecpglib doesn't link with libpgport, but picks and compiles
the .c files it needs individually. To cope with that, move the setlocale()
wrapper from chklocale.c to a separate setlocale.c file, and include that
in ecpglib.
2011-09-01 14:02:40 +03:00
Andrew Dunstan
94478aa8b1 Detect out of date flex in MSVC builds.
Per recent discussion, following a report from Quan Zongliang.
The same logic is used as in pgbison.pl.
2011-08-30 12:06:32 -04:00
Bruce Momjian
94db6664e2 Modify pgrminclude -v to report include files that can't be compiled on
their own.

Avoid compile problems with defines being redefined after the removal of
the #if blocks.

Change script to use shell functions for simplicity.
2011-08-28 13:04:01 -04:00
Bruce Momjian
4bd7333b14 Allow more include files to be compiled in their own by adding missing
include dependencies.

Modify pgcompinclude to skip a common fcinfo error.
2011-08-27 11:05:33 -04:00
Bruce Momjian
d010391ac8 Add support for #elif to pgrminclude. 2011-08-27 09:25:19 -04:00
Bruce Momjian
68c019a538 Add another pgdefine path check, and a cvs-git change. 2011-08-26 21:52:35 -04:00
Bruce Momjian
e7088713cd Change references of CVS to .git. 2011-08-26 21:43:34 -04:00
Bruce Momjian
8b0f0822fd Fix missing pgdefine detection in pgrminclude. 2011-08-26 18:21:32 -04:00
Bruce Momjian
f8e41abd8a Modify pgrminclude to include all code, even in #if blocks. Process
.h include files before .c files.

Mark some includes as needed to be ignored by pgrminclude.
2011-08-26 18:15:15 -04:00
Bruce Momjian
c6e9da17a1 Cleanup of script. 2011-08-26 18:15:15 -04:00
Bruce Momjian
987214b4d5 do include files first 2011-08-26 18:15:14 -04:00
Bruce Momjian
ac5f11e0ec Fix #if blocks. 2011-08-26 18:15:13 -04:00
Bruce Momjian
910725b49d Fix pgrminclude regex pattern. 2011-08-26 10:33:18 -04:00
Andrew Dunstan
6a56a38f01 Unbreak MSVC build broken by my port of flex check.
flex puts lex.backup in the current working directory regardless
of where the input and output are.
2011-08-26 10:21:43 -04:00
Bruce Momjian
6f9afc351b In pgrminclude, add code to skip includes with a marker comment. 2011-08-26 10:08:39 -04:00
Bruce Momjian
4399e81749 In pgrminclude, make skipped include names constent and skip files with
#if/#ifdefs.
2011-08-26 10:06:01 -04:00
Andrew Dunstan
7327cb6420 Port backup check on psql lexer to MSVC. 2011-08-25 17:27:36 -04:00
Bruce Momjian
034dda61dd Mark cpluspluscheck as excutable in git. 2011-08-22 22:14:58 -04:00
Bruce Momjian
ee639d2777 Fix copyright.pl to properly us 'tie' function.
Kris Jurka
2011-08-19 19:31:12 -04:00
Bruce Momjian
6dfcadafd3 Fix problem with regex in copyright test.
Report and fix by Kris Jurka
2011-08-19 17:45:10 -04:00
Bruce Momjian
272c289a46 Remove use of 'tie' in perl for copyright.pl; instead use normal file
open/close.
2011-08-19 17:43:32 -04:00
Bruce Momjian
da64fb93e5 Add executable bit to file. 2011-08-19 17:18:06 -04:00
Bruce Momjian
739e3f1050 Implement src/tools/copyright as a Perl program, so anyone can run it.
David Fetter
2011-08-19 13:51:19 -04:00
Alvaro Herrera
0d29c375cc Blind attempt at fixing isolation_tester on Win32 2011-07-13 01:10:26 -04:00
Magnus Hagander
fd6913a189 perltidy run over msvc build system 2011-07-12 15:25:08 +01:00
Andrew Dunstan
b2e3be41a6 Fix comments over eagerly c&p'd. 2011-07-07 03:53:49 -04:00
Andrew Dunstan
c895e775a5 Reimplement pgbison and pgflex as perl scripts instead of bat files.
In the process, remove almost all knowledge of individual .y and .l files,
and instead get invocation settings from the relevant make files.
The exception is plpgsql's gram.y, which has a target with a different
name. It is hoped that this will make the scripts more future-proof,
so that they won't require adjustment every time we add a new .l or .y
file.

The logic is also notably less tortured than that forced on us
by the idiosyncrasies of the Windows command processor.

The .bat files are kept as thin wrappers for the perl scripts.
2011-07-06 18:45:29 -04:00
Andrew Dunstan
19b7fac86d Fix bat file quoting of %ENV. 2011-07-03 10:36:56 -04:00
Tom Lane
2ed81ebfaf Add REL9_1_STABLE to the set of branches tracked by git_changelog. 2011-06-19 14:16:41 -04:00
Tom Lane
c962792211 Stamp HEAD as 9.2devel. 2011-06-11 17:46:49 -04:00
Alvaro Herrera
d69149ed71 Add comment about pg_ctl stop 2011-06-10 15:27:38 -04:00
Bruce Momjian
bb8f0c4b48 Mention "pg_ctl stop" in pgindent README instructions. 2011-06-09 20:51:44 -04:00
Bruce Momjian
adf43b2b36 Update typedef list for upcoming pgindent run. 2011-06-09 14:01:49 -04:00
Andrew Dunstan
8c3604ae7f Convert builddoc.bat into a perl script that actually works.
The old .bat file wasn't working for reasons that are unclear, and
which it did not seem worth the trouble to ascertain.
The new perl script has been tested and is known to work.
Soon it will be tested regularly on the buildfarm.
The .bat file is kept as a simple wrapper for the perl script.
2011-05-25 00:21:07 -04:00
Andrew Dunstan
a9b6519606 Remove spurious underscore in name of isolation tester on MSVC. 2011-05-22 21:51:18 -04:00
Andrew Dunstan
df15d11cb5 Add required psqldir setting for isolation checks. 2011-05-15 23:12:36 -04:00
Andrew Dunstan
20bacc9560 Add missing check function lookup. 2011-05-15 18:03:19 -04:00
Andrew Dunstan
840826e36c Build and run isolation test programs under MSVC. 2011-05-15 17:55:05 -04:00
Andrew Dunstan
08a0c2dabc Adjust yywrap macro for non-reentrant scanners for MSVC.
The MSVC compiler complains if a macro is called with less arguments
than its definition provides for. flex generates a macro with one
argument for yywrap, but only supplies the argument for reentrant
scanners, so we remove the useless argument in the non-reentrant
case to silence the warning.
2011-04-25 09:10:59 -04:00
Tom Lane
795c382e8c Improve findoidjoins to cover more cases.
Teach the program and script to deal with OID-array referencing columns,
which we now have several of.  Also, modify the recommended usage process
to specify that the program should be run against the regression database
rather than template1.  This lets it find numerous joins that cannot be
found in template1 because the relevant catalogs are entirely empty.

Together these changes add seventeen formerly-missed cases to the oidjoins
regression test.
2011-04-23 19:33:17 -04:00
Tom Lane
970d8a3973 Update oidjoins regression test for 9.1 catalog schema additions. 2011-04-23 14:49:54 -04:00
Peter Eisentraut
78e7e20afe Small update to emacs example configuration
Since both tarballs and git now result in a "postgresql" directory
rather than a "pgsql" directory, adjust the example configuration to
look for the former.
2011-04-23 00:47:01 +03:00
Peter Eisentraut
415f5e1259 Add fill-column setting to emacs example configurations
This matches the maximum line length that pgindent uses.
2011-04-23 00:47:00 +03:00
Peter Eisentraut
385942f46c Refix the unaccent regression test on MSVC properly
... for some value of "properly".  Instead of overriding REGRESS_OPTS,
set the variables ENCODING and NO_LOCALE, which is more expressive and
allows overriding by the user.  Fix vcregress.pl to handle that.
2011-04-19 22:52:52 +03:00
Peter Eisentraut
2e8d954475 Treat config.pl as optional in vcregress.pl
This is how build.pl treats it and how it's documented.
2011-04-19 22:01:15 +03:00
Peter Eisentraut
908eb1f98b Fix typo 2011-04-19 22:00:35 +03:00
Peter Eisentraut
f536d41942 Rename pg_regress option --multibyte to --encoding
Also refactor things a little bit so that the same methods for setting
test locale and encoding can be used everywhere.
2011-04-15 08:42:05 +03:00
Andrew Dunstan
fe1438da8a Latest consolidated typedef list from buildfarm. 2011-04-08 23:11:37 -04:00
Andrew Dunstan
a53112338c Avoid use of mixed slash style paths in arguments to xcopy in MSVC builds.
Some versions of xcopy, notably on Windows 7 don't like it. Backpatch
to 8.3, where we first used xcopy.
2011-04-07 22:17:06 -04:00
Alvaro Herrera
34a991619b Update MSVC toolchain to match SGML entity uppercasing
Per Robert Haas
2011-04-04 16:43:15 -04:00
Bruce Momjian
dae1e5546c Add comment to tools/git-external-diff. 2011-03-11 05:06:31 -05:00
Bruce Momjian
9d4625ad0b Add proper git-external-diff script to src/tools. 2011-03-10 18:06:13 -05:00
Andrew Dunstan
a956b16026 Add PL extension files to MSVC Install procedure. 2011-03-05 16:21:37 -05:00
Tom Lane
bfd7f8cbb2 Make plpythonu language use plpython2 shared library directly.
The original scheme for this was to symlink plpython.$DLSUFFIX to
plpython2.$DLSUFFIX, but that doesn't work on Windows, and only
accidentally failed to fail because of the way that CREATE LANGUAGE created
or didn't create new C functions.  My changes of yesterday exposed the
weakness of that approach.  To fix, get rid of the symlink and make
pg_pltemplate show what's really going on.
2011-03-05 15:13:15 -05:00
Tom Lane
63b656b7bf Create extension infrastructure for the core procedural languages.
This mostly just involves creating control, install, and
update-from-unpackaged scripts for them.  However, I had to adjust plperl
and plpython to not share the same support functions between variants,
because we can't put the same function into multiple extensions.

catversion bump forced due to new contents of pg_pltemplate, and because
initdb now installs plpgsql as an extension not a bare language.

Add support for regression testing these as extensions not bare
languages.

Fix a couple of other issues that popped up while testing this: my initial
hack at pg_dump binary-upgrade support didn't work right, and we don't want
an extra schema permissions test after all.

Documentation changes still to come, but I'm committing now to see
whether the MSVC build scripts need work (likely they do).
2011-03-04 21:51:14 -05: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
Alvaro Herrera
a5dfc94c9a Use $INDENT instead of which to find the indent binary
Per discussion after my commit o yesterday.
2011-02-18 12:49:16 -03:00
Alvaro Herrera
c4d124365b Use $INDENT rather than indent throughout the pgindent code
This allows the user to change the path to be used more easily.
Also, change URL in README.
2011-02-17 22:20:19 -03:00
Tom Lane
01ff8dd756 Fix MSVC build scripts for recent extension-related changes.
Untested, but we'll soon see if the buildfarm likes this.
2011-02-14 19:45:46 -05:00
Tom Lane
2ee69ff65d Remove no-longer-needed special case hacks in MSVC build scripts. 2011-02-13 23:42:57 -05:00
Heikki Linnakangas
dafaa3efb7 Implement genuine serializable isolation level.
Until now, our Serializable mode has in fact been what's called Snapshot
Isolation, which allows some anomalies that could not occur in any
serialized ordering of the transactions. This patch fixes that using a
method called Serializable Snapshot Isolation, based on research papers by
Michael J. Cahill (see README-SSI for full references). In Serializable
Snapshot Isolation, transactions run like they do in Snapshot Isolation,
but a predicate lock manager observes the reads and writes performed and
aborts transactions if it detects that an anomaly might occur. This method
produces some false positives, ie. it sometimes aborts transactions even
though there is no anomaly.

To track reads we implement predicate locking, see storage/lmgr/predicate.c.
Whenever a tuple is read, a predicate lock is acquired on the tuple. Shared
memory is finite, so when a transaction takes many tuple-level locks on a
page, the locks are promoted to a single page-level lock, and further to a
single relation level lock if necessary. To lock key values with no matching
tuple, a sequential scan always takes a relation-level lock, and an index
scan acquires a page-level lock that covers the search key, whether or not
there are any matching keys at the moment.

A predicate lock doesn't conflict with any regular locks or with another
predicate locks in the normal sense. They're only used by the predicate lock
manager to detect the danger of anomalies. Only serializable transactions
participate in predicate locking, so there should be no extra overhead for
for other transactions.

Predicate locks can't be released at commit, but must be remembered until
all the transactions that overlapped with it have completed. That means that
we need to remember an unbounded amount of predicate locks, so we apply a
lossy but conservative method of tracking locks for committed transactions.
If we run short of shared memory, we overflow to a new "pg_serial" SLRU
pool.

We don't currently allow Serializable transactions in Hot Standby mode.
That would be hard, because even read-only transactions can cause anomalies
that wouldn't otherwise occur.

Serializable isolation mode now means the new fully serializable level.
Repeatable Read gives you the old Snapshot Isolation level that we have
always had.

Kevin Grittner and Dan Ports, reviewed by Jeff Davis, Heikki Linnakangas and
Anssi Kääriäinen
2011-02-08 00:09:08 +02:00
Bruce Momjian
97116ca417 Rename macro DECIMAL to DECIMAL_T to help pgindent; this is already
done for a few other macros in that file, for other reasons.  I also
remove pgindent/README mention of the file.
2011-02-06 10:48:17 -05:00
Andrew Dunstan
895ad83d70 Attempt to unbreak MSVC builds after pipe.c move. 2011-02-04 20:49:39 -05:00
Robert Haas
356f2cbbb4 Make handling of errcodes.h more consistent with other generated headers.
This fixes make distprep, and seems more robust in other ways as well.
Some special handling is required because errcodes.txt is needed by
some stuff in src/port, but just by src/backend as is the case for the
other generated headers.

While I'm at it, fix a few other things that were overlooked in the
original patch.
2011-02-04 09:29:10 -05: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
9752080942 Exclude sepgsql from MSVC regression testing as well
In passing, change exclusion in the build to follow the
same pattern as other always-excluded modules.
2011-01-24 08:24:31 +01:00
Robert Haas
c26ac226e4 Blind attempt to exclude sepgsql from MSVC build system. 2011-01-23 22:57:32 -05:00
Andrew Dunstan
6c41cf5977 Silence flex warnings about DOS file paths in MSVC builds 2011-01-23 12:24:15 -05:00
Magnus Hagander
048d148fe6 Add pg_basebackup tool for streaming base backups
This tool makes it possible to do the pg_start_backup/
copy files/pg_stop_backup step in a single command.

There are still some steps to be done before this is a
complete backup solution, such as the ability to stream
the required WAL logs, but it's still usable, and
could do with some buildfarm coverage.

In passing, make the checkpoint request optionally
fast instead of hardcoding it.

Magnus Hagander, reviewed by Fujii Masao and Dimitri Fontaine
2011-01-23 12:21:23 +01:00
Magnus Hagander
f5a0fd2f3b Link libpgport into pg_test_fsync on msvc 2011-01-22 18:18:27 +01:00
Bruce Momjian
606a3d54fc Move test_fsync to /contrib. 2011-01-21 12:47:54 -05:00
Bruce Momjian
8995440e38 In test_fsync, adjust test headings to match wal_sync_method values;
add more test cases for open_sync of different sizes.
2011-01-18 15:53:55 -05:00
Bruce Momjian
4acfd43a7d Remove "github test" that somehow got into my tree. Sorry. 2011-01-17 21:40:42 -05:00
Bruce Momjian
2c38cce1be github test 2011-01-17 20:48:49 -05:00
Bruce Momjian
08af45f4ff Add getopt() support to test_fsync; also fix printf() format problem. 2011-01-17 09:36:25 -05:00
Bruce Momjian
e0c274679c In test_fsync, use #define for printf format of ops/sec. 2011-01-16 08:36:43 -05:00
Bruce Momjian
6dc15e3bef Use O_DIRECT in O_SYNC test of different size. Restructure O_DIRECT
error reporting to be more consistent.
2011-01-15 19:40:49 -05:00
Bruce Momjian
3eebb33ddd Reverse number of stars used for test_fsync details. 2011-01-15 18:40:10 -05:00
Bruce Momjian
431605f666 In test_fsync, warn about options without o_direct that are not used by
Postgres, and cases where o_direct does not work with certain file systems.
2011-01-15 18:27:43 -05:00
Bruce Momjian
001d3664e3 Have test_fsync output details that fdatasync is the default
wal_sync_method on Linux.
2011-01-15 15:00:20 -05:00
Bruce Momjian
169516ad93 Restructure test_fync to use modular C so there is less duplicate code
and it can be enhanced easier.
2011-01-15 14:42:48 -05:00
Bruce Momjian
3ab80cfe03 Improve output display of test_fsync. 2011-01-15 12:24:05 -05:00
Bruce Momjian
677b06ca46 Apply patch for test_fsync to add tests for O_DIRECT.
Adjusted patch by Josh Berkus
2011-01-15 11:55:13 -05:00
Magnus Hagander
fcd810c69a Use a lexer and grammar for parsing walsender commands
Makes it easier to parse mainly the BASE_BACKUP command
with it's options, and avoids having to manually deal
with quoted identifiers in the label (previously broken),
and makes it easier to add new commands and options in
the future.

In passing, refactor the case statement in the walsender
to put each command in it's own function.
2011-01-14 16:30:33 +01:00
Magnus Hagander
361418be7c Ensure the directory for gram.h is created on win32
Result of bad testing of my last commit.
2011-01-09 17:01:15 +01:00
Magnus Hagander
3457514c2d Properly install gram.h on MSVC builds
This file is now needed by pgAdmin builds, which started
failing since it was missing in the installer builds.
2011-01-09 15:31:48 +01:00
Magnus Hagander
c0e96b49e5 perltidy run on the MSVC build system
Forgot this with previuos commit, line it up so it's easier to
submit (readable) patches against the MSVC build system.
2011-01-03 10:44:56 +01:00
Bruce Momjian
5d950e3b0c Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
Tom Lane
f79136439f Remove -fno-operator-names switch from cpluspluscheck.
No longer needed now that bitand() and bitor() have been renamed.
2010-12-27 15:03:24 -05:00
Tom Lane
8c61f81b31 Rearrange cpluspluscheck to check just one .h file at a time.
This is slower than the original coding but avoids the problem of
including files in an unpredictable order.  Aside from being more
trustworthy, we can get rid of some exclusions that were formerly
made for what turn out to be ordering or re-inclusion problems.

I also modified it to include libpq's exported files in the check.
ecpg should be included as well, but I'm unclear on which ecpg .h
files are meant to be included by clients.
2010-12-27 12:51:44 -05:00
Tom Lane
a977db6f1c Tweak cpluspluscheck to avoid directly #include'ing gram.h.
gram.h has ordering dependencies, which are satisfied when it's included
from gramparse.h, but might not be if it's pulled in directly.
2010-12-27 11:36:52 -05:00
Magnus Hagander
20f3964291 Add required new port files to MSVC builds. 2010-12-11 14:19:08 +01:00
Bruce Momjian
e6e38b4ac2 Add inet_net_ntop.c as needed by MSVC, per Magnus. 2010-11-26 14:39:13 -05:00
Peter Eisentraut
fc946c39ae Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
Andrew Dunstan
52e2c12288 Attempt to fix MSVC builds broken by parallel make changes. 2010-11-12 22:55:15 -05:00
Peter Eisentraut
19e231bbda Improved parallel make support
Replace for loops in makefiles with proper dependencies.  Parallel
make can now span across directories.  Also, make -k and make -q work
properly.

GNU make 3.80 or newer is now required.
2010-11-12 22:15:16 +02: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
Tom Lane
e77f605d43 Remove excess argument to open(2).
Many compilers don't complain about this, but some do, and it's certainly
wrong.  Back-patch to 8.4 where the error was introduced.

Mark Kirkwood
2010-10-02 18:40:28 -04:00
Andrew Dunstan
f00847dc01 Fix MSVC builds for dummy_seclabel breakage. 2010-09-28 10:00:28 -04:00
Tom Lane
bf429cebd0 Improve git_changelog as per discussion with Robert Haas.
1. Resurrect the behavior where old commits on master will have Branch:
labels for branches sprouted after the commit was made.  I'm still
dubious about this mode, but if you want it, say --post-date or -p.

2. Annotate the Branch: labels with the release or branch in which the
commit was publicly released.  For example, on a release branch you could
see
Branch: REL8_3_STABLE Release: REL8_3_2 [92c3a8004] 2008-03-29 00:15:37 +0000
showing that the fix was released in 8.3.2.  Commits on master will
usually instead have notes like
Branch: master Release: REL8_4_BR [6fc9d4272] 2008-03-29 00:15:28 +0000
showing that this commit is ancestral to release branches 8.4 and later.
If no Release: marker appears, the commit hasn't yet made it into any
release.

3. Add support for release branches older than 7.4.

4. The implementation is improved by running git log on each branch only
back to where the branch sprouts from master.  This saves a good deal
of time (about 50% of the runtime when generating the complete history).
We generate the post-date-mode tags via a direct understanding that
they should be applied to master commits made before the branch sprouted,
rather than backing into them via matching (which isn't any too
reliable when people used identical log messages for successive commits).
2010-09-26 20:22:17 -04:00
Tom Lane
899beb7894 Still more tweaking of git_changelog.
1. Don't assume there's only one candidate match; check them all and use the
one with the closest timestamp.  Avoids funny output when someone makes
several successive commits with the same log message, as certain people
have been known to do.

2. When the same commit (with the same SHA1) is reachable from multiple
branch tips, don't report it for all the branches; instead report it only
for the first such branch.  Given our development practices, this case
arises only for commits that occurred before a given branch split off from
master.  The original coding blamed old commits on *all* the branches,
which isn't terribly useful; the new coding blames such a commit only on
master.
2010-09-26 01:51:20 -04:00
Tom Lane
30d2e10058 Fix some more bugs in git_changelog.
1. Don't forget the last (oldest) commit on the oldest branch.

2. When considering which commit to print next, if two alternatives have
the same "distortion" score (which is actually the normal case, since
generally the "distortion" is 0), then choose the later timestamp to
print first.  I don't know where Robert got the idea to ignore timestamps
and sort by branch age, but it wasn't a good idea: the resulting ordering
of commits was just plain bizarre anywhere that some branches had many
fewer commits than others, which is the typical situation for us.
2010-09-26 00:21:51 -04:00
Tom Lane
901a5a786f Minor improvements to git_changelog.
Avoid depending on Date::Calc, which isn't in a basic Perl installation,
when we can equally well use Time::Local which is.  Also fix the parsing
of timestamps to take heed of the timezone.  (It looks like cvs2git emitted
all commit timestamps with zone GMT, so this refinement might've looked
unnecessary when looking at converted data; but it's needed now.)

Fix parsing of message bodies so that blank lines that may or may not get
emitted by "git log" aren't confused with real data.  This avoids strange
formatting of the oldest commit on a branch.

Check child-process exit status, so that we actually notice if "git log"
fails, and so that we don't accumulate zombie children.
2010-09-25 20:50:57 -04:00
Tom Lane
ce1dcd468f Rename git_topo_order -> git_changelog, per discussion. 2010-09-25 19:31:26 -04:00
Tom Lane
651377933e Fix remaining stray references to CVS.
These are just cosmetic and don't seem worth back-patching far.
I put them into 9.0 just because it was trivial to do so.
2010-09-22 19:51:39 -04:00
Tom Lane
38d78b0f41 pgcvslog isn't useful anymore, either.
See git_topo_order instead.
2010-09-21 17:45:55 -04:00
Tom Lane
7dcc4e75d5 add_cvs_markers isn't useful anymore. 2010-09-21 17:40:24 -04:00
Robert Haas
8f00f73dc2 Remove various mentions of CVS from src/tools/RELEASE_CHANGES. 2010-09-21 06:59:30 -04:00
Robert Haas
1b984d43e5 git_topo_order script, to match up commits across branches.
This script is intended to substitute for cvs2cl in generating release
notes and scrutinizing what got back-patched to which branches.

Script by me.  Support for --since by Alex Hunsaker.
2010-09-21 06:58:42 -04:00
Magnus Hagander
9f2e211386 Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
Heikki Linnakangas
2746e5f21d Introduce latches. A latch is a boolean variable, with the capability to
wait until it is set. Latches can be used to reliably wait until a signal
arrives, which is hard otherwise because signals don't interrupt select()
on some platforms, and even when they do, there's race conditions.

On Unix, latches use the so called self-pipe trick under the covers to
implement the sleep until the latch is set, without race conditions. On
Windows, Windows events are used.

Use the new latch abstraction to sleep in walsender, so that as soon as
a transaction finishes, walsender is woken up to immediately send the WAL
to the standby. This reduces the latency between master and standby, which
is good.

Preliminary work by Fujii Masao. The latch implementation is by me, with
helpful comments from many people.
2010-09-11 15:48:04 +00:00
Peter Eisentraut
3f11971916 Remove extra newlines at end and beginning of files, add missing newlines
at end of files.
2010-08-19 05:57:36 +00:00
Bruce Momjian
bae8283557 Print each test_fsync description while test is running, rather than at
the end.
2010-07-13 17:00:50 +00:00
Bruce Momjian
5a3489357f Document bump of minor library version numbers. 2010-07-12 16:21:51 +00:00
Tom Lane
b40466c337 Stamp HEAD as 9.1devel.
(And there was much rejoicing.)
2010-07-09 04:10:58 +00:00
Bruce Momjian
9e15b476de Mention why one C file fails pgindent. 2010-07-06 19:26:28 +00:00
Bruce Momjian
239d769e7e pgindent run for 9.0, second run 2010-07-06 19:19:02 +00:00
Bruce Momjian
52783b212c Update pgindent testing instructions. 2010-07-06 19:18:19 +00:00
Tom Lane
291a957745 Split the LDFLAGS make variable into two parts: LDFLAGS is now used for
linking both executables and shared libraries, and we add on LDFLAGS_EX when
linking executables or LDFLAGS_SL when linking shared libraries.  This
provides a significantly cleaner way of dealing with link-time switches than
the former behavior.  Also, make sure that the various platform-specific
%.so: %.o rules incorporate LDFLAGS and LDFLAGS_SL; most of them missed that
before.  (I did not add these variables for the platforms that invoke $(LD)
directly, however.  It's not clear if we can do that safely, since for the
most part we assume these variables use CC command-line syntax.)

Per gripe from Aaron Swenson and subsequent investigation.
2010-07-05 18:54:38 +00:00
Bruce Momjian
2330d9c147 Simplify test_fsync duration computation. 2010-07-04 13:42:51 +00:00
Bruce Momjian
7341a8cab2 Report test_fynsc times in tests per second, instead of total seconds. 2010-07-04 01:50:29 +00:00
Andrew Dunstan
97301ab189 Unbreak MSVC builds by removing copydir.c from list of libpgport files 2010-07-02 23:25:27 +00:00
Andrew Dunstan
540113dc96 Unbreak MSVC builds for pg_archivecleanup by linking with libpgport 2010-06-15 12:48:36 +00:00
Andrew Dunstan
2a73ee59db Fix MSVC builds for recent plperl changes. Go back to version 8.2, which is
where we started supporting MSVC builds.

Security: CVE-2010-1169
2010-05-13 21:33:00 +00:00
Magnus Hagander
12bc72db60 Properly support multi-line entires (such as OBJS=) when building
PROGRAM, not just MODULE, in contrib.
2010-05-13 15:56:22 +00:00
Andrew Dunstan
52d0b49f5e Add missing library and include support for pg_upgrade to MSVC build system. 2010-05-13 13:40:03 +00:00
Robert Haas
33980a0640 Fix various instances of "the the".
Two of these were pointed out by Erik Rijkers; the rest I found.
2010-04-23 23:21:44 +00:00
Magnus Hagander
17056e054e Add script to enumerate the timezones in the Windows registry and compare
it with the list we have in pgtz.c, showing any differences.
2010-04-15 11:00:45 +00: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
7004434a46 Exclude unwanted typedef symbols in pgindent, including FD_SET which is found on some Windows platforms. Also, silence unnecessary messages and make awk happier about literal '*' on some platforms. 2010-04-05 03:09:09 +00:00
Andrew Dunstan
799c0d3f65 Use a file of patterns of filenames to exclude from pgindent runs, instead if using multiple invocations of egrep. Add perl ppport.h to the current list. 2010-04-01 14:44:39 +00:00
Michael Meskes
075d44120f Adding special command line option that is now needed for the one ecpg regression test that was changed. 2010-03-21 14:26:58 +00:00
Bruce Momjian
d154a857ba Mention way to get commit details for release notes. 2010-03-18 16:31:12 +00:00
Tom Lane
324505af01 Update oidjoins regression test for 9.0. 2010-03-14 04:17:54 +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
4ab911da74 Do not run regression tests for contrib/xml2 on MSVC unless building with XML 2010-03-02 17:06:51 +00:00
Andrew Dunstan
5600aaccbd Add XSLT defines for MSVC builds 2010-03-02 12:29:14 +00:00
Bruce Momjian
4b0f822c77 Suggest gmake installcheck-world for pgindent testing. 2010-02-26 18:00:15 +00:00
Bruce Momjian
2cc6ff45f8 Revert pgindent changes to ecpg include files that are part of ecpg
regession test output, and update pgindent script to avoid them in the
future.
2010-02-26 17:07:55 +00:00
Bruce Momjian
98c356c8ad Wording improvements to README. 2010-02-26 15:57:34 +00:00
Bruce Momjian
55d1402f61 Update pgindent docs to use maintainer-clean. 2010-02-26 15:42:36 +00:00
Bruce Momjian
e0d4b9c66f Document why pgindent wants a fresh CVS checkout. 2010-02-26 13:50:34 +00:00
Bruce Momjian
637611585b Call output file typedefs.list; update README. 2010-02-26 02:58:49 +00:00
Bruce Momjian
4f96ddd1d3 Update pgindent instructions. 2010-02-26 02:11:52 +00:00
Bruce Momjian
65e806cba1 pgindent run for 9.0 2010-02-26 02:01:40 +00:00
Bruce Momjian
16040575a0 Add pgindent typedefs file to CVS. 2010-02-26 01:55:35 +00:00
Bruce Momjian
a8307560e0 Update pgindent instructions to avoid changes to flex output files. 2010-02-26 01:40:15 +00:00
Tom Lane
50a90fac40 Stamp HEAD as 9.0devel, and update various places that were referring to 8.5
(hope I got 'em all).  Per discussion, this release will be 9.0 not 8.5.
2010-02-17 04:19:41 +00:00
Magnus Hagander
ec86ef7a21 Fix another stupid typo...
Jan Urbanski
2010-02-15 17:10:50 +00:00
Magnus Hagander
a05af1d404 Make the msvc build system ask python about details of version and installation
prefix, instead of assuming it will always be following the default layout.

All information we need is not available on Windows, but the number of
assumptions are at least fewer this way than before.

Based on suggestions from James William Pye.
2010-02-14 14:10:23 +00:00
Heikki Linnakangas
55d877184e Adjust MSVC build script too, now that the walreceiver dynamic module
has been renamed.
2010-01-20 09:22:43 +00:00
Andrew Dunstan
60e2fdf092 Fix typo in Mkvcbuild.pl 2010-01-20 04:29:07 +00:00
Andrew Dunstan
3d3616cc2f Build plperl's new Util.xs 2010-01-20 04:14:06 +00:00
Magnus Hagander
ee3b4188a7 Add include directory for dblink to find fmgroids.h on VS2008 builds. 2010-01-17 13:21:50 +00:00
Magnus Hagander
40b91b3a8d Build the walreceiver library on MSVC as well. 2010-01-16 11:55:38 +00:00
Andrew Dunstan
ccaad19112 remove use of temp file for perlchunks.h, as in recent change to plperl GNUmakefile 2010-01-11 14:16:18 +00:00
Andrew Dunstan
510f3502eb Provide regression testing for plperlu, and for plperl+plperlu interaction.
The latter are only run if the platform can run both interpreters in the
same backend.
2010-01-09 15:25:41 +00:00
Andrew Dunstan
0346442b5d Build perlchunks.h for plperl on MSVC 2010-01-09 14:45:47 +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
Magnus Hagander
04de9be910 Disable linker warning 4197 on Win64, that is caused by the fact that we export
symbols both using __declspec(dllexport) (via the PGDLLIMPORT macro) and using
full-dll-export. This works without warning on Win32, but not on Win64.

In passing, fix the fact that the framework could never deal with more than
one disbled linker warning - because MSVC wants commas between linker warnings,
and semicolons between compiler warnings...
2010-01-05 11:12:50 +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
Bruce Momjian
0239800893 Update copyright for the year 2010. 2010-01-02 16:58:17 +00:00
Magnus Hagander
8292079ad3 Silence compiler warning about size of size_t being larger than the result
variable it's stored in. We know this can never happen. Per discussion.
2010-01-02 15:18:42 +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
5069e959b0 Delete solution cache file on clean, if it exists. 2010-01-01 16:58:53 +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
Tom Lane
d37cda2c0c plpgsql patch broke the MSVC build, too. 2009-12-19 02:44:06 +00:00
Magnus Hagander
7aeaa97de2 Add notes about updating disk and shared memory size information in the
documentation when doing new major release.
2009-12-09 17:03:30 +00:00
Bruce Momjian
017c47bf51 test_fsync:
Improve test descriptions displayed during test_fsync;  increase default
loops to 5k.
2009-11-28 15:04:54 +00:00
Tom Lane
2dee828cac Remove plpgsql's separate lexer (finally!), in favor of using the core lexer
directly.  This was a lot of trouble, but should be worth it in terms of
not having to keep the plpgsql lexer in step with core anymore.  In addition
the handling of keywords is significantly better-structured, allowing us to
de-reserve a number of words that plpgsql formerly treated as reserved.
2009-11-12 00:13:00 +00:00
Peter Eisentraut
b1e71e8f35 Update translation updating procedure. This pertains to some changes I
made to automatically exclude translations below the 80% minimum.
2009-10-20 18:22:19 +00:00
Tom Lane
f3aec2c7f5 Support "samehost" and "samenet" specifications in pg_hba.conf,
by enumerating the machine's IP interfaces to look for a match.

Stef Walter
2009-10-01 01:58:58 +00:00
Tom Lane
3686bcb9c9 Ooops, fix to Genbki.pm for ROWTYPE_OID wasn't quite right. Also, make a few
spacing tweaks so it produces exactly the same output as genbki.sh.
2009-09-27 02:14:04 +00:00
Tom Lane
4985635230 Extend the BKI infrastructure to allow system catalogs to be given
hand-assigned rowtype OIDs, even when they are not "bootstrapped" catalogs
that have handmade type rows in pg_type.h.  Give pg_database such an OID.
Restore the availability of C macros for the rowtype OIDs of the bootstrapped
catalogs.  (These macros are now in the individual catalogs' .h files,
though, not in pg_type.h.)

This commit doesn't do anything especially useful by itself, but it's
necessary infrastructure for reverting some ill-considered changes in
relcache.c.
2009-09-26 22:42:03 +00:00
Bruce Momjian
c6bc0feb00 fsync test files
Prevent creation of 16GB files during fsync testing; only create 16MB
files;  backpatch to 8.4.X.
2009-09-21 20:20:56 +00:00
Andrew Dunstan
7ef5ffdeaf Fix MSVC build breakage from psql help changes. Per Josh Williams. 2009-09-19 05:56:50 +00:00
Bruce Momjian
585806cb9f Remove handling of CVS entries for TODO/FAQ, because they are removed
now.
2009-08-29 17:09:20 +00:00
Tom Lane
e59686f029 Fix version_stamp.pl to allow 'alphaN' version stamps. Not sure how
Peter did that without fixing this ...
2009-08-19 15:03:56 +00:00
Andrew Dunstan
514c3f19a2 Pick up REGRESS_OPTS from contrib makefiles. Along the way, fix ordering of makefile tests to mimic gmake. 2009-08-18 22:36:56 +00:00
Bruce Momjian
933b17b663 Adjust test_fsync code to be more sane.
Backpatch to 8.4.X.
2009-08-10 18:19:06 +00:00
Peter Eisentraut
7798147a76 Expand test coverage support to entire tree
Test coverage support now covers the entire source tree, including
contrib, instead of just src/backend.  In a related but independent
development, the commands make coverage and make coverage-html can be run
in any directory.

This turned out to be much easier than feared.  Besides a few ad hoc fixes
to pass the make target down the tree, change all affected makefiles to
list their directories in the SUBDIRS variable, changed from variants like
DIRS and WANTED_DIRS.  MSVC build fix was attempted as well.
2009-08-07 20:50:22 +00:00
Magnus Hagander
220e36c97f Enable the use of multiple CPUs/cores when building on MSVC. This only
affects the C compiler step - we still only build one target at a
time.
2009-07-27 07:11:15 +00:00
Peter Eisentraut
f7ad9cab30 Add a further customization to the SGML Emacs mode to prevent the use of
tabs in the documentation source.
2009-07-21 19:07:24 +00:00
Tom Lane
c43feefa80 Add erand48() to the set of functions supported by our src/port/ library,
and extend configure to test for it properly instead of hard-wiring
an assumption that everybody but Windows has the rand48 functions.
(We do cheat to the extent of assuming that probing for erand48 will do
for the entire rand48 family.)

erand48() is unused as of this commit, but a followon patch will cause
GEQO to depend on it.

Andres Freund, additional hacking by Tom
2009-07-16 17:43:52 +00:00
Peter Eisentraut
de160e2c00 Make backend header files C++ safe
This alters various incidental uses of C++ key words to use other similar
identifiers, so that a C++ compiler won't choke outright.  You still
(probably) need extern "C" { }; around the inclusion of backend headers.

based on a patch by Kurt Harriman <harriman@acm.org>

Also add a script cpluspluscheck to check for C++ compatibility in the
future.  As of right now, this passes without error for me.
2009-07-16 06:33:46 +00:00
Tom Lane
f4ab0b032b Stamp HEAD as 8.5devel. 2009-07-01 23:15:55 +00:00
Bruce Momjian
838d74d0ce Tighten typedef check for Linux. 2009-06-12 03:09:07 +00:00
Bruce Momjian
1ef4eeef65 Mention BSD/OS find_typedef behavior. 2009-06-12 03:04:48 +00:00
Bruce Momjian
6e8d957d35 Document struct/union problem with pgindent. 2009-06-11 22:21:44 +00:00
Bruce Momjian
d747140279 8.4 pgindent run, with new combined Linux/FreeBSD/MinGW typedef list
provided by Andrew.
2009-06-11 14:49:15 +00:00
Bruce Momjian
4e86efb4e5 Add FreeBSD support for find_typedef, per request from Andrew. 2009-06-11 03:14:08 +00:00
Bruce Momjian
09cba66235 Fix Linux typedef code. 2009-06-10 15:13:45 +00:00
Bruce Momjian
f371fda397 Fix BSD find_typedef logic. 2009-06-10 03:38:32 +00:00
Bruce Momjian
6c4b3f5f8c Update pgindent instructions. 2009-06-10 01:51:44 +00:00
Bruce Momjian
78f3c3906e Document new location for typedef list. 2009-06-10 01:47:59 +00:00
Andrew Dunstan
8b78428fc0 Search for versioned perl library instead of using hardcoded name on Windows. Backpatch to release 8.3 2009-06-05 18:29:56 +00:00
Peter Eisentraut
65ffbbf1a5 Fix sgml-mode example. thanks Andrew Dunstan 2009-05-20 23:51:24 +00:00
Peter Eisentraut
939a40b0af Add some instructions on how to customize emacs for working on the SGML
sources.
2009-05-18 12:47:44 +00:00
Bruce Momjian
d0ab409eae Add missing third argument to open(). 2009-05-08 14:06:27 +00:00
Peter Eisentraut
ffbd17e73e Replace a couple of references to files that no longer exist in the source
tree with references to the appropriate URLs.

Robert Haas
2009-05-04 08:08:47 +00:00
Tom Lane
a16e007c92 We don't need major_release_split any more. 2009-05-02 20:28:17 +00:00
Heikki Linnakangas
cfb61be9cf Clean up check_keywords.pl script, making it 'strict' and removing a few
leftover unused variables.

Laurent Laborde
2009-04-30 10:26:35 +00:00
Heikki Linnakangas
19499bf99a Add check_keyword.pl script to perform some basic sanity checks to the
keyword lists in gram.y and kwlist.h. It checks that all lists are in
alphabetical order, and that all keywords present in gram.y are listed
in kwlist.h in the right category, and that all keywords in kwlist.h are
also in gram.y. What's still missing is to check that all keywords
defined  with "%token <keyword>" in gram.y are present in one of the
keyword lists in gram.y.
2009-04-29 05:05:57 +00:00
Magnus Hagander
02dec25003 Read nls.nk files to determine the proper name of NLS catalogs to install.
Hiroshi Inoue, with minor modifications by me
2009-04-20 08:38:00 +00:00
Bruce Momjian
f9578e179a No more need to update FAQs. 2009-04-09 21:50:31 +00:00
Peter Eisentraut
f71a0523f9 Add URL for config.guess/sub updates 2009-04-09 21:35:33 +00:00
Magnus Hagander
2762e5555c Support Perl 5.10 and TCL 8.5 in MSVC builds.
We should probably have a better way to do this (meaning
something not hardcoded) eventually, but this fixes the
problem for 8.4.

Dave Page
2009-04-07 19:35:57 +00:00
Magnus Hagander
ace2b067d5 Fix MSVC build for new ways to pull in keywords.c and kwlookup.c. 2009-03-08 19:13:38 +00:00
Magnus Hagander
59a64e381c Remove references to foreign data wrapper libraries, since they have
been removed. This should unbreak the msvc build again.
2009-02-25 17:42:19 +00:00
Magnus Hagander
0154345078 Make win32 builds always do SetEnvironmentVariable() when doing putenv().
Also, if linked against other versions than the default MSVCRT library
(for example the MSVC build which links against MSVCRT80), also update
the cache in the default MSVCRT at the same time.

This should fix the issues with setting LC_MESSAGES on the MSVC build.

Original patch from Hiroshi Inoue and Hiroshi Saito, much rewritten
by me.
2009-01-21 10:30:02 +00:00
Magnus Hagander
477c5d3b0d Install .mo files for NLS as <program>-<version>.mo when building with MSVC
as well. Same change as made earlier for autoconf builds.

Per Hiroshi Inoue.
2009-01-21 09:25:11 +00:00
Bruce Momjian
6faf495b8a Make 'find' syntax consistent; add .git exclusion to make_ctags. 2009-01-14 21:59:19 +00:00
Peter Eisentraut
c82b63a54f Avoid version-control system directories when creating TAGS. Besides
being wasteful, this can collide with repostory metadata on case-insensitive
file sytems.
2009-01-14 21:28:32 +00:00
Peter Eisentraut
03b4fc7240 Remove useless (and insecure) temp file handling. 2009-01-13 19:32:29 +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
Bruce Momjian
65deb13436 Be smarter --- accept missing comma, and force comma if missing. 2009-01-01 18:31:55 +00:00
Bruce Momjian
34273b44a6 Mention src/interfaces/libpq/libpq.rc.in needs to be updated for
copyright too.
2009-01-01 18:23:10 +00:00
Bruce Momjian
c4eaa9672a Make comma optional for copyright text change. 2009-01-01 18:21:56 +00:00
Bruce Momjian
511db38ace Update copyright for 2009. 2009-01-01 17:24:05 +00:00
Magnus Hagander
4fc6e2fdcf Teach MSVC build system about building foreign data wrappers.
Should fix recent buildfarm breakage.
2008-12-20 22:04:02 +00:00
Andrew Dunstan
04ecc64310 Attempt to fix MSVC breakage from Major Version patch. 2008-12-16 15:42:21 +00:00
Magnus Hagander
2c69fa0c38 Change wildcard cerfificate mapping to be much simler - we now only match
the * character at the beginning of a pattern, and it does not match
subdomains.

Since this means we no longer need fnmatch, remove the imported implementation
from port, along with the autoconf check for it.
2008-12-02 10:39:31 +00:00
Tom Lane
3191ab5dcc Remove the last traces of --temp-port. 2008-12-01 13:39:45 +00:00
Tom Lane
2a6108ac24 Partial fix for fallout from temp-port changes. ecpg still needs more work,
but I think this is enough to turn the buildfarm green again.
2008-11-28 23:47:51 +00:00
Magnus Hagander
cb10467d30 Add support for matching wildcard server certificates to the new SSL code.
This uses the function fnmatch() which is not available on all platforms
(notably Windows), so import the implementation from NetBSD into src/port.
2008-11-24 09:15:16 +00:00
Magnus Hagander
772eedb6bb Exclude contrib/intagg from the list of MSVC project files to be generated,
since it's now just a SQL module and no C code.
2008-11-14 22:12:37 +00:00
Michael Meskes
b78f9b496d Enable script to generate preproc.y in build process. 2008-11-14 17:11:40 +00:00
Bruce Momjian
06c22d7f51 Small shell syntax improvement. 2008-11-03 15:56:47 +00:00
Tom Lane
d6dfa1e6c6 Update oidjoins test to match CVS HEAD. 2008-10-13 12:59:57 +00:00
Tom Lane
556dfb5e06 Fix bogus comment emitted by make_oidjoins_check, per Greg Stark. 2008-10-13 12:59:29 +00:00
Bruce Momjian
a6586c0dc1 Improve backend flowchart to show more detail. 2008-10-07 00:19:48 +00:00
Tom Lane
dad4215d0a Experimental patch to see if it fixes MSVC builds ... 2008-10-06 02:55:20 +00:00
Tom Lane
32f159cc55 Add an "events" system to libpq, whereby applications can get callbacks that
enable them to manage private data associated with PGconns and PGresults.

Andrew Chernow and Merlin Moncure
2008-09-17 04:31:08 +00:00
Bruce Momjian
f536f74ade Add Win32 MSVC code to support this recent patch:
Add missing descriptions for aggregates, functions and conversions.

Bernd Helmle
2008-09-05 16:54:39 +00:00
Tom Lane
b8f5ea7685 Fix (hopefully) some oversights in recent Bison cleanup patch.
Per buildfarm results.
2008-08-30 02:32:24 +00:00
Peter Eisentraut
7c31742a07 Remove all traces that suggest that a non-Bison yacc might be supported, and
change build system to use only Bison.  Simplify build rules, make file names
uniform.  Don't build the token table header file where it is not needed.
2008-08-29 13:02:33 +00:00
Bruce Momjian
3c35de85e7 Remove tools and documention for generating TODO.html. 2008-08-20 18:22:28 +00:00
Magnus Hagander
f434ebaa9a Properly remove src\include\utils\probes.h when running clean.bat. 2008-08-18 13:42:49 +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
4b362c662e Avoid substituting NAMEDATALEN, FLOAT4PASSBYVAL, and FLOAT8PASSBYVAL into
the postgres.bki file during build, because we want that file to be entirely
platform- and configuration-independent; else it can't safely be put into
/usr/share on multiarch machines.  We can do the substitution during initdb,
instead.  FLOAT4PASSBYVAL and FLOAT8PASSBYVAL are new breakage as of 8.4,
while the NAMEDATALEN hazard has been there all along but I guess no one
tripped over it.  Noticed while trying to build "universal" OS X binaries.
2008-07-19 04:01:29 +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
2ac64dba44 Prevent CVS from mangling script 2008-06-15 21:58:55 +00:00
Andrew Dunstan
3f850cbdc5 Add script to find .c and .h files that are missing CVS PostgreSQL markers
and add them. Avoids third party files or those that would cause regression
failures.
2008-06-15 21:46:02 +00:00
Tom Lane
99b8ebec64 Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
2008-06-10 18:08:48 +00:00
Tom Lane
bf4bd50ff7 Copy refint.so and autoinc.so into the src/test/regress directory during
"make all", and then reference them there during the actual tests.  This
makes the handling of these files more parallel to that of regress.so,
and in particular simplifies use of the regression tests outside the
original build tree.  The PGDG and Red Hat RPMs have been doing this via
patches for a very long time.  Inclusion of the change in core was requested
by Jørgen Austvik of Sun, and I can't see any reason not to.

I attempted to fix the MSVC scripts for this too, but they may need
further tweaking ...
2008-05-30 00:04:32 +00:00
Michael Meskes
d82e7c84fa Link in keywords file instead of copying it.
Use #define/#ifdef instead of sed to fix include files, this should work on Windows too.
2008-05-21 19:51:01 +00:00
Magnus Hagander
42ad6631cd Add include directory required after the latest changes to the ecpg build.
Per red Windows buildfarm members.
2008-05-21 18:15:29 +00:00
Andrew Dunstan
53972b460c Add $PostgreSQL$ markers to a lot of files that were missing them.
This particular batch was just for *.c and *.h file.

The changes were made with the following 2 commands:

find . \( \( -name 'libstemmer' -o -name 'expected' -o -name 'ppport.h' \) -prune \) -o  \( -name '*.[ch]'  \) \( -exec grep -q '\$PostgreSQL' {} \; -o -print \) | while read file ; do head -n 1 < $file | grep -q '^/\*' && echo $file; done | xargs -l sed -i -e '1s/^\// /' -e '1i/*\n * $PostgreSQL:$ \n *'

find . \( \( -name 'libstemmer' -o -name 'expected' -o -name 'ppport.h' \) -prune \) -o  \( -name '*.[ch]'  \) \( -exec grep -q '\$PostgreSQL' {} \; -o -print \) | xargs -l sed -i -e '1i/*\n * $PostgreSQL:$ \n */'
2008-05-17 01:28:26 +00:00
Andrew Dunstan
a86a9bf9fe Remaining pieces of fix for contrib makefiles 2008-05-10 15:30:11 +00:00
Andrew Dunstan
3159040627 Improve logic for finding object files on OBJS lines in contrib Makefiles. If this unbreaks buildfarm mastodon, apply everywhere. 2008-05-09 16:01:05 +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
Bruce Momjian
a256ea5088 FAQ2txt now only controls the main FAQ, not FAQ_DEV. 2008-04-22 10:30:32 +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
Tom Lane
8472bf7a73 Allow float8, int8, and related datatypes to be passed by value on machines
where Datum is 8 bytes wide.  Since this will break old-style C functions
(those still using version 0 calling convention) that have arguments or
results of these types, provide a configure option to disable it and retain
the old pass-by-reference behavior.  Likewise, provide a configure option
to disable the recently-committed float4 pass-by-value change.

Zoltan Boszormenyi, plus configurability stuff by me.
2008-04-21 00:26:47 +00:00
Bruce Momjian
6e884662a1 Update doc script comments. 2008-04-19 12:52:51 +00:00
Bruce Momjian
c610615563 Add script FAQ2txt to convert HTML files to txt. Add comment to TODO2html. 2008-04-19 12:42:35 +00:00
Bruce Momjian
54208a3272 Add TODO2html tool to convert TODO to HTML. 2008-04-19 12:34:54 +00:00
Bruce Momjian
d18f5c3eb0 Ignore blank lines in typedef file. 2008-04-16 21:03:08 +00:00
Andrew Dunstan
e8d11ade56 Avoid using unnecessary pgwin32_safestat in libpq. 2008-04-16 14:19:56 +00:00
Andrew Dunstan
2b8a795738 Add multi-line flag to regex that needs it. Backpatch to 8.2. Fix from Andreas Zeugswetter 2008-04-15 16:22:36 +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
Magnus Hagander
bb6f1eb9df Make integer_datetimes the default on msvc as well, to have the same
default as other platforms.
2008-04-08 07:50:41 +00:00
Bruce Momjian
fca9fff41b More README src cleanups. 2008-03-21 13:23:29 +00:00
Andrew Dunstan
458c585697 Generate dummy probes.h for MSVC builds. 2008-03-21 02:50:02 +00:00
Bruce Momjian
af7680f668 Add find_typedef comments for Linux. 2008-03-18 23:23:08 +00:00
Bruce Momjian
0939946a5e Add find_typedef comment. 2008-03-18 23:04:34 +00:00
Bruce Momjian
61d416e3b2 Add Linux support to find_typedefs, with help from Alvaro. 2008-03-18 22:45:11 +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
66c80bfd98 Un-break msvc port yet again (it started pulling in the Darwin
port files, which obviously didn't compile)
2008-02-19 16:15:14 +00:00
Magnus Hagander
fae032c9fc Unbreak MSVC build after recent addition of HTMLDIR. 2008-02-19 12:00:03 +00:00
Tom Lane
cd00406774 Replace time_t with pg_time_t (same values, but always int64) in on-disk
data structures and backend internal APIs.  This solves problems we've seen
recently with inconsistent layout of pg_control between machines that have
32-bit time_t and those that have already migrated to 64-bit time_t.  Also,
we can get out from under the problem that Windows' Unix-API emulation is not
consistent about the width of time_t.

There are a few remaining places where local time_t variables are used to hold
the current or recent result of time(NULL).  I didn't bother changing these
since they do not affect any cross-module APIs and surely all platforms will
have 64-bit time_t before overflow becomes an actual risk.  time_t should
be avoided for anything visible to extension modules, however.
2008-02-17 02:09:32 +00:00
Alvaro Herrera
3a1bd025ba Update minor version bumping policy. 2008-02-13 21:09:24 +00:00
Bruce Momjian
4588fc47c1 As sub-bullet decoration. 2008-02-13 18:30:21 +00:00
Bruce Momjian
812716e35b Update wording for minor library bumping. 2008-02-13 18:29:08 +00:00
Bruce Momjian
c28d1b9eb9 No longer necessary:
o update ecpg regression expected files for new library number
2008-02-13 18:10:23 +00:00
Magnus Hagander
1f6fc49ce3 Fix msvc install for cases where msgfmt (from gettext) is in a directory
that contains spaces.

Per complaint from Gevik Babakhani, like the last one.
2008-02-07 17:58:16 +00:00
Magnus Hagander
26351d1c74 Fix msvc install script to properly install NLS files when built with
gettext.
2008-02-07 13:49:00 +00:00
Magnus Hagander
8d363727f4 Fix very broken clean.bat for msvc install. The way we used subroutines
in .bat simply did not work, and it called them in the wrong order,
some several times, and some not at all. So this unrolls all subroutine
calls.

This should fix the issues with clean deleting the wrong files reported
by Dave Page.

While at it, add the "clean dist" option to act like "make distclean",
and no longer remove the flex/bison output files by default. This shuold
fix the problem reported by Pavel Golub in bug #3909.
2008-02-06 15:13:25 +00:00
Magnus Hagander
03e4dc9ef2 Handle libraries in directories with spaces in them.
Gevik Babakhani
2008-02-05 14:17:23 +00:00
Andrew Dunstan
7ae43187ee Remove 3 hex digit limit on symbol number in recent fix. 2008-01-31 16:30:24 +00:00
Andrew Dunstan
0a4ef62bf8 Fix test that wrongly excluded some dumpbin symbols.
Keep the intermediate symbol file rather then blowing it away, for easier debugging.
2008-01-31 03:26:14 +00:00
Peter Eisentraut
79a323ab49 Change /contrib to contrib for consistency. 2008-01-24 06:23:33 +00:00
Bruce Momjian
bfde21a1a8 Improve usage message for pgindent. 2008-01-16 20:13:44 +00:00
Bruce Momjian
f7d22658e6 Mention use of src/tools/major_release_split for creating back-branch
release notes.
2008-01-07 22:05:27 +00:00
Bruce Momjian
be6c3b5c2b Modify copyright script to handle cases where there is only one year
in the copyright
2008-01-02 02:36:18 +00:00
Bruce Momjian
9098ab9e32 Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
Bruce Momjian
012786aa1e Update find_typedefs to handle simple 'typedef X' cases, per request
from Tom.
2007-12-21 21:02:41 +00:00
Bruce Momjian
7b009a2a9d Modify pgindent to use an external typedefs file rather than included
list.

Remove pgjindent.
2007-12-21 14:20:36 +00:00
Magnus Hagander
1b1f7e977b Remove unnecessary logo output from msbuild when cleaning ecpg regression
test outputs.
2007-12-19 12:31:35 +00:00
Magnus Hagander
0a6ac0085c Make all msvc build scripts use buildenv.pl, not buildenv.bat.
Andrew Dunstan
2007-12-19 12:29:36 +00:00
Bruce Momjian
812bf6984b Mention use all configure options when getting pgindent typedefs. 2007-12-17 02:02:48 +00:00
Bruce Momjian
55cfdd4400 Mention installing /contrib libraries for pgindent. 2007-12-17 01:56:43 +00:00
Bruce Momjian
cede2491b8 Mark items needing updating for beta stamping. 2007-12-13 02:02:20 +00:00
Magnus Hagander
22867ab986 Use _USE_32BIT_TIME_T when building with MSVC. Also, enforce that it's
used when building addons.

Dave Page
2007-12-11 14:34:43 +00:00
Magnus Hagander
a0c4ac77ad Disable asserts by default on msvc build (to make it the same
as in unix)
2007-12-06 17:07:37 +00:00
Magnus Hagander
739338e88a Default to integer timestamps being off until 8.4, to correspond
to the settings used for other platforms.
2007-12-03 17:17:05 +00:00
Magnus Hagander
8aa318c631 Don't try to install README.spi
Hannes Eder
2007-12-03 15:42:58 +00:00
Bruce Momjian
d6fda1b0bb Better guard token used by pgindent. 2007-11-16 01:25:15 +00:00
Bruce Momjian
0c2c061eb0 Cleanup for new else/comment handling. 2007-11-16 01:11:04 +00:00
Bruce Momjian
7d4c99b414 Fix pgindent to properly handle 'else' and single-line comments on the
same line;  previous fix was only partial.  Re-run pgindent on files
that need it.
2007-11-15 23:23:44 +00:00
Bruce Momjian
da0b2cdff8 Beef up README instructions, again. 2007-11-15 22:15:46 +00:00
Bruce Momjian
6c8f69cd58 CUpdate README to suggest 'gmake distclean'. Add library typedefs. 2007-11-15 22:12:09 +00:00
Bruce Momjian
2a754d70d7 Update pgtools README to be clearer about typdefs. 2007-11-15 22:09:07 +00:00
Bruce Momjian
ab895f3b40 Update pgindent with current typedefs. 2007-11-15 22:06:07 +00:00
Bruce Momjian
1f735c32b2 Add blank lines to pgindent. 2007-11-15 21:52:39 +00:00
Bruce Momjian
fdf5a5efb7 pgindent run for 8.3. 2007-11-15 21:14:46 +00:00
Tom Lane
07c23731f2 contrib/tsearch2 need not be special-cased any longer. 2007-11-13 22:49:47 +00:00
Bruce Momjian
049f6b9baa Properly pass third argument to open() in fsync test program.
Hiroshi Saito
2007-11-05 17:10:26 +00:00
Marc G. Fournier
2a34c1f288 removed from CVS 2007-10-30 23:38:23 +00:00
Marc G. Fournier
b973530737 simple script to pull together a very small (<500k) tar file that builds
*just* libpq ... its not perfect, as it pulls in more files then is
necessarily required to build, but as it is, it requires one simple patch
to configure.in in order to work ...

Tested on FreeBSD ... patch for configure.in hasn't been applied, but
putting the script in place so that it doesn't get lost ...
2007-10-30 02:34:48 +00:00
Tom Lane
dbaec70c15 Rename and slightly redefine the default text search parser's "word"
categories, as per discussion.  asciiword (formerly lword) is still
ASCII-letters-only, and numword (formerly word) is still the most general
mixed-alpha-and-digits case.  But word (formerly nlword) is now
any-group-of-letters-with-at-least-one-non-ASCII, rather than all-non-ASCII as
before.  This is no worse than before for parsing mixed Russian/English text,
which seems to have been the design center for the original coding; and it
should simplify matters for parsing most European languages.  In particular
it will not be necessary for any language to accept strings containing digits
as being regular "words".  The hyphenated-word categories are adjusted
similarly.
2007-10-23 20:46:12 +00:00
Tom Lane
9a4b29d832 Teach pgxs.mk and Install.pm how to install files from a contrib module
into SHAREDIR/tsearch_data.  Use this instead of ad-hoc coding in
dict_xsyn/Makefile.  Should fix current ContribCheck failures on MSVC.
2007-10-16 16:00:00 +00:00
Tom Lane
cd8e1f50dd Ooops, forgot about adding -DFRONTEND. 2007-10-13 23:22:46 +00:00
Tom Lane
041a8b37f5 Try to fix msvc build for recent initdb changes. 2007-10-13 22:55:38 +00:00
Bruce Momjian
fe385795a1 Add comment. 2007-10-09 02:56:44 +00:00
Bruce Momjian
41f8f37474 Add comment about cvs branch numbers. 2007-10-05 18:40:52 +00:00
Bruce Momjian
e77df38a0f Add pgcvslog '-d' capability to allow stripping of commit messages that
have back branch activity.  This will be useful for creating release
notes for major releases.
2007-10-05 16:42:32 +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
bdf6b888a8 More detailed error msg (with stack trace) if a file copy fails. 2007-10-03 13:20:40 +00:00
Magnus Hagander
f83e44aecd Use snprintf from libpgport in ecpg compatlib. Required since
we restricted exports from ecpglib.
2007-10-03 12:34:29 +00:00
Magnus Hagander
7b4453e5c1 Fix commandlines for final two ECPG regression tests 2007-10-03 12:31:18 +00:00
Magnus Hagander
c8792c86f2 Build DEF file for libecpg instead of generating a default one. 2007-10-03 12:11:00 +00:00
Magnus Hagander
6ddbc1164d Make ECPG regression tests run with -c only for array_of_struct.pgc
on MSVC.

Fix strange nonstandard version of __stdcall specifyer in thread
tests on win32.
2007-10-03 11:57:36 +00:00
Magnus Hagander
ebade3f5bf Fix typo 2007-10-03 11:34:11 +00:00
Bruce Momjian
8ddeb48cd5 Update pgcvslog text to simply "<branch>" 2007-10-01 13:04:55 +00:00
Bruce Momjian
2d5dfd9516 Fixup for new pgcvslog feature. 2007-10-01 03:01:38 +00:00
Bruce Momjian
7d4dd3ab41 Have pgcvslog mark back-branch commits with "<back-patch>". 2007-10-01 02:59:03 +00:00
Bruce Momjian
e6022e7470 In the release checklist, mention packagers will see the minor upgrade
numbering for additional functions.
2007-09-29 12:19:16 +00:00
Magnus Hagander
bdee83e7e4 Add chklocale.c to pgport files for msvc builds, per
buildfarm failures.
2007-09-29 07:15:33 +00:00
Andrew Dunstan
c0a8276061 exclude contrib/tsearch2 from regression tests. 2007-09-28 00:14:58 +00:00
Andrew Dunstan
3396d1c695 Turn build and vcregress .bat files into pure one line wrappers for
the perl scripts. Remove the now superfluous getregress.pl.
2007-09-27 21:13:11 +00:00
Tom Lane
314ed5de6d Define the FRONTEND symbol in postgres_fe.h, which allows us to eliminate
duplicative -DFRONTEND flags from many Makefiles.  We still need Makefile
control of the symbol in a few places that compile frontend-or-backend
src/port/ files, but it's a lot cleaner than before.

Hiroshi Saito
2007-09-27 19:53:44 +00:00
Magnus Hagander
149af068ff Properly pass -c parameter to ecpg when building regression tests.
Per Michael.
2007-09-26 11:19:09 +00:00
Andrew Dunstan
e5b5739a2d Use proper search for contrib makefiles in vcregress.pl 2007-09-24 21:42:34 +00:00
Andrew Dunstan
3f2a191b44 fix typo in vcregress.pl 2007-09-24 21:14:54 +00:00
Andrew Dunstan
aabb7000dc Add perl replacements for build.bat and vcregress.bat. In due course
the .bat files will be altered to become tiny wrappers for these scripts,
and one or two other .bat files will disappear.
2007-09-23 21:52:56 +00:00
Andrew Dunstan
a8da5761a3 Restrict overly broad searches, and fix typo, in recent fix. Per Hannes Eder. 2007-09-23 20:32:40 +00:00
Andrew Dunstan
576b8903f7 Replace calls to external dir program with perlish globs and File::Find
calls. Fixes complaint fron Hannes Eder, whose environment found a different
dir program.
2007-09-22 20:38:10 +00:00
Bruce Momjian
dc29d703d8 Doc reminder that integer pg version also needs updating. 2007-09-18 01:52:39 +00:00
Bruce Momjian
22b613ebd9 Whitespace improvement. 2007-09-12 19:27:16 +00:00
Magnus Hagander
6ee3b2dfe4 Install dictionary sample files.
Per buildfarm and Teodor.
2007-09-12 13:58:23 +00:00
Bruce Momjian
1e0eeab155 Document an efficient way to create documentation for back branches. 2007-09-12 03:21:20 +00:00
Tom Lane
f243a1a1bd Revert temporary patch that made synchronous_commit default to OFF. 2007-09-10 02:01:19 +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
69e86a5daf Exclude tsearch2 contrib tests in regression tests,
pending decision on exactly what will happen with
contrib/tsearch2 now that it's in core.
2007-08-27 12:10:47 +00:00
Magnus Hagander
90d9fc0aa9 Install stopword files 2007-08-27 10:51:15 +00:00
Magnus Hagander
3b1e04c3e9 Fix generation of snowball_create.sql on msvc builds. 2007-08-27 10:29:49 +00:00
Tom Lane
5c681ab1cb Exclude snowball/libstemmer/ files from the set processed by pgindent.
There's not much point in prettifying machine-generated code, and it
seems best to keep these files exactly like upstream anyway.  Also add
some notes about why various files are excluded.
2007-08-21 16:08:23 +00:00
Magnus Hagander
b913a94d0a Build snowball DLL for tsearch-in-core.
(Still needs to build the .sql output files, but this handles the C part
of the build)
2007-08-21 15:10:41 +00:00
Tom Lane
140d4ebcb4 Tsearch2 functionality migrates to core. The bulk of this work is by
Oleg Bartunov and Teodor Sigaev, but I did a lot of editorializing,
so anything that's broken is probably my fault.

Documentation is nonexistent as yet, but let's land the patch so we can
get some portability testing done.
2007-08-21 01:11:32 +00:00
Tom Lane
b83bd31bd9 TEMPORARILY make synchronous_commit default to OFF, so that we can get more
thorough testing of async-commit mode from the buildfarm.  This patch MUST
get reverted before 8.3 release!
2007-08-13 19:27:12 +00:00
Magnus Hagander
dff6797ce5 Disable warning 4090 = different const qualifiers on msvc since it
warns about things that aren't wrong.
2007-07-25 10:51:03 +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
Magnus Hagander
d5eaa637ce Move parse.h into src/backend on msvc, which is where it is on Unix.
Fixes builds from tarballs where the file is pre-generated.

Yoshiyuki Asaba
2007-07-07 07:43:21 +00:00
Magnus Hagander
454333a687 Add notes about configuring Visual Studio Express for use with the
Platform SDK.
2007-07-01 18:40:37 +00:00
Magnus Hagander
d1eaa42fd5 Add extra checks for buildfarm to pick up errors when running
on XP or earlier versions of Windows.

Andrew Dunstan
2007-06-26 11:43:56 +00:00
Andrew Dunstan
52ba24a156 Quiet warnings about redefined PGPORT macros for MSVC. 2007-06-20 17:19:00 +00:00
Magnus Hagander
ee0d34ab64 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.
2007-06-12 18:31:28 +00:00
Magnus Hagander
09922597c5 Rewrite ECPG regression test driver in C, by splitting the standard
regression driver into two parts and reusing half of it. Required to
run ECPG tests without a shell on MSVC builds.

Fix ECPG thread tests for MSVC build (incl output files).

Joachim Wieland and Magnus Hagander
2007-06-12 11:07:34 +00:00
Michael Meskes
93625aa8ac Applied Joachim's patch for ecpg_config.h creation on Vista.
Changed variable test to not run into infinite loops on backend errors.
2007-05-27 11:16:41 +00:00
Andrew Dunstan
ea7f18d15b fix perl thinko 2007-05-15 01:57:57 +00:00
Andrew Dunstan
42a65e39a5 Use configured pgport in MSVC config file. 2007-05-15 00:15:01 +00:00
Magnus Hagander
2ede0ecacc Log directory we're installing into.
Per request from Andrew Dunstan.
2007-05-13 15:33:07 +00:00
Tom Lane
bc8036fc66 Support arrays of composite types, including the rowtypes of regular tables
and views (but not system catalogs, nor sequences or toast tables).  Get rid
of the hardwired convention that a type's array type is named exactly "_type",
instead using a new column pg_type.typarray to provide the linkage.  (It still
will be named "_type", though, except in odd corner cases such as
maximum-length type names.)

Along the way, make tracking of owner and schema dependencies for types more
uniform: a type directly created by the user has these dependencies, while a
table rowtype or auto-generated array type does not have them, but depends on
its parent object instead.

David Fetter, Andrew Dunstan, Tom Lane
2007-05-11 17:57:14 +00:00
Magnus Hagander
40f7b9e169 Release builds generate different strangely formatted export names
for local symbols, that shouldn't be exported. This patch excludes them,
cutting down about 10,000 exported symbols and decreasing the binary size
by 20%.
2007-05-03 14:04:03 +00:00
Magnus Hagander
d6013a34f2 Add wrapper script around install.pl that calls buildenv.bat before doing
the install.

Dave Page
2007-05-01 20:11:14 +00:00
Magnus Hagander
6cc02136a4 Properly set MODULE_PATHNAME based on module name instead of incorrectly based
on directory name. Fixes the generation of .sql files in contrib/spi.

Per complaint from Dave Page.
2007-04-27 16:45:54 +00:00
Magnus Hagander
5ea27a4b28 libpgtypes is a client lib, should not link with backend. 2007-04-26 14:09:12 +00:00
Magnus Hagander
2d7f4f2220 Generate "fake configure output" for pg_config, so that external builds
like Slony can figure out which options were enabled in the build.
2007-04-26 10:36:47 +00:00
Magnus Hagander
6792b4bba3 Install libpgport.lib as needed by some client programs.
Dave Page
2007-04-25 19:00:05 +00:00
Magnus Hagander
9295463087 Install headers in the same directory structure as Mingw.
Dave Page
2007-04-25 18:58:33 +00:00
Magnus Hagander
152b77aa3d Don't try to install uuid-ossp since we don't build it.
Per buildfarm member mastodon.
2007-04-23 17:18:58 +00:00
Magnus Hagander
ac7e6c0665 Fix build for directories with spaces in them by quoting properly.
Joachim Wieland
2007-04-21 20:58:05 +00:00
Magnus Hagander
adf7788c5e Don't try to build uuid-ossp on msvc. 2007-04-21 19:04:51 +00:00
Bruce Momjian
0240b28668 Add script major_release_split to simplify creating release notes for
multiple releases.
2007-04-20 19:40:53 +00:00
Bruce Momjian
d4b832508a Add mention of checking <link> behavior of HISTORY.html to release
checklist.
2007-04-20 15:47:08 +00:00
Magnus Hagander
62d25256f1 Change default build to release, to be consistent with unix build.
Make it possible to set the default from builenv.bat.

Per request from Dave Page
2007-04-18 10:14:06 +00:00
Magnus Hagander
de9effb55f Enable IPV6 for all MSVC builds, including the VC6 libpq-only build.
Per request from Hiroshi Saito.
2007-04-16 18:39:19 +00:00
Magnus Hagander
b60ddffa93 Install debugger symbols (in their own directory) 2007-04-12 12:46:20 +00:00
Magnus Hagander
4dd3365086 Enable IPV6 when building with MSVC. 2007-04-12 07:03:00 +00:00
Andrew Dunstan
e1f1a5358b Only run contrib check if there is a Makefile 2007-04-06 13:44:39 +00:00
Magnus Hagander
ab94cc92e4 Continue running contrib regression tests if one fails, and exit
with errorlevel 1 is >= 1 checks failed.
2007-04-05 12:31:36 +00:00
Magnus Hagander
4c40130296 Make sure list of tests is cleared out before getting the new list
of tests. Per Andrew Dunstan.
2007-04-05 12:10:40 +00:00
Andrew Dunstan
618aec735c improve test headings 2007-04-04 20:53:44 +00:00
Andrew Dunstan
e687c4c3c7 Don't install files for xml2 when building without libxml. 2007-04-04 18:45:59 +00:00
Magnus Hagander
8f296ebea7 Don't install files for sslinfo when building without openssl.
Per Andrew Dunstan.
2007-04-04 16:34:43 +00:00
Magnus Hagander
b7d3a84539 xcopy can only deal with forward-slashed paths when it's quoted - needed
for "vcregress check" to work.
Per report from Dave Page.
2007-04-02 12:11:26 +00:00
Magnus Hagander
81622ac36e Install include files 2007-03-29 20:48:26 +00:00
Magnus Hagander
96b171903d Make ECPG regression tests use native threading instead of pthreads, now that
ecpglib supports it.
Change configure (patch from Bruce) and msvc build system to no longer require
 pthreads on win32, since all parts of postgresql can be thread-safe using the
 native platform functions.
2007-03-29 15:30:52 +00:00
Magnus Hagander
87564ffc6a Install import libraries used to link to libpq, ecpg and the backend. 2007-03-27 21:47:10 +00:00
Magnus Hagander
8ca1571665 Support for installing NLS files, and update support to use gettext
from gnuwin32.
2007-03-24 22:16:49 +00:00
Magnus Hagander
5e37b4cb1a Install contrib sql and readme files 2007-03-24 15:28:48 +00:00
Magnus Hagander
ecfb932a5a Properly parse the name of contrib modules that aren't named the same
way as their directory (notably xml2/pgxml and intarray/_int)
2007-03-24 14:13:27 +00:00
Magnus Hagander
6b77e3a8cc Forgot commit: support for special-cases in pgcrypto 2007-03-23 10:05:34 +00:00
Magnus Hagander
3024b0aa94 Support for running contribcheck on msvc 2007-03-23 09:57:55 +00:00
Magnus Hagander
e69f7f450c Generate SQL files for /contrib (based on .sql.in) 2007-03-23 09:53:33 +00:00
Magnus Hagander
fb8155d0d2 Add define to exclude configured libraries, to be able to easily build a
stripped down version of libpq. To be used by the installer.
2007-03-23 08:43:51 +00:00
Magnus Hagander
d55227f01b Forgot to add file needed for PL regression tests 2007-03-22 13:43:02 +00:00
Magnus Hagander
e8a85e6f84 Add support for running regression tests on procedural languages 2007-03-21 16:21:40 +00:00
Magnus Hagander
3c5d5f070a Properly return exitcode when regression tests fails. 2007-03-21 15:39:03 +00:00
Magnus Hagander
18d82d03b5 Native shared memory implementation for win32.
Uses same underlying tech as before, but not the sysv emulation layer.
2007-03-21 14:39:23 +00:00
Magnus Hagander
62df7c31c0 ecpglib requires libpgport, per Andrew Dunstan 2007-03-19 09:34:09 +00:00
Magnus Hagander
e6e78187ef msvc build actually needs Bison 2.2 or later, not 2.1. Or 1.875 as before. 2007-03-17 17:11:41 +00:00
Magnus Hagander
7bb40f9b82 Add cvs tags to msvc build files, along with a (very short) comment about
what each script does.
2007-03-17 14:01:01 +00:00
Magnus Hagander
4554ee362c Oops, forgot to remove the old genbki script. 2007-03-17 13:54:34 +00:00
Magnus Hagander
08bb618561 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.
2007-03-17 13:50:42 +00:00
Magnus Hagander
547e41cdf8 Remove extra single-quotes copied from Unix build. Win32 doesn't strip
single quotes...
2007-03-14 09:55:03 +00:00
Magnus Hagander
be40754e91 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.
2007-03-13 16:03:36 +00:00
Magnus Hagander
f32515df77 Filter out warnings coming from the stylesheets, so that actual warnings show up properly.
Show some minor progress messages.
2007-03-13 14:28:30 +00:00
Magnus Hagander
e40889adb2 Set root of docbook stuff from buildenv.bat and not from builddoc.bat.
Fix calling for file renaming when cd:ed into a different directory.
2007-03-13 09:45:32 +00:00
Magnus Hagander
eee2289287 Make a run with perltidy to format the code. Per request from Andrew Dunstan. 2007-03-12 19:10:50 +00:00
Magnus Hagander
46573e655f Add script to build documentation on win32 without mingw 2007-03-06 14:16:55 +00:00