add check for circular dependency

@tfoote @wjwwood Please review.
The point about `make` is valid, but including all of the arguments seems extreme. What expansion do you think will be shown? Shell expansion?