Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 1bd5e05

Browse files
author
Michael Meskes
committed
Hide Informix datatypes. They are not seen by our built process anymore.
1 parent 17f6824 commit 1bd5e05

File tree

8 files changed

+93
-73
lines changed

8 files changed

+93
-73
lines changed

src/interfaces/ecpg/ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1661,6 +1661,10 @@ Fri Sep 26 17:14:07 CEST 2003
16611661

16621662
- Incorrect datatype with precision argument should not create a
16631663
segfault.
1664+
1665+
Fri Oct 3 12:04:57 CEST 2003
1666+
1667+
- Hide Informix datatypes in PostgreSQL built process.
16641668
- Set ecpg version to 3.0.0
16651669
- Set ecpg library to 4.0.0
16661670
- Set pgtypes library to 1.0.0

src/interfaces/ecpg/compatlib/informix.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@
55
#include <ctype.h>
66

77
#include <ecpgtype.h>
8-
#include <ecpg_informix.h>
8+
#include <compatlib.h>
99
#include <pgtypes_error.h>
1010
#include <pgtypes_date.h>
11+
#include <pgtypes_numeric.h>
1112
#include <sqltypes.h>
1213

1314
char *ECPGalloc(long, int);
@@ -886,7 +887,7 @@ rtypwidth(int sqltype, int sqllen)
886887
}
887888

888889
int
889-
dtcvfmtasc(char *inbuf, char *fmtstr, dtime_t * dtvalue)
890+
dtcvfmtasc(char *inbuf, char *fmtstr, timestamp * dtvalue)
890891
{
891892
return PGTYPEStimestamp_defmt_asc(inbuf, fmtstr, dtvalue);
892893
}

src/interfaces/ecpg/include/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ include $(top_builddir)/src/Makefile.global
55
install: all installdirs install-headers
66

77
.PHONY: install-headers
8-
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
8+
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
99

1010
install-headers: $(ecpg_headers)
1111
for i in $^; do $(INSTALL_DATA) $$i $(DESTDIR)$(includedir); done
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
#ifndef _COMPATLIB_H
2+
#define _COMPATLIB_H
3+
/*
4+
* This file contains stuff needed to be as compatible to other DBMS as possible.
5+
*/
6+
7+
#include <ecpglib.h>
8+
#include <pgtypes_date.h>
9+
#include <pgtypes_interval.h>
10+
#include <pgtypes_numeric.h>
11+
#include <pgtypes_timestamp.h>
12+
13+
/* The following stuff is for Informix compatibility */
14+
15+
#define SQLNOTFOUND 100
16+
17+
#define ECPG_INFORMIX_NUM_OVERFLOW -1200
18+
#define ECPG_INFORMIX_NUM_UNDERFLOW -1201
19+
#define ECPG_INFORMIX_DIVIDE_ZERO -1202
20+
#define ECPG_INFORMIX_BAD_YEAR -1204
21+
#define ECPG_INFORMIX_BAD_MONTH -1205
22+
#define ECPG_INFORMIX_BAD_DAY -1206
23+
#define ECPG_INFORMIX_ENOSHORTDATE -1209
24+
#define ECPG_INFORMIX_DATE_CONVERT -1210
25+
#define ECPG_INFORMIX_OUT_OF_MEMORY -1211
26+
#define ECPG_INFORMIX_ENOTDMY -1212
27+
#define ECPG_INFORMIX_BAD_NUMERIC -1213
28+
#define ECPG_INFORMIX_BAD_EXPONENT -1216
29+
#define ECPG_INFORMIX_BAD_DATE -1218
30+
#define ECPG_INFORMIX_EXTRA_CHARS -1264
31+
32+
extern int rdatestr(date, char *);
33+
extern void rtoday(date *);
34+
extern int rjulmdy(date, short *);
35+
extern int rdefmtdate(date *, char *, char *);
36+
extern int rfmtdate(date, char *, char *);
37+
extern int rmdyjul(short *, date *);
38+
extern int rstrdate(char *, date *);
39+
extern int rdayofweek(date);
40+
41+
extern int rfmtlong(long, char *, char *);
42+
extern int rgetmsg(int, char *, int);
43+
extern int risnull(int, char *);
44+
extern int rsetnull(int, char *);
45+
extern int rtypalign(int, int);
46+
extern int rtypmsize(int, int);
47+
extern int rtypwidth(int, int);
48+
extern void rupshift(char *);
49+
50+
extern int byleng(char *, int);
51+
extern void ldchar(char *, int, char *);
52+
53+
extern void ECPG_informix_set_var(int, void *, int);
54+
extern void *ECPG_informix_get_var(int);
55+
56+
/* Informix defines these in decimal.h */
57+
int decadd(decimal *, decimal *, decimal *);
58+
int deccmp(decimal *, decimal *);
59+
void deccopy(decimal *, decimal *);
60+
int deccvasc(char *, int, decimal *);
61+
int deccvdbl(double, decimal *);
62+
int deccvint(int, decimal *);
63+
int deccvlong(long, decimal *);
64+
int decdiv(decimal *, decimal *, decimal *);
65+
int decmul(decimal *, decimal *, decimal *);
66+
int decsub(decimal *, decimal *, decimal *);
67+
int dectoasc(decimal *, char *, int, int);
68+
int dectodbl(decimal *, double *);
69+
int dectoint(decimal *, int *);
70+
int dectolong(decimal *, long *);
71+
72+
/* Informix defines these in datetime.h */
73+
74+
extern void dtcurrent(timestamp *);
75+
extern int dtcvasc(char *, timestamp *);
76+
extern int dtsub(timestamp *, timestamp *, interval *);
77+
extern int dttoasc(timestamp *, char *);
78+
extern int dttofmtasc(timestamp *, char *, int, char *);
79+
extern int intoasc(interval *, char *);
80+
extern int dtcvfmtasc(char *, char *, timestamp *);
81+
82+
#endif /* ndef _COMPATLIB_H */
Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,9 @@
11
#ifndef _ECPG_DATETIME_H
22
#define _ECPG_DATETIME_H
33

