I'm cross-compiling for a Tru64/Alpha target, which uses ECOFF. While GAS's support for *ELF* is pretty good on Alpha, the ECOFF code has languished .. I've tried hacking at binutils for a while now and am at a point where I would benefit from advice from someone who might know binutils' history and internals better than me. The rest of binutils seems to work really well with alpha-coff (eg objdump) My suspicion is that only a small effort is required to bring coff/alpha.h and config/tc-alpha.c up to date. When I enabled gas for target=alphaev68-dec-osf5.1b, gas fails the hello world test program with: hello-gas.s:29: Fatal error: unhandled relocation type (null) I tracked this down to internal reloc code DUMMY_RELOC_LITUSE_JSR not handled. And that happens because RELOC_OP_P isn't defined. And when it is defined, then a whole bunch of things defined only in include/elf/alpha.h are required and not found in tc-alpha.c. Then I got lost. So, can anyone help with some pointers to fixing this?
If you are cross compiling to Tru64/Alpha, just build your own binutils with that support. I have no interest in enabling ECOFF support in binutils and enabling it may have security consequences, because it is certainly far less maintained code than ELF.
Sorry, I should have reported to bug-binutils. This is not a bug for any package released by Red Hat. Also, I am building my own binutils with a target for Tru64, but I didn't make that clear.