Most of the work in making gdb compile on a new machine is in specifying the configuration of the machine. Porting a new architecture to gdb can be broken into a number of steps.
Within arch-tdep.c define the function
_tdep which calls
gdbarch_register to create the new
struct gdbarch for the architecture.
_initialize_remote_arch. However if at all possible use the gdb Remote Serial Protocol for this and implement the server side protocol independently with the target.