ECPG include problem - Mailing list pgsql-interfaces

From Mike Alford
Subject ECPG include problem
Date
Msg-id 200302192220.RAA22200@smtp.syscon-intl.com
Whole thread Raw
Responses Re: ECPG include problem  (Matthew Vanecek <mevanecek@yahoo.com>)
Re: ECPG include problem  (Michael Meskes <meskes@postgresql.org>)
List pgsql-interfaces
I am trying to compile an application developed on SCO Unix with an Ingres
1.2 database that uses embedded sql. I am having a problem with the
included files. 
This code appears in the embedded sql in Ingres:
#include <db1.h>
EXEC SQL INCLUDE SQLCA;
EXEC SQL BEGIN DECLARE SECTION;   EXEC SQL INCLUDE '../include/db2.h';
EXEC SQL END DECLARE SECTION;

The ../include/db2.h file contains lines like
typedef char ComText_t[L_COM_TEXT];
that are defined in db1.h
#define L_COM_TEXT      21      /* Length of pvdef text com parameter. */

In porting to psql I have 
#include <db1.h>
EXEC SQL INCLUDE sqlca;
EXEC SQL BEGIN DECLARE SECTION;   EXEC SQL INCLUDE ../include/db2;
EXEC SQL END DECLARE SECTION;
but receive the error
../include/db2.h:28: ERROR: parse error at or near "L_COM_TEXT"
If I change 
typedef char ComText_t[L_COM_TEXT]; to 
typedef char ComText_t[21]; /*value of L_COM_TEXT */ 
everything is fine. Apparently the preprocessing that Ingres did is not
happening in Postgres. There are over 2000 lines in db2.h, mostly with
constants defined in db1.h. Is there something simple I am overlooking, or
an option to epcg that could allow db2.h to be preprocessed before it is
included?

I am a novice at postgres.
Do not try to solve all life's problems at once -- learn to dread each
day as it comes.



pgsql-interfaces by date:

Previous
From: s0lao@netscape.net (S. L.)
Date:
Subject: Re: [CYGWIN] PgAdmin problem
Next
From: "Nigel J. Andrews"
Date:
Subject: Perl interfacing to old and new backends.