Как иметь переменную только в одном режиме с CMake - PullRequest
2 голосов
/ 18 ноября 2010

Хочу создать новый режим (Debug, Release и новый) в моем проекте.После этого мне понадобится переменная, которая используется только в этом новом режиме, поэтому я могу создать переменную для всех и установить другое значение для Debug / Release (то есть 0) и для нового (1).

Как я могу решить это?

Что у меня есть:

set (CMAKE_CONFIGURATION_TYPES "Release;Debug;NewConfig" CACHE STRING "Configurations" FORCE)

SET (VARIABLEX 1)

if (VARIABLEX )
   add_definitions (-DVARIABLEX )
endif (VARIABLEX )

1 Ответ

0 голосов
/ 23 февраля 2011

Прежде всего, добавление новых типов конфигурации пока не очень хорошо поддерживается в CMake.

Несмотря на часто задаваемые вопросы по CMake, похоже, что для этого запроса функции что-то еще не реализовано. Существует даже открытый вопрос:

Отслеживайте эту ошибку в трекере ошибок CMake, чтобы получать уведомления об обновлениях.

Однако, учитывая, что вы хотите иметь разные определения для разных конфигураций, вы должны увидеть справку для целевого свойства CMake COMPILE_DEFINITIONS и COMPILE_DEFINITIONS_DEBUG (например):

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...