Commit Graph

678 Commits

Author SHA1 Message Date
Tom Lane 8dd387500a Stamp 8.4.22. 2014-07-21 15:18:03 -04:00
Noah Misch 8b0d1c87dd Add mkdtemp() to libpgport.
This function is pervasive on free software operating systems; import
NetBSD's implementation.  Back-patch to 8.4, like the commit that will
harness it.
2014-06-14 09:41:18 -04:00
Tom Lane 8607099a19 Accept tcl 8.6 in configure's probe for tclsh.
Usually the search would find plain "tclsh" without any trouble,
but some installations might only have the version-numbered flavor
of that program.

No compatibility problems have been reported with 8.6, so we might
as well back-patch this to all active branches.

Christoph Berg
2014-05-10 10:48:17 -04:00
Tom Lane e1fa2d4139 Stamp 8.4.21. 2014-03-17 15:39:12 -04:00
Tom Lane 0d90f0855d Stamp 8.4.20. 2014-02-17 14:44:07 -05:00
Tom Lane be26515fc3 Stamp 8.4.19. 2013-12-02 16:06:31 -05:00
Peter Eisentraut e6a8de2854 Stamp 8.4.18. 2013-10-07 23:10:18 -04:00
Tom Lane 8396d230fa Disable -faggressive-loop-optimizations in gcc 4.8+ for pre-9.2 branches.
With this optimization flag enabled, recent versions of gcc can generate
incorrect code that assumes variable-length arrays (such as oidvector)
are actually fixed-length because they're embedded in some larger struct.
The known instance of this problem was fixed in 9.2 and up by commit
8137f2c323 and followon work, which hides
actually-variable-length catalog fields from the compiler altogether.
And we plan to gradually convert variable-length fields to official
"flexible array member" notation over time, which should prevent this type
of bug from reappearing as gcc gets smarter.  We're not going to try to
back-port those changes into older branches, though, so apply this
band-aid instead.

Andres Freund
2013-08-21 18:31:54 -04:00
Tom Lane 292f7b2726 Stamp 8.4.17. 2013-04-01 14:27:59 -04:00
Tom Lane 2228ce6a11 Stamp 8.4.16. 2013-02-04 16:28:55 -05:00
Tom Lane 7f8a6ed233 Ignore libedit/libreadline while probing for standard functions.
Some versions of libedit expose bogus definitions of setproctitle(),
optreset, and perhaps other symbols that we don't want configure to pick up
on.  There was a previous report of similar problems with strlcpy(), which
we addressed in commit 59cf88da91, but the
problem has evidently grown in scope since then.  In hopes of not having to
deal with it again in future, rearrange configure's tests for supplied
functions so that we ignore libedit/libreadline except when probing
specifically for functions we expect them to provide.

Per report from Christoph Berg, though this is slightly more aggressive
than his proposed patch.
2012-12-18 16:22:37 -05:00
Tom Lane 965edcab6e Stamp 8.4.15. 2012-12-03 15:25:45 -05:00
Tom Lane ed23de2692 Stamp 8.4.14. 2012-09-19 17:55:55 -04:00
Tom Lane 1a36a773a6 Stamp 8.4.13. 2012-08-14 18:45:54 -04:00
Tom Lane 8c9f2dc670 Stamp 8.4.12. 2012-05-31 19:11:47 -04:00
Tom Lane 0209a10bf8 Stamp 8.4.11. 2012-02-23 17:59:21 -05:00
Tom Lane efe3561108 Don't reject threaded Python on FreeBSD.
According to Chris Rees, this has worked for awhile, and the current
FreeBSD port is removing the test anyway.
2012-02-20 16:21:46 -05:00
Tom Lane a2beb5b3d1 Use __sync_lock_test_and_set() for spinlocks on ARM, if available.
Historically we've used the SWPB instruction for TAS() on ARM, but this
is deprecated and not available on ARMv6 and later.  Instead, make use
of a GCC builtin if available.  We'll still fall back to SWPB if not,
so as not to break existing ports using older GCC versions.

Eventually we might want to try using __sync_lock_test_and_set() on some
other architectures too, but for now that seems to present only risk and
not reward.

Back-patch to all supported versions, since people might want to use any
of them on more recent ARM chips.

Martin Pitt
2012-01-07 15:39:11 -05:00
Andrew Dunstan 01e80a0c28 Disable excessive FP optimization by recent versions of gcc.
Suggested solution from Tom Lane. Problem discovered, probably not
for the first time, while testing the mingw-w64 32 bit compiler.

Backpatched to all live branches.
2011-12-14 17:11:44 -05:00
Tom Lane 28b78e8863 Dodge an ancient ksh bug that breaks configure on some platforms.
8.4.10's configure script suddenly started failing on platforms that use
older versions of ksh as /bin/sh.  It turns out to be a ksh bug that's
triggered by here-document delimiters falling across bufferload boundaries:
https://mailman.research.att.com/pipermail/ast-developers/2010q4/000797.html

