i just don't like the idea of passing defines through the compile command