Prefer decimal state numbers.
More use of new called() syntax.
The variable is DOT_ERRC, not just ERRC!

This is one of the reasons that CMake annoys me: there is no distinction made between a variable equal to "" and a variable that doesn't exist. Hence the need for strings like "DOT_EXECUTABLE-NOTFOUND".