La limpieza se realiza en tres niveles, como se describe en un comentario en el Makefile del kernel de Linux:
###
# Cleaning is done on three levels.
# make clean Delete most generated files
# Leave enough to build external modules
# make mrproper Delete the current configuration, and all generated files
# make distclean Remove editor backup files, patch leftover files and the like
Según el Makefile, el mrproper el objetivo depende del clean objetivo (ver línea 1421). Además, el distclean el objetivo depende de mrproper .
Ejecutando make mrproper por lo tanto, será suficiente, ya que también eliminaría las mismas cosas que el clean objetivo haría (y más).
El mrproper target se agregó en 1993 (Linux 0.97.7) y siempre ha dependido del clean objetivo. Esto significa que nunca fue necesario usar ambos objetivos como en make clean && make mrproper .
Referencia histórica:https://archive.org/details/git-history-of-linux
clean es un requisito previo para mrproper target en Makefile, entonces ejecutando make clean por separado es redundante.