Commit Graph

611 Commits

Author SHA1 Message Date
Bruce Momjian
0a6990e4dc Turn off strict aliasing when using AIX xlc compiler.
autoconf run.
2006-04-27 14:27:04 +00:00
Bruce Momjian
0606860a20 Revert Intel compiler bug comment. 2006-04-22 00:29:41 +00:00
Bruce Momjian
4e0783049d Add mentioun of Intel compiler bug:
Intel compiler has a bug in checking for division by NAN
# (NaN == 0), -mp1 fixes it, so someday we might way to add it.
2006-04-22 00:27:30 +00:00
Bruce Momjian
899f49cfce Use special gcc -W flags only if we are using gcc, not if we are using
the Intel compiler.

Jeremy Drake
2006-04-21 23:11:58 +00:00
Tom Lane
04ca4caa81 Remove use of lorder and tsort while building static libraries. There's
no evidence that any currently-supported platform needs this, and good
reason to think that any platform that did need it couldn't use the static
libraries anyway --- libpq, at least, has circular references.  Removing
the code shuts up tsort warnings about the circular references on some
platforms.
2006-04-19 16:32:08 +00:00
Andrew Dunstan
39ec43a271 Revert getaddrinfo configure changes until we get a solution that is
properly tested on Tru64 - pre recent discussion (or lack thereof) on -hackers.
2006-04-07 17:50:03 +00:00
Bruce Momjian
357cc01e57 This patch adds native LDAP auth, for those platforms that don't have
PAM (such as Win32, but also unixen without PAM). On Unix, uses
OpenLDAP. On win32, uses the builin WinLDAP library.

Magnus Hagander
2006-03-06 17:41:44 +00:00
Bruce Momjian
f2f5b05655 Update copyright for 2006. Update scripts. 2006-03-05 15:59:11 +00:00
Bruce Momjian
b04d19f230 Fix PG_VERSION_NUM for different awk -F handling. 2006-02-28 22:34:24 +00:00
Bruce Momjian
c979afb7e0 Fix PG_VERSION_NUM awk -F parameter. 2006-02-28 21:59:19 +00:00
Bruce Momjian
03024ca5a1 Add PG_VERSION_NUM for use by 3rd party applications wanting to test the
backend version in C using > and < comparisons.
2006-02-28 16:41:21 +00:00
Tom Lane
af49a1634f Adjust probe for getaddrinfo to cope with macro-ized definitions, such
as Tru64's.  Per previous discussion.
2006-02-21 06:06:50 +00:00
Tom Lane
bba11cdd97 Since we only use libld on AIX, don't include it in LIBS on any other
platforms (it does exist on HPUX, for one).  We could probably even make
this a test for specific AIX versions, but I don't know which ones need it.
2006-02-15 17:23:10 +00:00
Peter Eisentraut
12fca1f6fa Fix up remaining library checks. 2006-02-10 11:35:47 +00:00
Peter Eisentraut
50610ef8b5 Remove some checks for libraries that no one can identify. We'll see how
that works out...
2006-02-07 11:22:41 +00:00
Bruce Momjian
9e66c3e6fe Move thread_test directory from /tools to /test so source-only tarballs
have the directory for the configure test.
2006-02-04 01:00:02 +00:00
Peter Eisentraut
0e04982e78 First attempt at removing some AC_CHECK_LIB(foo, main) calls. 2006-02-04 00:42:54 +00:00
Bruce Momjian
ebd38e3c1d Allow MEMSET_LOOP_LIMIT to be set on a per-platform basis, and turn off
MemSet on AIX by setting MEMSET_LOOP_LIMIT to zero.

Add optimization to skip MemSet tests in MEMSET_LOOP_LIMIT == 0 case and
just call memset() directly.
2006-02-03 13:53:15 +00:00
Tom Lane
558bc2584d Fix fsync code to test whether F_FULLFSYNC is available, instead of
assuming it always is on Darwin.  Per report from Neil Brandt.
2006-01-17 23:52:31 +00:00
Tom Lane
db0558c113 Use a more bulletproof test for whether finite() and isinf() are present.
It seems that recent gcc versions can optimize away calls to these functions
even when the functions do not exist on the platform, resulting in a bogus
positive result.  Avoid this by using a non-constant argument and ensuring
that the function result is not simply discarded.  Per report from
François Laupretre.
2006-01-12 19:23:22 +00:00
Bruce Momjian
44f9021223 Remove BEOS port. 2006-01-05 03:01:38 +00:00
Bruce Momjian
a1675649e4 Remove QNX port. 2006-01-05 01:56:30 +00:00
Bruce Momjian
228b1f8e01 Add URL for Solaris qsort() bug. 2005-12-17 00:35:50 +00:00
Bruce Momjian
87a02848b5 Update doc mention that Solaris qsort() might be fixed. 2005-12-17 00:33:33 +00:00
Peter Eisentraut
2986f42984 Put [] around default value for port number. 2005-12-08 21:29:25 +00:00
Bruce Momjian
ca430500ce Add documentation on the use of *printf() macros and libintl.
Backpatch to 8.1.X.
2005-12-06 18:35:10 +00:00
Bruce Momjian
ef31c2bf2e Add comment on why pg *printf functions are used unconditionally on
Win32.

