I'm not sure its the job of a build system to clean up the broken state left by either not running uninstall previously or an incomplete uninstall routine - this strikes me as a bit of a hackish solution to a more general problem
Rather than worry about this I would like to see people who build GNU Radio from source repos start using prefixed builds more
this is generally a much cleaner practice as if you are done with a certain build (say 3.5 or 3.6 now that 3.7 is out) you can simply blow away the whole prefix dir.
This generally also ensures that any dependent GR OOT modules you have built against that version of GNU Radio live in the same version prefix so for instance if you are blowing away gr3.5 you blow away the whole gr3.5 prefix including any OOT modules linked against gr3.5 and are forced to rebuild them in your newer prefix
pybombs does help enable this by forcing you to specify the prefix when it is first run - and while /usr/local/ is the default in keeping with the default prefix used everywhere else in linux - it is a pretty poor choice due to its shared nature and something like /usr/local/gr3.7/ would be a better choice.