Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: DEC Unix 3.2d / 3.0pre6



> On DEC Unix 4.0:
> 
>    gcc -c -I.. -I. -I.  -DHAVE_CONFIG_H -Wall -Wno-implicit -Wmissing-prototypes -O2 -DDEBUG builtin.c
>    In file included from zsh.h:1362,
>                     from builtin.c:32:
>    prototypes.h:106: conflicting types for `ioctl'
>    /nu1/hooft/lib/gcc-lib/alpha-dec-osf4.0/2.7.2.f.1/include/sys/ioctl.h:72: previous declaration of `ioctl'
> 
> So it seems under DU4.0 even gcc doesn't need the ioctl prototype in
> prototypes.h.  Removing the section at lines 104--110 in prototypes.h
> creates a working binary. I'm not sure how to detect this situation,
> so I'm in no position to generate a patch.

Unfortunately I do not have access to DEC Unix 4.x so I cannot write such a
test without some help.  The simplest solution would be a test for some
predefined macro so that these prototypes are only defined for older DEC
Unix versions.  The list of predefined macros can be determined using
/path-to-gcc-lib/cpp -dM /dev/null

> P.S.: is the "-DDEBUG" supposed to be there by default?

Yes, because pre6 is still not the final production release (although it is
close to it).  In zsh-3.0 I'll remove -DDEBUG which will produce a slightly
smaller and faster executable.

Zoltan



Messages sorted by: Reverse Date, Date, Thread, Author