on demand compile