mirror of https://github.com/postgres/postgres
parent
1836ce2c81
commit
197c7f5486
@ -1,14 +0,0 @@ |
||||
#------------------------------------------------------------------------- |
||||
# |
||||
# Makefile.inc-- |
||||
# Makefile for port/next (NeXTStep 3.3 specific stuff) |
||||
# |
||||
#------------------------------------------------------------------------- |
||||
|
||||
CFLAGS+= -DUSE_POSIX_TIME -DNO_EMPTY_STMTS |
||||
|
||||
SUBSRCS+= load.c externs.c |
||||
|
||||
HEADERS+= machine.h port-protos.h |
||||
|
||||
LDADD+= -lIPC |
||||
@ -1,43 +0,0 @@ |
||||
#include <libc.h> |
||||
#include <sys/signal.h> |
||||
|
||||
void putenv(char* name) |
||||
{ |
||||
extern char** environ; |
||||
static int was_mallocated = 0; |
||||
int size; |
||||
|
||||
/* Compute the size of environ array including the final NULL */ |
||||
for (size = 1; environ[size++];) |
||||
/* nothing */; |
||||
|
||||
if (!was_mallocated) { |
||||
char** tmp = environ; |
||||
int i; |
||||
|
||||
was_mallocated = 1; |
||||
environ = malloc (size * sizeof(char*)); |
||||
for (i = 0; i < size; i++) |
||||
environ[i] = tmp[i]; |
||||
} |
||||
|
||||
environ = realloc (environ, (size + 1) * sizeof (char*)); |
||||
environ[size - 1] = strcpy (malloc (strlen (name) + 1), name); |
||||
environ[size] = NULL; |
||||
} |
||||
|
||||
int sigaddset(int *set, int signo) |
||||
{ |
||||
*set |= sigmask(signo); |
||||
return *set; |
||||
} |
||||
|
||||
int sigemptyset(int *set) |
||||
{ |
||||
return (*set = 0); |
||||
} |
||||
|
||||
char *getcwd(char *buf, size_t size) |
||||
{ |
||||
return getwd (buf); |
||||
} |
||||
@ -1,73 +0,0 @@ |
||||
#include <mach-o/rld.h> |
||||
#include <streams/streams.h> |
||||
#include <stdlib.h> |
||||
|
||||
static char* lastError = NULL; |
||||
|
||||
static NXStream* OpenError() |
||||
{ |
||||
return NXOpenMemory(NULL, 0, NX_WRITEONLY); |
||||
} |
||||
|
||||
static void CloseError(NXStream* s) |
||||
{ |
||||
if (s) |
||||
NXCloseMemory (s, NX_FREEBUFFER); |
||||
} |
||||
|
||||
static void TransferError(NXStream* s) |
||||
{ |
||||
char *buffer; |
||||
int len, maxlen; |
||||
|
||||
if (lastError) |
||||
free (lastError); |
||||
NXGetMemoryBuffer (s, &buffer, &len, &maxlen); |
||||
lastError = malloc (len + 1); |
||||
strcpy (lastError, buffer); |
||||
} |
||||
|
||||
void* next_dlopen(char* name) |
||||
{ |
||||
int rld_success; |
||||
NXStream* errorStream; |
||||
char* result = NULL; |
||||
char **p; |
||||
|
||||
errorStream = OpenError(); |
||||
p = calloc (2, sizeof(void*)); |
||||
p[0] = name; |
||||
rld_success = rld_load(errorStream, NULL, p, NULL); |
||||
free (p); |
||||
|
||||
if (!rld_success) { |
||||
TransferError (errorStream); |
||||
result = (char*)1; |
||||
} |
||||
CloseError (errorStream); |
||||
return result; |
||||
} |
||||
|
||||
int next_dlclose(void* handle) |
||||
{ |
||||
return 0; |
||||
} |
||||
|
||||
void* next_dlsym (void *handle, char *symbol) |
||||
{ |
||||
NXStream* errorStream = OpenError(); |
||||
char symbuf[1024]; |
||||
unsigned long symref = 0; |
||||
|
||||
sprintf(symbuf, "_%s", symbol); |
||||
if (!rld_lookup (errorStream, symbuf, &symref)) |
||||
TransferError(errorStream); |
||||
CloseError(errorStream); |
||||
return (void*) symref; |
||||
} |
||||
|
||||
char* next_dlerror(void) |
||||
{ |
||||
return lastError; |
||||
} |
||||
|
||||
@ -1,6 +0,0 @@ |
||||
#ifndef MACHINE_H |
||||
#define MACHINE_H |
||||
|
||||
#define BLCKSZ 8192 |
||||
|
||||
#endif |
||||
@ -1,26 +0,0 @@ |
||||
/*-------------------------------------------------------------------------
|
||||
* |
||||
* port-protos.h-- |
||||
* port-specific prototypes for NeXT |
||||
* |
||||
*------------------------------------------------------------------------- |
||||
*/ |
||||
#ifndef PORT_PROTOS_H |
||||
#define PORT_PROTOS_H |
||||
|
||||
#include "fmgr.h" /* for func_ptr */ |
||||
#include "utils/dynamic_loader.h" |
||||
|
||||
void* next_dlopen(char* name); |
||||
int next_dlclose(void* handle); |
||||
void* next_dlsym (void *handle, char *symbol); |
||||
char* next_dlerror(void); |
||||
|
||||
#define pg_dlopen(f) next_dlopen |
||||
#define pg_dlsym next_dlsym |
||||
#define pg_dlclose next_dlclose |
||||
#define pg_dlerror next_dlerror |
||||
|
||||
/* port.c */ |
||||
|
||||
#endif /* PORT_PROTOS_H */ |
||||
Loading…
Reference in new issue