move conditional compilation logic to local files where it's needed, away from the global build