Backpatch to 8.1.X.
2005-12-06 04:53:02 +00:00
Tom Lane
e0e7589169 Make Win32 build use our port/snprintf.c routines, instead of depending
on libintl which may or may not provide what we need.  Make a few marginal
cleanups to ensure this works.  Andrew Dunstan and Tom Lane.
2005-12-06 02:29:04 +00:00
Bruce Momjian
10e3d224e0 Add configure flag to allow libedit to be preferred over GNU readline:
--with-libedit-preferred  prefer BSD Libedit over GNU Readline
2005-12-04 03:52:29 +00:00
Tom Lane
667ba8ccb1 Brand HEAD branch as 8.2devel. 2005-11-05 16:42:02 +00:00
PostgreSQL Daemon
2a80c3c4dc Tag everything for 8.1.0 ... Finally, a relesae on scheduale!! 2005-11-05 04:01:57 +00:00
PostgreSQL Daemon
d8247b0f50 tag it for rc1 2005-10-30 05:06:03 +00:00
PostgreSQL Daemon
106388fbe8 update configure and bugtemplate for beta 4 ... 2005-10-22 22:46:33 +00:00
PostgreSQL Daemon
5f470ad491 update to beta3 before tagging ... 2005-10-11 23:26:43 +00:00
Tom Lane
93d358a8a4 Add -Winline to the default CFLAGS for gcc, and remove
-Wold-style-definition, per recent discussion.
2005-10-05 17:11:45 +00:00
PostgreSQL Daemon
cd85918090 tag it all beta2 ... 2005-09-16 17:15:55 +00:00
Tom Lane
ea849a2648 Add comment explaining that autoconf's failure to find getaddrinfo()
on Windows is now a feature, not a bug.
2005-08-25 02:28:03 +00:00
PostgreSQL Daemon
cc88ed6303 fix up a few references to 8.1devel -> 8.1beta1 2005-08-24 21:32:41 +00:00
Bruce Momjian
43bf3a6bc6 The attached patch updates the thread test program to run stand-alone on
Windows. The test itself is bypassed in configure as discussed, and
libpq has been updated appropriately to allow it to build in thread-safe
mode.

Dave Page
2005-08-23 21:02:05 +00:00
Bruce Momjian
a970a8cb95 Back out incorrect commit. 2005-08-23 20:48:47 +00:00
Bruce Momjian
eef7e30cc1 Fix function name. 2005-08-23 20:45:11 +00:00
Tom Lane
0007490e09 Convert the arithmetic for shared memory size calculation from 'int'
to 'Size' (that is, size_t), and install overflow detection checks in it.
This allows us to remove the former arbitrary restrictions on NBuffers
etc.  It won't make any difference in a 32-bit machine, but in a 64-bit
machine you could theoretically have terabytes of shared buffers.
(How efficiently we could manage 'em remains to be seen.)  Similarly,
num_temp_buffers, work_mem, and maintenance_work_mem can be set above
2Gb on a 64-bit machine.  Original patch from Koichi Suzuki, additional
work by moi.
2005-08-20 23:26:37 +00:00
Tom Lane
cb6a08c9b3 Remove unnecessary configure test for inet_ntop(), per Andrew Dunstan. 2005-08-17 20:20:10 +00:00
Tom Lane
558730ac6b Clean up CREATE DATABASE processing to make it more robust and get rid
of special case for Windows port.  Put a PG_TRY around most of createdb()
to ensure that we remove copied subdirectories on failure, even if the
failure happens while creating the pg_database row.  (I think this explains
Oliver Siegmar's recent report.)  Having done that, there's no need for
the fragile assumption that copydir() mustn't ereport(ERROR), so simplify
its API.  Eliminate the old code that used system("cp ...") to copy
subdirectories, in favor of using copydir() on all platforms.  This not
only should allow much better error reporting, but allows us to fsync
the created files before trusting that the copy has succeeded.
2005-08-02 19:02:32 +00:00
Bruce Momjian
261ffd03f7 Reverse out because the lack of using pgport in timezone/ is causing
problems:

---------------------------------------------------------------------------

Support cross compilation by compiling "zic" with a native compiler.
This relies on the output of zic being platform independent, but that is
currently the case.
2005-07-06 21:04:14 +00:00
Tom Lane
c19aa704c8 Fix contrib/pgcrypto to autoconfigure for OpenSSL when --with-openssl
is used in the toplevel configure.  Per Marko Kreen.
2005-07-05 23:13:57 +00:00
Peter Eisentraut
85884cb1de Support cross compilation by compiling "zic" with a native compiler. This
relies on the output of zic being platform independent, but that is
currently the case.
2005-07-03 18:54:28 +00:00
Peter Eisentraut
875efad481 Update to autoconf 2.59 as well as updates of related scripts 2005-07-01 18:17:31 +00:00
Neil Conway
a159ad3048 Remove support for Kerberos V4. It seems no one is using this, it has
some security issues, and upstream has declared it "dead". Patch from
Magnus Hagander, minor editorialization from Neil Conway.
2005-06-27 02:04:26 +00:00
Bruce Momjian
72c53ac3a7 Allow kerberos name and username case sensitivity to be specified from
postgresql.conf.

---------------------------------------------------------------------------


Here's an updated version of the patch, with the following changes:

1) No longer uses "service name" as "application version". It's instead
hardcoded as "postgres". It could be argued that this part should be
backpatched to 8.0, but it doesn't make a big difference until you can
start changing it with GUC / connection parameters. This change only
affects kerberos 5, not 4.

2) Now downcases kerberos usernames when the client is running on win32.

