Commit Graph

239 Commits

Author SHA1 Message Date
Bruce Momjian 0d4aa039ac Fix agressive collection of thread flags. 2004-08-17 15:19:09 +00:00
Bruce Momjian 6a5718b1ee Fix syntax error just introduced. 2004-08-16 23:49:58 +00:00
Bruce Momjian e48322a6d6 Be more aggressive about adding flags to thread compiles. The configure
test only tests for building a binary, not building a shared library.

On Linux, you can build a binary with -pthread, but you can't build a
binary that uses a threaded shared library unless you also use -pthread
when building the binary, or adding -lpthread to the shared library
build.  This patch has the effect of doing the later by adding both
-pthread and -lpthread when building libpq.
2004-08-12 16:39:50 +00:00
Bruce Momjian 19f1370b1e Minor style cleanup of thread test script. 2004-08-12 14:58:37 +00:00
Peter Eisentraut adf57cd7e2 PostgreSQL extension makefile framework ("pgxs"), by Fabien Coelho, with
some massaging by Peter Eisentraut.  This is basically a simple
generalization of the existing contrib makefiles.
2004-07-30 12:26:40 +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
Bruce Momjian a63d2168e9 Fix strerror_r by checking return type from configure. 2004-06-07 22:39:45 +00:00
Bruce Momjian 5c1cfb5fc1 Configure adjustments for irix.
David Turover
2004-05-19 22:12:30 +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 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
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
Tom Lane 6f295328e5 Do not let external specification of CFLAGS stop us from adding
-fno-strict-aliasing.
2004-02-02 04:07:18 +00:00
Tom Lane bd046b99f0 Remove JDBC from the build system and documentation, too. 2004-01-19 21:20:06 +00:00
Bruce Momjian 36b0595d5e Add /usr/local/sgml/docbook-dsssl to the default search patch for
docbook style sheets, as discussed with Peter.
2003-12-13 20:25:18 +00:00
PostgreSQL Daemon 969685ad44 $Header: -> $PostgreSQL Changes ... 2003-11-29 19:52:15 +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 144a2ecd57 Make the detection of nsgmls more robust for funny shells. 2003-11-06 10:30:42 +00:00
Peter Eisentraut 661a0d64e6 Update install-sh and mkinstalldirs from master source (Automake). They
have included a few fixes over the years to make them more robust and
faster.
2003-11-04 10:59:58 +00:00
Peter Eisentraut f9415b4046 New config.guess and config.sub from upstream. 2003-11-04 10:31:33 +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
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
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
Peter Eisentraut f10a9033bf Clean up after pygresql removal: adjust/remove documentation and remove
unneeded configure work.
2003-09-01 23:01:49 +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 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
Tom Lane ccd99a5eb5 <sys/socket.h> requires <sys/types.h> to already have been included
on some platforms.
2003-06-12 16:05:10 +00:00
Bruce Momjian b4cea00a1f IPv6 cleanups.
Kurt Roeckx
Andrew Dunstan
2003-06-12 07:36:51 +00:00
Tom Lane c120f4ba0a Adjust configure so that extern tzname[] will be checked for
independently of whether the struct tm tm_zone member exists.
Also run autoheader, which seems not to have been done lately;
it added about three more things to pg_config.h.in than I was expecting...
2003-05-22 16:39:30 +00:00
Bruce Momjian e8f4f2f92d Properly test for buggy flex 2.5.3. 2003-05-06 23:33:52 +00:00
Tom Lane f690920a75 Infrastructure for upgraded error reporting mechanism. elog.c is
rewritten and the protocol is changed, but most elog calls are still
elog calls.  Also, we need to contemplate mechanisms for controlling
all this functionality --- eg, how much stuff should appear in the
postmaster log?  And what API should libpq expose for it?
2003-04-24 21:16:45 +00:00
Tom Lane e138630251 On some systems <sys/types.h> must be included before <sys/socket.h>. 2003-04-12 23:25:42 +00:00
Peter Eisentraut cb1d036acb Generate pg_config.h.in by autoheader. Separate out manually editable
parts.  Standardize spelling of comments in pg_config.h.
2003-04-06 22:45:23 +00:00
Tom Lane 1da6eb7fda Whack getaddrinfo() patch around until it works, more or less, on
machines without IPv6.  Or at least it works on HPUX 10.20 ...
2003-04-02 00:49:28 +00:00
Peter Eisentraut 955a1f81a7 Factor out the code that detects the long long int snprintf format into a
separate macro.  Also add support for %I64d which is the way on Windows.

