The problem here is very subtle. It’s because you copied and pasted your Makefile from a badly-created pdf. See this line:
Originally Posted by knockout_artist
make −C /lib/modules/$(shell `uname −r`)/build M=$(PWD) modules
is supposed to be
make -C /lib/modules/$(shell `uname -r`)/build M=$(PWD) modules
Notice that in the first the argument to uname
contains the unicode MINUS SIGN (codepoint U+2212), and in the second it is the ASCII/Unicode HYPHEN-MINUS (codepoint U+002D). The same thing happened to all the hyphens in your Makefile (I see five of them). Additionally, there should be a tab instead of 8 spaces.
Moral of the story: don’t blindly copy and paste from pdf files.