1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-05 07:21:24 +03:00
Commit Graph

38 Commits

Author SHA1 Message Date
3aa9776d95 Add to CPPFLAGS/CFLAGS in template files, don't over-ride them. 2004-11-27 05:03:26 +00:00
550735cd73 Remove extra 'then'. 2004-05-14 16:29:12 +00:00
261eda55d3 No need for gcc thread stuff anymore, only cc. 2004-05-13 15:44:05 +00:00
9f7283eb1b Remove warning about Unixware. 2004-05-13 14:07:19 +00:00
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
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
682a6bd5eb Disasble threads on unixware until other platforms report a problem. 2004-03-22 14:53:43 +00:00
2ef0ff89af Add Unixware thread support from Larry Rosenman. 2004-03-18 23:23:58 +00:00
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
07eb9fb20b Add -O to really trigger compiler bug. 2003-11-05 07:42:31 +00:00
23c292688f Add detection of compiler bug. 2003-11-05 00:09:08 +00:00
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
7185455c08 Make template CFLAGS handling consistent. 2003-10-09 14:40:37 +00:00
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
391dceb462 Finalize configuration of thread_test program. 2003-09-27 16:24:45 +00:00
227dd9b427 Rename thread compile flag. Move thread test program to tools/thread,
and improve tests.
2003-09-27 15:32:48 +00:00
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
4928856fc4 Mark unixware as verified. 2003-09-03 20:54:21 +00:00
e57c9fa6b8 Add Unixware as verified. 2003-09-03 20:51:40 +00:00
c351729e1e Mark Unixware as not requiring *_r functions. 2003-09-03 17:55:43 +00:00
ceacae7734 Fix unixware template --- had spaces around equals. 2003-08-30 03:19:47 +00:00
f3dda96452 Fix unixware thread test. 2003-08-25 02:48:25 +00:00
eb4dded09e Add quotes to += of unixware threads define. 2003-08-24 23:21:05 +00:00
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
b72c1b9f63 Adjustment for unixware threading. 2003-08-14 21:24:38 +00:00
bb0b73cd73 Mark unixware as having threaded support. 2003-08-14 21:14:17 +00:00
a4a31d3967 Adjust for compiler options for compiler bug.
Larry Rosenman
2003-08-13 23:59:49 +00:00
e43ecb3d1a Remove leftovers from subproject removals. Fixes for Python and Kerberos
configuration.
2002-09-04 22:54:18 +00:00
4f4753832e Move CXX platform-specific stuff into template files. 2002-07-07 20:28:25 +00:00
fba790ad58 Makeover for Unixware 7.1.1
* Makefile: Add more standard targets.  Improve shell redirection in GNU
make detection.
* src/backend/access/transam/rmgr.c: Fix incorrect(?) C.
* src/backend/libpq/pqcomm.c (StreamConnection): Work around accept() bug.
* src/include/port/unixware.h: ...with help from here.
* src/backend/nodes/print.c (plannode_type): Remove some "break"s after
"return"s.
* src/backend/tcop/dest.c (DestToFunction): ditto.
* src/backend/nodes/readfuncs.c: Add proper prototypes.
* src/backend/utils/adt/numutils.c (pg_atoi): Cope specially with strtol()
setting EINVAL. This saves us from creating an extra set of regression test
output for the affected systems.
* src/include/storage/s_lock.h (tas): Correct prototype.
* src/interfaces/libpq/fe-connect.c (parseServiceInfo): Don't use variable
as dimension in array definition.
* src/makefiles/Makefile.unixware: Add support for GCC.
* src/template/unixware: same here
* src/test/regress/expected/abstime-solaris-1947.out: Adjust whitespace.
* src/test/regress/expected/horology-solaris-1947.out: Part of this file
was evidently missing.
* src/test/regress/pg_regress.sh: Fix shell.  mkdir -p returns non-zero if
the directory exists.
* src/test/regress/resultmap: Add entries for Unixware.
2000-10-22 22:15:13 +00:00
f8ff1ee5aa Move DLSUFFIX, AROPT, and CFLAGS_SL settings from template to
Makefile.port, since they are of no use to configure and much of the
library magic happens in Makefile.port anyway.

