A lot of projects face the challenge that the source code has to be compiled for different targets. Either the same SW has to be compiled for different CPUs or slightly different code has to be compiled for the same CPU. In some projects the same binary code has to run on several different HW platforms, but behave differently. In this presentation we look at different ways to solve these problems. The presentation is based on the experience of a 8 year project with 15 different build targets.