I can skip something very obvious with this Makefile:
convert: devel/bar touch convert init: devel/foo echo 'init' devel/foo: mkdir -p devel touch devel/foo devel/bar: init touch devel/bar 
When I run it, the target devel/bar always called. I expect it to call convert , check the devel/bar file and call this target only if this file is not found. If I remove its dependency on init , everything will work as I expected. What am I doing wrong?
source share