This is the mail archive of the bfd@sourceware.cygnus.com mailing list for the bfd project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

adding a new target (m68k-gnu)



  Hi,

Could you please add a new m68k-gnu target to the binutils? It's
basically an elf target, like i386-gnu (without mach3 stuff) or
m68k-linux.

I give you a very small README I wrote to explain the changes that
have to be done, but there is (at least) *one* thing which is wrong
with it:

I would like to have REGISTER_PREFIX_OPTIONAL set for this target, but
didn't figure out where it had to be put... I just put it in tc-m68k.h
(as described below), but it's of course a stupid solution, which did
the trick for what I had to do...

Thanks a lot, let me know if you need any more information,
Aymeric

--- snip ---

 You have to change the following files in order to support the m68k-gnu
target:

 - binutils-2.8.1/bfd/config.bfd

Add the following lines to the big case statement:

  m68*-*-gnu*)
    targ_defvec=bfd_elf32_m68k_vec
#    targ_selvecs=m68kmach3_vec
    targ_cflags=-DSTAT_FOR_EXEC
    ;;

 - binutils-2.8.1/gas/config/tc-m68k.h

Add this line at the beginning of the file (that's really ugly)

#define REGISTER_PREFIX_OPTIONAL 1

(you can preferably pass a flag to make if you want
.. or use an option of gas everytime you use it...)

 - binutils-2.8.1/gas/configure.in

Add this line to the huge case statement

      m68k-*-gnu*)          fmt=elf ;;

 - binutils-2.8.1/ld/configure.tgt

Add this line to the case statement

m68*-*-gnu*)            targ_emul=m68kelf ;;

--- snip ---

-- 
I am a poet:
 Linux
 Sucks