1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-26 12:21:12 +03:00
Commit Graph

616 Commits

Author SHA1 Message Date
d13f41d215 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

This is a backpatch of commit 649839dd9 to unsupported branches
REL8_2_STABLE and REL8_3_STABLE, so that they work with newer toolsets.
2015-01-20 12:26:20 -03:00
0caf562969 Stamp 8.3.23. 2013-02-04 16:29:07 -05:00
3fd03932fc 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:43 -05:00
632e7b6353 Stamp 8.3.22. 2012-12-03 15:28:41 -05:00
891155af45 Stamp 8.3.21. 2012-09-19 17:58:37 -04:00
3fe78ee807 Stamp 8.3.20. 2012-08-14 18:48:41 -04:00
485e12fb09 Stamp 8.3.19. 2012-05-31 19:14:08 -04:00
82345d87c7 Stamp 8.3.18. 2012-02-23 18:01:58 -05:00
246b85a948 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:52 -05:00
aa31c350fe 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:16 -05:00
6f630af876 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:10:21 -05:00
8ec76895b7 Stamp 8.3.17. 2011-12-01 16:55:48 -05:00
cef46230dc Stamp 8.3.16. 2011-09-22 18:06:36 -04:00
f81da5997e Replace obsolete AC_LANG_FUNC_LINK_TRY autoconf macro.
The version of this macro used in autoconf 2.59 is capable of incorrectly
succeeding (ie, reporting that a library function is available when it
isn't), if the compiler performs link-time optimization and decides that
it can optimize the function reference away entirely.  Replace it with the
coding used in autoconf 2.61 and later, which forces the program result to
depend on the function's result so that it cannot be optimized away.  This
should fix build failures currently being seen on buildfarm member anchovy.

This patch affects the 8.2 and 8.3 branches only, since later branches are
using autoconf versions that don't have this problem.
2011-08-29 19:52:07 -04:00
1907dca905 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:14:06 -04:00
0844f42d41 Tag 8.3.15. 2011-04-15 00:18:15 -03:00
5370e1a001 Tag 8.3.14 2011-01-27 22:24:47 -04:00
9fe5a62a17 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:51:02 -05:00
d5ddd2fa77 Tag 8.3.13. 2010-12-13 23:51:20 -04:00
e32229adfa Tag 8.3.12 2010-10-01 10:36:12 -03:00
c70af4d2fc tag 8.3.11 2010-05-14 03:27:08 +00:00
e842325ac1 tag 8.3.10 2010-03-12 03:40:31 +00:00
f25013104a tag 8.3.9 2009-12-10 03:02:07 +00:00
e01fdca9f7 Tag 8.3.8 2009-09-04 00:53:29 +00:00
c87a4d31f4 tag 8.3.7 2009-03-13 02:08:41 +00:00
5298d511ee tag for 8.3.6 2009-01-30 02:59:29 +00:00
72a3bc4a1d Remove references to pgsql-ports and pgsql-patches mailing lists from
various documentation, since those lists are now dead/deprecated.
Point to pgsql-bugs and/or pgsql-hackers as appropriate.
2009-01-06 17:27:19 +00:00
9ac53e7978 Detect and error out on inability to get proper linkage information required for plperl, usually due to absence of perl ExtUtils::Embed module. Backpatch as far as 8.1. 2008-11-12 00:00:29 +00:00
a06dedfc5e commit for 8.3.5 2008-10-31 02:38:34 +00:00
2926e1bcfb Missing space in error message 2008-10-30 12:27:42 +00:00
63aa5e3527 tag for 8.3.4 2008-09-19 03:04:13 +00:00
668396e05c tag 8.3.3 2008-06-09 00:38:40 +00:00
21cb67512c tag for 8.3.2 2008-06-06 03:56:39 +00:00
dcab19c084 Require bind_textdomain_codeset() not just gettext() to enable NLS support.
GNU gettext before 0.10.36 does not have that function, and is generally too
incomplete to be usable.
2008-05-27 22:18:11 +00:00
8209e1a987 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:11 +00:00
fdd23cd69e update configure for 8.3.1 prior to tag 2008-03-14 03:23:22 +00:00
899b9c3e04 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:23 +00:00
53c64ad097 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:22:03 +00:00
9e647a1387 configure tag'd 8.3.0 and built witih autoconf 2.59 2008-02-01 04:16:29 +00:00
79a323ab49 Change /contrib to contrib for consistency. 2008-01-24 06:23:33 +00:00
aeeef4119e must commit after autoconf ... and yes, I used the right autoconf 2008-01-18 04:47:32 +00:00
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
9098ab9e32 Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
01434d41d4 Stamp 8.3beta4. 2007-12-03 00:11:01 +00:00
7c0bc953e6 Re-do configure with autoconf 2.59 2007-11-16 04:59:25 +00:00
2a174e45dd update files for beta3 2007-11-16 04:29:45 +00:00
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
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
f96e1e0faa Update wording for xsl configure option. 2007-11-04 18:53:39 +00:00
ede83e04aa Document that configure --with-libxslt controls just /contrib/xml2.
Nikolay Samokhvalov
2007-11-04 18:10:42 +00:00