Dynamically get the model of Arduino

How about using the #elif defined (AVR_ATmega2560) blocks and just add code and let the compiler sort what should be included or not?
You will not put the .hex from an Atmega328 in an Atmega2560, at least if you are the casual Arduino user you use the IDE so you choose which board/processor you have, so why spend flash and ram in useless things that the compiler can sort for you?