1. A method of pre-compilation processing an HDL source code file comprising the steps as follows: a) construct a list of all HDL (Hardware Design Language) files to be processed; b) send a first HDL file in said list to be processed for compiling; c) then if compilation is successful, the method branches to add said HDL file to an end of the target file and said HDL file is removed from said list; d) test said list for remaining files and then a next remaining file in said list is sent for compiling; and (e) then after all files in said list have been processed, said HDL files which have been processed are checked for failures to compile and if any of said HDL files to be processed have failed to compile the method branches back to step (b) which is run again by repeating the compiling of HDL files from said list until all runs are successful.