It is written in the linux kernel Makefile thatclean - Remove most generated files but keep the config and        enough build support to build external modulesmrproper - Remove all generated files + config + various backup filesAnd it is stated on the arch docs thatTo finalise the preparation, ensure that the kernel tree is absolutely clean;$ make clean && make mrproperSo if make mrproper does a more thorough remove, why is the make clean used?
Why both `make clean` and `make mrproper` are used?
linux;make;gnu
According to the Linux kernel Makefile, the mrproper target depends on the clean target (see line 1324).Executing make mrproper will therefore be enough as it would also remove the same things as what the clean target would do.The mrproper target was added in 1993 (Linux 0.97.7) and has always depended on the clean target.  This means that it was never necessary to use both targets as in make clean && make mrproper.Reference: https://archive.org/details/git-history-of-linux