From d62267c70706b7d60895401aae1346cf6cd7cead Mon Sep 17 00:00:00 2001 From: "Marc G. Fournier" Date: Thu, 13 Feb 1997 09:54:14 +0000 Subject: [PATCH] Improvements to the ultrix port, in particular a bunch of compiler quieting prototyping in port/ultrix4.h Submitted by: Erik Bertelsen --- src/backend/port/ultrix4/port-protos.h | 6 ++- src/backend/port/ultrix4/port.c | 3 +- src/backend/utils/fmgr/dfmgr.c | 5 ++- src/port/ultrix4.h | 57 ++++++++++++++++++++++++++ 4 files changed, 68 insertions(+), 3 deletions(-) diff --git a/src/backend/port/ultrix4/port-protos.h b/src/backend/port/ultrix4/port-protos.h index dbcf9e98b6..4d4346f16b 100644 --- a/src/backend/port/ultrix4/port-protos.h +++ b/src/backend/port/ultrix4/port-protos.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: port-protos.h,v 1.4 1997/01/16 06:32:17 bryanh Exp $ + * $Id: port-protos.h,v 1.5 1997/02/13 09:53:57 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -32,9 +32,12 @@ extern char *fcvt(double, int, int*, int*); #define pg_dlsym(h, f) ((func_ptr)dl_sym(h, f)) #define pg_dlclose(h) dl_close(h) #define pg_dlerror() dl_error() +extern int dl_init(char *); /* port.c */ +extern int syscall(); + extern void init_address_fixup(void); /* strdup.c: strdup() is not part of libc on Ultrix */ @@ -44,6 +47,7 @@ extern char* strdup(char const*); backend/port/inet_aton.h */ +struct in_addr; int inet_aton(const char *cp, struct in_addr *addr); diff --git a/src/backend/port/ultrix4/port.c b/src/backend/port/ultrix4/port.c index 6ece3210ec..4e6e19bdd0 100644 --- a/src/backend/port/ultrix4/port.c +++ b/src/backend/port/ultrix4/port.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/port/ultrix4/Attic/port.c,v 1.1.1.1 1996/07/09 06:21:45 scrappy Exp $ + * $Header: /cvsroot/pgsql/src/backend/port/ultrix4/Attic/port.c,v 1.2 1997/02/13 09:53:59 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -15,6 +15,7 @@ #include #include "c.h" +#include "port-protos.h" void init_address_fixup() diff --git a/src/backend/utils/fmgr/dfmgr.c b/src/backend/utils/fmgr/dfmgr.c index 131df203c9..76b00525cf 100644 --- a/src/backend/utils/fmgr/dfmgr.c +++ b/src/backend/utils/fmgr/dfmgr.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.4 1996/11/27 08:16:07 bryanh Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.5 1997/02/13 09:54:04 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -27,6 +27,9 @@ #include "nodes/pg_list.h" #include "port-protos.h" /* system specific function prototypes */ +#ifdef __ultrix +#include +#endif #include "catalog/catname.h" #include "utils/syscache.h" diff --git a/src/port/ultrix4.h b/src/port/ultrix4.h index 0dbac44dff..55aa074f3a 100644 --- a/src/port/ultrix4.h +++ b/src/port/ultrix4.h @@ -1 +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 /* 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 */ + -- GitLab