2010-11-18 23 views
2

Je veux créer un nouveau mode (Debug, Release et un nouveau) dans mon projet. Après cela, j'ai besoin d'une variable qui n'est utilisée que dans ce nouveau mode, donc je peux créer une variable pour tous et définir une valeur différente pour Debug/Release (c.-à-d. 0) et pour la nouvelle (1).Comment faire pour avoir une variable seulement dans un mode avec CMake

Comment puis-je résoudre ce problème?

Ce que je:

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

SET (VARIABLEX 1) 

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

Répondre

0

Tout d'abord, l'ajout de nouveaux types de configuration ne sont pas encore pris en charge dans CMake.

Malgré la FAQ CMake, il semble qu'il y ait quelque chose d'encore un peu non implémenté pour cette demande de fonctionnalité. Il y a même une question ouverte pour elle:

moniteur qui bug dans le bug tracker CMake à notifier que les choses sont mises à jour.

Cependant, étant donné que vous aimeriez avoir des définitions différentes pour des configurations différentes, vous devriez voir l'aide pour les COMPILE_DEFINITIONS de propriété cible CMake et COMPILE_DEFINITIONS_DEBUG (par exemple):