I am trying to learn how to port GCC to new architectures. Most tutorials say that I only have to create three files named my_processor.c my_processor.h and my_processor.md; however when running ./configure --target=my_processor machine is not recognized.
Following an answer given in How to write your own code generator backend for gcc?, I added my configuration in config.sub and ./configure worked.
Unfortunately, when I use make, the terminal returns an error saying
checking if mkdir takes one argument... no *** Configuration my_processor-unknown-none not supported Makefile:4230: recipe for target 'configure-gcc' failed make[1]: *** [configure-gcc] Error 1 make[1]: Leaving directory 'objdir' Makefile:905: recipe for target 'all' failed make: *** [all] Error 2 The problem seems to be due to a bad configuration in gcc/config.gcc, maybe because I added my architecture in a wrong place (there are multiple case ${target}, so not sure which choose) or because I am missing something.
The only information that I have found appears in https://gcc.gnu.org/onlinedocs/gcc-4.2.2/gccint/Back-End.html, but it is not complete enough.
So, how could I do to avoid this error?