The code that checks for the 64-bit int type now gives more reasonable
results when cross-compiling: In that case we just take the compiler's
information and trust that the arithmetic works.  Disabling int64 is too
pessimistic.
2003-01-28 21:57:12 +00:00
Peter Eisentraut e43ecb3d1a Remove leftovers from subproject removals. Fixes for Python and Kerberos
configuration.
2002-09-04 22:54:18 +00:00
Peter Eisentraut b0c3c48eb3 Assemble portability modules into libpgport library.
Some makefile simplifications.
2002-07-27 20:10:05 +00:00
Bruce Momjian 7fb9b5d434 This fixes 2 inaccuracies in the recently added SQL99 feature list docs.
UNIQUE and DISTINCT predicates are both listed as implemented -- AFAIK,
neither is.

I also included another trivial patch which adds the default location
of the DSSSL stylesheets on my system (Debian unstable, docbook-dsssl
1.76) to the list of paths that configure looks for.

Neil Conway
2002-07-16 00:51:37 +00:00
Peter Eisentraut 7662419f1b Change PL/Perl and Pg interface build to use configured compiler and
Makefile.shlib system, not MakeMaker.
2002-05-28 16:57:53 +00:00
Peter Eisentraut 2f2d05763d Change PL/Tcl build to use configured compiler and Makefile.shlib
system, not Tcl-provided one.

Make sure export file, if any, is cleaned.

Tcl configuration is now read directly in configure and recorded in
Makefile.global.  This eliminates some duplicate efforts and allows
for easier hand-editing of the results, if necessary.
2002-05-24 18:10:17 +00:00
Peter Eisentraut 2e32eca8d0 Allow detection of collateindex.pl in stylesheet directory or in path,
which covers some recent installation schemes.

Add Mandrake installation layout to directories to check for stylesheets.

Allow documentation build to proceed if stylesheets were not found, in case
the stylesheets might be found through the SGML catalog mechanism.
2002-04-14 17:23:20 +00:00
Peter Eisentraut 5c1f31d2d4 Readline and Zlib now required by default. Add options --without-readline
and --without-zlib to turn them off.
2002-04-10 22:47:09 +00:00
Peter Eisentraut 563673e15d Add make install-strip target. 2002-04-10 16:45:25 +00:00
Peter Eisentraut 25004eec95 Fix more random breakage manifesting on FreeBSD. 2002-03-30 00:59:52 +00:00
Peter Eisentraut ea13a3fab2 Add missing comma. 2002-03-29 20:54:33 +00:00
Peter Eisentraut 7c1ff35410 Upgrade to Autoconf version 2.53. Replaced many custom macro
calls with new or now-built-in versions.  Make sure that all
calls to AC_DEFINE have a third argument, for possible use of
autoheader in the future.
2002-03-29 17:32:55 +00:00
Peter Eisentraut 42c3381fc7 Heimdal support (Kerberos V implementation from KTH) 2002-02-23 04:17:47 +00:00
Bruce Momjian 8799d84603 Add memcmp() test and new memcmp.c file, for SunOS. Tested by Tatsuo. 2001-12-20 21:23:05 +00:00
Peter Eisentraut 15abc7788e More correct way to check for existence of types, which allows to specify
which include files to consider.  Should fix BeOS problems with int8 types.
2001-12-02 11:38:40 +00:00
Peter Eisentraut 7505e5d0cd Make prep_buildtree harmless when run on top of the source tree.
from Ian Lance Taylor
2001-09-10 23:28:59 +00:00
Peter Eisentraut 8f3627d89b Add explicit '-print' to 'find' commands.
(partially) from Ian Lance Taylor
2001-09-10 22:25:48 +00:00
Bruce Momjian a7621c92ae Update SCM_CREDS for Net/Free/BSD-OS. Add configure checks. 2001-09-07 19:52:54 +00:00
Peter Eisentraut 5298eb47dc Fix the readline test to find dependent libraries on NetBSD and OpenBSD.
Not pretty, but it doesn't look like the OS will get fixed sometime soon.
2001-08-28 14:59:11 +00:00
Peter Eisentraut ef7152f99b Put the right runpath to libpq into the Perl module shared object on more
platforms and without relinking.

