But that 'mc68000' definition should be definitely same in all versions I think...
To save someone (Vincent ;-) work, I tested various #ifdefs. Results are:
gcc 2.95 uses 'mc68000' for 68000 target and 'mc68020' for 68020+.
gcc 4.x uses 'mc68000' everytime (!) plus 'mc680x0' for 680x0 targets (x>=1).
- removing 'local' and replacing the label with some unique identifier (\@) (as gas 2.13 don't know ".altmacro" keyword but uses this mode by default, it seems better to me to replace this alternate notation instead of checking for 2.95 gcc in asm source...)
- adding condition for !defined(mc68020) &&�!defined(mc68030) &&�!defined(mc68040) &&�!defined(mc68060) instead of defined(mc68000)
Probably we should look how it's done in other patches (netbsd, linux) and unite it somehow.