4-
#include <pgtypes_timestamp.h>
5-
#include <pgtypes_interval.h>
4+
#include <compatlib.h>
65

76
typedef timestamp dtime_t;
87
typedef interval intrvl_t;
98

10-
extern void dtcurrent(dtime_t *);
11-
extern int dtcvasc(char *, dtime_t *);
12-
extern int dtsub(dtime_t *, dtime_t *, intrvl_t *);
13-
extern int dttoasc(dtime_t *, char *);
14-
extern int dttofmtasc(dtime_t *, char *, int, char *);
15-
extern int intoasc(intrvl_t *, char *);
16-
extern int dtcvfmtasc(char *, char *, dtime_t *);
17-
189
#endif /* ndef _ECPG_DATETIME_H */

src/interfaces/ecpg/include/decimal.h

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,8 @@
11
#ifndef _ECPG_DECIMAL_H
22
#define _ECPG_DECIMAL_H
33

4-
#include <pgtypes_numeric.h>
4+
#include <compatlib.h>
55

66
typedef decimal dec_t;
77

8-
int decadd(dec_t *, dec_t *, dec_t *);
9-
int deccmp(dec_t *, dec_t *);
10-
void deccopy(dec_t *, dec_t *);
11-
int deccvasc(char *, int, dec_t *);
12-
int deccvdbl(double, dec_t *);
13-
int deccvint(int, dec_t *);
14-
int deccvlong(long, dec_t *);
15-
int decdiv(dec_t *, dec_t *, dec_t *);
16-
int decmul(dec_t *, dec_t *, dec_t *);
17-
int decsub(dec_t *, dec_t *, dec_t *);
18-
int dectoasc(dec_t *, char *, int, int);
19-
int dectodbl(dec_t *, double *);
20-
int dectoint(dec_t *, int *);
21-
int dectolong(dec_t *, long *);
22-
238
#endif /* ndef _ECPG_DECIMAL_H */

src/interfaces/ecpg/include/ecpg_informix.h

Lines changed: 1 addition & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -6,48 +6,6 @@
66

77
#include <decimal.h>
88
#include <datetime.h>
9-
#include <ecpglib.h>
10-
#include <pgtypes_date.h>
11-
12-
#define SQLNOTFOUND 100
13-
14-
#define ECPG_INFORMIX_NUM_OVERFLOW -1200
15-
#define ECPG_INFORMIX_NUM_UNDERFLOW -1201
16-
#define ECPG_INFORMIX_DIVIDE_ZERO -1202
17-
#define ECPG_INFORMIX_BAD_YEAR -1204
18-
#define ECPG_INFORMIX_BAD_MONTH -1205
19-
#define ECPG_INFORMIX_BAD_DAY -1206
20-
#define ECPG_INFORMIX_ENOSHORTDATE -1209
21-
#define ECPG_INFORMIX_DATE_CONVERT -1210
22-
#define ECPG_INFORMIX_OUT_OF_MEMORY -1211
23-
#define ECPG_INFORMIX_ENOTDMY -1212
24-
#define ECPG_INFORMIX_BAD_NUMERIC -1213
25-
#define ECPG_INFORMIX_BAD_EXPONENT -1216
26-
#define ECPG_INFORMIX_BAD_DATE -1218
27-
#define ECPG_INFORMIX_EXTRA_CHARS -1264
28-
29-
extern int rdatestr(date, char *);
30-
extern void rtoday(date *);
31-
extern int rjulmdy(date, short *);
32-
extern int rdefmtdate(date *, char *, char *);
33-
extern int rfmtdate(date, char *, char *);
34-
extern int rmdyjul(short *, date *);
35-
extern int rstrdate(char *, date *);
36-
extern int rdayofweek(date);
37-
38-
extern int rfmtlong(long, char *, char *);
39-
extern int rgetmsg(int, char *, int);
40-
extern int risnull(int, char *);
41-
extern int rsetnull(int, char *);
42-
extern int rtypalign(int, int);
43-
extern int rtypmsize(int, int);
44-
extern int rtypwidth(int, int);
45-
extern void rupshift(char *);
46-
47-
extern int byleng(char *, int);
48-
extern void ldchar(char *, int, char *);
49-
50-
extern void ECPG_informix_set_var(int, void *, int);
51-
extern void *ECPG_informix_get_var(int);
9+
#include <compatlib.h>
5210

5311
#endif /* ndef _ECPG_INFORMIX_H */

src/interfaces/ecpg/pgtypeslib/interval.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
#include "dt.h"
1111
#include "pgtypes_error.h"
1212
#include "pgtypes_interval.h"
13-
#include "datetime.h"
1413

1514
/* TrimTrailingZeros()
1615
* ... resulting from printing numbers with full precision.

0 commit comments

Comments
 (0)