1. A method for optimizing the use of a plurality of processors when compiling a program in a computer system, the method comprising the steps of: (a) providing a list of directories and a list of processors; (b) assigning a directory to a next available processor in an ordered manner to allow the next available processor to compile at least one file within the directory; and (c) repeating step (b) to ensure that the maximum number of directories can be compiled.