Commit Graph

727 Commits

Author SHA1 Message Date
Tom Lane 9a42e8514f Stamp 9.0.23. 2015-10-05 15:19:44 -04:00
Noah Misch cdf596b1ce AIX: Test the -qlonglong option before use.
xlc provides "long long" unconditionally at C99-compatible language
levels, and this option provokes a warning.  The warning interferes with
"configure" tests that fail in response to any warning.  Notably, before
commit 85a2a8903f, it interfered with the
test for -qnoansialias.  Back-patch to 9.0 (all supported versions).
2015-07-17 03:02:46 -04:00
Tom Lane 29ff43adfb Make numeric form of PG version number readily available in Makefiles.
Expose PG_VERSION_NUM (e.g., "90600") as a Make variable; but for
consistency with the other Make variables holding similar info,
call the variable just VERSION_NUM not PG_VERSION_NUM.

There was some discussion of making this value available as a pg_config
value as well.  However, that would entail substantially more work than
this two-line patch.  Given that there was not exactly universal consensus
that we need this at all, let's just do a minimal amount of work for now.

Back-patch of commit a5d489ccb7, so that this
variable is actually useful for its intended purpose sometime before 2020.

Michael Paquier, reviewed by Pavel Stehule
2015-07-05 12:01:02 -04:00
Alvaro Herrera b185c42c16 Test -lrt for sched_yield
Apparently, this is needed in some Solaris versions.

Author: Oskari Saarenmaa
2015-06-30 14:20:37 -03:00
Tom Lane d7e68682fa Stamp 9.0.22. 2015-06-09 15:36:16 -04:00
Tom Lane b6ba1d7577 Stamp 9.0.21. 2015-06-01 15:14:19 -04:00
Tom Lane b06649b7fe Remove configure check prohibiting threaded libpython on OpenBSD.
According to recent tests, this case now works fine, so there's no reason
to reject it anymore.  (Even if there are still some OpenBSD platforms
in the wild where it doesn't work, removing the check won't break any case
that worked before.)

We can actually remove the entire test that discovers whether libpython
is threaded, since without the OpenBSD case there's no need to know that
at all.

Per report from Davin Potts.  Back-patch to all active branches.
2015-05-26 22:15:00 -04:00
Tom Lane 730912f9a3 Stamp 9.0.20. 2015-05-18 14:38:36 -04:00
Tom Lane 8c15a7163c Stamp 9.0.19. 2015-02-02 15:46:01 -05:00
Noah Misch 2e4946169d On Darwin, detect and report a multithreaded postmaster.
Darwin --enable-nls builds use a substitute setlocale() that may start a
thread.  Buildfarm member orangutan experienced BackendList corruption
on account of different postmaster threads executing signal handlers
simultaneously.  Furthermore, a multithreaded postmaster risks undefined
behavior from sigprocmask() and fork().  Emit LOG messages about the
problem and its workaround.  Back-patch to 9.0 (all supported versions).
2015-01-07 22:46:20 -05:00
Noah Misch 4c6d0abde9 Diagnose incompatible OpenLDAP versions during build and test.
With OpenLDAP versions 2.4.24 through 2.4.31, inclusive, PostgreSQL
backends can crash at exit.  Raise a warning during "configure" based on
the compile-time OpenLDAP version number, and test the crash scenario in
the dblink test suite.  Back-patch to 9.0 (all supported versions).
2014-07-22 11:02:25 -04:00
Tom Lane 391aa8aac1 Stamp 9.0.18. 2014-07-21 15:16:01 -04:00
Noah Misch 52c37346aa 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 d23bf2e6c8 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:14 -04:00
Tom Lane 9174c77f86 Fix "quiet inline" configure test for newer clang compilers.
This test used to just define an unused static inline function and check
whether that causes a warning.  But newer clang versions warn about
unused static inline functions when defined inside a .c file, but not
when defined in an included header, which is the case we care about.
Change the test to cope.