Use __alpha, not __alpha__, since the former is universally available.
Remove -DNOFIXADE from the compile command line and put it in the port
include file.
2000-10-21 22:36:14 +00:00
02132c4a05 Remove CC and CXX. 2000-10-21 17:07:31 +00:00
33581195d5 Per my ongoing discussion with PeterE, here is the patch I applied to
src/template/unixware:

Larry Rosenman
2000-10-21 15:50:32 +00:00
3eec6ee145 Rename templates to match names in makefiles/Makefile.* and include/port.
Read templates after compiler is detected. Convert all templates to real
shell scripts. Rename bsd->openbsd, alpha->osf.
2000-07-15 15:54:52 +00:00
e3059fc0f5 Gen_fmgrtab.sh is strange: it is a platform dependent way (because it uses
CPP) to create platform independent files. Unfortunately, that means that
every config.status (or configure) run invariably causes a relink of the
postmaster and also that we can't put these files in the distribution
(usefully). So we make it a little smarter: when the output files already
exist and it notices that it would recreate them in identical form, it
doesn't touch them. In order to avoid re-running the make rule all the time
we update a timestamp file instead.

Update release_prep accordingly. Also make Gen_fmgrtab.sh use the awk that
is detected at configure time, not necessarily named `awk' and have it check
for exit statuses a little better.

In other news... Remove USE_LOCALE from the templates, it was set to `no'
everywhere anyway. Also remove YACC and YFLAGS from the templates, configure
is smart enough to find bison or yacc itself. Use AC_PROG_YACC for that
instead of the hand-crafted code. Do not set YFLAGS to `-d'. The make rules
that need this flag should explicitly invoke it. YFLAGS should be a user
variable. Update the makefiles to that effect.
2000-06-07 16:27:00 +00:00
af8e2760ba Here are some additional patches needed to get the UnixWare 7 C++
compiler to
attempt to compile libpq++.  The patches address the following problems:

1.  In my first pass at changing the libpq++ makefile, I forgot to
include the
    PORTNAME in the Makefile.in file.

2.  The UnixWare 7 C++ compiler did not like the '-K alloca' option in
CXXFLAGS.

Billy G. Allie
1998-09-13 04:00:44 +00:00
a738478ad8 Here are additional patches for the UnixWare 7 port.
Summary of changes:

In pqcomm.h, use the SUN_LEN macro if it is defined to calculate
the size of the sockaddr_un structure.

In unixware.h, drop the use of the UNIXWARE macro.  Everything can
be handled with the USE_UNIVEL_CC and DISABLE_COMPLEX_MACRO macros.

In s_lock.h, remove the reference to the UNIXWARE macro (see above).

In the unixware template, add the YFLAGS:-d line.

In various makefile templates, add (or cleanup) unixware and univel
port specific information.

-- Billy G. Allie
1998-08-22 04:24:41 +00:00
0624f3dcbd My mailer munged the intro text in my last post. Here is the text
in a more readable form.  -- I am submitting the following patches
to the June 6, 1998 snapshot of PostgreSQL.  These patches implement
a port of PostgreSQL to SCO UnixWare 7, and updates the Univel port
(UnixWare 2.x).  The patched files, and the reason
 for the patch are:

File            Reason for the patch ---------------
---------------------------------------------------------------
src/backend/port/dynloader/unixware.c src/backend/port/dynloader/unixware.h
src/include/port/unixware.h src/makefiles/Makefile.unixware
src/template/unixware
		Created for the UNIXWARE port.

src/include/port/univel.h
		Modifed this file to work with the changes made to
		s_lock.[ch].

src/backend/storage/buffer/s_lock.c src/include/storage/s_lock.h
		Moved the UNIXWARE (and Univel) tas() function from
		s_lock.c to s_lock.h.  The UnixWare compiler asm
		construct is treated as a macro and needs to be in
		the s_lock.h file.  I also reworked the tas()
		function to correct some errors in the code.

src/include/version.h.in
		The use of the ## operator with quoted strings in
		the VERSION macro caused problems with the UnixWare
		C compiler.  I removed the ## operators since they
		were not needed in this case.  The macro expands
		into a sequence of quoted strings that will be
		concatenated by any ANSI C compiler.

src/config.guess
		This script was modified to recognize SCO UnixWare
		7.

src/configure src/configure.in
		The configure script was modified to recognize SCO
		UnixWare 7.

Billy G. Allie
1998-07-19 04:17:13 +00:00