One way to handle this is to write conditional code, with code blocks selected by means of preprocessor directives (#ifdef); but because of the wide variety of build environments this approach quickly becomes unmanageable.
Jednym ze sposobów rozwiązania tego problemu jest pisanie kodu źródłowego z instrukcjami blokowymi wybieranymi przez dyrektywy preprocesora (#ifdef), jednak różnorodność narzędzi do kompilacji sprawia, że to podejście szybko staje się nieporęczne.