diff options
| author | Bruce Momjian | 1998-07-19 04:17:13 +0000 |
|---|---|---|
| committer | Bruce Momjian | 1998-07-19 04:17:13 +0000 |
| commit | 0624f3dcbd990bc9cf9b2e9740cdd68de72227c9 (patch) | |
| tree | 05bea5c250581f041f38a305786709c53c9b0524 /src/include | |
| parent | 5b4ca671470e5f74f37e52a6744eb13d5db78e6f (diff) | |
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
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/port/unixware.h | 32 | ||||
| -rw-r--r-- | src/include/storage/s_lock.h | 23 | ||||
| -rw-r--r-- | src/include/version.h.in | 4 |
3 files changed, 45 insertions, 14 deletions
diff --git a/src/include/port/unixware.h b/src/include/port/unixware.h new file mode 100644 index 00000000000..e552202f5f9 --- /dev/null +++ b/src/include/port/unixware.h @@ -0,0 +1,32 @@ +#define USE_POSIX_TIME +#define NO_EMPTY_STMTS +#define USE_POSIX_SIGNALS +#define SYSV_DIRENT + +#define HAS_TEST_AND_SET +#define NEED_I386_TAS_ASM +/*************************************** + * Define this if you are compiling with + * the native UNIXWARE C compiler. + ***************************************/ +#define UNIXWARE +typedef unsigned char slock_t; + +/*************************************************************** + * The following include will get the needed prototype for the + * strcasecmp() function. + ***************************************************************/ +#include <strings.h> + +#ifndef BIG_ENDIAN +#define BIG_ENDIAN 4321 +#endif +#ifndef LITTLE_ENDIAN +#define LITTLE_ENDIAN 1234 +#endif +#ifndef PDP_ENDIAN +#define PDP_ENDIAN 3412 +#endif +#ifndef BYTE_ORDER +#define BYTE_ORDER LITTLE_ENDIAN +#endif diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h index 70a0f4226c4..e3658b742cd 100644 --- a/src/include/storage/s_lock.h +++ b/src/include/storage/s_lock.h @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.40 1998/07/19 01:19:54 momjian Exp $ + * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.41 1998/07/19 04:16:59 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -188,23 +188,22 @@ tas(volatile slock_t *lock) #if defined(NEED_I386_TAS_ASM) /* non gcc i386 based things */ -#if defined(USE_UNIVEL_CC) +#if defined(USE_UNIVEL_CC) || defined(UNIXWARE) #define TAS(lock) tas(lock) -asm int +asm int tas(slock_t *s_lock) { - %lab locked; - /* Upon entry, %eax will contain the pointer to the lock byte */ - pushl % ebx - xchgl % eax, %ebx - xor % eax, %eax - movb $255, %al +% mem s_lock + pushl %ebx + movl s_lock,%ebx + movl $255,%eax lock - xchgb % al, (%ebx) - popl % ebx + xchgb %al,(%ebx) + popl %ebx } -#endif /* USE_UNIVEL_CC */ + +#endif /* USE_UNIVEL_CC || UNIXWARE */ #endif /* NEED_I386_TAS_ASM */ diff --git a/src/include/version.h.in b/src/include/version.h.in index 699b136bfbd..e295925d669 100644 --- a/src/include/version.h.in +++ b/src/include/version.h.in @@ -4,7 +4,7 @@ * this file contains the interface to version.c. * Also some parameters. * - * $Header: /cvsroot/pgsql/src/include/Attic/version.h.in,v 1.2 1998/06/09 22:59:04 momjian Exp $ + * $Header: /cvsroot/pgsql/src/include/Attic/version.h.in,v 1.3 1998/07/19 04:16:53 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -20,6 +20,6 @@ void SetPgVersion(const char *path, char **reason_p); #define PG_VERFILE "PG_VERSION" -#define PG_VERSION_STR "PostgreSQL " ## PG_RELEASE ## "." ## PG_VERSION ## "." ## PG_SUBVERSION ## " on @host@, compiled by @CC@ @CC_VERSION@" +#define PG_VERSION_STR "PostgreSQL " PG_RELEASE "." PG_VERSION "." PG_SUBVERSION " on @host@, compiled by @CC@ @CC_VERSION@" #endif |
