build the program if necessary when testall