mirror of
https://github.com/postgres/postgres.git
synced 2025-05-05 09:19:17 +03:00
Move Informix compatibility include files out of the way. compatlib.h
was integrated into ecpg_informix.h, the other ones go into their own subdirectory that is automatically considered by the embedded preprocessor when in Informix mode.
This commit is contained in:
parent
b4ed1edb57
commit
ad8c09c29c
@ -2,16 +2,22 @@ subdir = src/interfaces/ecpg/include
|
|||||||
top_builddir = ../../../..
|
top_builddir = ../../../..
|
||||||
include $(top_builddir)/src/Makefile.global
|
include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
|
informix_esql_dir = $(pkgincludedir)/informix/esql
|
||||||
|
|
||||||
install: all installdirs install-headers
|
install: all installdirs install-headers
|
||||||
|
|
||||||
.PHONY: install-headers
|
.PHONY: install-headers
|
||||||
ecpg_headers = ecpgerrno.h ecpglib.h ecpgtype.h sqlca.h sql3types.h ecpg_informix.h pgtypes_error.h pgtypes_numeric.h pgtypes_timestamp.h pgtypes_date.h datetime.h decimal.h pgtypes_interval.h sqltypes.h compatlib.h sqlda.h
|
ecpg_headers = ecpgerrno.h ecpglib.h ecpgtype.h sqlca.h sql3types.h ecpg_informix.h \
|
||||||
|
pgtypes_error.h pgtypes_numeric.h pgtypes_timestamp.h pgtypes_date.h pgtypes_interval.h
|
||||||
|
informix_headers = datetime.h decimal.h sqltypes.h sqlda.h
|
||||||
|
|
||||||
install-headers: $(ecpg_headers)
|
install-headers: $(ecpg_headers) $(informix_headers)
|
||||||
for i in $^; do $(INSTALL_DATA) $$i $(DESTDIR)$(includedir); done
|
for i in $(ecpg_headers); do $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir) || exit; done
|
||||||
|
for i in $(informix_headers); do $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(informix_esql_dir) || exit; done
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
$(mkinstalldirs) $(DESTDIR)$(includedir)
|
$(mkinstalldirs) $(DESTDIR)$(includedir) $(DESTDIR)$(informix_esql_dir)
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
rm -f $(addprefix $(DESTDIR)$(includedir)/, $(ecpg_headers))
|
rm -f $(addprefix $(DESTDIR)$(includedir)/, $(ecpg_headers))
|
||||||
|
rm -f $(addprefix $(DESTDIR)$(informix_esql_dir)/, $(informix_headers))
|
||||||
|
@ -1,82 +0,0 @@
|
|||||||
#ifndef _COMPATLIB_H
|
|
||||||
#define _COMPATLIB_H
|
|
||||||
/*
|
|
||||||
* This file contains stuff needed to be as compatible to other DBMS as possible.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <ecpglib.h>
|
|
||||||
#include <pgtypes_date.h>
|
|
||||||
#include <pgtypes_interval.h>
|
|
||||||
#include <pgtypes_numeric.h>
|
|
||||||
#include <pgtypes_timestamp.h>
|
|
||||||
|
|
||||||
/* The following stuff is for Informix compatibility */
|
|
||||||
|
|
||||||
#define SQLNOTFOUND 100
|
|
||||||
|
|
||||||
#define ECPG_INFORMIX_NUM_OVERFLOW -1200
|
|
||||||
#define ECPG_INFORMIX_NUM_UNDERFLOW -1201
|
|
||||||
#define ECPG_INFORMIX_DIVIDE_ZERO -1202
|
|
||||||
#define ECPG_INFORMIX_BAD_YEAR -1204
|
|
||||||
#define ECPG_INFORMIX_BAD_MONTH -1205
|
|
||||||
#define ECPG_INFORMIX_BAD_DAY -1206
|
|
||||||
#define ECPG_INFORMIX_ENOSHORTDATE -1209
|
|
||||||
#define ECPG_INFORMIX_DATE_CONVERT -1210
|
|
||||||
#define ECPG_INFORMIX_OUT_OF_MEMORY -1211
|
|
||||||
#define ECPG_INFORMIX_ENOTDMY -1212
|
|
||||||
#define ECPG_INFORMIX_BAD_NUMERIC -1213
|
|
||||||
#define ECPG_INFORMIX_BAD_EXPONENT -1216
|
|
||||||
#define ECPG_INFORMIX_BAD_DATE -1218
|
|
||||||
#define ECPG_INFORMIX_EXTRA_CHARS -1264
|
|
||||||
|
|
||||||
extern int rdatestr(date, char *);
|
|
||||||
extern void rtoday(date *);
|
|
||||||
extern int rjulmdy(date, short *);
|
|
||||||
extern int rdefmtdate(date *, char *, char *);
|
|
||||||
extern int rfmtdate(date, char *, char *);
|
|
||||||
extern int rmdyjul(short *, date *);
|
|
||||||
extern int rstrdate(char *, date *);
|
|
||||||
extern int rdayofweek(date);
|
|
||||||
|
|
||||||
extern int rfmtlong(long, char *, char *);
|
|
||||||
extern int rgetmsg(int, char *, int);
|
|
||||||
extern int risnull(int, char *);
|
|
||||||
extern int rsetnull(int, char *);
|
|
||||||
extern int rtypalign(int, int);
|
|
||||||
extern int rtypmsize(int, int);
|
|
||||||
extern int rtypwidth(int, int);
|
|
||||||
extern void rupshift(char *);
|
|
||||||
|
|
||||||
extern int byleng(char *, int);
|
|
||||||
extern void ldchar(char *, int, char *);
|
|
||||||
|
|
||||||
extern void ECPG_informix_set_var(int, void *, int);
|
|
||||||
extern void *ECPG_informix_get_var(int);
|
|
||||||
|
|
||||||
/* Informix defines these in decimal.h */
|
|
||||||
int decadd(decimal *, decimal *, decimal *);
|
|
||||||
int deccmp(decimal *, decimal *);
|
|
||||||
void deccopy(decimal *, decimal *);
|
|
||||||
int deccvasc(char *, int, decimal *);
|
|
||||||
int deccvdbl(double, decimal *);
|
|
||||||
int deccvint(int, decimal *);
|
|
||||||
int deccvlong(long, decimal *);
|
|
||||||
int decdiv(decimal *, decimal *, decimal *);
|
|
||||||
int decmul(decimal *, decimal *, decimal *);
|
|
||||||
int decsub(decimal *, decimal *, decimal *);
|
|
||||||
int dectoasc(decimal *, char *, int, int);
|
|
||||||
int dectodbl(decimal *, double *);
|
|
||||||
int dectoint(decimal *, int *);
|
|
||||||
int dectolong(decimal *, long *);
|
|
||||||
|
|
||||||
/* Informix defines these in datetime.h */
|
|
||||||
|
|
||||||
extern void dtcurrent(timestamp *);
|
|
||||||
extern int dtcvasc(char *, timestamp *);
|
|
||||||
extern int dtsub(timestamp *, timestamp *, interval *);
|
|
||||||
extern int dttoasc(timestamp *, char *);
|
|
||||||
extern int dttofmtasc(timestamp *, char *, int, char *);
|
|
||||||
extern int intoasc(interval *, char *);
|
|
||||||
extern int dtcvfmtasc(char *, char *, timestamp *);
|
|
||||||
|
|
||||||
#endif /* ndef _COMPATLIB_H */
|
|
@ -1,7 +1,7 @@
|
|||||||
#ifndef _ECPG_DATETIME_H
|
#ifndef _ECPG_DATETIME_H
|
||||||
#define _ECPG_DATETIME_H
|
#define _ECPG_DATETIME_H
|
||||||
|
|
||||||
#include <compatlib.h>
|
#include <ecpg_informix.h>
|
||||||
|
|
||||||
typedef timestamp dtime_t;
|
typedef timestamp dtime_t;
|
||||||
typedef interval intrvl_t;
|
typedef interval intrvl_t;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#ifndef _ECPG_DECIMAL_H
|
#ifndef _ECPG_DECIMAL_H
|
||||||
#define _ECPG_DECIMAL_H
|
#define _ECPG_DECIMAL_H
|
||||||
|
|
||||||
#include <compatlib.h>
|
#include <ecpg_informix.h>
|
||||||
|
|
||||||
typedef decimal dec_t;
|
typedef decimal dec_t;
|
||||||
|
|
||||||
|
@ -1,11 +1,81 @@
|
|||||||
#ifndef _ECPG_INFORMIX_H
|
|
||||||
#define _ECPG_INFORMIX_H
|
|
||||||
/*
|
/*
|
||||||
* This file contains stuff needed to be as compatible to Informix as possible.
|
* This file contains stuff needed to be as compatible to Informix as possible.
|
||||||
|
*
|
||||||
|
* $PostgreSQL: pgsql/src/interfaces/ecpg/include/ecpg_informix.h,v 1.14 2003/12/18 18:55:09 petere Exp $
|
||||||
*/
|
*/
|
||||||
|
#ifndef _ECPG_INFORMIX_H
|
||||||
|
#define _ECPG_INFORMIX_H
|
||||||
|
|
||||||
#include <decimal.h>
|
#include <ecpglib.h>
|
||||||
#include <datetime.h>
|
#include <pgtypes_date.h>
|
||||||
#include <compatlib.h>
|
#include <pgtypes_interval.h>
|
||||||
|
#include <pgtypes_numeric.h>
|
||||||
|
#include <pgtypes_timestamp.h>
|
||||||
|
|
||||||
|
#define SQLNOTFOUND 100
|
||||||
|
|
||||||
|
#define ECPG_INFORMIX_NUM_OVERFLOW -1200
|
||||||
|
#define ECPG_INFORMIX_NUM_UNDERFLOW -1201
|
||||||
|
#define ECPG_INFORMIX_DIVIDE_ZERO -1202
|
||||||
|
#define ECPG_INFORMIX_BAD_YEAR -1204
|
||||||
|
#define ECPG_INFORMIX_BAD_MONTH -1205
|
||||||
|
#define ECPG_INFORMIX_BAD_DAY -1206
|
||||||
|
#define ECPG_INFORMIX_ENOSHORTDATE -1209
|
||||||
|
#define ECPG_INFORMIX_DATE_CONVERT -1210
|
||||||
|
#define ECPG_INFORMIX_OUT_OF_MEMORY -1211
|
||||||
|
#define ECPG_INFORMIX_ENOTDMY -1212
|
||||||
|
#define ECPG_INFORMIX_BAD_NUMERIC -1213
|
||||||
|
#define ECPG_INFORMIX_BAD_EXPONENT -1216
|
||||||
|
#define ECPG_INFORMIX_BAD_DATE -1218
|
||||||
|
#define ECPG_INFORMIX_EXTRA_CHARS -1264
|
||||||
|
|
||||||
|
extern int rdatestr(date, char *);
|
||||||
|
extern void rtoday(date *);
|
||||||
|
extern int rjulmdy(date, short *);
|
||||||
|
extern int rdefmtdate(date *, char *, char *);
|
||||||
|
extern int rfmtdate(date, char *, char *);
|
||||||
|
extern int rmdyjul(short *, date *);
|
||||||
|
extern int rstrdate(char *, date *);
|
||||||
|
extern int rdayofweek(date);
|
||||||
|
|
||||||
|
extern int rfmtlong(long, char *, char *);
|
||||||
|
extern int rgetmsg(int, char *, int);
|
||||||
|
extern int risnull(int, char *);
|
||||||
|
extern int rsetnull(int, char *);
|
||||||
|
extern int rtypalign(int, int);
|
||||||
|
extern int rtypmsize(int, int);
|
||||||
|
extern int rtypwidth(int, int);
|
||||||
|
extern void rupshift(char *);
|
||||||
|
|
||||||
|
extern int byleng(char *, int);
|
||||||
|
extern void ldchar(char *, int, char *);
|
||||||
|
|
||||||
|
extern void ECPG_informix_set_var(int, void *, int);
|
||||||
|
extern void *ECPG_informix_get_var(int);
|
||||||
|
|
||||||
|
/* Informix defines these in decimal.h */
|
||||||
|
int decadd(decimal *, decimal *, decimal *);
|
||||||
|
int deccmp(decimal *, decimal *);
|
||||||
|
void deccopy(decimal *, decimal *);
|
||||||
|
int deccvasc(char *, int, decimal *);
|
||||||
|
int deccvdbl(double, decimal *);
|
||||||
|
int deccvint(int, decimal *);
|
||||||
|
int deccvlong(long, decimal *);
|
||||||
|
int decdiv(decimal *, decimal *, decimal *);
|
||||||
|
int decmul(decimal *, decimal *, decimal *);
|
||||||
|
int decsub(decimal *, decimal *, decimal *);
|
||||||
|
int dectoasc(decimal *, char *, int, int);
|
||||||
|
int dectodbl(decimal *, double *);
|
||||||
|
int dectoint(decimal *, int *);
|
||||||
|
int dectolong(decimal *, long *);
|
||||||
|
|
||||||
|
/* Informix defines these in datetime.h */
|
||||||
|
extern void dtcurrent(timestamp *);
|
||||||
|
extern int dtcvasc(char *, timestamp *);
|
||||||
|
extern int dtsub(timestamp *, timestamp *, interval *);
|
||||||
|
extern int dttoasc(timestamp *, char *);
|
||||||
|
extern int dttofmtasc(timestamp *, char *, int, char *);
|
||||||
|
extern int intoasc(interval *, char *);
|
||||||
|
extern int dtcvfmtasc(char *, char *, timestamp *);
|
||||||
|
|
||||||
#endif /* ndef _ECPG_INFORMIX_H */
|
#endif /* ndef _ECPG_INFORMIX_H */
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/Makefile,v 1.96 2003/11/30 06:09:47 momjian Exp $
|
# $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/Makefile,v 1.97 2003/12/18 18:55:09 petere Exp $
|
||||||
|
|
||||||
subdir = src/interfaces/ecpg/preproc
|
subdir = src/interfaces/ecpg/preproc
|
||||||
top_builddir = ../../../..
|
top_builddir = ../../../..
|
||||||
@ -11,7 +11,8 @@ PATCHLEVEL=0
|
|||||||
override CPPFLAGS := -I$(srcdir)/../include -I$(srcdir) $(CPPFLAGS) $(THREAD_CPPFLAGS) \
|
override CPPFLAGS := -I$(srcdir)/../include -I$(srcdir) $(CPPFLAGS) $(THREAD_CPPFLAGS) \
|
||||||
-DMAJOR_VERSION=$(MAJOR_VERSION) \
|
-DMAJOR_VERSION=$(MAJOR_VERSION) \
|
||||||
-DMINOR_VERSION=$(MINOR_VERSION) -DPATCHLEVEL=$(PATCHLEVEL) \
|
-DMINOR_VERSION=$(MINOR_VERSION) -DPATCHLEVEL=$(PATCHLEVEL) \
|
||||||
-DINCLUDE_PATH=\"$(includedir)\"
|
-DINCLUDEDIR=\"$(includedir)\" \
|
||||||
|
-DPKGINCLUDEDIR=\"$(pkgincludedir)\"
|
||||||
|
|
||||||
ifeq ($(GCC), yes)
|
ifeq ($(GCC), yes)
|
||||||
override CFLAGS += -Wno-error
|
override CFLAGS += -Wno-error
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg.c,v 1.82 2003/11/29 19:52:08 pgsql Exp $ */
|
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg.c,v 1.83 2003/12/18 18:55:09 petere Exp $ */
|
||||||
|
|
||||||
/* New main for ecpg, the PostgreSQL embedded SQL precompiler. */
|
/* New main for ecpg, the PostgreSQL embedded SQL precompiler. */
|
||||||
/* (C) Michael Meskes <meskes@postgresql.org> Feb 5th, 1998 */
|
/* (C) Michael Meskes <meskes@postgresql.org> Feb 5th, 1998 */
|
||||||
@ -174,6 +174,7 @@ main(int argc, char *const argv[])
|
|||||||
add_preprocessor_define("dec_t=decimal");
|
add_preprocessor_define("dec_t=decimal");
|
||||||
add_preprocessor_define("intrvl_t=interval");
|
add_preprocessor_define("intrvl_t=interval");
|
||||||
add_preprocessor_define("dtime_t=timestamp");
|
add_preprocessor_define("dtime_t=timestamp");
|
||||||
|
add_include_path(PKGINCLUDEDIR "/informix/esql");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -209,7 +210,7 @@ main(int argc, char *const argv[])
|
|||||||
|
|
||||||
add_include_path(".");
|
add_include_path(".");
|
||||||
add_include_path("/usr/local/include");
|
add_include_path("/usr/local/include");
|
||||||
add_include_path(INCLUDE_PATH);
|
add_include_path(INCLUDEDIR);
|
||||||
add_include_path("/usr/include");
|
add_include_path("/usr/include");
|
||||||
|
|
||||||
if (verbose)
|
if (verbose)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user