Thanks David, it looks like this is a bug in emake related to the subbuild feature. The issue is that environment variables are stored in the subbuild database with the name converted to uppercase, so when the environment is recreated in a subsequent build, it has the variable __BUILDROOT instead of __buildRoot.
We've filed a bug report and are working on a fix, although I don't know at the moment when we will cut a new release. We'll try to update this discussion thread when we have an answer to that.