Also support VPATH builds and DESTDIR installs.  One hopes.
2001-08-26 22:28:04 +00:00
Peter Eisentraut 5558e15ce5 Do not pre-expand localedir as substituted in the makefile, so that 'make
install prefix=elsewhere' works.
2001-08-06 15:46:44 +00:00
Peter Eisentraut 4e75fcb80c update from upstream 2001-08-06 13:58:26 +00:00
Peter Eisentraut 8237d89c0f Support fake root install, separate build dir, dependency tracking, our
choice of compiler and flags, uninstall, and peculiar Python installation
layouts for PyGreSql.  Also install into site-packages now, as officially
recommended.  And pgdb.py is also installed now, used to be forgotten.
2001-07-10 16:33:02 +00:00
Peter Eisentraut 2f3bd9eb88 Check for jakarta-ant before ant, in case 'ant' is the screen saver program.
Then, run a small reality test with $ANT to see whether it works.
2001-07-04 21:22:55 +00:00
Peter Eisentraut e542036461 Native Language Support (NLS)
Use --enable-nls to turn it on; see installation instructions for details.
See developer's guide how to make use of it in programs and how to add
translations.

psql sources have been almost fully prepared and an incomplete German
translation has been provided.  In the backend, only elog() calls are
currently translatable, and the provided German translation file is more
of a placeholder.
2001-06-02 18:25:18 +00:00
Peter Eisentraut bbc3920fe9 PL/Python should build portably now, if you can get over the fact that
there's no shared libpython.  Test suite works as well. Also, add some
documentation.
2001-05-12 17:49:32 +00:00
Peter Eisentraut 0d5407e6e0 Throw error if Ant is not found and Java is requested. Remove redundant
AC_SUBST that messed up the diversions and thus the configure output.
2001-03-11 11:24:59 +00:00
Peter Mount 79e2dd5875 There's always 1 file missed out ;-)
Found while testing against a full checkout. Peter
2001-03-05 10:02:35 +00:00
Peter Eisentraut 23e41fb7fb Add configure check for -lunix, for QNX.
Recode test for equality of source and build directory using 'test -ef',
because even using pwd you might not get equal strings.  Thanks, QNX.
2001-03-03 15:53:41 +00:00
Peter Eisentraut 2660803697 Only look for bison as YACC; other yaccs need to be selected explicitly.
When no suitable YACC is configured, supply useful informational messages
to users.  (Same way flex has been handled for a while.)
2001-02-10 22:31:42 +00:00
Peter Eisentraut 6afd28c8f2 Make more portable. 2001-02-09 20:24:08 +00:00
Peter Eisentraut 5610b6d9cb Only use termcap xor [n]curses, depending on what readline needs. Solaris
has problems when linking with both.
2001-02-06 19:20:16 +00:00
Tom Lane e9c936ff38 Remove rangechecks on errno; just call strerror unconditionally. This
eliminates a raft of portability issues, including whether sys_nerr
exists, whether the platform has any valid negative errnos, etc.  The
downside is minimal: errno shouldn't ever contain an invalid value anyway,
and if it does, reasonably modern versions of strerror will not choke.
This rangecheck idea seemed good at the time, but it's clearly a net loss,
and I apologize to all concerned for having ever put it in.
2001-01-22 23:28:52 +00:00
Peter Eisentraut 5508ef30e2 Make checks for global variables (sys_nerr, timezone) safe against getting
optimized away completely.
2001-01-10 17:07:18 +00:00
Peter Eisentraut c3f9371956 Add configure check for sys_nerr, to end all discussions. 2001-01-09 18:40:15 +00:00
Peter Eisentraut 6b70f3862c Also test for 'void *' as third arg of accept() (as on Solaris 7 and 8),
but take it as 'int *' instead.

Add real test for whether ld -R works on Unixware.

Rename --enable-uniconv to --enable-unicode-conversion.

