add support for pre-processors