IDL has the [Conditional] syntax as well as use of c-preprocessor #ifdef etc. This means two methods of achieving the same result, which is never tidy, and also that the perl IDL processor needs to invoke gcc or equivalent for every file. The number of IDL files has drastically increased over the last couple of years. Some preliminary testing on saving the preprocessed IDL and removing the gcc invocation from preprocessor.pm show a clean-build time reduction of 10 to 25% depending on ccache and host configuration. Such simplification would also simplify any experiments in replacing the processing tools, say from perl to native code on host.