Install shlibs mode 755 by default, since 644 causes gratuitous complaints
from ldd et al. on some systems.
2000-11-09 18:18:42 +00:00
Peter Eisentraut 7267fdd7a3 Add some configure checks for DocBook and related tools. With a somewhat
standard installation layout it should be possible to build the HTML
and print documentation without additional manual setup.
2000-11-05 21:04:07 +00:00
Peter Eisentraut dfda21e7a6 Add configure check to see whether <string.h> and <strings.h> may both be
included, and then include <strings.h> if so.  Several systems already
needed <strings.h> anyway.  Some new systems that claim to conform to the
Unix 9x "standard" do not declare str[n]casemp() in string.h, and C99
compilers will not like that.
2000-11-03 18:43:52 +00:00
Peter Eisentraut 07ac8e94c7 In flex --version test, redirect stdin to /dev/null, because some lex' hang
waiting for input.  From Pete Forman <gsez020@kryten.bedford.waii.com>.
2000-10-26 16:28:01 +00:00
Peter Eisentraut 0f5169b4af New config.guess and config.sub with Darwin support (from official GNU
source).  Adjust resultmap accordingly and fix some other regexps.
2000-10-24 18:11:48 +00:00
Peter Eisentraut 3daa17173b Don't call AC_SUBST (in libtool.m4) before AC_INIT. The m4 diversions get
messed up and we end up with the comments from included files in the output
"configure".
2000-10-24 17:41:50 +00:00
Peter Eisentraut 12e7558c76 Add check for GNU or not GNU ld, needed to pick the right export_dynamic
flags for Solaris.  The test itself is straight from libtool.
2000-10-20 23:57:34 +00:00
Peter Eisentraut 805e431a38 Add support for VPATH builds, that is, building somewhere else than in the
source directory.  This involves mostly makefiles using $(srcdir) when they
might have used ".".  (Regression tests don't work with this, yet.)

Sort out usage of CPPFLAGS, CFLAGS (and CXXFLAGS).  Add "override" keyword
in most places, to preserve necessary flags even when the user overrode the
flags.
2000-10-20 21:04:27 +00:00
Bruce Momjian 4af1d7c033 Fix configure types.h 2000-10-02 03:58:31 +00:00
Bruce Momjian b2cf67888d Add sys/types include for sockaddr test to configure 2000-10-02 03:55:15 +00:00
Peter Eisentraut 333cbc2dab fix shell bug 2000-09-30 10:45:17 +00:00
Peter Eisentraut 664ce79dd8 Fixes for Cygwin, with help from Pete Forman <gsez020@kryten.bedford.waii.com>.
Update the installation instructions (formerly misnamed "FAQ"), add configure
checks for some headers rather than having users copy stubs manually (ugh!).
Use Autoconf check for exe extension.  This also avoids inheriting the value
of $(X) from the environment.
2000-09-27 15:17:57 +00:00
Peter Eisentraut f428d053ce Revise Tcl/Tk configuration. Make missing Tcl after --with-tcl an error,
add --without-tk option to disable Tk.  We don't need the AC_PATH_XTRA
test because tkConfig.sh already contains all the information about how to
compile and link with X.  Also make sure that libpq is up to date for
libpgtcl.  Remove executable bits from pgaccess.sh, but add it to pgaccess.
2000-09-25 22:23:01 +00:00
Peter Eisentraut 353371874f Replace brain-dead Autoconf macros AC_ARG_{ENABLE,WITH} with something
that's actually useful, robust, consistent.

Better plan to generate aclocal.m4 as well: use m4 include directives,
rather than cat.
2000-09-21 20:17:43 +00:00
Peter Eisentraut ef6164de1d Revert removal of signed, volatile, and signal handler arg type tests. 2000-08-29 09:36:51 +00:00
Peter Eisentraut f03fc94e7d New configure test for flex, which recognizes only flex but does so in all
incarnations (I hope). When an acceptable flex version is not found, print
instructive error messages from both configure and the makefiles, so that
users can continue building anyway.
2000-08-28 11:53:23 +00:00
Peter Eisentraut 79abd73eee Remove configure tests for `signed', `volatile', and signal handler args;
the harm potential outweighs the possible benefits.
2000-08-27 19:00:41 +00:00
Peter Eisentraut 662f6a557c Fix AC_FUNC_ACCEPT_ARGTYPES to accept `const struct sockaddr *' as second
argument, change the order of tests for the third argument to be safe
against missing prototypes, and make it fail hard if none of the
combinations succeed.
2000-08-26 21:11:45 +00:00
Peter Eisentraut 06cd0f1a32 Substituted new configure test for types of accept()
Interfaced a lot of the custom tests to the config.cache, in the process
made them separate macros and grouped them out into files. Made naming
adjustments.

Removed a couple of useless/unused configure tests.

Disabled C++ by default. C++ is no more special than Perl, Python, and Tcl.
And it breaks equally often. :(
2000-06-11 11:40:09 +00:00
Peter Eisentraut 6de89c9ab7 Moved the intricacies of the perl interface build into its own makefile
that now functions as a wrapper around the MakeMaker stuff. It might
even behave sensically when we have separate build dirs. Same for plperl,
which of course still doesn't work very well. Made sure that plperl
respects the choice of --libdir.

Added --with-python to automatically build and install the Python interface.
Works similarly to the Perl5 stuff.

Moved the burden of the distclean targets lower down into the source tree.
Eventually, each make file should have its own.

Added automatic remaking of makefiles and configure. Currently only for the
top-level because of a bug(?) in Autoconf. Use GNU `missing' to work around
missing autoconf and aclocal. Start factoring out macros into their own
config/*.m4 files to increase readability and organization.
2000-06-10 18:02:12 +00:00
Peter Eisentraut 5b9d0d9a5c Moved configure script from src/ to the top level directory. Moved
configuration helper things into config/ dir. Adjusted some relative paths
in makefiles.
2000-06-06 22:01:15 +00:00