Hi,

>>>>> In <Pine.GSO.4.10.10203241341430.23264-100000@gold> 
>>>>>   F J Franklin <[EMAIL PROTECTED]> wrote:
> On Sun, 24 Mar 2002, Masayuki Hatta wrote:
> > Debian's package auto-builder (aka build daemon) reported the build of
> > AbiWord on PPC failed.  Seems something is wrong in
> > abi/src/text/fmt/xp/fp_PageSize.h?

> My guess is that on debian PPC one of the following is #defined somewhere:
> DIN_4B, DIN_2B, B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10,
> thus screwing up the enumeration in abi/src/text/fmt/xp/fp_PageSize.h

You're right...and now it's clear when

0) on Debian
1) on PPC
2) only with --enable-scripting

the build fails.  Daniel Eisenbud kindly investigated this problem and
he said:

>>>>> In <[EMAIL PROTECTED]> 
>>>>>   Daniel Eisenbud <[EMAIL PROTECTED]> wrote:
> The latest debian sources fail to compile here.  A build log is
> attached.  The basic problem, it seems, is that somehow
> /usr/lib/bits/termios.h is getting included, and it defines B0 (an
> element of the failing enum) as 00000, screwing things up royally.  Why
> does termios.h get included?  I don't know, but it looks like it's
> because of perl stuff using termios.h and mentioning in .ph files
> bits/termios.h.  I don't really know whose fault this namespace
> pollution is, so I don't really know what the correct fix is.  I suppose
> one could #undef all the offending symbols right before the enum, but
> that seems pretty horribly broken.

>>>>> In <[EMAIL PROTECTED]> 
>>>>>   Daniel Eisenbud <[EMAIL PROTECTED]> wrote:
> First of all /usr/include/bits/termios.h #defines B0 to be 0000000, not
> 00000, just to avoid any confusion.  The way it's included, after a
> little more investigation, turns out to be through the perl includes.
> /usr/lib/perl/5.6.1/CORE/perl.h #includes <sys/ioctl.h>, which #includes
> <bits/ioctl-types.h>, which #includes <termios.h>, which #includes
> <bits/termios.h>, which contains the fatal definition of B0.
> It seems broken, on the part of perl or glibc, to have perl.h cause such
> widespread namespace pollution.  On the other hand, it might be simplest
> to just rename the elements of the enum and be done with it.

Weird thing is, in my i386 environment(and possibly other archs),
bits/ioctl-types.h doesn't include termios.h.  That's why it can be
built on archs except ppc.

Regards,
MH

--
Masayuki Hatta
[EMAIL PROTECTED] / [EMAIL PROTECTED] / [EMAIL PROTECTED]

Reply via email to