Hi Michael,

If the problem is definitively a system header problem, can you create a
mostly-empty *.c file that has the two includes to demonstrate the problem?
I can try to reproduce it on my machine at home. Also, if you have the
time, can you check the headers themselves for #ifdefs or something (not
sure how proficient you are with C and C preprocessor) that might guard
double inclusion? Check if other architectures use similar definitions?

/usr/include/sparc-linux-gnu/asm/termbits.h:12:25
/usr/include/sparc-linux-gnu/bits/termios.h:25:22

On the system that builds OK, can you copy those two files and compare it
to the system that doesn't work? Also, checking the gcc predefined macros (gcc
-dM -E - < /dev/null) for each environment may help, especially if the
tcflag_t type is selected based on something like the "bitness" (32 / 64)
of the target. Finally, if it isn't just your system, a bug report would be
really helpful with as much information and detective work as possible.


Patrick


On Tue, Jun 4, 2013 at 11:50 PM, Michael Tokarev <[email protected]> wrote:

> 01.06.2013 14:44, Michael Tokarev пишет:
> > 28.05.2013 19:02, Michael Tokarev wrote:
> >> Hello.
> >>
> >> One of our packages started to FTBFS on Sparc, here's the first
> >> build log that shows the issue:
> >>
> >>
> https://buildd.debian.org/status/fetch.php?pkg=qemu&arch=sparc&ver=1.5.0%2Bdfsg-1&stamp=1369117249
> >>
> >> The relevant portion:
> >>
> >>   CC    i386-linux-user/linux-user/syscall.o
> >> In file included from /usr/include/sparc-linux-gnu/asm/termios.h:5:0,
> >>                  from /usr/include/linux/termios.h:5,
> >>                  from
> /build/buildd-qemu_1.5.0+dfsg-1-sparc-34y5XW/qemu-1.5.0+dfsg/linux-user/syscall.c:92:
> >> /usr/include/sparc-linux-gnu/asm/termbits.h:12:25: error: conflicting
> types for 'tcflag_t'
> >> /usr/include/sparc-linux-gnu/bits/termios.h:25:22: note: previous
> declaration of 'tcflag_t' was here
> >> make[2]: *** [linux-user/syscall.o] Error 1
>
> Last version of qemu which was built successfully on sparc was
> 1.5.0~rc0 (according to the build logs).  The interesting
> difference between 1.5.0~rc0 and current 1.5.0 is that now,
> qemu has another #include in common headers, namely, it
> added
>
>   #include <pty.h>
>
> before this place which includes <linux/termios.h>.
> <pty.h> includes <termios.h>.  And it looks like on
> sparc, <linux/termios.h> conflicts with <termios.h>
> somehow.
>
> I dunno why it only happens on sparc (the build is done
> with -m32 fwiw), and whenever this makes sense, and
> especially why I can't reproduce it on smetana.d.o.
>
> But it looks like I'm talking to myself here.
>
> Thanks,
>
> /mjt
>
>
> --
> To UNSUBSCRIBE, email to [email protected]
> with a subject of "unsubscribe". Trouble? Contact
> [email protected]
> Archive: http://lists.debian.org/[email protected]
>
>

Reply via email to