only call waitFor targets once