Le nettoyage se fait sur trois niveaux, comme décrit dans un commentaire du Makefile du noyau 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
Selon le Makefile, le mrproper
la cible dépend du clean
cible (voir ligne 1421). De plus, le distclean
la cible dépend de mrproper
.
Exécution de make mrproper
sera donc suffisant car cela supprimerait également les mêmes choses que ce que le clean
la cible ferait (et plus).
Le mrproper
target a été ajouté en 1993 (Linux 0.97.7) et a toujours dépendu du clean
cible. Cela signifie qu'il n'a jamais été nécessaire d'utiliser les deux cibles comme dans make clean && make mrproper
.
Référence historique :https://archive.org/details/git-history-of-linux
clean
est un prérequis pour mrproper
cible dans Makefile, donc en exécutant make clean
séparément est redondant.