Traditionally on most Unix systems cc and gcc where two different compilers. Many times people would write code in ways that compiled with gcc, but not cc, so specifying exactly which compiler you want makes sense.
Users can use a different compiler by specifying it on the command line via e.g.
make CC=clang
Some people set CC=gcc
in their Makefile to force the usage of gcc. Never do this. Do this instead: CC?=gcc
That way users can still override the value of ${CC} on the command line if they want to.This is only relevant if you want portability to other versions of Make. I simply don't care about anybody who's not using GNU Make these days. Try it yourself: command line options override variables in makefiles unless "override" is specified for that assignment.