I'm probably doing something stupidly wrong, but man make says:
As in C, make will only evaluate a conditional as far as is necessary to
determine its value.
however,
x= /nonexistent
.if exists(${x}) && ${x:sh} != 0
.endif
complains
sh: /nonexistent: not found
what am I missing?