mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-17 19:30:00 +08:00
Add SCO files.
This commit is contained in:
parent
79e78f0b80
commit
8338f90d4e
35
src/backend/port/sco/Makefile
Normal file
35
src/backend/port/sco/Makefile
Normal file
@ -0,0 +1,35 @@
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
# Makefile--
|
||||
# Makefile for port/sco
|
||||
#
|
||||
# IDENTIFICATION
|
||||
# $Header: /cvsroot/pgsql/src/backend/port/sco/Attic/Makefile,v 1.1 1997/07/28 01:33:54 momjian Exp $
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
|
||||
SRCDIR = ../../..
|
||||
include ../../../Makefile.global
|
||||
|
||||
INCLUDE_OPT = -I../.. \
|
||||
-I../../../include
|
||||
|
||||
CFLAGS+=$(INCLUDE_OPT)
|
||||
|
||||
OBJS = port.o
|
||||
|
||||
all: SUBSYS.o
|
||||
|
||||
SUBSYS.o: $(OBJS)
|
||||
$(LD) -r -o SUBSYS.o $(OBJS)
|
||||
|
||||
depend dep:
|
||||
$(CC) -MM $(INCLUDE_OPT) *.c >depend
|
||||
|
||||
clean:
|
||||
rm -f SUBSYS.o $(OBJS)
|
||||
|
||||
ifeq (depend,$(wildcard depend))
|
||||
include depend
|
||||
endif
|
||||
|
36
src/backend/port/sco/port-protos.h
Normal file
36
src/backend/port/sco/port-protos.h
Normal file
@ -0,0 +1,36 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* port-protos.h--
|
||||
* port-specific prototypes for SCO 3.2v5.2
|
||||
*
|
||||
*
|
||||
* Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: port-protos.h,v 1.1 1997/07/28 01:33:55 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef PORT_PROTOS_H
|
||||
#define PORT_PROTOS_H
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include "fmgr.h" /* for func_ptr */
|
||||
#include "utils/dynamic_loader.h"
|
||||
|
||||
/* dynloader.c */
|
||||
/*
|
||||
* Dynamic Loader on SCO 3.2v5.0.2
|
||||
*
|
||||
* this dynamic loader uses the system dynamic loading interface for shared
|
||||
* libraries (ie. dlopen/dlsym/dlclose). The user must specify a shared
|
||||
* library as the file to be dynamically loaded.
|
||||
*
|
||||
*/
|
||||
#define pg_dlopen(f) dlopen(f,1)
|
||||
#define pg_dlsym dlsym
|
||||
#define pg_dlclose dlclose
|
||||
#define pg_dlerror dlerror
|
||||
|
||||
/* port.c */
|
||||
|
||||
#endif /* PORT_PROTOS_H */
|
57
src/backend/port/sco/port.c
Normal file
57
src/backend/port/sco/port.c
Normal file
@ -0,0 +1,57 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* port.c--
|
||||
* SCO 3.2v5.0.2 specific routines
|
||||
*
|
||||
* Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* /usr/local/devel/pglite/cvs/src/backend/port/svr4/port.c,v 1.2 1995/03/17 06:40:19 andrew Exp
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#include <unistd.h>
|
||||
#include <math.h> /* for pow() prototype */
|
||||
|
||||
#include <errno.h>
|
||||
#include "rusagestub.h"
|
||||
|
||||
|
||||
int
|
||||
getrusage(int who, struct rusage *rusage)
|
||||
{
|
||||
struct tms tms;
|
||||
register int tick_rate = CLK_TCK; /* ticks per second */
|
||||
clock_t u, s;
|
||||
|
||||
if (rusage == (struct rusage *) NULL) {
|
||||
errno = EFAULT;
|
||||
return(-1);
|
||||
}
|
||||
if (times(&tms) < 0) {
|
||||
/* errno set by times */
|
||||
return(-1);
|
||||
}
|
||||
switch (who) {
|
||||
case RUSAGE_SELF:
|
||||
u = tms.tms_utime;
|
||||
s = tms.tms_stime;
|
||||
break;
|
||||
case RUSAGE_CHILDREN:
|
||||
u = tms.tms_cutime;
|
||||
s = tms.tms_cstime;
|
||||
break;
|
||||
default:
|
||||
errno = EINVAL;
|
||||
return(-1);
|
||||
}
|
||||
#define TICK_TO_SEC(T, RATE) ((T)/(RATE))
|
||||
#define TICK_TO_USEC(T,RATE) (((T)%(RATE)*1000000)/RATE)
|
||||
rusage->ru_utime.tv_sec = TICK_TO_SEC(u, tick_rate);
|
||||
rusage->ru_utime.tv_usec = TICK_TO_USEC(u, tick_rate);
|
||||
rusage->ru_stime.tv_sec = TICK_TO_SEC(s, tick_rate);
|
||||
rusage->ru_stime.tv_usec = TICK_TO_USEC(u, tick_rate);
|
||||
return(0);
|
||||
}
|
||||
|
30
src/backend/port/sco/rusagestub.h
Normal file
30
src/backend/port/sco/rusagestub.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* rusagestub.h--
|
||||
* Stubs for getrusage(3).
|
||||
*
|
||||
*
|
||||
* Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* rusagestub.h,v 1.1.1.1 1994/11/07 05:19:39 andrew Exp
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef RUSAGESTUB_H
|
||||
#define RUSAGESTUB_H
|
||||
|
||||
#include <sys/time.h> /* for struct timeval */
|
||||
#include <sys/times.h> /* for struct tms */
|
||||
#include <limits.h> /* for CLK_TCK */
|
||||
|
||||
#define RUSAGE_SELF 0
|
||||
#define RUSAGE_CHILDREN -1
|
||||
|
||||
struct rusage {
|
||||
struct timeval ru_utime; /* user time used */
|
||||
struct timeval ru_stime; /* system time used */
|
||||
};
|
||||
|
||||
extern int getrusage(int who, struct rusage *rusage);
|
||||
|
||||
#endif /* RUSAGESTUB_H */
|
6
src/include/port/sco.h
Normal file
6
src/include/port/sco.h
Normal file
@ -0,0 +1,6 @@
|
||||
#include <limits.h> /* For _POSIX_PATH_MAX */
|
||||
|
||||
#define MAXPATHLEN _POSIX_PATH_MAX
|
||||
#define SIGURG SIGUSR1
|
||||
|
||||
#define NOFILE NOFILES_MIN
|
4
src/makefiles/Makefile.sco
Normal file
4
src/makefiles/Makefile.sco
Normal file
@ -0,0 +1,4 @@
|
||||
%.so: %.o
|
||||
$(LD) -G -Bdynamic -o $@ $<
|
||||
%.so: %.o
|
||||
$(LD) -G -Bdynamic -o $@ $<
|
12
src/template/sco
Normal file
12
src/template/sco
Normal file
@ -0,0 +1,12 @@
|
||||
AROPT:cq
|
||||
CFLAGS:-I$(SRCDIR)/backend/port/sco
|
||||
SHARED_LIB:-K PIC
|
||||
ALL:
|
||||
SRCH_INC:
|
||||
SRCH_LIB:
|
||||
USE_LOCALE:no
|
||||
DLSUFFIX:.so
|
||||
YFLAGS:-d
|
||||
YACC:yacc
|
||||
LEX:lex
|
||||
CC:cc -b elf
|
Loading…
Reference in New Issue
Block a user