Commit Graph

612 Commits

Author SHA1 Message Date
Tom Lane
1ac1bea076 Adjust -Wl,--asneeded test to avoid using the switch if it breaks
libreadline.  What we will do for compatibility :-(
2008-05-20 03:30:22 +00:00
Tom Lane
2dad10f467 Make another try at using -Wl,--as-needed to suppress linking of unnecessary
shared libraries.  We've tried this before and had problems with libreadline
not linking properly on some platforms, but that seems to be a libreadline
bug that may have been fixed by now.  In any case, it's early enough in the
8.4 devel cycle that we can afford to have some transient breakage while
we work out any portability problems.

On Darwin, we try -Wl,-dead_strip_dylibs, which seems to be the equivalent
incantation there.
2008-05-18 20:13:12 +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
Tom Lane
cf9f6c8d8e Extend yesterday's patch making BLCKSZ and RELSEG_SIZE configurable to also
let XLOG_BLCKSZ and XLOG_SEG_SIZE be set via configure.  Per a proposal by
Mark Wong, though I thought it better to call the switches after "wal" rather
than "xlog".
2008-05-02 19:52:37 +00:00
Tom Lane
3c6248a828 Remove the recently added USE_SEGMENTED_FILES option, and indeed remove all
support for a nonsegmented mode from md.c.  Per recent discussions, there
doesn't seem to be much value in a "never segment" option as opposed to
segmenting with a suitably large segment size.  So instead provide a
configure-time switch to set the desired segment size in units of gigabytes.
While at it, expose a configure switch for BLCKSZ as well.

Zdenek Kotala
2008-05-02 01:08:27 +00:00
Tom Lane
9c37aa291f Fix broken configure test for libxslt: it was probing for xsltLibxmlVersion,
which is a global variable not a function, and so the probe failed on machines
where the linker makes a distinction (cf. Red Hat bug #444317).  Probe for
an actual function instead.
2008-04-28 22:47:03 +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
Neil Conway
2169e42bef Enable 64-bit integer datetimes by default, per previous discussion.
This requires a working 64-bit integer type. If such a type cannot
be found, "--disable-integer-datetimes" can be used to switch
back to the previous floating point-based datetime implementation.
2008-03-30 04:08:15 +00:00
Tom Lane
fe83a3fdbd Use -fwrapv in CFLAGS if we are using a version of gcc that accepts this flag.
This prevents compiler optimizations that assume overflow won't occur, which
breaks numerous overflow tests that we need to have working.  It is known
that gcc 4.3 causes problems and possible that 4.1 does.  Per my proposal
of some time ago and a recent report from Kris Jurka.

Backpatch as far as 8.0, which is as far as the patch conveniently goes.
7.x was pretty short of overflow tests anyway, so it may not matter there,
even assuming that anyone cares whether 7.x builds on recent gcc.
2008-03-10 21:50:16 +00:00
Tom Lane
f0828b2fc3 Provide a build-time option to store large relations as single files, rather
than dividing them into 1GB segments as has been our longtime practice.  This
requires working support for large files in the operating system; at least for
the time being, it won't be the default.

Zdenek Kotala
2008-03-10 20:06:27 +00:00
Tom Lane
ad20c990f7 Use our own getopt() and getopt_long() on Solaris, because that platform's
versions don't handle long options the way we want.  Per Zdenek Kotala.
2008-02-24 05:21:54 +00:00
Bruce Momjian
a74e0414a2 Put back code modularization of fseeko() configure checks. 2008-02-19 01:05:28 +00:00
Bruce Momjian
7f9693b4fd Put fseeko check back in old location, in hopes of silencing build warnings. 2008-02-19 00:46:43 +00:00
Bruce Momjian
fc54be81d1 autoconf 2.61's AC_FUNC_FSEEKO reports success/failure differently, so
reorganize code for NetBSD/BSDi port/fseeko.c usage, and make code more
modular.
2008-02-18 21:46:22 +00:00
Peter Eisentraut
b120382353 Upgrade to Autoconf 2.61:
- Change configure.in to use Autoconf 2.61 and update generated files.
- Update build system and documentation to support now directory variables
  offered by Autoconf 2.61.
- Replace usages of PGAC_CHECK_ALIGNOF by AC_CHECK_ALIGNOF, now available
  in Autoconf 2.61.
- Drop our patched version of AC_C_INLINE, as Autoconf now has the change.
2008-02-17 16:36:43 +00:00
Tom Lane
cf9e156156 Stamp HEAD as 8.4devel. 2008-02-13 03:40:38 +00:00
Marc G. Fournier
9e647a1387 configure tag'd 8.3.0 and built witih autoconf 2.59 2008-02-01 04:16:29 +00:00
Peter Eisentraut
79a323ab49 Change /contrib to contrib for consistency. 2008-01-24 06:23:33 +00:00
Marc G. Fournier
aeeef4119e must commit after autoconf ... and yes, I used the right autoconf 2008-01-18 04:47:32 +00:00
Tom Lane
2bf121e40b Stamp release 8.3RC1.
Security: CVE-2007-4769, CVE-2007-4772, CVE-2007-6067, CVE-2007-6600, CVE-2007-6601
2008-01-03 21:40:12 +00:00
Bruce Momjian
9098ab9e32 Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
Bruce Momjian
670f05b07c Provide a more helpful error message when there is an autoconf version
mismatch;  backpatch.
2007-12-31 17:28:21 +00:00
Bruce Momjian
50058a5bae Provide a more helpful error message when there is an autoconf version
mismatch.  Batckpatch to 8.2.X.
2007-12-31 16:47:10 +00:00
Tom Lane
01434d41d4 Stamp 8.3beta4. 2007-12-03 00:11:01 +00:00
Peter Eisentraut
3f398e4a27 Require a specific Autoconf version, instead of a lower bound only. 2007-11-26 12:31:07 +00:00
Marc G. Fournier
2a174e45dd update files for beta3 2007-11-16 04:29:45 +00:00
Tom Lane
1ef648cfbc I find that an out-of-the-box installation of OSSP uuid 1.6.0 installs
itself as libuuid, not libossp-uuid which was the only case expected by
our build support.  Install a configure test to determine which name
to use (and to check that the library is present at all).
2007-11-13 00:13:19 +00:00
Bruce Momjian
c1a03bee08 Document that configure option only affects contrib:
--with-ossp-uuid        use OSSP UUID library when building /contrib/uuid-ossp
2007-11-05 17:43:20 +00:00
Bruce Momjian
f96e1e0faa Update wording for xsl configure option. 2007-11-04 18:53:39 +00:00
Bruce Momjian
ede83e04aa Document that configure --with-libxslt controls just /contrib/xml2.
Nikolay Samokhvalov
2007-11-04 18:10:42 +00:00
Magnus Hagander
6f14effbf9 New versions of mingw have gettimeofday(), so add an autoconf test
for this.
2007-10-29 11:25:42 +00:00
Tom Lane
5b5a70aedf Stamp 8.3beta2. 2007-10-27 00:22:42 +00:00
Tom Lane
07d0a370c1 Make configure probe for the location of the <uuid.h> header file.
Needed to accommodate different layout on some platforms (Debian for
one).  Heikki Linnakangas
2007-10-23 21:38:16 +00:00
Marc G. Fournier
18cb6f7dd0 tag it 8.3beta1 ... the beta cycle begins 2007-10-05 02:55:41 +00:00
Tom Lane
f1d37a9997 Cope with ERR_set_mark() and ERR_pop_to_mark() not existing in older
OpenSSL libraries --- just don't call them if they're not there.  This
might possibly lead to misleading error messages, but we'll just have
to live with that.
2007-10-02 00:25:20 +00:00
Tom Lane
017daed0dd If we're gonna provide an --enable-profiling configure option, surely
it ought to know that you need -DLINUX_PROFILE on Linux.
2007-09-21 02:33:46 +00:00
Tom Lane
e435bddb9c Revert ill-starred change to ICC anti-aliasing switches. Per
Jeremy Drake.
2007-09-12 14:28:55 +00:00
Tom Lane
861f7357b9 Give ICC its preferred, documented form of the no-strict-aliasing
switch, viz '-fno-alias'.  Since we have a separate code path here
anyway, it's just as easy to cooperate.
2007-09-11 19:50:25 +00:00
Peter Eisentraut
4e94d1f952 Add configure option --with-system-tzdata to use operating system time zone
database.
2007-08-20 08:53:12 +00:00
Tom Lane
df9ea6a1f1 Adjust configure so that it sets CFLAGS properly for Intel's icc
even if the compiler is not defining __GNUC__.  Per report from
Dirk Tilger that it is possible for icc to not do that.
2007-08-05 15:43:00 +00:00
Tom Lane
177be3f9bb Adjust configure script to print the bison and flex versions in use.
Minor rearrangements to make a few tests in a more logical order.
2007-07-19 17:15:30 +00:00
Magnus Hagander
3787797f72 Support for finding gssapi functions in the library "gss", as required
by Solaris 10 and possibly others.

Stefan Kaltenbrunner
2007-07-14 11:13:28 +00:00
Magnus Hagander
65a513c249 Support GSSAPI builds where the header is <gssapi.h> and not <gssapi/gssapi.h>,
such as OpenBSD (possibly all Heimdal).

Stefan Kaltenbrunner
2007-07-12 14:36:52 +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
Tom Lane
e27a8df1bf Fix misspelling. 2007-07-10 16:41:01 +00:00
Magnus Hagander
6160106c74 Add support for GSSAPI authentication.
Documentation still being written, will be committed later.

Henry B. Hotz and Magnus Hagander
2007-07-10 13:14:22 +00:00
Tom Lane
c786796d0a Fix computation of PG_VERSION_NUM by configure: remove unnecessary and
unportable backslashes in awk script (per Patrick Welche), and add
brackets to prevent autoconf from mangling sed's regexp (the sed call
here never did what was expected).
2007-06-29 16:18:43 +00:00
Andrew Dunstan
3da3c04f3a Tidy overly long configure help lines. 2007-06-04 21:55:43 +00:00
Tom Lane
c7464720a3 tas() support for Renesas' M32R processor. Kazuhiro Inaoka 2007-05-04 15:20:52 +00:00
Peter Eisentraut
e08617cfba Fix alignment of help output. 2007-04-21 18:26:44 +00:00
Peter Eisentraut
74496bc298 Contrib module uuid-ossp for generating UUID values using the OSSP UUID
library.  New configure option --with-ossp-uuid to activate.
2007-04-21 17:26:18 +00:00
Andrew Dunstan
f97d4a267a Add --with-libxslt configure option 2007-04-15 12:48:24 +00:00
Andrew Dunstan
6506a584cc Enable building contrib/xml2 if configured using --with-libxml.
If this breaks things due to missing libxslt, then I'll have to
revert it, but let's see if it breaks the buildfarm.

Workarounds in case libxslt is missing include:
. don't configure with libxml, or
. don't build contrib modules from the contrib Makefile (use the individual module Makefiles instead), or
. change the xml2 Makefile
2007-04-13 18:50:01 +00:00
Tom Lane
37a609b27f Now that core functionality is depending on autoconf's AC_C_BIGENDIAN to be
right, there seems precious little reason to have a pile of hand-maintained
endianness definitions in src/include/port/*.h.  Get rid of those, and make
the couple of places that used them depend on WORDS_BIGENDIAN instead.
2007-04-06 05:36:51 +00:00
Tom Lane
3e23b68dac Support varlena fields with single-byte headers and unaligned storage.
This commit breaks any code that assumes that the mere act of forming a tuple
(without writing it to disk) does not "toast" any fields.  While all available
regression tests pass, I'm not totally sure that we've fixed every nook and
cranny, especially in contrib.

Greg Stark with some help from Tom Lane
2007-04-06 04:21:44 +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
Bruce Momjian
357be8c974 Properly fix PORTNAME in configure. 2007-03-26 21:30:56 +00:00
Bruce Momjian
0b1e4f8530 User PORTNAME for win32 tests, rather than $template, for consistency. 2007-03-26 19:46:56 +00:00
Tom Lane
66bbc2fdd5 Add -lcrypto as one of the possible link dependencies of libkrb5.
Per report from Jim Rosenberg.  This possibly should get back-patched,
but I'm a bit suspicious of it still because of the lack of prior reports.
2007-03-26 02:37:17 +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
Bruce Momjian
6765df9174 Add configure --enable-profiling to enable GCC profiling. Patches from
Korry Douglas and Nikhil S
2007-02-21 15:12:39 +00:00
Peter Eisentraut
4f64a07bee Add strlcat() from OpenBSD, to be used for replacing strncat and other
strange coding practices.
2007-02-07 00:28:55 +00:00
Bruce Momjian
25dc46334b Fix configure detection code when --with-ldap and --enable-thread-safety
are both used.

Albe Laurenz
2007-02-03 02:43:38 +00:00
Bruce Momjian
91ed399517 Use autoconf build-in sys_siglist macro AC_DECL_SYS_SIGLIST, rather than
create our own.
2007-01-28 03:50:34 +00:00
Bruce Momjian
82480fc254 Use sys_siglist[] to print out signal names for signal exits, rather
than just numbers.
2007-01-28 01:12:05 +00:00
Peter Eisentraut
16f372d940 Optionally use xml2-config to detect installation locations of libxml. 2007-01-18 14:07:31 +00:00
Peter Eisentraut
de9aa5a7b4 Check and document minimum required version of libxml. 2007-01-07 21:10:41 +00:00
Bruce Momjian
29dccf5fe0 Update CVS HEAD for 2007 copyright. Back branches are typically not
back-stamped for this.
2007-01-05 22:20:05 +00:00
Bruce Momjian
cac2d912d9 finite() no longer used; remove finite() platform-specific
infrastructure.
2007-01-02 21:25:50 +00:00
Peter Eisentraut
8c1de5fb00 Initial SQL/XML support: xml data type and initial set of functions. 2006-12-21 16:05:16 +00:00
Tom Lane
1f09a857b7 Make --with-ldap build on Unixware, per Olivier Prenant. 2006-12-14 21:49:54 +00:00
Tom Lane
75330c3205 Stamp HEAD as 8.3devel. 2006-12-02 16:43:12 +00:00
PostgreSQL Daemon
2f52d7260c v8.2.0 is now released ... 2006-12-02 08:36:41 +00:00
Tom Lane
59cf88da91 Ignore libedit/libreadline while probing for strlcpy and some other
standard functions.  Per report from Stefan Kaltenbrunner.
2006-11-29 20:12:31 +00:00
PostgreSQL Daemon
c11b5228cf update for rc1 2006-11-25 03:34:13 +00:00
PostgreSQL Daemon
9b3aee524f Tag as Beta3 ... two outstanding *known* bugs before RC1 ... 2006-11-07 17:59:05 +00:00
Tom Lane
02f37bd8c4 Revert to the pre-8.2 method of probing for libm, that is, always
include it if it links properly.  It seems too risky to assume that
standard functions like pow() are not special-cased by the compiler.
Per report from Andreas Lange that build fails on Solaris cc compiler
with -fast.  Even though we don't consider that a supported option,
I'm worried that similar issues will arise with other compilers.
2006-11-06 03:44:38 +00:00
Peter Eisentraut
0b9f93e6b0 Code the unknown options check without using m4 diversions. Otherwise this
code relies on the checking macro actually being called at the end, or the
automatic undiversion will produce garbage.  These sort of implicit
side-effects undermine the modularity of the macros and happen to break the
ODBC driver which makes use of them.

Also put the warnings at the very end of configure, so there is an even
better chance of seeing them.
2006-10-30 22:15:04 +00:00
Tom Lane
66f5264a2e Stamp 8.2beta2. 2006-10-23 22:50:20 +00:00
Peter Eisentraut
6ab23dabf5 Punt when trying to build with threaded Python on FreeBSD.
Also cut back on excessive use of *** to decorate configure error messages.
If it's an error message, you are sure to see it without any decoration.
2006-10-16 17:24:54 +00:00
Tom Lane
71a6f8b85b On platforms that have getrlimit(RLIMIT_STACK), use it to ensure that
max_stack_depth is not set to an unsafe value.

This commit also provides configure-time checking for <sys/resource.h>,
and cleans up some perhaps-unportable code associated with use of that
include file and getrlimit().
2006-10-07 19:25:29 +00:00
Tom Lane
9e6c3582dd Second try at fixing libedit configuration for Bob Friesenhahn.
Buildfarm results from 'gazelle' show that there are indeed libedit
versions for which history.h is a needed header, even though it's
apparently been dropped entirely in other versions.  Grumble.
2006-10-05 00:07:45 +00:00
Tom Lane
bdef2bf296 Adjust configure's handling of libedit to not look for a history.h file.
Per Bob Friesenhahn's report, this file is not supplied by some versions
of libedit, and even when it is supplied it seems to be just a link to
readline.h, so we don't need to include it anyway.
Also, ensure that we won't try to use a too-old version of Bison.
The previous coding would bleat but then use it anyway; better to invoke
the 'missing' script if any grammar files need to be rebuilt.
2006-10-04 22:31:14 +00:00
Tom Lane
6edd2b4a91 Switch over to using our own qsort() all the time, as has been proposed
repeatedly.  Now that we don't have to worry about memory leaks from
glibc's qsort, we can safely put CHECK_FOR_INTERRUPTS into the tuplesort
comparators, as was requested a couple months ago.  Also, get rid of
non-reentrancy and an extra level of function call in tuplesort.c by
providing a variant qsort_arg() API that passes an extra void * argument
through to the comparison routine.  (We might want to use that in other
places too, I didn't look yet.)
2006-10-03 22:18:23 +00:00
Tom Lane
1e05359f4b Properly handle the case where strlcpy() exists in libc but isn't
declared in the system headers.  Per report from Bruce than some BSDen
are like this.
2006-10-02 00:06:18 +00:00
Tom Lane
7ceec34a73 Improve documentation of configure's readline/libedit switches. 2006-10-01 23:47:16 +00:00
Tom Lane
996b203e62 Add strlcpy() to the set of functions supported by src/port/ when not
available directly on the platform.  Per discussion, this function is
sufficiently widely recognized to be treated as standard.
2006-09-27 16:29:46 +00:00
PostgreSQL Daemon
bbed6678f3 Tag us Beta1 2006-09-23 01:33:37 +00:00
Tom Lane
42c17a6bb0 Revise OpenLDAP configuration and linking to work on more platforms
than before.  Albe Laurenz (but editorialized heavily by me, so if it
doesn't work it's my fault).
2006-09-09 03:15:40 +00:00
Michael Meskes
9bade3ff84 Replaced double-quote-fix with a hopefully better version.
Use initializer string length as size for character strings.
Added ecpg_config.h file that is created via configure.
2006-08-23 12:01:53 +00:00
Peter Eisentraut
bb764e94ce Produce a clean failure in configure when dtrace is selected but cannot be
found.  Besides stopping those early who have no dtrace installed
whatsoever, this will also alert those who have dtrace in /usr/sbin, which
might not be in the path, which would produce confusing failures much later
in the build process.

Add documentation about pointing configure to find dtrace.
2006-08-17 17:25:43 +00:00
Tom Lane
a7d400ad07 Fix inadequate quoting in test for AIX xlc. 2006-08-04 15:16:14 +00:00
Bruce Momjian
43c79378c8 Allow LDAP lookups from pg_service.conf.
Albe Laurenz
2006-07-27 13:20:24 +00:00
Peter Eisentraut
e9b4969062 DTrace support, with a small initial set of probes
by Robert Lor
2006-07-24 16:32:45 +00:00
Tom Lane
c469aed1cb Remove no-longer-needed configure test for krb5_encrypt(), per Jim Gates. 2006-07-11 16:14:50 +00:00
Tom Lane
1e8ae13640 Don't try to call posix_fadvise() unless <fcntl.h> supplies a declaration
for it.  Hopefully will fix core dump evidenced by some buildfarm members
since fadvise patch went in.  The actual definition of the function is not
ABI-compatible with compiler's default assumption in the absence of any
declaration, so it's clearly unsafe to try to call it without seeing a
declaration.
2006-06-18 18:30:21 +00:00
Bruce Momjian
399a36a75d Prepare code to be built by MSVC:
o  remove many WIN32_CLIENT_ONLY defines
	o  add WIN32_ONLY_COMPILER define
	o  add 3rd argument to open() for portability
	o  add include/port/win32_msvc directory for
	   system includes

Magnus Hagander
2006-06-07 22:24:46 +00:00
Bruce Momjian
382808612c Emit warnings for unknown configure options.
Martijn van Oosterhout
2006-05-30 13:52:25 +00:00
Tom Lane
f0df096785 Rearrange some configure.in comments for better readability.
Commit configure and pg_config.h.in, missed in last configure.in
update.
2006-04-29 20:47:31 +00:00
Bruce Momjian
908f317b73 Add Win32 semaphore implementation, rather than mimicking SysV
semaphores.

Qingqing Zhou
2006-04-29 16:34:41 +00:00