Bill Allombert on Thu, 30 Jun 2005 16:48:28 +0200

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: problem compiling on sco unix 5.0.7 with gcc version 2.95.3 20010315 (release)

On Wed, Jun 29, 2005 at 10:54:00PM +0200, Bill Allombert wrote:
> On Wed, Jun 29, 2005 at 02:46:56PM -0400, Cary Lewis wrote:
> > Very strange errors trying to compile.
> > 
> > I had to patch ecliptic.c and change _round to __round
> This is something we can fix.
> > I also had to temporarily comment out the ioctl_arg union definition in
> > iotcl.h to get es.c to compile.
> We would probably need more information. What did exactly happen ?
> Is it related to TIOCGWINSZ ?

Apparently it is related to TIOCGWINSZ. When HAS_TIOCGWINSZ is defined
we #include sys/termios.h  and sys/ioctl.h. However,

1) we include them after paricast.h. Unfortunately paricast.h include a
larg macro which conflict with the ioctl_arg union field larg on sco unix.

2) we cannot include sys/termios.h _before_ pari.h because it defines
a macro ECHO which conflict with pari ECHO enum value.

So maybe we can include sys/ioctl.h. before pari.h and sys/termios.h
after pari.h, but this is messy. A better fix would be to split es.c
between the part that need pari.h and the part that need sys/termios.h.

In the meantime we could symply #undef larg in es.c just before
including sys/ioctl.h.