«Правильным» решением этой проблемы (которое используется во многих проектах) является создание сценария настройки.
Сценарий configure запускает различные тесты, которые включают компиляцию и запуск небольших программ для определения свойств компилятора и системы. Затем сценарий записывает свои выводы в виде файла заголовка, или файла сборки, или обоих. Конечно, вы можете делать все что угодно.
Существуют инструменты, некоторые инструменты для полуавтоматического выполнения подобных задач, но они, вероятно, излишни для вас. Если вы хотите взглянуть, имена autoconf и automake . Осторожно, их не просто изучить, но они генерируют скрипты configure и make-файлы, которые должны работать практически на любой платформе, если она имеет оболочку в стиле unix и GNU make.