diff --git a/src/include/port/BSD44_derived.h b/src/include/port/BSD44_derived.h new file mode 100644 index 0000000000000000000000000000000000000000..919b38cffe053b38592789a65222fd5981379704 --- /dev/null +++ b/src/include/port/BSD44_derived.h @@ -0,0 +1,7 @@ +# define USE_POSIX_TIME +# define NEED_I386_TAS_ASM +# define HAS_TEST_AND_SET +# if defined(__mips__) +/* # undef HAS_TEST_AND_SET */ +# endif + typedef unsigned char slock_t; diff --git a/src/include/port/aix.h b/src/include/port/aix.h new file mode 100644 index 0000000000000000000000000000000000000000..1d50688d90f4c13c5a70776cb0cac5411b9b344e --- /dev/null +++ b/src/include/port/aix.h @@ -0,0 +1,5 @@ +# define CLASS_CONFLICT +# define DISABLE_XOPEN_NLS +# define HAVE_ANSI_CPP +# define HAS_TEST_AND_SET + typedef unsigned int slock_t; diff --git a/src/include/port/alpha.h b/src/include/port/alpha.h new file mode 100644 index 0000000000000000000000000000000000000000..5ac7ba167a0630e930ab5f7d2f72bbecad800a3f --- /dev/null +++ b/src/include/port/alpha.h @@ -0,0 +1,7 @@ +# define USE_POSIX_TIME +# define USE_POSIX_SIGNALS +# define DISABLE_XOPEN_NLS +# define HAS_LONG_LONG +# define HAS_TEST_AND_SET +# include <sys/mman.h> /* for msemaphore */ + typedef msemaphore slock_t; diff --git a/src/include/port/bsdi.h b/src/include/port/bsdi.h new file mode 100644 index 0000000000000000000000000000000000000000..022c41dbd6a769b64827067faa655ef6d05ec6ba --- /dev/null +++ b/src/include/port/bsdi.h @@ -0,0 +1,9 @@ +# if defined(i386) +# define NEED_I386_TAS_ASM +# endif +# if defined(sparc) +# define NEED_SPARC_TAS_ASM +# endif +# define USE_POSIX_TIME +# define HAS_TEST_AND_SET + typedef unsigned char slock_t; diff --git a/src/include/port/dgux.h b/src/include/port/dgux.h new file mode 100644 index 0000000000000000000000000000000000000000..a004c2928a7a441901dd67d018147983cc9284dc --- /dev/null +++ b/src/include/port/dgux.h @@ -0,0 +1,2 @@ +# define LINUX_ELF +# define USE_POSIX_SIGNALS diff --git a/src/include/port/hpux.h b/src/include/port/hpux.h new file mode 100644 index 0000000000000000000000000000000000000000..8bf04ce5b0529b512e16d00fe20d6cb202a9367c --- /dev/null +++ b/src/include/port/hpux.h @@ -0,0 +1,4 @@ +# define JMP_BUF +# define USE_POSIX_TIME +# define HAS_TEST_AND_SET + typedef struct { int sem[4]; } slock_t; diff --git a/src/include/port/i386_solaris.h b/src/include/port/i386_solaris.h new file mode 100644 index 0000000000000000000000000000000000000000..0ac1116f06f9fde6a1ba2c91fa0eace54f21d8ac --- /dev/null +++ b/src/include/port/i386_solaris.h @@ -0,0 +1,38 @@ +# define USE_POSIX_TIME +# define USE_POSIX_SIGNALS +# define NO_EMPTY_STMTS +# define SYSV_DIRENT +# define HAS_TEST_AND_SET + typedef unsigned char slock_t; + +#include <sys/isa_defs.h> + +#ifndef BYTE_ORDER +#define BYTE_ORDER LITTLE_ENDIAN +#endif + +#ifndef NAN + +#ifndef __nan_bytes +#define __nan_bytes { 0, 0, 0, 0, 0, 0, 0xf8, 0x7f } +#endif /* __nan_bytes */ + +#ifdef __GNUC__ +#define NAN \ + (__extension__ ((union { unsigned char __c[8]; \ + double __d; }) \ + { __nan_bytes }).__d) + +#else /* Not GCC. */ +#define NAN (*(__const double *) __nan) +#endif /* GCC. */ +#endif /* NAN */ + +#ifndef index +#define index strchr +#endif + +#ifndef HAVE_RUSAGE +#define HAVE_RUSAGE 1 +#endif + diff --git a/src/include/port/irix5.h b/src/include/port/irix5.h new file mode 100644 index 0000000000000000000000000000000000000000..c995eb671fb193616e3610037bcdfb631bef79ef --- /dev/null +++ b/src/include/port/irix5.h @@ -0,0 +1,7 @@ +# define USE_POSIX_TIME +# define USE_POSIX_SIGNALS +# define NO_EMPTY_STMTS +# define SYSV_DIRENT +# define HAS_TEST_AND_SET +# include <abi_mutex.h> + typedef abilock_t slock_t; diff --git a/src/include/port/linux.h b/src/include/port/linux.h new file mode 100644 index 0000000000000000000000000000000000000000..fa311d984fe6b9d076263515e44e1c8aaf94cb48 --- /dev/null +++ b/src/include/port/linux.h @@ -0,0 +1,14 @@ +/* __USE_POSIX, __USE_BSD, and __USE_BSD_SIGNAL used to be defined either + here or with -D compile options, but __ macros should be set and used by C + library macros, not Postgres code. __USE_POSIX is set by features.h, + __USE_BSD is set by bsd/signal.h, and __USE_BSD_SIGNAL appears not to + be used. +*/ +# define JMP_BUF +# define USE_POSIX_TIME +# define USE_POSIX_SIGNALS +# if !defined(PPC) +# define NEED_I386_TAS_ASM +# define HAS_TEST_AND_SET + typedef unsigned char slock_t; +# endif diff --git a/src/include/port/nextstep.h b/src/include/port/nextstep.h new file mode 100644 index 0000000000000000000000000000000000000000..d7fbae858c69a0732368efbf951f4b2f6aff6321 --- /dev/null +++ b/src/include/port/nextstep.h @@ -0,0 +1,17 @@ +# include <sys/ioctl.h> +# if defined(__STRICT_ANSI__) +# define isascii(c) ((unsigned)(c)<=0177) +# endif + extern char* strdup (const char* string); +# ifndef _POSIX_SOURCE + typedef unsigned short mode_t; + typedef int sigset_t; +# define SIG_BLOCK 00 +# define SIG_UNBLOCK 01 +# define SIG_SETMASK 02 +# define NEED_SIG_JMP +# endif + +# define JMP_BUF +# define NO_WAITPID + typedef struct mutex slock_t; diff --git a/src/include/port/sparc_solaris.h b/src/include/port/sparc_solaris.h new file mode 100644 index 0000000000000000000000000000000000000000..25746c62669a7db9930a7d4e09925a4a58f7a9ac --- /dev/null +++ b/src/include/port/sparc_solaris.h @@ -0,0 +1,10 @@ +# define USE_POSIX_TIME +# define USE_POSIX_SIGNALS +# define NO_EMPTY_STMTS +# define SYSV_DIRENT +# define HAS_TEST_AND_SET + typedef unsigned char slock_t; + +#ifndef BYTE_ORDER +#define BYTE_ORDER BIG_ENDIAN +#endif diff --git a/src/include/port/sunos4.h b/src/include/port/sunos4.h new file mode 100644 index 0000000000000000000000000000000000000000..0dbac44dffdab2ffb7e6ddfc1f65c11da90b7ca8 --- /dev/null +++ b/src/include/port/sunos4.h @@ -0,0 +1 @@ +# define USE_POSIX_TIME diff --git a/src/include/port/svr4.h b/src/include/port/svr4.h new file mode 100644 index 0000000000000000000000000000000000000000..0c9810a1cc2128bbd6e6f0108f3540284b0ef062 --- /dev/null +++ b/src/include/port/svr4.h @@ -0,0 +1,4 @@ +# define USE_POSIX_TIME +# define USE_POSIX_SIGNALS +# define NO_EMPTY_STMTS +# define SYSV_DIRENT diff --git a/src/include/port/ultrix4.h b/src/include/port/ultrix4.h new file mode 100644 index 0000000000000000000000000000000000000000..55aa074f3ad094bdd5f8d6819c464953202076dd --- /dev/null +++ b/src/include/port/ultrix4.h @@ -0,0 +1,58 @@ +# define USE_POSIX_TIME +# define NEED_STRDUP + +/* + * Except for those system calls and library functions that are either + * - covered by the C standard library and Posix.1 + * - or need a declaration to declare parameter or return types, + * most Ultrix 4 calls are not declared in the system header files. + * The rest of this header is used to remedy this for PostgreSQL to give a + * warning-free compilation. + */ + +#include <sys/types.h> /* Declare various types, e.g. size_t, fd_set */ + +extern int strcasecmp(const char *, const char *); +extern void bzero(void *, size_t); + +extern int fp_class_d(double); +extern long random(void); + +struct rusage; +extern int getrusage(int, struct rusage *); + +extern int ioctl(int, unsigned long, ...); + +extern int socket(int, int, int); +struct sockaddr; +extern int connect(int, const struct sockaddr *, int); +typedef int ssize_t; +extern ssize_t send(int, const void *, size_t, int); +extern ssize_t recv(int, void*, size_t, int); +extern int setsockopt(int, int, int, const void *, int); +extern int bind(int, const struct sockaddr *, int); +extern int listen(int, int); +extern int accept(int, struct sockaddr *, int *); +extern int getsockname(int, struct sockaddr *, int *); +extern ssize_t recvfrom(int, void *, size_t, int, struct sockaddr *, int *); +extern ssize_t sendto(int, const void *, size_t, int, const struct sockaddr *, int); +struct timeval; +extern int select(int, fd_set*, fd_set*, fd_set*, struct timeval *); + +extern int gethostname(char *, int); + +extern int getopt(int, char * const *, const char *); +extern int putenv(const char *); + +extern pid_t vfork(void); + +struct itimerval; +extern int setitimer(int, const struct itimerval*, struct itimerval *); +struct timezone; +extern int gettimeofday(struct timeval *, struct timezone *); + +extern int fsync(int); +extern int ftruncate(int, off_t); + +/* End of ultrix4.h */ + diff --git a/src/include/port/univel.h b/src/include/port/univel.h new file mode 100644 index 0000000000000000000000000000000000000000..f1a7afc83bb40ce84e4b047f484627bdf93e777a --- /dev/null +++ b/src/include/port/univel.h @@ -0,0 +1,19 @@ +# define USE_POSIX_TIME +# define NO_EMPTY_STMTS +# define USE_POSIX_SIGNALS +# define SYSV_DIRENT + +#if 0 +# define HAS_TEST_AND_SET + typedef unsigned char slock_t; +#endif + +extern long random(void); +extern void srandom(int seed); +extern int strcasecmp(char *s1,char *s2); +extern int gethostname(char *name,int namelen); + +#ifndef BYTE_ORDER +#define BYTE_ORDER LITTLE_ENDIAN +#endif + diff --git a/src/include/port/win32.h b/src/include/port/win32.h new file mode 100644 index 0000000000000000000000000000000000000000..7f4c97c582e57b008287f6d0e06f536cf7896e28 --- /dev/null +++ b/src/include/port/win32.h @@ -0,0 +1,8 @@ +# define JMP_BUF +# define NEED_SIG_JMP +# define NO_UNISTD_H +# define USES_WINSOCK +# define NOFILE 100 +# ifndef MAXPATHLEN +# define MAXPATHLEN 250 +# endif