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

Bug#699585: gdb: ftbfs on hurd-i386



Package: gdb
Version: 7.4.1-1
Severity: normal

Dear Maintainer,

gdb has been failing to build on hurd [1] since 7.4.1-1 (build attempted
2012-04-26), with error messages like:

> /build/buildd-gdb_7.4.1+dfsg-0.1-hurd-i386-IqN_9W/gdb-7.4.1+dfsg/opcodes/../include/opcode/h8300.h:82:3: error: expected identifier before numeric constant

The line in question is:

>   MACH = 	0x4200,

so it's fairly obvious that the failure is caused by MACH being #defined
on Hurd, most likely to 1.

This line has been there since GDB 6.1, but it wouldn't have been used
until the introduction of gdb-multiarch -- which was, surprise surprise,
also in version 7.4.1-1.

We could presumably patch around it by adding "#undef MACH" to
opcodes/h8300-dis.c, though this approach (using #undef) is probably not
suitable for upstream; indeed, the name MACH is also used for a fairly
important type in the sim/ tree.

The Hurd people should probably investigate whether a MACH macro is
actually useful in the first place: Why not __MACH__?  Is there
something which would stop working if MACH were no longer defined?

Another possibility would be to not build gdb-multiarch on hurd at all,
though this seems a bit drastic for a first attempt...

[1]: <https://buildd.debian.org/status/logs.php?pkg=gdb&arch=hurd-i386>

-- System Information:
Debian Release: 7.0
  APT prefers testing-proposed-updates
  APT policy: (991, 'testing-proposed-updates'), (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-4-686-pae (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

-- 
Hi! I'm a .signature virus! Copy me into your ~/.signature to help me spread!


Reply to: