On Tuesday 24 January 2012 12:56:15 Ralf Corsepius wrote:
gdb-7.4's bfin simulator fails to build for bfin-rtems* targets on
Fedora 17/RH rawhide:
....
In file included from /usr/include/linux/ethtool.h:17:0,
from /usr/include/linux/mii.h:12,
from ../../../gdb-7.4/sim/bfin/dv-eth_phy.c:31:
/usr/include/linux/if_ether.h:130:2: error: unknown type name '__be16'
In file included from /usr/include/linux/mii.h:12:0,
from ../../../gdb-7.4/sim/bfin/dv-eth_phy.c:31:
/usr/include/linux/ethtool.h:21:2: error: unknown type name '__u32'
/usr/include/linux/ethtool.h:22:2: error: unknown type name '__u32'
/usr/include/linux/ethtool.h:23:2: error: unknown type name '__u32'
/usr/include/linux/ethtool.h:28:2: error: unknown type name '__u8'
/usr/include/linux/ethtool.h:29:2: error: unknown type name '__u8'
/usr/include/linux/ethtool.h:30:2: error: unknown type name '__u8'
/usr/include/linux/ethtool.h:31:2: error: unknown type name '__u8'
/usr/include/linux/ethtool.h:32:2: error: unknown type name '__u8'
/usr/include/linux/ethtool.h:33:2: error: unknown type name '__u8'
/usr/include/linux/ethtool.h:34:2: error: unknown type name '__u32'
/usr/include/linux/ethtool.h:35:2: error: unknown type name '__u32'
...
The same configuration builds fine for Fedora 15/16 and openSUSE-11.4/12.1.
From what I gather, the bfin simulator chokes upon kernel header
incompatiblities.
hmm, in linux-3.2 (and older), linux/mii.h doesn't include anything else.
seems linux-3.3-rc1 has started including linux/ethtool.h too. however, that
is unnecessary for userspace, so i'll probably send a patch to move the
include to __KERNEL__.
dv-eth_phy.c has some hacks in it to make it build with even older kernel
headers. maybe i should have it just not build that driver on older systems
rather than try to support it ...