Hopefully this will get fixed before we trip over it again, but to make
8.4.10 releasable, add a comment to move the boundaries to dodge the bug.
Per buildfarm members koi and warthog, plus a report from Bjorn Munch of
the identical failure on Solaris 10.
2011-12-02 19:52:22 -05:00
Tom Lane d08b64581f Stamp 8.4.10. 2011-12-01 16:53:13 -05:00
Tom Lane 07d306785e Stamp 8.4.9. 2011-09-22 18:03:52 -04:00
Tom Lane 212567ad3e Suppress -arch switches in the output of ExtUtils::Embed.
We previously found out that OS X's standard perl installation tries to put
-arch switches into Perl link commands, evidently in hopes of building
universal binaries.  But it doesn't work to add such switches in plperl's
link step if they weren't being used earlier, so this is basically
unworkable.  When using gcc the result is only some warnings; but LLVM
fails entirely, so this issue isn't as cosmetic as we originally thought.
Hence, back-patch commit d69a419e68 into
pre-9.0 branches.
2011-06-14 17:13:58 -04:00
Marc G. Fournier 7b8b256f08 Tag 8.4.8. 2011-04-15 00:17:14 -03:00
Marc G. Fournier 7df910c7d1 Tag 8.4.7 2011-01-27 22:23:36 -04:00
Tom Lane 2dffe1f8bb Fix up getopt() reset management so it works on recent mingw.
The mingw people don't appear to care about compatibility with non-GNU
versions of getopt, so force use of our own copy of getopt on Windows.
Also, ensure that we make use of optreset when using our own copy.

Per report from Andrew Dunstan.  Back-patch to all versions supported
on Windows.
2010-12-15 23:50:56 -05:00
Marc G. Fournier 35862ff7f2 Tag 8.4.6. 2010-12-13 22:59:19 -04:00
Marc G. Fournier 2f76a4b5a6 Tag 8.4.5 2010-10-01 10:35:31 -03:00
Marc G. Fournier c302ed9e4e tag 8.4.4 2010-05-14 03:20:06 +00:00
Marc G. Fournier d6c7c7c6bc tag 8.4.3 2010-03-12 03:23:23 +00:00
Tom Lane 903352faeb Re-order configure tests to reflect the fact that the code generated for
posix_fadvise and other file-related functions can depend on _LARGEFILE_SOURCE
and/or _FILE_OFFSET_BITS.  Per report from Robert Treat.

Back-patch to 8.4.  This has been wrong all along, but we weren't really using
posix_fadvise in anger before, and AC_FUNC_FSEEKO seems to mask the issue well
enough for that function.
2010-01-16 19:50:38 +00:00
Tom Lane ed62e74522 Alter the configure script to fail immediately if the C compiler does not
provide a working 64-bit integer datatype.  As recently noted, we've been
broken on such platforms since early in the 8.4 development cycle.  Since
it took nearly two years for anyone to even notice, it seems that the
rationale for continuing to support such platforms has reached the point
of non-existence.  Rather than thrashing around to try to make it work
again, we'll just admit up front that this no longer works.

Back-patch to 8.4 since that branch is also broken.

We should go around to remove INT64_IS_BUSTED support, but just in HEAD,
so that seems like material for a separate commit.
2010-01-07 00:25:18 +00:00
Marc G. Fournier 5cc7c13022 tag for 8.4.2 2009-12-10 02:56:56 +00:00
Marc G. Fournier 6883b7df92 Tag 8.4.1 2009-09-04 00:36:51 +00:00
Marc G. Fournier 41f467f343 Bundle v8.4.0 2009-06-27 00:14:47 +00:00
Marc G. Fournier bc00ceb159 bundle RC2 2009-06-22 23:15:02 +00:00
Marc G. Fournier 35daaa91d3 time to tag rc1 ... 2009-06-12 05:19:22 +00:00
Tom Lane 14ba9fdef6 Fix ill-advised whitespace prettification, per buildfarm. 2009-06-10 23:03:32 +00:00
Tom Lane cb10e3af3a Support Kerberos on platforms where libcom_err depends on OpenSSL, as
reportedly is true on OpenBSD.  Also support OpenBSD's spelling of
-Wl,--as-needed.  Per Simon Bertrang.
2009-06-10 21:24:11 +00:00
Peter Eisentraut 5e4c8aee1f Add documentation string for LDFLAGS_SL in configure --help output. 2009-05-19 22:32:41 +00:00
Marc G. Fournier abc924519a commit for BETA2 2009-05-15 02:18:27 +00:00
Marc G. Fournier 4c9c0b85fb commit and tag beta1 2009-04-10 00:20:10 +00:00
Bruce Momjian 77b044f27e Disable effective_io_concurrency on Solaris because posix_fadvise() is
no-op on that platform.
2009-04-07 22:48:30 +00:00
Tom Lane 1d26226d95 Make an attempt at fixing our current Solaris 11 breakage: add a configure
probe for opterr (exactly like the one for optreset) and have getopt.c
define the variables only if configure doesn't find them in libc.
2009-04-04 21:55:50 +00:00
Tom Lane 3da36407c0 On Solaris, we should only force use of our own getopt(); it's okay to use
the system's getopt_long().  The previous coding was the result of a sloppy
discussion that failed to draw this distinction.  The result was that PG
programs don't handle options as users of that platform expect.  Per
gripe from Chuck McDevitt.

Although this is a pre-existing bug, I'm not backpatching since I think we
could do with a bit of beta testing before concluding this is really OK.
2009-03-27 19:58:11 +00:00
Andrew Dunstan 30735adfe4 do not use unsetenv.c on mingw 2009-02-12 15:12:47 +00:00
Tom Lane 68d95f12e7 Tweak configure to attempt to add -qnoansialias to CFLAGS whenever running
on AIX with a non-gcc compiler.  The previous coding would do this only if
CC was exactly "xlc"; which is a bad idea, as demonstrated by trouble report
from Mihai Criveti.
2009-02-11 20:02:40 +00:00
Andrew Dunstan b5d23f28ce allow alternative names for tclsh used on Windows 2009-02-03 01:24:57 +00:00
Peter Eisentraut 9c4b69ed5c Recreate ecpg_config.h with a stamp file created by config.status, same
way pg_config.h is handled.  This avoids reruns of config.status on every
build, if configure has been rerun.
2009-01-22 22:27:13 +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