I noticed that the release notes for 1.14 says that CURDIR is now compatible, but in my testing with 1.15 and 2.0rc makepp returns the current file directory (if its included, then the directory of the include) while gnumake always returns the original makefile location.
gnu documentation at http://www.gnu.org/s/hello/manual/make/Recursion.html states:
For your convenience, when GNU make starts (after it has processed any -C options) it sets the variable CURDIR to the pathname of the current working directory. This value is never touched by make again: in particular note that if you include files from other directories the value of CURDIR does not change. The value has the same precedence it would have if it were set in the makefile (by default, an environment variable CURDIR will not override this value). Note that setting this variable has no impact on the operation of make (it does not cause make to change its working directory, for example).
makepp documentation at http://makepp.sourceforge.net/2.0/makepp_variables.html#curdir states:
The directory in which the current Makefile resides.