Andres Freund
2014-05-02 15:30:44 -04:00
Tom Lane 192856b1b9 Stamp 9.0.17. 2014-03-17 15:38:14 -04:00
Tom Lane de02167f63 Stamp 9.0.16. 2014-02-17 14:42:21 -05:00
Tom Lane ad670a5d73 Stamp 9.0.15. 2013-12-02 16:04:20 -05:00
Peter Eisentraut a65e6c8217 Stamp 9.0.14. 2013-10-07 23:12:23 -04:00
Tom Lane e9e387a5b1 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:51 -04:00
Tom Lane a941e89a38 Stamp 9.0.13. 2013-04-01 14:25:34 -04:00
Tom Lane 3da04a0bb1 Stamp 9.0.12. 2013-02-04 16:28:41 -05:00
Tom Lane e5e8ad3df5 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:24:01 -05:00
Tom Lane 6fa51d4ba7 Stamp 9.0.11. 2012-12-03 15:22:30 -05:00
Tom Lane 22cdae947b Stamp 9.0.10. 2012-09-19 17:53:08 -04:00
Tom Lane 3b849dbf41 Stamp 9.0.9. 2012-08-14 18:43:20 -04:00
Tom Lane eab246d75f Stamp 9.0.8. 2012-05-31 19:09:35 -04:00
Tom Lane f054f631a0 Stamp 9.0.7. 2012-02-23 17:56:26 -05:00
Tom Lane 29f65a844b 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:41 -05:00
Tom Lane bb65cb8cdf 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:05 -05:00
Andrew Dunstan 517462faf0 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:13:01 -05:00
Tom Lane 1c635b03c1 Stamp 9.0.6. 2011-12-01 16:49:59 -05:00
Tom Lane 8522403c5c Stamp 9.0.5. 2011-09-22 18:00:48 -04:00
Marc G. Fournier ffb39e1aed Tag 9.0.4. 2011-04-15 00:15:53 -03:00
Andrew Dunstan 2ea865de56 Backport changes to allow building with MinGW 64 bit compiler.
These changes have been in HEAD for some time with no ill effect. They
are only being backported to 9.0, as the required WINNT version was not
high enough before that.
2011-04-09 17:59:27 -04:00
Marc G. Fournier 2fb64d8570 Tag 9.0.3 2011-01-27 22:21:31 -04:00
Tom Lane 770bddc1b4 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:49 -05:00
Marc G. Fournier 178ca03f1c Tag 9.0.2. 2010-12-13 22:55:50 -04:00
Marc G. Fournier fd51c16ce9 Tag 9.0.1 2010-10-01 10:28:42 -03:00
Tom Lane 5074f68848 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:46 -04:00
Marc G. Fournier 861861edcc tag v9.0.0 ... the big day approaches 2010-09-17 01:18:41 +00:00
Marc G. Fournier ee48d27e34 tag rc1 ... final stretch ... 2010-08-27 03:04:41 +00:00
Marc G. Fournier 5f3c54a3a6 tag for beta4 2010-07-30 03:31:41 +00:00
Marc G. Fournier 1084f31770 tag beta3 2010-07-09 02:43:12 +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
Marc G. Fournier dcd52a64bd tag 9.0beta2 2010-06-04 07:28:30 +00:00
Michael Meskes 29259531c7 Replace self written 'long long int' configure test by standard 'AC_TYPE_LONG_LONG_INT' macro call. 2010-05-25 17:28:20 +00:00
Michael Meskes 555a02f910 Added a configure test for "long long" datatypes. So far this is only used in ecpg and replaces the old test that was kind of hackish. 2010-05-25 14:32:55 +00:00
Tom Lane 382ff21203 Fix up lame idea of not using autoconf to determine if platform has scandir().
Should fix buildfarm failures.
2010-05-13 22:07:43 +00:00
Marc G. Fournier f9d9b2b34a tag for 9.0beta1 2010-04-30 03:16:58 +00:00