3) Adds guc option for "krb_caseins_users" to make the server ignore
case mismatch which is required by some KDCs such as Active Directory.
Off by default, per discussion with Tom. This change only affects
kerberos 5, not 4.

4) Updated so it doesn't conflict with the rendevouz/bonjour patch
already in ;-)

Magnus Hagander
2005-06-04 20:42:43 +00:00
Bruce Momjian
c9a382b2ed Rename Rendezvous to Bonjour to match OS/X renaming. 2005-05-15 00:26:19 +00:00
Neil Conway
d733f110cd Revert the ld --as-needed patch. This breaks Fedora Core 3, due to a strange
interaction between ld, readline, termcap, and psql. The symptom is psql
failing with this error on startup:

    symbol lookup error: /usr/lib64/libreadline.so.4: undefined symbol: BC

I'm still trying to find the best way to solve this, but in the mean time
I'm reverting the patch in order to unbreak FC3.
2005-05-07 05:48:50 +00:00
Bruce Momjian
64c8635a4d On Win32, libintl replaces snprintf() with its own version that
understands arg control, so we don't need our own.  In fact, it
also uses macros that conflict with ours, so we _can't_ use
our own.
2005-05-05 19:15:54 +00:00
Neil Conway
d445b413c6 The issue has been raised in the past that our build system links each
executable against the maximal set of libraries it might need. So for
example, if one executable requires `libreadline', all executables are
linked against it.

The easiest fix is to make use of GNU ld's --as-needed flag, which
ignores linker arguments that are not actually needed by the specified
object files. The attached patch modifies configure to check for this
flag (when using GNU ld), and if ld supports it, adds the flag to
LDFLAGS (we need to do the check since only relatively recent versions
of GNU ld support this capability). Currently only GNU ld is supported;
I'm not aware of any other linkers that support this functionality.
2005-05-05 11:50:18 +00:00
Tom Lane
e6befdc9d1 Kerberos fixes from Magnus Hagander --- in theory Kerberos 5 auth
should work on Windows now.  Also, rename set_noblock to pg_set_noblock;
since it is included in libpq, the former name polluted application
namespace.
2005-03-25 00:34:31 +00:00
Bruce Momjian
3bc6bdf322 Define snprintf() to call pg_snprintf() so our own snprintf-like
implementation doesn't export out via libpq and get used by a user
application.
2005-03-11 17:20:35 +00:00
Bruce Momjian
8ba5169abd Use test && test rather than test -a, per Peter. 2005-03-02 15:42:35 +00:00
Bruce Momjian
bb7a3a740c Use our own snprintf() only if NLS is enabled, and support %qd and %I64d. 2005-03-02 14:48:22 +00:00
Tom Lane
5c4a91c295 Un-break configure snprintf tests (partly my fault, partly Bruce's). 2005-02-28 20:55:18 +00:00
Bruce Momjian
f1430ce063 Move PGAC_FUNC_PRINTF_ARG_CONTROL to just above snprintf 64-bit tests so
its output can be used to select the proper printf outputs.
2005-02-28 20:36:05 +00:00
Tom Lane
13227910e4 We aren't supposed to try to run test programs until after we've
verified that AC_TRY_RUN works.
2005-02-24 02:12:15 +00:00
Bruce Momjian
b4feafb6ff Add support to port/snprintf.c for position parameter specification:
+ # Determine if printf supports %1$ argument selection, e.g. %5$ selects
+ # the fifth argument after the printf print string.
+ # This is not in the C99 standard, but in the Single Unix Specification (SUS).
+ # It is used in our langauge translation strings.

Nicolai Tufar with configure changes by Bruce.
2005-02-22 03:56:22 +00:00
Bruce Momjian
4b2b6930ad Stamp 8.1 in configure. 2005-01-18 05:23:36 +00:00
PostgreSQL Daemon
c22b7eccd3 its that time ... tag it for release 2005-01-17 20:47:10 +00:00
PostgreSQL Daemon
6ff408707e up release to rc5 2005-01-11 05:29:21 +00:00
PostgreSQL Daemon
75a59ad6d1 upgrade tags to rc4 2005-01-07 02:44:31 +00:00
Tom Lane
a17e589046 Adjust a few more copyright notices to match the format expected by
the src/tools/copyright script.
2005-01-01 22:14:33 +00:00
PostgreSQL Daemon
2ff501590b Tag appropriate files for rc3
Also performed an initial run through of upgrading our Copyright date to
extend to 2005 ... first run here was very simple ... change everything
where: grep 1996-2004 && the word 'Copyright' ... scanned through the
generated list with 'less' first, and after, to make sure that I only
picked up the right entries ...
2004-12-31 22:04:05 +00:00
PostgreSQL Daemon
2ddcd4cad5 tag files for rc2 2004-12-21 02:53:33 +00:00
Tom Lane
da59a70c09 Remove direct inclusions of <com_err.h> as well as configure test for
its presence.  This amounts to desupporting Kerberos 5 releases 1.0.*,
which is small loss, and simplifies use of our Kerberos code on platforms
with Red-Hat-style include file layouts.  Per gripe from John Gray and
followup discussion.
2004-12-20 17:13:41 +00:00
Tom Lane
8ec9608326 Cause configure --with-tcl to check for presence of <tcl.h>, as per
gripe from John Gray.  Also fix thinko in pltcl Makefile: if a special
Tcl include directory is specified, that ought to be searched first.
2004-12-16 20:41:01 +00:00
PostgreSQL Daemon
f51964fa76 tag configure for rc1 .. 2004-12-03 22:24:53 +00:00
Tom Lane
c5bf116367 Allow libedit to keep its headers in /usr/include/readline/ ... not a
very good practice IMHO, but apparently some people think so.
2004-12-02 21:41:12 +00:00
Bruce Momjian
8408f65252 Rework libpq threaded SIGPIPE handling to avoid interference with
calling applications.  This is done by blocking sigpipe in the libpq
thread and using sigpending/sigwait to possibily discard any sigpipe we
generated.
2004-12-02 15:32:54 +00:00
Tom Lane
aef2d0d86c Fix readline/libedit selection code to prefer readline over libedit
reliably (ie, regardless of which libraries they depend on).  Also
make sure that we don't select headers that obviously belong to the
wrong one of the two libraries.  This was discussed back around 4-Sep
but seems to have slipped through the cracks.  The header selection
could be checked more closely, perhaps, but let's see if this is good
enough.
2004-11-30 06:13:04 +00:00
PostgreSQL Daemon
5776feab0a update us to beta5 2004-11-22 03:06:35 +00:00
Tom Lane
336969e490 Add code to find_my_exec() to resolve a symbolic link down to the
actual executable location.  This allows people to continue to use
setups where, eg, postmaster is symlinked from a convenient place.
Per gripe from Josh Berkus.
2004-11-06 23:06:29 +00:00
Bruce Momjian
fa82cddfd2 Move pthread.h test up to use PTHREAD_CFLAGS.
Kris Jurka
2004-11-02 05:44:45 +00:00
PostgreSQL Daemon
346aff04be make sure we tag configure.in as beta4 as well ... 2004-10-25 00:11:04 +00:00
Neil Conway
857e210ea9 When using GCC, change the default CFLAGS to:
-O2 -Wall -Wmissing-prototypes -Wpointer-arith

Check whether the version of GCC we are using supports any of:

  -Wdeclaration-after-statement
  -Wendif-labels
  -Wold-style-definition

And add the supported flags to CFLAGS.
2004-10-20 02:12:07 +00:00
Bruce Momjian
4d94e99b90 > This lets you do something like:
>
>    ./configure LDFLAGS=-static-libgcc LDFLAGS_SL=-static-libgcc
>
> to produce binaries that do not depend on libgcc_s.so at all.

Oliver Jowett
2004-10-15 05:11:00 +00:00
Bruce Momjian
902ca3e225 Here is a patch to fix win32 ssl builds. Summary of changes:
* Links with -leay32 and -lssleay32 instead of crypto and ssl. On win32,
"crypto and ssl" is only used for static linking.

* Initializes SSL in the backend and not just in the postmaster. We
cannot pass the SSL context from the postmaster through the parameter
file, because it contains function pointers.

* Split one error check in be-secure.c. Previously we could not tell
which of three calls actually failed. The previous code also returned
incorrect error messages if SSL_accept() failed - that function needs to
use SSL_get_error() on the return value, can't just use the error queue.

* Since the win32 implementation uses non-blocking sockets "behind the
scenes" in order to deliver signals correctly, implements a version of
SSL_accept() that can handle this. Also, add a wait function in case
SSL_read or SSL_write() needs more data.

Magnus Hagander
2004-10-06 09:35:23 +00:00
Neil Conway
3738510c2c Remove more traces of libpgtcl from the source tree. Also, make some
semi-related SGML cleanup. Original patch from ljb220@mindspring.com,
additional cleanup by Neil Conway.
2004-10-01 02:00:44 +00:00
PostgreSQL Daemon
93371ed3a5 update for beta3, and update Copyright date to 2004 2004-09-27 02:17:14 +00:00
Peter Eisentraut
915351e9c7 Add support for GNU/Hurd and GNU/*BSD. For our purposes, they behave just
like Linux; we just need to recognize the system types.
2004-09-17 22:31:59 +00:00
Bruce Momjian
256ee0d5f3 Use $PORTNAME consistently instead of $host_os, where appropriate. 2004-09-10 13:53:40 +00:00
Tom Lane
3a6f1313b5 Use $PATH_SEPARATOR like the rest of the autoconf code, instead of
hardwiring IFS=: when searching paths.
2004-09-02 15:39:56 +00:00
PostgreSQL Daemon
25aba1cafd tag configure beta2 2004-08-31 04:08:33 +00:00
PostgreSQL Daemon
708de8136b tag her configure 8.0.0beta1 ... 2004-08-08 23:27:11 +00:00
Bruce Momjian
5e01aa7ad1 Fixups for Win32 symlinks. 2004-08-08 01:31:15 +00:00
Tom Lane
fcbc438727 Label CVS tip as 8.0devel instead of 7.5devel. Adjust various comments
and documentation to reference 8.0 instead of 7.5.
2004-08-04 21:34:35 +00:00
Bruce Momjian
ca9540d34f Add docs for initdb --auth. 2004-08-01 06:19:26 +00:00
Bruce Momjian
b8a89da230 Suppress readline usage in mingw in configure. 2004-07-20 20:37:13 +00:00
Peter Eisentraut
d0c1bbdcc6 Rename AC_PROG_LD* macros to PGAC_PROG_LD*. This avoids clashes with the
macros provided by the real libtool, when other packages borrow some macros
from PostgreSQL, as in the case of the ODBC driver.
2004-07-17 18:53:56 +00:00
Peter Eisentraut
a837ed88b1 Detect locale/encoding mismatch in initdb, or pick a suitable encoding
automatically if none was specified.
2004-07-14 17:55:10 +00:00
Bruce Momjian
732f2fda82 Add --enable-thread-safety-force to force a thread compile even if the
OS thread tests fail.
2004-07-10 01:24:29 +00:00
Tom Lane
a061a3f62f Avoid including <sys/time.h> on platforms that don't have it.
Per trouble report from Andreas Pflug.
2004-06-24 18:55:21 +00:00
Bruce Momjian
1d2dbf0797 Improve comment. 2004-06-16 03:01:32 +00:00
Bruce Momjian
e854bc4ac7 Do PGAC_FUNC_GETPWUID_R_5ARG and PGAC_FUNC_STRERROR_R_INT tests with the
same thread flags that will be used to compile thread.c.  Add comment to
make sure no one breaks it.
2004-06-16 02:58:28 +00:00
Bruce Momjian
327d86ca99 Fix mingw link check by using double-brackets. 2004-06-08 14:06:35 +00:00
Bruce Momjian
a63d2168e9 Fix strerror_r by checking return type from configure. 2004-06-07 22:39:45 +00:00
Bruce Momjian
f54b95655e Remove quotes around $CONFIG_LINKS. Caused improper expansion. 2004-05-28 20:52:42 +00:00
Bruce Momjian
6f21f4adaa Move pgkill out into /port so pg_ctl can use it on Win32. 2004-05-27 13:08:57 +00:00
Tom Lane
3983869439 Use wide-character library routines, if available, for upper/lower/initcap
functions.  This allows these functions to work correctly with Unicode and
other multibyte encodings.  Per prior discussion.

Also, revert my earlier change to move installation path mashing from
Makefile.global to configure.  Turns out not to work well because configure
script is working with unexpanded variables, and so fails to match in
cases where it should match.
2004-05-22 00:34:51 +00:00
Tom Lane
13f96c4b6b Put path configuration information into a .h file instead of cluttering
several different module Makefiles with it.  Also, do any adjustment
of installation paths during configure, rather than every time Makefile.global
is read.
2004-05-21 20:56:50 +00:00
Tom Lane
63bd0db121 Integrate src/timezone library for all platforms. There is more we can
and should do now that we control our own destiny for timezone handling,
but this commit gets the bulk of the picayune diffs in place.
Magnus Hagander and Tom Lane.
2004-05-21 05:08:06 +00:00
PostgreSQL Daemon
58c42f37ab benign change ...added space to end of line 2004-05-20 23:49:41 +00:00
Bruce Momjian
4da36853ce Revert irix change to suppress configure warnings. 2004-05-19 22:36:36 +00:00
Bruce Momjian
5c1cfb5fc1 Configure adjustments for irix.
David Turover
2004-05-19 22:12:30 +00:00
Bruce Momjian
14531e0c44 Rename irix5 port to irix. 2004-05-19 21:37:43 +00:00
Bruce Momjian
60a526e8f1 Improve win32 link test. Previous commit added most of the code, but
this commit enables only for Mingw.
2004-05-18 04:11:29 +00:00
Bruce Momjian
f3f8d36a57 Update Makefile dependencies for Win32 timezones, per Claudio. 2004-05-18 04:10:33 +00:00
Bruce Momjian
4307ca2a40 Improve configure win32 link test to run from config.status.
Andrew Dunstan
2004-05-17 19:14:47 +00:00
Bruce Momjian
a676b852e8 Refactor code to warn about configure link failures on MinGW. 2004-05-13 22:59:14 +00:00
Bruce Momjian
550fbc6a98 Warn when MinGW fails to create symlinks during configure. Report
already made to MinGW maintainers.

Andrew Dunstan
2004-05-13 01:45:02 +00:00
Bruce Momjian
fda15b351a As part of the work for making relocatable installs, I have re-factored
all the code that looks for other binaries.  I move FindExec into
port/exec.c (and renamed it to find_my_binary()).  I also added
find_other_binary that looks for another binary in the same directory as
the calling program, and checks the version string.

The only behavior change was that initdb and pg_dump would look in the
hard-coded bindir directory if it can't find the requested binary in the
same directory as the caller.  The new code throws an error.  The old
behavior seemed too error prone for version mismatches.
2004-05-11 21:57:15 +00:00
Tom Lane
0bd61548ab Solve the 'Turkish problem' with undesirable locale behavior for case
conversion of basic ASCII letters.  Remove all uses of strcasecmp and
strncasecmp in favor of new functions pg_strcasecmp and pg_strncasecmp;
remove most but not all direct uses of toupper and tolower in favor of
pg_toupper and pg_tolower.  These functions use the same notions of
case folding already developed for identifier case conversion.  I left
the straight locale-based folding in place for situations where we are
just manipulating user data and not trying to match it to built-in
strings --- for example, the SQL upper() function is still locale
dependent.  Perhaps this will prove not to be what's wanted, but at
the moment we can initdb and pass regression tests in Turkish locale.
2004-05-07 00:24:59 +00:00
Tom Lane
9e16195f3f Second try at a portable unsetenv(). 2004-05-05 21:18:29 +00:00
Bruce Momjian
82700281d0 More cleanups for USE_PGTZ. 2004-04-30 16:08:01 +00:00
Bruce Momjian
b99a3a7541 Rename to USE_PGTZ to match code. 2004-04-30 15:01:25 +00:00
Bruce Momjian
7146eb0bc3 Integrate timezone library to be called only from Win32.
Timezone code backend integration done by Magnus Hagander.
2004-04-30 04:31:52 +00:00
Bruce Momjian
7d6f37b8c0 Enable use of our own timezone library for Win32. 2004-04-30 04:18:28 +00:00
Bruce Momjian
9e6b8d7744 Improve thread failure wording. 2004-04-27 20:09:27 +00:00
Bruce Momjian
75a5cbf31b Enable thread testing outside the source tree. 2004-04-27 20:06:52 +00:00
Bruce Momjian
e27338f26c Do thread testing from configure in a much cleaner fashion. 2004-04-27 19:51:12 +00:00
Bruce Momjian
8f367dd31b Fix vpath for thread test. 2004-04-26 19:08:57 +00:00
Bruce Momjian
9cb7b76ec7 More cleanup of thread tests. 2004-04-26 13:14:48 +00:00
Bruce Momjian
30a06fe2c4 Unconditionally define:
-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS

for all ports.  It can't hurt if they are not supported, but it makes
our job easier for porting.

Should fix Darwin compile and other platforms without mucking with the
thread detection code.
2004-04-26 04:04:42 +00:00
Bruce Momjian
6647ce87fe Exit with non-zero error on thread test failures. 2004-04-26 00:44:39 +00:00
Bruce Momjian
022a1e0cf1 More thread error improvements. 2004-04-26 00:34:12 +00:00
Bruce Momjian
d7f9c9d558 Improve thread error message. 2004-04-26 00:32:00 +00:00
Bruce Momjian
e03a253c15 Improve error message for platform thread failure. 2004-04-26 00:29:24 +00:00
Bruce Momjian
1cb7f2ebf3 More thread cleanups. 2004-04-25 21:09:08 +00:00
Bruce Momjian
bc6ecbfeb3 Add mention to check config.log if thread test failure. 2004-04-25 21:04:59 +00:00
Bruce Momjian
45fbab2933 Make thread flags CFLAGS, not CPPFLAGS. 2004-04-25 20:57:32 +00:00
Bruce Momjian
e295c55fae Check for gmake, then make, when doing thread test. 2004-04-24 03:09:35 +00:00
Bruce Momjian
f6646efa4c Hook thread_test program run at the end of configure run.
Add test for cross-compiles that they have to run the thread_test
program on the target machine.
2004-04-23 23:58:12 +00:00
Bruce Momjian
7a66015e98 Add new auto-detection of thread flags.
Allow additional thread flags to be added via port templates.

Change thread flag names to PTHREAD_CFLAGS and PTHREAD_LIBS to match new
configure script.
2004-04-23 18:15:55 +00:00
PostgreSQL Daemon
41fa9e9bae Remove all of the libpgtcl and pgtclsh files, including all references to
them within the various makefiles

with_tcl is still required for the src/pl/tcl language
2004-04-20 00:33:53 +00:00
Bruce Momjian
b8fd6756e2 Allow unlink/rename of files open by another process on Win32, using a
special Win32 open flag FILE_SHARE_DELETE.

Claudio Natoli
2004-03-24 03:54:16 +00:00
Bruce Momjian
34ce6b41cf Always test getpwuid_r because HEAD always uses *_r if it finds them.
Not an issue for 7.4.X.
2004-03-20 16:11:22 +00:00
Bruce Momjian
aaf54d99f0 Handle draft version of getpwuid_r() that accepts only four arguments.
Backpatch to 7.4.X.  Required for Solaris 7 & 8.
2004-03-20 15:39:27 +00:00
Bruce Momjian
df6b11db52 Add comment for Win32. 2004-03-09 22:40:10 +00:00
Bruce Momjian
6819787c9b Fix wording of new bison warning, per Peter. 2004-03-03 17:37:22 +00:00
Bruce Momjian
351cf4d04e Update bison warning to be clearer about its purpose. 2004-03-02 20:08:52 +00:00
Bruce Momjian
c6f0559371 Check and set thread-safe functions separately, rather than as a single
variable.

Remove thread locking for non-thread-safe functions, instead throw a
compile error.

Platforms will have to re-run tools/thread to record their thread
safety.
2004-02-11 21:44:06 +00:00
Bruce Momjian
15b330b648 Properly set NEED_REENTRANT_FUNCS for threaded libpq/ecpg.
Without this patch, no thread locking or *_r functions were being used.
2004-02-11 17:29:01 +00:00
Tom Lane
127ea18f48 Add configure support for determining UINT64_FORMAT, the appropriate
snprintf format for uint64 items.
2004-02-10 19:55:45 +00:00
Bruce Momjian
9dac52649d Win32 adjustments for dirmod and configure/configure.in. 2004-02-02 22:20:33 +00:00
Bruce Momjian
98a5284170 Move win32 changes from configure to configure.in, per Tom, autoconf
run.
2004-02-02 16:00:49 +00:00
Tom Lane
bd046b99f0 Remove JDBC from the build system and documentation, too. 2004-01-19 21:20:06 +00:00
Bruce Momjian
ee7fbb1eaa Add WIN32 pipe implementation that uses sockets.
Claudio Natoli
2004-01-09 04:58:09 +00:00
Tom Lane
baee5f75c5 Push responsibility for selecting out-of-line-assembler TAS code out to
the platform template files, instead of doing it directly in configure.in.
This seems cleaner, and also opens the door to making the choice be
dependent on the compiler being used.
2003-12-23 18:40:53 +00:00
PostgreSQL Daemon
969685ad44 $Header: -> $PostgreSQL Changes ... 2003-11-29 19:52:15 +00:00
Peter Eisentraut
dd01cfe1c4 Remove possibility to specify an installation root after --with-krbx and
--with-openssl options.  This creates too much risk to pick up the wrong
directory accidentally (for example when there are lib64 directories), and
does not really help much with contemporary installation layouts.
2003-11-27 19:44:56 +00:00
Peter Eisentraut
859accdab3 Make sure vpath_build is set correctly even if config.status --no-create
was specified.
2003-11-27 18:14:02 +00:00
Peter Eisentraut
cf87eb4726 Upgrade to DocBook V4.2 SGML. 2003-11-24 19:08:02 +00:00
Peter Eisentraut
b3d72d3ec5 Use --with-docdir to choose installation location of documentation; put
back --infodir, which several automatic build environments expect to exist.
Add --without-docdir to prevent installation of documentation, which is
helpful for things like RPM that have their own method of installing
documentation.
2003-11-24 14:52:58 +00:00
Peter Eisentraut
8878cc4cd7 Rename USE_THREADS to ENABLE_THREAD_SAFETY to avoid name clash with Perl.
Fixes compilation failure with --enable-thread-safety --with-perl and Perl
5.6.1.
2003-11-24 13:16:22 +00:00
Tom Lane
0637d52d1f Tag HEAD as 7.5devel. 2003-11-03 14:42:08 +00:00
PostgreSQL Daemon
cc3a149cb0 tag it Release Candidate 1, as previously discussed 2003-11-03 05:27:18 +00:00
Peter Eisentraut
801427abc2 Unset CFLAGS before reading template. This should be more robust.
When --enable-debug is used, then the default CFLAGS for non-GCC is just
-g without -O.

Backpatch enhancement of Autoconf inline test that detects problems with
the HP C compiler.
2003-11-01 20:48:51 +00:00
Tom Lane
573f8c0116 Guard against Ant versions that print CLASSPATH before the version number
in -version output.  Per report from Johann Uhrmann.
2003-10-28 20:26:47 +00:00
Peter Eisentraut
378f59904a Fix CFLAGS selection to actually work. Add test to detect whether gcc's
option -fno-strict-aliasing is available.
2003-10-25 15:32:11 +00:00
PostgreSQL Daemon
7533e455f0 up configure to beta5 2003-10-22 04:16:39 +00:00
Tom Lane
37278c063f Cause the default CFLAGS to be -O2 -fno-strict-aliasing when using gcc,
per recent pghackers discussions.  Also ensure that explicitly setting
CFLAGS in the configure environment will be honored.
2003-10-15 22:23:56 +00:00
Bruce Momjian
fca71f4406 Add compile -O flag only for non-debug mode, per Tom 2003-10-14 00:48:09 +00:00
Bruce Momjian
0e22cb1232 This centralizes the optimization defaults into configure.in, rather
than having CFLAGS= in the template files.

It uses -O2 for gcc (generated by autoconf), and -O for non-gcc, unless
the template overrides it.
2003-10-09 03:20:34 +00:00
PostgreSQL Daemon
17f682488b brand her beta4 2003-10-03 03:08:14 +00:00
Bruce Momjian
391dceb462 Finalize configuration of thread_test program. 2003-09-27 16:24:45 +00:00
Bruce Momjian
227dd9b427 Rename thread compile flag. Move thread test program to tools/thread,
and improve tests.
2003-09-27 15:32:48 +00:00
PostgreSQL Daemon
baba02a84e tag her for beta3, as announced on Friday ... 2003-09-15 14:32:35 +00:00
Bruce Momjian
bcd8986e7d Rename --without-spinlocks to --disable-spinlocks, per Peter. 2003-09-13 17:01:09 +00:00
Bruce Momjian
b041d3e3a1 Attempt threading in this order:
*      use non-*_r function names if they are all thread-safe
 *          (NEED_REENTRANT_FUNCS=no)
 *      use *_r functions if they exist (configure test)
 *      do our own locking and copying of non-threadsafe functions

New to this patch is the last option.
2003-09-13 14:49:51 +00:00
Bruce Momjian
06e3ec7a54 Implement compiler #error if spinlock code not found, add configure flag
to bypass the error, --without-spinlocks.
2003-09-12 16:10:27 +00:00
Bruce Momjian
96b4a9ac3a Add $srcdir for Win32 builds, from Peter. 2003-09-07 16:38:05 +00:00
Bruce Momjian
4b407f6c3c Changes for MinGW/WIN32:
o allow configure to see include/port/win32 include files
        o add matching Win32 accept() prototype
        o allow pg_id to compile with native Win32 API
        o fix invalide mbvalidate() function calls (existing bug)
        o allow /scripts to compile with native Win32 API
        o add win32.c to Win32 compiles (already in *.mak files)
2003-09-07 03:43:57 +00:00
Tom Lane
7703e55c32 Make the default pg_hba.conf include an entry for ::1 only if configure
set HAVE_IPV6.  Per recent discussions.
2003-09-07 03:36:03 +00:00
Peter Eisentraut
f10a9033bf Clean up after pygresql removal: adjust/remove documentation and remove
unneeded configure work.
2003-09-01 23:01:49 +00:00
PostgreSQL Daemon
14ef1c8603 update to beta2 2003-08-27 02:35:38 +00:00
Bruce Momjian
edc999b09a Make NEED_REENTRANT_FUNC_NAMES _require_ *_r functions, and add tests to
configure to report if they are not found.
2003-08-16 15:35:51 +00:00
Tom Lane
cae912d05b Do not link in libwsock32 on non-win32 platforms. Improve grammar
of thread-safety comments.
2003-08-11 18:07:38 +00:00
Tom Lane
31773533bd Fix typo. 2003-08-07 21:38:55 +00:00
Tom Lane
33ab177a56 Don't assume that struct option is available just because we can find a
getopt_long().  This is more or less the same problem as we saw earlier
with getaddrinfo() and struct addrinfo, and for the same reason: random
user-added libraries might contain the subroutine, but there's no
guarantee we will find the matching header files.
2003-08-07 21:11:58 +00:00
PostgreSQL Daemon
d10146c067 change tag to 7.4beta1 and update the Copyright to 2003
Guess what folks?  We are now in Beta!!
2003-08-04 22:30:30 +00:00
Bruce Momjian
98bf004421 Re-add USE_THREADS, used by ecpg. 2003-08-04 21:26:26 +00:00
Bruce Momjian
5c15cb4752 Fix thread handling in configure. 2003-08-04 16:48:03 +00:00
Tom Lane
4c3c8c048d Remove --enable-recode feature, since it's been broken by IPv6 changes,
and seems to have too few users to justify maintaining.
2003-08-04 04:03:10 +00:00
Tom Lane
850489ab7e Don't pull in libbind except on BeOS, per pgsql-bugs discussion around
12 Jun 2003.
2003-08-03 20:23:14 +00:00
Tom Lane
13ac54d1ca Since HPUX now exists for Itanium, we should decouple the assumption
that OS=hpux is the same as CPU=hppa.  First steps at doing this.
With these patches, we still work on hppa with either gcc or HP's cc.
We might work on hpux/itanium with gcc, but I can't test it.  Definitely
will not work on hpux/itanium with non-gcc compiler, for lack of spinlock
code.
2003-08-01 19:12:52 +00:00
Bruce Momjian
55103553ad --enable-thread-safeness -> --enable-thread-safety 2003-08-01 03:10:04 +00:00
Tom Lane
df63503dc2 Have a go at fixing various outstanding portability issues in code that
was modified for IPv6.  Use a robust definition of struct sockaddr_storage,
do a proper configure test to see if ss_len exists, don't assume that
getnameinfo() will handle AF_UNIX sockets, don't trust getaddrinfo to
return the protocol we ask for, etc.  This incorporates several outstanding
patches from Kurt Roeckx, but I'm to blame for anything that doesn't
work ...
2003-07-23 23:30:41 +00:00
Bruce Momjian
bd95e21594 Rename --with-threads to --enable-thread-safeness, per Peter. 2003-07-23 17:27:28 +00:00
Bruce Momjian
277dbb0c34 Fix threading configure tests, from Peter. 2003-07-22 16:39:55 +00:00
Bruce Momjian
99308891ef Remove references to sa_family_t, except when SOCKADDR_STORAGE requires
it.

Also handle __ss_family as a synonym for ss_family.

Kurt Roeckx
2003-06-23 23:52:00 +00:00
Bruce Momjian
4d9eede82f Move thread checking code farther down in conflgure. 2003-06-18 16:04:15 +00:00
Bruce Momjian
4f70680177 Make ecpg thread safe.
Lee Kindness
2003-06-15 04:07:58 +00:00
Bruce Momjian
ffa3bfbc30 Move thread os defines into template files. 2003-06-14 19:21:42 +00:00
Bruce Momjian
a16a031411 Make libpq thread-safe with configure --with-threads option.
Lee Kindness
2003-06-14 17:49:54 +00:00
Bruce Momjian
62b532b736 Add thread.c for libpq threading, and hook it into libpq/configure. 2003-06-14 14:35:42 +00:00