CMakelist – syntaxe if (DEFINED)

Je parcourais un fichier CMakelist.txt contenant une entrée pour un projet C ++ contenant un dossier src et un dossier de tests . J’ai besoin de savoir ce que signifie la syntaxe suivante?

if(DEFINED BUILD_TESTS) add_subdirectory(tests) endif(DEFINED BUILD_TESTS) 

Merci rG

Vous pouvez toujours vérifier un manuel , même si je pense que c’est clair ici:

 if(DEFINED BUILD_TESTS) 

vérifie si la variable BUILD_TESTS est définie dans l’environnement. Si c’est le cas,:

 add_subdirectory(tests) 

add_subdirectory est une fonction intégrée (cmake a ces fonctions) qui ajoute un répertoire appelé tests (surprise) à la liste des éléments à construire / comstackr.

BUILD_TESTS lui-même est une variable CMAKE et déterminera si les «tests» feront partie du Makefile. Merci @Tsyvarev de l’avoir signalé.