As to the original question, dependencies like ${OBJS}: ${GENSRCS} are best bound by say: .if !exists(.depend) since once 'make depend' has been done, or '.depend' is created as a side effect of building, make should have sufficient info to only rebuilt what it must.